[spip-dev] SPIP 3.0 et la langue choisie des visiteurs

Hello ...

Un truc qui me pose pas mal de soucis ... est la langue des visiteurs
et les notifications ... et ce sur toutes les versions de SPIP ...
comme SPIP 3.0 sera une grosse maj => pourquoi pas y palier à cette
occasion ...

Actuellement, lorsqu'un visiteur change de langue, cette langue est
dans un cookie, le système n'a aucune information sur la langue d'un
visiteur hormis son choix dans le privé...

Le principal problème que je vois à cela est lors d'envoi de
notifications, les notifications sont envoyées dans la langue du
visiteur ayant fait le hit ...

Si George, traduisant en arabe sur trad.spip.org déclenche une action
amenant à notifier, ces notifications partiront en arabe ... et perso
... je pense que très peu les comprendront ...

Je pense donc qu'il faut ajouter un champ à spip_auteurs, lang_public
par exemple qui sera mis à jour à chaque appel de l'action "converser"
(celle qui pose le cookie de langue) qui permettra ensuite de faire
une fusion des destinataires par lang_public avant d'envoyer les
notifs et génèrera un message par langue et enverra le mail ou autre
notification dans une langue pseudo choisie de l'utilisateur...

Qu'en pensez vous?

* Quentin Drouet tapuscrivait, le 13/01/2012 09:39:

Hello ...

[...]

Le principal problème que je vois à cela est lors d'envoi de
notifications, les notifications sont envoyées dans la langue du
visiteur ayant fait le hit ...

[...]

Qu'en pensez vous?

Si c'est trop compliqué/long à mettre en œuvre, le plan B pourrait être d'envoyer les notifications dans la langue du site ?

Fil me disait sur IRC de mettre dans spip_auteurs.lang mais j'ai quand
même un doute au final là dessus car utilisée dans le privé ... où on
a toutes les langues

Voila la réponse de Cédric (en privé) qui évoque spip_auteurs.prefs
serialisé.... à mon sens mieux que les deux propositions (nouveau
champ ou spip_auteurs.lang) :

Si on met plusieurs langue à un site c'est qu'il y a un but ... que
les gens comprennent... je trouve cette solution un peu simpliste à
mon avis notamment dans le cas de sites "bien traduits" ....

kent1

Fil me disait sur IRC de mettre dans spip_auteurs.lang mais j'ai quand
même un doute au final là dessus car utilisée dans le privé ... où on
a toutes les langues

Voila la réponse de Cédric (en privé) qui évoque spip_auteurs.prefs
serialisé.... à mon sens mieux que les deux propositions (nouveau
champ ou spip_auteurs.lang) :

ça me parait en effet sain de stocker la langue préférée d'un utilisateur.
Pourquoi ne pas le stocker simplement dans le champ serializé prefs ?

L'ennui du champ serialisé est qu'il n'est pas possible de regrouper
facilement les personnes utilisant la même langue

en SPIP {fusion lang} ...

(et du coup le réutiliser dans utiliser_langue_visiteur() à la connexion le cas échéant)

Et pour la notif ça me parait en effet sain d'utiliser cette information de langue plutot que celle de l'expediteur.

Cédric

kent1

Hi

L'idee de Cedric de stocker la langue preferee de l'utilisateur dans les prefs serialisees est evidement une tres bonne idee, mais je ne comprend pas comment utiliser cette information dans les notifications surtout si elles sont envoyees a une mailing-list.

George

Quoting Quentin Drouet <kent1@arscenic.info>:

Hi

L'idee de Cedric de stocker la langue preferee de l'utilisateur dans les
prefs serialisees est evidement une tres bonne idee, mais je ne comprend pas
comment utiliser cette information dans les notifications surtout si elles
sont envoyees a une mailing-list.

Dans le cas d'une mailing list ... le mieux est de passer par la
langue du site ... ou une langue préférée de notification ... je ne
sais pas trop ... dans tous les cas 1 mail => une langue ...

La solution de Cédric me gêne pour la sélection rapide des
utilisateurs par langue ... on ne va pas générer un message par
utilisateur mais un même message pour les utilisateurs d'une langue
définie par défaut (après c'est au développeur de plugin ou de
squelette de surcharger s'ils veulent une notif différente par
utilisateur)

George

kent1