code refactor

This commit is contained in:
MaysWind
2024-08-03 18:21:04 +08:00
parent 77439f675b
commit f1f61a9038
10 changed files with 28 additions and 28 deletions
+8 -8
View File
@@ -67,26 +67,26 @@ function getAllLanguageInfos() {
function getAllLanguageInfoArray(translateFn, includeSystemDefault) {
const ret = [];
for (const code in allLanguages) {
if (!Object.prototype.hasOwnProperty.call(allLanguages, code)) {
for (const languageTag in allLanguages) {
if (!Object.prototype.hasOwnProperty.call(allLanguages, languageTag)) {
continue;
}
const languageInfo = allLanguages[code];
const languageInfo = allLanguages[languageTag];
ret.push({
code: code,
languageTag: languageTag,
displayName: languageInfo.displayName
});
}
ret.sort(function (lang1, lang2) {
return lang1.code.localeCompare(lang2.code);
return lang1.languageTag.localeCompare(lang2.languageTag);
});
if (includeSystemDefault) {
ret.splice(0, 0, {
code: '',
languageTag: '',
displayName: translateFn('System Default')
});
}
@@ -173,7 +173,7 @@ function getLocaleFromLanguageAlias(alias) {
return null;
}
function getCurrentLanguageCode(i18nGlobal) {
function getCurrentLanguageTag(i18nGlobal) {
return i18nGlobal.locale;
}
@@ -1423,7 +1423,7 @@ export function i18nFunctions(i18nGlobal) {
getAllLanguageInfoArray: (includeSystemDefault) => getAllLanguageInfoArray(i18nGlobal.t, includeSystemDefault),
getLanguageInfo: getLanguageInfo,
getDefaultLanguage: getDefaultLanguage,
getCurrentLanguageCode: () => getCurrentLanguageCode(i18nGlobal),
getCurrentLanguageTag: () => getCurrentLanguageTag(i18nGlobal),
getCurrentLanguageInfo: () => getCurrentLanguageInfo(i18nGlobal),
getCurrentLanguageDisplayName: () => getCurrentLanguageDisplayName(i18nGlobal),
getDefaultCurrency: () => getDefaultCurrency(i18nGlobal.t),
+5 -5
View File
@@ -92,7 +92,7 @@
<v-col cols="12" md="12">
<v-select
item-title="displayName"
item-value="code"
item-value="languageTag"
:disabled="submitting || navigateToHomePage"
:label="$t('Language')"
:placeholder="$t('Language')"
@@ -153,10 +153,10 @@
v-bind="props">{{ currentLanguageName }}</v-btn>
</template>
<v-list>
<v-list-item v-for="lang in allLanguages" :key="lang.code">
<v-list-item v-for="lang in allLanguages" :key="lang.languageTag">
<v-list-item-title
class="cursor-pointer"
@click="currentLocale = lang.code">
@click="currentLocale = lang.languageTag">
{{ lang.displayName }}
</v-list-item-title>
</v-list-item>
@@ -258,7 +258,7 @@ import {
export default {
data() {
const userStore = useUserStore();
const newUser = userStore.generateNewUserModel(this.$locale.getCurrentLanguageCode());
const newUser = userStore.generateNewUserModel(this.$locale.getCurrentLanguageTag());
return {
user: newUser,
@@ -293,7 +293,7 @@ export default {
},
currentLocale: {
get: function () {
return this.$locale.getCurrentLanguageCode();
return this.$locale.getCurrentLanguageTag();
},
set: function (value) {
const isCurrencyDefault = this.user.defaultCurrency === this.settingsStore.localeDefaultSettings.currency;
@@ -91,7 +91,7 @@ export default {
const self = this;
return {
currentLocale: self.$locale.getCurrentLanguageCode(),
currentLocale: self.$locale.getCurrentLanguageTag(),
allCategoryTypes: [],
submitting: false,
icons: {
@@ -117,7 +117,7 @@
<v-col cols="12" md="6">
<v-select
item-title="displayName"
item-value="code"
item-value="languageTag"
persistent-placeholder
:disabled="loading || saving"
:label="$t('Language')"
+1 -1
View File
@@ -256,7 +256,7 @@ export default {
}
},
currentLanguageCode() {
return this.$locale.getCurrentLanguageCode();
return this.$locale.getCurrentLanguageTag();
},
currentLanguageName() {
return this.$locale.getCurrentLanguageDisplayName();
+2 -2
View File
@@ -89,7 +89,7 @@ export default {
const self = this;
return {
currentLocale: self.$locale.getCurrentLanguageCode(),
currentLocale: self.$locale.getCurrentLanguageTag(),
logouting: false
};
},
@@ -167,7 +167,7 @@ export default {
},
methods: {
onPageAfterIn() {
this.currentLocale = this.$locale.getCurrentLanguageCode();
this.currentLocale = this.$locale.getCurrentLanguageTag();
},
logout() {
const self = this;
+5 -5
View File
@@ -66,9 +66,9 @@
smart-select :smart-select-params="{ openIn: 'popup', popupPush: true, closeOnSelect: true, scrollToSelectedItem: true, searchbar: true, searchbarPlaceholder: $t('Language'), searchbarDisableText: $t('Cancel'), appendSearchbarNotFound: $t('No results'), pageTitle: $t('Language'), popupCloseLinkText: $t('Done') }"
>
<select v-model="currentLocale">
<option :value="locale"
:key="locale"
v-for="(lang, locale) in allLanguages">{{ lang.displayName }}</option>
<option :value="languageTag"
:key="languageTag"
v-for="(lang, languageTag) in allLanguages">{{ lang.displayName }}</option>
</select>
</f7-list-item>
@@ -191,7 +191,7 @@ export default {
],
data() {
const userStore = useUserStore();
const newUser = userStore.generateNewUserModel(this.$locale.getCurrentLanguageCode());
const newUser = userStore.generateNewUserModel(this.$locale.getCurrentLanguageTag());
return {
user: newUser,
@@ -218,7 +218,7 @@ export default {
},
currentLocale: {
get: function () {
return this.$locale.getCurrentLanguageCode();
return this.$locale.getCurrentLanguageTag();
},
set: function (value) {
const isCurrencyDefault = this.user.defaultCurrency === this.settingsStore.localeDefaultSettings.currency;
+1 -1
View File
@@ -104,7 +104,7 @@ export default {
&& webauthn.isSupported();
},
currentLanguageCode() {
return this.$locale.getCurrentLanguageCode();
return this.$locale.getCurrentLanguageTag();
},
currentLanguageName() {
return this.$locale.getCurrentLanguageDisplayName();
+1 -1
View File
@@ -71,7 +71,7 @@ export default {
return {
loadingError: null,
currentLocale: self.$locale.getCurrentLanguageCode(),
currentLocale: self.$locale.getCurrentLanguageTag(),
categoryType: 0,
submitting: false,
showMoreActionSheet: false,
+3 -3
View File
@@ -123,8 +123,8 @@
:title="currentLanguageName"
smart-select :smart-select-params="{ openIn: 'popup', popupPush: true, closeOnSelect: true, scrollToSelectedItem: true, searchbar: true, searchbarPlaceholder: $t('Language'), searchbarDisableText: $t('Cancel'), appendSearchbarNotFound: $t('No results'), pageTitle: $t('Language'), popupCloseLinkText: $t('Done') }">
<select v-model="newProfile.language">
<option :value="language.code"
:key="language.code"
<option :value="language.languageTag"
:key="language.languageTag"
v-for="language in allLanguages">{{ language.displayName }}</option>
</select>
</f7-list-item>
@@ -440,7 +440,7 @@ export default {
},
currentLanguageName() {
for (let i = 0; i < this.allLanguages.length; i++) {
if (this.allLanguages[i].code === this.newProfile.language) {
if (this.allLanguages[i].languageTag === this.newProfile.language) {
return this.allLanguages[i].displayName;
}
}