3cn-ecn/nantralPlatform

Internationalisation

Closed this issue · 2 comments

  • Ajout du support multilingue
  • Possibilité de changer de langue depuis l'interface
  • Traduction du frontend
  • Traduction des models
  • Possibilité pour les groupes d'entrer une description en français ET en anglais

@Corentin09 @EugeneCastelneau Quelques notes pour l'implémentation technique :

  • Côté Front : Sauvegarder la langue choisie dans un cookie sur le navigateur, avec une valeur de type fr-FR ou en-US
  • Côté Back : Ajouter le paramètre LANGUAGE_COOKIE_NAME avec le nom du cookie précédemment défini dans les paramètres de Django (fichier base.py) pour synchroniser la langue sélectionnée entre front et back
  • Par défaut (si cookie absent) : choisir la langue par défaut du navigateur
  • Pour afficher le nom de la langue à l'utilisateur à partir du code langue, ne pas ajouter le nom de la langue dans les fichiers de traduction mais utiliser la fonction suivante de Javascript :
    >> new Intl.DisplayNames('de-DE', {type: 'language'}).of('fr-FR')
    "Französisch (Frankreich)"

Pour l'implémentation graphique, j'aimerais bien que le lien dans le menu utilisateur ouvre un nouveau menu qui remplace le menu utilisateur (comme les sous-menus du menu utilisateur de facebook). Sinon une autre option plus simple est d'ouvrir un modal où l'utilisateur choisit la langue