[spip-dev] Fuseau horaire

Salut les listes.

Dites, truc bête que j’avais jamais remarqué avant puisque je réglais les serveurs en direct en fait mais, au cas où on ait pas ces accès là, on s’est rendu compte qu’il n’y avait rien dans l’espace privé pour permettre de régler l’heure de son site spip et son fuseau horaire ? Ou alors on a pas les yeux en face des trous ?

Merci pour vos pistes :wink:

Etienne.

Non, il y a un rien et c'est bien dommage :slight_smile:

* L'oiseau2nuit tapuscrivait, le 28/01/2011 10:54:

Salut les listes.

Dites, truc bête que j'avais jamais remarqué avant puisque je réglais les
serveurs en direct en fait mais, au cas où on ait pas ces accès là, on s'est
rendu compte qu'il n'y avait rien dans l'espace privé pour permettre de
régler l'heure de son site spip et son fuseau horaire ? Ou alors on a pas
les yeux en face des trous ?

Merci pour vos pistes :wink:

Et dans mes_options.php :
date_default_timezone_set('Europe/Paris');

-- RealET

Salut,

Merci à tous :wink:

Ca pourrait être un réglage envisageable à terme dans l’espace privé ? Genre Config > Identité du site … par exemple ?

2011/1/28 Bruno Bergot <brunobergot@gmail.com>

28/01/11, L'oiseau2nuit:

Dites, truc bête que j'avais jamais remarqué avant puisque je réglais
les serveurs en direct en fait mais, au cas où on ait pas ces accès
là, on s'est rendu compte qu'il n'y avait rien dans l'espace privé
pour permettre de régler l'heure de son site spip et son fuseau
horaire ? Ou alors on a pas les yeux en face des trous ?

Le fuseau horaire du serveur, on s'en fiche. J'ai un site qui est
hébergé à Paris mais dont les auteurs SPIP, et la majorité des
visiteurs, et moi, sommes au Mexique. Et on pourrait être répartis un
peu partout dans le monde (d'ailleurs ça va commencer à être le cas).
Spip-contrib est un bon exemple: les heures sont affichées comme si on
était à Paris, ce qui est sûrement vrai pour le serveur, mais perso je
dois faire la conversion ou me contenter d'heures approximatives.

Comme son nom l'indique, la "default timezone" n'est que le fuseau
horaire par défaut, c'est-à-dire le fuseau horaire utilisé quand on
affiche une date/heure locale: "20 janvier 2011 à 14h50" par exemple.
Sur internet, cette forme est totalement inutile, la plupart du temps.
D'ailleurs, ce n'est pas spécifique à SPIP : sur plein de blogs des
états-unis, on voit des commentaires postés à 20h30 alors qu'il n'est
que 15h chez soi. Ça nous fait une belle jambe, sans fuseau horaire...

Il faut soit avoir l'info côté serveur du fuseau horaire du visiteur et
marquer la date dans ce fuseau, soit indiquer une date complète:
  - "publié aujourd'hui à 14h50 (heure de Paris)"
  - "publié aujourd'hui à 13h50 GMT"
  - etc.

Stocker le fuseau horaire de chaque auteur dans son profil, et faire la
conversion côté serveur, demanderait un cache différent pour chaque
personne. Il faudrait arriver à optimiser le fonctionnement pour
avoir juste un cache différent pour chaque fuseau horaire (3 ou 4
variantes maxi en général), ou bien écrire toujours la date dans un
certain fuseau horaire (en l'indiquant !), et un javascript par-dessus
qui détecte le fuseau du visiteur et réécrit la date sous forme locale.
Mais ça demande d'avoir les fonctions de formatage en javascript...

Une piste complémentaire: la balise "time"[1] arrivée avec HTML5, qui
permet d'ajouter la représentation ISO sous forme d'attribut. Ça donne
aux navigateurs une possibilité de faire un truc intelligent avec cette
info: te mettre la date version locale dans la barre d'état, dans une
infobulle, réécrire la date "dans le texte", etc.

[1] http://dev.w3.org/html5/markup/input.datetime.html

Bref c'est pas une question simple... Mais le fuseau par défaut du
serveur, c'est une fausse piste je pense. :slight_smile:

2011/1/28 davux <da@weeno.net>

28/01/11, L’oiseau2nuit:

Le fuseau horaire du serveur, on s’en fiche. J’ai un site qui est
hébergé à Paris mais dont les auteurs SPIP, et la majorité des
visiteurs, et moi, sommes au Mexique.

On s’en fiche oui et non, quelque part la localisation du serveur devrait logiquement être en phase avec le contenu du site. Même si des fois nous n’avons pas le choix (jeu des hébergeurs plus ou moins gratuits que l’on doit aller chercher plus ou moins loin) il me semble tout de même logique qu’un site français, au contenu français s’adressant à un public français soit également hébergé sur un serveur situé en France (remplacer France par n’importe quel autre pays en fonction de vos besoins.

Pour prendre un exemple multilangue, le site de taizé, communauté internationnale s’il en est, reste basée en France géographiquement et est hébergée sur un serveur Français.

Comme son nom l’indique, la « default timezone » n’est que le fuseau
horaire par défaut, c’est-à-dire le fuseau horaire utilisé quand on
affiche une date/heure locale: « 20 janvier 2011 à 14h50 » par exemple.
Sur internet, cette forme est totalement inutile, la plupart du temps.
D’ailleurs, ce n’est pas spécifique à SPIP : sur plein de blogs des
états-unis, on voit des commentaires postés à 20h30 alors qu’il n’est
que 15h chez soi. Ça nous fait une belle jambe, sans fuseau horaire…

Il faut soit avoir l’info côté serveur du fuseau horaire du visiteur et
marquer la date dans ce fuseau, soit indiquer une date complète:

  • « publié aujourd’hui à 14h50 (heure de Paris) »
  • « publié aujourd’hui à 13h50 GMT »
  • etc.

C’est une idée.

…/…

Bref c’est pas une question simple… Mais le fuseau par défaut du
serveur, c’est une fausse piste je pense. :slight_smile:

Ben je vois difficilement comment s’en passer. Ca reste tout de même la référence je pense, dans la majorité des cas.

Cela dit, sans parler de synchro, un premier niveau peut permettre aux admins de régler "pour le site " (pas pour le serveur) un fuseau horaire de référence sur lequel ensuite appliquer la bonne moulinette (JS ou whatver) pour chaque auteur situé dans un autre fuseau ?

28/02/11, L'oiseau2nuit:

il me
semble tout de même logique qu'un site français,

Ça veut dire quoi ?

au contenu français

français, ou francophone ? (ou entre autres francophone car
multilingue ?)

s'adressant à un public français

Pareil, c'est très spécifique qu'un site ne s'adresse qu'à des gens
présent en france (métropolitaine qui plus est).

Mais dans ce cas caricatural, tu as raison, point de question à se
poser: on met le fuseau horaire du serveur sur "Paris" et hop.

Dans tous les autres cas, nettement moins évidents, il faut voir que
c'est l'heure du visiteur qui est importante, pas celle du
datacenter... Et donc se poser la question lors de l'affichage, en
indiquant notamment un fuseau horaire, ou l'heure locale du visiteur
(plusieurs possibilités, comme mentionné dans mon mail précédent).

Pour prendre un exemple multilangue, le site de taizé, communauté
internationnale s'il en est, reste basée en France géographiquement
et est hébergée sur un serveur Français.

C'est un excellent exemple: en quoi cette information est-elle
intéressante ? Quelle pertinence ça aurait de régler le fuseau horaire
sur "france" ou un autre pays ? Quand je visite un site, perso je n'ai
pas la moindre idée de l'emplacement géographique du serveur...
Il faut clairement adapter l'information lors de l'affichage, surtout
quand les visiteurs potentiels n'ont aucune raison d'être physiquement
dans les frontières d'un certain pays.

Enfin bref tout ça pour dire que pourquoi pas avoir une notion de
"fuseau horaire du site", mais attention à ce que ça ne masque pas une
vraie réflexion par ailleurs, que ce soit en tant que webmestre ou en
tant que dev (de plugins ou de SPIP lui-même).

Il n'y a rien de prévu en effet.

Pour prendre la bonne heure en compte, il convient de synchroniser PHP à l'aide de l'appel suivant dans mes_options.php
date_default_timezone_set("zone temporelle");

sans oublier de synchroniser également mySQL, a l'aide d'une requête dans config/connect.php :
spip_query("SET time_zone = 'zone temporelle'");

Le problème étant que

est compatible PHP>=5.1ce qui ne permettait pas de l'intégrer dans le core

et par ailleurs il faut aussi que les time zone soient chargées par mysql.

Il faut par contre surtout éviter de synchroniser PHP uniquement, car un décalage temporel avec mySQL va conduire à des bugs.

Cédric

Le 28 janv. 2011 à 10:54, L'oiseau2nuit a écrit :

Salut les listes.

Dites, truc bête que j'avais jamais remarqué avant puisque je réglais les serveurs en direct en fait mais, au cas où on ait pas ces accès là, on s'est rendu compte qu'il n'y avait rien dans l'espace privé pour permettre de régler l'heure de son site spip et son fuseau horaire ? Ou alors on a pas les yeux en face des trous ?

Merci pour vos pistes :wink:

Etienne.

_______________________________________________
liste: http://listes.rezo.net/mailman/listinfo/spip-dev
doc: http://www.spip.net/
dev: http://trac.rezo.net/trac/spip/
irc://irc.freenode.net/spip

Salut tous,

Je viens de tenter la combine sur Dreamhost.

Elle marche au niveau du PHP (quand je ne fixe que dans
mes_options.php) mais par contre elle me renvoie une /Internal Server
Error/ dès que je tente de fixer la timezone de MySQL dans
connect.php.

Je me demande s'ils n'ont pas interdit de changer la timezone de MySQL
ou un truc du genre. Vous croyez que c'est possible ça ?

2011/1/28 cedric.morin@yterium.com <cedric.morin@yterium.com>:

Il n'y a rien de prévu en effet.

Pour prendre la bonne heure en compte, il convient de synchroniser PHP à l'aide de l'appel suivant dans mes_options.php
date_default_timezone_set("zone temporelle");

sans oublier de synchroniser également mySQL, a l'aide d'une requête dans config/connect.php :
spip_query("SET time_zone = 'zone temporelle'");

Le problème étant que
PHP: date_default_timezone_set - Manual
est compatible PHP>=5.1ce qui ne permettait pas de l'intégrer dans le core

et par ailleurs il faut aussi que les time zone soient chargées par mysql.

Il faut par contre surtout éviter de synchroniser PHP uniquement, car un décalage temporel avec mySQL va conduire à des bugs.

Cédric

Le 28 janv. 2011 à 10:54, L'oiseau2nuit a écrit :

Salut les listes.

Dites, truc bête que j'avais jamais remarqué avant puisque je réglais les serveurs en direct en fait mais, au cas où on ait pas ces accès là, on s'est rendu compte qu'il n'y avait rien dans l'espace privé pour permettre de régler l'heure de son site spip et son fuseau horaire ? Ou alors on a pas les yeux en face des trous ?

Merci pour vos pistes :wink:

Etienne.

_______________________________________________
liste: http://listes.rezo.net/mailman/listinfo/spip-dev
doc: http://www.spip.net/
dev: http://trac.rezo.net/trac/spip/
irc://irc.freenode.net/spip

_______________________________________________
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

2011/2/28 Stephane Deschamps <stephane.deschamps@gmail.com>

Salut tous,

Je viens de tenter la combine sur Dreamhost.

Elle marche au niveau du PHP (quand je ne fixe que dans
mes_options.php) mais par contre elle me renvoie une /Internal Server
Error/ dès que je tente de fixer la timezone de MySQL dans
connect.php.

Je me demande s’ils n’ont pas interdit de changer la timezone de MySQL
ou un truc du genre. Vous croyez que c’est possible ça ?

Ca ne serait pas étonnant en effet, surtout si ton serveur MySQL est partagé, je peux concevoir qu’ils n’acceptent pas que l’on change cette info pour les XYZ clients hébergés sur la même machine…

2011/2/28 L'oiseau2nuit <l.oiseau2nuit@gmail.com>:

Ca ne serait pas étonnant en effet, surtout si ton serveur MySQL est
partagé, je peux concevoir qu'ils n'acceptent pas que l'on change cette info
pour les XYZ clients hébergés sur la même machine...

Bon bin faute de solution je ferai un peu de maths avant de publier
mes articles et basta. :slight_smile: