mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2026-01-29 00:51:53 +08:00
初步的网页国际化支持
1. 添加 jquery i18n js 依赖和入口 2. 在登录界面添加语言切换功能
This commit is contained in:
10
web/share/i18n/i18n_cn.json
Normal file
10
web/share/i18n/i18n_cn.json
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"username": "用户名: ",
|
||||
"password": "密码: ",
|
||||
"2fa_code": "2FA 验证码: ",
|
||||
"if_enabled": "如果有",
|
||||
"login": "登录",
|
||||
"select_language": "选择语言: ",
|
||||
"chinese": "简体中文",
|
||||
"english": "英语"
|
||||
}
|
||||
10
web/share/i18n/i18n_en.json
Normal file
10
web/share/i18n/i18n_en.json
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"username": "Username: ",
|
||||
"password": "Password: ",
|
||||
"2fa_code": "2FA code: ",
|
||||
"if_enabled": "if enabled",
|
||||
"login": "Login",
|
||||
"select_language": "Select language: ",
|
||||
"chinese": "Simplified Chinese",
|
||||
"english": "English"
|
||||
}
|
||||
29
web/share/js/i18n/i18n.js
Normal file
29
web/share/js/i18n/i18n.js
Normal file
@@ -0,0 +1,29 @@
|
||||
$(document).ready(function() {
|
||||
/*默认语言*/
|
||||
var defaultLang = "cn";
|
||||
$("[i18n]").i18n({
|
||||
defaultLang: defaultLang,
|
||||
filePath: "/share/i18n/",
|
||||
filePrefix: "i18n_",
|
||||
fileSuffix: "",
|
||||
forever: true,
|
||||
callback: function() {
|
||||
console.log("i18n is ready.");
|
||||
}
|
||||
});
|
||||
/*切换为中文 - 按钮*/
|
||||
$(".chinese").click(function() {
|
||||
$("[i18n]").i18n({
|
||||
defaultLang: "cn",
|
||||
filePath: "/share/i18n/"
|
||||
});
|
||||
});
|
||||
/*切换为英文 - 按钮*/
|
||||
$(".english").click(function() {
|
||||
$("[i18n]").i18n({
|
||||
defaultLang: "en",
|
||||
filePath: "/share/i18n/"
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
2
web/share/js/i18n/jquery-3.7.1.min.js
vendored
Normal file
2
web/share/js/i18n/jquery-3.7.1.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/share/js/i18n/jquery.i18n.min.js
vendored
Normal file
1
web/share/js/i18n/jquery.i18n.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
(function($){$.fn.extend({i18n:function(options){var defaults={lang:"",defaultLang:"",filePath:"/i18n/",filePrefix:"i18n_",fileSuffix:"",forever:true,callback:function(){}};function getCookie(name){var arr=document.cookie.split('; ');for(var i=0;i<arr.length;i++){var arr1=arr[i].split('=');if(arr1[0]==name){return arr1[1]}}return''};function setCookie(name,value,myDay){var oDate=new Date();oDate.setDate(oDate.getDate()+myDay);document.cookie=name+'='+value+'; expires='+oDate};var options=$.extend(defaults,options);if(getCookie('i18n_lang')!=""&&getCookie('i18n_lang')!="undefined"&&getCookie('i18n_lang')!=null){defaults.defaultLang=getCookie('i18n_lang')}else if(options.lang==""&&defaults.defaultLang==""){throw"defaultLang must not be null !"};if(options.lang!=null&&options.lang!=""){if(options.forever){setCookie('i18n_lang',options.lang)}else{$.removeCookie("i18n_lang")}}else{options.lang=defaults.defaultLang};var i=this;$.getJSON(options.filePath+options.filePrefix+options.lang+options.fileSuffix+".json",function(data){var i18nLang={};if(data!=null){i18nLang=data}$(i).each(function(i){var i18nOnly=$(this).attr("i18n-only");if($(this).val()!=null&&$(this).val()!=""){if(i18nOnly==null||i18nOnly==undefined||i18nOnly==""||i18nOnly=="value"){$(this).val(i18nLang[$(this).attr("i18n")])}}if($(this).html()!=null&&$(this).html()!=""){if(i18nOnly==null||i18nOnly==undefined||i18nOnly==""||i18nOnly=="html"){$(this).html(i18nLang[$(this).attr("i18n")])}}if($(this).attr('placeholder')!=null&&$(this).attr('placeholder')!=""){if(i18nOnly==null||i18nOnly==undefined||i18nOnly==""||i18nOnly=="placeholder"){$(this).attr('placeholder',i18nLang[$(this).attr("i18n")])}}});options.callback()})}})})(jQuery);
|
||||
Reference in New Issue
Block a user