Foro

Es posible cambiar el horario de la web

Comunidad Umbría :: La web en general :: Es posible cambiar el horario de la web

Como medida de seguridad los nuevos usuarios no pueden reabrir hilos antiguos.
Si crees que el tema es realmente necesario, por favor, abre uno nuevo en la sección correspondiente.
21/09/2011, 05:45

Hola, tengo esta duda, vivo en México y todos los horarios de la web son de españa, y me confundo bastante (la primera vez creí que la web predecía el futuro O.o) y lo que quera preguntar es...
¿Es Posible cambiar el uso horario de la web en mi computadora?
Tal vez no sea de mucha relevancia esto pero me gustaría saberlo :3

21/09/2011, 08:43

Lo dudo mucho...

Esa hora es la del servidor donde está alojada la web, y debe ser común para todos los usuarios independientemente de donde se encuentren. Sino, sería una locura organizar el orden de los posteos, o ver como alguien que ha posteado detras tuyo lo ha hecho 6 horas antes.

21/09/2011, 08:47

Lo que sí había pedido Willen es que en la portada volviese a aparecer el reloj con la hora local del servidor, para que no se lie la gente que postea en usos horarios diferentes.

Igual eso te ayuda también.

21/09/2011, 08:54

Realmente no es tan difícil. Una cosa es la hora que nosotros guardamos en el servidor y otra la hora que le mostramos al usuario. Ésta última puede depender de la configuración que tenga en su perfil. Alguna vez he hablado de esto con Unai y seguramente que en el algún momento acabemos implementándolo. No a corto plazo pero quizá sí a medio plazo.

P.D: Recuperaremos el reloj... por supuesto (de hecho me acabo de dar cuenta de que no está ahí)

21/09/2011, 09:07

En caunto a lo del reloj, recuerdo que ya se habló en algún otro hilo. Sí que se dijo que se recuperaría.

En cuanto a la hora, sí que se podría. Efectivamente, con javascript puedes saber la zona horaria del usuario y poner la hora de alli, y usar la hora del servidor para la bbdd. Pero eso seguro que genera dudas a alguien cuando mire su posteo y la hora sea diferente.

En caso de convertir todas las horas mostradas en todos los post (sean partidas o sean hilos del horos), no sé...

En fin, se podría hacer, supongo...

Unai
 
21/09/2011, 09:21

Javascript??

No hombre...

La cosa es guardar todas las horas en UTC, y luego mostrarlas dependiendo de la zona horaria del usuario.

El problema es convertir todas las fechas... tendríamos que tener en cuenta el horario de verano...

Y luego tendríamos que buscar todos los sitios donde sacamos fechas y uf....

Bueno, supongo que algún día lo haremos, pero vamos, que no es trivial.

21/09/2011, 09:33

Ya lo siento, es que yo estoy empezando en esto jeje

¿Como sabes la zona horaria del usuario? Si no es con javascript, no sé como... para mi sería lo más sencillo.

Otra opción es un campo de la base de datos del usuario donde cada usuario ponga su zona horaria. ¿Y los usuarios que ya están dados de alta, les obligas a poner una zona horaria en su perfil para poder seguir posteando en umbria, para asegurarte de que se rellena ese campo? ¿Y si me voy de vacaciones y cambio de zona horaria?

Vamos, estoy hablando desde mi ignorancia de programación web, que estoy empezando en esto... De hecho, me ha picado la curiosidad saber como se hace, aunque no es algo que vaya a implementar en ninguna web mia, al menos de momento...

21/09/2011, 09:38

Ya lo siento, es que yo estoy empezando en esto jeje

¿Como sabes la zona horaria del usuario? Si no es con javascript, no sé como... para mi sería lo más sencillo.

Otra opción es un campo de la base de datos del usuario donde cada usuario ponga su zona horaria. ¿Y los usuarios que ya están dados de alta, les obligas a poner una zona horaria en su perfil para poder seguir posteando en umbria, para asegurarte de que se rellena ese campo? ¿Y si me voy de vacaciones y cambio de zona horaria?

Vamos, estoy hablando desde mi ignorancia de programación web, que estoy empezando en esto... De hecho, me ha picado la curiosidad saber como se hace, aunque no es algo que vaya a implementar en ninguna web mia, al menos de momento...

EDITO: si, a nivel de codigo no creo que sea trivial, porque tienes que buscar donde muestras cada una de las fechas de la web y meterla en una funcion que convierta... y eso es un rollo.

EDITO 2: por cierto acabo de ver un "1" debajo de los usuarios que no somos capataces ni nada, porque ni Sharak ni tu Unai lo teneis...

EDITO 3: y estoy intentando editar el post anterior pero me está dando todo el rato envio duplicado. Supongo que estareis tocando algo, pero lo digo por si acaso.

EDITO 4: y ya me callo... XD

Unai
 
21/09/2011, 09:47

Si quieres saberlo sin pregutnarle, una manera si que sería con Javascript, pero creo que lo más lógico es preguntarle.

Ya tenemos la localización, así que de primeras pondriamos esa, y luego, si te vas de vacaciones puedes cambiarla.

De todas maneras, con la IP también se puede saber el país, a menos que salga a través de un proxy, y con eso podrías sugerirle una zona horaria.

Unai
 
21/09/2011, 09:47

oops, lo del 1 es cosa mía

Juas

21/09/2011, 09:50

ummmm

Desde el punto de vista de usuario, yo también creo que para mi eso deberia ser transparente... pero bueno, es que yo soy un usuario puñetero...

jajajajaaja

Unai
 
21/09/2011, 09:53

No me parece tan doloroso tener que elegir tu zona horaria en el perfil. Vamos, es lo que se hace en todos los foros, y me parece lo más lógico.

21/09/2011, 09:55

Ojo, que tampoco me parece mal :-)

Unai
 
21/09/2011, 09:56

Entre tu y yo, meter un churrro de javascript para eso me parece una chapuza...

¿No crees?

21/09/2011, 10:09

ummm

vale, volvemos a tener mi ignorancia y presupongo cosas que pueden ser erroneas vale? :-)

Si guardamos la fecha UTC en la bbdd, al recuperarla tenemos que haber guardado antes la zona horaria en una variable para restarle o sumarle horas, con funciones php (se podria obtener directamente en la consulta sql, con una join, pero no me queda claro cual de las 2 opciones es óptima en rendimiento). Para tener el codigo limpio, metes la función php en un script aparte, haces un include, y llamas a la función... todo organizadito.

Eso mismo puedes hacerlo con javascript. Metes la función en un js, y en el codigo te queda limpio pues solo tienes que meter una pequeña etiqueta < script >...< / script > con una funcion haciendo referencia a un span con una id y modificarlo con innerHTML ...

Creo que era así... la verdad es que no estoy seguro. Igual estoy diciendo una estupidez como un piano. Si es así, dimelo para saberlo, y no te rias de mi, porfa... ;-P

21/09/2011, 10:32
Editado: 21/09/2011, 10:33

Puestos a dar opiniones sobre como hacer las cosas sin tener ni puta idea de como esta el código yo también quiero dar la mía ;).

Asumiendo que aun usáis MySQL, pueden ocurrir dos cosas:

- Que las fechas/horas salgan de consultas directas a MySQL, entonces en vez de pedir la hora sin más, podéis usar la función CONVERT_TZ(Campo, tz_servidor, tz_usuario). Tendríais que sustituirla en todas las consultas. Como habéis comentado la zona o esta en la ficha del usuario (que entiendo que ya os traéis siempre) o por la IP. Es algo que esta al alcanza de un buscar->reemplazar o si usáis algún IDE más sofisticado de las opciones de refactoring.

- Que utilicéis un lugar único para todas las consultas (el framework de Sharak), en ese caso seguramente sea un cambio de una o dos lineas, ya que supongo que habrá algún sitio por el que pasen todos los campos de tipo fecha.

IMHO hacerlo en javascript es un lio. Tienes que meter la función en todos los lados donde sale una fecha. Rompe la separación vista/controlador (posible problema con los temas), es más complicado de mantener (cada página puede ser diferente, es fácil olvidarte de ponerlo en algún lado, problemas de cache, etc...), y más complicado de debugear (lo que pasa en el cliente lo sabe el cliente).

21/09/2011, 10:36

Y yo encantado de que todos deis vuestra opinion. Yo estoy en fase de aprendizaje brutal, por lo que cualqueir cosa que digais va a hacer que aprenda algo nuevo (sobre todo conceptualmente, porque codigo hay por muchos sitios).

Gracias Javi por aportar tus 5 ctms.

:-)

21/09/2011, 16:31

Hola a Todos y gracias por contestar,
PD: Me e tenido que saltar algunos comentarios porque no les e entendido nada, Todavía :D Falta poco para comenzar mi carrera

21/09/2011, 19:06

De todas formas lo de recuperar el reloj con el horario del servidor es una excelente idea. Una vez que te acostumbras al uso horario de comunidad umbría no es tan complicado para los usuarios que tienen otro horario distinto al que usamos en España. La clave es hacerse a la idea con cosas como: "Quedamos el viernes por la noche para una partida de rol por chat a las 21h del horario de comunidad umbría".

21/09/2011, 19:14

eso o cambiar el horario de tu computadora y ajustarlo al de la web al menos así no te pierdes tanto

21/09/2011, 19:35

EbaN, apoyo completamente eso. De hecho, lo comenté hace meses y como dijo alguien, Chemo ya había dicho que lo iba a implementar. Una vez te acostumbras es simplemente quedar "el horario del servidor" y todos felices, como decís :)

21/09/2011, 19:53

A mi me gusta lo que dice EbaN. Vamos a implementar un horario propio de Comunidad Umbría y así todos tendremos el mismo XDDD

Nah, en serio, es una cosa, como bien dice Javier, de vista. Que la fechas nos salgan acorde con las preferencias del usuario es algo trivial, pero requiere de cierto trabajo automático.

@Tersoal: Hay muchas maneras de saber en que huso horario está el usuario pero no hay nada más seguro que el propio usuario nos diga cual es su zona horaria. Podemos inferir una y que el usuario la corrija. Cuando lo hagamos seguramente esto será así.

P.D: Sí, recuperaremos el reloj. A ver si mañana tengo un hueco y lo recupero :P

21/09/2011, 19:58

@Tersoal: Hay muchas maneras de saber en que huso horario está el usuario pero no hay nada más seguro que el propio usuario nos diga cual es su zona horaria. Podemos inferir una y que el usuario la corrija. Cuando lo hagamos seguramente esto será así.

Estoy de acuerdo. Aunque al principio pensaba otra cosa, los argumentos me han convencido, y he aprendido un poco más con esta conversación, que me ha resultado absolutamente interesantísima. Muchas gracias por vuestro tiempo :-)

21/09/2011, 20:19

Yo creo que lo más cómodo es llevar un reloj de pulsera de más sincronizado con el horario de umbría y listo. Aunque mejor si es de bolsillo.

Anda que..., que si Javascript, php, MySQL; pues yo me ofrezco a hacerlo en el Dev-C++. xD

21/09/2011, 21:06

Reloj recuperado!!

21/09/2011, 21:14

¡Excelente!

21/09/2011, 21:22

Acabo de verlo... ¡¡¡quedó genial!!! Muchas gracias chicos por la dedicación ^^ (además, para los de este lado del charco viene super a la hora de ubicarnos en que espacio temporal andan en la península :D)

21/09/2011, 21:23

Excelente... pero en Chrome no sale. Se ve el cuadro, el fondo (no queda bien por temas del fondo de la imagen que hace los bordes superior e inferior), el reloj de arena, pero nada dentro ;)

21/09/2011, 21:53

¡Mola!

Aunque creo que debería de ser un pelín más grande, pero bueno, eso ya es una opinión personal. Gran trabajo de todas formas.

21/09/2011, 21:58

Felicidades, está buenisimo y ya me hacía bastante falta ya que voy 9 horas atrás.......

Este hilo tiene más de 6 meses, lo usuarios novatos no pueden reabrir hilos antiguos.