From 2d80ce3bdabff4104fa911e232c498d02a23ae36 Mon Sep 17 00:00:00 2001 From: thinkgem Date: Thu, 9 May 2019 23:09:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=80=E6=94=BE=E6=89=80=E6=9C=89=E5=9B=BD?= =?UTF-8?q?=E9=99=85=E5=8C=96=E8=AF=AD=E8=A8=80=E5=8C=85=EF=BC=8C=E6=96=B9?= =?UTF-8?q?=E4=BE=BF=E7=94=A8=E6=88=B7=E8=87=AA=E5=AE=9A=E4=B9=89=E8=AF=AD?= =?UTF-8?q?=E8=A8=80=E5=8C=85=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/static/layer/3.1/layer.js | 70 +- .../static/select2/4.0/i18n/ja_JP.js | 24 + .../jeesite/modules/sys/db/InitCoreData.xlsx | Bin 169165 -> 169157 bytes .../db/upgrade/core/mssql/mssql_4.1.5.sql | 8 +- .../db/upgrade/core/mysql/mysql_4.1.5.sql | 8 +- .../db/upgrade/core/oracle/oracle_4.1.5.sql | 17 +- .../core/postgresql/postgresql_4.1.5.sql | 17 +- .../main/resources/db/upgrade/core/versions | 3 +- .../i18n/core/common/i18n_en.properties | 1 + .../i18n/core/common/i18n_ja_JP.properties | 74 ++ .../i18n/core/common_view/i18n_en.properties | 2 - .../core/common_view/i18n_ja_JP.properties | 81 +++ .../i18n/core/sys/i18n_ja_JP.properties | 254 +++++++ .../static/common/i18n/jeesite_en.js | 31 +- .../static/common/i18n/jeesite_ja_JP.js | 31 + .../static/common/i18n/jeesite_zh_CN.js | 18 +- .../static/jqGrid/4.7/js/i18n/ja_JP.js | 137 ++++ .../jquery-plugins/jquery.strength_i18n.js | 26 + .../jquery-timeago/i18n/jquery.timeago.en.js | 30 + .../i18n/jquery.timeago.ja_JP.js | 29 + .../i18n/jquery.timeago.zh_CN.js | 31 + .../i18n/jquery.timeago.zh_TW.js | 30 + .../static/jquery-timeago/jquery.timeago.js | 232 ++++++ .../1.16/localization/messages_en.js | 33 + .../1.16/localization/messages_ja_JP.js | 33 + .../1.16/localization/messages_zh_CN.js | 33 + .../1.16/localization/messages_zh_TW.js | 33 + .../ueditor/1.4/lang/ja_JP/images/copy.png | Bin 0 -> 4319 bytes .../1.4/lang/ja_JP/images/localimage.png | Bin 0 -> 6979 bytes .../ueditor/1.4/lang/ja_JP/images/music.png | Bin 0 -> 23106 bytes .../ueditor/1.4/lang/ja_JP/images/upload.png | Bin 0 -> 6608 bytes .../static/ueditor/1.4/lang/ja_JP/ja_JP.js | 669 ++++++++++++++++++ .../static/wdScrollTab/js/TabPanel_i18n.js | 22 + .../static/webuploader/0.1/i18n/en.js | 60 ++ .../static/webuploader/0.1/i18n/ja_JP.js | 60 ++ .../static/webuploader/0.1/i18n/zh_CN.js | 0 .../main/resources/views/include/jslibs.html | 2 + 37 files changed, 2017 insertions(+), 82 deletions(-) create mode 100644 common/src/main/resources/static/select2/4.0/i18n/ja_JP.js create mode 100644 modules/core/src/main/resources/i18n/core/common/i18n_ja_JP.properties create mode 100644 modules/core/src/main/resources/i18n/core/common_view/i18n_ja_JP.properties create mode 100644 modules/core/src/main/resources/i18n/core/sys/i18n_ja_JP.properties create mode 100644 modules/core/src/main/resources/static/common/i18n/jeesite_ja_JP.js create mode 100644 modules/core/src/main/resources/static/jqGrid/4.7/js/i18n/ja_JP.js create mode 100644 modules/core/src/main/resources/static/jquery-plugins/jquery.strength_i18n.js create mode 100644 modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.en.js create mode 100644 modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.ja_JP.js create mode 100644 modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.zh_CN.js create mode 100644 modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.zh_TW.js create mode 100644 modules/core/src/main/resources/static/jquery-timeago/jquery.timeago.js create mode 100644 modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_en.js create mode 100644 modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_ja_JP.js create mode 100644 modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_zh_CN.js create mode 100644 modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_zh_TW.js create mode 100644 modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/images/copy.png create mode 100644 modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/images/localimage.png create mode 100644 modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/images/music.png create mode 100644 modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/images/upload.png create mode 100644 modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/ja_JP.js create mode 100644 modules/core/src/main/resources/static/wdScrollTab/js/TabPanel_i18n.js create mode 100644 modules/core/src/main/resources/static/webuploader/0.1/i18n/en.js create mode 100644 modules/core/src/main/resources/static/webuploader/0.1/i18n/ja_JP.js create mode 100644 modules/core/src/main/resources/static/webuploader/0.1/i18n/zh_CN.js diff --git a/common/src/main/resources/static/layer/3.1/layer.js b/common/src/main/resources/static/layer/3.1/layer.js index 4afb4994..61a04305 100644 --- a/common/src/main/resources/static/layer/3.1/layer.js +++ b/common/src/main/resources/static/layer/3.1/layer.js @@ -1,41 +1,12 @@ /** - @Name:layer v3.0.3 Web弹层组件 @Author:贤心 @Site:http://layer.layui.com @License:MIT - */ - ;!function(window, undefined){ "use strict"; -var i18n = { - btnOk: '确定', - btnCancel: '取消', - title: '信息', - promptTipA: '最多输入', - promptTipB: '个字符', - noPicture: '没有图片', - photoError: '当前图片地址异常
是否继续查看下一张?', - photoNextPage: '下一张', - photoClose: '不看了' -}; - -if (window.lang == 'en'){ - i18n = { - btnOk: 'Ok', - btnCancel: 'Cancle', - title: 'Information', - promptTipA: 'Enter ', - promptTipB: 'character at most.', - noPicture: 'No picture', - photoError: 'Current image address error.
Next slide?', - photoNextPage: 'The next', - photoClose: 'Close' - }; -} - var isLayui = window.layui && layui.define, $, win, ready = { getPath: function(){ var js = document.scripts, script = js[js.length - 1], jsPath = script.src; @@ -44,7 +15,7 @@ var isLayui = window.layui && layui.define, $, win, ready = { }(), config: {}, end: {}, minIndex: 0, minLeft: [], - btn: [i18n.btnOk, i18n.btnCancel], + //btn: [layer.i18n.btnOk, layer.i18n.btnCancel], // ThinkGem //五种原始层模式 type: ['dialog', 'page', 'iframe', 'loading', 'tips'] @@ -53,6 +24,17 @@ var isLayui = window.layui && layui.define, $, win, ready = { //默认内置方法。 var layer = { v: '3.0.3', + i18n: { // ThinkGem 国际化支持 + btnOk: '确定', + btnCancel: '取消', + title: '信息', + promptTipA: '最多输入', + promptTipB: '个字符', + noPicture: '没有图片', + photoError: '当前图片地址异常
是否继续查看下一张?', + photoNextPage: '下一张', + photoClose: '不看了' + }, ie: function(){ //ie版本 var agent = navigator.userAgent.toLowerCase(); return (!!window.ActiveXObject || "ActiveXObject" in window) ? ( @@ -133,7 +115,8 @@ var layer = { } return layer.open($.extend({ content: content, - btn: ready.btn, + //btn: ready.btn, + btn: [layer.i18n.btnOk, layer.i18n.btnCancel], yes: yes, btn2: cancel }, type ? {} : options)); @@ -210,7 +193,7 @@ Class.pt.config = { shade: 0.3, fixed: true, move: doms[1], - title: i18n.title, +// title: layer.i18n.title, // ThinkGem 替换 config.title 为 layer.i18n.title,支持国际化 offset: 'auto', area: 'auto', closeBtn: 1, @@ -229,10 +212,10 @@ Class.pt.config = { //容器 Class.pt.vessel = function(conType, callback){ var that = this, times = that.index, config = that.config; - var zIndex = config.zIndex + times, titype = typeof config.title === 'object'; + var zIndex = config.zIndex + times, titype = typeof layer.i18n.title === 'object'; var ismax = config.maxmin && (config.type === 1 || config.type === 2); - var titleHTML = (config.title ? '
' - + (titype ? config.title[0] : config.title) + var titleHTML = (layer.i18n.title ? '
' + + (titype ? layer.i18n.title[0] : layer.i18n.title) + '
' : ''); config.zIndex = zIndex; @@ -249,7 +232,7 @@ Class.pt.vessel = function(conType, callback){ + '
' + ''+ function(){ var closebtn = ismax ? '' : ''; - config.closeBtn && (closebtn += ''); + config.closeBtn && (closebtn += ''); return closebtn; }() + '' + (config.btn ? function(){ @@ -292,7 +275,8 @@ Class.pt.creat = function(){ switch(config.type){ case 0: - config.btn = ('btn' in config) ? config.btn : ready.btn[0]; + //config.btn = ('btn' in config) ? config.btn : ready.btn[0]; ThinkGem + config.btn = ('btn' in config) ? config.btn : layer.i18n.btnOk;// ThinkGem layer.closeAll('dialog'); break; case 2: @@ -309,7 +293,7 @@ Class.pt.creat = function(){ + doms[4] + '' + times +'">'; break; case 3: - delete config.title; + delete layer.i18n.title; delete config.closeBtn; config.icon === -1 && (config.icon === 0); layer.closeAll('loading'); @@ -318,7 +302,7 @@ Class.pt.creat = function(){ conType || (config.content = [config.content, 'body']); config.follow = config.content[1]; config.content = config.content[0] + ''; - delete config.title; + delete layer.i18n.title; config.tips = typeof config.tips === 'object' ? config.tips : [config.tips, true]; config.tipsMore || layer.closeAll('tips'); break; @@ -1020,7 +1004,7 @@ layer.prompt = function(options, yes){ return layer.open($.extend({ type: 1 - ,btn: [i18n.btnOk,i18n.btnCancel] + ,btn: [layer.i18n.btnOk,layer.i18n.btnCancel] ,content: content ,skin: 'layui-layer-prompt' + skin('prompt') ,maxWidth: win.width() @@ -1035,7 +1019,7 @@ layer.prompt = function(options, yes){ if(value === ''){ prompt.focus(); } else if(value.length > (options.maxlength||500)) { - layer.tips(i18n.promptTipA + (options.maxlength || 500) + i18n.promptTipB, prompt, {tips: 1}); + layer.tips(layer.i18n.promptTipA + (options.maxlength || 500) + layer.i18n.promptTipB, prompt, {tips: 1}); } else { yes && yes(value, index, prompt); } @@ -1287,9 +1271,9 @@ layer.photos = function(options, loop, key){ }, options)); }, function(){ layer.close(dict.loadi); - layer.msg(i18n.photoError, { + layer.msg(layer.i18n.photoError, { time: 30000, - btn: [i18n.photoNextPage, i18n.photoClose], + btn: [layer.i18n.photoNextPage, layer.i18n.photoClose], yes: function(){ data.length > 1 && dict.imgnext(true,true); } diff --git a/common/src/main/resources/static/select2/4.0/i18n/ja_JP.js b/common/src/main/resources/static/select2/4.0/i18n/ja_JP.js new file mode 100644 index 00000000..34782622 --- /dev/null +++ b/common/src/main/resources/static/select2/4.0/i18n/ja_JP.js @@ -0,0 +1,24 @@ +(function() { + if (jQuery && jQuery.fn && jQuery.fn.select2 && jQuery.fn.select2.amd) + var e = jQuery.fn.select2.amd; + return e.define("select2/i18n/zh_CN", [], function() { + return { errorLoading : function() { + return "結果に載せることはできない。" + }, inputTooLong : function(e) { + var t = e.input.length - e.maximum, n = "" + t + "文字を削除してください"; + return n + }, inputTooShort : function(e) { + var t = e.minimum - e.input.length, n = "少なくとも" + t + "文字を入力してください"; + return n + }, loadingMore : function() { + return "より多くの……" + }, maximumSelected : function(e) { + var t = "選択するしかない" + e.maximum + "項目別"; + return t + }, noResults : function() { + return "一致する項目を見つけることができなかった" + }, searching : function() { + return "検索しています……" + } } + }), { define : e.define, require : e.require } +})(); \ No newline at end of file diff --git a/modules/core/src/main/java/com/jeesite/modules/sys/db/InitCoreData.xlsx b/modules/core/src/main/java/com/jeesite/modules/sys/db/InitCoreData.xlsx index 3d43987ed9831783f7f9148294ed526f84209b5e..bdc67539a0fe7b1ed07d4a4d890ac157f9e52b5a 100644 GIT binary patch delta 37832 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 delta 37882 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�Xy8vyhm{qvMrHE*{;D80UXe?qX20(nqrz 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 diff --git a/modules/core/src/main/resources/db/upgrade/core/mssql/mssql_4.1.5.sql b/modules/core/src/main/resources/db/upgrade/core/mssql/mssql_4.1.5.sql index 69da9d5a..9f17255f 100644 --- a/modules/core/src/main/resources/db/upgrade/core/mssql/mssql_4.1.5.sql +++ b/modules/core/src/main/resources/db/upgrade/core/mssql/mssql_4.1.5.sql @@ -1,10 +1,10 @@ -- 新增文件管理模块 -INSERT INTO js_sys_module(module_code, module_name, description, main_class_name, current_version, upgrade_info, status, create_by, create_date, update_by, update_date, remarks) +INSERT INTO ${_prefix}sys_module(module_code, module_name, description, main_class_name, current_version, upgrade_info, status, create_by, create_date, update_by, update_date, remarks) VALUES ('filemanager', '文件管理', '公共文件柜、个人文件柜、文件分享', 'com.jeesite.modules.filemanager.web.FilemanagerController', '4.1.4', NULL, '0', 'system', getdate(), 'system', getdate(), NULL); -- 员工附属机构关系表 -CREATE TABLE [js_sys_employee_office] +CREATE TABLE [${_prefix}sys_employee_office] ( [id] varchar(64) NOT NULL UNIQUE, [emp_code] varchar(64) NOT NULL, @@ -12,3 +12,7 @@ CREATE TABLE [js_sys_employee_office] [post_code] varchar(64), PRIMARY KEY ([emp_code], [office_code]) ); + +-- 新增日语(日本语)语言包 +INSERT INTO ${_prefix}sys_dict_data(dict_code, parent_code, parent_codes, tree_sort, tree_sorts, tree_leaf, tree_level, tree_names, dict_label, dict_value, dict_type, is_sys, description, css_style, css_class, status, create_by, create_date, update_by, update_date, remarks, corp_code, corp_name, extend_s1, extend_s2, extend_s3, extend_s4, extend_s5, extend_s6, extend_s7, extend_s8, extend_i1, extend_i2, extend_i3, extend_i4, extend_f1, extend_f2, extend_f3, extend_f4, extend_d1, extend_d2, extend_d3, extend_d4) +VALUES ('1126375062364020736', '0', '0,', 60, '0000000060,', '1', 0, '日本語', '日本語', 'ja_JP', 'sys_lang_type', '1', '', '', '', '0', 'system', getdate(), 'system', getdate(), '', '0', 'JeeSite', '', '', '', '', '', '', '', '', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); diff --git a/modules/core/src/main/resources/db/upgrade/core/mysql/mysql_4.1.5.sql b/modules/core/src/main/resources/db/upgrade/core/mysql/mysql_4.1.5.sql index f04e066e..9470458c 100644 --- a/modules/core/src/main/resources/db/upgrade/core/mysql/mysql_4.1.5.sql +++ b/modules/core/src/main/resources/db/upgrade/core/mysql/mysql_4.1.5.sql @@ -1,10 +1,10 @@ -- 新增文件管理模块 -INSERT INTO js_sys_module(module_code, module_name, description, main_class_name, current_version, upgrade_info, status, create_by, create_date, update_by, update_date, remarks) +INSERT INTO ${_prefix}sys_module(module_code, module_name, description, main_class_name, current_version, upgrade_info, status, create_by, create_date, update_by, update_date, remarks) VALUES ('filemanager', '文件管理', '公共文件柜、个人文件柜、文件分享', 'com.jeesite.modules.filemanager.web.FilemanagerController', '4.1.4', NULL, '0', 'system', now(), 'system', now(), NULL); -- 员工附属机构关系表 -CREATE TABLE js_sys_employee_office +CREATE TABLE ${_prefix}sys_employee_office ( id varchar(64) NOT NULL COMMENT '编号', emp_code varchar(64) NOT NULL COMMENT '员工编码', @@ -13,3 +13,7 @@ CREATE TABLE js_sys_employee_office PRIMARY KEY (emp_code, office_code), UNIQUE (id) ) COMMENT = '员工附属机构关系表'; + +-- 新增日语(日本语)语言包 +INSERT INTO ${_prefix}sys_dict_data(dict_code, parent_code, parent_codes, tree_sort, tree_sorts, tree_leaf, tree_level, tree_names, dict_label, dict_value, dict_type, is_sys, description, css_style, css_class, status, create_by, create_date, update_by, update_date, remarks, corp_code, corp_name, extend_s1, extend_s2, extend_s3, extend_s4, extend_s5, extend_s6, extend_s7, extend_s8, extend_i1, extend_i2, extend_i3, extend_i4, extend_f1, extend_f2, extend_f3, extend_f4, extend_d1, extend_d2, extend_d3, extend_d4) +VALUES ('1126375062364020736', '0', '0,', 60, '0000000060,', '1', 0, '日本語', '日本語', 'ja_JP', 'sys_lang_type', '1', '', '', '', '0', 'system', now(), 'system', now(), '', '0', 'JeeSite', '', '', '', '', '', '', '', '', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); diff --git a/modules/core/src/main/resources/db/upgrade/core/oracle/oracle_4.1.5.sql b/modules/core/src/main/resources/db/upgrade/core/oracle/oracle_4.1.5.sql index d299a830..1dde2a66 100644 --- a/modules/core/src/main/resources/db/upgrade/core/oracle/oracle_4.1.5.sql +++ b/modules/core/src/main/resources/db/upgrade/core/oracle/oracle_4.1.5.sql @@ -1,10 +1,10 @@ -- 新增文件管理模块 -INSERT INTO js_sys_module(module_code, module_name, description, main_class_name, current_version, upgrade_info, status, create_by, create_date, update_by, update_date, remarks) +INSERT INTO ${_prefix}sys_module(module_code, module_name, description, main_class_name, current_version, upgrade_info, status, create_by, create_date, update_by, update_date, remarks) VALUES ('filemanager', '文件管理', '公共文件柜、个人文件柜、文件分享', 'com.jeesite.modules.filemanager.web.FilemanagerController', '4.1.4', NULL, '0', 'system', sysdate, 'system', sysdate, NULL); -- 员工附属机构关系表 -CREATE TABLE js_sys_employee_office +CREATE TABLE ${_prefix}sys_employee_office ( id varchar2(64) NOT NULL UNIQUE, emp_code varchar2(64) NOT NULL, @@ -12,9 +12,12 @@ CREATE TABLE js_sys_employee_office post_code varchar2(64), PRIMARY KEY (emp_code, office_code) ); -COMMENT ON TABLE js_sys_employee_office IS '员工附属机构关系表'; -COMMENT ON COLUMN js_sys_employee_office.id IS '编号'; -COMMENT ON COLUMN js_sys_employee_office.emp_code IS '员工编码'; -COMMENT ON COLUMN js_sys_employee_office.office_code IS '机构编码'; -COMMENT ON COLUMN js_sys_employee_office.post_code IS '岗位编码'; +COMMENT ON TABLE ${_prefix}sys_employee_office IS '员工附属机构关系表'; +COMMENT ON COLUMN ${_prefix}sys_employee_office.id IS '编号'; +COMMENT ON COLUMN ${_prefix}sys_employee_office.emp_code IS '员工编码'; +COMMENT ON COLUMN ${_prefix}sys_employee_office.office_code IS '机构编码'; +COMMENT ON COLUMN ${_prefix}sys_employee_office.post_code IS '岗位编码'; +-- 新增日语(日本语)语言包 +INSERT INTO ${_prefix}sys_dict_data(dict_code, parent_code, parent_codes, tree_sort, tree_sorts, tree_leaf, tree_level, tree_names, dict_label, dict_value, dict_type, is_sys, description, css_style, css_class, status, create_by, create_date, update_by, update_date, remarks, corp_code, corp_name, extend_s1, extend_s2, extend_s3, extend_s4, extend_s5, extend_s6, extend_s7, extend_s8, extend_i1, extend_i2, extend_i3, extend_i4, extend_f1, extend_f2, extend_f3, extend_f4, extend_d1, extend_d2, extend_d3, extend_d4) +VALUES ('1126375062364020736', '0', '0,', 60, '0000000060,', '1', 0, '日本語', '日本語', 'ja_JP', 'sys_lang_type', '1', '', '', '', '0', 'system', sysdate, 'system', sysdate, '', '0', 'JeeSite', '', '', '', '', '', '', '', '', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); diff --git a/modules/core/src/main/resources/db/upgrade/core/postgresql/postgresql_4.1.5.sql b/modules/core/src/main/resources/db/upgrade/core/postgresql/postgresql_4.1.5.sql index 7fc9a256..36c927cf 100644 --- a/modules/core/src/main/resources/db/upgrade/core/postgresql/postgresql_4.1.5.sql +++ b/modules/core/src/main/resources/db/upgrade/core/postgresql/postgresql_4.1.5.sql @@ -1,10 +1,10 @@ -- 新增文件管理模块 -INSERT INTO js_sys_module(module_code, module_name, description, main_class_name, current_version, upgrade_info, status, create_by, create_date, update_by, update_date, remarks) +INSERT INTO ${_prefix}sys_module(module_code, module_name, description, main_class_name, current_version, upgrade_info, status, create_by, create_date, update_by, update_date, remarks) VALUES ('filemanager', '文件管理', '公共文件柜、个人文件柜、文件分享', 'com.jeesite.modules.filemanager.web.FilemanagerController', '4.1.4', NULL, '0', 'system', now(), 'system', now(), NULL); -- 员工附属机构关系表 -CREATE TABLE js_sys_employee_office +CREATE TABLE ${_prefix}sys_employee_office ( id varchar(64) NOT NULL UNIQUE, emp_code varchar(64) NOT NULL, @@ -12,9 +12,12 @@ CREATE TABLE js_sys_employee_office post_code varchar(64), PRIMARY KEY (emp_code, office_code) ) WITHOUT OIDS; -COMMENT ON TABLE js_sys_employee_office IS '员工附属机构关系表'; -COMMENT ON COLUMN js_sys_employee_office.id IS '编号'; -COMMENT ON COLUMN js_sys_employee_office.emp_code IS '员工编码'; -COMMENT ON COLUMN js_sys_employee_office.office_code IS '机构编码'; -COMMENT ON COLUMN js_sys_employee_office.post_code IS '岗位编码'; +COMMENT ON TABLE ${_prefix}sys_employee_office IS '员工附属机构关系表'; +COMMENT ON COLUMN ${_prefix}sys_employee_office.id IS '编号'; +COMMENT ON COLUMN ${_prefix}sys_employee_office.emp_code IS '员工编码'; +COMMENT ON COLUMN ${_prefix}sys_employee_office.office_code IS '机构编码'; +COMMENT ON COLUMN ${_prefix}sys_employee_office.post_code IS '岗位编码'; +-- 新增日语(日本语)语言包 +INSERT INTO ${_prefix}sys_dict_data(dict_code, parent_code, parent_codes, tree_sort, tree_sorts, tree_leaf, tree_level, tree_names, dict_label, dict_value, dict_type, is_sys, description, css_style, css_class, status, create_by, create_date, update_by, update_date, remarks, corp_code, corp_name, extend_s1, extend_s2, extend_s3, extend_s4, extend_s5, extend_s6, extend_s7, extend_s8, extend_i1, extend_i2, extend_i3, extend_i4, extend_f1, extend_f2, extend_f3, extend_f4, extend_d1, extend_d2, extend_d3, extend_d4) +VALUES ('1126375062364020736', '0', '0,', 60, '0000000060,', '1', 0, '日本語', '日本語', 'ja_JP', 'sys_lang_type', '1', '', '', '', '0', 'system', now(), 'system', now(), '', '0', 'JeeSite', '', '', '', '', '', '', '', '', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); diff --git a/modules/core/src/main/resources/db/upgrade/core/versions b/modules/core/src/main/resources/db/upgrade/core/versions index a33d2623..095e8c03 100644 --- a/modules/core/src/main/resources/db/upgrade/core/versions +++ b/modules/core/src/main/resources/db/upgrade/core/versions @@ -10,4 +10,5 @@ 4.1.1 4.1.2 4.1.3 -4.1.4 \ No newline at end of file +4.1.4 +4.1.5 \ No newline at end of file diff --git a/modules/core/src/main/resources/i18n/core/common/i18n_en.properties b/modules/core/src/main/resources/i18n/core/common/i18n_en.properties index df92d158..884e8765 100644 --- a/modules/core/src/main/resources/i18n/core/common/i18n_en.properties +++ b/modules/core/src/main/resources/i18n/core/common/i18n_en.properties @@ -15,6 +15,7 @@ sys.login.accountDisabled=This Account has disabled. sys.login.accountFreezed=This Account has freezed. sys.login.accountAudited=This Account has audited. sys.login.accountInvalid=This Account has invalid. +sys.login.tickOutMessage=The account has been removed by the administrator. Please login again. sys.login.multiAddrMessage=The account has been logged in elsewhere. Please login again. sys.login.failedNumLock=Login failed, try too many times, the account has been locked, please {0} in minutes after retry. diff --git a/modules/core/src/main/resources/i18n/core/common/i18n_ja_JP.properties b/modules/core/src/main/resources/i18n/core/common/i18n_ja_JP.properties new file mode 100644 index 00000000..c6d00a9c --- /dev/null +++ b/modules/core/src/main/resources/i18n/core/common/i18n_ja_JP.properties @@ -0,0 +1,74 @@ + +# =========== 登录登出相关 =========== + +sys.login.notLongIn=ログインしていないか、またはログインがタイムアウトしました。もう一度ログインしてください +sys.login.success=ログイン成功! +sys.login.getInfo=情報取得成功! +sys.login.failure=ログインID或いはパスワードに誤りがあります。もう一度にゅうしてください。 +sys.login.error=申し訳ございません。ただいまシステムへアクセスできません。しばらくお待ちしてから再度お試してください! +sys.logout.success=ログアウト成功! + +# =========== 账号登录相关 =========== + +sys.login.accountIsBlank=ログインIDを入力してください。 +sys.login.validCodeError=確認コードに誤りがあります。 +sys.login.accountDisabled=このアカウントは無効されています。 +sys.login.accountFreezed=このアカウントは凍結されています。 +sys.login.accountAudited=このアカウントは審査中です。 +sys.login.accountInvalid=このアカウントは存在しません。 +sys.login.tickOutMessage=アカウントは管理者によってオンラインから削除されました。もう一度ログインしてください。 +sys.login.multiAddrMessage=アカウントは他の場所でログインしています。もう一度ログインしてください。 +sys.login.failedNumLock=ログインに失敗しました。試行回数が多すぎます。アカウントがロックされています。{0}分後にもう一度お試しください。 + +# =========== 用户管理相关 =========== + +sys.user.loginCodeExists=ログインアカウントは既に存在します +sys.user.userCodeNotExists=ログインコードが存在しません +sys.user.userNameNotBlank=ユーザー名を入力してください +sys.user.infoSaveSuccess=ユーザー情報保存成功 + +# =========== 用户密码安全策略 =========== + +sys.user.oldPasswordError=旧パスワードが間違っています。再入力してください +sys.user.confirmPasswrodError=新パスワードは新パスワード確認とは異なります。再入力してください +sys.user.passwordModifySuccess=パスワード変更に成功 +sys.user.passwordModifyNotRepeat=新パスワードを以前の{0}回以内の設定記録と同じにすることはできません。 +sys.user.passwordModifySecurityLevel=設定したパスワードが弱いパスワードであるため、パスワードの更新に失敗しました。 +sys.user.initPasswordModifyTip=パスワードはまだ初期パスワードです、パスワードを変更してください +sys.user.passwordModifyTip=パスワードは{0}日間変更されていません。パスワードを変更してください。 +sys.user.passwordError=ログインパスワードが正しくありません。再入力してください +sys.user.pwdQuestionModifySuccess=合言葉変更成功 +sys.user.pwdQuestionAnswerError=合言葉違います + +# =========== 错误页面相关 =========== + +sys.error.400.title=リクエストパラメーターに誤りがあります +sys.error.400.message=リクエストパラメーターに誤りがあります。このパラメーターの解析ができません。 +sys.error.403.title=権限がありません +sys.error.403.message=該当操作の権限がありません! +sys.error.403.message.p1=申し訳ございません。このページのアクセス権限がありません。適当ではない場合システム管理者へ連絡してください。 +sys.error.404.title=ページが存在しません +sys.error.404.message=アクセスしたページは存在しません! +sys.error.404.message.p1=このエラーは次のような理由で発生する可能性があります: +sys.error.404.message.p2=アドレスURLが正しく入力されておらず、リンクの有効期限が切れています。 +sys.error.404.message.p3=アクセスしているアドレスURLは: +sys.error.404.message.p4=質問がある場合は、管理者に連絡してください。. +sys.error.500.title=システム内部エラー +sys.error.500.message=アクセスしたページは問題が発生しました! +sys.error.500.message.p1=申し訳ございません。アクセスしたページは問題が発生しました,システム管理者へ連絡してください。 +sys.error.returnButton=前のページに戻る + +# =========== 文件上传相关 =========== + +sys.file.uploadFileIsEmpty=サーバーに該当ファイルはありません。 +sys.file.uploadValidNotBlank=ファイル検証番号とファイル名を入力してください。 +sys.file.uploadValidImage=画像のみアップロードできます({0}) +sys.file.uploadValidVideo=動画のみアップロードできます({0}) +sys.file.uploadValidFile=文書のみをアップロードできます({0}) +sys.file.uploadValidAll=フォーマットが正しくありません({0}) +sys.file.uploadValidSize=サイズは{0}を超過できません +sys.file.uploadValidContent=ファイルコンテンツフォーマットは許可されていません。 +sys.file.uploadSuccessSeconds=セカンドアップロード成功,時間{0} +sys.file.uploadSuccess=アップロード成功,時間{0} +sys.file.downloadFileNotExist=ファイルが存在しません! +sys.file.chunkUploading=アップロード中 {0}/{1} diff --git a/modules/core/src/main/resources/i18n/core/common_view/i18n_en.properties b/modules/core/src/main/resources/i18n/core/common_view/i18n_en.properties index cc9e60c2..7b968981 100644 --- a/modules/core/src/main/resources/i18n/core/common_view/i18n_en.properties +++ b/modules/core/src/main/resources/i18n/core/common_view/i18n_en.properties @@ -1,8 +1,6 @@ # =========== common =========== -英语=English - 保\ 存=Save 关\ 闭=Close 确定=Ok diff --git a/modules/core/src/main/resources/i18n/core/common_view/i18n_ja_JP.properties b/modules/core/src/main/resources/i18n/core/common_view/i18n_ja_JP.properties new file mode 100644 index 00000000..fb62bcf0 --- /dev/null +++ b/modules/core/src/main/resources/i18n/core/common_view/i18n_ja_JP.properties @@ -0,0 +1,81 @@ + +# =========== common =========== + +保\ 存=保存 +关\ 闭=閉じる +确定=はい +清除=クリア +关闭=閉じる +查询=検索 +重置=リセット +新增=作成 +增行=行作成 +刷新=リフレッシュ +查看=詳細 +展开=展開 +展开一级=一階層展開 +折叠=収束 +折叠全部=全部収束 +操作=操作 +更多操作=他の操作 + +基本信息=基本情報 +详细信息=詳細情報 +扩展字段=拡張項目 + +# =========== imageclip =========== + +图片裁剪=画像編集 +选择图片=画像選択 +放大=拡大 +缩小=縮小 +向左移动=左へ移動 +向右移动=右へ移動 +向上移动=上へ移動 +向下移动=下へ移動 +逆时针旋转=左回り +顺时针旋转=右回り +水平反转=水平反転 +左右反转=左右反転 + +# =========== treeselect =========== + +选项选择=オプション選択 +显示搜索=フィルター表示 +隐藏搜索=フィルター非表示 +关键字=キーワード +搜索=検索 +展开=開く +折叠=隠す +不能选择根节点=ルート要素の選択ができません +不能选择父节点=親要素の選択ができません +请重新选择=もう一度選択してください + +# =========== fileupload =========== + +文件=ファイル +文档=ドキュメント +图片=画像 +音频或视频=音声 or 動画 +请上传=アップロード +开始上传=アップロード +或将照片拖到这里,最多可选\ {0}\ 张=画像をここにドラッグしてください、最大 \ {0} \ 枚可能 +或将文件拖到这里,最多可选\ {0}\ 个=ファイルをここにドラッグしてください、最大 \ {0} \ 個可能 + +# =========== iconselect =========== + +图标选择=アイコン選択 +提示:双击选择图标。=ツールチープ: ダブルクリックでアイオンの選択ができます. + +# =========== ueditor =========== + +目录标题=ディレクトリタイトル +暂无大纲标题=アウトラインのタイトルはまだありません + +# =========== validcode =========== + +验证码=検証コード +请填写验证码=検証コードを入力してください +验证码不正确.=検証コードが正しくありません +看不清,点击图片刷新=はっきり見えない場合、画像更新をクリックしてリフレッシュできます. + diff --git a/modules/core/src/main/resources/i18n/core/sys/i18n_ja_JP.properties b/modules/core/src/main/resources/i18n/core/sys/i18n_ja_JP.properties new file mode 100644 index 00000000..a55ea1c5 --- /dev/null +++ b/modules/core/src/main/resources/i18n/core/sys/i18n_ja_JP.properties @@ -0,0 +1,254 @@ +# =========== 通用字典 =========== + +是=はい +否=いいえ +男=男 +女=女 +正常=正常 +删除=削除 +停用=無効 +冻结=凍結 +待审=診察 +驳回=却下 +草稿=草稿 + +# =========== 通用字段 =========== + +状态=状態 +备注信息=備考 +创建者=作成者 +创建时间=作成日時 +更新者=更新者 +更新时间=更新日時 +排序号=ソート + +# =========== 功能标题 =========== + +系统管理=システム管理 +组织管理=組織管理 +用户管理=ユーザー管理 +机构管理=機構管理 +公司管理=会社管理 +岗位管理=職位管理 + +用户选择=ユーザー選択 +机构选择=事務所選択 +公司选择=会社選択 +区域选择=区域選択 +日期选择=日付選択 +日期时间=日時 + +# =========== 登录页 =========== + +登录=ログイン + +请填写登录账号.=ログインIDを入力してください. +登录账号=ログインアカウント + +登录密码,鼠标按下显示密码=押下するとパスワードを表示します. +请填写登录密码.=パスワードを入力してください. +登录密码=パスワード + +公共场所慎用,下次不需要再填写帐号=次回からログインIDの入力が不要にします. +记住账号=ログインID記憶 +公共场所慎用,下次不需要再填写帐号和密码=次回からパスワードの入力が不要にします. +自动登录=パスワード記憶 + +登录验证成功,正在进入...=ログイン中、少々お待ちください... +正在验证登录,请稍候...=登録を行っています... +立即登录=ログイン + +注册账号=アカウント作成 +忘记密码=パスワードを忘れた + +# =========== 主框架页 =========== + +仪表盘=計器盤 +全屏=最大化 +切换主题=テーマ切替 + +个人中心=マイページ +修改密码=パスワード変更 +退出登录=ログアウト +系统切换=システム切替 +当前租户=当面テナント +租户切换=テナント切り替え +在线人员=オンラインスタッフ + +在线=オンライン +注销=ログアウト + +# =========== 消息提醒 =========== + +消息=メッセージ +你有=見読 +条消息=件メッセージ +查看全部消息=全部見る +查看消息=開く +系统消息=システムメッセージ +您有\ {0}\ 条新消息,由于消息太多,这里为您合并,请点击查看按钮看详情。=見読メッセージ {0} 件, 省略で表示しているため, クリックで一覧を見る. + +# =========== 个人中心 =========== + +修改密保=セキュリティ変更 +个人信息=個人情報 + +修改头像=アバター変更 + +个性签名=署名 +上次登录=前回ログイン +时间=時間 +首次登录=初めてログイン + +旧密码=旧パスワード +新密码=新パスワード +确认新密码=新パスワード確認 + +您还未设置过密保问题,您可以根据登录密码设置新的密保问题及答案。=セキュリティ合言葉が設定されていません。ログイン後新しいセキュリティ合言葉を設定してください。. +旧的密保问题及答案=古いセキュリティ合言葉 +旧密保问题=古いセキュリティ合言葉の質問 +旧密保问题答案=古いセキュリティ合言葉の答え +新的密保问题及答案=新しいセキュリティ合言葉 +新密保问题=新しいセキュリティ合言葉の質問 +新密保问题答案=新しいセキュリティ合言葉の答え + +# =========== 用户管理 =========== + +组织机构=機構 +新增用户=ユーザー作成 +编辑用户=ユーザー編集 +导出=導入 +导入=を導く + +停用用户=ユーザー無効 +确认要停用该用户吗?=このユーザーを無効にしてもよろしいですか? +启用用户=ユーザー有効 +确认要启用该用户吗?=このユーザーを有効にしてもよろしいですか? +删除用户=ユーザー削除 +确认要删除该用户吗?=このユーザーを削除してもよろしいですか? +用户分配角色=ユーザーロール設定 +分配角色=ロール設定 +用户分配数据权限=ユーザーデータ権限設定 +数据权限=データ権限 +用户密码重置=パスワードリセット +确认要将该用户密码重置到初始状态吗?=ユーザーのログインパスワードをリセットします。よろしいですか? +重置密码=パスワードリセット + +保存用户失败,登录账号''{0}''已存在=ユーザーの保存に失敗しました。ログインアカウント '' {0} ''は既に存在します +保存用户''{0}''成功=ユーザー ''{0}'' 保存成功 +停用用户失败,不允许停用当前用户=ユーザー無効に更新する処理失敗。このユーザーは無効にすることできません +停用用户''{0}''成功=ユーザー ''{0}'' 無効設定成功 +启用用户''{0}''成功=ユーザー ''{0}'' 有効設定成功 +重置用户''{0}''密码成功=ユーザー ''{0}'' のパスワードを初期化成功しました +删除用户失败,不允许删除当前用户=ユーザー削除失敗. このユーザーを削除することができません +删除用户''{0}''成功=ユーザー ''{0}'' 削除成功 +用户分配数据权限成功=ユーザーデータ権限設定成功 + +账号=アカウント +昵称=ニックネーム +邮箱=メール +手机=携帯 +电话=電話 +姓名=氏名 +机构=機構 +公司=会社 +岗位=職位 + +归属机构=所属機構 +归属公司=所属会社 +登录账号=アカウント +登录账号已存在=ログインアカウントがすでに存在します +用户昵称=ニックネーム +电子邮箱=メール +手机号码=携帯電話 +办公电话=会社電話 +权重(排序)=レベル(ソート) +权重越大排名越靠前,请填写数字。=重要度が大きいほど前に表示します。数字を入力してください. + +员工编号=社員コード +员工姓名=氏名 +所在岗位=所属職位 +英文名=英語氏名 + +附属机构=付属機構 +附属岗位=付属職位 + +角色名称=ロール名称 +角色编码=ロールコード + +# =========== 機構管理 =========== + +新增机构=機構追加 +编辑机构=機構編集 + +停用机构=機構無効にする +确认要停用该机构吗?=機構無効にします、よろしいですか? +启用机构=機構有効にする +确认要启用该机构吗?=機構有効にします、よろしいですか? +删除机构=機構削除 +确认要删除该机构及所有子机构吗?=機構及び子機構を削除します、よろしいですか? +新增下级机构=子機構追加 + +保存机构''{0}''成功=機構 ''{0}'' 保存成功 +该机构包含未停用的子机构!=有効な子機構が含まれています! +停用机构''{0}''成功=機構 ''{0}'' 無効にする処理成功 +启用机构''{0}''成功=機構 ''{0}'' 有効にする処理成功 +删除机构''{0}''成功=機構 ''{0}'' 削除成功 + +上级机构=親機構 +机构名称=機構名称 +机构代码=機構コード +机构全称=機構フルネーム +机构类型=機構タイプ +负责人=責任者 +联系地址=住所 +邮政编码=郵便番号 + +# =========== 公司管理 =========== + +新增公司=会社追加 +编辑公司=会社編集 + +停用公司=会社無効にする +确认要停用该公司吗?=会社無効にします、よろしいですか? +启用公司=会社有効にする +确认要启用该公司吗?=会社有効にします、よろしいですか? +删除公司=会社削除 +确认要删除该公司及所有子公司吗?=会社及び子会社を削除します、よろしいですか? +新增下级公司=子会社追加 + +保存公司''{0}''成功=会社 ''{0}'' 保存成功 +该公司包含未停用的子公司!=有効な会社が含まれています! +停用公司''{0}''成功=会社 ''{0}'' 無効設定成功 +启用公司''{0}''成功=会社 ''{0}'' 有効設定成功 +删除公司''{0}''成功=会社 ''{0}'' 削除成功 + +上级公司=親会社 +公司名称=会社名称 +公司编码=会社コード +公司全称=会社フルネーム +归属区域=エリア +包含机构=機構 + +# =========== 岗位管理 =========== + +新增岗位=職位追加 +编辑岗位=職位編集 + +停用岗位=職位無効にする +确认要停用该岗位吗?=職位無効にします、よろしいですか? +启用岗位=職位有効にする +确认要启用该岗位吗?=職位有効にします、よろしいですか? +删除岗位=職位削除 +确认要删除该岗位吗?=職位を削除します、よろしいですか? + +保存岗位失败,岗位名称''{0}''已存在=職位保存失敗。職位名称 ''{0}'' 既に存在します +保存岗位''{0}''成功=職位 ''{0}'' 保存成功 +停用岗位''{0}''成功=職位 ''{0}'' 無効設定成功 +启用岗位''{0}''成功=職位 ''{0}'' 有効設定成功 +删除岗位''{0}''成功=職位 ''{0}'' 削除成功 + +岗位名称=職位名称 +岗位名称已存在=職位名称が既に存在します +岗位编码=職位コード +岗位分类=職位分類 diff --git a/modules/core/src/main/resources/static/common/i18n/jeesite_en.js b/modules/core/src/main/resources/static/common/i18n/jeesite_en.js index 14aa08e4..9ba1962b 100644 --- a/modules/core/src/main/resources/static/common/i18n/jeesite_en.js +++ b/modules/core/src/main/resources/static/common/i18n/jeesite_en.js @@ -6,13 +6,26 @@ * @version 2017-12-24 */ (function($) { -window.js = window.js || {}; -js.i18n = $.extend({}, js.i18n, { - 'tabpanel.newTabPage':'New Page', - 'loading.message':'Loading ...', - 'loading.submitMessage':'Submission ...', - 'showMessage.error':'failure,error', - 'showMessage.success':'success,completion', - 'showMessage.warning':'no' -}); + window.js = window.js || {}; + js.i18n = $.extend({}, js.i18n, { + 'tabpanel.newTabPage':'New Page', + 'loading.message':'Loading ...', + 'loading.submitMessage':'Submission ...', + 'showMessage.error':'failure,error', + 'showMessage.success':'success,completion', + 'showMessage.warning':'no' + }); + // ============ layer ============ + window.layer = window.layer || {}; + layer.i18n = $.extend({}, layer.i18n, { + btnOk: 'Ok', + btnCancel: 'Cancle', + title: 'Information', + promptTipA: 'Enter ', + promptTipB: 'character at most.', + noPicture: 'No picture', + photoError: 'Current image address error.
Next slide?', + photoNextPage: 'The next', + photoClose: 'Close' + }); })(jQuery); diff --git a/modules/core/src/main/resources/static/common/i18n/jeesite_ja_JP.js b/modules/core/src/main/resources/static/common/i18n/jeesite_ja_JP.js new file mode 100644 index 00000000..cdc8f3cf --- /dev/null +++ b/modules/core/src/main/resources/static/common/i18n/jeesite_ja_JP.js @@ -0,0 +1,31 @@ +/*! + * Copyright (c) 2013-Now http://jeesite.com All rights reserved. + * + * 国际化文件 + * @author ThinkGem + * @version 2017-12-24 + */ +(function($) { + window.js = window.js || {}; + js.i18n = $.extend({}, js.i18n, { + 'tabpanel.newTabPage':'新タブ', + 'loading.message':'ローディング...お待ちください...', + 'loading.submitMessage':'送信中...お待ちください...', + 'showMessage.error':'失敗,エラー,未完了', + 'showMessage.success':'成功,完了', + 'showMessage.warning':'不可,不許可,必須,既に存在,不要,不正確' + }); + // ============ layer ============ + window.layer = window.layer || {}; + layer.i18n = $.extend({}, layer.i18n, { + btnOk: '確定', + btnCancel: 'キャンセル', + title: 'メッセージ', + promptTipA: '最大入力', + promptTipB: '個文字', + noPicture: '画像が存在しません', + photoError: 'この画像が表示できません
次の画像へ遷移しますか?', + photoNextPage: '次へ', + photoClose: '閉じる' + }); +})(jQuery); diff --git a/modules/core/src/main/resources/static/common/i18n/jeesite_zh_CN.js b/modules/core/src/main/resources/static/common/i18n/jeesite_zh_CN.js index 7146c6f4..bb3b9ca4 100644 --- a/modules/core/src/main/resources/static/common/i18n/jeesite_zh_CN.js +++ b/modules/core/src/main/resources/static/common/i18n/jeesite_zh_CN.js @@ -6,13 +6,13 @@ * @version 2017-12-24 */ (function($) { -window.js = window.js || {}; -js.i18n = $.extend({}, js.i18n, { - 'tabpanel.newTabPage':'新页签', - 'loading.message':'正在加载,请稍后...', - 'loading.submitMessage':'正在提交,请稍后...', - 'showMessage.error':'失败,错误,未完成', - 'showMessage.success':'成功,完成', - 'showMessage.warning':'不能,不允许,必须,已存在,不需要,不正确' -}); + window.js = window.js || {}; + js.i18n = $.extend({}, js.i18n, { + 'tabpanel.newTabPage':'新页签', + 'loading.message':'正在加载,请稍后...', + 'loading.submitMessage':'正在提交,请稍后...', + 'showMessage.error':'失败,错误,未完成', + 'showMessage.success':'成功,完成', + 'showMessage.warning':'不能,不允许,必须,已存在,不需要,不正确' + }); })(jQuery); diff --git a/modules/core/src/main/resources/static/jqGrid/4.7/js/i18n/ja_JP.js b/modules/core/src/main/resources/static/jqGrid/4.7/js/i18n/ja_JP.js new file mode 100644 index 00000000..15165f55 --- /dev/null +++ b/modules/core/src/main/resources/static/jqGrid/4.7/js/i18n/ja_JP.js @@ -0,0 +1,137 @@ +;(function($){ +/** + * jqGrid Japanese Translation + * OKADA Yoshitada okada.dev@sth.jp + * http://trirand.com/blog/ + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html +**/ +$.jgrid = $.jgrid || {}; +$.extend($.jgrid,{ + extend : { + btnSearch: '検索', + btnHideSearch: '隠匿', + expandTooMany: '今回は“{0}”のノードを展開しなければならない。展開ノードが多すぎるため、キャンセルが実行される。', + pageTitle: '数字をクリックすると、ページ番号とページ数を入力して、リターンカーを押して有効になります。!', + pageLabelA: '現在の', + pageLabelB: 'ページは,各ページ', + pageLabelC: '枚,全部 で{0} つ', + }, + defaults : { + recordtext: "View {0} - {1} of {2}", + emptyrecords: "No records to view", + loadtext: "\u8aad\u307f\u8fbc\u307f\u4e2d...", + pgtext : "Page {0} of {1}" + }, + search : { + caption: "\u691c\u7d22...", + Find: "\u691c\u7d22", + Reset: "\u30ea\u30bb\u30c3\u30c8", + odata : ['equal', 'not equal', 'less', 'less or equal','greater','greater or equal', 'begins with','does not begin with','is in','is not in','ends with','does not end with','contains','does not contain'], + groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ], + matchText: " match", + rulesText: " rules" + }, + edit : { + addCaption: "\u30ec\u30b3\u30fc\u30c9\u8ffd\u52a0", + editCaption: "\u30ec\u30b3\u30fc\u30c9\u7de8\u96c6", + bSubmit: "\u9001\u4fe1", + bCancel: "\u30ad\u30e3\u30f3\u30bb\u30eb", + bClose: "\u9589\u3058\u308b", + saveData: "Data has been changed! Save changes?", + bYes : "Yes", + bNo : "No", + bExit : "Cancel", + msg: { + required:"\u3053\u306e\u9805\u76ee\u306f\u5fc5\u9808\u3067\u3059\u3002", + number:"\u6b63\u3057\u3044\u6570\u5024\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002", + minValue:"\u6b21\u306e\u5024\u4ee5\u4e0a\u3067\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002", + maxValue:"\u6b21\u306e\u5024\u4ee5\u4e0b\u3067\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002", + email: "e-mail\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093\u3002", + integer: "\u6b63\u3057\u3044\u6574\u6570\u5024\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002", + date: "\u6b63\u3057\u3044\u5024\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002", + url: "is not a valid URL. Prefix required ('http://' or 'https://')", + nodefined : " is not defined!", + novalue : " return value is required!", + customarray : "Custom function should return array!", + customfcheck : "Custom function should be present in case of custom checking!" + } + }, + view : { + caption: "View Record", + bClose: "Close" + }, + del : { + caption: "\u524a\u9664", + msg: "\u9078\u629e\u3057\u305f\u30ec\u30b3\u30fc\u30c9\u3092\u524a\u9664\u3057\u307e\u3059\u304b\uff1f", + bSubmit: "\u524a\u9664", + bCancel: "\u30ad\u30e3\u30f3\u30bb\u30eb" + }, + nav : { + edittext: " ", + edittitle: "\u9078\u629e\u3057\u305f\u884c\u3092\u7de8\u96c6", + addtext:" ", + addtitle: "\u884c\u3092\u65b0\u898f\u8ffd\u52a0", + deltext: " ", + deltitle: "\u9078\u629e\u3057\u305f\u884c\u3092\u524a\u9664", + searchtext: " ", + searchtitle: "\u30ec\u30b3\u30fc\u30c9\u691c\u7d22", + refreshtext: "", + refreshtitle: "\u30b0\u30ea\u30c3\u30c9\u3092\u30ea\u30ed\u30fc\u30c9", + alertcap: "\u8b66\u544a", + alerttext: "\u884c\u3092\u9078\u629e\u3057\u3066\u4e0b\u3055\u3044\u3002", + viewtext: "", + viewtitle: "View selected row" + }, + col : { + caption: "\u5217\u3092\u8868\u793a\uff0f\u96a0\u3059", + bSubmit: "\u9001\u4fe1", + bCancel: "\u30ad\u30e3\u30f3\u30bb\u30eb" + }, + errors : { + errcap : "\u30a8\u30e9\u30fc", + nourl : "URL\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002", + norecords: "\u51e6\u7406\u5bfe\u8c61\u306e\u30ec\u30b3\u30fc\u30c9\u304c\u3042\u308a\u307e\u305b\u3093\u3002", + model : "colNames\u306e\u9577\u3055\u304ccolModel\u3068\u4e00\u81f4\u3057\u307e\u305b\u3093\u3002" + }, + formatter : { + integer : {thousandsSeparator: " ", defaultValue: '0'}, + number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'}, + currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'}, + date : { + dayNames: [ + "\u65e5", "\u6708", "\u706b", "\u6c34", "\u6728", "\u91d1", "\u571f", + "\u65e5", "\u6708", "\u706b", "\u6c34", "\u6728", "\u91d1", "\u571f" + ], + monthNames: [ + "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", + "1\u6708", "2\u6708", "3\u6708", "4\u6708", "5\u6708", "6\u6708", "7\u6708", "8\u6708", "9\u6708", "10\u6708", "11\u6708", "12\u6708" + ], + AmPm : ["am","pm","AM","PM"], + S: "\u756a\u76ee", + srcformat: 'Y-m-d', + newformat: 'd/m/Y', + masks : { + ISO8601Long:"Y-m-d H:i:s", + ISO8601Short:"Y-m-d", + ShortDate: "n/j/Y", + LongDate: "l, F d, Y", + FullDateTime: "l, F d, Y g:i:s A", + MonthDay: "F d", + ShortTime: "g:i A", + LongTime: "g:i:s A", + SortableDateTime: "Y-m-d\\TH:i:s", + UniversalSortableDateTime: "Y-m-d H:i:sO", + YearMonth: "F, Y" + }, + reformatAfterEdit : false + }, + baseLinkUrl: '', + showAction: '', + target: '', + checkbox : {disabled:true}, + idName : 'id' + } +}); +})(jQuery); diff --git a/modules/core/src/main/resources/static/jquery-plugins/jquery.strength_i18n.js b/modules/core/src/main/resources/static/jquery-plugins/jquery.strength_i18n.js new file mode 100644 index 00000000..9ae61aeb --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-plugins/jquery.strength_i18n.js @@ -0,0 +1,26 @@ +(function($) { + + $.fn.strength = $.fn.strength || {}; + if (window.lang == 'en'){ + $.extend(true, $.fn.strength.defaults, { + strengthTipText: 'Password no less than 8 bits in length, and included, upper case letters, lower case letters, Numbers and symbols.', + strengthButtonText: 'Click to display the password.', + strengthButtonTextToggle: 'Click the hidden password.', + veryweakText: 'Password is too weak!', + weakText: 'Password is weak!', + mediumText: 'Password is safer!', + strongText: 'Password is very strong and safe!' + }); + } else if (window.lang == 'ja_JP'){ + $.extend(true, $.fn.strength.defaults, { + strengthTipText: 'パスワードは长さが8ビット以内で、その中には、上のケース、下のケース、数字、記号があります。', + strengthButtonText: 'クリックしてパスワードを表示します。', + strengthButtonTextToggle: '隠れパスワードをクリックします。', + veryweakText: 'パスワードが弱すぎる!', + weakText: '体の弱いパスワードは', + mediumText: 'パスワードは!平和な', + strongText: 'パスワードは丈夫で安全です!' + }); + } + +})(jQuery); diff --git a/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.en.js b/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.en.js new file mode 100644 index 00000000..8ca50aff --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.en.js @@ -0,0 +1,30 @@ +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['jquery'], factory); + } else if (typeof module === 'object' && typeof module.exports === 'object') { + factory(require('jquery')); + } else { + factory(jQuery); + } +}(function (jQuery) { + // English (Template) + jQuery.timeago.settings.strings = { + prefixAgo: null, + prefixFromNow: null, + suffixAgo: "ago", + suffixFromNow: "from now", + seconds: "less than a minute", + minute: "about a minute", + minutes: "%d minutes", + hour: "about an hour", + hours: "about %d hours", + day: "a day", + days: "%d days", + month: "about a month", + months: "%d months", + year: "about a year", + years: "%d years", + wordSeparator: " ", + numbers: [] + }; +})); diff --git a/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.ja_JP.js b/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.ja_JP.js new file mode 100644 index 00000000..ddb7b029 --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.ja_JP.js @@ -0,0 +1,29 @@ +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['jquery'], factory); + } else if (typeof module === 'object' && typeof module.exports === 'object') { + factory(require('jquery')); + } else { + factory(jQuery); + } +}(function (jQuery) { + // Japanese + jQuery.timeago.settings.strings = { + prefixAgo: "", + prefixFromNow: "今から", + suffixAgo: "前", + suffixFromNow: "後", + seconds: "1 分未満", + minute: "約 1 分", + minutes: "%d 分", + hour: "約 1 時間", + hours: "約 %d 時間", + day: "約 1 日", + days: "約 %d 日", + month: "約 1 ヶ月", + months: "約 %d ヶ月", + year: "約 1 年", + years: "約 %d 年", + wordSeparator: "" + }; +})); \ No newline at end of file diff --git a/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.zh_CN.js b/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.zh_CN.js new file mode 100644 index 00000000..c21a2874 --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.zh_CN.js @@ -0,0 +1,31 @@ +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['jquery'], factory); + } else if (typeof module === 'object' && typeof module.exports === 'object') { + factory(require('jquery')); + } else { + factory(jQuery); + } +}(function (jQuery) { + // Simplified Chinese + jQuery.timeago.settings.strings = { + prefixAgo: null, + prefixFromNow: null, + suffixAgo: "之前", + suffixFromNow: "之后", + seconds: "不到1分钟", + minute: "大约1分钟", + minutes: "%d分钟", + hour: "大约1小时", + hours: "大约%d小时", + day: "1天", + days: "%d天", + month: "大约1个月", + months: "%d月", + year: "大约1年", + years: "%d年", + numbers: [], + wordSeparator: "" + }; +})); + diff --git a/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.zh_TW.js b/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.zh_TW.js new file mode 100644 index 00000000..15f56269 --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-timeago/i18n/jquery.timeago.zh_TW.js @@ -0,0 +1,30 @@ +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['jquery'], factory); + } else if (typeof module === 'object' && typeof module.exports === 'object') { + factory(require('jquery')); + } else { + factory(jQuery); + } +}(function (jQuery) { + // Traditional Chinese, zh-tw + jQuery.timeago.settings.strings = { + prefixAgo: null, + prefixFromNow: null, + suffixAgo: "之前", + suffixFromNow: "之後", + seconds: "不到1分鐘", + minute: "大約1分鐘", + minutes: "%d分鐘", + hour: "大約1小時", + hours: "%d小時", + day: "大約1天", + days: "%d天", + month: "大約1個月", + months: "%d個月", + year: "大約1年", + years: "%d年", + numbers: [], + wordSeparator: "" + }; +})); diff --git a/modules/core/src/main/resources/static/jquery-timeago/jquery.timeago.js b/modules/core/src/main/resources/static/jquery-timeago/jquery.timeago.js new file mode 100644 index 00000000..5fcfa1bb --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-timeago/jquery.timeago.js @@ -0,0 +1,232 @@ +/** + * Timeago is a jQuery plugin that makes it easy to support automatically + * updating fuzzy timestamps (e.g. "4 minutes ago" or "about 1 day ago"). + * + * @name timeago + * @version 1.6.3 + * @requires jQuery v1.2.3+ + * @author Ryan McGeary + * @license MIT License - http://www.opensource.org/licenses/mit-license.php + * + * For usage and examples, visit: + * http://timeago.yarp.com/ + * + * Copyright (c) 2008-2017, Ryan McGeary (ryan -[at]- mcgeary [*dot*] org) + */ + +(function (factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(['jquery'], factory); + } else if (typeof module === 'object' && typeof module.exports === 'object') { + factory(require('jquery')); + } else { + // Browser globals + factory(jQuery); + } +}(function ($) { + $.timeago = function(timestamp) { + if (timestamp instanceof Date) { + return inWords(timestamp); + } else if (typeof timestamp === "string") { + return inWords($.timeago.parse(timestamp)); + } else if (typeof timestamp === "number") { + return inWords(new Date(timestamp)); + } else { + return inWords($.timeago.datetime(timestamp)); + } + }; + var $t = $.timeago; + + $.extend($.timeago, { + settings: { + refreshMillis: 60000, + allowPast: true, + allowFuture: false, + localeTitle: false, + cutoff: 0, + autoDispose: true, + strings: { + prefixAgo: null, + prefixFromNow: null, + suffixAgo: "ago", + suffixFromNow: "from now", + inPast: 'any moment now', + seconds: "less than a minute", + minute: "about a minute", + minutes: "%d minutes", + hour: "about an hour", + hours: "about %d hours", + day: "a day", + days: "%d days", + month: "about a month", + months: "%d months", + year: "about a year", + years: "%d years", + wordSeparator: " ", + numbers: [] + } + }, + + inWords: function(distanceMillis) { + if (!this.settings.allowPast && ! this.settings.allowFuture) { + throw 'timeago allowPast and allowFuture settings can not both be set to false.'; + } + + var $l = this.settings.strings; + var prefix = $l.prefixAgo; + var suffix = $l.suffixAgo; + if (this.settings.allowFuture) { + if (distanceMillis < 0) { + prefix = $l.prefixFromNow; + suffix = $l.suffixFromNow; + } + } + + if (!this.settings.allowPast && distanceMillis >= 0) { + return this.settings.strings.inPast; + } + + var seconds = Math.abs(distanceMillis) / 1000; + var minutes = seconds / 60; + var hours = minutes / 60; + var days = hours / 24; + var years = days / 365; + + function substitute(stringOrFunction, number) { + var string = $.isFunction(stringOrFunction) ? stringOrFunction(number, distanceMillis) : stringOrFunction; + var value = ($l.numbers && $l.numbers[number]) || number; + return string.replace(/%d/i, value); + } + + var words = seconds < 45 && substitute($l.seconds, Math.round(seconds)) || + seconds < 90 && substitute($l.minute, 1) || + minutes < 45 && substitute($l.minutes, Math.round(minutes)) || + minutes < 90 && substitute($l.hour, 1) || + hours < 24 && substitute($l.hours, Math.round(hours)) || + hours < 42 && substitute($l.day, 1) || + days < 30 && substitute($l.days, Math.round(days)) || + days < 45 && substitute($l.month, 1) || + days < 365 && substitute($l.months, Math.round(days / 30)) || + years < 1.5 && substitute($l.year, 1) || + substitute($l.years, Math.round(years)); + + var separator = $l.wordSeparator || ""; + if ($l.wordSeparator === undefined) { separator = " "; } + return $.trim([prefix, words, suffix].join(separator)); + }, + + parse: function(iso8601) { + var s = $.trim(iso8601); + s = s.replace(/\.\d+/,""); // remove milliseconds + s = s.replace(/-/,"/").replace(/-/,"/"); + s = s.replace(/T/," ").replace(/Z/," UTC"); + s = s.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"); // -04:00 -> -0400 + s = s.replace(/([\+\-]\d\d)$/," $100"); // +09 -> +0900 + return new Date(s); + }, + datetime: function(elem) { + var iso8601 = $t.isTime(elem) ? $(elem).attr("datetime") : $(elem).attr("title"); + return $t.parse(iso8601); + }, + isTime: function(elem) { + // jQuery's `is()` doesn't play well with HTML5 in IE + return $(elem).get(0).tagName.toLowerCase() === "time"; // $(elem).is("time"); + } + }); + + // functions that can be called via $(el).timeago('action') + // init is default when no action is given + // functions are called with context of a single element + var functions = { + init: function() { + functions.dispose.call(this); + var refresh_el = $.proxy(refresh, this); + refresh_el(); + var $s = $t.settings; + if ($s.refreshMillis > 0) { + this._timeagoInterval = setInterval(refresh_el, $s.refreshMillis); + } + }, + update: function(timestamp) { + var date = (timestamp instanceof Date) ? timestamp : $t.parse(timestamp); + $(this).data('timeago', { datetime: date }); + if ($t.settings.localeTitle) { + $(this).attr("title", date.toLocaleString()); + } + refresh.apply(this); + }, + updateFromDOM: function() { + $(this).data('timeago', { datetime: $t.parse( $t.isTime(this) ? $(this).attr("datetime") : $(this).attr("title") ) }); + refresh.apply(this); + }, + dispose: function () { + if (this._timeagoInterval) { + window.clearInterval(this._timeagoInterval); + this._timeagoInterval = null; + } + } + }; + + $.fn.timeago = function(action, options) { + var fn = action ? functions[action] : functions.init; + if (!fn) { + throw new Error("Unknown function name '"+ action +"' for timeago"); + } + // each over objects here and call the requested function + this.each(function() { + fn.call(this, options); + }); + return this; + }; + + function refresh() { + var $s = $t.settings; + + //check if it's still visible + if ($s.autoDispose && !$.contains(document.documentElement,this)) { + //stop if it has been removed + $(this).timeago("dispose"); + return this; + } + + var data = prepareData(this); + + if (!isNaN(data.datetime)) { + if ( $s.cutoff === 0 || Math.abs(distance(data.datetime)) < $s.cutoff) { + $(this).text(inWords(data.datetime)); + } else { + if ($(this).attr('title').length > 0) { + $(this).text($(this).attr('title')); + } + } + } + return this; + } + + function prepareData(element) { + element = $(element); + if (!element.data("timeago")) { + element.data("timeago", { datetime: $t.datetime(element) }); + var text = $.trim(element.text()); + if ($t.settings.localeTitle) { + element.attr("title", element.data('timeago').datetime.toLocaleString()); + } else if (text.length > 0 && !($t.isTime(element) && element.attr("title"))) { + element.attr("title", text); + } + } + return element.data("timeago"); + } + + function inWords(date) { + return $t.inWords(distance(date)); + } + + function distance(date) { + return (new Date().getTime() - date.getTime()); + } + + // fix for IE6 suckage + document.createElement("abbr"); + document.createElement("time"); +})); \ No newline at end of file diff --git a/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_en.js b/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_en.js new file mode 100644 index 00000000..df9d11e8 --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_en.js @@ -0,0 +1,33 @@ +(function ($) { + $.extend($.validator.messages, { + required: "This field is required.", + remote: "Please fix this field.", + email: "Please enter a valid email address.", + url: "Please enter a valid URL.", + date: "Please enter a valid date.", + dateISO: "Please enter a valid date (ISO).", + number: "Please enter a valid number.", + digits: "Please enter only digits.", + equalTo: "Please enter the same value again.", + maxlength: $.validator.format( "Please enter no more than {0} characters." ), + minlength: $.validator.format( "Please enter at least {0} characters." ), + rangelength: $.validator.format( "Please enter a value between {0} and {1} characters long." ), + range: $.validator.format( "Please enter a value between {0} and {1}." ), + max: $.validator.format( "Please enter a value less than or equal to {0}." ), + min: $.validator.format( "Please enter a value greater than or equal to {0}." ), + errorMessage: "The information you filled in is wrong.", + userName: "Chinese characters, English letters, Numbers and underscores.", + realName: "Can only be 2-30 Chinese characters", + abc: "Please enter alphanumeric or underline", + noEqualTo: "Please enter different values again", + mobile: "Please fill in your mobile number correctly, only 13,14,15,16,17,18,19", + simplePhone: "Please fill in your phone number correctly, and the fixed number is the area code (3-4 digits),", + phone: "Please fill in your phone number correctly, the number (3-4 digits), and the phone number is 13,14,15,16,17,18,19.", + zipCode: "Please fill in your zipCode correctly", + integer: "Please enter an integer", + ipv4: "Please enter a valid IP v4 address", + ipv6: "Please enter a valid IP v6 address", + qq: "Please fill in your qq number correctly", + idcard: "Please enter the correct id number (15-18)" + }); +}(jQuery)); diff --git a/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_ja_JP.js b/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_ja_JP.js new file mode 100644 index 00000000..7fc0c1f3 --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_ja_JP.js @@ -0,0 +1,33 @@ +(function ($) { + $.extend( $.validator.messages, { + required: "このフィールドは必須です。", + remote: "このフィールドを修正してください。", + email: "有効なEメールアドレスを入力してください。", + url: "有効なURLを入力してください。", + date: "有効な日付を入力してください。", + dateISO: "有効な日付(ISO)を入力してください。", + number: "有効な数字を入力してください。", + digits: "数字のみを入力してください。", + equalTo: "同じ値をもう一度入力してください。", + maxlength: $.validator.format( "{0} 文字以内で入力してください。" ), + minlength: $.validator.format( "{0} 文字以上で入力してください。" ), + rangelength: $.validator.format( "{0} 文字から {1} 文字までの値を入力してください。" ), + range: $.validator.format( "{0} から {1} までの値を入力してください。" ), + max: $.validator.format( "{0} 以下の値を入力してください。" ), + min: $.validator.format( "{0} 以上の値を入力してください。" ), + errorMessage: "ご記入頂いた情報に誤りがございましたので、提示に基づき修正をお願いします。", + userName: "ご記入頂いた情報に誤りがございましたので、提示に基づき修正をお願いします。登录アカウントは中文字、英字、数字、下線のみです", + realName: "名前は2 ~ 30字程度", + abc: "数字または下線を入力してください", + noEqualTo: "再度異なる値を入力して下さい", + mobile: "お电话番号を正确にお书きください。ただ13、14、15、16、17、18、19番です", + simplePhone: "お电话番号を正しくお书きください。固定番号(3-4位)番号(7-9位)", + phone: "お电话番号を正确にお书きください。固定番号(3-4位)番号(7-9位)、携帯电话は13、14、15、16、17、18、19番です", + zipCode: "郵便番号を正しく入力してください", + integer: "整数を入力してください", + ipv4: "有効なIP v4アドレスを入力してください", + ipv6: "有効なIP v6アドレスを入力してください", + qq: "あなたのQQ番号を正しく入力してください", + idcard: "正しい住民登録番号(15 ~ 18位)を入力してください。" + }); +}(jQuery)); diff --git a/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_zh_CN.js b/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_zh_CN.js new file mode 100644 index 00000000..c80bef5a --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_zh_CN.js @@ -0,0 +1,33 @@ +(function ($) { + $.extend($.validator.messages, { + required: "必填信息", + remote: "请修正该信息", + email: "请输入正确格式的电子邮件", + url: "请输入合法的网址", + date: "请输入合法的日期", + dateISO: "请输入合法的日期 (YYYY-MM-DD).", + number: "请输入合法的数值", + digits: "请输入一个正整数", + equalTo: "请再次输入相同的值", + maxlength: $.validator.format("最多可以输入 {0} 个字符"), + minlength: $.validator.format("最少要输入 {0} 个字符"), + rangelength: $.validator.format("请输入长度在 {0} 到 {1} 之间的字符串"), + range: $.validator.format("请输入范围在 {0} 到 {1} 之间的数值"), + max: $.validator.format("请输入不大于 {0} 的数值"), + min: $.validator.format("请输入不小于 {0} 的数值"), + errorMessage: "您填写的信息有误,请根据提示修正。", + userName: "登录账号只能包括中文字、英文字母、数字和下划线", + realName: "姓名只能为2-30个汉字", + abc: "请输入字母数字或下划线", + noEqualTo: "请再次输入不同的值", + mobile: "请正确填写您的手机号码,只能是13,14,15,16,17,18,19号段", + simplePhone: "请正确填写您的电话号码,固话为区号(3-4位)号码(7-9位)", + phone: "请正确填写您的电话号码,固话为区号(3-4位)号码(7-9位),手机为13,14,15,16,17,18,19号段", + zipCode: "请正确填写您的邮政编码", + integer: "请输入一个整数", + ipv4: "请输入一个有效的 IP v4 地址", + ipv6: "请输入一个有效的 IP v6 地址", + qq: "请正确填写您的QQ号码", + idcard: "请输入正确的身份证号码(15-18位)" + }); +}(jQuery)); diff --git a/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_zh_TW.js b/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_zh_TW.js new file mode 100644 index 00000000..14d08836 --- /dev/null +++ b/modules/core/src/main/resources/static/jquery-validation/1.16/localization/messages_zh_TW.js @@ -0,0 +1,33 @@ +(function ($) { + $.extend( $.validator.messages, { + required: "必須填寫", + remote: "請修正此欄位", + email: "請輸入有效的電子郵件", + url: "請輸入有效的網址", + date: "請輸入有效的日期", + dateISO: "請輸入有效的日期 (YYYY-MM-DD)", + number: "請輸入正確的數值", + digits: "只可輸入數字", + equalTo: "請重複輸入一次", + maxlength: $.validator.format( "最多 {0} 個字" ), + minlength: $.validator.format( "最少 {0} 個字" ), + rangelength: $.validator.format( "請輸入長度為 {0} 至 {1} 之間的字串" ), + range: $.validator.format( "請輸入 {0} 至 {1} 之間的數值" ), + max: $.validator.format( "請輸入不大於 {0} 的數值" ), + min: $.validator.format( "請輸入不小於 {0} 的數值" ), + errorMessage: "您填寫的信息有誤,請根據提示修正。", + userName: "登錄賬號只能包括中文字、英文字母、數字和下劃線", + realName: "姓名只能爲2-30個漢字", + abc: "請輸入字母數字或下劃線", + noEqualTo: "請再次輸入不同的值", + mobile: "請正確填寫您的手機號碼,只能是13,14,15,16,17,18,19號段", + simplePhone: "請正確填寫您的電話號碼,固話爲區號(3-4位)號碼(7-9位)", + phone: "請正確填寫您的電話號碼,固話爲區號(3-4位)號碼(7-9位),手機爲13,14,15,16,17,18,19號段", + zipCode: "請正確填寫您的郵政編碼", + integer: "請輸入一個整數", + ipv4: "請輸入一個有效的 IP v4 地址", + ipv6: "請輸入一個有效的 IP v6 地址", + qq: "請正確填寫您的QQ號碼", + idcard: "請輸入正確的身份證號碼(15-18位)" + }); +}(jQuery)); diff --git a/modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/images/copy.png b/modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/images/copy.png new file mode 100644 index 0000000000000000000000000000000000000000..b2536aac72e763b9a872b507462458ecb96990f0 GIT binary patch literal 4319 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 N002ovPDHLkV1nv#UQ7T0 literal 0 HcmV?d00001 diff --git a/modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/images/localimage.png b/modules/core/src/main/resources/static/ueditor/1.4/lang/ja_JP/images/localimage.png new file mode 100644 index 0000000000000000000000000000000000000000..7303c364318b6ac27dc4a8ae6717124d8dafaff9 GIT binary patch literal 6979 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 O0000字数超出最大允许值,服务器可能拒绝保存!', + 'ok':"确认", + 'cancel':"取消", + 'closeDialog':"关闭对话框", + 'tableDrag':"表格拖动必须引入uiUtils.js文件!", + 'autofloatMsg':"工具栏浮动依赖编辑器UI,您首先需要引入UI文件!", + 'loadconfigError': '获取后台配置项请求出错,上传功能将不能正常使用!', + 'loadconfigFormatError': '后台配置项返回格式出错,上传功能将不能正常使用!', + 'loadconfigHttpError': '请求后台配置项http错误,上传功能将不能正常使用!', + 'snapScreen_plugin':{ + 'browserMsg':"仅支持IE浏览器!", + 'callBackErrorMsg':"服务器返回数据有误,请检查配置项之后重试。", + 'uploadErrorMsg':"截图上传失败,请检查服务器端环境! " + }, + 'insertcode':{ + 'as3':'ActionScript 3', + 'bash':'Bash/Shell', + 'cpp':'C/C++', + 'css':'CSS', + 'cf':'ColdFusion', + 'c#':'C#', + 'delphi':'Delphi', + 'diff':'Diff', + 'erlang':'Erlang', + 'groovy':'Groovy', + 'html':'HTML', + 'java':'Java', + 'jfx':'JavaFX', + 'js':'JavaScript', + 'pl':'Perl', + 'php':'PHP', + 'plain':'Plain Text', + 'ps':'PowerShell', + 'python':'Python', + 'ruby':'Ruby', + 'scala':'Scala', + 'sql':'SQL', + 'vb':'Visual Basic', + 'xml':'XML' + }, + 'confirmClear':"确定清空当前文档么?", + 'contextMenu':{ + 'delete':"删除", + 'selectall':"全选", + 'deletecode':"删除代码", + 'cleardoc':"清空文档", + 'confirmclear':"确定清空当前文档么?", + 'unlink':"删除超链接", + 'paragraph':"段落格式", + 'edittable':"表格属性", + 'aligntd':"单元格对齐方式", + 'aligntable':'表格对齐方式', + 'tableleft':'左浮动', + 'tablecenter':'居中显示', + 'tableright':'右浮动', + 'edittd':"单元格属性", + 'setbordervisible':'设置表格边线可见', + 'justifyleft':'左对齐', + 'justifyright':'右对齐', + 'justifycenter':'居中对齐', + 'justifyjustify':'两端对齐', + 'table':"表格", + 'inserttable':'插入表格', + 'deletetable':"删除表格", + 'insertparagraphbefore':"前插入段落", + 'insertparagraphafter':'后插入段落', + 'deleterow':"删除当前行", + 'deletecol':"删除当前列", + 'insertrow':"前插入行", + 'insertcol':"左插入列", + 'insertrownext':'后插入行', + 'insertcolnext':'右插入列', + 'insertcaption':'插入表格名称', + 'deletecaption':'删除表格名称', + 'inserttitle':'插入表格标题行', + 'deletetitle':'删除表格标题行', + 'inserttitlecol':'插入表格标题列', + 'deletetitlecol':'删除表格标题列', + 'averageDiseRow':'平均分布各行', + 'averageDisCol':'平均分布各列', + 'mergeright':"向右合并", + 'mergeleft':"向左合并", + 'mergedown':"向下合并", + 'mergecells':"合并单元格", + 'splittocells':"完全拆分单元格", + 'splittocols':"拆分成列", + 'splittorows':"拆分成行", + 'tablesort':'表格排序', + 'enablesort':'设置表格可排序', + 'disablesort':'取消表格可排序', + 'reversecurrent':'逆序当前', + 'orderbyasc':'按ASCII字符升序', + 'reversebyasc':'按ASCII字符降序', + 'orderbynum':'按数值大小升序', + 'reversebynum':'按数值大小降序', + 'borderbk':'边框底纹', + 'setcolor':'表格隔行变色', + 'unsetcolor':'取消表格隔行变色', + 'setbackground':'选区背景隔行', + 'unsetbackground':'取消选区背景', + 'redandblue':'红蓝相间', + 'threecolorgradient':'三色渐变', + 'copy':"复制(Ctrl + c)", + 'copymsg': "浏览器不支持,请使用 'Ctrl + c'", + 'paste':"粘贴(Ctrl + v)", + 'pastemsg': "浏览器不支持,请使用 'Ctrl + v'" + }, + 'copymsg': "浏览器不支持,请使用 'Ctrl + c'", + 'pastemsg': "浏览器不支持,请使用 'Ctrl + v'", + 'anthorMsg':"链接", + 'clearColor':'清空颜色', + 'standardColor':'标准颜色', + 'themeColor':'主题颜色', + 'property':'属性', + 'default':'默认', + 'modify':'修改', + 'justifyleft':'左对齐', + 'justifyright':'右对齐', + 'justifycenter':'居中', + 'justify':'默认', + 'clear':'清除', + 'anchorMsg':'锚点', + 'delete':'删除', + 'clickToUpload':"点击上传", + 'unset':'尚未设置语言文件', + 't_row':'行', + 't_col':'列', + 'more':'更多', + 'pasteOpt':'粘贴选项', + 'pasteSourceFormat':"保留源格式", + 'tagFormat':'只保留标签', + 'pasteTextFormat':'只保留文本', + 'autoTypeSet':{ + 'mergeLine':"合并空行", + 'delLine':"清除空行", + 'removeFormat':"清除格式", + 'indent':"首行缩进", + 'alignment':"对齐方式", + 'imageFloat':"图片浮动", + 'removeFontsize':"清除字号", + 'removeFontFamily':"清除字体", + 'removeHtml':"清除冗余HTML代码", + 'pasteFilter':"粘贴过滤", + 'run':"执行", + 'symbol':'符号转换', + 'bdc2sb':'全角转半角', + 'tobdc':'半角转全角' + }, + + 'background':{ + 'static':{ + 'lang_background_normal':'背景设置', + 'lang_background_local':'在线图片', + 'lang_background_set':'选项', + 'lang_background_none':'无背景色', + 'lang_background_colored':'有背景色', + 'lang_background_color':'颜色设置', + 'lang_background_netimg':'网络图片', + 'lang_background_align':'对齐方式', + 'lang_background_position':'精确定位', + 'repeatType':{'options':["居中", "横向重复", "纵向重复", "平铺","自定义"]} + + }, + 'noUploadImage':"当前未上传过任何图片!", + 'toggleSelect':"单击可切换选中状态\n原图尺寸: " + }, + //===============dialog i18N======================= + 'insertimage':{ + 'static':{ + 'lang_tab_remote':"插入图片", //节点 + 'lang_tab_upload':"本地上传", + 'lang_tab_online':"在线管理", + 'lang_tab_search':"图片搜索", + 'lang_input_url':"地 址:", + 'lang_input_size':"大 小:", + 'lang_input_width':"宽度", + 'lang_input_height':"高度", + 'lang_input_border':"边 框:", + 'lang_input_vhspace':"边 距:", + 'lang_input_title':"描 述:", + 'lang_input_align':'图片浮动方式:', + 'lang_imgLoading':" 图片加载中……", + 'lang_start_upload':"开始上传", + 'lock':{'title':"锁定宽高比例"}, //属性 + 'searchType':{'title':"图片类型", 'options':["新闻", "壁纸", "表情", "头像"]}, //select的option + 'searchTxt':{'value':"请输入搜索关键词"}, + 'searchBtn':{'value':"百度一下"}, + 'searchReset':{'value':"清空搜索"}, + 'noneAlign':{'title':'无浮动'}, + 'leftAlign':{'title':'左浮动'}, + 'rightAlign':{'title':'右浮动'}, + 'centerAlign':{'title':'居中独占一行'} + }, + 'uploadSelectFile':'点击选择图片', + 'uploadAddFile':'继续添加', + 'uploadStart':'开始上传', + 'uploadPause':'暂停上传', + 'uploadContinue':'继续上传', + 'uploadRetry':'重试上传', + 'uploadDelete':'删除', + 'uploadTurnLeft':'向左旋转', + 'uploadTurnRight':'向右旋转', + 'uploadPreview':'预览中', + 'uploadNoPreview':'不能预览', + 'updateStatusReady': '选中_张图片,共_KB。', + 'updateStatusConfirm': '已成功上传_张照片,_张照片上传失败', + 'updateStatusFinish': '共_张(_KB),_张上传成功', + 'updateStatusError': ',_张上传失败。', + 'errorNotSupport': 'WebUploader 不支持您的浏览器!如果你使用的是IE浏览器,请尝试升级 flash 播放器。', + 'errorLoadConfig': '后端配置项没有正常加载,上传插件不能正常使用!', + 'errorExceedSize':'文件大小超出', + 'errorFileType':'文件格式不允许', + 'errorInterrupt':'文件传输中断', + 'errorUploadRetry':'上传失败,请重试', + 'errorHttp':'http请求错误', + 'errorServerUpload':'服务器返回出错', + 'remoteLockError':"宽高不正确,不能所定比例", + 'numError':"请输入正确的长度或者宽度值!例如:123,400", + 'imageUrlError':"不允许的图片格式或者图片域!", + 'imageLoadError':"图片加载失败!请检查链接地址或网络状态!", + 'searchRemind':"请输入搜索关键词", + 'searchLoading':"图片加载中,请稍后……", + 'searchRetry':" :( ,抱歉,没有找到图片!请重试一次!" + }, + 'attachment':{ + 'static':{ + 'lang_tab_upload': '上传附件', + 'lang_tab_online': '在线附件', + 'lang_start_upload':"开始上传", + 'lang_drop_remind':"可以将文件拖到这里,单次最多可选100个文件" + }, + 'uploadSelectFile':'点击选择文件', + 'uploadAddFile':'继续添加', + 'uploadStart':'开始上传', + 'uploadPause':'暂停上传', + 'uploadContinue':'继续上传', + 'uploadRetry':'重试上传', + 'uploadDelete':'删除', + 'uploadTurnLeft':'向左旋转', + 'uploadTurnRight':'向右旋转', + 'uploadPreview':'预览中', + 'updateStatusReady': '选中_个文件,共_KB。', + 'updateStatusConfirm': '已成功上传_个文件,_个文件上传失败', + 'updateStatusFinish': '共_个(_KB),_个上传成功', + 'updateStatusError': ',_张上传失败。', + 'errorNotSupport': 'WebUploader 不支持您的浏览器!如果你使用的是IE浏览器,请尝试升级 flash 播放器。', + 'errorLoadConfig': '后端配置项没有正常加载,上传插件不能正常使用!', + 'errorExceedSize':'文件大小超出', + 'errorFileType':'文件格式不允许', + 'errorInterrupt':'文件传输中断', + 'errorUploadRetry':'上传失败,请重试', + 'errorHttp':'http请求错误', + 'errorServerUpload':'服务器返回出错' + }, + 'insertvideo':{ + 'static':{ + 'lang_tab_insertV':"插入视频", + 'lang_tab_searchV':"搜索视频", + 'lang_tab_uploadV':"上传视频", + 'lang_video_url':"视频网址", + 'lang_video_size':"视频尺寸", + 'lang_videoW':"宽度", + 'lang_videoH':"高度", + 'lang_alignment':"对齐方式", + 'videoSearchTxt':{'value':"请输入搜索关键字!"}, + 'videoType':{'options':["全部", "热门", "娱乐", "搞笑", "体育", "科技", "综艺"]}, + 'videoSearchBtn':{'value':"百度一下"}, + 'videoSearchReset':{'value':"清空结果"}, + + 'lang_input_fileStatus':' 当前未上传文件', + 'startUpload':{'style':"background:url(upload.png) no-repeat;"}, + + 'lang_upload_size':"视频尺寸", + 'lang_upload_width':"宽度", + 'lang_upload_height':"高度", + 'lang_upload_alignment':"对齐方式", + 'lang_format_advice':"建议使用mp4格式." + + }, + 'numError':"请输入正确的数值,如123,400", + 'floatLeft':"左浮动", + 'floatRight':"右浮动", + '"default"':"默认", + 'block':"独占一行", + 'urlError':"输入的视频地址有误,请检查后再试!", + 'loading':"  视频加载中,请等待……", + 'clickToSelect':"点击选中", + 'goToSource':'访问源视频', + 'noVideo':"    抱歉,找不到对应的视频,请重试!", + + 'browseFiles':'浏览文件', + 'uploadSuccess':'上传成功!', + 'delSuccessFile':'从成功队列中移除', + 'delFailSaveFile':'移除保存失败文件', + 'statusPrompt':' 个文件已上传! ', + 'flashVersionError':'当前Flash版本过低,请更新FlashPlayer后重试!', + 'flashLoadingError':'Flash加载失败!请检查路径或网络状态', + 'fileUploadReady':'等待上传……', + 'delUploadQueue':'从上传队列中移除', + 'limitPrompt1':'单次不能选择超过', + 'limitPrompt2':'个文件!请重新选择!', + 'delFailFile':'移除失败文件', + 'fileSizeLimit':'文件大小超出限制!', + 'emptyFile':'空文件无法上传!', + 'fileTypeError':'文件类型不允许!', + 'unknownError':'未知错误!', + 'fileUploading':'上传中,请等待……', + 'cancelUpload':'取消上传', + 'netError':'网络错误', + 'failUpload':'上传失败!', + 'serverIOError':'服务器IO错误!', + 'noAuthority':'无权限!', + 'fileNumLimit':'上传个数限制', + 'failCheck':'验证失败,本次上传被跳过!', + 'fileCanceling':'取消中,请等待……', + 'stopUploading':'上传已停止……', + + 'uploadSelectFile':'点击选择文件', + 'uploadAddFile':'继续添加', + 'uploadStart':'开始上传', + 'uploadPause':'暂停上传', + 'uploadContinue':'继续上传', + 'uploadRetry':'重试上传', + 'uploadDelete':'删除', + 'uploadTurnLeft':'向左旋转', + 'uploadTurnRight':'向右旋转', + 'uploadPreview':'预览中', + 'updateStatusReady': '选中_个文件,共_KB。', + 'updateStatusConfirm': '成功上传_个,_个失败', + 'updateStatusFinish': '共_个(_KB),_个成功上传', + 'updateStatusError': ',_张上传失败。', + 'errorNotSupport': 'WebUploader 不支持您的浏览器!如果你使用的是IE浏览器,请尝试升级 flash 播放器。', + 'errorLoadConfig': '后端配置项没有正常加载,上传插件不能正常使用!', + 'errorExceedSize':'文件大小超出', + 'errorFileType':'文件格式不允许', + 'errorInterrupt':'文件传输中断', + 'errorUploadRetry':'上传失败,请重试', + 'errorHttp':'http请求错误', + 'errorServerUpload':'服务器返回出错' + }, + 'webapp':{ + 'tip1':"本功能由百度APP提供,如看到此页面,请各位站长首先申请百度APPKey!", + 'tip2':"申请完成之后请至ueditor.config.js中配置获得的appkey! ", + 'applyFor':"点此申请", + 'anthorApi':"百度API" + }, + 'template':{ + 'static':{ + 'lang_template_bkcolor':'背景颜色', + 'lang_template_clear' : '保留原有内容', + 'lang_template_select' : '选择模板' + }, + 'blank':"空白文档", + 'blog':"博客文章", + 'resume':"个人简历", + 'richText':"图文混排", + 'sciPapers':"科技论文" + + + }, + 'scrawl':{ + 'static':{ + 'lang_input_previousStep':"上一步", + 'lang_input_nextsStep':"下一步", + 'lang_input_clear':'清空', + 'lang_input_addPic':'添加背景', + 'lang_input_ScalePic':'缩放背景', + 'lang_input_removePic':'删除背景', + 'J_imgTxt':{title:'添加背景图片'} + }, + 'noScarwl':"尚未作画,白纸一张~", + 'scrawlUpLoading':"涂鸦上传中,别急哦~", + 'continueBtn':"继续", + 'imageError':"糟糕,图片读取失败了!", + 'backgroundUploading':'背景图片上传中,别急哦~' + }, + 'music':{ + 'static':{ + 'lang_input_tips':"输入歌手/歌曲/专辑,搜索您感兴趣的音乐!", + 'J_searchBtn':{value:'搜索歌曲'} + }, + 'emptyTxt':'未搜索到相关音乐结果,请换一个关键词试试。', + 'chapter':'歌曲', + 'singer':'歌手', + 'special':'专辑', + 'listenTest':'试听' + }, + 'anchor':{ + 'static':{ + 'lang_input_anchorName':'锚点名字:' + } + }, + 'charts':{ + 'static':{ + 'lang_data_source':'数据源:', + 'lang_chart_format': '图表格式:', + 'lang_data_align': '数据对齐方式', + 'lang_chart_align_same': '数据源与图表X轴Y轴一致', + 'lang_chart_align_reverse': '数据源与图表X轴Y轴相反', + 'lang_chart_title': '图表标题', + 'lang_chart_main_title': '主标题:', + 'lang_chart_sub_title': '子标题:', + 'lang_chart_x_title': 'X轴标题:', + 'lang_chart_y_title': 'Y轴标题:', + 'lang_chart_tip': '提示文字', + 'lang_cahrt_tip_prefix': '提示文字前缀:', + 'lang_cahrt_tip_description': '仅饼图有效, 当鼠标移动到饼图中相应的块上时,提示框内的文字的前缀', + 'lang_chart_data_unit': '数据单位', + 'lang_chart_data_unit_title': '单位:', + 'lang_chart_data_unit_description': '显示在每个数据点上的数据的单位, 比如: 温度的单位 ℃', + 'lang_chart_type': '图表类型:', + 'lang_prev_btn': '上一个', + 'lang_next_btn': '下一个' + } + }, + 'emotion':{ + 'static':{ + 'lang_input_choice':'精选', + 'lang_input_Tuzki':'兔斯基', + 'lang_input_BOBO':'BOBO', + 'lang_input_lvdouwa':'绿豆蛙', + 'lang_input_babyCat':'baby猫', + 'lang_input_bubble':'泡泡', + 'lang_input_youa':'有啊' + } + }, + 'gmap':{ + 'static':{ + 'lang_input_address':'地址', + 'lang_input_search':'搜索', + 'address':{value:"北京"} + }, + searchError:'无法定位到该地址!' + }, + 'help':{ + 'static':{ + 'lang_input_about':'关于UEditor', + 'lang_input_shortcuts':'快捷键', + 'lang_input_introduction':'UEditor是由百度web前端研发部开发的所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点。开源基于BSD协议,允许自由使用和修改代码。', + 'lang_Txt_shortcuts':'快捷键', + 'lang_Txt_func':'功能', + 'lang_Txt_bold':'给选中字设置为加粗', + 'lang_Txt_copy':'复制选中内容', + 'lang_Txt_cut':'剪切选中内容', + 'lang_Txt_Paste':'粘贴', + 'lang_Txt_undo':'重新执行上次操作', + 'lang_Txt_redo':'撤销上一次操作', + 'lang_Txt_italic':'给选中字设置为斜体', + 'lang_Txt_underline':'给选中字加下划线', + 'lang_Txt_selectAll':'全部选中', + 'lang_Txt_visualEnter':'软回车', + 'lang_Txt_fullscreen':'全屏' + } + }, + 'insertframe':{ + 'static':{ + 'lang_input_address':'地址:', + 'lang_input_width':'宽度:', + 'lang_input_height':'高度:', + 'lang_input_isScroll':'允许滚动条:', + 'lang_input_frameborder':'显示框架边框:', + 'lang_input_alignMode':'对齐方式:', + 'align':{title:"对齐方式", options:["默认", "左对齐", "右对齐", "居中"]} + }, + 'enterAddress':'请输入地址!' + }, + 'link':{ + 'static':{ + 'lang_input_text':'文本内容:', + 'lang_input_url':'链接地址:', + 'lang_input_title':'标题:', + 'lang_input_target':'是否在新窗口打开:' + }, + 'validLink':'只支持选中一个链接时生效', + 'httpPrompt':'您输入的超链接中不包含http等协议名称,默认将为您添加http://前缀' + }, + 'map':{ + 'static':{ + lang_city:"城市", + lang_address:"地址", + city:{value:"北京"}, + lang_search:"搜索", + lang_dynamicmap:"插入动态地图" + }, + cityMsg:"请选择城市", + errorMsg:"抱歉,找不到该位置!" + }, + 'searchreplace':{ + 'static':{ + lang_tab_search:"查找", + lang_tab_replace:"替换", + lang_search1:"查找", + lang_search2:"查找", + lang_replace:"替换", + lang_searchReg:'支持正则表达式,添加前后斜杠标示为正则表达式,例如“/表达式/”', + lang_searchReg1:'支持正则表达式,添加前后斜杠标示为正则表达式,例如“/表达式/”', + lang_case_sensitive1:"区分大小写", + lang_case_sensitive2:"区分大小写", + nextFindBtn:{value:"下一个"}, + preFindBtn:{value:"上一个"}, + nextReplaceBtn:{value:"下一个"}, + preReplaceBtn:{value:"上一个"}, + repalceBtn:{value:"替换"}, + repalceAllBtn:{value:"全部替换"} + }, + getEnd:"已经搜索到文章末尾!", + getStart:"已经搜索到文章头部", + countMsg:"总共替换了{#count}处!" + }, + 'snapscreen':{ + 'static':{ + lang_showMsg:"截图功能需要首先安装UEditor截图插件! ", + lang_download:"点此下载", + lang_step1:"第一步,下载UEditor截图插件并运行安装。", + lang_step2:"第二步,插件安装完成后即可使用,如不生效,请重启浏览器后再试!" + } + }, + 'spechars':{ + 'static':{}, + tsfh:"特殊字符", + lmsz:"罗马字符", + szfh:"数学字符", + rwfh:"日文字符", + xlzm:"希腊字母", + ewzm:"俄文字符", + pyzm:"拼音字母", + yyyb:"英语音标", + zyzf:"其他" + }, + 'edittable':{ + 'static':{ + 'lang_tableStyle':'表格样式', + 'lang_insertCaption':'添加表格名称行', + 'lang_insertTitle':'添加表格标题行', + 'lang_insertTitleCol':'添加表格标题列', + 'lang_orderbycontent':"使表格内容可排序", + 'lang_tableSize':'自动调整表格尺寸', + 'lang_autoSizeContent':'按表格文字自适应', + 'lang_autoSizePage':'按页面宽度自适应', + 'lang_example':'示例', + 'lang_borderStyle':'表格边框', + 'lang_color':'颜色:' + }, + captionName:'表格名称', + titleName:'标题', + cellsName:'内容', + errorMsg:'有合并单元格,不可排序' + }, + 'edittip':{ + 'static':{ + lang_delRow:'删除整行', + lang_delCol:'删除整列' + } + }, + 'edittd':{ + 'static':{ + lang_tdBkColor:'背景颜色:' + } + }, + 'formula':{ + 'static':{ + } + }, + 'wordimage':{ + 'static':{ + lang_resave:"转存步骤", + uploadBtn:{src:"upload.png",alt:"上传"}, + clipboard:{style:"background: url(copy.png) -153px -1px no-repeat;"}, + lang_step:"1、点击顶部复制按钮,将地址复制到剪贴板;2、点击添加照片按钮,在弹出的对话框中使用Ctrl+V粘贴地址;3、点击打开后选择图片上传流程。" + }, + 'fileType':"图片", + 'flashError':"FLASH初始化失败,请检查FLASH插件是否正确安装!", + 'netError':"网络连接错误,请重试!", + 'copySuccess':"图片地址已经复制!", + 'flashI18n':{} //留空默认中文 + }, + 'autosave': { + 'saving':'保存中...', + 'success':'本地保存成功' + } +}; diff --git a/modules/core/src/main/resources/static/wdScrollTab/js/TabPanel_i18n.js b/modules/core/src/main/resources/static/wdScrollTab/js/TabPanel_i18n.js new file mode 100644 index 00000000..1f10c34d --- /dev/null +++ b/modules/core/src/main/resources/static/wdScrollTab/js/TabPanel_i18n.js @@ -0,0 +1,22 @@ +(function($) { + + window.TabPanel = window.TabPanel || {}; + if (window.lang == 'en'){ + TabPanel.i18n = $.extend({}, TabPanel.i18n, { + closeTab: 'Close', + refreshTab: 'Refresh', + closeOther: 'Close Other', + closeLeft: 'Close Left', + closeRight: 'Close Right' + }); + } else if (window.lang == 'ja_JP'){ + TabPanel.i18n = $.extend({}, TabPanel.i18n, { + closeTab: '閉じる', + refreshTab: '更新', + closeOther: '他を閉じる', + closeLeft: '左側を閉じる', + closeRight: '右側を閉じる' + }); + } + +})(jQuery); diff --git a/modules/core/src/main/resources/static/webuploader/0.1/i18n/en.js b/modules/core/src/main/resources/static/webuploader/0.1/i18n/en.js new file mode 100644 index 00000000..333e97ce --- /dev/null +++ b/modules/core/src/main/resources/static/webuploader/0.1/i18n/en.js @@ -0,0 +1,60 @@ +(function($) { +$.fn.webuploader.defaults.i18n = { + + '安装失败!': 'Installation failed!', + '安装已成功,请刷新!': 'Installation successful, please refresh!', + '文件上传组件不支持您的浏览器,请使用高版本浏览器!': 'Does not support your browser, please use the high version browser!', + + '点击选择文件': 'Select files', + '点击选择图片': 'Select images', + '点击选择视频': 'Select videos', + '继续添加': 'Add files', + + '暂停上传': 'Pause upload', + '继续上传': 'Continue upload', + '开始上传': 'Start upload', + '上传成功': 'Upload success', + + '张图片': ' images', + '个文件': ' files', + + '上传失败': ' Failure', + '重新上传': ' Retry ', + '或': ' or ', + '忽略': ' Ignore ', + + '总共': 'Total ', + '已上传': 'Uploaded ', + '失败{0}个': ' {0} failure', + + '您只能上传{0}个文件': 'You can only upload {0} files.', + '正在验证文件,请稍等。': 'File is being validated.', + + '删除': 'Delete', + '向右旋转': 'Rotate right', + '向左旋转': 'Rotate left', + + '文件类型不对': 'File type error', + '文件大小超出': 'File size exceeded', + '文件传输中断': 'File transfer interrupt', + 'HTTP请求错误': 'HTTP request error', + '文件格式不允许': 'File format not allowed', + '不要选择重复文件': 'Do not select duplicate files', + '上传失败,请重试': 'Upload failed, please try again', + '服务器返回出错': 'The server returned an error', + + '预览生成中': 'Preview create', + '不能预览': 'Cannot preview', + + '确定删除该图片吗?': 'Are you sure to delete the image?', + '确定删除该文件吗?': 'Are you sure to delete this file?', + + '等待上传': 'Waiting for the upload', + '正在上传': 'Are uploading', + + '取消': 'Cancel', + '下载': 'Download', + '预览': 'Preview', + '查看': 'To view' +}; +})(jQuery); diff --git a/modules/core/src/main/resources/static/webuploader/0.1/i18n/ja_JP.js b/modules/core/src/main/resources/static/webuploader/0.1/i18n/ja_JP.js new file mode 100644 index 00000000..a340eced --- /dev/null +++ b/modules/core/src/main/resources/static/webuploader/0.1/i18n/ja_JP.js @@ -0,0 +1,60 @@ +(function($) { +$.fn.webuploader.defaults.i18n = { + + '安装失败!': 'インストールに失敗!', + '安装已成功,请刷新!': 'インストールは成功しました。!', + '文件上传组件不支持您的浏览器,请使用高版本浏览器!': 'ファイルアップロードコンポーネントがあなたのブラウザをサポートしません。!', + + '点击选择文件': '選択ファイルをクリックする。', + '点击选择图片': '選択画像をクリックする。', + '点击选择视频': '選択動画をクリックする。', + '继续添加': '追加し続ける', + + '暂停上传': 'アップロードを一時停止する。', + '继续上传': 'アップロードを継続する', + '开始上传': 'アップロードを始める', + '上传成功': 'アップロードが成功する', + + '张图片': ' 枚画像', + '个文件': ' 一つの書類', + + '上传失败': ' アップロードの失敗', + '重新上传': ' アップロードを再開する ', + '或': ' または ', + '忽略': ' 無視する ', + + '总共': '計 ', + '已上传': 'アップロードした ', + '失败{0}个': ' {0} つ失敗する', + + '您只能上传{0}个文件': 'ファイルは{0}つしかアップロードできません', + '正在验证文件,请稍等。': '書類を検証中ですので、少々お待ちください。', + + '删除': '削除', + '向右旋转': '右にまがる', + '向左旋转': '左に回る', + + '文件类型不对': '書類のタイプが違う', + '文件大小超出': '書類のサイズがはみ出る', + '文件传输中断': 'ファイル転送を中断する。', + 'HTTP请求错误': 'HTTPリクエストエラー', + '文件格式不允许': 'ファイルフォーマットは許可されない', + '不要选择重复文件': '重複ファイルは選択しないでください', + '上传失败,请重试': 'アップロードに失敗したので、試してみてください', + '服务器返回出错': 'サーバーがエラーに戻る', + + '预览生成中': 'プレビュー生成中', + '不能预览': 'プレビューができない。', + + '确定删除该图片吗?': 'この写真を削除することは確定しましたか?', + '确定删除该文件吗?': 'このファイルを削除することは確定しましたか?', + + '等待上传': 'アップロードを待つ', + '正在上传': 'アップロード中', + + '取消': 'キャンセル', + '下载': 'ダウンロード', + '预览': 'プレビュー', + '查看': 'チェック' +}; +})(jQuery); diff --git a/modules/core/src/main/resources/static/webuploader/0.1/i18n/zh_CN.js b/modules/core/src/main/resources/static/webuploader/0.1/i18n/zh_CN.js new file mode 100644 index 00000000..e69de29b diff --git a/modules/core/src/main/resources/views/include/jslibs.html b/modules/core/src/main/resources/views/include/jslibs.html index d415311b..00665888 100644 --- a/modules/core/src/main/resources/views/include/jslibs.html +++ b/modules/core/src/main/resources/views/include/jslibs.html @@ -10,6 +10,7 @@ <% if (@ListUtils.inString('tabPage', libs!)){ %> + <% } %> <% if (@ListUtils.inString('dataGrid', libs!)){ %> @@ -32,6 +33,7 @@ <% if (@ListUtils.inString('fileupload', libs!)){ %> + <% } %> <% if (@ListUtils.inString('ueditor', libs!)){ %>