Choisir la langue au moment de la connexion

Tags: #<Tag:0x00007f2f2c3b3a78>

Bonjour,

nous avons développé un module qui permet de gérer des appels à projets dans le cadre de l’enseignement supérieur et de la recherche. ce module permet de créer différents dispositifs, de gérer des campagnes et de permettre aux chercheurs de déposer des projets.

A partir du mois de novembre, une appel à projet européen va être lancé. Ce qui implique de permettre aux chercheurs étrangers de pouvoir déposer.

Nous avons donc l’obligation de laisser le choix de la langue (Français ou Anglais) au moment de la connexion.

Qu’elle solution pouvons nous mettre en oeuvre ?

Je vais laisser @francois répondre en détail mais la prochaine version (qui devrait arriver en prerelease/beta en septembre) permet à un utilisateur de choisir dynamiquement sa langue:

Cette feature a été développé à l’occasion de cet échange: Changer le langage d'affichage d'un objet externe ou du user public

1 Like

quand tu dis prochaine version, tu parles de la V5 ?

Oui la version 5 qui actuellement s’appelle toujours 4.0.P25… Lors de sa prerelease elle s’appelera bien 5 ou 5.0.

On a pas encore statué sur la stratégie de numérotation de la version 5 mais on pense abandonner la notation en Pxx au profit du 2ème digit (5.0 = 5.0.P00, 5.1 = 5.0.P01, etc.) à confirmer…

Oui le switch de langue via UI est déjà accessible en V5, avec un nouveau verbe Grant.changeLang pour changer simplement la langue d’un utilisateur (fondamentalement ça fait rien de compliqué = un update du usr_lang et un reset session).

L’évolution n’est pas terminée car il va falloir :

  • pouvoir paramétrer la liste des langues possibles (à priori par scope, enfin en surcharge de la liste LANG), car sinon pour une application en Français uniquement, il sera proposé l’anglais car le scope ADMIN est livré en FRA et ENU par défaut.

  • et comme tu l’indiques, pouvoir choisir sa langue “préférée” à la première connexion = tant que champ usr_lang est vide par exemple

  • Gérer l’intersection entre la langue préférée et les langues possibles du scope actif (forcer le français si un scope n’est qu’en français par exemple même si l’utilisateur est anglais…)

On verra ce qu’il convient de backporter en V4 suivant votre calendrier projet quand on aura terminé tout ça. @rosanneQuily

PS: en V5 toujours et en attendant ces évolutions par scope, on peut déjà forcer les langues autorisées dans les PlatformHooks (ex-GrantHooks)

grant.setLanguages(List<String> langs)

la première campagne doit démarrer entre mi décembre et début janvier.
Quand est-ce-que le V5 sera testable ?

On a prévu de la pousser en “beta” (branche prerelease) la semaine prochaine, ensuite il faudra compter entre 1 et 2 mois pour que ça passe en release (branche release).

Normalement au bout d’un mois on devrait arriver en “beta release candidate”, la release suivra rapidement sauf si des pbs graves sont détectés.

Ce qui détermine le délai c’est essentiellement les retours de ceux qui vont la tester. Donc si vous pouvez commencer à le faire dès le début de la “beta” c’est super. Attention de bien tester sur en partant sur des environnements vierges, en effet au début de la “beta” les processus de migration 4 => 5 ne seront pas encore totalement fiables (et le passage en 5 est irréversible)

notre environnement de test est branché sur le prerelease.
je vais essayer de trouver du temps pour tester dés la semaine prochaine.