Commit 350b3069 by Takumi Imai

コメント & 英語化

parent 5168bcdd
......@@ -66,7 +66,6 @@ CONSTANT.URL = {
PUSH_MESSAGE_LIST: 'pushMessageList/',
SEND_PUSH_MESSAGE: 'sendPushMessage/',
IS_QUICK_REPORT: 'getOperationData/isQuickReport',
},
HTML: {
BASE: 'html/',
......@@ -136,35 +135,3 @@ CONSTANT.KEYS = {
// Local:
JumpQueue: 'JumpQueue',
};
CONSTANT.MSG_MAP = {
all: { ja: '全て', ko: '전체', en: 'All' },
dateError: { ja: '開始日は終了日の前に設定してください。', ko: '잘못된 검색일입니다.', en: 'Please enter correct search date.' },
operationListTitle: { ja: 'トップページ|A Book Check', ko: '톱 페이지|A Book Check', en: 'Top Page|A Book Check' },
buttonCategory: { ja: 'カテゴリー', ko: '카테고리', en: 'Category' },
buttonRefresh: { ja: '更新', ko: '갱신', en: 'Refresh' },
buttonBack: { ja: '戻る', ko: 'Back', en: 'Back' },
placeholderOperationName: { ja: '作業名', ko: '작업명', en: 'Working Name' },
labelPeriod: { ja: '期間', ko: '기간', en: 'Period' },
labelStartDate: { ja: '開始日', ko: '시작일', en: 'Start date' },
labelEndDate: { ja: '終了日', ko: '종료일', en: 'End date' },
placeholderSelect: { ja: '選択', ko: '선택', en: 'Choice' },
labelSort: { ja: '並び替え', ko: '정렬', en: 'Sort' },
labelSortName: { ja: '作業名順', ko: '작업명순', en: 'By working name' },
labelSortNew: { ja: '作業期間が新しい順', ko: '작업기간이 최신순', en: 'By newest period' },
labelSortOld: { ja: '作業期間が古い順', ko: '작업기간이 오래된순', en: 'By oldest period' },
labelSortOpen: { ja: '閲覧日が新しい順', ko: '열람순', en: 'By newest viewing date' },
labelReset: { ja: 'クリア', ko: '클리어', en: 'Clear' },
headerItemName: { ja: '作業名', ko: '작업명', en: 'Working Name' },
headerStartDate: { ja: '開始日', ko: '시작일', en: 'Start date' },
headerEndDate: { ja: '終了日', ko: '종료일', en: 'End date' },
buttonHome: { ja: 'ホーム', ko: '홈', en: 'Home' },
buttonSetting: { ja: '設定', ko: '설정', en: 'Setting' },
buttonOperationList: { ja: '作業一覧', ko: '작업일람', en: 'Operations List' },
operationListHeaderTitle: { ja: '作業一覧', ko: '작업일람', en: 'Operations List' },
buttonDashboard: { ja: 'ダッシュボード', ko: '대시보드', en: 'Dashboard' },
buttonDashboardSetting: { ja: '設定', ko: '설정', en: 'Setting' },
Processing_w_dot: { ja: '処理中...', ko: '처리중', en: 'Processing...' },
errorCommunicationFailed: { ja: '通信エラーが発生しました', ko: '통신 오류가 발생했습니다', en: 'A communication error has occurred' },
errorOccurred: { ja: 'エラーが発生しました', ko: '오류가 발생했습니다', en: 'Error Occurred' },
};
/**
* js for event behavior
*
* @since cms:1.4.3.2&1.4.3.3 web:1.0
*/
$(function () {
hide_del_btn();
});
......
/**
* ABook Viewer for WEB
* 国際化(言語切替)対応共通処理
* Common processing for internationalization (language switching)
*
* 言語リソースファイルは、指定する言語に合わせて以下のファイルを修正する
* For language resource files, modify the following files according to the language you specify
* - 日本語: lang-ja.json
* - 韓国語: lang-ko.json
* - 英語 : lang-en.json
......@@ -10,36 +10,36 @@
* Copyright (C) Agentec Co, Ltd. All rights reserved.
*/
//グローバルの名前空間用のオブジェクトを用意する
//Prepare objects for the global namespace
var I18N = {};
/**
* 定数:言語ファイル配置場所
* Constant: Language file location
*/
I18N.avwsys_location = '';
I18N.avwsys_dir = '';
I18N.avwsys_storagekey = '';
I18N.avwsys_currLang = '';
/* 言語の初期化 */
/* Language initialization */
$(function () {
I18N.initi18n();
});
/** 言語リソース設定初期化 */
/** Initialization of language resource settings */
I18N.initi18n = function () {
I18N.avwsys_location = '/common/json/lang';
I18N.avwsys_dir = '/abweb';
I18N.avwsys_storagekey = 'AVWUS_Lang';
I18N.avwsys_currLang = 'AVW_CurrLang';
// ログイン画面/直接アクセス対策
// Login screen/direct access measures
var location = window.location.toString().toLowerCase();
if (location.indexOf(I18N.avwsys_dir) < 0) {
// I18N.avwsys_dirディレクトリ配下ではない場合は、I18N.avwsys_dirディレクトリをつける
// If not under I18N.avwsys_dir directory, add I18N.avwsys_dir directory
I18N.avwsys_location = '..' + I18N.avwsys_dir + I18N.avwsys_location;
} else {
// I18N.avwsys_dirディレクトリ配下の場合は、相対パスに変換
// If under I18N.avwsys_dir directory, convert to relative path
I18N.avwsys_location = '..' + I18N.avwsys_location;
}
......@@ -51,15 +51,15 @@ I18N.initi18n = function () {
lang = I18N.getNavigatorLanguage();
}
}
// 言語ファイルを初期化する
// Initialize language files
I18N.loadLanguage(lang);
};
/* ブラウザの言語設定を取得する */
/* Retrieve browser language settings */
I18N.getNavigatorLanguage = function () {
var lang = navigator.browserLanguage || navigator.language || navigator.userLanguage;
/* 対応言語 */
var languages = ['ja', 'ko', 'en']; // 対応言語を増やす場合はここを変更する
/* Languages Supported */
var languages = ['ja', 'ko', 'en']; // Change here if you want to add more supported languages
if (lang.match(/ja|ko|en/g)) {
for (var i = 0; i < languages.length; i++) {
var index = lang.indexOf(languages[i]);
......@@ -69,31 +69,31 @@ I18N.getNavigatorLanguage = function () {
}
}
} else {
lang = 'en'; // 対応言語が無ければ英語をデフォルトとする
lang = 'en'; // If there is no supported language, English is the default.
}
return lang;
};
/* 言語リソースファイル読み込み */
/* Language resource file loading */
I18N.loadLanguage = function (lang) {
// 引数から言語ファイルを選択
// Select language file from arguments
var langfile = 'lang-' + lang + '.json';
// 言語ファイルを読み込む
// Read the language file
$.ajax({
url: I18N.avwsys_location + '/' + langfile,
async: false,
dataType: 'json',
cache: false,
success: function (data) {
// lang属性の書換え
// Rewriting the lang attribute
document.documentElement.lang = lang;
// html の言語データを書換える
// Rewrite html language data
var jsonLangData = data;
I18N.replaceText(jsonLangData);
// 言語設定、言語データをストレージにキャッシュしておく
// Cache language settings and language data in storage
I18N.storeCurrentLanguage(lang, jsonLangData);
},
error: function (xhr, txtStatus, errorThrown) {
......@@ -104,7 +104,7 @@ I18N.loadLanguage = function (lang) {
});
};
/* ページ内のテキストをすべて言語に合わせて置換する */
/* Replace all text on the page with the language */
I18N.replaceText = function (jsonLangData) {
var itemCount = $('.lang').length;
if (itemCount > 0) {
......@@ -137,7 +137,7 @@ I18N.replaceText = function (jsonLangData) {
}
};
/* 現在設定されている言語でHTMLテキストを置き換える */
/* Replace HTML text with the currently set language */
I18N.i18nReplaceText = function () {
var storage = window.sessionStorage;
if (storage) {
......@@ -149,7 +149,7 @@ I18N.i18nReplaceText = function () {
}
};
/* キーから文字列を取得 */
/* Get string from key */
I18N.i18nText = function (key) {
var storage = window.sessionStorage;
if (storage) {
......@@ -162,7 +162,7 @@ I18N.i18nText = function (key) {
return 'undefined';
};
/* 言語データのキー値から文字列を取得 */
/* Obtain strings from key values of language data */
I18N.getLangText = function (jsonLangData, key) {
if (jsonLangData) {
var text = jsonLangData[key];
......@@ -171,19 +171,19 @@ I18N.getLangText = function (jsonLangData, key) {
return 'undefined.';
};
/* 言語データの切り替え */
/* Switching Language Data */
I18N.changeLanguage = function (lang) {
// 言語の切替を行った場合のみ選択言語をストアする
// Store the selected language only when switching languages
var storage = window.localStorage;
if (storage) {
storage.setItem(I18N.avwsys_storagekey, lang);
}
// 言語ファイルを読み込み、テキスト文字列を変換する
// Reads language files and converts text strings
I18N.loadLanguage(lang);
};
/* 設定言語の保存 */
/* Save language settings */
I18N.storeCurrentLanguage = function (lang, langData) {
var ss = window.sessionStorage;
if (ss) {
......@@ -193,7 +193,7 @@ I18N.storeCurrentLanguage = function (lang, langData) {
ss.setItem(I18N.avwsys_currLang, lang);
}
};
/* 設定言語の取得 */
/* Retrieving the setting language */
I18N.getCurrentLanguage = function () {
var lang;
var storage = window.sessionStorage;
......
/*
/**
* String utilities [ end ]
*
* @since cms:1.4.3.2&1.4.3.3 web:1.0
*/
// =============================================================================================
// Utils for string, date, number [ end ]
// =============================================================================================
var ValidationUtil = {
// Required Text
CheckRequiredForText : function(value) {
CheckRequiredForText: function (value) {
if (value == null || value == '') {
return false;
}
......@@ -17,13 +17,12 @@ var ValidationUtil = {
},
// get byte count
GetByteCount : function(value) {
GetByteCount: function (value) {
var escapedStr = encodeURI(value);
if (escapedStr.indexOf("%") != -1) {
var count = escapedStr.split("%").length - 1;
if (count == 0)
count++; // perverse case; can't happen with real UTF-8
var tmp = escapedStr.length - (count * 3);
if (escapedStr.indexOf('%') != -1) {
var count = escapedStr.split('%').length - 1;
if (count == 0) count++; // perverse case; can't happen with real UTF-8
var tmp = escapedStr.length - count * 3;
count = count + tmp;
} else {
count = escapedStr.length;
......@@ -32,65 +31,64 @@ var ValidationUtil = {
},
// check text min length
CheckMinLengthForByte : function(value, len) {
if (this.GetByteCount(value) < len)
return false;
CheckMinLengthForByte: function (value, len) {
if (this.GetByteCount(value) < len) return false;
return true;
},
// check text max length
CheckMaxLengthForByte : function(value, len) {
if (this.GetByteCount(value) > len)
return false;
CheckMaxLengthForByte: function (value, len) {
if (this.GetByteCount(value) > len) return false;
return true;
},
// check if the text is a number
IsNumber : function(value) {
var reg = new RegExp("^[0-9]+$");
IsNumber: function (value) {
var reg = new RegExp('^[0-9]+$');
return reg.test(value);
},
// check if the text is a alphabet
IsAlphabet : function(value) {
var reg = new RegExp("^[a-zA-Z]+$");
IsAlphabet: function (value) {
var reg = new RegExp('^[a-zA-Z]+$');
return reg.test(value);
},
// check if the text is a symbol
IsSymbol : function(value) {
IsSymbol: function (value) {
var reg = new RegExp(
"\u005b\u005e\u0027\u0060\u0027\u007e\u0027\u0021\u0027\u0040\u0027\u0023\u0027\u0024\u0027\u0025\u0027\u005e\u0027\u0026\u0027\u002a\u0027\u0028\u0027\u0029\u0027\u005f\u0027\u002b\u0027\u003d\u0027\u007b\u0027\u007d\u0027\u007c\u0027\u003a\u0027\u0022\u0027\u003b\u0027\u0027\u0027\u003c\u0027\u003e\u0027\u003f\u0027\u002f\u0027\u002e\u0027\u002c\u005c\u002d\u005b\u005c\u005d\u005c\u005c\u005d");
'\u005b\u005e\u0027\u0060\u0027\u007e\u0027\u0021\u0027\u0040\u0027\u0023\u0027\u0024\u0027\u0025\u0027\u005e\u0027\u0026\u0027\u002a\u0027\u0028\u0027\u0029\u0027\u005f\u0027\u002b\u0027\u003d\u0027\u007b\u0027\u007d\u0027\u007c\u0027\u003a\u0027\u0022\u0027\u003b\u0027\u0027\u0027\u003c\u0027\u003e\u0027\u003f\u0027\u002f\u0027\u002e\u0027\u002c\u005c\u002d\u005b\u005c\u005d\u005c\u005c\u005d',
);
return !reg.test(value);
},
// check if the text is a emailAddress
CheckEmailValid : function(value) {
CheckEmailValid: function (value) {
// Check if string is a valid email address
var reg = new RegExp("^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\\.]{1}[0-9a-zA-Z]+[\\.]?[0-9a-zA-Z]+$");
var reg = new RegExp('^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\\.]{1}[0-9a-zA-Z]+[\\.]?[0-9a-zA-Z]+$');
return reg.test(value);
},
// Password
CheckPasswordValid : function(value) {
CheckPasswordValid: function (value) {
// Check if string is a valid email address
var reg = new RegExp("^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[#+-\\./:_]).{1,47}$");
var reg = new RegExp('^(?=.*d)(?=.*[a-z])(?=.*[A-Z])(?=.*[#+-\\./:_]).{1,47}$');
return reg.test(value);
},
// Alphabet + Nunber + Symbol
IsAlphabetOrNumberOrSymbol : function(value) {
IsAlphabetOrNumberOrSymbol: function (value) {
// Check if string is alphabet or number or symbol
var reg = new RegExp(
"\u005b\u005e\u0061\u002d\u007a\u0041\u002d\u005a\u0030\u002d\u0039\u0027\u0060\u0027\u007e\u0027\u0021\u0027\u0040\u0027\u0023\u0027\u0024\u0027\u0025\u0027\u005e\u0027\u0026\u0027\u002a\u0027\u0028\u0027\u0029\u0027\u005f\u0027\u002b\u0027\u003d\u0027\u007b\u0027\u007d\u0027\u007c\u0027\u003a\u0027\u0022\u0027\u003b\u0027\u0027\u0027\u003c\u0027\u003e\u0027\u003f\u0027\u002f\u0027\u002e\u0027\u002c\u005c\u002d\u005b\u005c\u005d\u005c\u005c\u005d");
'\u005b\u005e\u0061\u002d\u007a\u0041\u002d\u005a\u0030\u002d\u0039\u0027\u0060\u0027\u007e\u0027\u0021\u0027\u0040\u0027\u0023\u0027\u0024\u0027\u0025\u0027\u005e\u0027\u0026\u0027\u002a\u0027\u0028\u0027\u0029\u0027\u005f\u0027\u002b\u0027\u003d\u0027\u007b\u0027\u007d\u0027\u007c\u0027\u003a\u0027\u0022\u0027\u003b\u0027\u0027\u0027\u003c\u0027\u003e\u0027\u003f\u0027\u002f\u0027\u002e\u0027\u002c\u005c\u002d\u005b\u005c\u005d\u005c\u005c\u005d',
);
return !reg.test(value);
},
// Get the total of types in array
CheckNumberOfTypeInString : function(value) {
CheckNumberOfTypeInString: function (value) {
var list = new Array();
var c;
for ( var i = 0; i < value.length; i++) {
for (var i = 0; i < value.length; i++) {
c = value[i];
for ( var j = i + 1; j < value.length; j++) {
for (var j = i + 1; j < value.length; j++) {
if (value[j] == c) {
value = value.slice(0, j) + value.slice(j + 1, value.len);
j = j - 1;
......@@ -99,63 +97,61 @@ var ValidationUtil = {
list[i] = c;
}
var count = list.length;
return count
return count;
},
// Special character: *
IsCharacterSpecial : function(value) {
for ( var i = 0; i < value.length; i++) {
if (value[i] == '*')
return true;
IsCharacterSpecial: function (value) {
for (var i = 0; i < value.length; i++) {
if (value[i] == '*') return true;
}
return false;
},
// Symbol check for password
IsPasswordSymbol : function(value) {
var reg = new RegExp("\u005b\u005e\u0027\u0023\u0027\u002b\u005c\u002d\u0027\u002e\u0027\u002f\u0027\u003a\u0027\u005f\u005d");
IsPasswordSymbol: function (value) {
var reg = new RegExp('\u005b\u005e\u0027\u0023\u0027\u002b\u005c\u002d\u0027\u002e\u0027\u002f\u0027\u003a\u0027\u005f\u005d');
return !reg.test(value);
},
// text check for password(Alphabet Or Number Or Symbol)
IsPasswordAlphabetOrNumberOrSymbol : function(value) {
var reg = new RegExp("\u005b\u005e\u0061\u002d\u007a\u0041\u002d\u005a\u0030\u002d\u0039\u0027\u0023\u0027\u002b\u005c\u002d\u0027\u002e\u0027\u002f\u0027\u003a\u0027\u005f\u005d");
IsPasswordAlphabetOrNumberOrSymbol: function (value) {
var reg = new RegExp('\u005b\u005e\u0061\u002d\u007a\u0041\u002d\u005a\u0030\u002d\u0039\u0027\u0023\u0027\u002b\u005c\u002d\u0027\u002e\u0027\u002f\u0027\u003a\u0027\u005f\u005d');
return !reg.test(value);
},
// Check at consecutive characters
HasSeqChar : function(str, num) {
var count = 0;
var prev = 0;
for (var i = 0; i < str.length; i++) {
var c = str.charAt(i);
if (i > 0 && prev == c) {
count++;
if (count == num - 1) {
return true;
}
}
else {
count = 0;
}
prev = c;
}
HasSeqChar: function (str, num) {
var count = 0;
var prev = 0;
for (var i = 0; i < str.length; i++) {
var c = str.charAt(i);
if (i > 0 && prev == c) {
count++;
if (count == num - 1) {
return true;
}
} else {
count = 0;
}
prev = c;
}
return false;
return false;
},
// Check same characters in text
ContainSameSeqChar : function(str1, str2, num) {
if (str2.length < num || str1.length < num) {
return false;
}
ContainSameSeqChar: function (str1, str2, num) {
if (str2.length < num || str1.length < num) {
return false;
}
for (var i = 0; i <= str2.length - num; i++) {
var target = str2.substring(i, i + num);
if (str1.contains(target)) {
return true;
}
}
return false;
}
};
\ No newline at end of file
for (var i = 0; i <= str2.length - num; i++) {
var target = str2.substring(i, i + num);
if (str1.contains(target)) {
return true;
}
}
return false;
},
};
......@@ -14,13 +14,6 @@ OL.isOperationGroupMaster = 0; //0: category(operationGroupMaster) not exist 1:
OL.sortIndex;
OL.operationGroupMasterId;
OL.REPORT_TYPE = {
REPORTONLY: 0, //report only
INSPECT: 1, //rountine
WITHREPLY: 2, // report answer
WORKFLOW: 3, // continuous
};
/**
* process on page load.
* 1.get all data.
......
......@@ -18,6 +18,9 @@ PP.init = function () {
COMMON.closeLoading();
};
/**
* load common
*/
PP.loadCommon = function () {
$('#includedHeader').load('../common/html/header.html', function () {
I18N.initi18n();
......@@ -28,6 +31,9 @@ PP.loadCommon = function () {
});
};
/**
* init pdf list
*/
PP.initPdfList = function () {
if (sessionStorage.OL_operationId) {
let params = {};
......
......@@ -15,6 +15,9 @@ RF.init = function () {
COMMON.closeLoading();
};
/**
* load common
*/
RF.loadCommon = function () {
$('#includedHeader').load('../common/html/header.html', function () {
I18N.initi18n();
......@@ -25,6 +28,9 @@ RF.loadCommon = function () {
});
};
/**
* iinit form view
*/
RF.initFormView = function () {
const urlParameterList = COMMON.getUrlParameter();
const operationId = urlParameterList['operationId'];
......
......@@ -16,6 +16,9 @@ RL.init = function () {
COMMON.closeLoading();
};
/**
* load common
*/
RL.loadCommon = function () {
TEMPLATE.loadHearder('#includedHeader');
TEMPLATE.loadConfirmModal('#includedConfirmModal');
......@@ -33,6 +36,9 @@ RL.loadCommon = function () {
RL.isQuickReport;
/**
* check quick report
*/
RL.checkQuickReport = function () {
if (sessionStorage.OL_operationId) {
let params = {};
......@@ -58,6 +64,9 @@ RL.checkQuickReport = function () {
}
};
/**
* init task report list
*/
RL.initTaskReportList = function () {
if (sessionStorage.OL_operationId) {
let params = {};
......@@ -72,6 +81,9 @@ RL.initTaskReportList = function () {
}
};
/**
* load main title callcack
*/
RL.loadMainTitleCallback = function () {
//add dashboard setting item
if (RL.isQuickReport) {
......@@ -83,6 +95,9 @@ RL.loadMainTitleCallback = function () {
}
};
/**
* go pdf print
*/
RL.goPdfPrint = function () {
COMMON.avwScreenMove('pdfPrint.html');
};
......@@ -96,11 +96,20 @@ SendMessage.postMessage = function (message, operationId, sendType) {
);
};
/**
* operation selected callback
* @param {Number} operationId
* @param {*} operationName
*/
SendMessage.operationSelectedCallback = function (operationId, operationName) {
$('#operationSelected').attr('data-operation-id', operationId);
$('#operationSelected').text(operationName);
};
/**
* template selected callback
* @param {*} template
*/
SendMessage.templateSelectedCallback = function (template) {
$('#messageContent').val(template);
};
......
......@@ -86,6 +86,10 @@ SETTINGS.dspPwdUpd1_Click = function (e) {
}
};
/**
* password change success
* @param {*} data
*/
SETTINGS.avwCmsApi_passwordChange_success = function (data) {
// OK
var msgError = $('#main-error-message');
......@@ -102,6 +106,13 @@ SETTINGS.avwCmsApi_passwordChange_success = function (data) {
COMMON.displayAlert('msgPwdChangeOK');
}
};
/**
* password change fail
* @param {*} xhr
* @param {*} b
* @param {*} c
*/
SETTINGS.avwCmsApi_passwordChange_fail = function (xhr, b, c) {
/* show error messages */
var msgError = $('#main-error-message');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment