PageSourceSearch

https://www.idaten.ne.jp/portal/common/js/beans.js

js idaten.ne.jp collected 2026-10-02 06:58:06 UTC 17,868 bytes, 433 lines download raw bytes

1/**
2 * @fileOverview
3 * DI コンテナ風 の Bean 定義です.
4 * 各種 JavaScript 部品の依存関係や設定を定義します。
5 */
6
7/**
8 * @namespace
9 * <p>Bean 定義用のネームスペースです.</p>
10 */
11var beans = beans || {};
12
13
14/**
15 * メッセージファクトリ
16 */
17beans.messageFactory = new ot.message.BasicMessageFactory();
18// メッセージのキーと文字列の対応を格納した Map
19beans.messageFactory.setMessages(messages);
20
21/**
22 * メッセージコンテナ
23 */
24beans.messageContainer = new ot.message.BasicMessageContainer();
25//メッセージ領域に設定する class 属性の Map
26beans.messageContainer.setMessageClassNames({
27        "INFO" : "secInfo01",
28        "WARN" : "secAttention01",
29        "ERROR" : "secCaution01"
30        });
31beans.messageContainer.setMessageSubClassNames({
32    "INFO" : "secInfo01In",
33    "WARN" : "secAttention01In",
34    "ERROR" : "secCaution01In"
35    });
36//メッセージ領域に設定する class 属性の Map
37beans.messageContainer.setFieldMessageClassNames({
38        "ERROR" : "erText"
39        });
40//メッセージ領域に設定する class 属性の Map
41beans.messageContainer.setFieldMessageTrClassNames({
42        "ERROR" : "error"
43        });
44// メッセージの対象項目に設定する class 属性の Map
45beans.messageContainer.setFieldClassNames({
46        "INFO" : "infoField",
47        "WARN" : "warnField",
48        "ERROR" : "errorField",
49        "FATAL" : "fatalField"
50        });
51
52/**
53 * 半角換算用文字数カウント処理
54 */
55beans.halfwidthLengthCounter = new ot.validation.lengthcounters.HalfwidthLengthCounter();
56
57
58/**
59 * 入力補正処理用バリデータ
60 */
61beans.correctorsValidator = new ot.validation.validators.CorrectorsValidator();
62/*
63 * 入力補正処理別名の登録情報
64 * 別名をキー、完全修飾クラス名.メソッド名を値として記述します。
65 */
66beans.correctorsValidator.setAliases({
67        "小文字化" : function (value) {return (value == null) ? null : value.toLowerCase();},
68        "大文字化" : function (value) {return (value == null) ? null : value.toUpperCase();},
69        "全角スペース化" : ot.fullwidth.toFullSpace,
70        "半角スペース化" : ot.fullwidth.toHalfSpace,
71        "全角数字化" : ot.fullwidth.toFullDigit,
72        "半角数字化" : ot.fullwidth.toHalfDigit,
73        "全角英字化" : ot.fullwidth.toFullAlpha,
74        "半角英字化" : ot.fullwidth.toHalfAlpha,
75        "全角記号化" : ot.fullwidth.toFullPunct,
76        "半角記号化" : ot.fullwidth.toHalfPunct,
77        "全角カナ化" : ot.fullwidth.toFullKana,
78        "半角カナ化" : ot.fullwidth.toHalfKana,
79        "全角化" : ot.fullwidth.toFull,
80        "半角化" : ot.fullwidth.toHalf,
81        "カタカナ化" : ot.fullwidth.toKatakana,
82        "ひらがな化" : ot.fullwidth.toHiragana
83        });
84
85
86/**
87 * トリム用バリデータ
88 */
89beans.trimValidator = new ot.validation.validators.TrimValidator();
90/*
91 * トリムタイプの登録情報
92 * トリムタイプをキー、トリムで削除する箇所にマッチする正規表現を値として
93 * 記述します。
94 * トリムしないトリムタイプを登録する場合は値なし(空文字列)とします。
95 */
96beans.trimValidator.setTrimTypes({
97        "トリムしない" : "",
98        "半角" : "^[\\x00-\\x1F\\x7F ]+|[\\x00-\\x1F\\x7F ]+$",
99        "半角/全角" : "^[\\x00-\\x1F\\x7F  ]+|[\\x00-\\x1F\\x7F  ]+$",
100        "先頭の半角" : "^[\\x00-\\x1F\\x7F ]+",
101        "先頭の半角/全角" : "^[\\x00-\\x1F\\x7F  ]+",
102        "末尾の半角" : "[\\x00-\\x1F\\x7F ]+$",
103        "末尾の半角/全角" : "[\\x00-\\x1F\\x7F  ]+$",
104        "半角スペース" : "^[ ]+|[ ]+$"
105        });
106// デフォルトのトリムタイプ
107beans.trimValidator.setDefaultTrimType("半角スペース");
108
109
110/**
111 * 必須チェック用バリデータ
112 */
113beans.requiredValidator = new ot.validation.validators.RequiredValidator();
114// デフォルトの必須正規表現パターン
115beans.requiredValidator.setDefaultRequiredPattern("[\\s\\S]*[^\\x00-\\x1F  ][\\s\\S]*");
116// デフォルトのエラーメッセージ
117beans.requiredValidator.setDefaultMessage("{EXCC30382}");
118
119
120/**
121 * 正規表現チェック用バリデータ
122 */
123beans.patternValidator = new ot.validation.validators.PatternValidator();
124/*
125 * 正規表現タイプの登録情報
126 * 正規表現タイプをキー、正規表現を値として記述します。
127 *
128 * JavaScriptの正規表現では Java とは異なって、\p{Digit}などは使えず、
129 * [[^\\p{Cntrl}]\\r\\n]+のような入れ子の文字クラスも使えない点に注意。
130 */
131beans.patternValidator.setPatternTypes({
132        "半角数字" : "[0-9]+",
133        "半角数字/カンマ" : "[0-9\\x2C]+",
134        "半角英字" : "[A-Za-z]+",
135        "半角英数字" : "[0-9A-Za-z]+",
136        "半角数字記号" : "[0-9\\x21-\\x2F\\x3A-\\x40\\x5B-\\x60\\x7B-\\x7E]+",
137        "半角英字記号" : "[A-Za-z\\x21-\\x2F\\x3A-\\x40\\x5B-\\x60\\x7B-\\x7E]+",
138        "半角英数字記号" : "[0-9A-Za-z\\x21-\\x2F\\x3A-\\x40\\x5B-\\x60\\x7B-\\x7E]+",
139        "半角英数字記号2" : "[0-9A-Za-z\\x21\\x23-\\x2F\\x3A-\\x40\\x5B-\\x60\\x7B-\\x7E]+",
140        "半角英数字記号/半角スペース" : "[ 0-9A-Za-z\\x21-\\x2F\\x3A-\\x40\\x5B-\\x60\\x7B-\\x7E]+",
141        "半角カナ" : "[。-゚]+",
142        "半角カナ以外の半角" : "[\\x20-\\x7E]+",
143        "半角カナ以外の半角/改行" : "[\\x20-\\x7E\\r\\n]+",
144        "半角" : "[\\x20-\\x7E。-゚]+",
145        "半角/改行" : "[\\x20-\\x7E。-゚\\r\\n]+",
146        "半角/改行/タブ" : "[\\x20-\\x7E。-゚\\r\\n\\t]+",
147        "全角" : "[^\\x00-\\x7F。-゚]+",
148        "全角/改行" : "[^\\x00-\\x09\\x0B\\x0C\\x0E-\\x7F。-゚]+",
149        "半角/全角" : "[^\\x00-\\x1F\\x7F]+",
150        "半角/全角/改行" : "[^\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F]+",
151        "半角/全角/改行/タブ" : "[^\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F]+",
152        "半角カナ以外の半角/全角" : "[^\\x00-\\x1F\\x7F。-゚]+",
153        "半角カナ以外の半角/全角/改行" : "[^\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F。-゚]+",
154        "全角ひらがな" : "[ぁ-ん]+",
155        "全角カタカナ" : "[ァ-ンぁ-ん ー・]+",
156        "全角カタカナのみ" : "[ァ-ン ー・]+",
157        "整数" : "-?[0-9]+",
158        "桁区切り整数" : "-?[0-9]+|-?[0-9]{1,3}(,[0-9]{3})*",
159        "小数" : "(-?[0-9]+|-?[0-9]+\\.[0-9]*|-?\\.[0-9]+)",
160        "桁区切り小数" : "(-?[0-9]+|-?[0-9]+\\.[0-9]*|-?\\.[0-9]+|-?[0-9]{1,3}(,[0-9]{3})*|-?[0-9]{1,3}(,[0-9]{3})*\\.[0-9]*)",
161        "年月日" : "[0-9]{4}/[0-9]{1,2}/[0-9]{1,2}",
162        "年月" : "[0-9]{4}/[0-9]{1,2}",
163        "月日" : "[0-9]{1,2}/[0-9]{1,2}",
164        "時" : "0|1|2|3|4|5|6|7|8|9|00|01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|16|17|18|19|20|21|22|23",
165        "分" : "0|1|2|3|4|5|6|7|8|9|00|01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50|51|52|53|54|55|56|57|58|59",
166        "電話番号" : "[0-9]+(-[0-9]+)*",
167        "FAX番号" : "[0-9]+(-[0-9]+)*",
168        "郵便番号" : "[0-9]{3}\-[0-9]{4}",
169        "URL" : "(http://|https://)[^\\x00-\\x1F\\x7F]+",
170        "メールアドレス" : "[0-9A-Za-z\\x21-\\x2B\\x2D\\x3A-\\x3F\\x5B-\\x60\\x7B-\\x7E]+(\\.[0-9A-Za-z\\x21-\\x2B\\x2D\\x3A-\\x3F\\x5B-\\x60\\x7B-\\x7E]+)*@[0-9A-Za-z\\x2D]+(\\.[0-9A-Za-z\\x2D]+)+",
171        "半角英数字/全角" : "[^\\x00-\\x2F\\x3A-\\x40\\x5B-\\x60\\x7B-\\x7F。-゚]+",
172        "半角英数字記号/全角" : "[^\\x00-\\x20\\x7F。-゚]+",
173        "注文番号" : "[a-zA-Z0-9\\*#\\./\\- ]+",
174        "お客様注文NO" : "[0-9A-Za-z\\x20\\x23\\x2A\\x2D-\\x2F]+"
175         });
176// デフォルトの正規表現タイプ
177beans.patternValidator.setDefaultPatternType("半角/全角/改行");
178// デフォルトのエラーメッセージ
179beans.patternValidator.setDefaultMessage("{EXCC30399}");
180beans.patternValidator.setDefaultMessages({
181        "半角数字" : "{EXCC30386}",
182        "半角数字/カンマ" : "{EXCC30386}",
183        "半角英字" : "{EXCC30387}",
184        "半角英数字" : "{EXCC30388}",
185        "半角数字記号" : "{EXCC30413}",
186        //"半角英字記号" : "{MSZA016E}",
187        "半角英数字記号" : "{EXCC30416}",
188        "半角英数字記号2" : "{EXCC30416}",
189        "半角英数字記号/半角スペース" : "{EXCC30416}",
190        //"半角カナ" : "{MSZA018E}",
191        //"半角カナ以外の半角" : "{MSZA019E}",
192        //"半角カナ以外の半角/改行" : "{MSZA020E}",
193        "半角" : "{EXCC30389}",
194        "半角/改行" : "{EXCC30389}",
195        "半角/改行/タブ" : "{EXCC30389}",
196        "全角" : "{EXCC30390}",
197        "全角/改行" : "{EXCC30390}",
198        "半角/全角" : "{EXCC30399}",
199        "半角/全角/改行" : "{EXCC30399}",
200        "半角/全角/改行/タブ" : "{EXCC30399}",
201        "半角カナ以外の半角/全角" : "{EXCC30687}",
202        "半角カナ以外の半角/全角/改行" : "{EXCC30687}",
203        //"全角ひらがな" : "{MSZA029E}",
204        "全角カタカナ" : "{EXCC30966}",
205        "全角カタカナのみ" : "{EXCC30966}",
206        "整数" : "{EXCC30384}",
207        //"桁区切り整数" : "{MSZA032E}",
208        "小数" : "{EXCC30748}",
209        //"桁区切り小数" : "{MSZA034E}",
210        "年月日" : "{EXCC30385}",
211        "年月" : "{EXCC30385}",
212        "月日" : "{EXCC30385}",
213        //"時" : "{MSZA038E}",
214        //"分" : "{MSZA039E}",
215        "電話番号" : "{EXCC30391}",
216        "FAX番号" : "{EXCC30931}",
217        //"郵便番号" : "{MSZA041E}",
218        //"URL" : "{MSZA042E}",
219        "メールアドレス" : "{EXCC30392}",
220        "半角英数字/全角" : "{EXCC30722}",
221        "半角英数字記号/全角" : "{EXCC30687}",
222        "お客様注文NO" : "{EXCC30416}"
223        });
224
225
226/**
227 * 入力禁止正規表現チェック用バリデータ
228 */
229beans.forbiddenPatternValidator = new ot.validation.validators.ForbiddenPatternValidator();
230/*
231 * 入力禁止正規表現タイプの登録情報
232 * 入力禁止正規表現タイプをキー、正規表現を値として記述します。
233 */
234beans.forbiddenPatternValidator.setForbiddenPatternTypes({
235        "改行以外の制御コード" : "[\\s\\S]*[\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F-][\\s\\S]*",
236        "半角カナ" : "[\\s\\S]*[\\x7F。-゚-][\\s\\S]*",
237        "改行、タブ以外の制御コード" : "[\\s\\S]*[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F-][\\s\\S]*",
238        "制御コード" : "[\\s\\S]*[\\x00-\\x1F\\x7F-][\\s\\S]*"
239        });
240/*
241 * デフォルトの入力禁止正規表現タイプ
242 * カンマ区切りで複数指定できます。
243 */
244beans.forbiddenPatternValidator.setDefaultForbiddenPatternTypes("改行以外の制御コード");
245// デフォルトのエラーメッセージ
246beans.forbiddenPatternValidator.setDefaultMessage("{EXCC30399}");
247beans.forbiddenPatternValidator.setDefaultMessages({
248        "改行以外の制御コード" : "{EXCC30399}",
249        "改行、タブ以外の制御コード" : "{EXCC30399}",
250        "半角カナ" : "{EXCC30399}",
251        "制御コード" : "{EXCC30399}"
252        });
253
254
255/**
256 * 最小文字数チェック用バリデータ
257 */
258beans.minLengthValidator = new ot.validation.validators.MinLengthValidator();
259/*
260 * 使用する文字数カウント処理の登録情報
261 * 文字数タイプをキー、文字数カウント処理を値として記述します。
262 */
263beans.minLengthValidator.setLengthCounters({
264        "半角換算" : beans.halfwidthLengthCounter
265        });
266// デフォルトのエラーメッセージ
267beans.minLengthValidator.setDefaultMessage("{EXCC30421}");
268beans.minLengthValidator.setDefaultMessages({
269        "半角換算" : "{EXCC30421}"
270        });
271
272
273/**
274 * 最大文字数チェック用バリデータ
275 */
276beans.maxLengthValidator = new ot.validation.validators.MaxLengthValidator();
277/*
278 * 使用する文字数カウント処理の登録情報
279 * 文字数タイプをキー、文字数カウント処理を値として記述します。
280 */
281beans.maxLengthValidator.setLengthCounters({
282        "半角換算" : beans.halfwidthLengthCounter
283        });
284// デフォルトのエラーメッセージ
285beans.maxLengthValidator.setDefaultMessage("{EXCC30383}");
286beans.maxLengthValidator.setDefaultMessages({
287        "半角換算" : "{EXCC30383}"
288        });
289
290
291/**
292 * 固定文字数チェック用バリデータ
293 */
294beans.exactLengthValidator = new ot.validation.validators.ExactLengthValidator();
295/*
296 * 使用する文字数カウント処理の登録情報
297 * 文字数タイプをキー、文字数カウント処理を値として記述します。
298 */
299beans.exactLengthValidator.setLengthCounters({
300        "半角換算" : beans.halfwidthLengthCounter
301        });
302// デフォルトのエラーメッセージ
303beans.exactLengthValidator.setDefaultMessage("{EXCC30422}");
304beans.exactLengthValidator.setDefaultMessages({
305        "半角換算" : "{EXCC30422}"
306        });
307
308
309/**
310 * 行単位最大文字数チェック用バリデータ
311 */
312beans.maxLineLengthValidator = new ot.validation.validators.MaxLineLengthValidator();
313/*
314 * 使用する文字数カウント処理の登録情報
315 * 文字数タイプをキー、文字数カウント処理を値として記述します。
316 */
317beans.maxLineLengthValidator.setLengthCounters({
318        "半角換算" : beans.halfwidthLengthCounter
319        });
320// デフォルトのエラーメッセージ
321beans.maxLineLengthValidator.setDefaultMessage("{EXCC30399}");
322//beans.maxLineLengthValidator.setDefaultMessages({
323//        "半角換算" : "{MSZA102E}"
324//        });
325
326
327/**
328 * 最大行数チェック用バリデータ
329 */
330beans.maxLineCountValidator = new ot.validation.validators.MaxLineCountValidator();
331// デフォルトのエラーメッセージ
332beans.maxLineCountValidator.setDefaultMessage("{EXCC30399}");
333
334
335/**
336 * 最小値チェック用バリデータ
337 */
338beans.minValueValidator = new ot.validation.validators.MinValueValidator();
339// デフォルトのエラーメッセージ
340beans.minValueValidator.setDefaultMessage("{EXCC30951}");
341
342
343/**
344 * 最大値チェック用バリデータ
345 */
346beans.maxValueValidator = new ot.validation.validators.MaxValueValidator();
347// デフォルトのエラーメッセージ
348beans.maxValueValidator.setDefaultMessage("{EXCC30950}");
349
350
351/**
352 * 最大数値桁数チェック用バリデータ
353 */
354beans.maxDigitsValidator = new ot.validation.validators.MaxDigitsValidator();
355// デフォルトのエラーメッセージ
356beans.maxDigitsValidator.setDefaultMessage("{EXCC30399}");
357
358
359/**
360 * 最大整数部桁数チェック用バリデータ
361 */
362beans.maxIntegerDigitsValidator = new ot.validation.validators.MaxIntegerDigitsValidator();
363// デフォルトのエラーメッセージ
364beans.maxIntegerDigitsValidator.setDefaultMessage("{EXCC30932}");
365
366
367/**
368 * 最大小数部桁数チェック用バリデータ
369 */
370beans.maxFractionDigitsValidator = new ot.validation.validators.MaxFractionDigitsValidator();
371// デフォルトのエラーメッセージ
372beans.maxFractionDigitsValidator.setDefaultMessage("{EXCC30933}");
373
374
375/**
376 * JIS2004変換可否チェック用バリデータ
377 */
378beans.encodingValidator = new ot.validation.validators.EncodingValidator();
379//デフォルトのエラーメッセージ
380beans.encodingValidator.setDefaultMessage("{EXCC30423}");
381
382
383/**
384 * 入力チェックエンジン
385 */
386beans.validationEngine = new ot.validation.BasicValidationEngine();
387// メッセージファクトリ
388beans.validationEngine.setMessageFactory(beans.messageFactory);
389/*
390 * 使用するバリデータ(入力チェック/入力補正処理実装クラス)を
391 * 配列で設定します。
392 * 各バリデータは配列の順番に実行されます。
393 */
394beans.validationEngine.setValidators([
395        beans.correctorsValidator,
396        beans.trimValidator,
397        beans.requiredValidator,
398        beans.patternValidator,
399        beans.forbiddenPatternValidator,
400        beans.minLengthValidator,
401        beans.maxLengthValidator,
402        beans.exactLengthValidator,
403        beans.maxLineLengthValidator,
404        beans.maxLineCountValidator,
405        beans.minValueValidator,
406        beans.maxValueValidator,
407        beans.maxDigitsValidator,
408        beans.maxIntegerDigitsValidator,
409        beans.maxFractionDigitsValidator,
410        beans.encodingValidator
411        ]);
412
413
414/**
415 * 入力チェックサービス
416 */
417beans.validationService = new ot.validation.BasicValidationService();
418// 入力チェックエンジン
419beans.validationService.setValidationEngine(beans.validationEngine);
420// メッセージコンテナ
421beans.validationService.setMessageContainer(beans.messageContainer);
422
423
424/**
425 * フィールド入力エラー時の画面上部メッセージ
426 */
427beans.fieldValidateMainMessage = {};
428//メッセージID
429beans.fieldValidateMainMessage.defaultMessage = "{EXCC30930}";
430//スクロール先ターゲット
431beans.fieldValidateMainMessage.scrollTarget = "body";
432//スクロール、メッセージ表示済フラグ
433beans.fieldValidateMainMessage.messageDisplayed = false;

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.