harbor/static/ng/resources/js/services/i18n/services.i18n.js

41 lines
1.1 KiB
JavaScript
Raw Normal View History

2016-05-13 12:48:06 +02:00
(function() {
'use strict';
angular
.module('harbor.services.i18n')
.factory('I18nService', I18nService);
2016-05-14 07:34:54 +02:00
I18nService.$inject = ['$cookies', '$window'];
2016-05-13 12:48:06 +02:00
2016-05-14 07:34:54 +02:00
function I18nService($cookies, $window) {
2016-05-13 12:48:06 +02:00
var languages = $.extend(true, {}, global_messages);
var defaultLanguage = navigator.language || 'en-US';
var languageNames = {
'en-US': 'English',
'zh-CN': '中文'
};
return tr;
function tr() {
return {
2016-05-13 13:16:57 +02:00
'setCurrentLanguage': function(language) {
2016-05-13 12:48:06 +02:00
if(!language){
language = defaultLanguage;
}
$cookies.put('language', language, {'path': '/ng/'});
2016-05-14 07:34:54 +02:00
$window.location.reload();
2016-05-13 12:48:06 +02:00
},
'getCurrentLanguage': function() {
return $cookies.get('language') || defaultLanguage;
},
'getLanguageName': function(crrentLanguage) {
return languageNames[crrentLanguage];
},
'getValue': function(key, currentLanguage) {
return languages[key][currentLanguage];
}
}
}
}
})();