i18n.js 726 B

1234567891011121314151617181920212223242526
  1. // We save the user language preference in the user profile, and use that to set
  2. // the language reactively. If the user is not connected we use the language
  3. // information provided by the browser, and default to english.
  4. Meteor.startup(() => {
  5. Tracker.autorun(() => {
  6. const currentUser = Meteor.user();
  7. let language;
  8. if (currentUser) {
  9. language = currentUser.profile && currentUser.profile.language;
  10. }
  11. if (!language) {
  12. if(navigator.languages) {
  13. language = navigator.languages[0];
  14. } else {
  15. language = navigator.language || navigator.userLanguage;
  16. }
  17. }
  18. if (language) {
  19. TAPi18n.setLanguage(language);
  20. T9n.setLanguage(language);
  21. }
  22. });
  23. });