diff --git a/docs-web/src/main/webapp/src/app/docs/app.js b/docs-web/src/main/webapp/src/app/docs/app.js index e578bc7c..c8407ab5 100644 --- a/docs-web/src/main/webapp/src/app/docs/app.js +++ b/docs-web/src/main/webapp/src/app/docs/app.js @@ -350,9 +350,15 @@ angular.module('docs', 'en_*': 'en', 'fr_*': 'fr', '*': 'en' - }) - .determinePreferredLanguage() - .fallbackLanguage('en'); + }); + + if (!_.isUndefined(localStorage.overrideLang)) { + // Set the current language if an override is saved in local storage + $translateProvider.use(localStorage.overrideLang); + } else { + // Or else determine the language based on the user's browser + $translateProvider.determinePreferredLanguage(); + } // Configuring Timago timeAgoSettings.overrideLang = $translateProvider.preferredLanguage(); diff --git a/docs-web/src/main/webapp/src/app/docs/controller/Footer.js b/docs-web/src/main/webapp/src/app/docs/controller/Footer.js index f5a60448..272310c3 100644 --- a/docs-web/src/main/webapp/src/app/docs/controller/Footer.js +++ b/docs-web/src/main/webapp/src/app/docs/controller/Footer.js @@ -3,24 +3,21 @@ /** * Footer controller. */ -angular.module('docs').controller('Footer', function($scope, Restangular, $translate, timeAgoSettings) { +angular.module('docs').controller('Footer', function($scope, $rootScope, Restangular, $translate, timeAgoSettings) { // Load app data Restangular.one('app').get().then(function(data) { $scope.app = data; }); - $scope.currentLang = $translate.use(); + // Save the current language to local storage + $rootScope.$on('$translateChangeSuccess', function() { + $scope.currentLang = $translate.use(); + timeAgoSettings.overrideLang = $scope.currentLang; + localStorage.overrideLang = $scope.currentLang; + }); - // Change the current language and save it to local storage + // Change the current language $scope.changeLanguage = function(lang) { $translate.use(lang); - timeAgoSettings.overrideLang = lang; - localStorage.overrideLang = lang; - $scope.currentLang = lang; }; - - // Set the current language if an override is saved in local storage - if (!_.isUndefined(localStorage.overrideLang)) { - $scope.changeLanguage(localStorage.overrideLang); - } }); \ No newline at end of file diff --git a/docs-web/src/main/webapp/src/index.html b/docs-web/src/main/webapp/src/index.html index 087c9349..3b0e642d 100644 --- a/docs-web/src/main/webapp/src/index.html +++ b/docs-web/src/main/webapp/src/index.html @@ -30,6 +30,7 @@ + @@ -88,7 +89,7 @@ - +