MCPcopy
hub / github.com/mayswind/AriaNg / getDefaultLanguage

Function getDefaultLanguage

src/scripts/services/ariaNgSettingService.js:77–124  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

75 };
76
77 var getDefaultLanguage = function () {
78 var browserLang = $window.navigator.browserLanguage ? $window.navigator.browserLanguage : $window.navigator.language;
79
80 if (!browserLang) {
81 ariaNgLogService.info('[ariaNgSettingService] cannot get browser language, use default language');
82 return ariaNgDefaultOptions.language;
83 }
84
85 browserLang = browserLang.replace(/\-/g, '_');
86
87 if (!ariaNgLanguages[browserLang]) {
88 var languageName = getLanguageNameFromAlias(browserLang);
89
90 if (languageName) {
91 browserLang = languageName;
92 }
93 }
94
95 if (!ariaNgLanguages[browserLang] && browserLang.split('_').length > 1) { // maybe language-script-region
96 var langParts = browserLang.split('_');
97 browserLang = langParts[0] + '_' + langParts[1];
98
99 if (!ariaNgLanguages[browserLang]) {
100 var languageName = getLanguageNameFromAlias(browserLang);
101
102 if (languageName) {
103 browserLang = languageName;
104 }
105 }
106
107 if (!ariaNgLanguages[browserLang]) {
108 browserLang = langParts[0];
109 var languageName = getLanguageNameFromAlias(browserLang);
110
111 if (languageName) {
112 browserLang = languageName;
113 }
114 }
115 }
116
117 if (!ariaNgLanguages[browserLang]) {
118 ariaNgLogService.info('[ariaNgSettingService] browser language \"' + browserLang + '\" not support, use default language');
119 return ariaNgDefaultOptions.language;
120 }
121
122 ariaNgLogService.info('[ariaNgSettingService] use browser language \"' + browserLang + '\" as current language');
123 return browserLang;
124 };
125
126 var getLanguageNameFromAliasOrDefaultLanguage = function (lang) {
127 var languageName = getLanguageNameFromAlias(lang);

Callers 2

getOptionsFunction · 0.85

Calls 1

getLanguageNameFromAliasFunction · 0.85

Tested by

no test coverage detected