Version Description
- Multiple validation.
- Loading limitation by the user id, user login and user role.
- Bugfix: import options.
Download this release
Release Info
Developer | Hiroaki Miyashita |
Plugin | Custom Field Template |
Version | 2.5.7 |
Comparing to | |
See all releases |
Code changes from version 2.5.6 to 2.5.7
- custom-field-template-ja.mo +0 -0
- custom-field-template-ja.po +208 -185
- custom-field-template.php +135 -14
- custom-field-template.pot +194 -181
- js/additional-methods.js +1474 -242
- js/jquery.validate.js +1661 -1188
- js/messages_ar.js +23 -0
- js/messages_az.js +23 -0
- js/messages_bg.js +23 -0
- js/messages_bn_BD.js +23 -0
- js/messages_ca.js +20 -20
- js/messages_cs.js +24 -0
- js/messages_da.js +34 -0
- js/messages_de.js +70 -20
- js/messages_el.js +23 -0
- js/messages_es.js +26 -23
- js/messages_es_AR.js +27 -0
- js/messages_es_PE.js +27 -0
- js/messages_et.js +21 -0
- js/messages_eu.js +23 -0
- js/messages_fa.js +27 -0
- js/messages_fi.js +21 -0
- js/messages_fr.js +52 -23
- js/messages_ge.js +23 -0
- js/messages_gl.js +28 -0
- js/messages_he.js +23 -0
- js/messages_hr.js +23 -0
- js/messages_hu.js +23 -20
- js/messages_hy_AM.js +23 -0
- js/messages_id.js +22 -0
- js/messages_is.js +21 -0
- js/messages_it.js +27 -23
- js/messages_ja.js +22 -20
- js/messages_ka.js +23 -0
- js/messages_kk.js +23 -0
- js/messages_ko.js +23 -0
- js/messages_lt.js +23 -0
- js/messages_lv.js +23 -0
- js/messages_mk.js +23 -0
- js/messages_my.js +23 -0
- js/messages_nl.js +34 -23
- js/messages_no.js +23 -0
- js/messages_pl.js +26 -0
- js/messages_pt_BR.js +79 -0
- js/messages_pt_PT.js +27 -0
- js/messages_ro.js +23 -0
- js/messages_ru.js +23 -23
- js/messages_sd.js +23 -0
- js/messages_si.js +23 -0
- js/messages_sk.js +21 -0
- js/messages_sl.js +23 -0
- js/messages_sr.js +24 -0
- js/messages_sr_lat.js +24 -0
- js/messages_sv.js +23 -0
- js/messages_th.js +23 -0
- js/messages_tj.js +23 -0
- js/messages_tr.js +25 -23
- js/messages_uk.js +23 -0
- js/messages_ur.js +23 -0
- js/messages_vi.js +23 -0
- js/messages_zh.js +24 -0
- js/messages_zh_TW.js +25 -0
- js/methods_de.js +12 -0
- js/methods_es_CL.js +12 -0
- js/methods_fi.js +12 -0
- js/methods_it.js +12 -0
- js/methods_nl.js +12 -0
- js/methods_pt.js +9 -0
- readme.txt +10 -2
custom-field-template-ja.mo
CHANGED
Binary file
|
custom-field-template-ja.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Custom Field Template\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date:
|
6 |
-
"PO-Revision-Date:
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: ja_JP\n"
|
@@ -13,51 +13,51 @@ msgstr ""
|
|
13 |
"X-Poedit-SourceCharset: UTF-8\n"
|
14 |
"X-Poedit-KeywordsList: __;_e;_c;_x:1,2c;_ex:1,2c\n"
|
15 |
"X-Poedit-Basepath: ..\n"
|
16 |
-
"X-Generator: Poedit 2.
|
17 |
"X-Poedit-SearchPath-0: custom-field-template\n"
|
18 |
|
19 |
-
#: custom-field-template/custom-field-template.php:
|
20 |
-
#: custom-field-template/custom-field-template.php:204
|
21 |
#: custom-field-template/custom-field-template.php:205
|
22 |
-
#: custom-field-template/custom-field-template.php:
|
23 |
-
#: custom-field-template/custom-field-template.php:
|
24 |
-
#: custom-field-template/custom-field-template.php:
|
25 |
-
#: custom-field-template/custom-field-template.php:
|
26 |
-
#: custom-field-template/custom-field-template.php:
|
|
|
27 |
msgid "Custom Field Template"
|
28 |
msgstr "カスタムフィールドテンプレート"
|
29 |
|
30 |
-
#: custom-field-template/custom-field-template.php:
|
31 |
msgid "Media Picker"
|
32 |
msgstr "メディアピッカー"
|
33 |
|
34 |
-
#: custom-field-template/custom-field-template.php:
|
35 |
msgid "Use this"
|
36 |
msgstr "これを使用する"
|
37 |
|
38 |
-
#: custom-field-template/custom-field-template.php:
|
39 |
-
#: custom-field-template/custom-field-template.php:
|
40 |
msgid "Load"
|
41 |
msgstr "読込"
|
42 |
|
43 |
-
#: custom-field-template/custom-field-template.php:
|
44 |
msgid "read more"
|
45 |
msgstr "続きを表示"
|
46 |
|
47 |
-
#: custom-field-template/custom-field-template.php:
|
48 |
-
#: custom-field-template/custom-field-template.php:
|
49 |
msgid "Custom Fields"
|
50 |
msgstr "カスタムフィールド"
|
51 |
|
52 |
-
#: custom-field-template/custom-field-template.php:
|
53 |
msgid "Settings"
|
54 |
msgstr "設定"
|
55 |
|
56 |
-
#: custom-field-template/custom-field-template.php:
|
57 |
msgid "Default Template"
|
58 |
msgstr "デフォルトテンプレート"
|
59 |
|
60 |
-
#: custom-field-template/custom-field-template.php:
|
61 |
msgid ""
|
62 |
"You can not use the following words as the field key: `content`, "
|
63 |
"`post_title`, and `excerpt`, and `action`."
|
@@ -65,132 +65,145 @@ msgstr ""
|
|
65 |
"次のキーワードはフィールドキーとして使用できません。 `content`、"
|
66 |
"`post_title`、`excerpt`、`action`"
|
67 |
|
68 |
-
#: custom-field-template/custom-field-template.php:
|
69 |
-
#: custom-field-template/custom-field-template.php:
|
70 |
-
#: custom-field-template/custom-field-template.php:
|
71 |
-
#: custom-field-template/custom-field-template.php:
|
72 |
-
#: custom-field-template/custom-field-template.php:
|
73 |
-
#: custom-field-template/custom-field-template.php:
|
|
|
74 |
msgid "Options updated."
|
75 |
msgstr "オプションは更新されました。"
|
76 |
|
77 |
-
#: custom-field-template/custom-field-template.php:
|
78 |
msgid "Value Counts rebuilt."
|
79 |
msgstr "バリューカウントは再構築されました。"
|
80 |
|
81 |
-
#: custom-field-template/custom-field-template.php:
|
82 |
msgid "Tags rebuilt."
|
83 |
msgstr "タグは再構築されました。"
|
84 |
|
85 |
-
#: custom-field-template/custom-field-template.php:
|
86 |
msgid "Options imported."
|
87 |
msgstr "オプションはインポートされました。"
|
88 |
|
89 |
-
#: custom-field-template/custom-field-template.php:
|
90 |
msgid "Options resetted."
|
91 |
msgstr "オプションはリセットされました。"
|
92 |
|
93 |
-
#: custom-field-template/custom-field-template.php:
|
94 |
msgid "Options deleted."
|
95 |
msgstr "オプションは削除されました。"
|
96 |
|
97 |
-
#: custom-field-template/custom-field-template.php:
|
98 |
-
#: custom-field-template/custom-field-template.php:
|
99 |
-
#: custom-field-template/custom-field-template.php:
|
100 |
-
#: custom-field-template/custom-field-template.php:
|
101 |
-
#: custom-field-template/custom-field-template.php:
|
102 |
-
#: custom-field-template/custom-field-template.php:
|
103 |
-
#: custom-field-template/custom-field-template.php:
|
104 |
-
#: custom-field-template/custom-field-template.php:
|
105 |
-
#: custom-field-template/custom-field-template.php:
|
106 |
-
#: custom-field-template/custom-field-template.php:
|
107 |
-
#: custom-field-template/custom-field-template.php:
|
108 |
-
#: custom-field-template/custom-field-template.php:
|
109 |
-
#: custom-field-template/custom-field-template.php:
|
110 |
-
#: custom-field-template/custom-field-template.php:
|
111 |
-
#: custom-field-template/custom-field-template.php:
|
112 |
-
#: custom-field-template/custom-field-template.php:
|
113 |
msgid "Click to toggle"
|
114 |
msgstr "クリックで切替"
|
115 |
|
116 |
-
#: custom-field-template/custom-field-template.php:
|
117 |
msgid "Custom Field Template Options"
|
118 |
msgstr "カスタムフィールドテンプレートオプション"
|
119 |
|
120 |
-
#: custom-field-template/custom-field-template.php:
|
121 |
-
#: custom-field-template/custom-field-template.php:
|
122 |
-
#: custom-field-template/custom-field-template.php:
|
123 |
msgid "Disable"
|
124 |
msgstr "無効"
|
125 |
|
126 |
-
#: custom-field-template/custom-field-template.php:
|
127 |
msgid "Template Title"
|
128 |
msgstr "テンプレートタイトル"
|
129 |
|
130 |
-
#: custom-field-template/custom-field-template.php:
|
131 |
msgid "Template Instruction"
|
132 |
msgstr "テンプレートインストラクション"
|
133 |
|
134 |
-
#: custom-field-template/custom-field-template.php:
|
135 |
-
#: custom-field-template/custom-field-template.php:
|
136 |
msgid "Post Type"
|
137 |
msgstr "投稿タイプ"
|
138 |
|
139 |
-
#: custom-field-template/custom-field-template.php:
|
140 |
-
#: custom-field-template/custom-field-template.php:
|
141 |
msgid "Both"
|
142 |
msgstr "両方"
|
143 |
|
144 |
-
#: custom-field-template/custom-field-template.php:
|
145 |
-
#: custom-field-template/custom-field-template.php:
|
146 |
msgid "Post"
|
147 |
msgstr "投稿"
|
148 |
|
149 |
-
#: custom-field-template/custom-field-template.php:
|
150 |
-
#: custom-field-template/custom-field-template.php:
|
151 |
msgid "Page"
|
152 |
msgstr "ページ"
|
153 |
|
154 |
-
#: custom-field-template/custom-field-template.php:
|
155 |
-
#: custom-field-template/custom-field-template.php:
|
156 |
msgid "Custom Post Type (comma-deliminated)"
|
157 |
msgstr "カスタムポストタイプ (カンマ区切り)"
|
158 |
|
159 |
-
#: custom-field-template/custom-field-template.php:
|
160 |
msgid "Post ID (comma-deliminated)"
|
161 |
msgstr "Post ID (カンマ区切り)"
|
162 |
|
163 |
-
#: custom-field-template/custom-field-template.php:
|
164 |
-
#: custom-field-template/custom-field-template.php:
|
165 |
msgid "Category ID (comma-deliminated)"
|
166 |
-
msgstr "カテゴリーID (カンマ区切り)"
|
167 |
|
168 |
-
#: custom-field-template/custom-field-template.php:
|
169 |
msgid "Page Template file name(s) (comma-deliminated)"
|
170 |
msgstr "ページテンプレートファイル名 (カンマ区切り)"
|
171 |
|
172 |
-
#: custom-field-template/custom-field-template.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
173 |
msgid "Template Format"
|
174 |
msgstr "テンプレートフォーマット"
|
175 |
|
176 |
-
#: custom-field-template/custom-field-template.php:
|
177 |
msgid "Template Content"
|
178 |
msgstr "テンプレートコンテンツ"
|
179 |
|
180 |
-
#: custom-field-template/custom-field-template.php:
|
181 |
-
#: custom-field-template/custom-field-template.php:
|
182 |
-
#: custom-field-template/custom-field-template.php:
|
183 |
-
#: custom-field-template/custom-field-template.php:
|
184 |
-
#: custom-field-template/custom-field-template.php:
|
185 |
-
#: custom-field-template/custom-field-template.php:
|
186 |
msgid "Update Options »"
|
187 |
msgstr "オプションを更新する »"
|
188 |
|
189 |
-
#: custom-field-template/custom-field-template.php:
|
190 |
msgid "Global Settings"
|
191 |
msgstr "グローバル設定"
|
192 |
|
193 |
-
#: custom-field-template/custom-field-template.php:
|
194 |
msgid ""
|
195 |
"In case that you would like to replace custom keys by labels if `label` is "
|
196 |
"set"
|
@@ -198,30 +211,30 @@ msgstr ""
|
|
198 |
"`label`がセットされていて、カスタムフィールドのキーの代わりにラベルを表示した"
|
199 |
"い場合"
|
200 |
|
201 |
-
#: custom-field-template/custom-field-template.php:
|
202 |
msgid "Use labels in place of custom keys"
|
203 |
msgstr "カスタムフィールドのキーの代わりにラベルを使用する"
|
204 |
|
205 |
-
#: custom-field-template/custom-field-template.php:
|
206 |
msgid ""
|
207 |
"In case that you would like to add p and br tags in textareas automatically"
|
208 |
msgstr "テキストエリアでpタグ、brタグを自動的に追加したい場合"
|
209 |
|
210 |
-
#: custom-field-template/custom-field-template.php:
|
211 |
msgid "Use wpautop function"
|
212 |
msgstr "wpautop関数を使用する"
|
213 |
|
214 |
-
#: custom-field-template/custom-field-template.php:
|
215 |
msgid ""
|
216 |
"In case that you would like to save values automatically in switching "
|
217 |
"templates"
|
218 |
msgstr "テンプレート切替時自動で保存したい場合"
|
219 |
|
220 |
-
#: custom-field-template/custom-field-template.php:
|
221 |
msgid "Use the auto save in switching templates"
|
222 |
msgstr "テンプレート切替時の自動保存を使用する"
|
223 |
|
224 |
-
#: custom-field-template/custom-field-template.php:
|
225 |
msgid ""
|
226 |
"In case that you would like to disable input fields of the custom field "
|
227 |
"template temporarily"
|
@@ -229,210 +242,210 @@ msgstr ""
|
|
229 |
"一時的にカスタムフィールドテンプレートのインプットフィールドを一時的に無効に"
|
230 |
"したい場合"
|
231 |
|
232 |
-
#: custom-field-template/custom-field-template.php:
|
233 |
msgid "Use the `Disable` button. The default custom fields will be superseded."
|
234 |
msgstr "無効ボタンを使用する。デフォルトのカスタムフィールドが優先されます。"
|
235 |
|
236 |
-
#: custom-field-template/custom-field-template.php:
|
237 |
msgid "In case that you would like to forbid to use the initialize button."
|
238 |
msgstr "初期化ボタンの使用を禁止する場合"
|
239 |
|
240 |
-
#: custom-field-template/custom-field-template.php:
|
241 |
msgid "Disable the initialize button"
|
242 |
msgstr "初期化ボタンを無効にする"
|
243 |
|
244 |
-
#: custom-field-template/custom-field-template.php:
|
245 |
msgid "In case that you would like to forbid to use the save button."
|
246 |
msgstr "保存ボタンの使用を禁止する場合"
|
247 |
|
248 |
-
#: custom-field-template/custom-field-template.php:
|
249 |
msgid "Disable the save button"
|
250 |
msgstr "保存ボタンを無効にする"
|
251 |
|
252 |
-
#: custom-field-template/custom-field-template.php:
|
253 |
msgid "In case that you would like to forbid to use the default custom fields."
|
254 |
msgstr "デフォルトのカスタムフィールドの使用を禁止する場合"
|
255 |
|
256 |
-
#: custom-field-template/custom-field-template.php:
|
257 |
msgid "Disable the default custom fields"
|
258 |
msgstr "デフォルトのカスタムフィールドを無効にする"
|
259 |
|
260 |
-
#: custom-field-template/custom-field-template.php:
|
261 |
msgid "In case that you would like to forbid to use the quick edit."
|
262 |
msgstr "クイック編集の使用を禁止する場合"
|
263 |
|
264 |
-
#: custom-field-template/custom-field-template.php:
|
265 |
msgid "Disable the quick edit"
|
266 |
msgstr "クイック編集を無効にする"
|
267 |
|
268 |
-
#: custom-field-template/custom-field-template.php:
|
269 |
msgid "In case that you would like to forbid to use the admin search."
|
270 |
msgstr "管理画面検索の使用を禁止する場合"
|
271 |
|
272 |
-
#: custom-field-template/custom-field-template.php:
|
273 |
msgid "Disable the admin search"
|
274 |
msgstr "管理画面検索を無効にする"
|
275 |
|
276 |
-
#: custom-field-template/custom-field-template.php:
|
277 |
msgid ""
|
278 |
"In case that you would like to forbid to display the custom field column on "
|
279 |
"the edit post list page."
|
280 |
msgstr "編集リストページのカスタムフィールドカラムの表示を禁止する場合"
|
281 |
|
282 |
-
#: custom-field-template/custom-field-template.php:
|
283 |
msgid "Disable the custom field column (The quick edit also does not work.)"
|
284 |
msgstr "カスタムフィールドカラムを無効にする(クイック編集も動きません)"
|
285 |
|
286 |
-
#: custom-field-template/custom-field-template.php:
|
287 |
msgid ""
|
288 |
"In case that you would like to replace the box title with the template title."
|
289 |
msgstr "ボックスタイトルをテンプレートタイトルで置き換える場合"
|
290 |
|
291 |
-
#: custom-field-template/custom-field-template.php:
|
292 |
msgid "Replace the box title"
|
293 |
msgstr "ボックスタイトルを置き換える"
|
294 |
|
295 |
-
#: custom-field-template/custom-field-template.php:
|
296 |
msgid "In case that you would like to deploy the box in each template."
|
297 |
msgstr "テンプレートごとにボックスを配置する場合"
|
298 |
|
299 |
-
#: custom-field-template/custom-field-template.php:
|
300 |
msgid "Deploy the box in each template"
|
301 |
msgstr "テンプレートごとにボックスを配置する"
|
302 |
|
303 |
-
#: custom-field-template/custom-field-template.php:
|
304 |
msgid "In case that you would like to use the shortcode in the widget."
|
305 |
msgstr "ショートコードをウィジェットで使用したい場合"
|
306 |
|
307 |
-
#: custom-field-template/custom-field-template.php:
|
308 |
msgid "Use the shortcode in the widget"
|
309 |
msgstr "ショートコードをウィジェットで使用する"
|
310 |
|
311 |
-
#: custom-field-template/custom-field-template.php:
|
312 |
msgid "In case that you would like to use the shortcode in the excerpt."
|
313 |
msgstr "ショートコードを抜粋で使用したい場合"
|
314 |
|
315 |
-
#: custom-field-template/custom-field-template.php:
|
316 |
msgid "Use the shortcode in the excerpt"
|
317 |
msgstr "ショートコードを抜粋で使用する"
|
318 |
|
319 |
-
#: custom-field-template/custom-field-template.php:
|
320 |
msgid "In case that you would like to use the jQuery validation."
|
321 |
msgstr "jQuery バリデーションを使用したい場合"
|
322 |
|
323 |
-
#: custom-field-template/custom-field-template.php:
|
324 |
msgid "Use the jQuery validation"
|
325 |
msgstr "jQuery バリデーションを使用する"
|
326 |
|
327 |
-
#: custom-field-template/custom-field-template.php:
|
328 |
msgid "Text to place before every list which is called by the cft shortcode"
|
329 |
msgstr "cft ショートコードで呼ばれるリストの前のテキスト"
|
330 |
|
331 |
-
#: custom-field-template/custom-field-template.php:
|
332 |
msgid "Text to place after every list which is called by the cft shortcode"
|
333 |
msgstr "cft ショートコードで呼ばれるリストの後のテキスト"
|
334 |
|
335 |
-
#: custom-field-template/custom-field-template.php:
|
336 |
msgid "Text to place before every value which is called by the cft shortcode"
|
337 |
msgstr "cft ショートコードで呼ばれる値の前のテキスト"
|
338 |
|
339 |
-
#: custom-field-template/custom-field-template.php:
|
340 |
msgid "Text to place after every value which is called by the cft shortcode"
|
341 |
msgstr "cft ショートコードで呼ばれる値の後のテキスト"
|
342 |
|
343 |
-
#: custom-field-template/custom-field-template.php:
|
344 |
msgid "In case that you would like to hide the advertisement right column."
|
345 |
msgstr "右カラムの広告を隠す場合"
|
346 |
|
347 |
-
#: custom-field-template/custom-field-template.php:
|
348 |
msgid "I want to use a wider screen."
|
349 |
msgstr "もっと広い画面を使いたい・・・。"
|
350 |
|
351 |
-
#: custom-field-template/custom-field-template.php:
|
352 |
msgid "ADMIN CSS"
|
353 |
msgstr "ADMIN CSS"
|
354 |
|
355 |
-
#: custom-field-template/custom-field-template.php:
|
356 |
msgid "[cft] and [cftsearch] Shortcode Format"
|
357 |
msgstr "[cft] and [cftsearch] Shortcode Format"
|
358 |
|
359 |
-
#: custom-field-template/custom-field-template.php:
|
360 |
msgid "For [cft], [key] will be converted into the value of [key]."
|
361 |
msgstr "[cft]では、[key]は、[key]の値に置換されます。"
|
362 |
|
363 |
-
#: custom-field-template/custom-field-template.php:
|
364 |
msgid "For [cftsearch], [key] will be converted into the input field."
|
365 |
msgstr "[cftsearch]では、[key]は、インプットフィールドに置換されます。"
|
366 |
|
367 |
-
#: custom-field-template/custom-field-template.php:
|
368 |
-
#: custom-field-template/custom-field-template.php:
|
369 |
msgid "Use PHP"
|
370 |
msgstr "PHPを使用する"
|
371 |
|
372 |
-
#: custom-field-template/custom-field-template.php:
|
373 |
msgid "PHP CODE (Experimental Option)"
|
374 |
msgstr "PHP CODE (Experimental Option)"
|
375 |
|
376 |
-
#: custom-field-template/custom-field-template.php:
|
377 |
msgid "Are you sure to save PHP codes? Please do it at your own risk."
|
378 |
msgstr "PHPコードを保存してよろしいですか?自己責任で実行してください。"
|
379 |
|
380 |
-
#: custom-field-template/custom-field-template.php:
|
381 |
msgid "For `text` and `textarea`, you must set $value as an string."
|
382 |
msgstr "`text`と`textarea`は$valueを文字列としてセットしてください。"
|
383 |
|
384 |
-
#: custom-field-template/custom-field-template.php:
|
385 |
msgid ""
|
386 |
"For `checkbox`, `radio`, and `select`, you must set $values as an array."
|
387 |
msgstr ""
|
388 |
"`checkbox`、`radio`、`select`では、配列として$valuesをセットしてください。"
|
389 |
|
390 |
-
#: custom-field-template/custom-field-template.php:
|
391 |
msgid "Auto Hook of `the_content()` (Experimental Option)"
|
392 |
msgstr "Auto Hook of `the_content()` (Experimental Option)"
|
393 |
|
394 |
-
#: custom-field-template/custom-field-template.php:
|
395 |
msgid "Position"
|
396 |
msgstr "位置"
|
397 |
|
398 |
-
#: custom-field-template/custom-field-template.php:
|
399 |
msgid "Before the content"
|
400 |
msgstr "コンテンツの前"
|
401 |
|
402 |
-
#: custom-field-template/custom-field-template.php:
|
403 |
msgid "Before the more tag"
|
404 |
msgstr "more タグの前"
|
405 |
|
406 |
-
#: custom-field-template/custom-field-template.php:
|
407 |
msgid "After the content"
|
408 |
msgstr "コンテンツの後"
|
409 |
|
410 |
-
#: custom-field-template/custom-field-template.php:
|
411 |
#, php-format
|
412 |
msgid "Inside the content ([cfthook hook=%d])"
|
413 |
msgstr "コンテンツの中 ([cfthook hook=%d])"
|
414 |
|
415 |
-
#: custom-field-template/custom-field-template.php:
|
416 |
msgid "Content"
|
417 |
msgstr "コンテンツ"
|
418 |
|
419 |
-
#: custom-field-template/custom-field-template.php:
|
420 |
msgid "Apply to feeds"
|
421 |
msgstr "フィードに適用する"
|
422 |
|
423 |
-
#: custom-field-template/custom-field-template.php:
|
424 |
msgid "Apply also to excerpts"
|
425 |
msgstr "抜粋にも適用する"
|
426 |
|
427 |
-
#: custom-field-template/custom-field-template.php:
|
428 |
msgid "Rebuild Value Counts"
|
429 |
msgstr "バリューカウントの再構築"
|
430 |
|
431 |
-
#: custom-field-template/custom-field-template.php:
|
432 |
msgid "Are you sure to rebuild all value counts?"
|
433 |
msgstr "本当に全てのバリューカウントを再構築しますか?"
|
434 |
|
435 |
-
#: custom-field-template/custom-field-template.php:
|
436 |
msgid ""
|
437 |
"Value Counts are used for temporarily saving how many values in each key. "
|
438 |
"Set `valueCount = true` into fields."
|
@@ -440,53 +453,53 @@ msgstr ""
|
|
440 |
"バリューカウントはキーごとに値がどのくらいあるか一時的に保存するのに使用され"
|
441 |
"ます。`valueCount = true`をフィールドにセットしてください。"
|
442 |
|
443 |
-
#: custom-field-template/custom-field-template.php:
|
444 |
msgid "Rebuild Value Counts »"
|
445 |
msgstr "バリューカウントを再構築する »"
|
446 |
|
447 |
-
#: custom-field-template/custom-field-template.php:
|
448 |
msgid "Rebuild Tags"
|
449 |
msgstr "タグの再構築"
|
450 |
|
451 |
-
#: custom-field-template/custom-field-template.php:
|
452 |
msgid "Are you sure to rebuild tags?"
|
453 |
msgstr "本当に全てのタグを再構築しますか?"
|
454 |
|
455 |
-
#: custom-field-template/custom-field-template.php:
|
456 |
msgid "Rebuild Tags »"
|
457 |
msgstr "タグを再構築する »"
|
458 |
|
459 |
-
#: custom-field-template/custom-field-template.php:
|
460 |
msgid "Option List"
|
461 |
msgstr "オプションリスト"
|
462 |
|
463 |
-
#: custom-field-template/custom-field-template.php:
|
464 |
msgid "Export Options"
|
465 |
msgstr "オプションをエクスポートする"
|
466 |
|
467 |
-
#: custom-field-template/custom-field-template.php:
|
468 |
msgid "Export Options »"
|
469 |
msgstr "オプションをエクスポートする »"
|
470 |
|
471 |
-
#: custom-field-template/custom-field-template.php:
|
472 |
msgid "Import Options"
|
473 |
msgstr "オプションをインポートする"
|
474 |
|
475 |
-
#: custom-field-template/custom-field-template.php:
|
476 |
msgid "Are you sure to import options? Options you set will be overwritten."
|
477 |
msgstr ""
|
478 |
"本当にオプションをインポートしてもよろしいですか?設定したオプションは上書き"
|
479 |
"されます。"
|
480 |
|
481 |
-
#: custom-field-template/custom-field-template.php:
|
482 |
msgid "Import Options »"
|
483 |
msgstr "オプションをインポートする »"
|
484 |
|
485 |
-
#: custom-field-template/custom-field-template.php:
|
486 |
msgid "Reset Options"
|
487 |
msgstr "オプションをリセットする"
|
488 |
|
489 |
-
#: custom-field-template/custom-field-template.php:
|
490 |
msgid ""
|
491 |
"Are you sure to reset options? Options you set will be reset to the default "
|
492 |
"settings."
|
@@ -494,29 +507,29 @@ msgstr ""
|
|
494 |
"本当にオプションをリセットしてもよろしいですか?設定したオプションはデフォル"
|
495 |
"トの状態に戻ります。"
|
496 |
|
497 |
-
#: custom-field-template/custom-field-template.php:
|
498 |
msgid "Reset Options »"
|
499 |
msgstr "オプションをリセットする »"
|
500 |
|
501 |
-
#: custom-field-template/custom-field-template.php:
|
502 |
msgid "Delete Options"
|
503 |
msgstr "オプションを削除する"
|
504 |
|
505 |
-
#: custom-field-template/custom-field-template.php:
|
506 |
msgid "Are you sure to delete options? Options you set will be deleted."
|
507 |
msgstr ""
|
508 |
"本当にオプションを削除してもよろしいですか?設定したオプションは削除されま"
|
509 |
"す。"
|
510 |
|
511 |
-
#: custom-field-template/custom-field-template.php:
|
512 |
msgid "Delete Options »"
|
513 |
msgstr "オプションを削除する »"
|
514 |
|
515 |
-
#: custom-field-template/custom-field-template.php:
|
516 |
msgid "Donation"
|
517 |
msgstr "寄付"
|
518 |
|
519 |
-
#: custom-field-template/custom-field-template.php:
|
520 |
msgid ""
|
521 |
"If you liked this plugin, please make a donation via paypal! Any amount is "
|
522 |
"welcome. Your support is much appreciated."
|
@@ -524,22 +537,22 @@ msgstr ""
|
|
524 |
"このプラグインをお気に召しましたら、Paypalよりご寄付をよろしくお願いいたしま"
|
525 |
"す。"
|
526 |
|
527 |
-
#: custom-field-template/custom-field-template.php:
|
528 |
-
#: custom-field-template/custom-field-template.php:
|
529 |
msgid "Custom Field Template Manual"
|
530 |
msgstr "カスタムフィールドテンプレートマニュアル"
|
531 |
|
532 |
-
#: custom-field-template/custom-field-template.php:
|
533 |
msgid ""
|
534 |
"Do you have any trouble with the plugin setup? Please visit the following "
|
535 |
"manual site."
|
536 |
msgstr "プラグインの設定にお困りですか?マニュアルサイトをご活用ください。"
|
537 |
|
538 |
-
#: custom-field-template/custom-field-template.php:
|
539 |
msgid "CMS x WP"
|
540 |
msgstr "CMS×WP"
|
541 |
|
542 |
-
#: custom-field-template/custom-field-template.php:
|
543 |
msgid ""
|
544 |
"There are much more plugins which are useful for developing business "
|
545 |
"websites such as membership sites or ec sites. You could totally treat "
|
@@ -548,88 +561,98 @@ msgstr ""
|
|
548 |
"会員制サイトやECサイトなどのビジネスサイト構築に役立つプラグインが盛りだくさ"
|
549 |
"ん。CMS×WPのプラグインで WordPress が CMS として大いに活躍します。"
|
550 |
|
551 |
-
#: custom-field-template/custom-field-template.php:
|
552 |
msgid "WordPress plugin sales site: CMS x WP"
|
553 |
msgstr "WordPress のプラグイン販売サイト CMS×WP"
|
554 |
|
555 |
-
#: custom-field-template/custom-field-template.php:
|
556 |
-
#: custom-field-template/custom-field-template.php:
|
557 |
-
#: custom-field-template/custom-field-template.php:
|
558 |
-
#: custom-field-template/custom-field-template.php:
|
559 |
-
#: custom-field-template/custom-field-template.php:
|
560 |
-
#: custom-field-template/custom-field-template.php:
|
561 |
-
#: custom-field-template/custom-field-template.php:
|
562 |
msgid "Add New"
|
563 |
msgstr "追加"
|
564 |
|
565 |
-
#: custom-field-template/custom-field-template.php:
|
566 |
msgid "Clear"
|
567 |
msgstr "解除"
|
568 |
|
569 |
-
#: custom-field-template/custom-field-template.php:
|
570 |
msgid "Select"
|
571 |
msgstr "選択してください"
|
572 |
|
573 |
-
#: custom-field-template/custom-field-template.php:
|
574 |
#, fuzzy
|
575 |
msgid "Add an Image"
|
576 |
msgstr "画像を追加"
|
577 |
|
578 |
-
#: custom-field-template/custom-field-template.php:
|
579 |
#, fuzzy
|
580 |
msgid "Add Video"
|
581 |
msgstr "追加"
|
582 |
|
583 |
-
#: custom-field-template/custom-field-template.php:
|
584 |
#, fuzzy
|
585 |
msgid "Add Audio"
|
586 |
msgstr "追加"
|
587 |
|
588 |
-
#: custom-field-template/custom-field-template.php:
|
589 |
-
#: custom-field-template/custom-field-template.php:
|
590 |
#, fuzzy
|
591 |
msgid "Add Media"
|
592 |
msgstr "メディアピッカー"
|
593 |
|
594 |
-
#: custom-field-template/custom-field-template.php:
|
595 |
msgid "Toggle"
|
596 |
msgstr "切り替え"
|
597 |
|
598 |
-
#: custom-field-template/custom-field-template.php:
|
599 |
msgid " OR "
|
600 |
msgstr " または "
|
601 |
|
602 |
-
#: custom-field-template/custom-field-template.php:
|
603 |
msgid "Select by Media Picker"
|
604 |
msgstr "メディアピッカーで選択"
|
605 |
|
606 |
-
#: custom-field-template/custom-field-template.php:
|
607 |
-
#: custom-field-template/custom-field-template.php:
|
608 |
msgid "Delete"
|
609 |
msgstr "削除"
|
610 |
|
611 |
-
#: custom-field-template/custom-field-template.php:
|
612 |
msgid "Enable"
|
613 |
msgstr "有効"
|
614 |
|
615 |
-
#: custom-field-template/custom-field-template.php:
|
616 |
msgid "Initialize"
|
617 |
msgstr "初期化"
|
618 |
|
619 |
-
#: custom-field-template/custom-field-template.php:
|
620 |
msgid "Are you sure to reset current values? Default values will be loaded."
|
621 |
msgstr "現在値をリセットしてもよろしいですか?初期値が読み込まれます。"
|
622 |
|
623 |
-
#: custom-field-template/custom-field-template.php:
|
624 |
msgid "Save"
|
625 |
msgstr "保存"
|
626 |
|
627 |
-
#: custom-field-template/custom-field-template.php:
|
628 |
msgid "Search »"
|
629 |
msgstr "検索 »"
|
630 |
|
631 |
-
#~ msgid "
|
632 |
-
#~ msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
633 |
|
634 |
#~ msgctxt "title"
|
635 |
#~ msgid "Custom Field Template"
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Custom Field Template\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2022-09-19 09:13+0900\n"
|
6 |
+
"PO-Revision-Date: 2022-09-19 09:15+0900\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: ja_JP\n"
|
13 |
"X-Poedit-SourceCharset: UTF-8\n"
|
14 |
"X-Poedit-KeywordsList: __;_e;_c;_x:1,2c;_ex:1,2c\n"
|
15 |
"X-Poedit-Basepath: ..\n"
|
16 |
+
"X-Generator: Poedit 2.4.3\n"
|
17 |
"X-Poedit-SearchPath-0: custom-field-template\n"
|
18 |
|
19 |
+
#: custom-field-template/custom-field-template.php:182
|
|
|
20 |
#: custom-field-template/custom-field-template.php:205
|
21 |
+
#: custom-field-template/custom-field-template.php:206
|
22 |
+
#: custom-field-template/custom-field-template.php:224
|
23 |
+
#: custom-field-template/custom-field-template.php:873
|
24 |
+
#: custom-field-template/custom-field-template.php:1192
|
25 |
+
#: custom-field-template/custom-field-template.php:2818
|
26 |
+
#: custom-field-template/custom-field-template.php:2911
|
27 |
msgid "Custom Field Template"
|
28 |
msgstr "カスタムフィールドテンプレート"
|
29 |
|
30 |
+
#: custom-field-template/custom-field-template.php:234
|
31 |
msgid "Media Picker"
|
32 |
msgstr "メディアピッカー"
|
33 |
|
34 |
+
#: custom-field-template/custom-field-template.php:236
|
35 |
msgid "Use this"
|
36 |
msgstr "これを使用する"
|
37 |
|
38 |
+
#: custom-field-template/custom-field-template.php:350
|
39 |
+
#: custom-field-template/custom-field-template.php:3153
|
40 |
msgid "Load"
|
41 |
msgstr "読込"
|
42 |
|
43 |
+
#: custom-field-template/custom-field-template.php:679
|
44 |
msgid "read more"
|
45 |
msgstr "続きを表示"
|
46 |
|
47 |
+
#: custom-field-template/custom-field-template.php:700
|
48 |
+
#: custom-field-template/custom-field-template.php:712
|
49 |
msgid "Custom Fields"
|
50 |
msgstr "カスタムフィールド"
|
51 |
|
52 |
+
#: custom-field-template/custom-field-template.php:744
|
53 |
msgid "Settings"
|
54 |
msgstr "設定"
|
55 |
|
56 |
+
#: custom-field-template/custom-field-template.php:790
|
57 |
msgid "Default Template"
|
58 |
msgstr "デフォルトテンプレート"
|
59 |
|
60 |
+
#: custom-field-template/custom-field-template.php:1027
|
61 |
msgid ""
|
62 |
"You can not use the following words as the field key: `content`, "
|
63 |
"`post_title`, and `excerpt`, and `action`."
|
65 |
"次のキーワードはフィールドキーとして使用できません。 `content`、"
|
66 |
"`post_title`、`excerpt`、`action`"
|
67 |
|
68 |
+
#: custom-field-template/custom-field-template.php:1046
|
69 |
+
#: custom-field-template/custom-field-template.php:1077
|
70 |
+
#: custom-field-template/custom-field-template.php:1081
|
71 |
+
#: custom-field-template/custom-field-template.php:1085
|
72 |
+
#: custom-field-template/custom-field-template.php:1097
|
73 |
+
#: custom-field-template/custom-field-template.php:1105
|
74 |
+
#: custom-field-template/custom-field-template.php:1123
|
75 |
msgid "Options updated."
|
76 |
msgstr "オプションは更新されました。"
|
77 |
|
78 |
+
#: custom-field-template/custom-field-template.php:1127
|
79 |
msgid "Value Counts rebuilt."
|
80 |
msgstr "バリューカウントは再構築されました。"
|
81 |
|
82 |
+
#: custom-field-template/custom-field-template.php:1130
|
83 |
msgid "Tags rebuilt."
|
84 |
msgstr "タグは再構築されました。"
|
85 |
|
86 |
+
#: custom-field-template/custom-field-template.php:1139
|
87 |
msgid "Options imported."
|
88 |
msgstr "オプションはインポートされました。"
|
89 |
|
90 |
+
#: custom-field-template/custom-field-template.php:1146
|
91 |
msgid "Options resetted."
|
92 |
msgstr "オプションはリセットされました。"
|
93 |
|
94 |
+
#: custom-field-template/custom-field-template.php:1150
|
95 |
msgid "Options deleted."
|
96 |
msgstr "オプションは削除されました。"
|
97 |
|
98 |
+
#: custom-field-template/custom-field-template.php:1199
|
99 |
+
#: custom-field-template/custom-field-template.php:1291
|
100 |
+
#: custom-field-template/custom-field-template.php:1412
|
101 |
+
#: custom-field-template/custom-field-template.php:1431
|
102 |
+
#: custom-field-template/custom-field-template.php:1462
|
103 |
+
#: custom-field-template/custom-field-template.php:1495
|
104 |
+
#: custom-field-template/custom-field-template.php:1540
|
105 |
+
#: custom-field-template/custom-field-template.php:1561
|
106 |
+
#: custom-field-template/custom-field-template.php:1578
|
107 |
+
#: custom-field-template/custom-field-template.php:1755
|
108 |
+
#: custom-field-template/custom-field-template.php:1771
|
109 |
+
#: custom-field-template/custom-field-template.php:1787
|
110 |
+
#: custom-field-template/custom-field-template.php:1803
|
111 |
+
#: custom-field-template/custom-field-template.php:1822
|
112 |
+
#: custom-field-template/custom-field-template.php:1838
|
113 |
+
#: custom-field-template/custom-field-template.php:1847
|
114 |
msgid "Click to toggle"
|
115 |
msgstr "クリックで切替"
|
116 |
|
117 |
+
#: custom-field-template/custom-field-template.php:1200
|
118 |
msgid "Custom Field Template Options"
|
119 |
msgstr "カスタムフィールドテンプレートオプション"
|
120 |
|
121 |
+
#: custom-field-template/custom-field-template.php:1211
|
122 |
+
#: custom-field-template/custom-field-template.php:2961
|
123 |
+
#: custom-field-template/custom-field-template.php:2962
|
124 |
msgid "Disable"
|
125 |
msgstr "無効"
|
126 |
|
127 |
+
#: custom-field-template/custom-field-template.php:1213
|
128 |
msgid "Template Title"
|
129 |
msgstr "テンプレートタイトル"
|
130 |
|
131 |
+
#: custom-field-template/custom-field-template.php:1215
|
132 |
msgid "Template Instruction"
|
133 |
msgstr "テンプレートインストラクション"
|
134 |
|
135 |
+
#: custom-field-template/custom-field-template.php:1217
|
136 |
+
#: custom-field-template/custom-field-template.php:1514
|
137 |
msgid "Post Type"
|
138 |
msgstr "投稿タイプ"
|
139 |
|
140 |
+
#: custom-field-template/custom-field-template.php:1219
|
141 |
+
#: custom-field-template/custom-field-template.php:1515
|
142 |
msgid "Both"
|
143 |
msgstr "両方"
|
144 |
|
145 |
+
#: custom-field-template/custom-field-template.php:1220
|
146 |
+
#: custom-field-template/custom-field-template.php:1516
|
147 |
msgid "Post"
|
148 |
msgstr "投稿"
|
149 |
|
150 |
+
#: custom-field-template/custom-field-template.php:1221
|
151 |
+
#: custom-field-template/custom-field-template.php:1517
|
152 |
msgid "Page"
|
153 |
msgstr "ページ"
|
154 |
|
155 |
+
#: custom-field-template/custom-field-template.php:1222
|
156 |
+
#: custom-field-template/custom-field-template.php:1518
|
157 |
msgid "Custom Post Type (comma-deliminated)"
|
158 |
msgstr "カスタムポストタイプ (カンマ区切り)"
|
159 |
|
160 |
+
#: custom-field-template/custom-field-template.php:1224
|
161 |
msgid "Post ID (comma-deliminated)"
|
162 |
msgstr "Post ID (カンマ区切り)"
|
163 |
|
164 |
+
#: custom-field-template/custom-field-template.php:1226
|
165 |
+
#: custom-field-template/custom-field-template.php:1520
|
166 |
msgid "Category ID (comma-deliminated)"
|
167 |
+
msgstr "カテゴリー ID (カンマ区切り)"
|
168 |
|
169 |
+
#: custom-field-template/custom-field-template.php:1228
|
170 |
msgid "Page Template file name(s) (comma-deliminated)"
|
171 |
msgstr "ページテンプレートファイル名 (カンマ区切り)"
|
172 |
|
173 |
+
#: custom-field-template/custom-field-template.php:1230
|
174 |
+
msgid "User ID (comma-deliminated)"
|
175 |
+
msgstr "ユーザー ID (カンマ区切り)"
|
176 |
+
|
177 |
+
#: custom-field-template/custom-field-template.php:1232
|
178 |
+
msgid "User Login (comma-deliminated)"
|
179 |
+
msgstr "ユーザー名 (カンマ区切り)"
|
180 |
+
|
181 |
+
#: custom-field-template/custom-field-template.php:1234
|
182 |
+
msgid "User Role (comma-deliminated)"
|
183 |
+
msgstr "ユーザー権限(カンマ区切り)"
|
184 |
+
|
185 |
+
#: custom-field-template/custom-field-template.php:1236
|
186 |
msgid "Template Format"
|
187 |
msgstr "テンプレートフォーマット"
|
188 |
|
189 |
+
#: custom-field-template/custom-field-template.php:1249
|
190 |
msgid "Template Content"
|
191 |
msgstr "テンプレートコンテンツ"
|
192 |
|
193 |
+
#: custom-field-template/custom-field-template.php:1256
|
194 |
+
#: custom-field-template/custom-field-template.php:1403
|
195 |
+
#: custom-field-template/custom-field-template.php:1422
|
196 |
+
#: custom-field-template/custom-field-template.php:1453
|
197 |
+
#: custom-field-template/custom-field-template.php:1486
|
198 |
+
#: custom-field-template/custom-field-template.php:1531
|
199 |
msgid "Update Options »"
|
200 |
msgstr "オプションを更新する »"
|
201 |
|
202 |
+
#: custom-field-template/custom-field-template.php:1292
|
203 |
msgid "Global Settings"
|
204 |
msgstr "グローバル設定"
|
205 |
|
206 |
+
#: custom-field-template/custom-field-template.php:1307
|
207 |
msgid ""
|
208 |
"In case that you would like to replace custom keys by labels if `label` is "
|
209 |
"set"
|
211 |
"`label`がセットされていて、カスタムフィールドのキーの代わりにラベルを表示した"
|
212 |
"い場合"
|
213 |
|
214 |
+
#: custom-field-template/custom-field-template.php:1308
|
215 |
msgid "Use labels in place of custom keys"
|
216 |
msgstr "カスタムフィールドのキーの代わりにラベルを使用する"
|
217 |
|
218 |
+
#: custom-field-template/custom-field-template.php:1311
|
219 |
msgid ""
|
220 |
"In case that you would like to add p and br tags in textareas automatically"
|
221 |
msgstr "テキストエリアでpタグ、brタグを自動的に追加したい場合"
|
222 |
|
223 |
+
#: custom-field-template/custom-field-template.php:1312
|
224 |
msgid "Use wpautop function"
|
225 |
msgstr "wpautop関数を使用する"
|
226 |
|
227 |
+
#: custom-field-template/custom-field-template.php:1316
|
228 |
msgid ""
|
229 |
"In case that you would like to save values automatically in switching "
|
230 |
"templates"
|
231 |
msgstr "テンプレート切替時自動で保存したい場合"
|
232 |
|
233 |
+
#: custom-field-template/custom-field-template.php:1317
|
234 |
msgid "Use the auto save in switching templates"
|
235 |
msgstr "テンプレート切替時の自動保存を使用する"
|
236 |
|
237 |
+
#: custom-field-template/custom-field-template.php:1321
|
238 |
msgid ""
|
239 |
"In case that you would like to disable input fields of the custom field "
|
240 |
"template temporarily"
|
242 |
"一時的にカスタムフィールドテンプレートのインプットフィールドを一時的に無効に"
|
243 |
"したい場合"
|
244 |
|
245 |
+
#: custom-field-template/custom-field-template.php:1322
|
246 |
msgid "Use the `Disable` button. The default custom fields will be superseded."
|
247 |
msgstr "無効ボタンを使用する。デフォルトのカスタムフィールドが優先されます。"
|
248 |
|
249 |
+
#: custom-field-template/custom-field-template.php:1326
|
250 |
msgid "In case that you would like to forbid to use the initialize button."
|
251 |
msgstr "初期化ボタンの使用を禁止する場合"
|
252 |
|
253 |
+
#: custom-field-template/custom-field-template.php:1327
|
254 |
msgid "Disable the initialize button"
|
255 |
msgstr "初期化ボタンを無効にする"
|
256 |
|
257 |
+
#: custom-field-template/custom-field-template.php:1331
|
258 |
msgid "In case that you would like to forbid to use the save button."
|
259 |
msgstr "保存ボタンの使用を禁止する場合"
|
260 |
|
261 |
+
#: custom-field-template/custom-field-template.php:1332
|
262 |
msgid "Disable the save button"
|
263 |
msgstr "保存ボタンを無効にする"
|
264 |
|
265 |
+
#: custom-field-template/custom-field-template.php:1336
|
266 |
msgid "In case that you would like to forbid to use the default custom fields."
|
267 |
msgstr "デフォルトのカスタムフィールドの使用を禁止する場合"
|
268 |
|
269 |
+
#: custom-field-template/custom-field-template.php:1337
|
270 |
msgid "Disable the default custom fields"
|
271 |
msgstr "デフォルトのカスタムフィールドを無効にする"
|
272 |
|
273 |
+
#: custom-field-template/custom-field-template.php:1341
|
274 |
msgid "In case that you would like to forbid to use the quick edit."
|
275 |
msgstr "クイック編集の使用を禁止する場合"
|
276 |
|
277 |
+
#: custom-field-template/custom-field-template.php:1342
|
278 |
msgid "Disable the quick edit"
|
279 |
msgstr "クイック編集を無効にする"
|
280 |
|
281 |
+
#: custom-field-template/custom-field-template.php:1346
|
282 |
msgid "In case that you would like to forbid to use the admin search."
|
283 |
msgstr "管理画面検索の使用を禁止する場合"
|
284 |
|
285 |
+
#: custom-field-template/custom-field-template.php:1347
|
286 |
msgid "Disable the admin search"
|
287 |
msgstr "管理画面検索を無効にする"
|
288 |
|
289 |
+
#: custom-field-template/custom-field-template.php:1351
|
290 |
msgid ""
|
291 |
"In case that you would like to forbid to display the custom field column on "
|
292 |
"the edit post list page."
|
293 |
msgstr "編集リストページのカスタムフィールドカラムの表示を禁止する場合"
|
294 |
|
295 |
+
#: custom-field-template/custom-field-template.php:1352
|
296 |
msgid "Disable the custom field column (The quick edit also does not work.)"
|
297 |
msgstr "カスタムフィールドカラムを無効にする(クイック編集も動きません)"
|
298 |
|
299 |
+
#: custom-field-template/custom-field-template.php:1356
|
300 |
msgid ""
|
301 |
"In case that you would like to replace the box title with the template title."
|
302 |
msgstr "ボックスタイトルをテンプレートタイトルで置き換える場合"
|
303 |
|
304 |
+
#: custom-field-template/custom-field-template.php:1357
|
305 |
msgid "Replace the box title"
|
306 |
msgstr "ボックスタイトルを置き換える"
|
307 |
|
308 |
+
#: custom-field-template/custom-field-template.php:1361
|
309 |
msgid "In case that you would like to deploy the box in each template."
|
310 |
msgstr "テンプレートごとにボックスを配置する場合"
|
311 |
|
312 |
+
#: custom-field-template/custom-field-template.php:1362
|
313 |
msgid "Deploy the box in each template"
|
314 |
msgstr "テンプレートごとにボックスを配置する"
|
315 |
|
316 |
+
#: custom-field-template/custom-field-template.php:1366
|
317 |
msgid "In case that you would like to use the shortcode in the widget."
|
318 |
msgstr "ショートコードをウィジェットで使用したい場合"
|
319 |
|
320 |
+
#: custom-field-template/custom-field-template.php:1367
|
321 |
msgid "Use the shortcode in the widget"
|
322 |
msgstr "ショートコードをウィジェットで使用する"
|
323 |
|
324 |
+
#: custom-field-template/custom-field-template.php:1371
|
325 |
msgid "In case that you would like to use the shortcode in the excerpt."
|
326 |
msgstr "ショートコードを抜粋で使用したい場合"
|
327 |
|
328 |
+
#: custom-field-template/custom-field-template.php:1372
|
329 |
msgid "Use the shortcode in the excerpt"
|
330 |
msgstr "ショートコードを抜粋で使用する"
|
331 |
|
332 |
+
#: custom-field-template/custom-field-template.php:1376
|
333 |
msgid "In case that you would like to use the jQuery validation."
|
334 |
msgstr "jQuery バリデーションを使用したい場合"
|
335 |
|
336 |
+
#: custom-field-template/custom-field-template.php:1377
|
337 |
msgid "Use the jQuery validation"
|
338 |
msgstr "jQuery バリデーションを使用する"
|
339 |
|
340 |
+
#: custom-field-template/custom-field-template.php:1387
|
341 |
msgid "Text to place before every list which is called by the cft shortcode"
|
342 |
msgstr "cft ショートコードで呼ばれるリストの前のテキスト"
|
343 |
|
344 |
+
#: custom-field-template/custom-field-template.php:1389
|
345 |
msgid "Text to place after every list which is called by the cft shortcode"
|
346 |
msgstr "cft ショートコードで呼ばれるリストの後のテキスト"
|
347 |
|
348 |
+
#: custom-field-template/custom-field-template.php:1391
|
349 |
msgid "Text to place before every value which is called by the cft shortcode"
|
350 |
msgstr "cft ショートコードで呼ばれる値の前のテキスト"
|
351 |
|
352 |
+
#: custom-field-template/custom-field-template.php:1393
|
353 |
msgid "Text to place after every value which is called by the cft shortcode"
|
354 |
msgstr "cft ショートコードで呼ばれる値の後のテキスト"
|
355 |
|
356 |
+
#: custom-field-template/custom-field-template.php:1398
|
357 |
msgid "In case that you would like to hide the advertisement right column."
|
358 |
msgstr "右カラムの広告を隠す場合"
|
359 |
|
360 |
+
#: custom-field-template/custom-field-template.php:1399
|
361 |
msgid "I want to use a wider screen."
|
362 |
msgstr "もっと広い画面を使いたい・・・。"
|
363 |
|
364 |
+
#: custom-field-template/custom-field-template.php:1413
|
365 |
msgid "ADMIN CSS"
|
366 |
msgstr "ADMIN CSS"
|
367 |
|
368 |
+
#: custom-field-template/custom-field-template.php:1432
|
369 |
msgid "[cft] and [cftsearch] Shortcode Format"
|
370 |
msgstr "[cft] and [cftsearch] Shortcode Format"
|
371 |
|
372 |
+
#: custom-field-template/custom-field-template.php:1435
|
373 |
msgid "For [cft], [key] will be converted into the value of [key]."
|
374 |
msgstr "[cft]では、[key]は、[key]の値に置換されます。"
|
375 |
|
376 |
+
#: custom-field-template/custom-field-template.php:1436
|
377 |
msgid "For [cftsearch], [key] will be converted into the input field."
|
378 |
msgstr "[cftsearch]では、[key]は、インプットフィールドに置換されます。"
|
379 |
|
380 |
+
#: custom-field-template/custom-field-template.php:1447
|
381 |
+
#: custom-field-template/custom-field-template.php:1523
|
382 |
msgid "Use PHP"
|
383 |
msgstr "PHPを使用する"
|
384 |
|
385 |
+
#: custom-field-template/custom-field-template.php:1463
|
386 |
msgid "PHP CODE (Experimental Option)"
|
387 |
msgstr "PHP CODE (Experimental Option)"
|
388 |
|
389 |
+
#: custom-field-template/custom-field-template.php:1465
|
390 |
msgid "Are you sure to save PHP codes? Please do it at your own risk."
|
391 |
msgstr "PHPコードを保存してよろしいですか?自己責任で実行してください。"
|
392 |
|
393 |
+
#: custom-field-template/custom-field-template.php:1466
|
394 |
msgid "For `text` and `textarea`, you must set $value as an string."
|
395 |
msgstr "`text`と`textarea`は$valueを文字列としてセットしてください。"
|
396 |
|
397 |
+
#: custom-field-template/custom-field-template.php:1468
|
398 |
msgid ""
|
399 |
"For `checkbox`, `radio`, and `select`, you must set $values as an array."
|
400 |
msgstr ""
|
401 |
"`checkbox`、`radio`、`select`では、配列として$valuesをセットしてください。"
|
402 |
|
403 |
+
#: custom-field-template/custom-field-template.php:1496
|
404 |
msgid "Auto Hook of `the_content()` (Experimental Option)"
|
405 |
msgstr "Auto Hook of `the_content()` (Experimental Option)"
|
406 |
|
407 |
+
#: custom-field-template/custom-field-template.php:1508
|
408 |
msgid "Position"
|
409 |
msgstr "位置"
|
410 |
|
411 |
+
#: custom-field-template/custom-field-template.php:1509
|
412 |
msgid "Before the content"
|
413 |
msgstr "コンテンツの前"
|
414 |
|
415 |
+
#: custom-field-template/custom-field-template.php:1510
|
416 |
msgid "Before the more tag"
|
417 |
msgstr "more タグの前"
|
418 |
|
419 |
+
#: custom-field-template/custom-field-template.php:1511
|
420 |
msgid "After the content"
|
421 |
msgstr "コンテンツの後"
|
422 |
|
423 |
+
#: custom-field-template/custom-field-template.php:1512
|
424 |
#, php-format
|
425 |
msgid "Inside the content ([cfthook hook=%d])"
|
426 |
msgstr "コンテンツの中 ([cfthook hook=%d])"
|
427 |
|
428 |
+
#: custom-field-template/custom-field-template.php:1522
|
429 |
msgid "Content"
|
430 |
msgstr "コンテンツ"
|
431 |
|
432 |
+
#: custom-field-template/custom-field-template.php:1524
|
433 |
msgid "Apply to feeds"
|
434 |
msgstr "フィードに適用する"
|
435 |
|
436 |
+
#: custom-field-template/custom-field-template.php:1525
|
437 |
msgid "Apply also to excerpts"
|
438 |
msgstr "抜粋にも適用する"
|
439 |
|
440 |
+
#: custom-field-template/custom-field-template.php:1541
|
441 |
msgid "Rebuild Value Counts"
|
442 |
msgstr "バリューカウントの再構築"
|
443 |
|
444 |
+
#: custom-field-template/custom-field-template.php:1543
|
445 |
msgid "Are you sure to rebuild all value counts?"
|
446 |
msgstr "本当に全てのバリューカウントを再構築しますか?"
|
447 |
|
448 |
+
#: custom-field-template/custom-field-template.php:1547
|
449 |
msgid ""
|
450 |
"Value Counts are used for temporarily saving how many values in each key. "
|
451 |
"Set `valueCount = true` into fields."
|
453 |
"バリューカウントはキーごとに値がどのくらいあるか一時的に保存するのに使用され"
|
454 |
"ます。`valueCount = true`をフィールドにセットしてください。"
|
455 |
|
456 |
+
#: custom-field-template/custom-field-template.php:1551
|
457 |
msgid "Rebuild Value Counts »"
|
458 |
msgstr "バリューカウントを再構築する »"
|
459 |
|
460 |
+
#: custom-field-template/custom-field-template.php:1562
|
461 |
msgid "Rebuild Tags"
|
462 |
msgstr "タグの再構築"
|
463 |
|
464 |
+
#: custom-field-template/custom-field-template.php:1564
|
465 |
msgid "Are you sure to rebuild tags?"
|
466 |
msgstr "本当に全てのタグを再構築しますか?"
|
467 |
|
468 |
+
#: custom-field-template/custom-field-template.php:1568
|
469 |
msgid "Rebuild Tags »"
|
470 |
msgstr "タグを再構築する »"
|
471 |
|
472 |
+
#: custom-field-template/custom-field-template.php:1579
|
473 |
msgid "Option List"
|
474 |
msgstr "オプションリスト"
|
475 |
|
476 |
+
#: custom-field-template/custom-field-template.php:1756
|
477 |
msgid "Export Options"
|
478 |
msgstr "オプションをエクスポートする"
|
479 |
|
480 |
+
#: custom-field-template/custom-field-template.php:1762
|
481 |
msgid "Export Options »"
|
482 |
msgstr "オプションをエクスポートする »"
|
483 |
|
484 |
+
#: custom-field-template/custom-field-template.php:1772
|
485 |
msgid "Import Options"
|
486 |
msgstr "オプションをインポートする"
|
487 |
|
488 |
+
#: custom-field-template/custom-field-template.php:1774
|
489 |
msgid "Are you sure to import options? Options you set will be overwritten."
|
490 |
msgstr ""
|
491 |
"本当にオプションをインポートしてもよろしいですか?設定したオプションは上書き"
|
492 |
"されます。"
|
493 |
|
494 |
+
#: custom-field-template/custom-field-template.php:1778
|
495 |
msgid "Import Options »"
|
496 |
msgstr "オプションをインポートする »"
|
497 |
|
498 |
+
#: custom-field-template/custom-field-template.php:1788
|
499 |
msgid "Reset Options"
|
500 |
msgstr "オプションをリセットする"
|
501 |
|
502 |
+
#: custom-field-template/custom-field-template.php:1790
|
503 |
msgid ""
|
504 |
"Are you sure to reset options? Options you set will be reset to the default "
|
505 |
"settings."
|
507 |
"本当にオプションをリセットしてもよろしいですか?設定したオプションはデフォル"
|
508 |
"トの状態に戻ります。"
|
509 |
|
510 |
+
#: custom-field-template/custom-field-template.php:1794
|
511 |
msgid "Reset Options »"
|
512 |
msgstr "オプションをリセットする »"
|
513 |
|
514 |
+
#: custom-field-template/custom-field-template.php:1804
|
515 |
msgid "Delete Options"
|
516 |
msgstr "オプションを削除する"
|
517 |
|
518 |
+
#: custom-field-template/custom-field-template.php:1806
|
519 |
msgid "Are you sure to delete options? Options you set will be deleted."
|
520 |
msgstr ""
|
521 |
"本当にオプションを削除してもよろしいですか?設定したオプションは削除されま"
|
522 |
"す。"
|
523 |
|
524 |
+
#: custom-field-template/custom-field-template.php:1810
|
525 |
msgid "Delete Options »"
|
526 |
msgstr "オプションを削除する »"
|
527 |
|
528 |
+
#: custom-field-template/custom-field-template.php:1823
|
529 |
msgid "Donation"
|
530 |
msgstr "寄付"
|
531 |
|
532 |
+
#: custom-field-template/custom-field-template.php:1825
|
533 |
msgid ""
|
534 |
"If you liked this plugin, please make a donation via paypal! Any amount is "
|
535 |
"welcome. Your support is much appreciated."
|
537 |
"このプラグインをお気に召しましたら、Paypalよりご寄付をよろしくお願いいたしま"
|
538 |
"す。"
|
539 |
|
540 |
+
#: custom-field-template/custom-field-template.php:1839
|
541 |
+
#: custom-field-template/custom-field-template.php:1842
|
542 |
msgid "Custom Field Template Manual"
|
543 |
msgstr "カスタムフィールドテンプレートマニュアル"
|
544 |
|
545 |
+
#: custom-field-template/custom-field-template.php:1841
|
546 |
msgid ""
|
547 |
"Do you have any trouble with the plugin setup? Please visit the following "
|
548 |
"manual site."
|
549 |
msgstr "プラグインの設定にお困りですか?マニュアルサイトをご活用ください。"
|
550 |
|
551 |
+
#: custom-field-template/custom-field-template.php:1848
|
552 |
msgid "CMS x WP"
|
553 |
msgstr "CMS×WP"
|
554 |
|
555 |
+
#: custom-field-template/custom-field-template.php:1850
|
556 |
msgid ""
|
557 |
"There are much more plugins which are useful for developing business "
|
558 |
"websites such as membership sites or ec sites. You could totally treat "
|
561 |
"会員制サイトやECサイトなどのビジネスサイト構築に役立つプラグインが盛りだくさ"
|
562 |
"ん。CMS×WPのプラグインで WordPress が CMS として大いに活躍します。"
|
563 |
|
564 |
+
#: custom-field-template/custom-field-template.php:1851
|
565 |
msgid "WordPress plugin sales site: CMS x WP"
|
566 |
msgstr "WordPress のプラグイン販売サイト CMS×WP"
|
567 |
|
568 |
+
#: custom-field-template/custom-field-template.php:1949
|
569 |
+
#: custom-field-template/custom-field-template.php:2092
|
570 |
+
#: custom-field-template/custom-field-template.php:2184
|
571 |
+
#: custom-field-template/custom-field-template.php:2376
|
572 |
+
#: custom-field-template/custom-field-template.php:2378
|
573 |
+
#: custom-field-template/custom-field-template.php:2453
|
574 |
+
#: custom-field-template/custom-field-template.php:2715
|
575 |
msgid "Add New"
|
576 |
msgstr "追加"
|
577 |
|
578 |
+
#: custom-field-template/custom-field-template.php:2100
|
579 |
msgid "Clear"
|
580 |
msgstr "解除"
|
581 |
|
582 |
+
#: custom-field-template/custom-field-template.php:2202
|
583 |
msgid "Select"
|
584 |
msgstr "選択してください"
|
585 |
|
586 |
+
#: custom-field-template/custom-field-template.php:2298
|
587 |
#, fuzzy
|
588 |
msgid "Add an Image"
|
589 |
msgstr "画像を追加"
|
590 |
|
591 |
+
#: custom-field-template/custom-field-template.php:2303
|
592 |
#, fuzzy
|
593 |
msgid "Add Video"
|
594 |
msgstr "追加"
|
595 |
|
596 |
+
#: custom-field-template/custom-field-template.php:2308
|
597 |
#, fuzzy
|
598 |
msgid "Add Audio"
|
599 |
msgstr "追加"
|
600 |
|
601 |
+
#: custom-field-template/custom-field-template.php:2312
|
602 |
+
#: custom-field-template/custom-field-template.php:2316
|
603 |
#, fuzzy
|
604 |
msgid "Add Media"
|
605 |
msgstr "メディアピッカー"
|
606 |
|
607 |
+
#: custom-field-template/custom-field-template.php:2323
|
608 |
msgid "Toggle"
|
609 |
msgstr "切り替え"
|
610 |
|
611 |
+
#: custom-field-template/custom-field-template.php:2463
|
612 |
msgid " OR "
|
613 |
msgstr " または "
|
614 |
|
615 |
+
#: custom-field-template/custom-field-template.php:2466
|
616 |
msgid "Select by Media Picker"
|
617 |
msgstr "メディアピッカーで選択"
|
618 |
|
619 |
+
#: custom-field-template/custom-field-template.php:2491
|
620 |
+
#: custom-field-template/custom-field-template.php:2717
|
621 |
msgid "Delete"
|
622 |
msgstr "削除"
|
623 |
|
624 |
+
#: custom-field-template/custom-field-template.php:2962
|
625 |
msgid "Enable"
|
626 |
msgstr "有効"
|
627 |
|
628 |
+
#: custom-field-template/custom-field-template.php:2966
|
629 |
msgid "Initialize"
|
630 |
msgstr "初期化"
|
631 |
|
632 |
+
#: custom-field-template/custom-field-template.php:2967
|
633 |
msgid "Are you sure to reset current values? Default values will be loaded."
|
634 |
msgstr "現在値をリセットしてもよろしいですか?初期値が読み込まれます。"
|
635 |
|
636 |
+
#: custom-field-template/custom-field-template.php:2972
|
637 |
msgid "Save"
|
638 |
msgstr "保存"
|
639 |
|
640 |
+
#: custom-field-template/custom-field-template.php:3766
|
641 |
msgid "Search »"
|
642 |
msgstr "検索 »"
|
643 |
|
644 |
+
#~ msgid "Premium Settings"
|
645 |
+
#~ msgstr "プレミアム設定"
|
646 |
+
|
647 |
+
#~ msgid ""
|
648 |
+
#~ "Please <a href=\"https://www.wpcft.com/\">purchase the premium code</a> "
|
649 |
+
#~ "in order to use following functionalities."
|
650 |
+
#~ msgstr ""
|
651 |
+
#~ "以下の機能を利用するには、<a href=\"https://www.wpcft.com/\">プレミアム"
|
652 |
+
#~ "コードをご購入</a>ください。"
|
653 |
+
|
654 |
+
#~ msgid "Admin Post Search"
|
655 |
+
#~ msgstr "管理画面投稿検索"
|
656 |
|
657 |
#~ msgctxt "title"
|
658 |
#~ msgid "Custom Field Template"
|
custom-field-template.php
CHANGED
@@ -5,7 +5,7 @@ Plugin URI: https://wpgogo.com/development/custom-field-template.html
|
|
5 |
Description: This plugin adds the default custom fields on the Write Post/Page.
|
6 |
Author: Hiroaki Miyashita
|
7 |
Author URI: https://wpgogo.com/
|
8 |
-
Version: 2.5.
|
9 |
Text Domain: custom-field-template
|
10 |
Domain Path: /
|
11 |
*/
|
@@ -15,7 +15,7 @@ This program is based on the rc:custom_field_gui plugin written by Joshua Sigar.
|
|
15 |
I appreciate your efforts, Joshua.
|
16 |
*/
|
17 |
|
18 |
-
/* Copyright 2008 -
|
19 |
|
20 |
This program is free software; you can redistribute it and/or modify
|
21 |
it under the terms of the GNU General Public License as published by
|
@@ -1000,8 +1000,16 @@ type = file';
|
|
1000 |
return !empty($strip_shortcode)? $content : do_shortcode($content);
|
1001 |
else :
|
1002 |
return $content;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1003 |
endif;
|
1004 |
-
|
1005 |
}
|
1006 |
|
1007 |
function custom_field_template_admin() {
|
@@ -1026,11 +1034,14 @@ type = file';
|
|
1026 |
if ( isset($_POST["custom_field_template_post_type"][$i]) ) $options['custom_fields'][$j]['post_type'] = $_POST["custom_field_template_post_type"][$i];
|
1027 |
if ( isset($_POST["custom_field_template_custom_post_type"][$i]) ) $options['custom_fields'][$j]['custom_post_type'] = $_POST["custom_field_template_custom_post_type"][$i];
|
1028 |
if ( isset($_POST["custom_field_template_template_files"][$i]) ) $options['custom_fields'][$j]['template_files'] = $_POST["custom_field_template_template_files"][$i];
|
|
|
|
|
|
|
1029 |
if ( isset($_POST["custom_field_template_disable"][$i]) ) $options['custom_fields'][$j]['disable'] = $_POST["custom_field_template_disable"][$i];
|
1030 |
$options['custom_fields'][$j]['format'] = isset($_POST["custom_field_template_format"][$i]) ? $_POST["custom_field_template_format"][$i] : '';
|
1031 |
$j++;
|
1032 |
}
|
1033 |
-
}
|
1034 |
update_option('custom_field_template_data', $options);
|
1035 |
$message = __('Options updated.', 'custom-field-template');
|
1036 |
elseif( !empty($_POST["custom_field_template_global_settings_submit"]) ) :
|
@@ -1064,6 +1075,10 @@ type = file';
|
|
1064 |
$options['custom_field_template_disable_ad'] = isset($_POST['custom_field_template_disable_ad']) ? 1 : '';
|
1065 |
update_option('custom_field_template_data', $options);
|
1066 |
$message = __('Options updated.', 'custom-field-template');
|
|
|
|
|
|
|
|
|
1067 |
elseif ( !empty($_POST['custom_field_template_css_submit']) ) :
|
1068 |
$options['css'] = $_POST['custom_field_template_css'];
|
1069 |
update_option('custom_field_template_data', $options);
|
@@ -1120,9 +1135,11 @@ type = file';
|
|
1120 |
$import = ob_get_contents();
|
1121 |
ob_end_clean();
|
1122 |
$import = maybe_unserialize($import);
|
1123 |
-
|
1124 |
-
|
1125 |
-
|
|
|
|
|
1126 |
endif;
|
1127 |
elseif ( !empty($_POST['custom_field_template_reset_options_submit']) ) :
|
1128 |
$this->install_custom_field_template_data();
|
@@ -1212,6 +1229,12 @@ margin-bottom:0pt;
|
|
1212 |
<input type="text" name="custom_field_template_category[<?php echo $i; ?>]" id="custom_field_template_category[<?php echo $i; ?>]" value="<?php if ( isset($options['custom_fields'][$i]['category']) ) echo esc_attr(stripcslashes($options['custom_fields'][$i]['category'])); ?>" size="80"<?php if ( empty($options['custom_fields'][$i]['category']) ) : echo ' style="display:none;"'; endif; ?> /></p>
|
1213 |
<p><label for="custom_field_template_template_files[<?php echo $i; ?>]"><a href="javascript:void(0);" onclick="jQuery(this).parent().next().next().toggle();"><?php echo sprintf(__('Page Template file name(s) (comma-deliminated)', 'custom-field-template'), $i); ?></a></label>:<br />
|
1214 |
<input type="text" name="custom_field_template_template_files[<?php echo $i; ?>]" id="custom_field_template_template_files[<?php echo $i; ?>]" value="<?php if ( isset($options['custom_fields'][$i]['template_files']) ) echo esc_attr(stripcslashes($options['custom_fields'][$i]['template_files'])); ?>" size="80"<?php if ( empty($options['custom_fields'][$i]['template_files']) ) : echo ' style="display:none;"'; endif; ?> /></p>
|
|
|
|
|
|
|
|
|
|
|
|
|
1215 |
<p><label for="custom_field_template_format[<?php echo $i; ?>]"><a href="javascript:void(0);" onclick="jQuery(this).parent().next().next().toggle();"><?php echo sprintf(__('Template Format', 'custom-field-template'), $i); ?></a></label>:<br />
|
1216 |
<select name="custom_field_template_format[<?php echo $i; ?>]" <?php if ( !isset($options['custom_fields'][$i]['format']) || !is_numeric($options['custom_fields'][$i]['format']) ) : echo ' style="display:none;"'; endif; ?>>
|
1217 |
<option value=""></option>
|
@@ -1240,6 +1263,32 @@ margin-bottom:0pt;
|
|
1240 |
</div>
|
1241 |
</div>
|
1242 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1243 |
<div class="postbox closed">
|
1244 |
<div class="handlediv" title="<?php _e('Click to toggle', 'custom-field-template'); ?>"><br /></div>
|
1245 |
<h3><?php _e('Global Settings', 'custom-field-template'); ?></h3>
|
@@ -2516,6 +2565,35 @@ jQuery(this).addClass("closed");
|
|
2516 |
return;
|
2517 |
endif;
|
2518 |
endif;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2519 |
|
2520 |
if ( (!isset($post_id) || $post_id<0) && !empty($options['custom_fields'][$id]['category']) && (isset($_REQUEST['cft_mode']) && $_REQUEST['cft_mode'] != 'ajaxload') )
|
2521 |
return;
|
@@ -2594,6 +2672,8 @@ jQuery(this).addClass("closed");
|
|
2594 |
|
2595 |
$last_title = '';
|
2596 |
$fieldset_open = 0;
|
|
|
|
|
2597 |
foreach( $fields as $field_key => $field_val ) :
|
2598 |
foreach( $field_val as $title => $data ) {
|
2599 |
$class = $style = $addfield = $tmpout = $out_all = $out_key = $out_value = $duplicator = '';
|
@@ -2689,6 +2769,12 @@ jQuery(this).addClass("closed");
|
|
2689 |
else :
|
2690 |
$out .= $tmpout.$out_all;
|
2691 |
endif;
|
|
|
|
|
|
|
|
|
|
|
|
|
2692 |
}
|
2693 |
endforeach;
|
2694 |
if ( !empty($last_title) ) $format = preg_replace('/\['.preg_quote($last_title,'/').'\]/', '', $format);
|
@@ -2697,8 +2783,14 @@ jQuery(this).addClass("closed");
|
|
2697 |
$out .= '<script type="text/javascript">' . "\n" .
|
2698 |
'// <![CDATA[' . "\n";
|
2699 |
$out .= ' jQuery(document).ready(function() {' . "\n" .
|
2700 |
-
' jQuery("#custom_field_template_select").val("' . $id . '");' . "\n"
|
2701 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
2702 |
$out .= '// ]]>' . "\n" .
|
2703 |
'</script>';
|
2704 |
$out .= '</div>';
|
@@ -2904,7 +2996,7 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
|
|
2904 |
}
|
2905 |
|
2906 |
function custom_field_template_filter(){
|
2907 |
-
global $post, $wp_version;
|
2908 |
|
2909 |
$options = $this->get_custom_field_template_data();
|
2910 |
$filtered_cfts = array();
|
@@ -2952,12 +3044,21 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
|
|
2952 |
$cat_ids = isset($options['custom_fields'][$i]['category']) ? explode(',', $options['custom_fields'][$i]['category']) : array();
|
2953 |
$template_files = isset($options['custom_fields'][$i]['template_files']) ? explode(',', $options['custom_fields'][$i]['template_files']) : array();
|
2954 |
$post_ids = isset($options['custom_fields'][$i]['post']) ? explode(',', $options['custom_fields'][$i]['post']) : array();
|
|
|
|
|
|
|
2955 |
$cat_ids = array_filter( $cat_ids );
|
2956 |
$template_files = array_filter( $template_files );
|
2957 |
$post_ids = array_filter( $post_ids );
|
|
|
|
|
|
|
2958 |
$cat_ids = array_unique(array_filter(array_map('trim', $cat_ids)));
|
2959 |
$template_files = array_unique(array_filter(array_map('trim', $template_files)));
|
2960 |
$post_ids = array_unique(array_filter(array_map('trim', $post_ids)));
|
|
|
|
|
|
|
2961 |
|
2962 |
if ( !empty($template_files) ) :
|
2963 |
if ( (strstr($_SERVER['REQUEST_URI'], 'wp-admin/page-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/page.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/edit-pages.php') || strstr($_SERVER['REQUEST_URI'], 'post_type=page') || $post->post_type=='page') ) :
|
@@ -2972,8 +3073,28 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
|
|
2972 |
continue;
|
2973 |
endif;
|
2974 |
endif;
|
2975 |
-
|
2976 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2977 |
continue;
|
2978 |
endif;
|
2979 |
|
@@ -3057,7 +3178,7 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
|
|
3057 |
|
3058 |
if( !current_user_can('edit_post', $id) )
|
3059 |
return $id;
|
3060 |
-
|
3061 |
if ( empty($_REQUEST['custom-field-template-verify-key']) )
|
3062 |
return $id;
|
3063 |
|
@@ -3392,7 +3513,7 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
|
|
3392 |
if ( $data['type'] == 'fieldset_open' ) :
|
3393 |
$fieldset = array();
|
3394 |
if ( isset($_REQUEST[$this->sanitize_name($title)]) ) $fieldsetcounter = count($_REQUEST[$this->sanitize_name($title)])-1;
|
3395 |
-
else if ( isset($_REQUEST['post']) ) $fieldsetcounter = $this->get_post_meta( $_REQUEST['post'], $title, true )-1;
|
3396 |
else $fieldsetcounter = 0;
|
3397 |
if ( !empty($data['multiple']) ) : $fieldset_multiple = 1; endif;
|
3398 |
endif;
|
5 |
Description: This plugin adds the default custom fields on the Write Post/Page.
|
6 |
Author: Hiroaki Miyashita
|
7 |
Author URI: https://wpgogo.com/
|
8 |
+
Version: 2.5.7
|
9 |
Text Domain: custom-field-template
|
10 |
Domain Path: /
|
11 |
*/
|
15 |
I appreciate your efforts, Joshua.
|
16 |
*/
|
17 |
|
18 |
+
/* Copyright 2008 - 2022 Hiroaki Miyashita
|
19 |
|
20 |
This program is free software; you can redistribute it and/or modify
|
21 |
it under the terms of the GNU General Public License as published by
|
1000 |
return !empty($strip_shortcode)? $content : do_shortcode($content);
|
1001 |
else :
|
1002 |
return $content;
|
1003 |
+
endif;
|
1004 |
+
}
|
1005 |
+
|
1006 |
+
function custom_field_template_check_premium_code( $premium_code, $functionality ) {
|
1007 |
+
$host = $_SERVER['HTTP_HOST'];
|
1008 |
+
if ( password_verify( $host.$functionality, $premium_code ) ) :
|
1009 |
+
return 1;
|
1010 |
+
else :
|
1011 |
+
return 0;
|
1012 |
endif;
|
|
|
1013 |
}
|
1014 |
|
1015 |
function custom_field_template_admin() {
|
1034 |
if ( isset($_POST["custom_field_template_post_type"][$i]) ) $options['custom_fields'][$j]['post_type'] = $_POST["custom_field_template_post_type"][$i];
|
1035 |
if ( isset($_POST["custom_field_template_custom_post_type"][$i]) ) $options['custom_fields'][$j]['custom_post_type'] = $_POST["custom_field_template_custom_post_type"][$i];
|
1036 |
if ( isset($_POST["custom_field_template_template_files"][$i]) ) $options['custom_fields'][$j]['template_files'] = $_POST["custom_field_template_template_files"][$i];
|
1037 |
+
if ( isset($_POST["custom_field_template_user_id"][$i]) ) $options['custom_fields'][$j]['user_id'] = $_POST["custom_field_template_user_id"][$i];
|
1038 |
+
if ( isset($_POST["custom_field_template_user_login"][$i]) ) $options['custom_fields'][$j]['user_login'] = $_POST["custom_field_template_user_login"][$i];
|
1039 |
+
if ( isset($_POST["custom_field_template_user_role"][$i]) ) $options['custom_fields'][$j]['user_role'] = $_POST["custom_field_template_user_role"][$i];
|
1040 |
if ( isset($_POST["custom_field_template_disable"][$i]) ) $options['custom_fields'][$j]['disable'] = $_POST["custom_field_template_disable"][$i];
|
1041 |
$options['custom_fields'][$j]['format'] = isset($_POST["custom_field_template_format"][$i]) ? $_POST["custom_field_template_format"][$i] : '';
|
1042 |
$j++;
|
1043 |
}
|
1044 |
+
}
|
1045 |
update_option('custom_field_template_data', $options);
|
1046 |
$message = __('Options updated.', 'custom-field-template');
|
1047 |
elseif( !empty($_POST["custom_field_template_global_settings_submit"]) ) :
|
1075 |
$options['custom_field_template_disable_ad'] = isset($_POST['custom_field_template_disable_ad']) ? 1 : '';
|
1076 |
update_option('custom_field_template_data', $options);
|
1077 |
$message = __('Options updated.', 'custom-field-template');
|
1078 |
+
elseif( !empty($_POST["custom_field_template_premium_settings_submit"]) ) :
|
1079 |
+
$options['custom_field_template_admin_post_search'] = !empty($_POST['custom_field_template_admin_post_search']) ? $_POST['custom_field_template_admin_post_search'] : '';
|
1080 |
+
update_option('custom_field_template_data', $options);
|
1081 |
+
$message = __('Options updated.', 'custom-field-template');
|
1082 |
elseif ( !empty($_POST['custom_field_template_css_submit']) ) :
|
1083 |
$options['css'] = $_POST['custom_field_template_css'];
|
1084 |
update_option('custom_field_template_data', $options);
|
1135 |
$import = ob_get_contents();
|
1136 |
ob_end_clean();
|
1137 |
$import = maybe_unserialize($import);
|
1138 |
+
if ( 'array' == gettype( $import ) ) :
|
1139 |
+
update_option('custom_field_template_data', $import);
|
1140 |
+
$message = __('Options imported.', 'custom-field-template');
|
1141 |
+
$options = $this->get_custom_field_template_data();
|
1142 |
+
endif;
|
1143 |
endif;
|
1144 |
elseif ( !empty($_POST['custom_field_template_reset_options_submit']) ) :
|
1145 |
$this->install_custom_field_template_data();
|
1229 |
<input type="text" name="custom_field_template_category[<?php echo $i; ?>]" id="custom_field_template_category[<?php echo $i; ?>]" value="<?php if ( isset($options['custom_fields'][$i]['category']) ) echo esc_attr(stripcslashes($options['custom_fields'][$i]['category'])); ?>" size="80"<?php if ( empty($options['custom_fields'][$i]['category']) ) : echo ' style="display:none;"'; endif; ?> /></p>
|
1230 |
<p><label for="custom_field_template_template_files[<?php echo $i; ?>]"><a href="javascript:void(0);" onclick="jQuery(this).parent().next().next().toggle();"><?php echo sprintf(__('Page Template file name(s) (comma-deliminated)', 'custom-field-template'), $i); ?></a></label>:<br />
|
1231 |
<input type="text" name="custom_field_template_template_files[<?php echo $i; ?>]" id="custom_field_template_template_files[<?php echo $i; ?>]" value="<?php if ( isset($options['custom_fields'][$i]['template_files']) ) echo esc_attr(stripcslashes($options['custom_fields'][$i]['template_files'])); ?>" size="80"<?php if ( empty($options['custom_fields'][$i]['template_files']) ) : echo ' style="display:none;"'; endif; ?> /></p>
|
1232 |
+
<p><label for="custom_field_template_user_id[<?php echo $i; ?>]"><a href="javascript:void(0);" onclick="jQuery(this).parent().next().next().toggle();"><?php echo sprintf(__('User ID (comma-deliminated)', 'custom-field-template'), $i); ?></a></label>:<br />
|
1233 |
+
<input type="text" name="custom_field_template_user_id[<?php echo $i; ?>]" id="custom_field_template_user_id[<?php echo $i; ?>]" value="<?php if ( isset($options['custom_fields'][$i]['user_id']) ) echo esc_attr(stripcslashes($options['custom_fields'][$i]['user_id'])); ?>" size="80"<?php if ( empty($options['custom_fields'][$i]['user_id']) ) : echo ' style="display:none;"'; endif; ?> /></p>
|
1234 |
+
<p><label for="custom_field_template_user_login[<?php echo $i; ?>]"><a href="javascript:void(0);" onclick="jQuery(this).parent().next().next().toggle();"><?php echo sprintf(__('User Login (comma-deliminated)', 'custom-field-template'), $i); ?></a></label>:<br />
|
1235 |
+
<input type="text" name="custom_field_template_user_login[<?php echo $i; ?>]" id="custom_field_template_user_login[<?php echo $i; ?>]" value="<?php if ( isset($options['custom_fields'][$i]['user_login']) ) echo esc_attr(stripcslashes($options['custom_fields'][$i]['user_login'])); ?>" size="80"<?php if ( empty($options['custom_fields'][$i]['user_login']) ) : echo ' style="display:none;"'; endif; ?> /></p>
|
1236 |
+
<p><label for="custom_field_template_user_role[<?php echo $i; ?>]"><a href="javascript:void(0);" onclick="jQuery(this).parent().next().next().toggle();"><?php echo sprintf(__('User Role (comma-deliminated)', 'custom-field-template'), $i); ?></a></label>:<br />
|
1237 |
+
<input type="text" name="custom_field_template_user_role[<?php echo $i; ?>]" id="custom_field_template_user_role[<?php echo $i; ?>]" value="<?php if ( isset($options['custom_fields'][$i]['user_role']) ) echo esc_attr(stripcslashes($options['custom_fields'][$i]['user_role'])); ?>" size="80"<?php if ( empty($options['custom_fields'][$i]['user_role']) ) : echo ' style="display:none;"'; endif; ?> /></p>
|
1238 |
<p><label for="custom_field_template_format[<?php echo $i; ?>]"><a href="javascript:void(0);" onclick="jQuery(this).parent().next().next().toggle();"><?php echo sprintf(__('Template Format', 'custom-field-template'), $i); ?></a></label>:<br />
|
1239 |
<select name="custom_field_template_format[<?php echo $i; ?>]" <?php if ( !isset($options['custom_fields'][$i]['format']) || !is_numeric($options['custom_fields'][$i]['format']) ) : echo ' style="display:none;"'; endif; ?>>
|
1240 |
<option value=""></option>
|
1263 |
</div>
|
1264 |
</div>
|
1265 |
|
1266 |
+
<?php /*
|
1267 |
+
<div class="postbox closed">
|
1268 |
+
<div class="handlediv" title="<?php _e('Click to toggle', 'custom-field-template'); ?>"><br /></div>
|
1269 |
+
<h3><?php _e('Premium Settings', 'custom-field-template'); ?></h3>
|
1270 |
+
<div class="inside">
|
1271 |
+
<form method="post">
|
1272 |
+
<table class="form-table" style="margin-bottom:5px;">
|
1273 |
+
<tbody>
|
1274 |
+
<tr><td>
|
1275 |
+
<p><?php _e('Please <a href="https://www.wpcft.com/">purchase the premium code</a> in order to use following functionalities.', 'custom-field-template'); ?></p>
|
1276 |
+
</td>
|
1277 |
+
</tr>
|
1278 |
+
<tr><td>
|
1279 |
+
<p><label for="custom_field_template_admin_post_search"><?php _e('Admin Post Search', 'custom-field-template'); ?>: <input type="text" name="custom_field_template_admin_post_search" id="custom_field_template_admin_search" value="<?php echo !empty($options['custom_field_template_admin_post_search']) ? esc_attr($options['custom_field_template_admin_post_search']) : ''; ?>" class="regular-text" /></label> <?php if ( !empty($options['custom_field_template_admin_post_search']) && $this->custom_field_template_check_premium_code($options['custom_field_template_admin_post_search'], 'admin_post_search') ) echo 'OK'; ?></p>
|
1280 |
+
</td>
|
1281 |
+
</tr>
|
1282 |
+
<tr><td>
|
1283 |
+
<p><input type="submit" name="custom_field_template_premium_settings_submit" value="<?php _e('Update Options »', 'custom-field-template'); ?>" class="button-primary" /></p>
|
1284 |
+
</td></tr>
|
1285 |
+
</tbody>
|
1286 |
+
</table>
|
1287 |
+
</form>
|
1288 |
+
</div>
|
1289 |
+
</div>
|
1290 |
+
*/ ?>
|
1291 |
+
|
1292 |
<div class="postbox closed">
|
1293 |
<div class="handlediv" title="<?php _e('Click to toggle', 'custom-field-template'); ?>"><br /></div>
|
1294 |
<h3><?php _e('Global Settings', 'custom-field-template'); ?></h3>
|
2565 |
return;
|
2566 |
endif;
|
2567 |
endif;
|
2568 |
+
|
2569 |
+
if ( !empty($options['custom_fields'][$id]['user_id']) ) :
|
2570 |
+
$user_ids = explode(',', $options['custom_fields'][$id]['user_id']);
|
2571 |
+
$user_ids = array_filter( $user_ids );
|
2572 |
+
$user_ids = array_unique(array_filter(array_map('trim', $user_ids)));
|
2573 |
+
if ( !in_array($current_user->ID, $user_ids) )
|
2574 |
+
return;
|
2575 |
+
endif;
|
2576 |
+
|
2577 |
+
if ( !empty($options['custom_fields'][$id]['user_login']) ) :
|
2578 |
+
$user_logins = explode(',', $options['custom_fields'][$id]['user_login']);
|
2579 |
+
$user_logins = array_filter( $user_logins );
|
2580 |
+
$user_logins = array_unique(array_filter(array_map('trim', $user_logins)));
|
2581 |
+
if ( !in_array($current_user->user_login, $user_logins) )
|
2582 |
+
return;
|
2583 |
+
endif;
|
2584 |
+
|
2585 |
+
if ( !empty($options['custom_fields'][$id]['user_role']) ) :
|
2586 |
+
$user_roles = explode(',', $options['custom_fields'][$id]['user_role']);
|
2587 |
+
$user_roles = array_filter( $user_roles );
|
2588 |
+
$user_roles = array_unique(array_filter(array_map('trim', $user_roles)));
|
2589 |
+
$user_role_flag = false;
|
2590 |
+
foreach ( $user_roles as $user_role ) :
|
2591 |
+
if ( current_user_can($user_role) ) :
|
2592 |
+
$user_role_flag = true;
|
2593 |
+
endif;
|
2594 |
+
endforeach;
|
2595 |
+
if ( $user_role_flag == false ) return;
|
2596 |
+
endif;
|
2597 |
|
2598 |
if ( (!isset($post_id) || $post_id<0) && !empty($options['custom_fields'][$id]['category']) && (isset($_REQUEST['cft_mode']) && $_REQUEST['cft_mode'] != 'ajaxload') )
|
2599 |
return;
|
2672 |
|
2673 |
$last_title = '';
|
2674 |
$fieldset_open = 0;
|
2675 |
+
$require_from_group = array();
|
2676 |
+
$require_from_group_count = 0;
|
2677 |
foreach( $fields as $field_key => $field_val ) :
|
2678 |
foreach( $field_val as $title => $data ) {
|
2679 |
$class = $style = $addfield = $tmpout = $out_all = $out_key = $out_value = $duplicator = '';
|
2769 |
else :
|
2770 |
$out .= $tmpout.$out_all;
|
2771 |
endif;
|
2772 |
+
if ( isset($data['class']) && preg_match('/required_([0-9]+)_([0-9]+)/', $data['class'], $required_match) ) :
|
2773 |
+
$require_from_group[$require_from_group_count]['name'] = $title.'['.$parentSN.'][]';
|
2774 |
+
$require_from_group[$require_from_group_count]['identifier'] = $required_match[1];
|
2775 |
+
$require_from_group[$require_from_group_count]['partnumber'] = $required_match[2];
|
2776 |
+
$require_from_group_count++;
|
2777 |
+
endif;
|
2778 |
}
|
2779 |
endforeach;
|
2780 |
if ( !empty($last_title) ) $format = preg_replace('/\['.preg_quote($last_title,'/').'\]/', '', $format);
|
2783 |
$out .= '<script type="text/javascript">' . "\n" .
|
2784 |
'// <![CDATA[' . "\n";
|
2785 |
$out .= ' jQuery(document).ready(function() {' . "\n" .
|
2786 |
+
' jQuery("#custom_field_template_select").val("' . $id . '");' . "\n";
|
2787 |
+
if ( !empty($require_from_group) ) :
|
2788 |
+
for ( $i=0; $i<$require_from_group_count; $i++ ) :
|
2789 |
+
$out .= ' jQuery('."'[name='+
|
2790 |
+
jQuery.escapeSelector('".$require_from_group[$i]['name']."')+']'".').rules("add", { require_from_group: ['.$require_from_group[$i]['partnumber'].', ".required_'.$require_from_group[$i]['identifier'].'_'.$require_from_group[$i]['partnumber'].'"] });'."\n";
|
2791 |
+
endfor;
|
2792 |
+
endif;
|
2793 |
+
$out .= ' });' . "\n";
|
2794 |
$out .= '// ]]>' . "\n" .
|
2795 |
'</script>';
|
2796 |
$out .= '</div>';
|
2996 |
}
|
2997 |
|
2998 |
function custom_field_template_filter(){
|
2999 |
+
global $current_user, $post, $wp_version;
|
3000 |
|
3001 |
$options = $this->get_custom_field_template_data();
|
3002 |
$filtered_cfts = array();
|
3044 |
$cat_ids = isset($options['custom_fields'][$i]['category']) ? explode(',', $options['custom_fields'][$i]['category']) : array();
|
3045 |
$template_files = isset($options['custom_fields'][$i]['template_files']) ? explode(',', $options['custom_fields'][$i]['template_files']) : array();
|
3046 |
$post_ids = isset($options['custom_fields'][$i]['post']) ? explode(',', $options['custom_fields'][$i]['post']) : array();
|
3047 |
+
$user_ids = isset($options['custom_fields'][$i]['user_id']) ? explode(',', $options['custom_fields'][$i]['user_id']) : array();
|
3048 |
+
$user_logins = isset($options['custom_fields'][$i]['user_login']) ? explode(',', $options['custom_fields'][$i]['user_login']) : array();
|
3049 |
+
$user_roles = isset($options['custom_fields'][$i]['user_role']) ? explode(',', $options['custom_fields'][$i]['user_role']) : array();
|
3050 |
$cat_ids = array_filter( $cat_ids );
|
3051 |
$template_files = array_filter( $template_files );
|
3052 |
$post_ids = array_filter( $post_ids );
|
3053 |
+
$user_ids = array_filter( $user_ids );
|
3054 |
+
$user_logins = array_filter( $user_logins );
|
3055 |
+
$user_roles = array_filter( $user_roles );
|
3056 |
$cat_ids = array_unique(array_filter(array_map('trim', $cat_ids)));
|
3057 |
$template_files = array_unique(array_filter(array_map('trim', $template_files)));
|
3058 |
$post_ids = array_unique(array_filter(array_map('trim', $post_ids)));
|
3059 |
+
$user_ids = array_unique(array_filter(array_map('trim', $user_ids)));
|
3060 |
+
$user_logins = array_unique(array_filter(array_map('trim', $user_logins)));
|
3061 |
+
$user_roles = array_unique(array_filter(array_map('trim', $user_roles)));
|
3062 |
|
3063 |
if ( !empty($template_files) ) :
|
3064 |
if ( (strstr($_SERVER['REQUEST_URI'], 'wp-admin/page-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/page.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/edit-pages.php') || strstr($_SERVER['REQUEST_URI'], 'post_type=page') || $post->post_type=='page') ) :
|
3073 |
continue;
|
3074 |
endif;
|
3075 |
endif;
|
3076 |
+
|
3077 |
+
if ( !empty($user_ids) ) :
|
3078 |
+
if ( !in_array($current_user->ID, $user_ids) )
|
3079 |
+
continue;
|
3080 |
+
endif;
|
3081 |
+
|
3082 |
+
if ( !empty($user_logins) ) :
|
3083 |
+
if ( !in_array($current_user->user_login, $user_logins) )
|
3084 |
+
continue;
|
3085 |
+
endif;
|
3086 |
+
|
3087 |
+
if ( !empty($user_roles) ) :
|
3088 |
+
$user_role_flag = false;
|
3089 |
+
foreach ( $user_roles as $user_role ) :
|
3090 |
+
if ( current_user_can($user_role) ) :
|
3091 |
+
$user_role_flag = true;
|
3092 |
+
endif;
|
3093 |
+
endforeach;
|
3094 |
+
if ( $user_role_flag == false ) continue;
|
3095 |
+
endif;
|
3096 |
+
|
3097 |
+
if ( count($post_ids) && (!isset($_REQUEST['post']) || (isset($_REQUEST['post']) && !in_array($_REQUEST['post'], $post_ids))) ) :
|
3098 |
continue;
|
3099 |
endif;
|
3100 |
|
3178 |
|
3179 |
if( !current_user_can('edit_post', $id) )
|
3180 |
return $id;
|
3181 |
+
|
3182 |
if ( empty($_REQUEST['custom-field-template-verify-key']) )
|
3183 |
return $id;
|
3184 |
|
3513 |
if ( $data['type'] == 'fieldset_open' ) :
|
3514 |
$fieldset = array();
|
3515 |
if ( isset($_REQUEST[$this->sanitize_name($title)]) ) $fieldsetcounter = count($_REQUEST[$this->sanitize_name($title)])-1;
|
3516 |
+
else if ( isset($_REQUEST['post']) ) $fieldsetcounter = (int)$this->get_post_meta( $_REQUEST['post'], $title, true )-1;
|
3517 |
else $fieldsetcounter = 0;
|
3518 |
if ( !empty($data['multiple']) ) : $fieldset_multiple = 1; endif;
|
3519 |
endif;
|
custom-field-template.pot
CHANGED
@@ -3,7 +3,7 @@ msgid ""
|
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Custom Field Template\n"
|
5 |
"Report-Msgid-Bugs-To: \n"
|
6 |
-
"POT-Creation-Date:
|
7 |
"PO-Revision-Date: 2015-03-25 14:37+0900\n"
|
8 |
"Last-Translator: \n"
|
9 |
"Language-Team: \n"
|
@@ -12,594 +12,607 @@ msgstr ""
|
|
12 |
"Content-Transfer-Encoding: 8bit\n"
|
13 |
"X-Poedit-KeywordsList: __;_e;_c\n"
|
14 |
"X-Poedit-Basepath: ..\n"
|
15 |
-
"X-Generator: Poedit 2.
|
16 |
"X-Poedit-SearchPath-0: custom-field-template\n"
|
17 |
|
18 |
-
#: custom-field-template/custom-field-template.php:
|
19 |
-
#: custom-field-template/custom-field-template.php:204
|
20 |
#: custom-field-template/custom-field-template.php:205
|
21 |
-
#: custom-field-template/custom-field-template.php:
|
22 |
-
#: custom-field-template/custom-field-template.php:
|
23 |
-
#: custom-field-template/custom-field-template.php:
|
24 |
-
#: custom-field-template/custom-field-template.php:
|
25 |
-
#: custom-field-template/custom-field-template.php:
|
|
|
26 |
msgid "Custom Field Template"
|
27 |
msgstr ""
|
28 |
|
29 |
-
#: custom-field-template/custom-field-template.php:
|
30 |
msgid "Media Picker"
|
31 |
msgstr ""
|
32 |
|
33 |
-
#: custom-field-template/custom-field-template.php:
|
34 |
msgid "Use this"
|
35 |
msgstr ""
|
36 |
|
37 |
-
#: custom-field-template/custom-field-template.php:
|
38 |
-
#: custom-field-template/custom-field-template.php:
|
39 |
msgid "Load"
|
40 |
msgstr ""
|
41 |
|
42 |
-
#: custom-field-template/custom-field-template.php:
|
43 |
msgid "read more"
|
44 |
msgstr ""
|
45 |
|
46 |
-
#: custom-field-template/custom-field-template.php:
|
47 |
-
#: custom-field-template/custom-field-template.php:
|
48 |
msgid "Custom Fields"
|
49 |
msgstr ""
|
50 |
|
51 |
-
#: custom-field-template/custom-field-template.php:
|
52 |
msgid "Settings"
|
53 |
msgstr ""
|
54 |
|
55 |
-
#: custom-field-template/custom-field-template.php:
|
56 |
msgid "Default Template"
|
57 |
msgstr ""
|
58 |
|
59 |
-
#: custom-field-template/custom-field-template.php:
|
60 |
msgid ""
|
61 |
"You can not use the following words as the field key: `content`, "
|
62 |
"`post_title`, and `excerpt`, and `action`."
|
63 |
msgstr ""
|
64 |
|
65 |
-
#: custom-field-template/custom-field-template.php:
|
66 |
-
#: custom-field-template/custom-field-template.php:
|
67 |
-
#: custom-field-template/custom-field-template.php:
|
68 |
-
#: custom-field-template/custom-field-template.php:
|
69 |
-
#: custom-field-template/custom-field-template.php:
|
70 |
-
#: custom-field-template/custom-field-template.php:
|
|
|
71 |
msgid "Options updated."
|
72 |
msgstr ""
|
73 |
|
74 |
-
#: custom-field-template/custom-field-template.php:
|
75 |
msgid "Value Counts rebuilt."
|
76 |
msgstr ""
|
77 |
|
78 |
-
#: custom-field-template/custom-field-template.php:
|
79 |
msgid "Tags rebuilt."
|
80 |
msgstr ""
|
81 |
|
82 |
-
#: custom-field-template/custom-field-template.php:
|
83 |
msgid "Options imported."
|
84 |
msgstr ""
|
85 |
|
86 |
-
#: custom-field-template/custom-field-template.php:
|
87 |
msgid "Options resetted."
|
88 |
msgstr ""
|
89 |
|
90 |
-
#: custom-field-template/custom-field-template.php:
|
91 |
msgid "Options deleted."
|
92 |
msgstr ""
|
93 |
|
94 |
-
#: custom-field-template/custom-field-template.php:
|
95 |
-
#: custom-field-template/custom-field-template.php:
|
96 |
-
#: custom-field-template/custom-field-template.php:
|
97 |
-
#: custom-field-template/custom-field-template.php:
|
98 |
-
#: custom-field-template/custom-field-template.php:
|
99 |
-
#: custom-field-template/custom-field-template.php:
|
100 |
-
#: custom-field-template/custom-field-template.php:
|
101 |
-
#: custom-field-template/custom-field-template.php:
|
102 |
-
#: custom-field-template/custom-field-template.php:
|
103 |
-
#: custom-field-template/custom-field-template.php:
|
104 |
-
#: custom-field-template/custom-field-template.php:
|
105 |
-
#: custom-field-template/custom-field-template.php:
|
106 |
-
#: custom-field-template/custom-field-template.php:
|
107 |
-
#: custom-field-template/custom-field-template.php:
|
108 |
-
#: custom-field-template/custom-field-template.php:
|
109 |
-
#: custom-field-template/custom-field-template.php:
|
110 |
msgid "Click to toggle"
|
111 |
msgstr ""
|
112 |
|
113 |
-
#: custom-field-template/custom-field-template.php:
|
114 |
msgid "Custom Field Template Options"
|
115 |
msgstr ""
|
116 |
|
117 |
-
#: custom-field-template/custom-field-template.php:
|
118 |
-
#: custom-field-template/custom-field-template.php:
|
119 |
-
#: custom-field-template/custom-field-template.php:
|
120 |
msgid "Disable"
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: custom-field-template/custom-field-template.php:
|
124 |
msgid "Template Title"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: custom-field-template/custom-field-template.php:
|
128 |
msgid "Template Instruction"
|
129 |
msgstr ""
|
130 |
|
131 |
-
#: custom-field-template/custom-field-template.php:
|
132 |
-
#: custom-field-template/custom-field-template.php:
|
133 |
msgid "Post Type"
|
134 |
msgstr ""
|
135 |
|
136 |
-
#: custom-field-template/custom-field-template.php:
|
137 |
-
#: custom-field-template/custom-field-template.php:
|
138 |
msgid "Both"
|
139 |
msgstr ""
|
140 |
|
141 |
-
#: custom-field-template/custom-field-template.php:
|
142 |
-
#: custom-field-template/custom-field-template.php:
|
143 |
msgid "Post"
|
144 |
msgstr ""
|
145 |
|
146 |
-
#: custom-field-template/custom-field-template.php:
|
147 |
-
#: custom-field-template/custom-field-template.php:
|
148 |
msgid "Page"
|
149 |
msgstr ""
|
150 |
|
151 |
-
#: custom-field-template/custom-field-template.php:
|
152 |
-
#: custom-field-template/custom-field-template.php:
|
153 |
msgid "Custom Post Type (comma-deliminated)"
|
154 |
msgstr ""
|
155 |
|
156 |
-
#: custom-field-template/custom-field-template.php:
|
157 |
msgid "Post ID (comma-deliminated)"
|
158 |
msgstr ""
|
159 |
|
160 |
-
#: custom-field-template/custom-field-template.php:
|
161 |
-
#: custom-field-template/custom-field-template.php:
|
162 |
msgid "Category ID (comma-deliminated)"
|
163 |
msgstr ""
|
164 |
|
165 |
-
#: custom-field-template/custom-field-template.php:
|
166 |
msgid "Page Template file name(s) (comma-deliminated)"
|
167 |
msgstr ""
|
168 |
|
169 |
-
#: custom-field-template/custom-field-template.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
170 |
msgid "Template Format"
|
171 |
msgstr ""
|
172 |
|
173 |
-
#: custom-field-template/custom-field-template.php:
|
174 |
msgid "Template Content"
|
175 |
msgstr ""
|
176 |
|
177 |
-
#: custom-field-template/custom-field-template.php:
|
178 |
-
#: custom-field-template/custom-field-template.php:
|
179 |
-
#: custom-field-template/custom-field-template.php:
|
180 |
-
#: custom-field-template/custom-field-template.php:
|
181 |
-
#: custom-field-template/custom-field-template.php:
|
182 |
-
#: custom-field-template/custom-field-template.php:
|
183 |
msgid "Update Options »"
|
184 |
msgstr ""
|
185 |
|
186 |
-
#: custom-field-template/custom-field-template.php:
|
187 |
msgid "Global Settings"
|
188 |
msgstr ""
|
189 |
|
190 |
-
#: custom-field-template/custom-field-template.php:
|
191 |
msgid ""
|
192 |
"In case that you would like to replace custom keys by labels if `label` is "
|
193 |
"set"
|
194 |
msgstr ""
|
195 |
|
196 |
-
#: custom-field-template/custom-field-template.php:
|
197 |
msgid "Use labels in place of custom keys"
|
198 |
msgstr ""
|
199 |
|
200 |
-
#: custom-field-template/custom-field-template.php:
|
201 |
msgid ""
|
202 |
"In case that you would like to add p and br tags in textareas automatically"
|
203 |
msgstr ""
|
204 |
|
205 |
-
#: custom-field-template/custom-field-template.php:
|
206 |
msgid "Use wpautop function"
|
207 |
msgstr ""
|
208 |
|
209 |
-
#: custom-field-template/custom-field-template.php:
|
210 |
msgid ""
|
211 |
"In case that you would like to save values automatically in switching "
|
212 |
"templates"
|
213 |
msgstr ""
|
214 |
|
215 |
-
#: custom-field-template/custom-field-template.php:
|
216 |
msgid "Use the auto save in switching templates"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: custom-field-template/custom-field-template.php:
|
220 |
msgid ""
|
221 |
"In case that you would like to disable input fields of the custom field "
|
222 |
"template temporarily"
|
223 |
msgstr ""
|
224 |
|
225 |
-
#: custom-field-template/custom-field-template.php:
|
226 |
msgid "Use the `Disable` button. The default custom fields will be superseded."
|
227 |
msgstr ""
|
228 |
|
229 |
-
#: custom-field-template/custom-field-template.php:
|
230 |
msgid "In case that you would like to forbid to use the initialize button."
|
231 |
msgstr ""
|
232 |
|
233 |
-
#: custom-field-template/custom-field-template.php:
|
234 |
msgid "Disable the initialize button"
|
235 |
msgstr ""
|
236 |
|
237 |
-
#: custom-field-template/custom-field-template.php:
|
238 |
msgid "In case that you would like to forbid to use the save button."
|
239 |
msgstr ""
|
240 |
|
241 |
-
#: custom-field-template/custom-field-template.php:
|
242 |
msgid "Disable the save button"
|
243 |
msgstr ""
|
244 |
|
245 |
-
#: custom-field-template/custom-field-template.php:
|
246 |
msgid "In case that you would like to forbid to use the default custom fields."
|
247 |
msgstr ""
|
248 |
|
249 |
-
#: custom-field-template/custom-field-template.php:
|
250 |
msgid "Disable the default custom fields"
|
251 |
msgstr ""
|
252 |
|
253 |
-
#: custom-field-template/custom-field-template.php:
|
254 |
msgid "In case that you would like to forbid to use the quick edit."
|
255 |
msgstr ""
|
256 |
|
257 |
-
#: custom-field-template/custom-field-template.php:
|
258 |
msgid "Disable the quick edit"
|
259 |
msgstr ""
|
260 |
|
261 |
-
#: custom-field-template/custom-field-template.php:
|
262 |
msgid "In case that you would like to forbid to use the admin search."
|
263 |
msgstr ""
|
264 |
|
265 |
-
#: custom-field-template/custom-field-template.php:
|
266 |
msgid "Disable the admin search"
|
267 |
msgstr ""
|
268 |
|
269 |
-
#: custom-field-template/custom-field-template.php:
|
270 |
msgid ""
|
271 |
"In case that you would like to forbid to display the custom field column on "
|
272 |
"the edit post list page."
|
273 |
msgstr ""
|
274 |
|
275 |
-
#: custom-field-template/custom-field-template.php:
|
276 |
msgid "Disable the custom field column (The quick edit also does not work.)"
|
277 |
msgstr ""
|
278 |
|
279 |
-
#: custom-field-template/custom-field-template.php:
|
280 |
msgid ""
|
281 |
"In case that you would like to replace the box title with the template title."
|
282 |
msgstr ""
|
283 |
|
284 |
-
#: custom-field-template/custom-field-template.php:
|
285 |
msgid "Replace the box title"
|
286 |
msgstr ""
|
287 |
|
288 |
-
#: custom-field-template/custom-field-template.php:
|
289 |
msgid "In case that you would like to deploy the box in each template."
|
290 |
msgstr ""
|
291 |
|
292 |
-
#: custom-field-template/custom-field-template.php:
|
293 |
msgid "Deploy the box in each template"
|
294 |
msgstr ""
|
295 |
|
296 |
-
#: custom-field-template/custom-field-template.php:
|
297 |
msgid "In case that you would like to use the shortcode in the widget."
|
298 |
msgstr ""
|
299 |
|
300 |
-
#: custom-field-template/custom-field-template.php:
|
301 |
msgid "Use the shortcode in the widget"
|
302 |
msgstr ""
|
303 |
|
304 |
-
#: custom-field-template/custom-field-template.php:
|
305 |
msgid "In case that you would like to use the shortcode in the excerpt."
|
306 |
msgstr ""
|
307 |
|
308 |
-
#: custom-field-template/custom-field-template.php:
|
309 |
msgid "Use the shortcode in the excerpt"
|
310 |
msgstr ""
|
311 |
|
312 |
-
#: custom-field-template/custom-field-template.php:
|
313 |
msgid "In case that you would like to use the jQuery validation."
|
314 |
msgstr ""
|
315 |
|
316 |
-
#: custom-field-template/custom-field-template.php:
|
317 |
msgid "Use the jQuery validation"
|
318 |
msgstr ""
|
319 |
|
320 |
-
#: custom-field-template/custom-field-template.php:
|
321 |
msgid "Text to place before every list which is called by the cft shortcode"
|
322 |
msgstr ""
|
323 |
|
324 |
-
#: custom-field-template/custom-field-template.php:
|
325 |
msgid "Text to place after every list which is called by the cft shortcode"
|
326 |
msgstr ""
|
327 |
|
328 |
-
#: custom-field-template/custom-field-template.php:
|
329 |
msgid "Text to place before every value which is called by the cft shortcode"
|
330 |
msgstr ""
|
331 |
|
332 |
-
#: custom-field-template/custom-field-template.php:
|
333 |
msgid "Text to place after every value which is called by the cft shortcode"
|
334 |
msgstr ""
|
335 |
|
336 |
-
#: custom-field-template/custom-field-template.php:
|
337 |
msgid "In case that you would like to hide the advertisement right column."
|
338 |
msgstr ""
|
339 |
|
340 |
-
#: custom-field-template/custom-field-template.php:
|
341 |
msgid "I want to use a wider screen."
|
342 |
msgstr ""
|
343 |
|
344 |
-
#: custom-field-template/custom-field-template.php:
|
345 |
msgid "ADMIN CSS"
|
346 |
msgstr ""
|
347 |
|
348 |
-
#: custom-field-template/custom-field-template.php:
|
349 |
msgid "[cft] and [cftsearch] Shortcode Format"
|
350 |
msgstr ""
|
351 |
|
352 |
-
#: custom-field-template/custom-field-template.php:
|
353 |
msgid "For [cft], [key] will be converted into the value of [key]."
|
354 |
msgstr ""
|
355 |
|
356 |
-
#: custom-field-template/custom-field-template.php:
|
357 |
msgid "For [cftsearch], [key] will be converted into the input field."
|
358 |
msgstr ""
|
359 |
|
360 |
-
#: custom-field-template/custom-field-template.php:
|
361 |
-
#: custom-field-template/custom-field-template.php:
|
362 |
msgid "Use PHP"
|
363 |
msgstr ""
|
364 |
|
365 |
-
#: custom-field-template/custom-field-template.php:
|
366 |
msgid "PHP CODE (Experimental Option)"
|
367 |
msgstr ""
|
368 |
|
369 |
-
#: custom-field-template/custom-field-template.php:
|
370 |
msgid "Are you sure to save PHP codes? Please do it at your own risk."
|
371 |
msgstr ""
|
372 |
|
373 |
-
#: custom-field-template/custom-field-template.php:
|
374 |
msgid "For `text` and `textarea`, you must set $value as an string."
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: custom-field-template/custom-field-template.php:
|
378 |
msgid ""
|
379 |
"For `checkbox`, `radio`, and `select`, you must set $values as an array."
|
380 |
msgstr ""
|
381 |
|
382 |
-
#: custom-field-template/custom-field-template.php:
|
383 |
msgid "Auto Hook of `the_content()` (Experimental Option)"
|
384 |
msgstr ""
|
385 |
|
386 |
-
#: custom-field-template/custom-field-template.php:
|
387 |
msgid "Position"
|
388 |
msgstr ""
|
389 |
|
390 |
-
#: custom-field-template/custom-field-template.php:
|
391 |
msgid "Before the content"
|
392 |
msgstr ""
|
393 |
|
394 |
-
#: custom-field-template/custom-field-template.php:
|
395 |
msgid "Before the more tag"
|
396 |
msgstr ""
|
397 |
|
398 |
-
#: custom-field-template/custom-field-template.php:
|
399 |
msgid "After the content"
|
400 |
msgstr ""
|
401 |
|
402 |
-
#: custom-field-template/custom-field-template.php:
|
403 |
#, php-format
|
404 |
msgid "Inside the content ([cfthook hook=%d])"
|
405 |
msgstr ""
|
406 |
|
407 |
-
#: custom-field-template/custom-field-template.php:
|
408 |
msgid "Content"
|
409 |
msgstr ""
|
410 |
|
411 |
-
#: custom-field-template/custom-field-template.php:
|
412 |
msgid "Apply to feeds"
|
413 |
msgstr ""
|
414 |
|
415 |
-
#: custom-field-template/custom-field-template.php:
|
416 |
msgid "Apply also to excerpts"
|
417 |
msgstr ""
|
418 |
|
419 |
-
#: custom-field-template/custom-field-template.php:
|
420 |
msgid "Rebuild Value Counts"
|
421 |
msgstr ""
|
422 |
|
423 |
-
#: custom-field-template/custom-field-template.php:
|
424 |
msgid "Are you sure to rebuild all value counts?"
|
425 |
msgstr ""
|
426 |
|
427 |
-
#: custom-field-template/custom-field-template.php:
|
428 |
msgid ""
|
429 |
"Value Counts are used for temporarily saving how many values in each key. "
|
430 |
"Set `valueCount = true` into fields."
|
431 |
msgstr ""
|
432 |
|
433 |
-
#: custom-field-template/custom-field-template.php:
|
434 |
msgid "Rebuild Value Counts »"
|
435 |
msgstr ""
|
436 |
|
437 |
-
#: custom-field-template/custom-field-template.php:
|
438 |
msgid "Rebuild Tags"
|
439 |
msgstr ""
|
440 |
|
441 |
-
#: custom-field-template/custom-field-template.php:
|
442 |
msgid "Are you sure to rebuild tags?"
|
443 |
msgstr ""
|
444 |
|
445 |
-
#: custom-field-template/custom-field-template.php:
|
446 |
msgid "Rebuild Tags »"
|
447 |
msgstr ""
|
448 |
|
449 |
-
#: custom-field-template/custom-field-template.php:
|
450 |
msgid "Option List"
|
451 |
msgstr ""
|
452 |
|
453 |
-
#: custom-field-template/custom-field-template.php:
|
454 |
msgid "Export Options"
|
455 |
msgstr ""
|
456 |
|
457 |
-
#: custom-field-template/custom-field-template.php:
|
458 |
msgid "Export Options »"
|
459 |
msgstr ""
|
460 |
|
461 |
-
#: custom-field-template/custom-field-template.php:
|
462 |
msgid "Import Options"
|
463 |
msgstr ""
|
464 |
|
465 |
-
#: custom-field-template/custom-field-template.php:
|
466 |
msgid "Are you sure to import options? Options you set will be overwritten."
|
467 |
msgstr ""
|
468 |
|
469 |
-
#: custom-field-template/custom-field-template.php:
|
470 |
msgid "Import Options »"
|
471 |
msgstr ""
|
472 |
|
473 |
-
#: custom-field-template/custom-field-template.php:
|
474 |
msgid "Reset Options"
|
475 |
msgstr ""
|
476 |
|
477 |
-
#: custom-field-template/custom-field-template.php:
|
478 |
msgid ""
|
479 |
"Are you sure to reset options? Options you set will be reset to the default "
|
480 |
"settings."
|
481 |
msgstr ""
|
482 |
|
483 |
-
#: custom-field-template/custom-field-template.php:
|
484 |
msgid "Reset Options »"
|
485 |
msgstr ""
|
486 |
|
487 |
-
#: custom-field-template/custom-field-template.php:
|
488 |
msgid "Delete Options"
|
489 |
msgstr ""
|
490 |
|
491 |
-
#: custom-field-template/custom-field-template.php:
|
492 |
msgid "Are you sure to delete options? Options you set will be deleted."
|
493 |
msgstr ""
|
494 |
|
495 |
-
#: custom-field-template/custom-field-template.php:
|
496 |
msgid "Delete Options »"
|
497 |
msgstr ""
|
498 |
|
499 |
-
#: custom-field-template/custom-field-template.php:
|
500 |
msgid "Donation"
|
501 |
msgstr ""
|
502 |
|
503 |
-
#: custom-field-template/custom-field-template.php:
|
504 |
msgid ""
|
505 |
"If you liked this plugin, please make a donation via paypal! Any amount is "
|
506 |
"welcome. Your support is much appreciated."
|
507 |
msgstr ""
|
508 |
|
509 |
-
#: custom-field-template/custom-field-template.php:
|
510 |
-
#: custom-field-template/custom-field-template.php:
|
511 |
msgid "Custom Field Template Manual"
|
512 |
msgstr ""
|
513 |
|
514 |
-
#: custom-field-template/custom-field-template.php:
|
515 |
msgid ""
|
516 |
"Do you have any trouble with the plugin setup? Please visit the following "
|
517 |
"manual site."
|
518 |
msgstr ""
|
519 |
|
520 |
-
#: custom-field-template/custom-field-template.php:
|
521 |
msgid "CMS x WP"
|
522 |
msgstr ""
|
523 |
|
524 |
-
#: custom-field-template/custom-field-template.php:
|
525 |
msgid ""
|
526 |
"There are much more plugins which are useful for developing business "
|
527 |
"websites such as membership sites or ec sites. You could totally treat "
|
528 |
"WordPress as CMS by use of CMS x WP plugins."
|
529 |
msgstr ""
|
530 |
|
531 |
-
#: custom-field-template/custom-field-template.php:
|
532 |
msgid "WordPress plugin sales site: CMS x WP"
|
533 |
msgstr ""
|
534 |
|
535 |
-
#: custom-field-template/custom-field-template.php:
|
536 |
-
#: custom-field-template/custom-field-template.php:
|
537 |
-
#: custom-field-template/custom-field-template.php:
|
538 |
-
#: custom-field-template/custom-field-template.php:
|
539 |
-
#: custom-field-template/custom-field-template.php:
|
540 |
-
#: custom-field-template/custom-field-template.php:
|
541 |
-
#: custom-field-template/custom-field-template.php:
|
542 |
msgid "Add New"
|
543 |
msgstr ""
|
544 |
|
545 |
-
#: custom-field-template/custom-field-template.php:
|
546 |
msgid "Clear"
|
547 |
msgstr ""
|
548 |
|
549 |
-
#: custom-field-template/custom-field-template.php:
|
550 |
msgid "Select"
|
551 |
msgstr ""
|
552 |
|
553 |
-
#: custom-field-template/custom-field-template.php:
|
554 |
msgid "Add an Image"
|
555 |
msgstr ""
|
556 |
|
557 |
-
#: custom-field-template/custom-field-template.php:
|
558 |
msgid "Add Video"
|
559 |
msgstr ""
|
560 |
|
561 |
-
#: custom-field-template/custom-field-template.php:
|
562 |
msgid "Add Audio"
|
563 |
msgstr ""
|
564 |
|
565 |
-
#: custom-field-template/custom-field-template.php:
|
566 |
-
#: custom-field-template/custom-field-template.php:
|
567 |
msgid "Add Media"
|
568 |
msgstr ""
|
569 |
|
570 |
-
#: custom-field-template/custom-field-template.php:
|
571 |
msgid "Toggle"
|
572 |
msgstr ""
|
573 |
|
574 |
-
#: custom-field-template/custom-field-template.php:
|
575 |
msgid " OR "
|
576 |
msgstr ""
|
577 |
|
578 |
-
#: custom-field-template/custom-field-template.php:
|
579 |
msgid "Select by Media Picker"
|
580 |
msgstr ""
|
581 |
|
582 |
-
#: custom-field-template/custom-field-template.php:
|
583 |
-
#: custom-field-template/custom-field-template.php:
|
584 |
msgid "Delete"
|
585 |
msgstr ""
|
586 |
|
587 |
-
#: custom-field-template/custom-field-template.php:
|
588 |
msgid "Enable"
|
589 |
msgstr ""
|
590 |
|
591 |
-
#: custom-field-template/custom-field-template.php:
|
592 |
msgid "Initialize"
|
593 |
msgstr ""
|
594 |
|
595 |
-
#: custom-field-template/custom-field-template.php:
|
596 |
msgid "Are you sure to reset current values? Default values will be loaded."
|
597 |
msgstr ""
|
598 |
|
599 |
-
#: custom-field-template/custom-field-template.php:
|
600 |
msgid "Save"
|
601 |
msgstr ""
|
602 |
|
603 |
-
#: custom-field-template/custom-field-template.php:
|
604 |
msgid "Search »"
|
605 |
msgstr ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Custom Field Template\n"
|
5 |
"Report-Msgid-Bugs-To: \n"
|
6 |
+
"POT-Creation-Date: 2022-09-19 09:14+0900\n"
|
7 |
"PO-Revision-Date: 2015-03-25 14:37+0900\n"
|
8 |
"Last-Translator: \n"
|
9 |
"Language-Team: \n"
|
12 |
"Content-Transfer-Encoding: 8bit\n"
|
13 |
"X-Poedit-KeywordsList: __;_e;_c\n"
|
14 |
"X-Poedit-Basepath: ..\n"
|
15 |
+
"X-Generator: Poedit 2.4.3\n"
|
16 |
"X-Poedit-SearchPath-0: custom-field-template\n"
|
17 |
|
18 |
+
#: custom-field-template/custom-field-template.php:182
|
|
|
19 |
#: custom-field-template/custom-field-template.php:205
|
20 |
+
#: custom-field-template/custom-field-template.php:206
|
21 |
+
#: custom-field-template/custom-field-template.php:224
|
22 |
+
#: custom-field-template/custom-field-template.php:873
|
23 |
+
#: custom-field-template/custom-field-template.php:1192
|
24 |
+
#: custom-field-template/custom-field-template.php:2818
|
25 |
+
#: custom-field-template/custom-field-template.php:2911
|
26 |
msgid "Custom Field Template"
|
27 |
msgstr ""
|
28 |
|
29 |
+
#: custom-field-template/custom-field-template.php:234
|
30 |
msgid "Media Picker"
|
31 |
msgstr ""
|
32 |
|
33 |
+
#: custom-field-template/custom-field-template.php:236
|
34 |
msgid "Use this"
|
35 |
msgstr ""
|
36 |
|
37 |
+
#: custom-field-template/custom-field-template.php:350
|
38 |
+
#: custom-field-template/custom-field-template.php:3153
|
39 |
msgid "Load"
|
40 |
msgstr ""
|
41 |
|
42 |
+
#: custom-field-template/custom-field-template.php:679
|
43 |
msgid "read more"
|
44 |
msgstr ""
|
45 |
|
46 |
+
#: custom-field-template/custom-field-template.php:700
|
47 |
+
#: custom-field-template/custom-field-template.php:712
|
48 |
msgid "Custom Fields"
|
49 |
msgstr ""
|
50 |
|
51 |
+
#: custom-field-template/custom-field-template.php:744
|
52 |
msgid "Settings"
|
53 |
msgstr ""
|
54 |
|
55 |
+
#: custom-field-template/custom-field-template.php:790
|
56 |
msgid "Default Template"
|
57 |
msgstr ""
|
58 |
|
59 |
+
#: custom-field-template/custom-field-template.php:1027
|
60 |
msgid ""
|
61 |
"You can not use the following words as the field key: `content`, "
|
62 |
"`post_title`, and `excerpt`, and `action`."
|
63 |
msgstr ""
|
64 |
|
65 |
+
#: custom-field-template/custom-field-template.php:1046
|
66 |
+
#: custom-field-template/custom-field-template.php:1077
|
67 |
+
#: custom-field-template/custom-field-template.php:1081
|
68 |
+
#: custom-field-template/custom-field-template.php:1085
|
69 |
+
#: custom-field-template/custom-field-template.php:1097
|
70 |
+
#: custom-field-template/custom-field-template.php:1105
|
71 |
+
#: custom-field-template/custom-field-template.php:1123
|
72 |
msgid "Options updated."
|
73 |
msgstr ""
|
74 |
|
75 |
+
#: custom-field-template/custom-field-template.php:1127
|
76 |
msgid "Value Counts rebuilt."
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: custom-field-template/custom-field-template.php:1130
|
80 |
msgid "Tags rebuilt."
|
81 |
msgstr ""
|
82 |
|
83 |
+
#: custom-field-template/custom-field-template.php:1139
|
84 |
msgid "Options imported."
|
85 |
msgstr ""
|
86 |
|
87 |
+
#: custom-field-template/custom-field-template.php:1146
|
88 |
msgid "Options resetted."
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: custom-field-template/custom-field-template.php:1150
|
92 |
msgid "Options deleted."
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: custom-field-template/custom-field-template.php:1199
|
96 |
+
#: custom-field-template/custom-field-template.php:1291
|
97 |
+
#: custom-field-template/custom-field-template.php:1412
|
98 |
+
#: custom-field-template/custom-field-template.php:1431
|
99 |
+
#: custom-field-template/custom-field-template.php:1462
|
100 |
+
#: custom-field-template/custom-field-template.php:1495
|
101 |
+
#: custom-field-template/custom-field-template.php:1540
|
102 |
+
#: custom-field-template/custom-field-template.php:1561
|
103 |
+
#: custom-field-template/custom-field-template.php:1578
|
104 |
+
#: custom-field-template/custom-field-template.php:1755
|
105 |
+
#: custom-field-template/custom-field-template.php:1771
|
106 |
+
#: custom-field-template/custom-field-template.php:1787
|
107 |
+
#: custom-field-template/custom-field-template.php:1803
|
108 |
+
#: custom-field-template/custom-field-template.php:1822
|
109 |
+
#: custom-field-template/custom-field-template.php:1838
|
110 |
+
#: custom-field-template/custom-field-template.php:1847
|
111 |
msgid "Click to toggle"
|
112 |
msgstr ""
|
113 |
|
114 |
+
#: custom-field-template/custom-field-template.php:1200
|
115 |
msgid "Custom Field Template Options"
|
116 |
msgstr ""
|
117 |
|
118 |
+
#: custom-field-template/custom-field-template.php:1211
|
119 |
+
#: custom-field-template/custom-field-template.php:2961
|
120 |
+
#: custom-field-template/custom-field-template.php:2962
|
121 |
msgid "Disable"
|
122 |
msgstr ""
|
123 |
|
124 |
+
#: custom-field-template/custom-field-template.php:1213
|
125 |
msgid "Template Title"
|
126 |
msgstr ""
|
127 |
|
128 |
+
#: custom-field-template/custom-field-template.php:1215
|
129 |
msgid "Template Instruction"
|
130 |
msgstr ""
|
131 |
|
132 |
+
#: custom-field-template/custom-field-template.php:1217
|
133 |
+
#: custom-field-template/custom-field-template.php:1514
|
134 |
msgid "Post Type"
|
135 |
msgstr ""
|
136 |
|
137 |
+
#: custom-field-template/custom-field-template.php:1219
|
138 |
+
#: custom-field-template/custom-field-template.php:1515
|
139 |
msgid "Both"
|
140 |
msgstr ""
|
141 |
|
142 |
+
#: custom-field-template/custom-field-template.php:1220
|
143 |
+
#: custom-field-template/custom-field-template.php:1516
|
144 |
msgid "Post"
|
145 |
msgstr ""
|
146 |
|
147 |
+
#: custom-field-template/custom-field-template.php:1221
|
148 |
+
#: custom-field-template/custom-field-template.php:1517
|
149 |
msgid "Page"
|
150 |
msgstr ""
|
151 |
|
152 |
+
#: custom-field-template/custom-field-template.php:1222
|
153 |
+
#: custom-field-template/custom-field-template.php:1518
|
154 |
msgid "Custom Post Type (comma-deliminated)"
|
155 |
msgstr ""
|
156 |
|
157 |
+
#: custom-field-template/custom-field-template.php:1224
|
158 |
msgid "Post ID (comma-deliminated)"
|
159 |
msgstr ""
|
160 |
|
161 |
+
#: custom-field-template/custom-field-template.php:1226
|
162 |
+
#: custom-field-template/custom-field-template.php:1520
|
163 |
msgid "Category ID (comma-deliminated)"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: custom-field-template/custom-field-template.php:1228
|
167 |
msgid "Page Template file name(s) (comma-deliminated)"
|
168 |
msgstr ""
|
169 |
|
170 |
+
#: custom-field-template/custom-field-template.php:1230
|
171 |
+
msgid "User ID (comma-deliminated)"
|
172 |
+
msgstr ""
|
173 |
+
|
174 |
+
#: custom-field-template/custom-field-template.php:1232
|
175 |
+
msgid "User Login (comma-deliminated)"
|
176 |
+
msgstr ""
|
177 |
+
|
178 |
+
#: custom-field-template/custom-field-template.php:1234
|
179 |
+
msgid "User Role (comma-deliminated)"
|
180 |
+
msgstr ""
|
181 |
+
|
182 |
+
#: custom-field-template/custom-field-template.php:1236
|
183 |
msgid "Template Format"
|
184 |
msgstr ""
|
185 |
|
186 |
+
#: custom-field-template/custom-field-template.php:1249
|
187 |
msgid "Template Content"
|
188 |
msgstr ""
|
189 |
|
190 |
+
#: custom-field-template/custom-field-template.php:1256
|
191 |
+
#: custom-field-template/custom-field-template.php:1403
|
192 |
+
#: custom-field-template/custom-field-template.php:1422
|
193 |
+
#: custom-field-template/custom-field-template.php:1453
|
194 |
+
#: custom-field-template/custom-field-template.php:1486
|
195 |
+
#: custom-field-template/custom-field-template.php:1531
|
196 |
msgid "Update Options »"
|
197 |
msgstr ""
|
198 |
|
199 |
+
#: custom-field-template/custom-field-template.php:1292
|
200 |
msgid "Global Settings"
|
201 |
msgstr ""
|
202 |
|
203 |
+
#: custom-field-template/custom-field-template.php:1307
|
204 |
msgid ""
|
205 |
"In case that you would like to replace custom keys by labels if `label` is "
|
206 |
"set"
|
207 |
msgstr ""
|
208 |
|
209 |
+
#: custom-field-template/custom-field-template.php:1308
|
210 |
msgid "Use labels in place of custom keys"
|
211 |
msgstr ""
|
212 |
|
213 |
+
#: custom-field-template/custom-field-template.php:1311
|
214 |
msgid ""
|
215 |
"In case that you would like to add p and br tags in textareas automatically"
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: custom-field-template/custom-field-template.php:1312
|
219 |
msgid "Use wpautop function"
|
220 |
msgstr ""
|
221 |
|
222 |
+
#: custom-field-template/custom-field-template.php:1316
|
223 |
msgid ""
|
224 |
"In case that you would like to save values automatically in switching "
|
225 |
"templates"
|
226 |
msgstr ""
|
227 |
|
228 |
+
#: custom-field-template/custom-field-template.php:1317
|
229 |
msgid "Use the auto save in switching templates"
|
230 |
msgstr ""
|
231 |
|
232 |
+
#: custom-field-template/custom-field-template.php:1321
|
233 |
msgid ""
|
234 |
"In case that you would like to disable input fields of the custom field "
|
235 |
"template temporarily"
|
236 |
msgstr ""
|
237 |
|
238 |
+
#: custom-field-template/custom-field-template.php:1322
|
239 |
msgid "Use the `Disable` button. The default custom fields will be superseded."
|
240 |
msgstr ""
|
241 |
|
242 |
+
#: custom-field-template/custom-field-template.php:1326
|
243 |
msgid "In case that you would like to forbid to use the initialize button."
|
244 |
msgstr ""
|
245 |
|
246 |
+
#: custom-field-template/custom-field-template.php:1327
|
247 |
msgid "Disable the initialize button"
|
248 |
msgstr ""
|
249 |
|
250 |
+
#: custom-field-template/custom-field-template.php:1331
|
251 |
msgid "In case that you would like to forbid to use the save button."
|
252 |
msgstr ""
|
253 |
|
254 |
+
#: custom-field-template/custom-field-template.php:1332
|
255 |
msgid "Disable the save button"
|
256 |
msgstr ""
|
257 |
|
258 |
+
#: custom-field-template/custom-field-template.php:1336
|
259 |
msgid "In case that you would like to forbid to use the default custom fields."
|
260 |
msgstr ""
|
261 |
|
262 |
+
#: custom-field-template/custom-field-template.php:1337
|
263 |
msgid "Disable the default custom fields"
|
264 |
msgstr ""
|
265 |
|
266 |
+
#: custom-field-template/custom-field-template.php:1341
|
267 |
msgid "In case that you would like to forbid to use the quick edit."
|
268 |
msgstr ""
|
269 |
|
270 |
+
#: custom-field-template/custom-field-template.php:1342
|
271 |
msgid "Disable the quick edit"
|
272 |
msgstr ""
|
273 |
|
274 |
+
#: custom-field-template/custom-field-template.php:1346
|
275 |
msgid "In case that you would like to forbid to use the admin search."
|
276 |
msgstr ""
|
277 |
|
278 |
+
#: custom-field-template/custom-field-template.php:1347
|
279 |
msgid "Disable the admin search"
|
280 |
msgstr ""
|
281 |
|
282 |
+
#: custom-field-template/custom-field-template.php:1351
|
283 |
msgid ""
|
284 |
"In case that you would like to forbid to display the custom field column on "
|
285 |
"the edit post list page."
|
286 |
msgstr ""
|
287 |
|
288 |
+
#: custom-field-template/custom-field-template.php:1352
|
289 |
msgid "Disable the custom field column (The quick edit also does not work.)"
|
290 |
msgstr ""
|
291 |
|
292 |
+
#: custom-field-template/custom-field-template.php:1356
|
293 |
msgid ""
|
294 |
"In case that you would like to replace the box title with the template title."
|
295 |
msgstr ""
|
296 |
|
297 |
+
#: custom-field-template/custom-field-template.php:1357
|
298 |
msgid "Replace the box title"
|
299 |
msgstr ""
|
300 |
|
301 |
+
#: custom-field-template/custom-field-template.php:1361
|
302 |
msgid "In case that you would like to deploy the box in each template."
|
303 |
msgstr ""
|
304 |
|
305 |
+
#: custom-field-template/custom-field-template.php:1362
|
306 |
msgid "Deploy the box in each template"
|
307 |
msgstr ""
|
308 |
|
309 |
+
#: custom-field-template/custom-field-template.php:1366
|
310 |
msgid "In case that you would like to use the shortcode in the widget."
|
311 |
msgstr ""
|
312 |
|
313 |
+
#: custom-field-template/custom-field-template.php:1367
|
314 |
msgid "Use the shortcode in the widget"
|
315 |
msgstr ""
|
316 |
|
317 |
+
#: custom-field-template/custom-field-template.php:1371
|
318 |
msgid "In case that you would like to use the shortcode in the excerpt."
|
319 |
msgstr ""
|
320 |
|
321 |
+
#: custom-field-template/custom-field-template.php:1372
|
322 |
msgid "Use the shortcode in the excerpt"
|
323 |
msgstr ""
|
324 |
|
325 |
+
#: custom-field-template/custom-field-template.php:1376
|
326 |
msgid "In case that you would like to use the jQuery validation."
|
327 |
msgstr ""
|
328 |
|
329 |
+
#: custom-field-template/custom-field-template.php:1377
|
330 |
msgid "Use the jQuery validation"
|
331 |
msgstr ""
|
332 |
|
333 |
+
#: custom-field-template/custom-field-template.php:1387
|
334 |
msgid "Text to place before every list which is called by the cft shortcode"
|
335 |
msgstr ""
|
336 |
|
337 |
+
#: custom-field-template/custom-field-template.php:1389
|
338 |
msgid "Text to place after every list which is called by the cft shortcode"
|
339 |
msgstr ""
|
340 |
|
341 |
+
#: custom-field-template/custom-field-template.php:1391
|
342 |
msgid "Text to place before every value which is called by the cft shortcode"
|
343 |
msgstr ""
|
344 |
|
345 |
+
#: custom-field-template/custom-field-template.php:1393
|
346 |
msgid "Text to place after every value which is called by the cft shortcode"
|
347 |
msgstr ""
|
348 |
|
349 |
+
#: custom-field-template/custom-field-template.php:1398
|
350 |
msgid "In case that you would like to hide the advertisement right column."
|
351 |
msgstr ""
|
352 |
|
353 |
+
#: custom-field-template/custom-field-template.php:1399
|
354 |
msgid "I want to use a wider screen."
|
355 |
msgstr ""
|
356 |
|
357 |
+
#: custom-field-template/custom-field-template.php:1413
|
358 |
msgid "ADMIN CSS"
|
359 |
msgstr ""
|
360 |
|
361 |
+
#: custom-field-template/custom-field-template.php:1432
|
362 |
msgid "[cft] and [cftsearch] Shortcode Format"
|
363 |
msgstr ""
|
364 |
|
365 |
+
#: custom-field-template/custom-field-template.php:1435
|
366 |
msgid "For [cft], [key] will be converted into the value of [key]."
|
367 |
msgstr ""
|
368 |
|
369 |
+
#: custom-field-template/custom-field-template.php:1436
|
370 |
msgid "For [cftsearch], [key] will be converted into the input field."
|
371 |
msgstr ""
|
372 |
|
373 |
+
#: custom-field-template/custom-field-template.php:1447
|
374 |
+
#: custom-field-template/custom-field-template.php:1523
|
375 |
msgid "Use PHP"
|
376 |
msgstr ""
|
377 |
|
378 |
+
#: custom-field-template/custom-field-template.php:1463
|
379 |
msgid "PHP CODE (Experimental Option)"
|
380 |
msgstr ""
|
381 |
|
382 |
+
#: custom-field-template/custom-field-template.php:1465
|
383 |
msgid "Are you sure to save PHP codes? Please do it at your own risk."
|
384 |
msgstr ""
|
385 |
|
386 |
+
#: custom-field-template/custom-field-template.php:1466
|
387 |
msgid "For `text` and `textarea`, you must set $value as an string."
|
388 |
msgstr ""
|
389 |
|
390 |
+
#: custom-field-template/custom-field-template.php:1468
|
391 |
msgid ""
|
392 |
"For `checkbox`, `radio`, and `select`, you must set $values as an array."
|
393 |
msgstr ""
|
394 |
|
395 |
+
#: custom-field-template/custom-field-template.php:1496
|
396 |
msgid "Auto Hook of `the_content()` (Experimental Option)"
|
397 |
msgstr ""
|
398 |
|
399 |
+
#: custom-field-template/custom-field-template.php:1508
|
400 |
msgid "Position"
|
401 |
msgstr ""
|
402 |
|
403 |
+
#: custom-field-template/custom-field-template.php:1509
|
404 |
msgid "Before the content"
|
405 |
msgstr ""
|
406 |
|
407 |
+
#: custom-field-template/custom-field-template.php:1510
|
408 |
msgid "Before the more tag"
|
409 |
msgstr ""
|
410 |
|
411 |
+
#: custom-field-template/custom-field-template.php:1511
|
412 |
msgid "After the content"
|
413 |
msgstr ""
|
414 |
|
415 |
+
#: custom-field-template/custom-field-template.php:1512
|
416 |
#, php-format
|
417 |
msgid "Inside the content ([cfthook hook=%d])"
|
418 |
msgstr ""
|
419 |
|
420 |
+
#: custom-field-template/custom-field-template.php:1522
|
421 |
msgid "Content"
|
422 |
msgstr ""
|
423 |
|
424 |
+
#: custom-field-template/custom-field-template.php:1524
|
425 |
msgid "Apply to feeds"
|
426 |
msgstr ""
|
427 |
|
428 |
+
#: custom-field-template/custom-field-template.php:1525
|
429 |
msgid "Apply also to excerpts"
|
430 |
msgstr ""
|
431 |
|
432 |
+
#: custom-field-template/custom-field-template.php:1541
|
433 |
msgid "Rebuild Value Counts"
|
434 |
msgstr ""
|
435 |
|
436 |
+
#: custom-field-template/custom-field-template.php:1543
|
437 |
msgid "Are you sure to rebuild all value counts?"
|
438 |
msgstr ""
|
439 |
|
440 |
+
#: custom-field-template/custom-field-template.php:1547
|
441 |
msgid ""
|
442 |
"Value Counts are used for temporarily saving how many values in each key. "
|
443 |
"Set `valueCount = true` into fields."
|
444 |
msgstr ""
|
445 |
|
446 |
+
#: custom-field-template/custom-field-template.php:1551
|
447 |
msgid "Rebuild Value Counts »"
|
448 |
msgstr ""
|
449 |
|
450 |
+
#: custom-field-template/custom-field-template.php:1562
|
451 |
msgid "Rebuild Tags"
|
452 |
msgstr ""
|
453 |
|
454 |
+
#: custom-field-template/custom-field-template.php:1564
|
455 |
msgid "Are you sure to rebuild tags?"
|
456 |
msgstr ""
|
457 |
|
458 |
+
#: custom-field-template/custom-field-template.php:1568
|
459 |
msgid "Rebuild Tags »"
|
460 |
msgstr ""
|
461 |
|
462 |
+
#: custom-field-template/custom-field-template.php:1579
|
463 |
msgid "Option List"
|
464 |
msgstr ""
|
465 |
|
466 |
+
#: custom-field-template/custom-field-template.php:1756
|
467 |
msgid "Export Options"
|
468 |
msgstr ""
|
469 |
|
470 |
+
#: custom-field-template/custom-field-template.php:1762
|
471 |
msgid "Export Options »"
|
472 |
msgstr ""
|
473 |
|
474 |
+
#: custom-field-template/custom-field-template.php:1772
|
475 |
msgid "Import Options"
|
476 |
msgstr ""
|
477 |
|
478 |
+
#: custom-field-template/custom-field-template.php:1774
|
479 |
msgid "Are you sure to import options? Options you set will be overwritten."
|
480 |
msgstr ""
|
481 |
|
482 |
+
#: custom-field-template/custom-field-template.php:1778
|
483 |
msgid "Import Options »"
|
484 |
msgstr ""
|
485 |
|
486 |
+
#: custom-field-template/custom-field-template.php:1788
|
487 |
msgid "Reset Options"
|
488 |
msgstr ""
|
489 |
|
490 |
+
#: custom-field-template/custom-field-template.php:1790
|
491 |
msgid ""
|
492 |
"Are you sure to reset options? Options you set will be reset to the default "
|
493 |
"settings."
|
494 |
msgstr ""
|
495 |
|
496 |
+
#: custom-field-template/custom-field-template.php:1794
|
497 |
msgid "Reset Options »"
|
498 |
msgstr ""
|
499 |
|
500 |
+
#: custom-field-template/custom-field-template.php:1804
|
501 |
msgid "Delete Options"
|
502 |
msgstr ""
|
503 |
|
504 |
+
#: custom-field-template/custom-field-template.php:1806
|
505 |
msgid "Are you sure to delete options? Options you set will be deleted."
|
506 |
msgstr ""
|
507 |
|
508 |
+
#: custom-field-template/custom-field-template.php:1810
|
509 |
msgid "Delete Options »"
|
510 |
msgstr ""
|
511 |
|
512 |
+
#: custom-field-template/custom-field-template.php:1823
|
513 |
msgid "Donation"
|
514 |
msgstr ""
|
515 |
|
516 |
+
#: custom-field-template/custom-field-template.php:1825
|
517 |
msgid ""
|
518 |
"If you liked this plugin, please make a donation via paypal! Any amount is "
|
519 |
"welcome. Your support is much appreciated."
|
520 |
msgstr ""
|
521 |
|
522 |
+
#: custom-field-template/custom-field-template.php:1839
|
523 |
+
#: custom-field-template/custom-field-template.php:1842
|
524 |
msgid "Custom Field Template Manual"
|
525 |
msgstr ""
|
526 |
|
527 |
+
#: custom-field-template/custom-field-template.php:1841
|
528 |
msgid ""
|
529 |
"Do you have any trouble with the plugin setup? Please visit the following "
|
530 |
"manual site."
|
531 |
msgstr ""
|
532 |
|
533 |
+
#: custom-field-template/custom-field-template.php:1848
|
534 |
msgid "CMS x WP"
|
535 |
msgstr ""
|
536 |
|
537 |
+
#: custom-field-template/custom-field-template.php:1850
|
538 |
msgid ""
|
539 |
"There are much more plugins which are useful for developing business "
|
540 |
"websites such as membership sites or ec sites. You could totally treat "
|
541 |
"WordPress as CMS by use of CMS x WP plugins."
|
542 |
msgstr ""
|
543 |
|
544 |
+
#: custom-field-template/custom-field-template.php:1851
|
545 |
msgid "WordPress plugin sales site: CMS x WP"
|
546 |
msgstr ""
|
547 |
|
548 |
+
#: custom-field-template/custom-field-template.php:1949
|
549 |
+
#: custom-field-template/custom-field-template.php:2092
|
550 |
+
#: custom-field-template/custom-field-template.php:2184
|
551 |
+
#: custom-field-template/custom-field-template.php:2376
|
552 |
+
#: custom-field-template/custom-field-template.php:2378
|
553 |
+
#: custom-field-template/custom-field-template.php:2453
|
554 |
+
#: custom-field-template/custom-field-template.php:2715
|
555 |
msgid "Add New"
|
556 |
msgstr ""
|
557 |
|
558 |
+
#: custom-field-template/custom-field-template.php:2100
|
559 |
msgid "Clear"
|
560 |
msgstr ""
|
561 |
|
562 |
+
#: custom-field-template/custom-field-template.php:2202
|
563 |
msgid "Select"
|
564 |
msgstr ""
|
565 |
|
566 |
+
#: custom-field-template/custom-field-template.php:2298
|
567 |
msgid "Add an Image"
|
568 |
msgstr ""
|
569 |
|
570 |
+
#: custom-field-template/custom-field-template.php:2303
|
571 |
msgid "Add Video"
|
572 |
msgstr ""
|
573 |
|
574 |
+
#: custom-field-template/custom-field-template.php:2308
|
575 |
msgid "Add Audio"
|
576 |
msgstr ""
|
577 |
|
578 |
+
#: custom-field-template/custom-field-template.php:2312
|
579 |
+
#: custom-field-template/custom-field-template.php:2316
|
580 |
msgid "Add Media"
|
581 |
msgstr ""
|
582 |
|
583 |
+
#: custom-field-template/custom-field-template.php:2323
|
584 |
msgid "Toggle"
|
585 |
msgstr ""
|
586 |
|
587 |
+
#: custom-field-template/custom-field-template.php:2463
|
588 |
msgid " OR "
|
589 |
msgstr ""
|
590 |
|
591 |
+
#: custom-field-template/custom-field-template.php:2466
|
592 |
msgid "Select by Media Picker"
|
593 |
msgstr ""
|
594 |
|
595 |
+
#: custom-field-template/custom-field-template.php:2491
|
596 |
+
#: custom-field-template/custom-field-template.php:2717
|
597 |
msgid "Delete"
|
598 |
msgstr ""
|
599 |
|
600 |
+
#: custom-field-template/custom-field-template.php:2962
|
601 |
msgid "Enable"
|
602 |
msgstr ""
|
603 |
|
604 |
+
#: custom-field-template/custom-field-template.php:2966
|
605 |
msgid "Initialize"
|
606 |
msgstr ""
|
607 |
|
608 |
+
#: custom-field-template/custom-field-template.php:2967
|
609 |
msgid "Are you sure to reset current values? Default values will be loaded."
|
610 |
msgstr ""
|
611 |
|
612 |
+
#: custom-field-template/custom-field-template.php:2972
|
613 |
msgid "Save"
|
614 |
msgstr ""
|
615 |
|
616 |
+
#: custom-field-template/custom-field-template.php:3766
|
617 |
msgid "Search »"
|
618 |
msgstr ""
|
js/additional-methods.js
CHANGED
@@ -1,280 +1,1512 @@
|
|
1 |
-
|
2 |
-
* jQuery Validation Plugin
|
3 |
-
*
|
4 |
-
* http://bassistance.de/jquery-plugins/jquery-plugin-validation/
|
5 |
-
* http://docs.jquery.com/Plugins/Validation
|
6 |
*
|
7 |
-
*
|
8 |
*
|
9 |
-
*
|
10 |
-
*
|
11 |
-
* http://www.gnu.org/licenses/gpl.html
|
12 |
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
|
14 |
-
(
|
15 |
-
|
16 |
-
function stripHtml(value) {
|
17 |
-
// remove html tags and space chars
|
18 |
-
return value.replace(/<.[^<>]*?>/g, ' ').replace(/ | /gi, ' ')
|
19 |
-
// remove numbers and punctuation
|
20 |
-
.replace(/[0-9.(),;:!?%#$'"_+=\/-]*/g,'');
|
21 |
-
}
|
22 |
-
jQuery.validator.addMethod("maxWords", function(value, element, params) {
|
23 |
-
return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length < params;
|
24 |
-
}, jQuery.validator.format("Please enter {0} words or less."));
|
25 |
-
|
26 |
-
jQuery.validator.addMethod("minWords", function(value, element, params) {
|
27 |
-
return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length >= params;
|
28 |
-
}, jQuery.validator.format("Please enter at least {0} words."));
|
29 |
-
|
30 |
-
jQuery.validator.addMethod("rangeWords", function(value, element, params) {
|
31 |
-
return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length >= params[0] && value.match(/bw+b/g).length < params[1];
|
32 |
-
}, jQuery.validator.format("Please enter between {0} and {1} words."));
|
33 |
-
|
34 |
-
})();
|
35 |
-
|
36 |
-
jQuery.validator.addMethod("letterswithbasicpunc", function(value, element) {
|
37 |
-
return this.optional(element) || /^[a-z-.,()'\"\s]+$/i.test(value);
|
38 |
-
}, "Letters or punctuation only please");
|
39 |
-
|
40 |
-
jQuery.validator.addMethod("alphanumeric", function(value, element) {
|
41 |
-
return this.optional(element) || /^\w+$/i.test(value);
|
42 |
-
}, "Letters, numbers, spaces or underscores only please");
|
43 |
-
|
44 |
-
jQuery.validator.addMethod("lettersonly", function(value, element) {
|
45 |
-
return this.optional(element) || /^[a-z]+$/i.test(value);
|
46 |
-
}, "Letters only please");
|
47 |
-
|
48 |
-
jQuery.validator.addMethod("nowhitespace", function(value, element) {
|
49 |
-
return this.optional(element) || /^\S+$/i.test(value);
|
50 |
-
}, "No white space please");
|
51 |
-
|
52 |
-
jQuery.validator.addMethod("ziprange", function(value, element) {
|
53 |
-
return this.optional(element) || /^90[2-5]\d\{2}-\d{4}$/.test(value);
|
54 |
-
}, "Your ZIP-code must be in the range 902xx-xxxx to 905-xx-xxxx");
|
55 |
-
|
56 |
-
jQuery.validator.addMethod("integer", function(value, element) {
|
57 |
-
return this.optional(element) || /^-?\d+$/.test(value);
|
58 |
-
}, "A positive or negative non-decimal number please");
|
59 |
|
60 |
/**
|
61 |
-
*
|
62 |
-
*
|
63 |
-
*
|
64 |
-
*
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
104 |
}
|
105 |
-
|
106 |
-
if(cd == 10){cd = "X";}
|
107 |
-
if(cd == cdv){return true;}
|
108 |
-
return false;
|
109 |
-
},
|
110 |
-
"The specified vehicle identification number (VIN) is invalid."
|
111 |
-
);
|
112 |
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
var check = false;
|
136 |
-
var re = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
|
137 |
-
if( re.test(value)){
|
138 |
-
var adata = value.split('/');
|
139 |
-
var gg = parseInt(adata[0],10);
|
140 |
-
var mm = parseInt(adata[1],10);
|
141 |
-
var aaaa = parseInt(adata[2],10);
|
142 |
-
var xdata = new Date(aaaa,mm-1,gg);
|
143 |
-
if ( ( xdata.getFullYear() == aaaa ) && ( xdata.getMonth () == mm - 1 ) && ( xdata.getDate() == gg ) )
|
144 |
-
check = true;
|
145 |
-
else
|
146 |
-
check = false;
|
147 |
-
} else
|
148 |
-
check = false;
|
149 |
-
return this.optional(element) || check;
|
150 |
-
},
|
151 |
-
"Please enter a correct date"
|
152 |
-
);
|
153 |
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
158 |
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
);
|
|
|
163 |
|
164 |
/**
|
165 |
-
*
|
166 |
-
*
|
167 |
-
*
|
168 |
-
*
|
169 |
-
*
|
170 |
-
*
|
171 |
-
*
|
172 |
-
*
|
173 |
-
*
|
174 |
-
*
|
175 |
-
*
|
176 |
-
*
|
177 |
-
*
|
178 |
-
* 111-123-5434
|
179 |
-
* and not
|
180 |
-
* 212 123 4567
|
181 |
*/
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
|
186 |
-
}, "Please specify a valid phone number");
|
187 |
-
|
188 |
-
jQuery.validator.addMethod('phoneUK', function(phone_number, element) {
|
189 |
-
return this.optional(element) || phone_number.length > 9 &&
|
190 |
-
phone_number.match(/^(\(?(0|\+44)[1-9]{1}\d{1,4}?\)?\s?\d{3,4}\s?\d{3,4})$/);
|
191 |
-
}, 'Please specify a valid phone number');
|
192 |
-
|
193 |
-
jQuery.validator.addMethod('mobileUK', function(phone_number, element) {
|
194 |
-
return this.optional(element) || phone_number.length > 9 &&
|
195 |
-
phone_number.match(/^((0|\+44)7(5|6|7|8|9){1}\d{2}\s?\d{6})$/);
|
196 |
-
}, 'Please specify a valid mobile number');
|
197 |
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
219 |
return false;
|
220 |
-
|
221 |
-
|
222 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
var validTypes = 0x0000;
|
224 |
-
|
225 |
-
if (param.mastercard)
|
226 |
validTypes |= 0x0001;
|
227 |
-
|
|
|
228 |
validTypes |= 0x0002;
|
229 |
-
|
|
|
230 |
validTypes |= 0x0004;
|
231 |
-
|
|
|
232 |
validTypes |= 0x0008;
|
233 |
-
|
|
|
234 |
validTypes |= 0x0010;
|
235 |
-
|
|
|
236 |
validTypes |= 0x0020;
|
237 |
-
|
|
|
238 |
validTypes |= 0x0040;
|
239 |
-
|
|
|
240 |
validTypes |= 0x0080;
|
241 |
-
|
|
|
242 |
validTypes = 0x0001 | 0x0002 | 0x0004 | 0x0008 | 0x0010 | 0x0020 | 0x0040 | 0x0080;
|
243 |
-
|
244 |
-
if (validTypes & 0x0001 && /^(51|52|53|54|55)/.test(value)) { //mastercard
|
245 |
-
return value.length == 16;
|
246 |
}
|
247 |
-
if (validTypes &
|
248 |
-
return value.length
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
249 |
}
|
250 |
-
|
251 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
252 |
}
|
253 |
-
|
254 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
255 |
}
|
256 |
-
|
257 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
258 |
}
|
259 |
-
|
260 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
261 |
}
|
262 |
-
|
263 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
264 |
}
|
265 |
-
|
266 |
-
|
|
|
267 |
}
|
268 |
-
if (
|
269 |
return true;
|
270 |
}
|
271 |
return false;
|
272 |
-
}, "
|
273 |
|
274 |
-
|
275 |
-
|
276 |
-
}, "
|
277 |
|
278 |
-
|
279 |
-
|
280 |
-
}, "
|
|
|
|
1 |
+
/*!
|
2 |
+
* jQuery Validation Plugin v1.19.5
|
|
|
|
|
|
|
3 |
*
|
4 |
+
* https://jqueryvalidation.org/
|
5 |
*
|
6 |
+
* Copyright (c) 2022 Jörn Zaefferer
|
7 |
+
* Released under the MIT license
|
|
|
8 |
*/
|
9 |
+
(function( factory ) {
|
10 |
+
if ( typeof define === "function" && define.amd ) {
|
11 |
+
define( ["jquery", "./jquery.validate"], factory );
|
12 |
+
} else if (typeof module === "object" && module.exports) {
|
13 |
+
module.exports = factory( require( "jquery" ) );
|
14 |
+
} else {
|
15 |
+
factory( jQuery );
|
16 |
+
}
|
17 |
+
}(function( $ ) {
|
18 |
+
|
19 |
+
( function() {
|
20 |
+
|
21 |
+
function stripHtml( value ) {
|
22 |
+
|
23 |
+
// Remove html tags and space chars
|
24 |
+
return value.replace( /<.[^<>]*?>/g, " " ).replace( / | /gi, " " )
|
25 |
+
|
26 |
+
// Remove punctuation
|
27 |
+
.replace( /[.(),;:!?%#$'\"_+=\/\-“”’]*/g, "" );
|
28 |
+
}
|
29 |
+
|
30 |
+
$.validator.addMethod( "maxWords", function( value, element, params ) {
|
31 |
+
return this.optional( element ) || stripHtml( value ).match( /\b\w+\b/g ).length <= params;
|
32 |
+
}, $.validator.format( "Please enter {0} words or less." ) );
|
33 |
+
|
34 |
+
$.validator.addMethod( "minWords", function( value, element, params ) {
|
35 |
+
return this.optional( element ) || stripHtml( value ).match( /\b\w+\b/g ).length >= params;
|
36 |
+
}, $.validator.format( "Please enter at least {0} words." ) );
|
37 |
+
|
38 |
+
$.validator.addMethod( "rangeWords", function( value, element, params ) {
|
39 |
+
var valueStripped = stripHtml( value ),
|
40 |
+
regex = /\b\w+\b/g;
|
41 |
+
return this.optional( element ) || valueStripped.match( regex ).length >= params[ 0 ] && valueStripped.match( regex ).length <= params[ 1 ];
|
42 |
+
}, $.validator.format( "Please enter between {0} and {1} words." ) );
|
43 |
|
44 |
+
}() );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
|
46 |
/**
|
47 |
+
* This is used in the United States to process payments, deposits,
|
48 |
+
* or transfers using the Automated Clearing House (ACH) or Fedwire
|
49 |
+
* systems. A very common use case would be to validate a form for
|
50 |
+
* an ACH bill payment.
|
51 |
+
*/
|
52 |
+
$.validator.addMethod( "abaRoutingNumber", function( value ) {
|
53 |
+
var checksum = 0;
|
54 |
+
var tokens = value.split( "" );
|
55 |
+
var length = tokens.length;
|
56 |
+
|
57 |
+
// Length Check
|
58 |
+
if ( length !== 9 ) {
|
59 |
+
return false;
|
60 |
+
}
|
61 |
+
|
62 |
+
// Calc the checksum
|
63 |
+
// https://en.wikipedia.org/wiki/ABA_routing_transit_number
|
64 |
+
for ( var i = 0; i < length; i += 3 ) {
|
65 |
+
checksum += parseInt( tokens[ i ], 10 ) * 3 +
|
66 |
+
parseInt( tokens[ i + 1 ], 10 ) * 7 +
|
67 |
+
parseInt( tokens[ i + 2 ], 10 );
|
68 |
+
}
|
69 |
+
|
70 |
+
// If not zero and divisible by 10 then valid
|
71 |
+
if ( checksum !== 0 && checksum % 10 === 0 ) {
|
72 |
+
return true;
|
73 |
+
}
|
74 |
+
|
75 |
+
return false;
|
76 |
+
}, "Please enter a valid routing number." );
|
77 |
+
|
78 |
+
// Accept a value from a file input based on a required mimetype
|
79 |
+
$.validator.addMethod( "accept", function( value, element, param ) {
|
80 |
+
|
81 |
+
// Split mime on commas in case we have multiple types we can accept
|
82 |
+
var typeParam = typeof param === "string" ? param.replace( /\s/g, "" ) : "image/*",
|
83 |
+
optionalValue = this.optional( element ),
|
84 |
+
i, file, regex;
|
85 |
+
|
86 |
+
// Element is optional
|
87 |
+
if ( optionalValue ) {
|
88 |
+
return optionalValue;
|
89 |
+
}
|
90 |
+
|
91 |
+
if ( $( element ).attr( "type" ) === "file" ) {
|
92 |
+
|
93 |
+
// Escape string to be used in the regex
|
94 |
+
// see: https://stackoverflow.com/questions/3446170/escape-string-for-use-in-javascript-regex
|
95 |
+
// Escape also "/*" as "/.*" as a wildcard
|
96 |
+
typeParam = typeParam
|
97 |
+
.replace( /[\-\[\]\/\{\}\(\)\+\?\.\\\^\$\|]/g, "\\$&" )
|
98 |
+
.replace( /,/g, "|" )
|
99 |
+
.replace( /\/\*/g, "/.*" );
|
100 |
+
|
101 |
+
// Check if the element has a FileList before checking each file
|
102 |
+
if ( element.files && element.files.length ) {
|
103 |
+
regex = new RegExp( ".?(" + typeParam + ")$", "i" );
|
104 |
+
for ( i = 0; i < element.files.length; i++ ) {
|
105 |
+
file = element.files[ i ];
|
106 |
+
|
107 |
+
// Grab the mimetype from the loaded file, verify it matches
|
108 |
+
if ( !file.type.match( regex ) ) {
|
109 |
+
return false;
|
110 |
+
}
|
111 |
+
}
|
112 |
}
|
113 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
|
115 |
+
// Either return true because we've validated each file, or because the
|
116 |
+
// browser does not support element.files and the FileList feature
|
117 |
+
return true;
|
118 |
+
}, $.validator.format( "Please enter a value with a valid mimetype." ) );
|
119 |
+
|
120 |
+
$.validator.addMethod( "alphanumeric", function( value, element ) {
|
121 |
+
return this.optional( element ) || /^\w+$/i.test( value );
|
122 |
+
}, "Letters, numbers, and underscores only please." );
|
123 |
+
|
124 |
+
/*
|
125 |
+
* Dutch bank account numbers (not 'giro' numbers) have 9 digits
|
126 |
+
* and pass the '11 check'.
|
127 |
+
* We accept the notation with spaces, as that is common.
|
128 |
+
* acceptable: 123456789 or 12 34 56 789
|
129 |
+
*/
|
130 |
+
$.validator.addMethod( "bankaccountNL", function( value, element ) {
|
131 |
+
if ( this.optional( element ) ) {
|
132 |
+
return true;
|
133 |
+
}
|
134 |
+
if ( !( /^[0-9]{9}|([0-9]{2} ){3}[0-9]{3}$/.test( value ) ) ) {
|
135 |
+
return false;
|
136 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
|
138 |
+
// Now '11 check'
|
139 |
+
var account = value.replace( / /g, "" ), // Remove spaces
|
140 |
+
sum = 0,
|
141 |
+
len = account.length,
|
142 |
+
pos, factor, digit;
|
143 |
+
for ( pos = 0; pos < len; pos++ ) {
|
144 |
+
factor = len - pos;
|
145 |
+
digit = account.substring( pos, pos + 1 );
|
146 |
+
sum = sum + factor * digit;
|
147 |
+
}
|
148 |
+
return sum % 11 === 0;
|
149 |
+
}, "Please specify a valid bank account number." );
|
150 |
|
151 |
+
$.validator.addMethod( "bankorgiroaccountNL", function( value, element ) {
|
152 |
+
return this.optional( element ) ||
|
153 |
+
( $.validator.methods.bankaccountNL.call( this, value, element ) ) ||
|
154 |
+
( $.validator.methods.giroaccountNL.call( this, value, element ) );
|
155 |
+
}, "Please specify a valid bank or giro account number." );
|
156 |
|
157 |
/**
|
158 |
+
* BIC is the business identifier code (ISO 9362). This BIC check is not a guarantee for authenticity.
|
159 |
+
*
|
160 |
+
* BIC pattern: BBBBCCLLbbb (8 or 11 characters long; bbb is optional)
|
161 |
+
*
|
162 |
+
* Validation is case-insensitive. Please make sure to normalize input yourself.
|
163 |
+
*
|
164 |
+
* BIC definition in detail:
|
165 |
+
* - First 4 characters - bank code (only letters)
|
166 |
+
* - Next 2 characters - ISO 3166-1 alpha-2 country code (only letters)
|
167 |
+
* - Next 2 characters - location code (letters and digits)
|
168 |
+
* a. shall not start with '0' or '1'
|
169 |
+
* b. second character must be a letter ('O' is not allowed) or digit ('0' for test (therefore not allowed), '1' denoting passive participant, '2' typically reverse-billing)
|
170 |
+
* - Last 3 characters - branch code, optional (shall not start with 'X' except in case of 'XXX' for primary office) (letters and digits)
|
|
|
|
|
|
|
171 |
*/
|
172 |
+
$.validator.addMethod( "bic", function( value, element ) {
|
173 |
+
return this.optional( element ) || /^([A-Z]{6}[A-Z2-9][A-NP-Z1-9])(X{3}|[A-WY-Z0-9][A-Z0-9]{2})?$/.test( value.toUpperCase() );
|
174 |
+
}, "Please specify a valid BIC code." );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
175 |
|
176 |
+
/*
|
177 |
+
* Código de identificación fiscal ( CIF ) is the tax identification code for Spanish legal entities
|
178 |
+
* Further rules can be found in Spanish on http://es.wikipedia.org/wiki/C%C3%B3digo_de_identificaci%C3%B3n_fiscal
|
179 |
+
*
|
180 |
+
* Spanish CIF structure:
|
181 |
+
*
|
182 |
+
* [ T ][ P ][ P ][ N ][ N ][ N ][ N ][ N ][ C ]
|
183 |
+
*
|
184 |
+
* Where:
|
185 |
+
*
|
186 |
+
* T: 1 character. Kind of Organization Letter: [ABCDEFGHJKLMNPQRSUVW]
|
187 |
+
* P: 2 characters. Province.
|
188 |
+
* N: 5 characters. Secuencial Number within the province.
|
189 |
+
* C: 1 character. Control Digit: [0-9A-J].
|
190 |
+
*
|
191 |
+
* [ T ]: Kind of Organizations. Possible values:
|
192 |
+
*
|
193 |
+
* A. Corporations
|
194 |
+
* B. LLCs
|
195 |
+
* C. General partnerships
|
196 |
+
* D. Companies limited partnerships
|
197 |
+
* E. Communities of goods
|
198 |
+
* F. Cooperative Societies
|
199 |
+
* G. Associations
|
200 |
+
* H. Communities of homeowners in horizontal property regime
|
201 |
+
* J. Civil Societies
|
202 |
+
* K. Old format
|
203 |
+
* L. Old format
|
204 |
+
* M. Old format
|
205 |
+
* N. Nonresident entities
|
206 |
+
* P. Local authorities
|
207 |
+
* Q. Autonomous bodies, state or not, and the like, and congregations and religious institutions
|
208 |
+
* R. Congregations and religious institutions (since 2008 ORDER EHA/451/2008)
|
209 |
+
* S. Organs of State Administration and regions
|
210 |
+
* V. Agrarian Transformation
|
211 |
+
* W. Permanent establishments of non-resident in Spain
|
212 |
+
*
|
213 |
+
* [ C ]: Control Digit. It can be a number or a letter depending on T value:
|
214 |
+
* [ T ] --> [ C ]
|
215 |
+
* ------ ----------
|
216 |
+
* A Number
|
217 |
+
* B Number
|
218 |
+
* E Number
|
219 |
+
* H Number
|
220 |
+
* K Letter
|
221 |
+
* P Letter
|
222 |
+
* Q Letter
|
223 |
+
* S Letter
|
224 |
+
*
|
225 |
+
*/
|
226 |
+
$.validator.addMethod( "cifES", function( value, element ) {
|
227 |
+
"use strict";
|
228 |
+
|
229 |
+
if ( this.optional( element ) ) {
|
230 |
+
return true;
|
231 |
+
}
|
232 |
+
|
233 |
+
var cifRegEx = new RegExp( /^([ABCDEFGHJKLMNPQRSUVW])(\d{7})([0-9A-J])$/gi );
|
234 |
+
var letter = value.substring( 0, 1 ), // [ T ]
|
235 |
+
number = value.substring( 1, 8 ), // [ P ][ P ][ N ][ N ][ N ][ N ][ N ]
|
236 |
+
control = value.substring( 8, 9 ), // [ C ]
|
237 |
+
all_sum = 0,
|
238 |
+
even_sum = 0,
|
239 |
+
odd_sum = 0,
|
240 |
+
i, n,
|
241 |
+
control_digit,
|
242 |
+
control_letter;
|
243 |
+
|
244 |
+
function isOdd( n ) {
|
245 |
+
return n % 2 === 0;
|
246 |
+
}
|
247 |
+
|
248 |
+
// Quick format test
|
249 |
+
if ( value.length !== 9 || !cifRegEx.test( value ) ) {
|
250 |
return false;
|
251 |
+
}
|
252 |
+
|
253 |
+
for ( i = 0; i < number.length; i++ ) {
|
254 |
+
n = parseInt( number[ i ], 10 );
|
255 |
+
|
256 |
+
// Odd positions
|
257 |
+
if ( isOdd( i ) ) {
|
258 |
+
|
259 |
+
// Odd positions are multiplied first.
|
260 |
+
n *= 2;
|
261 |
+
|
262 |
+
// If the multiplication is bigger than 10 we need to adjust
|
263 |
+
odd_sum += n < 10 ? n : n - 9;
|
264 |
+
|
265 |
+
// Even positions
|
266 |
+
// Just sum them
|
267 |
+
} else {
|
268 |
+
even_sum += n;
|
269 |
+
}
|
270 |
+
}
|
271 |
+
|
272 |
+
all_sum = even_sum + odd_sum;
|
273 |
+
control_digit = ( 10 - ( all_sum ).toString().substr( -1 ) ).toString();
|
274 |
+
control_digit = parseInt( control_digit, 10 ) > 9 ? "0" : control_digit;
|
275 |
+
control_letter = "JABCDEFGHI".substr( control_digit, 1 ).toString();
|
276 |
+
|
277 |
+
// Control must be a digit
|
278 |
+
if ( letter.match( /[ABEH]/ ) ) {
|
279 |
+
return control === control_digit;
|
280 |
+
|
281 |
+
// Control must be a letter
|
282 |
+
} else if ( letter.match( /[KPQS]/ ) ) {
|
283 |
+
return control === control_letter;
|
284 |
+
}
|
285 |
+
|
286 |
+
// Can be either
|
287 |
+
return control === control_digit || control === control_letter;
|
288 |
+
|
289 |
+
}, "Please specify a valid CIF number." );
|
290 |
+
|
291 |
+
/*
|
292 |
+
* Brazillian CNH number (Carteira Nacional de Habilitacao) is the License Driver number.
|
293 |
+
* CNH numbers have 11 digits in total: 9 numbers followed by 2 check numbers that are being used for validation.
|
294 |
+
*/
|
295 |
+
$.validator.addMethod( "cnhBR", function( value ) {
|
296 |
+
|
297 |
+
// Removing special characters from value
|
298 |
+
value = value.replace( /([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g, "" );
|
299 |
+
|
300 |
+
// Checking value to have 11 digits only
|
301 |
+
if ( value.length !== 11 ) {
|
302 |
+
return false;
|
303 |
+
}
|
304 |
+
|
305 |
+
var sum = 0, dsc = 0, firstChar,
|
306 |
+
firstCN, secondCN, i, j, v;
|
307 |
+
|
308 |
+
firstChar = value.charAt( 0 );
|
309 |
+
|
310 |
+
if ( new Array( 12 ).join( firstChar ) === value ) {
|
311 |
+
return false;
|
312 |
+
}
|
313 |
+
|
314 |
+
// Step 1 - using first Check Number:
|
315 |
+
for ( i = 0, j = 9, v = 0; i < 9; ++i, --j ) {
|
316 |
+
sum += +( value.charAt( i ) * j );
|
317 |
+
}
|
318 |
+
|
319 |
+
firstCN = sum % 11;
|
320 |
+
if ( firstCN >= 10 ) {
|
321 |
+
firstCN = 0;
|
322 |
+
dsc = 2;
|
323 |
+
}
|
324 |
+
|
325 |
+
sum = 0;
|
326 |
+
for ( i = 0, j = 1, v = 0; i < 9; ++i, ++j ) {
|
327 |
+
sum += +( value.charAt( i ) * j );
|
328 |
+
}
|
329 |
+
|
330 |
+
secondCN = sum % 11;
|
331 |
+
if ( secondCN >= 10 ) {
|
332 |
+
secondCN = 0;
|
333 |
+
} else {
|
334 |
+
secondCN = secondCN - dsc;
|
335 |
+
}
|
336 |
+
|
337 |
+
return ( String( firstCN ).concat( secondCN ) === value.substr( -2 ) );
|
338 |
+
|
339 |
+
}, "Please specify a valid CNH number." );
|
340 |
+
|
341 |
+
/*
|
342 |
+
* Brazillian value number (Cadastrado de Pessoas Juridica).
|
343 |
+
* value numbers have 14 digits in total: 12 numbers followed by 2 check numbers that are being used for validation.
|
344 |
+
*/
|
345 |
+
$.validator.addMethod( "cnpjBR", function( value, element ) {
|
346 |
+
"use strict";
|
347 |
+
|
348 |
+
if ( this.optional( element ) ) {
|
349 |
+
return true;
|
350 |
+
}
|
351 |
+
|
352 |
+
// Removing no number
|
353 |
+
value = value.replace( /[^\d]+/g, "" );
|
354 |
+
|
355 |
+
// Checking value to have 14 digits only
|
356 |
+
if ( value.length !== 14 ) {
|
357 |
+
return false;
|
358 |
+
}
|
359 |
+
|
360 |
+
// Elimina values invalidos conhecidos
|
361 |
+
if ( value === "00000000000000" ||
|
362 |
+
value === "11111111111111" ||
|
363 |
+
value === "22222222222222" ||
|
364 |
+
value === "33333333333333" ||
|
365 |
+
value === "44444444444444" ||
|
366 |
+
value === "55555555555555" ||
|
367 |
+
value === "66666666666666" ||
|
368 |
+
value === "77777777777777" ||
|
369 |
+
value === "88888888888888" ||
|
370 |
+
value === "99999999999999" ) {
|
371 |
+
return false;
|
372 |
+
}
|
373 |
+
|
374 |
+
// Valida DVs
|
375 |
+
var tamanho = ( value.length - 2 );
|
376 |
+
var numeros = value.substring( 0, tamanho );
|
377 |
+
var digitos = value.substring( tamanho );
|
378 |
+
var soma = 0;
|
379 |
+
var pos = tamanho - 7;
|
380 |
+
|
381 |
+
for ( var i = tamanho; i >= 1; i-- ) {
|
382 |
+
soma += numeros.charAt( tamanho - i ) * pos--;
|
383 |
+
if ( pos < 2 ) {
|
384 |
+
pos = 9;
|
385 |
+
}
|
386 |
+
}
|
387 |
+
|
388 |
+
var resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
|
389 |
+
|
390 |
+
if ( resultado !== parseInt( digitos.charAt( 0 ), 10 ) ) {
|
391 |
+
return false;
|
392 |
+
}
|
393 |
+
|
394 |
+
tamanho = tamanho + 1;
|
395 |
+
numeros = value.substring( 0, tamanho );
|
396 |
+
soma = 0;
|
397 |
+
pos = tamanho - 7;
|
398 |
+
|
399 |
+
for ( var il = tamanho; il >= 1; il-- ) {
|
400 |
+
soma += numeros.charAt( tamanho - il ) * pos--;
|
401 |
+
if ( pos < 2 ) {
|
402 |
+
pos = 9;
|
403 |
+
}
|
404 |
+
}
|
405 |
+
|
406 |
+
resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
|
407 |
+
|
408 |
+
if ( resultado !== parseInt( digitos.charAt( 1 ), 10 ) ) {
|
409 |
+
return false;
|
410 |
+
}
|
411 |
+
|
412 |
+
return true;
|
413 |
+
|
414 |
+
}, "Please specify a CNPJ value number." );
|
415 |
+
|
416 |
+
/*
|
417 |
+
* Brazillian CPF number (Cadastrado de Pessoas Físicas) is the equivalent of a Brazilian tax registration number.
|
418 |
+
* CPF numbers have 11 digits in total: 9 numbers followed by 2 check numbers that are being used for validation.
|
419 |
+
*/
|
420 |
+
$.validator.addMethod( "cpfBR", function( value, element ) {
|
421 |
+
"use strict";
|
422 |
+
|
423 |
+
if ( this.optional( element ) ) {
|
424 |
+
return true;
|
425 |
+
}
|
426 |
+
|
427 |
+
// Removing special characters from value
|
428 |
+
value = value.replace( /([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g, "" );
|
429 |
+
|
430 |
+
// Checking value to have 11 digits only
|
431 |
+
if ( value.length !== 11 ) {
|
432 |
+
return false;
|
433 |
+
}
|
434 |
+
|
435 |
+
var sum = 0,
|
436 |
+
firstCN, secondCN, checkResult, i;
|
437 |
+
|
438 |
+
firstCN = parseInt( value.substring( 9, 10 ), 10 );
|
439 |
+
secondCN = parseInt( value.substring( 10, 11 ), 10 );
|
440 |
+
|
441 |
+
checkResult = function( sum, cn ) {
|
442 |
+
var result = ( sum * 10 ) % 11;
|
443 |
+
if ( ( result === 10 ) || ( result === 11 ) ) {
|
444 |
+
result = 0;
|
445 |
+
}
|
446 |
+
return ( result === cn );
|
447 |
+
};
|
448 |
+
|
449 |
+
// Checking for dump data
|
450 |
+
if ( value === "" ||
|
451 |
+
value === "00000000000" ||
|
452 |
+
value === "11111111111" ||
|
453 |
+
value === "22222222222" ||
|
454 |
+
value === "33333333333" ||
|
455 |
+
value === "44444444444" ||
|
456 |
+
value === "55555555555" ||
|
457 |
+
value === "66666666666" ||
|
458 |
+
value === "77777777777" ||
|
459 |
+
value === "88888888888" ||
|
460 |
+
value === "99999999999"
|
461 |
+
) {
|
462 |
+
return false;
|
463 |
+
}
|
464 |
+
|
465 |
+
// Step 1 - using first Check Number:
|
466 |
+
for ( i = 1; i <= 9; i++ ) {
|
467 |
+
sum = sum + parseInt( value.substring( i - 1, i ), 10 ) * ( 11 - i );
|
468 |
+
}
|
469 |
+
|
470 |
+
// If first Check Number (CN) is valid, move to Step 2 - using second Check Number:
|
471 |
+
if ( checkResult( sum, firstCN ) ) {
|
472 |
+
sum = 0;
|
473 |
+
for ( i = 1; i <= 10; i++ ) {
|
474 |
+
sum = sum + parseInt( value.substring( i - 1, i ), 10 ) * ( 12 - i );
|
475 |
+
}
|
476 |
+
return checkResult( sum, secondCN );
|
477 |
+
}
|
478 |
+
return false;
|
479 |
+
|
480 |
+
}, "Please specify a valid CPF number." );
|
481 |
+
|
482 |
+
// https://jqueryvalidation.org/creditcard-method/
|
483 |
+
// based on https://en.wikipedia.org/wiki/Luhn_algorithm
|
484 |
+
$.validator.addMethod( "creditcard", function( value, element ) {
|
485 |
+
if ( this.optional( element ) ) {
|
486 |
+
return "dependency-mismatch";
|
487 |
+
}
|
488 |
+
|
489 |
+
// Accept only spaces, digits and dashes
|
490 |
+
if ( /[^0-9 \-]+/.test( value ) ) {
|
491 |
+
return false;
|
492 |
+
}
|
493 |
+
|
494 |
+
var nCheck = 0,
|
495 |
+
nDigit = 0,
|
496 |
+
bEven = false,
|
497 |
+
n, cDigit;
|
498 |
+
|
499 |
+
value = value.replace( /\D/g, "" );
|
500 |
+
|
501 |
+
// Basing min and max length on
|
502 |
+
// https://dev.ean.com/general-info/valid-card-types/
|
503 |
+
if ( value.length < 13 || value.length > 19 ) {
|
504 |
+
return false;
|
505 |
+
}
|
506 |
+
|
507 |
+
for ( n = value.length - 1; n >= 0; n-- ) {
|
508 |
+
cDigit = value.charAt( n );
|
509 |
+
nDigit = parseInt( cDigit, 10 );
|
510 |
+
if ( bEven ) {
|
511 |
+
if ( ( nDigit *= 2 ) > 9 ) {
|
512 |
+
nDigit -= 9;
|
513 |
+
}
|
514 |
+
}
|
515 |
+
|
516 |
+
nCheck += nDigit;
|
517 |
+
bEven = !bEven;
|
518 |
+
}
|
519 |
+
|
520 |
+
return ( nCheck % 10 ) === 0;
|
521 |
+
}, "Please enter a valid credit card number." );
|
522 |
+
|
523 |
+
/* NOTICE: Modified version of Castle.Components.Validator.CreditCardValidator
|
524 |
+
* Redistributed under the Apache License 2.0 at http://www.apache.org/licenses/LICENSE-2.0
|
525 |
+
* Valid Types: mastercard, visa, amex, dinersclub, enroute, discover, jcb, unknown, all (overrides all other settings)
|
526 |
+
*/
|
527 |
+
$.validator.addMethod( "creditcardtypes", function( value, element, param ) {
|
528 |
+
if ( /[^0-9\-]+/.test( value ) ) {
|
529 |
+
return false;
|
530 |
+
}
|
531 |
+
|
532 |
+
value = value.replace( /\D/g, "" );
|
533 |
+
|
534 |
var validTypes = 0x0000;
|
535 |
+
|
536 |
+
if ( param.mastercard ) {
|
537 |
validTypes |= 0x0001;
|
538 |
+
}
|
539 |
+
if ( param.visa ) {
|
540 |
validTypes |= 0x0002;
|
541 |
+
}
|
542 |
+
if ( param.amex ) {
|
543 |
validTypes |= 0x0004;
|
544 |
+
}
|
545 |
+
if ( param.dinersclub ) {
|
546 |
validTypes |= 0x0008;
|
547 |
+
}
|
548 |
+
if ( param.enroute ) {
|
549 |
validTypes |= 0x0010;
|
550 |
+
}
|
551 |
+
if ( param.discover ) {
|
552 |
validTypes |= 0x0020;
|
553 |
+
}
|
554 |
+
if ( param.jcb ) {
|
555 |
validTypes |= 0x0040;
|
556 |
+
}
|
557 |
+
if ( param.unknown ) {
|
558 |
validTypes |= 0x0080;
|
559 |
+
}
|
560 |
+
if ( param.all ) {
|
561 |
validTypes = 0x0001 | 0x0002 | 0x0004 | 0x0008 | 0x0010 | 0x0020 | 0x0040 | 0x0080;
|
|
|
|
|
|
|
562 |
}
|
563 |
+
if ( validTypes & 0x0001 && ( /^(5[12345])/.test( value ) || /^(2[234567])/.test( value ) ) ) { // Mastercard
|
564 |
+
return value.length === 16;
|
565 |
+
}
|
566 |
+
if ( validTypes & 0x0002 && /^(4)/.test( value ) ) { // Visa
|
567 |
+
return value.length === 16;
|
568 |
+
}
|
569 |
+
if ( validTypes & 0x0004 && /^(3[47])/.test( value ) ) { // Amex
|
570 |
+
return value.length === 15;
|
571 |
+
}
|
572 |
+
if ( validTypes & 0x0008 && /^(3(0[012345]|[68]))/.test( value ) ) { // Dinersclub
|
573 |
+
return value.length === 14;
|
574 |
+
}
|
575 |
+
if ( validTypes & 0x0010 && /^(2(014|149))/.test( value ) ) { // Enroute
|
576 |
+
return value.length === 15;
|
577 |
+
}
|
578 |
+
if ( validTypes & 0x0020 && /^(6011)/.test( value ) ) { // Discover
|
579 |
+
return value.length === 16;
|
580 |
+
}
|
581 |
+
if ( validTypes & 0x0040 && /^(3)/.test( value ) ) { // Jcb
|
582 |
+
return value.length === 16;
|
583 |
+
}
|
584 |
+
if ( validTypes & 0x0040 && /^(2131|1800)/.test( value ) ) { // Jcb
|
585 |
+
return value.length === 15;
|
586 |
+
}
|
587 |
+
if ( validTypes & 0x0080 ) { // Unknown
|
588 |
+
return true;
|
589 |
+
}
|
590 |
+
return false;
|
591 |
+
}, "Please enter a valid credit card number." );
|
592 |
+
|
593 |
+
/**
|
594 |
+
* Validates currencies with any given symbols by @jameslouiz
|
595 |
+
* Symbols can be optional or required. Symbols required by default
|
596 |
+
*
|
597 |
+
* Usage examples:
|
598 |
+
* currency: ["£", false] - Use false for soft currency validation
|
599 |
+
* currency: ["$", false]
|
600 |
+
* currency: ["RM", false] - also works with text based symbols such as "RM" - Malaysia Ringgit etc
|
601 |
+
*
|
602 |
+
* <input class="currencyInput" name="currencyInput">
|
603 |
+
*
|
604 |
+
* Soft symbol checking
|
605 |
+
* currencyInput: {
|
606 |
+
* currency: ["$", false]
|
607 |
+
* }
|
608 |
+
*
|
609 |
+
* Strict symbol checking (default)
|
610 |
+
* currencyInput: {
|
611 |
+
* currency: "$"
|
612 |
+
* //OR
|
613 |
+
* currency: ["$", true]
|
614 |
+
* }
|
615 |
+
*
|
616 |
+
* Multiple Symbols
|
617 |
+
* currencyInput: {
|
618 |
+
* currency: "$,£,¢"
|
619 |
+
* }
|
620 |
+
*/
|
621 |
+
$.validator.addMethod( "currency", function( value, element, param ) {
|
622 |
+
var isParamString = typeof param === "string",
|
623 |
+
symbol = isParamString ? param : param[ 0 ],
|
624 |
+
soft = isParamString ? true : param[ 1 ],
|
625 |
+
regex;
|
626 |
+
|
627 |
+
symbol = symbol.replace( /,/g, "" );
|
628 |
+
symbol = soft ? symbol + "]" : symbol + "]?";
|
629 |
+
regex = "^[" + symbol + "([1-9]{1}[0-9]{0,2}(\\,[0-9]{3})*(\\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|(\\.[0-9]{1,2})?)$";
|
630 |
+
regex = new RegExp( regex );
|
631 |
+
return this.optional( element ) || regex.test( value );
|
632 |
+
|
633 |
+
}, "Please specify a valid currency." );
|
634 |
+
|
635 |
+
$.validator.addMethod( "dateFA", function( value, element ) {
|
636 |
+
return this.optional( element ) || /^[1-4]\d{3}\/((0?[1-6]\/((3[0-1])|([1-2][0-9])|(0?[1-9])))|((1[0-2]|(0?[7-9]))\/(30|([1-2][0-9])|(0?[1-9]))))$/.test( value );
|
637 |
+
}, $.validator.messages.date );
|
638 |
+
|
639 |
+
/**
|
640 |
+
* Return true, if the value is a valid date, also making this formal check dd/mm/yyyy.
|
641 |
+
*
|
642 |
+
* @example $.validator.methods.date("01/01/1900")
|
643 |
+
* @result true
|
644 |
+
*
|
645 |
+
* @example $.validator.methods.date("01/13/1990")
|
646 |
+
* @result false
|
647 |
+
*
|
648 |
+
* @example $.validator.methods.date("01.01.1900")
|
649 |
+
* @result false
|
650 |
+
*
|
651 |
+
* @example <input name="pippo" class="{dateITA:true}" />
|
652 |
+
* @desc Declares an optional input element whose value must be a valid date.
|
653 |
+
*
|
654 |
+
* @name $.validator.methods.dateITA
|
655 |
+
* @type Boolean
|
656 |
+
* @cat Plugins/Validate/Methods
|
657 |
+
*/
|
658 |
+
$.validator.addMethod( "dateITA", function( value, element ) {
|
659 |
+
var check = false,
|
660 |
+
re = /^\d{1,2}\/\d{1,2}\/\d{4}$/,
|
661 |
+
adata, gg, mm, aaaa, xdata;
|
662 |
+
if ( re.test( value ) ) {
|
663 |
+
adata = value.split( "/" );
|
664 |
+
gg = parseInt( adata[ 0 ], 10 );
|
665 |
+
mm = parseInt( adata[ 1 ], 10 );
|
666 |
+
aaaa = parseInt( adata[ 2 ], 10 );
|
667 |
+
xdata = new Date( Date.UTC( aaaa, mm - 1, gg, 12, 0, 0, 0 ) );
|
668 |
+
if ( ( xdata.getUTCFullYear() === aaaa ) && ( xdata.getUTCMonth() === mm - 1 ) && ( xdata.getUTCDate() === gg ) ) {
|
669 |
+
check = true;
|
670 |
+
} else {
|
671 |
+
check = false;
|
672 |
+
}
|
673 |
+
} else {
|
674 |
+
check = false;
|
675 |
+
}
|
676 |
+
return this.optional( element ) || check;
|
677 |
+
}, $.validator.messages.date );
|
678 |
+
|
679 |
+
$.validator.addMethod( "dateNL", function( value, element ) {
|
680 |
+
return this.optional( element ) || /^(0?[1-9]|[12]\d|3[01])[\.\/\-](0?[1-9]|1[012])[\.\/\-]([12]\d)?(\d\d)$/.test( value );
|
681 |
+
}, $.validator.messages.date );
|
682 |
+
|
683 |
+
// Older "accept" file extension method. Old docs: http://docs.jquery.com/Plugins/Validation/Methods/accept
|
684 |
+
$.validator.addMethod( "extension", function( value, element, param ) {
|
685 |
+
param = typeof param === "string" ? param.replace( /,/g, "|" ) : "png|jpe?g|gif";
|
686 |
+
return this.optional( element ) || value.match( new RegExp( "\\.(" + param + ")$", "i" ) );
|
687 |
+
}, $.validator.format( "Please enter a value with a valid extension." ) );
|
688 |
+
|
689 |
+
/**
|
690 |
+
* Dutch giro account numbers (not bank numbers) have max 7 digits
|
691 |
+
*/
|
692 |
+
$.validator.addMethod( "giroaccountNL", function( value, element ) {
|
693 |
+
return this.optional( element ) || /^[0-9]{1,7}$/.test( value );
|
694 |
+
}, "Please specify a valid giro account number." );
|
695 |
+
|
696 |
+
$.validator.addMethod( "greaterThan", function( value, element, param ) {
|
697 |
+
var target = $( param );
|
698 |
+
|
699 |
+
if ( this.settings.onfocusout && target.not( ".validate-greaterThan-blur" ).length ) {
|
700 |
+
target.addClass( "validate-greaterThan-blur" ).on( "blur.validate-greaterThan", function() {
|
701 |
+
$( element ).valid();
|
702 |
+
} );
|
703 |
+
}
|
704 |
+
|
705 |
+
return value > target.val();
|
706 |
+
}, "Please enter a greater value." );
|
707 |
+
|
708 |
+
$.validator.addMethod( "greaterThanEqual", function( value, element, param ) {
|
709 |
+
var target = $( param );
|
710 |
+
|
711 |
+
if ( this.settings.onfocusout && target.not( ".validate-greaterThanEqual-blur" ).length ) {
|
712 |
+
target.addClass( "validate-greaterThanEqual-blur" ).on( "blur.validate-greaterThanEqual", function() {
|
713 |
+
$( element ).valid();
|
714 |
+
} );
|
715 |
+
}
|
716 |
+
|
717 |
+
return value >= target.val();
|
718 |
+
}, "Please enter a greater value." );
|
719 |
+
|
720 |
+
/**
|
721 |
+
* IBAN is the international bank account number.
|
722 |
+
* It has a country - specific format, that is checked here too
|
723 |
+
*
|
724 |
+
* Validation is case-insensitive. Please make sure to normalize input yourself.
|
725 |
+
*/
|
726 |
+
$.validator.addMethod( "iban", function( value, element ) {
|
727 |
+
|
728 |
+
// Some quick simple tests to prevent needless work
|
729 |
+
if ( this.optional( element ) ) {
|
730 |
+
return true;
|
731 |
+
}
|
732 |
+
|
733 |
+
// Remove spaces and to upper case
|
734 |
+
var iban = value.replace( / /g, "" ).toUpperCase(),
|
735 |
+
ibancheckdigits = "",
|
736 |
+
leadingZeroes = true,
|
737 |
+
cRest = "",
|
738 |
+
cOperator = "",
|
739 |
+
countrycode, ibancheck, charAt, cChar, bbanpattern, bbancountrypatterns, ibanregexp, i, p;
|
740 |
+
|
741 |
+
// Check for IBAN code length.
|
742 |
+
// It contains:
|
743 |
+
// country code ISO 3166-1 - two letters,
|
744 |
+
// two check digits,
|
745 |
+
// Basic Bank Account Number (BBAN) - up to 30 chars
|
746 |
+
var minimalIBANlength = 5;
|
747 |
+
if ( iban.length < minimalIBANlength ) {
|
748 |
+
return false;
|
749 |
+
}
|
750 |
+
|
751 |
+
// Check the country code and find the country specific format
|
752 |
+
countrycode = iban.substring( 0, 2 );
|
753 |
+
bbancountrypatterns = {
|
754 |
+
"AL": "\\d{8}[\\dA-Z]{16}",
|
755 |
+
"AD": "\\d{8}[\\dA-Z]{12}",
|
756 |
+
"AT": "\\d{16}",
|
757 |
+
"AZ": "[\\dA-Z]{4}\\d{20}",
|
758 |
+
"BE": "\\d{12}",
|
759 |
+
"BH": "[A-Z]{4}[\\dA-Z]{14}",
|
760 |
+
"BA": "\\d{16}",
|
761 |
+
"BR": "\\d{23}[A-Z][\\dA-Z]",
|
762 |
+
"BG": "[A-Z]{4}\\d{6}[\\dA-Z]{8}",
|
763 |
+
"CR": "\\d{17}",
|
764 |
+
"HR": "\\d{17}",
|
765 |
+
"CY": "\\d{8}[\\dA-Z]{16}",
|
766 |
+
"CZ": "\\d{20}",
|
767 |
+
"DK": "\\d{14}",
|
768 |
+
"DO": "[A-Z]{4}\\d{20}",
|
769 |
+
"EE": "\\d{16}",
|
770 |
+
"FO": "\\d{14}",
|
771 |
+
"FI": "\\d{14}",
|
772 |
+
"FR": "\\d{10}[\\dA-Z]{11}\\d{2}",
|
773 |
+
"GE": "[\\dA-Z]{2}\\d{16}",
|
774 |
+
"DE": "\\d{18}",
|
775 |
+
"GI": "[A-Z]{4}[\\dA-Z]{15}",
|
776 |
+
"GR": "\\d{7}[\\dA-Z]{16}",
|
777 |
+
"GL": "\\d{14}",
|
778 |
+
"GT": "[\\dA-Z]{4}[\\dA-Z]{20}",
|
779 |
+
"HU": "\\d{24}",
|
780 |
+
"IS": "\\d{22}",
|
781 |
+
"IE": "[\\dA-Z]{4}\\d{14}",
|
782 |
+
"IL": "\\d{19}",
|
783 |
+
"IT": "[A-Z]\\d{10}[\\dA-Z]{12}",
|
784 |
+
"KZ": "\\d{3}[\\dA-Z]{13}",
|
785 |
+
"KW": "[A-Z]{4}[\\dA-Z]{22}",
|
786 |
+
"LV": "[A-Z]{4}[\\dA-Z]{13}",
|
787 |
+
"LB": "\\d{4}[\\dA-Z]{20}",
|
788 |
+
"LI": "\\d{5}[\\dA-Z]{12}",
|
789 |
+
"LT": "\\d{16}",
|
790 |
+
"LU": "\\d{3}[\\dA-Z]{13}",
|
791 |
+
"MK": "\\d{3}[\\dA-Z]{10}\\d{2}",
|
792 |
+
"MT": "[A-Z]{4}\\d{5}[\\dA-Z]{18}",
|
793 |
+
"MR": "\\d{23}",
|
794 |
+
"MU": "[A-Z]{4}\\d{19}[A-Z]{3}",
|
795 |
+
"MC": "\\d{10}[\\dA-Z]{11}\\d{2}",
|
796 |
+
"MD": "[\\dA-Z]{2}\\d{18}",
|
797 |
+
"ME": "\\d{18}",
|
798 |
+
"NL": "[A-Z]{4}\\d{10}",
|
799 |
+
"NO": "\\d{11}",
|
800 |
+
"PK": "[\\dA-Z]{4}\\d{16}",
|
801 |
+
"PS": "[\\dA-Z]{4}\\d{21}",
|
802 |
+
"PL": "\\d{24}",
|
803 |
+
"PT": "\\d{21}",
|
804 |
+
"RO": "[A-Z]{4}[\\dA-Z]{16}",
|
805 |
+
"SM": "[A-Z]\\d{10}[\\dA-Z]{12}",
|
806 |
+
"SA": "\\d{2}[\\dA-Z]{18}",
|
807 |
+
"RS": "\\d{18}",
|
808 |
+
"SK": "\\d{20}",
|
809 |
+
"SI": "\\d{15}",
|
810 |
+
"ES": "\\d{20}",
|
811 |
+
"SE": "\\d{20}",
|
812 |
+
"CH": "\\d{5}[\\dA-Z]{12}",
|
813 |
+
"TN": "\\d{20}",
|
814 |
+
"TR": "\\d{5}[\\dA-Z]{17}",
|
815 |
+
"AE": "\\d{3}\\d{16}",
|
816 |
+
"GB": "[A-Z]{4}\\d{14}",
|
817 |
+
"VG": "[\\dA-Z]{4}\\d{16}"
|
818 |
+
};
|
819 |
+
|
820 |
+
bbanpattern = bbancountrypatterns[ countrycode ];
|
821 |
+
|
822 |
+
// As new countries will start using IBAN in the
|
823 |
+
// future, we only check if the countrycode is known.
|
824 |
+
// This prevents false negatives, while almost all
|
825 |
+
// false positives introduced by this, will be caught
|
826 |
+
// by the checksum validation below anyway.
|
827 |
+
// Strict checking should return FALSE for unknown
|
828 |
+
// countries.
|
829 |
+
if ( typeof bbanpattern !== "undefined" ) {
|
830 |
+
ibanregexp = new RegExp( "^[A-Z]{2}\\d{2}" + bbanpattern + "$", "" );
|
831 |
+
if ( !( ibanregexp.test( iban ) ) ) {
|
832 |
+
return false; // Invalid country specific format
|
833 |
+
}
|
834 |
+
}
|
835 |
+
|
836 |
+
// Now check the checksum, first convert to digits
|
837 |
+
ibancheck = iban.substring( 4, iban.length ) + iban.substring( 0, 4 );
|
838 |
+
for ( i = 0; i < ibancheck.length; i++ ) {
|
839 |
+
charAt = ibancheck.charAt( i );
|
840 |
+
if ( charAt !== "0" ) {
|
841 |
+
leadingZeroes = false;
|
842 |
+
}
|
843 |
+
if ( !leadingZeroes ) {
|
844 |
+
ibancheckdigits += "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".indexOf( charAt );
|
845 |
+
}
|
846 |
+
}
|
847 |
+
|
848 |
+
// Calculate the result of: ibancheckdigits % 97
|
849 |
+
for ( p = 0; p < ibancheckdigits.length; p++ ) {
|
850 |
+
cChar = ibancheckdigits.charAt( p );
|
851 |
+
cOperator = "" + cRest + "" + cChar;
|
852 |
+
cRest = cOperator % 97;
|
853 |
+
}
|
854 |
+
return cRest === 1;
|
855 |
+
}, "Please specify a valid IBAN." );
|
856 |
+
|
857 |
+
$.validator.addMethod( "integer", function( value, element ) {
|
858 |
+
return this.optional( element ) || /^-?\d+$/.test( value );
|
859 |
+
}, "A positive or negative non-decimal number please." );
|
860 |
+
|
861 |
+
$.validator.addMethod( "ipv4", function( value, element ) {
|
862 |
+
return this.optional( element ) || /^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/i.test( value );
|
863 |
+
}, "Please enter a valid IP v4 address." );
|
864 |
+
|
865 |
+
$.validator.addMethod( "ipv6", function( value, element ) {
|
866 |
+
return this.optional( element ) || /^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))$/i.test( value );
|
867 |
+
}, "Please enter a valid IP v6 address." );
|
868 |
+
|
869 |
+
$.validator.addMethod( "lessThan", function( value, element, param ) {
|
870 |
+
var target = $( param );
|
871 |
+
|
872 |
+
if ( this.settings.onfocusout && target.not( ".validate-lessThan-blur" ).length ) {
|
873 |
+
target.addClass( "validate-lessThan-blur" ).on( "blur.validate-lessThan", function() {
|
874 |
+
$( element ).valid();
|
875 |
+
} );
|
876 |
+
}
|
877 |
+
|
878 |
+
return value < target.val();
|
879 |
+
}, "Please enter a lesser value." );
|
880 |
+
|
881 |
+
$.validator.addMethod( "lessThanEqual", function( value, element, param ) {
|
882 |
+
var target = $( param );
|
883 |
+
|
884 |
+
if ( this.settings.onfocusout && target.not( ".validate-lessThanEqual-blur" ).length ) {
|
885 |
+
target.addClass( "validate-lessThanEqual-blur" ).on( "blur.validate-lessThanEqual", function() {
|
886 |
+
$( element ).valid();
|
887 |
+
} );
|
888 |
+
}
|
889 |
+
|
890 |
+
return value <= target.val();
|
891 |
+
}, "Please enter a lesser value." );
|
892 |
+
|
893 |
+
$.validator.addMethod( "lettersonly", function( value, element ) {
|
894 |
+
return this.optional( element ) || /^[a-z]+$/i.test( value );
|
895 |
+
}, "Letters only please." );
|
896 |
+
|
897 |
+
$.validator.addMethod( "letterswithbasicpunc", function( value, element ) {
|
898 |
+
return this.optional( element ) || /^[a-z\-.,()'"\s]+$/i.test( value );
|
899 |
+
}, "Letters or punctuation only please." );
|
900 |
+
|
901 |
+
// Limit the number of files in a FileList.
|
902 |
+
$.validator.addMethod( "maxfiles", function( value, element, param ) {
|
903 |
+
if ( this.optional( element ) ) {
|
904 |
+
return true;
|
905 |
+
}
|
906 |
+
|
907 |
+
if ( $( element ).attr( "type" ) === "file" ) {
|
908 |
+
if ( element.files && element.files.length > param ) {
|
909 |
+
return false;
|
910 |
+
}
|
911 |
}
|
912 |
+
|
913 |
+
return true;
|
914 |
+
}, $.validator.format( "Please select no more than {0} files." ) );
|
915 |
+
|
916 |
+
// Limit the size of each individual file in a FileList.
|
917 |
+
$.validator.addMethod( "maxsize", function( value, element, param ) {
|
918 |
+
if ( this.optional( element ) ) {
|
919 |
+
return true;
|
920 |
}
|
921 |
+
|
922 |
+
if ( $( element ).attr( "type" ) === "file" ) {
|
923 |
+
if ( element.files && element.files.length ) {
|
924 |
+
for ( var i = 0; i < element.files.length; i++ ) {
|
925 |
+
if ( element.files[ i ].size > param ) {
|
926 |
+
return false;
|
927 |
+
}
|
928 |
+
}
|
929 |
+
}
|
930 |
}
|
931 |
+
|
932 |
+
return true;
|
933 |
+
}, $.validator.format( "File size must not exceed {0} bytes each." ) );
|
934 |
+
|
935 |
+
// Limit the size of all files in a FileList.
|
936 |
+
$.validator.addMethod( "maxsizetotal", function( value, element, param ) {
|
937 |
+
if ( this.optional( element ) ) {
|
938 |
+
return true;
|
939 |
}
|
940 |
+
|
941 |
+
if ( $( element ).attr( "type" ) === "file" ) {
|
942 |
+
if ( element.files && element.files.length ) {
|
943 |
+
var totalSize = 0;
|
944 |
+
|
945 |
+
for ( var i = 0; i < element.files.length; i++ ) {
|
946 |
+
totalSize += element.files[ i ].size;
|
947 |
+
if ( totalSize > param ) {
|
948 |
+
return false;
|
949 |
+
}
|
950 |
+
}
|
951 |
+
}
|
952 |
}
|
953 |
+
|
954 |
+
return true;
|
955 |
+
}, $.validator.format( "Total size of all files must not exceed {0} bytes." ) );
|
956 |
+
|
957 |
+
|
958 |
+
$.validator.addMethod( "mobileNL", function( value, element ) {
|
959 |
+
return this.optional( element ) || /^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)6((\s|\s?\-\s?)?[0-9]){8}$/.test( value );
|
960 |
+
}, "Please specify a valid mobile number." );
|
961 |
+
|
962 |
+
$.validator.addMethod( "mobileRU", function( phone_number, element ) {
|
963 |
+
var ruPhone_number = phone_number.replace( /\(|\)|\s+|-/g, "" );
|
964 |
+
return this.optional( element ) || ruPhone_number.length > 9 && /^((\+7|7|8)+([0-9]){10})$/.test( ruPhone_number );
|
965 |
+
}, "Please specify a valid mobile number." );
|
966 |
+
|
967 |
+
/* For UK phone functions, do the following server side processing:
|
968 |
+
* Compare original input with this RegEx pattern:
|
969 |
+
* ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$
|
970 |
+
* Extract $1 and set $prefix to '+44<space>' if $1 is '44', otherwise set $prefix to '0'
|
971 |
+
* Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2.
|
972 |
+
* A number of very detailed GB telephone number RegEx patterns can also be found at:
|
973 |
+
* http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers
|
974 |
+
*/
|
975 |
+
$.validator.addMethod( "mobileUK", function( phone_number, element ) {
|
976 |
+
phone_number = phone_number.replace( /\(|\)|\s+|-/g, "" );
|
977 |
+
return this.optional( element ) || phone_number.length > 9 &&
|
978 |
+
phone_number.match( /^(?:(?:(?:00\s?|\+)44\s?|0)7(?:[1345789]\d{2}|624)\s?\d{3}\s?\d{3})$/ );
|
979 |
+
}, "Please specify a valid mobile number." );
|
980 |
+
|
981 |
+
$.validator.addMethod( "netmask", function( value, element ) {
|
982 |
+
return this.optional( element ) || /^(254|252|248|240|224|192|128)\.0\.0\.0|255\.(254|252|248|240|224|192|128|0)\.0\.0|255\.255\.(254|252|248|240|224|192|128|0)\.0|255\.255\.255\.(254|252|248|240|224|192|128|0)/i.test( value );
|
983 |
+
}, "Please enter a valid netmask." );
|
984 |
+
|
985 |
+
/*
|
986 |
+
* The NIE (Número de Identificación de Extranjero) is a Spanish tax identification number assigned by the Spanish
|
987 |
+
* authorities to any foreigner.
|
988 |
+
*
|
989 |
+
* The NIE is the equivalent of a Spaniards Número de Identificación Fiscal (NIF) which serves as a fiscal
|
990 |
+
* identification number. The CIF number (Certificado de Identificación Fiscal) is equivalent to the NIF, but applies to
|
991 |
+
* companies rather than individuals. The NIE consists of an 'X' or 'Y' followed by 7 or 8 digits then another letter.
|
992 |
+
*/
|
993 |
+
$.validator.addMethod( "nieES", function( value, element ) {
|
994 |
+
"use strict";
|
995 |
+
|
996 |
+
if ( this.optional( element ) ) {
|
997 |
+
return true;
|
998 |
+
}
|
999 |
+
|
1000 |
+
var nieRegEx = new RegExp( /^[MXYZ]{1}[0-9]{7,8}[TRWAGMYFPDXBNJZSQVHLCKET]{1}$/gi );
|
1001 |
+
var validChars = "TRWAGMYFPDXBNJZSQVHLCKET",
|
1002 |
+
letter = value.substr( value.length - 1 ).toUpperCase(),
|
1003 |
+
number;
|
1004 |
+
|
1005 |
+
value = value.toString().toUpperCase();
|
1006 |
+
|
1007 |
+
// Quick format test
|
1008 |
+
if ( value.length > 10 || value.length < 9 || !nieRegEx.test( value ) ) {
|
1009 |
+
return false;
|
1010 |
+
}
|
1011 |
+
|
1012 |
+
// X means same number
|
1013 |
+
// Y means number + 10000000
|
1014 |
+
// Z means number + 20000000
|
1015 |
+
value = value.replace( /^[X]/, "0" )
|
1016 |
+
.replace( /^[Y]/, "1" )
|
1017 |
+
.replace( /^[Z]/, "2" );
|
1018 |
+
|
1019 |
+
number = value.length === 9 ? value.substr( 0, 8 ) : value.substr( 0, 9 );
|
1020 |
+
|
1021 |
+
return validChars.charAt( parseInt( number, 10 ) % 23 ) === letter;
|
1022 |
+
|
1023 |
+
}, "Please specify a valid NIE number." );
|
1024 |
+
|
1025 |
+
/*
|
1026 |
+
* The Número de Identificación Fiscal ( NIF ) is the way tax identification used in Spain for individuals
|
1027 |
+
*/
|
1028 |
+
$.validator.addMethod( "nifES", function( value, element ) {
|
1029 |
+
"use strict";
|
1030 |
+
|
1031 |
+
if ( this.optional( element ) ) {
|
1032 |
+
return true;
|
1033 |
+
}
|
1034 |
+
|
1035 |
+
value = value.toUpperCase();
|
1036 |
+
|
1037 |
+
// Basic format test
|
1038 |
+
if ( !value.match( "((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)" ) ) {
|
1039 |
+
return false;
|
1040 |
+
}
|
1041 |
+
|
1042 |
+
// Test NIF
|
1043 |
+
if ( /^[0-9]{8}[A-Z]{1}$/.test( value ) ) {
|
1044 |
+
return ( "TRWAGMYFPDXBNJZSQVHLCKE".charAt( value.substring( 8, 0 ) % 23 ) === value.charAt( 8 ) );
|
1045 |
+
}
|
1046 |
+
|
1047 |
+
// Test specials NIF (starts with K, L or M)
|
1048 |
+
if ( /^[KLM]{1}/.test( value ) ) {
|
1049 |
+
return ( value[ 8 ] === "TRWAGMYFPDXBNJZSQVHLCKE".charAt( value.substring( 8, 1 ) % 23 ) );
|
1050 |
+
}
|
1051 |
+
|
1052 |
+
return false;
|
1053 |
+
|
1054 |
+
}, "Please specify a valid NIF number." );
|
1055 |
+
|
1056 |
+
/*
|
1057 |
+
* Numer identyfikacji podatkowej ( NIP ) is the way tax identification used in Poland for companies
|
1058 |
+
*/
|
1059 |
+
$.validator.addMethod( "nipPL", function( value ) {
|
1060 |
+
"use strict";
|
1061 |
+
|
1062 |
+
value = value.replace( /[^0-9]/g, "" );
|
1063 |
+
|
1064 |
+
if ( value.length !== 10 ) {
|
1065 |
+
return false;
|
1066 |
+
}
|
1067 |
+
|
1068 |
+
var arrSteps = [ 6, 5, 7, 2, 3, 4, 5, 6, 7 ];
|
1069 |
+
var intSum = 0;
|
1070 |
+
for ( var i = 0; i < 9; i++ ) {
|
1071 |
+
intSum += arrSteps[ i ] * value[ i ];
|
1072 |
+
}
|
1073 |
+
var int2 = intSum % 11;
|
1074 |
+
var intControlNr = ( int2 === 10 ) ? 0 : int2;
|
1075 |
+
|
1076 |
+
return ( intControlNr === parseInt( value[ 9 ], 10 ) );
|
1077 |
+
}, "Please specify a valid NIP number." );
|
1078 |
+
|
1079 |
+
/**
|
1080 |
+
* Created for project jquery-validation.
|
1081 |
+
* @Description Brazillian PIS or NIS number (Número de Identificação Social Pis ou Pasep) is the equivalent of a
|
1082 |
+
* Brazilian tax registration number NIS of PIS numbers have 11 digits in total: 10 numbers followed by 1 check numbers
|
1083 |
+
* that are being used for validation.
|
1084 |
+
* @copyright (c) 21/08/2018 13:14, Cleiton da Silva Mendonça
|
1085 |
+
* @author Cleiton da Silva Mendonça <cleiton.mendonca@gmail.com>
|
1086 |
+
* @link http://gitlab.com/csmendonca Gitlab of Cleiton da Silva Mendonça
|
1087 |
+
* @link http://github.com/csmendonca Github of Cleiton da Silva Mendonça
|
1088 |
+
*/
|
1089 |
+
$.validator.addMethod( "nisBR", function( value ) {
|
1090 |
+
var number;
|
1091 |
+
var cn;
|
1092 |
+
var sum = 0;
|
1093 |
+
var dv;
|
1094 |
+
var count;
|
1095 |
+
var multiplier;
|
1096 |
+
|
1097 |
+
// Removing special characters from value
|
1098 |
+
value = value.replace( /([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g, "" );
|
1099 |
+
|
1100 |
+
// Checking value to have 11 digits only
|
1101 |
+
if ( value.length !== 11 ) {
|
1102 |
+
return false;
|
1103 |
+
}
|
1104 |
+
|
1105 |
+
//Get check number of value
|
1106 |
+
cn = parseInt( value.substring( 10, 11 ), 10 );
|
1107 |
+
|
1108 |
+
//Get number with 10 digits of the value
|
1109 |
+
number = parseInt( value.substring( 0, 10 ), 10 );
|
1110 |
+
|
1111 |
+
for ( count = 2; count < 12; count++ ) {
|
1112 |
+
multiplier = count;
|
1113 |
+
if ( count === 10 ) {
|
1114 |
+
multiplier = 2;
|
1115 |
+
}
|
1116 |
+
if ( count === 11 ) {
|
1117 |
+
multiplier = 3;
|
1118 |
+
}
|
1119 |
+
sum += ( ( number % 10 ) * multiplier );
|
1120 |
+
number = parseInt( number / 10, 10 );
|
1121 |
+
}
|
1122 |
+
dv = ( sum % 11 );
|
1123 |
+
|
1124 |
+
if ( dv > 1 ) {
|
1125 |
+
dv = ( 11 - dv );
|
1126 |
+
} else {
|
1127 |
+
dv = 0;
|
1128 |
+
}
|
1129 |
+
|
1130 |
+
if ( cn === dv ) {
|
1131 |
+
return true;
|
1132 |
+
} else {
|
1133 |
+
return false;
|
1134 |
+
}
|
1135 |
+
}, "Please specify a valid NIS/PIS number." );
|
1136 |
+
|
1137 |
+
$.validator.addMethod( "notEqualTo", function( value, element, param ) {
|
1138 |
+
return this.optional( element ) || !$.validator.methods.equalTo.call( this, value, element, param );
|
1139 |
+
}, "Please enter a different value, values must not be the same." );
|
1140 |
+
|
1141 |
+
$.validator.addMethod( "nowhitespace", function( value, element ) {
|
1142 |
+
return this.optional( element ) || /^\S+$/i.test( value );
|
1143 |
+
}, "No white space please." );
|
1144 |
+
|
1145 |
+
/**
|
1146 |
+
* Return true if the field value matches the given format RegExp
|
1147 |
+
*
|
1148 |
+
* @example $.validator.methods.pattern("AR1004",element,/^AR\d{4}$/)
|
1149 |
+
* @result true
|
1150 |
+
*
|
1151 |
+
* @example $.validator.methods.pattern("BR1004",element,/^AR\d{4}$/)
|
1152 |
+
* @result false
|
1153 |
+
*
|
1154 |
+
* @name $.validator.methods.pattern
|
1155 |
+
* @type Boolean
|
1156 |
+
* @cat Plugins/Validate/Methods
|
1157 |
+
*/
|
1158 |
+
$.validator.addMethod( "pattern", function( value, element, param ) {
|
1159 |
+
if ( this.optional( element ) ) {
|
1160 |
+
return true;
|
1161 |
+
}
|
1162 |
+
if ( typeof param === "string" ) {
|
1163 |
+
param = new RegExp( "^(?:" + param + ")$" );
|
1164 |
+
}
|
1165 |
+
return param.test( value );
|
1166 |
+
}, "Invalid format." );
|
1167 |
+
|
1168 |
+
/**
|
1169 |
+
* Dutch phone numbers have 10 digits (or 11 and start with +31).
|
1170 |
+
*/
|
1171 |
+
$.validator.addMethod( "phoneNL", function( value, element ) {
|
1172 |
+
return this.optional( element ) || /^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)[1-9]((\s|\s?\-\s?)?[0-9]){8}$/.test( value );
|
1173 |
+
}, "Please specify a valid phone number." );
|
1174 |
+
|
1175 |
+
/**
|
1176 |
+
* Polish telephone numbers have 9 digits.
|
1177 |
+
*
|
1178 |
+
* Mobile phone numbers starts with following digits:
|
1179 |
+
* 45, 50, 51, 53, 57, 60, 66, 69, 72, 73, 78, 79, 88.
|
1180 |
+
*
|
1181 |
+
* Fixed-line numbers starts with area codes:
|
1182 |
+
* 12, 13, 14, 15, 16, 17, 18, 22, 23, 24, 25, 29, 32, 33,
|
1183 |
+
* 34, 41, 42, 43, 44, 46, 48, 52, 54, 55, 56, 58, 59, 61,
|
1184 |
+
* 62, 63, 65, 67, 68, 71, 74, 75, 76, 77, 81, 82, 83, 84,
|
1185 |
+
* 85, 86, 87, 89, 91, 94, 95.
|
1186 |
+
*
|
1187 |
+
* Ministry of National Defence numbers and VoIP numbers starts with 26 and 39.
|
1188 |
+
*
|
1189 |
+
* Excludes intelligent networks (premium rate, shared cost, free phone numbers).
|
1190 |
+
*
|
1191 |
+
* Poland National Numbering Plan http://www.itu.int/oth/T02020000A8/en
|
1192 |
+
*/
|
1193 |
+
$.validator.addMethod( "phonePL", function( phone_number, element ) {
|
1194 |
+
phone_number = phone_number.replace( /\s+/g, "" );
|
1195 |
+
var regexp = /^(?:(?:(?:\+|00)?48)|(?:\(\+?48\)))?(?:1[2-8]|2[2-69]|3[2-49]|4[1-68]|5[0-9]|6[0-35-9]|[7-8][1-9]|9[145])\d{7}$/;
|
1196 |
+
return this.optional( element ) || regexp.test( phone_number );
|
1197 |
+
}, "Please specify a valid phone number." );
|
1198 |
+
|
1199 |
+
/* For UK phone functions, do the following server side processing:
|
1200 |
+
* Compare original input with this RegEx pattern:
|
1201 |
+
* ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$
|
1202 |
+
* Extract $1 and set $prefix to '+44<space>' if $1 is '44', otherwise set $prefix to '0'
|
1203 |
+
* Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2.
|
1204 |
+
* A number of very detailed GB telephone number RegEx patterns can also be found at:
|
1205 |
+
* http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers
|
1206 |
+
*/
|
1207 |
+
|
1208 |
+
// Matches UK landline + mobile, accepting only 01-3 for landline or 07 for mobile to exclude many premium numbers
|
1209 |
+
$.validator.addMethod( "phonesUK", function( phone_number, element ) {
|
1210 |
+
phone_number = phone_number.replace( /\(|\)|\s+|-/g, "" );
|
1211 |
+
return this.optional( element ) || phone_number.length > 9 &&
|
1212 |
+
phone_number.match( /^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[1345789]\d{8}|624\d{6})))$/ );
|
1213 |
+
}, "Please specify a valid uk phone number." );
|
1214 |
+
|
1215 |
+
/* For UK phone functions, do the following server side processing:
|
1216 |
+
* Compare original input with this RegEx pattern:
|
1217 |
+
* ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$
|
1218 |
+
* Extract $1 and set $prefix to '+44<space>' if $1 is '44', otherwise set $prefix to '0'
|
1219 |
+
* Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2.
|
1220 |
+
* A number of very detailed GB telephone number RegEx patterns can also be found at:
|
1221 |
+
* http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers
|
1222 |
+
*/
|
1223 |
+
$.validator.addMethod( "phoneUK", function( phone_number, element ) {
|
1224 |
+
phone_number = phone_number.replace( /\(|\)|\s+|-/g, "" );
|
1225 |
+
return this.optional( element ) || phone_number.length > 9 &&
|
1226 |
+
phone_number.match( /^(?:(?:(?:00\s?|\+)44\s?)|(?:\(?0))(?:\d{2}\)?\s?\d{4}\s?\d{4}|\d{3}\)?\s?\d{3}\s?\d{3,4}|\d{4}\)?\s?(?:\d{5}|\d{3}\s?\d{3})|\d{5}\)?\s?\d{4,5})$/ );
|
1227 |
+
}, "Please specify a valid phone number." );
|
1228 |
+
|
1229 |
+
/**
|
1230 |
+
* Matches US phone number format
|
1231 |
+
*
|
1232 |
+
* where the area code may not start with 1 and the prefix may not start with 1
|
1233 |
+
* allows '-' or ' ' as a separator and allows parens around area code
|
1234 |
+
* some people may want to put a '1' in front of their number
|
1235 |
+
*
|
1236 |
+
* 1(212)-999-2345 or
|
1237 |
+
* 212 999 2344 or
|
1238 |
+
* 212-999-0983
|
1239 |
+
*
|
1240 |
+
* but not
|
1241 |
+
* 111-123-5434
|
1242 |
+
* and not
|
1243 |
+
* 212 123 4567
|
1244 |
+
*/
|
1245 |
+
$.validator.addMethod( "phoneUS", function( phone_number, element ) {
|
1246 |
+
phone_number = phone_number.replace( /\s+/g, "" );
|
1247 |
+
return this.optional( element ) || phone_number.length > 9 &&
|
1248 |
+
phone_number.match( /^(\+?1-?)?(\([2-9]([02-9]\d|1[02-9])\)|[2-9]([02-9]\d|1[02-9]))-?[2-9]\d{2}-?\d{4}$/ );
|
1249 |
+
}, "Please specify a valid phone number." );
|
1250 |
+
|
1251 |
+
/*
|
1252 |
+
* Valida CEPs do brasileiros:
|
1253 |
+
*
|
1254 |
+
* Formatos aceitos:
|
1255 |
+
* 99999-999
|
1256 |
+
* 99.999-999
|
1257 |
+
* 99999999
|
1258 |
+
*/
|
1259 |
+
$.validator.addMethod( "postalcodeBR", function( cep_value, element ) {
|
1260 |
+
return this.optional( element ) || /^\d{2}.\d{3}-\d{3}?$|^\d{5}-?\d{3}?$/.test( cep_value );
|
1261 |
+
}, "Informe um CEP válido." );
|
1262 |
+
|
1263 |
+
/**
|
1264 |
+
* Matches a valid Canadian Postal Code
|
1265 |
+
*
|
1266 |
+
* @example jQuery.validator.methods.postalCodeCA( "H0H 0H0", element )
|
1267 |
+
* @result true
|
1268 |
+
*
|
1269 |
+
* @example jQuery.validator.methods.postalCodeCA( "H0H0H0", element )
|
1270 |
+
* @result false
|
1271 |
+
*
|
1272 |
+
* @name jQuery.validator.methods.postalCodeCA
|
1273 |
+
* @type Boolean
|
1274 |
+
* @cat Plugins/Validate/Methods
|
1275 |
+
*/
|
1276 |
+
$.validator.addMethod( "postalCodeCA", function( value, element ) {
|
1277 |
+
return this.optional( element ) || /^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJKLMNPRSTVWXYZ] *\d[ABCEGHJKLMNPRSTVWXYZ]\d$/i.test( value );
|
1278 |
+
}, "Please specify a valid postal code." );
|
1279 |
+
|
1280 |
+
/* Matches Italian postcode (CAP) */
|
1281 |
+
$.validator.addMethod( "postalcodeIT", function( value, element ) {
|
1282 |
+
return this.optional( element ) || /^\d{5}$/.test( value );
|
1283 |
+
}, "Please specify a valid postal code." );
|
1284 |
+
|
1285 |
+
$.validator.addMethod( "postalcodeNL", function( value, element ) {
|
1286 |
+
return this.optional( element ) || /^[1-9][0-9]{3}\s?[a-zA-Z]{2}$/.test( value );
|
1287 |
+
}, "Please specify a valid postal code." );
|
1288 |
+
|
1289 |
+
// Matches UK postcode. Does not match to UK Channel Islands that have their own postcodes (non standard UK)
|
1290 |
+
$.validator.addMethod( "postcodeUK", function( value, element ) {
|
1291 |
+
return this.optional( element ) || /^((([A-PR-UWYZ][0-9])|([A-PR-UWYZ][0-9][0-9])|([A-PR-UWYZ][A-HK-Y][0-9])|([A-PR-UWYZ][A-HK-Y][0-9][0-9])|([A-PR-UWYZ][0-9][A-HJKSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY]))\s?([0-9][ABD-HJLNP-UW-Z]{2})|(GIR)\s?(0AA))$/i.test( value );
|
1292 |
+
}, "Please specify a valid UK postcode." );
|
1293 |
+
|
1294 |
+
/*
|
1295 |
+
* Lets you say "at least X inputs that match selector Y must be filled."
|
1296 |
+
*
|
1297 |
+
* The end result is that neither of these inputs:
|
1298 |
+
*
|
1299 |
+
* <input class="productinfo" name="partnumber">
|
1300 |
+
* <input class="productinfo" name="description">
|
1301 |
+
*
|
1302 |
+
* ...will validate unless at least one of them is filled.
|
1303 |
+
*
|
1304 |
+
* partnumber: {require_from_group: [1,".productinfo"]},
|
1305 |
+
* description: {require_from_group: [1,".productinfo"]}
|
1306 |
+
*
|
1307 |
+
* options[0]: number of fields that must be filled in the group
|
1308 |
+
* options[1]: CSS selector that defines the group of conditionally required fields
|
1309 |
+
*/
|
1310 |
+
$.validator.addMethod( "require_from_group", function( value, element, options ) {
|
1311 |
+
var $fields = $( options[ 1 ], element.form ),
|
1312 |
+
$fieldsFirst = $fields.eq( 0 ),
|
1313 |
+
validator = $fieldsFirst.data( "valid_req_grp" ) ? $fieldsFirst.data( "valid_req_grp" ) : $.extend( {}, this ),
|
1314 |
+
isValid = $fields.filter( function() {
|
1315 |
+
return validator.elementValue( this );
|
1316 |
+
} ).length >= options[ 0 ];
|
1317 |
+
|
1318 |
+
// Store the cloned validator for future validation
|
1319 |
+
$fieldsFirst.data( "valid_req_grp", validator );
|
1320 |
+
|
1321 |
+
// If element isn't being validated, run each require_from_group field's validation rules
|
1322 |
+
if ( !$( element ).data( "being_validated" ) ) {
|
1323 |
+
$fields.data( "being_validated", true );
|
1324 |
+
$fields.each( function() {
|
1325 |
+
validator.element( this );
|
1326 |
+
} );
|
1327 |
+
$fields.data( "being_validated", false );
|
1328 |
+
}
|
1329 |
+
return isValid;
|
1330 |
+
}, $.validator.format( "Please fill at least {0} of these fields." ) );
|
1331 |
+
|
1332 |
+
/*
|
1333 |
+
* Lets you say "either at least X inputs that match selector Y must be filled,
|
1334 |
+
* OR they must all be skipped (left blank)."
|
1335 |
+
*
|
1336 |
+
* The end result, is that none of these inputs:
|
1337 |
+
*
|
1338 |
+
* <input class="productinfo" name="partnumber">
|
1339 |
+
* <input class="productinfo" name="description">
|
1340 |
+
* <input class="productinfo" name="color">
|
1341 |
+
*
|
1342 |
+
* ...will validate unless either at least two of them are filled,
|
1343 |
+
* OR none of them are.
|
1344 |
+
*
|
1345 |
+
* partnumber: {skip_or_fill_minimum: [2,".productinfo"]},
|
1346 |
+
* description: {skip_or_fill_minimum: [2,".productinfo"]},
|
1347 |
+
* color: {skip_or_fill_minimum: [2,".productinfo"]}
|
1348 |
+
*
|
1349 |
+
* options[0]: number of fields that must be filled in the group
|
1350 |
+
* options[1]: CSS selector that defines the group of conditionally required fields
|
1351 |
+
*
|
1352 |
+
*/
|
1353 |
+
$.validator.addMethod( "skip_or_fill_minimum", function( value, element, options ) {
|
1354 |
+
var $fields = $( options[ 1 ], element.form ),
|
1355 |
+
$fieldsFirst = $fields.eq( 0 ),
|
1356 |
+
validator = $fieldsFirst.data( "valid_skip" ) ? $fieldsFirst.data( "valid_skip" ) : $.extend( {}, this ),
|
1357 |
+
numberFilled = $fields.filter( function() {
|
1358 |
+
return validator.elementValue( this );
|
1359 |
+
} ).length,
|
1360 |
+
isValid = numberFilled === 0 || numberFilled >= options[ 0 ];
|
1361 |
+
|
1362 |
+
// Store the cloned validator for future validation
|
1363 |
+
$fieldsFirst.data( "valid_skip", validator );
|
1364 |
+
|
1365 |
+
// If element isn't being validated, run each skip_or_fill_minimum field's validation rules
|
1366 |
+
if ( !$( element ).data( "being_validated" ) ) {
|
1367 |
+
$fields.data( "being_validated", true );
|
1368 |
+
$fields.each( function() {
|
1369 |
+
validator.element( this );
|
1370 |
+
} );
|
1371 |
+
$fields.data( "being_validated", false );
|
1372 |
+
}
|
1373 |
+
return isValid;
|
1374 |
+
}, $.validator.format( "Please either skip these fields or fill at least {0} of them." ) );
|
1375 |
+
|
1376 |
+
/* Validates US States and/or Territories by @jdforsythe
|
1377 |
+
* Can be case insensitive or require capitalization - default is case insensitive
|
1378 |
+
* Can include US Territories or not - default does not
|
1379 |
+
* Can include US Military postal abbreviations (AA, AE, AP) - default does not
|
1380 |
+
*
|
1381 |
+
* Note: "States" always includes DC (District of Colombia)
|
1382 |
+
*
|
1383 |
+
* Usage examples:
|
1384 |
+
*
|
1385 |
+
* This is the default - case insensitive, no territories, no military zones
|
1386 |
+
* stateInput: {
|
1387 |
+
* caseSensitive: false,
|
1388 |
+
* includeTerritories: false,
|
1389 |
+
* includeMilitary: false
|
1390 |
+
* }
|
1391 |
+
*
|
1392 |
+
* Only allow capital letters, no territories, no military zones
|
1393 |
+
* stateInput: {
|
1394 |
+
* caseSensitive: false
|
1395 |
+
* }
|
1396 |
+
*
|
1397 |
+
* Case insensitive, include territories but not military zones
|
1398 |
+
* stateInput: {
|
1399 |
+
* includeTerritories: true
|
1400 |
+
* }
|
1401 |
+
*
|
1402 |
+
* Only allow capital letters, include territories and military zones
|
1403 |
+
* stateInput: {
|
1404 |
+
* caseSensitive: true,
|
1405 |
+
* includeTerritories: true,
|
1406 |
+
* includeMilitary: true
|
1407 |
+
* }
|
1408 |
+
*
|
1409 |
+
*/
|
1410 |
+
$.validator.addMethod( "stateUS", function( value, element, options ) {
|
1411 |
+
var isDefault = typeof options === "undefined",
|
1412 |
+
caseSensitive = ( isDefault || typeof options.caseSensitive === "undefined" ) ? false : options.caseSensitive,
|
1413 |
+
includeTerritories = ( isDefault || typeof options.includeTerritories === "undefined" ) ? false : options.includeTerritories,
|
1414 |
+
includeMilitary = ( isDefault || typeof options.includeMilitary === "undefined" ) ? false : options.includeMilitary,
|
1415 |
+
regex;
|
1416 |
+
|
1417 |
+
if ( !includeTerritories && !includeMilitary ) {
|
1418 |
+
regex = "^(A[KLRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$";
|
1419 |
+
} else if ( includeTerritories && includeMilitary ) {
|
1420 |
+
regex = "^(A[AEKLPRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$";
|
1421 |
+
} else if ( includeTerritories ) {
|
1422 |
+
regex = "^(A[KLRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$";
|
1423 |
+
} else {
|
1424 |
+
regex = "^(A[AEKLPRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$";
|
1425 |
+
}
|
1426 |
+
|
1427 |
+
regex = caseSensitive ? new RegExp( regex ) : new RegExp( regex, "i" );
|
1428 |
+
return this.optional( element ) || regex.test( value );
|
1429 |
+
}, "Please specify a valid state." );
|
1430 |
+
|
1431 |
+
// TODO check if value starts with <, otherwise don't try stripping anything
|
1432 |
+
$.validator.addMethod( "strippedminlength", function( value, element, param ) {
|
1433 |
+
return $( value ).text().length >= param;
|
1434 |
+
}, $.validator.format( "Please enter at least {0} characters." ) );
|
1435 |
+
|
1436 |
+
$.validator.addMethod( "time", function( value, element ) {
|
1437 |
+
return this.optional( element ) || /^([01]\d|2[0-3]|[0-9])(:[0-5]\d){1,2}$/.test( value );
|
1438 |
+
}, "Please enter a valid time, between 00:00 and 23:59." );
|
1439 |
+
|
1440 |
+
$.validator.addMethod( "time12h", function( value, element ) {
|
1441 |
+
return this.optional( element ) || /^((0?[1-9]|1[012])(:[0-5]\d){1,2}(\ ?[AP]M))$/i.test( value );
|
1442 |
+
}, "Please enter a valid time in 12-hour am/pm format." );
|
1443 |
+
|
1444 |
+
// Same as url, but TLD is optional
|
1445 |
+
$.validator.addMethod( "url2", function( value, element ) {
|
1446 |
+
return this.optional( element ) || /^(?:(?:(?:https?|ftp):)?\/\/)(?:(?:[^\]\[?\/<~#`!@$^&*()+=}|:";',>{ ]|%[0-9A-Fa-f]{2})+(?::(?:[^\]\[?\/<~#`!@$^&*()+=}|:";',>{ ]|%[0-9A-Fa-f]{2})*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?)|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff])|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62}\.)))(?::\d{2,5})?(?:[/?#]\S*)?$/i.test( value );
|
1447 |
+
}, $.validator.messages.url );
|
1448 |
+
|
1449 |
+
/**
|
1450 |
+
* Return true, if the value is a valid vehicle identification number (VIN).
|
1451 |
+
*
|
1452 |
+
* Works with all kind of text inputs.
|
1453 |
+
*
|
1454 |
+
* @example <input type="text" size="20" name="VehicleID" class="{required:true,vinUS:true}" />
|
1455 |
+
* @desc Declares a required input element whose value must be a valid vehicle identification number.
|
1456 |
+
*
|
1457 |
+
* @name $.validator.methods.vinUS
|
1458 |
+
* @type Boolean
|
1459 |
+
* @cat Plugins/Validate/Methods
|
1460 |
+
*/
|
1461 |
+
$.validator.addMethod( "vinUS", function( v ) {
|
1462 |
+
if ( v.length !== 17 ) {
|
1463 |
+
return false;
|
1464 |
+
}
|
1465 |
+
|
1466 |
+
var LL = [ "A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" ],
|
1467 |
+
VL = [ 1, 2, 3, 4, 5, 6, 7, 8, 1, 2, 3, 4, 5, 7, 9, 2, 3, 4, 5, 6, 7, 8, 9 ],
|
1468 |
+
FL = [ 8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2 ],
|
1469 |
+
rs = 0,
|
1470 |
+
i, n, d, f, cd, cdv;
|
1471 |
+
|
1472 |
+
for ( i = 0; i < 17; i++ ) {
|
1473 |
+
f = FL[ i ];
|
1474 |
+
d = v.slice( i, i + 1 );
|
1475 |
+
if ( i === 8 ) {
|
1476 |
+
cdv = d;
|
1477 |
+
}
|
1478 |
+
if ( !isNaN( d ) ) {
|
1479 |
+
d *= f;
|
1480 |
+
} else {
|
1481 |
+
for ( n = 0; n < LL.length; n++ ) {
|
1482 |
+
if ( d.toUpperCase() === LL[ n ] ) {
|
1483 |
+
d = VL[ n ];
|
1484 |
+
d *= f;
|
1485 |
+
if ( isNaN( cdv ) && n === 8 ) {
|
1486 |
+
cdv = LL[ n ];
|
1487 |
+
}
|
1488 |
+
break;
|
1489 |
+
}
|
1490 |
+
}
|
1491 |
+
}
|
1492 |
+
rs += d;
|
1493 |
}
|
1494 |
+
cd = rs % 11;
|
1495 |
+
if ( cd === 10 ) {
|
1496 |
+
cd = "X";
|
1497 |
}
|
1498 |
+
if ( cd === cdv ) {
|
1499 |
return true;
|
1500 |
}
|
1501 |
return false;
|
1502 |
+
}, "The specified vehicle identification number (VIN) is invalid." );
|
1503 |
|
1504 |
+
$.validator.addMethod( "zipcodeUS", function( value, element ) {
|
1505 |
+
return this.optional( element ) || /^\d{5}(-\d{4})?$/.test( value );
|
1506 |
+
}, "The specified US ZIP Code is invalid." );
|
1507 |
|
1508 |
+
$.validator.addMethod( "ziprange", function( value, element ) {
|
1509 |
+
return this.optional( element ) || /^90[2-5]\d\{2\}-\d{4}$/.test( value );
|
1510 |
+
}, "Your ZIP-code must be in the range 902xx-xxxx to 905xx-xxxx." );
|
1511 |
+
return $;
|
1512 |
+
}));
|
js/jquery.validate.js
CHANGED
@@ -1,1188 +1,1661 @@
|
|
1 |
-
|
2 |
-
* jQuery Validation Plugin
|
3 |
-
*
|
4 |
-
*
|
5 |
-
*
|
6 |
-
*
|
7 |
-
*
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
return
|
30 |
-
}
|
31 |
-
|
32 |
-
//
|
33 |
-
this
|
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 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
$.extend(
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
}
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
};
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
this.
|
298 |
-
|
299 |
-
|
300 |
-
this.
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
this.
|
334 |
-
|
335 |
-
this.
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
}
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
this.
|
397 |
-
this.
|
398 |
-
this.
|
399 |
-
this.
|
400 |
-
this.
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
}
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
return
|
470 |
-
},
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
this.
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
this.
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
}
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
this.
|
591 |
-
},
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
}
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
typeof this.
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
|
669 |
-
|
670 |
-
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
var
|
692 |
-
return $(
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
},
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
|
734 |
-
}
|
735 |
-
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
|
740 |
-
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
this
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
//
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
//
|
864 |
-
|
865 |
-
|
866 |
-
}
|
867 |
-
|
868 |
-
//
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
|
884 |
-
|
885 |
-
|
886 |
-
|
887 |
-
if (
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
|
892 |
-
}
|
893 |
-
|
894 |
-
|
895 |
-
|
896 |
-
|
897 |
-
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
|
952 |
-
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
960 |
-
|
961 |
-
|
962 |
-
|
963 |
-
|
964 |
-
|
965 |
-
|
966 |
-
|
967 |
-
|
968 |
-
|
969 |
-
|
970 |
-
|
971 |
-
|
972 |
-
|
973 |
-
|
974 |
-
|
975 |
-
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
-
|
1022 |
-
|
1023 |
-
|
1024 |
-
|
1025 |
-
|
1026 |
-
|
1027 |
-
|
1028 |
-
|
1029 |
-
|
1030 |
-
|
1031 |
-
},
|
1032 |
-
|
1033 |
-
|
1034 |
-
|
1035 |
-
|
1036 |
-
|
1037 |
-
|
1038 |
-
|
1039 |
-
|
1040 |
-
|
1041 |
-
|
1042 |
-
|
1043 |
-
|
1044 |
-
|
1045 |
-
|
1046 |
-
|
1047 |
-
},
|
1048 |
-
|
1049 |
-
//
|
1050 |
-
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
|
1056 |
-
|
1057 |
-
|
1058 |
-
|
1059 |
-
|
1060 |
-
|
1061 |
-
|
1062 |
-
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
1070 |
-
|
1071 |
-
|
1072 |
-
|
1073 |
-
|
1074 |
-
|
1075 |
-
|
1076 |
-
|
1077 |
-
|
1078 |
-
|
1079 |
-
|
1080 |
-
|
1081 |
-
|
1082 |
-
|
1083 |
-
|
1084 |
-
|
1085 |
-
|
1086 |
-
|
1087 |
-
|
1088 |
-
|
1089 |
-
|
1090 |
-
|
1091 |
-
|
1092 |
-
|
1093 |
-
|
1094 |
-
|
1095 |
-
|
1096 |
-
|
1097 |
-
|
1098 |
-
|
1099 |
-
|
1100 |
-
|
1101 |
-
|
1102 |
-
|
1103 |
-
|
1104 |
-
|
1105 |
-
}
|
1106 |
-
|
1107 |
-
|
1108 |
-
|
1109 |
-
|
1110 |
-
|
1111 |
-
|
1112 |
-
|
1113 |
-
|
1114 |
-
|
1115 |
-
|
1116 |
-
|
1117 |
-
|
1118 |
-
|
1119 |
-
|
1120 |
-
|
1121 |
-
|
1122 |
-
|
1123 |
-
|
1124 |
-
|
1125 |
-
|
1126 |
-
|
1127 |
-
|
1128 |
-
|
1129 |
-
|
1130 |
-
|
1131 |
-
|
1132 |
-
|
1133 |
-
|
1134 |
-
|
1135 |
-
|
1136 |
-
|
1137 |
-
|
1138 |
-
|
1139 |
-
|
1140 |
-
|
1141 |
-
|
1142 |
-
|
1143 |
-
|
1144 |
-
|
1145 |
-
|
1146 |
-
|
1147 |
-
|
1148 |
-
|
1149 |
-
|
1150 |
-
|
1151 |
-
|
1152 |
-
|
1153 |
-
|
1154 |
-
|
1155 |
-
|
1156 |
-
|
1157 |
-
|
1158 |
-
|
1159 |
-
|
1160 |
-
|
1161 |
-
|
1162 |
-
|
1163 |
-
|
1164 |
-
|
1165 |
-
|
1166 |
-
|
1167 |
-
|
1168 |
-
|
1169 |
-
|
1170 |
-
|
1171 |
-
|
1172 |
-
|
1173 |
-
|
1174 |
-
|
1175 |
-
|
1176 |
-
|
1177 |
-
|
1178 |
-
|
1179 |
-
|
1180 |
-
|
1181 |
-
|
1182 |
-
|
1183 |
-
|
1184 |
-
|
1185 |
-
|
1186 |
-
|
1187 |
-
|
1188 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
* jQuery Validation Plugin v1.19.5
|
3 |
+
*
|
4 |
+
* https://jqueryvalidation.org/
|
5 |
+
*
|
6 |
+
* Copyright (c) 2022 Jörn Zaefferer
|
7 |
+
* Released under the MIT license
|
8 |
+
*/
|
9 |
+
(function( factory ) {
|
10 |
+
if ( typeof define === "function" && define.amd ) {
|
11 |
+
define( ["jquery"], factory );
|
12 |
+
} else if (typeof module === "object" && module.exports) {
|
13 |
+
module.exports = factory( require( "jquery" ) );
|
14 |
+
} else {
|
15 |
+
factory( jQuery );
|
16 |
+
}
|
17 |
+
}(function( $ ) {
|
18 |
+
|
19 |
+
$.extend( $.fn, {
|
20 |
+
|
21 |
+
// https://jqueryvalidation.org/validate/
|
22 |
+
validate: function( options ) {
|
23 |
+
|
24 |
+
// If nothing is selected, return nothing; can't chain anyway
|
25 |
+
if ( !this.length ) {
|
26 |
+
if ( options && options.debug && window.console ) {
|
27 |
+
console.warn( "Nothing selected, can't validate, returning nothing." );
|
28 |
+
}
|
29 |
+
return;
|
30 |
+
}
|
31 |
+
|
32 |
+
// Check if a validator for this form was already created
|
33 |
+
var validator = $.data( this[ 0 ], "validator" );
|
34 |
+
if ( validator ) {
|
35 |
+
return validator;
|
36 |
+
}
|
37 |
+
|
38 |
+
// Add novalidate tag if HTML5.
|
39 |
+
this.attr( "novalidate", "novalidate" );
|
40 |
+
|
41 |
+
validator = new $.validator( options, this[ 0 ] );
|
42 |
+
$.data( this[ 0 ], "validator", validator );
|
43 |
+
|
44 |
+
if ( validator.settings.onsubmit ) {
|
45 |
+
|
46 |
+
this.on( "click.validate", ":submit", function( event ) {
|
47 |
+
|
48 |
+
// Track the used submit button to properly handle scripted
|
49 |
+
// submits later.
|
50 |
+
validator.submitButton = event.currentTarget;
|
51 |
+
|
52 |
+
// Allow suppressing validation by adding a cancel class to the submit button
|
53 |
+
if ( $( this ).hasClass( "cancel" ) ) {
|
54 |
+
validator.cancelSubmit = true;
|
55 |
+
}
|
56 |
+
|
57 |
+
// Allow suppressing validation by adding the html5 formnovalidate attribute to the submit button
|
58 |
+
if ( $( this ).attr( "formnovalidate" ) !== undefined ) {
|
59 |
+
validator.cancelSubmit = true;
|
60 |
+
}
|
61 |
+
} );
|
62 |
+
|
63 |
+
// Validate the form on submit
|
64 |
+
this.on( "submit.validate", function( event ) {
|
65 |
+
if ( validator.settings.debug ) {
|
66 |
+
|
67 |
+
// Prevent form submit to be able to see console output
|
68 |
+
event.preventDefault();
|
69 |
+
}
|
70 |
+
|
71 |
+
function handle() {
|
72 |
+
var hidden, result;
|
73 |
+
|
74 |
+
// Insert a hidden input as a replacement for the missing submit button
|
75 |
+
// The hidden input is inserted in two cases:
|
76 |
+
// - A user defined a `submitHandler`
|
77 |
+
// - There was a pending request due to `remote` method and `stopRequest()`
|
78 |
+
// was called to submit the form in case it's valid
|
79 |
+
if ( validator.submitButton && ( validator.settings.submitHandler || validator.formSubmitted ) ) {
|
80 |
+
hidden = $( "<input type='hidden'/>" )
|
81 |
+
.attr( "name", validator.submitButton.name )
|
82 |
+
.val( $( validator.submitButton ).val() )
|
83 |
+
.appendTo( validator.currentForm );
|
84 |
+
}
|
85 |
+
|
86 |
+
if ( validator.settings.submitHandler && !validator.settings.debug ) {
|
87 |
+
result = validator.settings.submitHandler.call( validator, validator.currentForm, event );
|
88 |
+
if ( hidden ) {
|
89 |
+
|
90 |
+
// And clean up afterwards; thanks to no-block-scope, hidden can be referenced
|
91 |
+
hidden.remove();
|
92 |
+
}
|
93 |
+
if ( result !== undefined ) {
|
94 |
+
return result;
|
95 |
+
}
|
96 |
+
return false;
|
97 |
+
}
|
98 |
+
return true;
|
99 |
+
}
|
100 |
+
|
101 |
+
// Prevent submit for invalid forms or custom submit handlers
|
102 |
+
if ( validator.cancelSubmit ) {
|
103 |
+
validator.cancelSubmit = false;
|
104 |
+
return handle();
|
105 |
+
}
|
106 |
+
if ( validator.form() ) {
|
107 |
+
if ( validator.pendingRequest ) {
|
108 |
+
validator.formSubmitted = true;
|
109 |
+
return false;
|
110 |
+
}
|
111 |
+
return handle();
|
112 |
+
} else {
|
113 |
+
validator.focusInvalid();
|
114 |
+
return false;
|
115 |
+
}
|
116 |
+
} );
|
117 |
+
}
|
118 |
+
|
119 |
+
return validator;
|
120 |
+
},
|
121 |
+
|
122 |
+
// https://jqueryvalidation.org/valid/
|
123 |
+
valid: function() {
|
124 |
+
var valid, validator, errorList;
|
125 |
+
|
126 |
+
if ( $( this[ 0 ] ).is( "form" ) ) {
|
127 |
+
valid = this.validate().form();
|
128 |
+
} else {
|
129 |
+
errorList = [];
|
130 |
+
valid = true;
|
131 |
+
validator = $( this[ 0 ].form ).validate();
|
132 |
+
this.each( function() {
|
133 |
+
valid = validator.element( this ) && valid;
|
134 |
+
if ( !valid ) {
|
135 |
+
errorList = errorList.concat( validator.errorList );
|
136 |
+
}
|
137 |
+
} );
|
138 |
+
validator.errorList = errorList;
|
139 |
+
}
|
140 |
+
return valid;
|
141 |
+
},
|
142 |
+
|
143 |
+
// https://jqueryvalidation.org/rules/
|
144 |
+
rules: function( command, argument ) {
|
145 |
+
var element = this[ 0 ],
|
146 |
+
isContentEditable = typeof this.attr( "contenteditable" ) !== "undefined" && this.attr( "contenteditable" ) !== "false",
|
147 |
+
settings, staticRules, existingRules, data, param, filtered;
|
148 |
+
|
149 |
+
// If nothing is selected, return empty object; can't chain anyway
|
150 |
+
if ( element == null ) {
|
151 |
+
return;
|
152 |
+
}
|
153 |
+
|
154 |
+
if ( !element.form && isContentEditable ) {
|
155 |
+
element.form = this.closest( "form" )[ 0 ];
|
156 |
+
element.name = this.attr( "name" );
|
157 |
+
}
|
158 |
+
|
159 |
+
if ( element.form == null ) {
|
160 |
+
return;
|
161 |
+
}
|
162 |
+
|
163 |
+
if ( command ) {
|
164 |
+
settings = $.data( element.form, "validator" ).settings;
|
165 |
+
staticRules = settings.rules;
|
166 |
+
existingRules = $.validator.staticRules( element );
|
167 |
+
switch ( command ) {
|
168 |
+
case "add":
|
169 |
+
$.extend( existingRules, $.validator.normalizeRule( argument ) );
|
170 |
+
|
171 |
+
// Remove messages from rules, but allow them to be set separately
|
172 |
+
delete existingRules.messages;
|
173 |
+
staticRules[ element.name ] = existingRules;
|
174 |
+
if ( argument.messages ) {
|
175 |
+
settings.messages[ element.name ] = $.extend( settings.messages[ element.name ], argument.messages );
|
176 |
+
}
|
177 |
+
break;
|
178 |
+
case "remove":
|
179 |
+
if ( !argument ) {
|
180 |
+
delete staticRules[ element.name ];
|
181 |
+
return existingRules;
|
182 |
+
}
|
183 |
+
filtered = {};
|
184 |
+
$.each( argument.split( /\s/ ), function( index, method ) {
|
185 |
+
filtered[ method ] = existingRules[ method ];
|
186 |
+
delete existingRules[ method ];
|
187 |
+
} );
|
188 |
+
return filtered;
|
189 |
+
}
|
190 |
+
}
|
191 |
+
|
192 |
+
data = $.validator.normalizeRules(
|
193 |
+
$.extend(
|
194 |
+
{},
|
195 |
+
$.validator.classRules( element ),
|
196 |
+
$.validator.attributeRules( element ),
|
197 |
+
$.validator.dataRules( element ),
|
198 |
+
$.validator.staticRules( element )
|
199 |
+
), element );
|
200 |
+
|
201 |
+
// Make sure required is at front
|
202 |
+
if ( data.required ) {
|
203 |
+
param = data.required;
|
204 |
+
delete data.required;
|
205 |
+
data = $.extend( { required: param }, data );
|
206 |
+
}
|
207 |
+
|
208 |
+
// Make sure remote is at back
|
209 |
+
if ( data.remote ) {
|
210 |
+
param = data.remote;
|
211 |
+
delete data.remote;
|
212 |
+
data = $.extend( data, { remote: param } );
|
213 |
+
}
|
214 |
+
|
215 |
+
return data;
|
216 |
+
}
|
217 |
+
} );
|
218 |
+
|
219 |
+
// JQuery trim is deprecated, provide a trim method based on String.prototype.trim
|
220 |
+
var trim = function( str ) {
|
221 |
+
|
222 |
+
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/trim#Polyfill
|
223 |
+
return str.replace( /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "" );
|
224 |
+
};
|
225 |
+
|
226 |
+
// Custom selectors
|
227 |
+
$.extend( $.expr.pseudos || $.expr[ ":" ], { // '|| $.expr[ ":" ]' here enables backwards compatibility to jQuery 1.7. Can be removed when dropping jQ 1.7.x support
|
228 |
+
|
229 |
+
// https://jqueryvalidation.org/blank-selector/
|
230 |
+
blank: function( a ) {
|
231 |
+
return !trim( "" + $( a ).val() );
|
232 |
+
},
|
233 |
+
|
234 |
+
// https://jqueryvalidation.org/filled-selector/
|
235 |
+
filled: function( a ) {
|
236 |
+
var val = $( a ).val();
|
237 |
+
return val !== null && !!trim( "" + val );
|
238 |
+
},
|
239 |
+
|
240 |
+
// https://jqueryvalidation.org/unchecked-selector/
|
241 |
+
unchecked: function( a ) {
|
242 |
+
return !$( a ).prop( "checked" );
|
243 |
+
}
|
244 |
+
} );
|
245 |
+
|
246 |
+
// Constructor for validator
|
247 |
+
$.validator = function( options, form ) {
|
248 |
+
this.settings = $.extend( true, {}, $.validator.defaults, options );
|
249 |
+
this.currentForm = form;
|
250 |
+
this.init();
|
251 |
+
};
|
252 |
+
|
253 |
+
// https://jqueryvalidation.org/jQuery.validator.format/
|
254 |
+
$.validator.format = function( source, params ) {
|
255 |
+
if ( arguments.length === 1 ) {
|
256 |
+
return function() {
|
257 |
+
var args = $.makeArray( arguments );
|
258 |
+
args.unshift( source );
|
259 |
+
return $.validator.format.apply( this, args );
|
260 |
+
};
|
261 |
+
}
|
262 |
+
if ( params === undefined ) {
|
263 |
+
return source;
|
264 |
+
}
|
265 |
+
if ( arguments.length > 2 && params.constructor !== Array ) {
|
266 |
+
params = $.makeArray( arguments ).slice( 1 );
|
267 |
+
}
|
268 |
+
if ( params.constructor !== Array ) {
|
269 |
+
params = [ params ];
|
270 |
+
}
|
271 |
+
$.each( params, function( i, n ) {
|
272 |
+
source = source.replace( new RegExp( "\\{" + i + "\\}", "g" ), function() {
|
273 |
+
return n;
|
274 |
+
} );
|
275 |
+
} );
|
276 |
+
return source;
|
277 |
+
};
|
278 |
+
|
279 |
+
$.extend( $.validator, {
|
280 |
+
|
281 |
+
defaults: {
|
282 |
+
messages: {},
|
283 |
+
groups: {},
|
284 |
+
rules: {},
|
285 |
+
errorClass: "error",
|
286 |
+
pendingClass: "pending",
|
287 |
+
validClass: "valid",
|
288 |
+
errorElement: "label",
|
289 |
+
focusCleanup: false,
|
290 |
+
focusInvalid: true,
|
291 |
+
errorContainer: $( [] ),
|
292 |
+
errorLabelContainer: $( [] ),
|
293 |
+
onsubmit: true,
|
294 |
+
ignore: ":hidden",
|
295 |
+
ignoreTitle: false,
|
296 |
+
onfocusin: function( element ) {
|
297 |
+
this.lastActive = element;
|
298 |
+
|
299 |
+
// Hide error label and remove error class on focus if enabled
|
300 |
+
if ( this.settings.focusCleanup ) {
|
301 |
+
if ( this.settings.unhighlight ) {
|
302 |
+
this.settings.unhighlight.call( this, element, this.settings.errorClass, this.settings.validClass );
|
303 |
+
}
|
304 |
+
this.hideThese( this.errorsFor( element ) );
|
305 |
+
}
|
306 |
+
},
|
307 |
+
onfocusout: function( element ) {
|
308 |
+
if ( !this.checkable( element ) && ( element.name in this.submitted || !this.optional( element ) ) ) {
|
309 |
+
this.element( element );
|
310 |
+
}
|
311 |
+
},
|
312 |
+
onkeyup: function( element, event ) {
|
313 |
+
|
314 |
+
// Avoid revalidate the field when pressing one of the following keys
|
315 |
+
// Shift => 16
|
316 |
+
// Ctrl => 17
|
317 |
+
// Alt => 18
|
318 |
+
// Caps lock => 20
|
319 |
+
// End => 35
|
320 |
+
// Home => 36
|
321 |
+
// Left arrow => 37
|
322 |
+
// Up arrow => 38
|
323 |
+
// Right arrow => 39
|
324 |
+
// Down arrow => 40
|
325 |
+
// Insert => 45
|
326 |
+
// Num lock => 144
|
327 |
+
// AltGr key => 225
|
328 |
+
var excludedKeys = [
|
329 |
+
16, 17, 18, 20, 35, 36, 37,
|
330 |
+
38, 39, 40, 45, 144, 225
|
331 |
+
];
|
332 |
+
|
333 |
+
if ( event.which === 9 && this.elementValue( element ) === "" || $.inArray( event.keyCode, excludedKeys ) !== -1 ) {
|
334 |
+
return;
|
335 |
+
} else if ( element.name in this.submitted || element.name in this.invalid ) {
|
336 |
+
this.element( element );
|
337 |
+
}
|
338 |
+
},
|
339 |
+
onclick: function( element ) {
|
340 |
+
|
341 |
+
// Click on selects, radiobuttons and checkboxes
|
342 |
+
if ( element.name in this.submitted ) {
|
343 |
+
this.element( element );
|
344 |
+
|
345 |
+
// Or option elements, check parent select in that case
|
346 |
+
} else if ( element.parentNode.name in this.submitted ) {
|
347 |
+
this.element( element.parentNode );
|
348 |
+
}
|
349 |
+
},
|
350 |
+
highlight: function( element, errorClass, validClass ) {
|
351 |
+
if ( element.type === "radio" ) {
|
352 |
+
this.findByName( element.name ).addClass( errorClass ).removeClass( validClass );
|
353 |
+
} else {
|
354 |
+
$( element ).addClass( errorClass ).removeClass( validClass );
|
355 |
+
}
|
356 |
+
},
|
357 |
+
unhighlight: function( element, errorClass, validClass ) {
|
358 |
+
if ( element.type === "radio" ) {
|
359 |
+
this.findByName( element.name ).removeClass( errorClass ).addClass( validClass );
|
360 |
+
} else {
|
361 |
+
$( element ).removeClass( errorClass ).addClass( validClass );
|
362 |
+
}
|
363 |
+
}
|
364 |
+
},
|
365 |
+
|
366 |
+
// https://jqueryvalidation.org/jQuery.validator.setDefaults/
|
367 |
+
setDefaults: function( settings ) {
|
368 |
+
$.extend( $.validator.defaults, settings );
|
369 |
+
},
|
370 |
+
|
371 |
+
messages: {
|
372 |
+
required: "This field is required.",
|
373 |
+
remote: "Please fix this field.",
|
374 |
+
email: "Please enter a valid email address.",
|
375 |
+
url: "Please enter a valid URL.",
|
376 |
+
date: "Please enter a valid date.",
|
377 |
+
dateISO: "Please enter a valid date (ISO).",
|
378 |
+
number: "Please enter a valid number.",
|
379 |
+
digits: "Please enter only digits.",
|
380 |
+
equalTo: "Please enter the same value again.",
|
381 |
+
maxlength: $.validator.format( "Please enter no more than {0} characters." ),
|
382 |
+
minlength: $.validator.format( "Please enter at least {0} characters." ),
|
383 |
+
rangelength: $.validator.format( "Please enter a value between {0} and {1} characters long." ),
|
384 |
+
range: $.validator.format( "Please enter a value between {0} and {1}." ),
|
385 |
+
max: $.validator.format( "Please enter a value less than or equal to {0}." ),
|
386 |
+
min: $.validator.format( "Please enter a value greater than or equal to {0}." ),
|
387 |
+
step: $.validator.format( "Please enter a multiple of {0}." )
|
388 |
+
},
|
389 |
+
|
390 |
+
autoCreateRanges: false,
|
391 |
+
|
392 |
+
prototype: {
|
393 |
+
|
394 |
+
init: function() {
|
395 |
+
this.labelContainer = $( this.settings.errorLabelContainer );
|
396 |
+
this.errorContext = this.labelContainer.length && this.labelContainer || $( this.currentForm );
|
397 |
+
this.containers = $( this.settings.errorContainer ).add( this.settings.errorLabelContainer );
|
398 |
+
this.submitted = {};
|
399 |
+
this.valueCache = {};
|
400 |
+
this.pendingRequest = 0;
|
401 |
+
this.pending = {};
|
402 |
+
this.invalid = {};
|
403 |
+
this.reset();
|
404 |
+
|
405 |
+
var currentForm = this.currentForm,
|
406 |
+
groups = ( this.groups = {} ),
|
407 |
+
rules;
|
408 |
+
$.each( this.settings.groups, function( key, value ) {
|
409 |
+
if ( typeof value === "string" ) {
|
410 |
+
value = value.split( /\s/ );
|
411 |
+
}
|
412 |
+
$.each( value, function( index, name ) {
|
413 |
+
groups[ name ] = key;
|
414 |
+
} );
|
415 |
+
} );
|
416 |
+
rules = this.settings.rules;
|
417 |
+
$.each( rules, function( key, value ) {
|
418 |
+
rules[ key ] = $.validator.normalizeRule( value );
|
419 |
+
} );
|
420 |
+
|
421 |
+
function delegate( event ) {
|
422 |
+
var isContentEditable = typeof $( this ).attr( "contenteditable" ) !== "undefined" && $( this ).attr( "contenteditable" ) !== "false";
|
423 |
+
|
424 |
+
// Set form expando on contenteditable
|
425 |
+
if ( !this.form && isContentEditable ) {
|
426 |
+
this.form = $( this ).closest( "form" )[ 0 ];
|
427 |
+
this.name = $( this ).attr( "name" );
|
428 |
+
}
|
429 |
+
|
430 |
+
// Ignore the element if it belongs to another form. This will happen mainly
|
431 |
+
// when setting the `form` attribute of an input to the id of another form.
|
432 |
+
if ( currentForm !== this.form ) {
|
433 |
+
return;
|
434 |
+
}
|
435 |
+
|
436 |
+
var validator = $.data( this.form, "validator" ),
|
437 |
+
eventType = "on" + event.type.replace( /^validate/, "" ),
|
438 |
+
settings = validator.settings;
|
439 |
+
if ( settings[ eventType ] && !$( this ).is( settings.ignore ) ) {
|
440 |
+
settings[ eventType ].call( validator, this, event );
|
441 |
+
}
|
442 |
+
}
|
443 |
+
|
444 |
+
$( this.currentForm )
|
445 |
+
.on( "focusin.validate focusout.validate keyup.validate",
|
446 |
+
":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'], " +
|
447 |
+
"[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], " +
|
448 |
+
"[type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], " +
|
449 |
+
"[type='radio'], [type='checkbox'], [contenteditable], [type='button']", delegate )
|
450 |
+
|
451 |
+
// Support: Chrome, oldIE
|
452 |
+
// "select" is provided as event.target when clicking a option
|
453 |
+
.on( "click.validate", "select, option, [type='radio'], [type='checkbox']", delegate );
|
454 |
+
|
455 |
+
if ( this.settings.invalidHandler ) {
|
456 |
+
$( this.currentForm ).on( "invalid-form.validate", this.settings.invalidHandler );
|
457 |
+
}
|
458 |
+
},
|
459 |
+
|
460 |
+
// https://jqueryvalidation.org/Validator.form/
|
461 |
+
form: function() {
|
462 |
+
this.checkForm();
|
463 |
+
$.extend( this.submitted, this.errorMap );
|
464 |
+
this.invalid = $.extend( {}, this.errorMap );
|
465 |
+
if ( !this.valid() ) {
|
466 |
+
$( this.currentForm ).triggerHandler( "invalid-form", [ this ] );
|
467 |
+
}
|
468 |
+
this.showErrors();
|
469 |
+
return this.valid();
|
470 |
+
},
|
471 |
+
|
472 |
+
checkForm: function() {
|
473 |
+
this.prepareForm();
|
474 |
+
for ( var i = 0, elements = ( this.currentElements = this.elements() ); elements[ i ]; i++ ) {
|
475 |
+
this.check( elements[ i ] );
|
476 |
+
}
|
477 |
+
return this.valid();
|
478 |
+
},
|
479 |
+
|
480 |
+
// https://jqueryvalidation.org/Validator.element/
|
481 |
+
element: function( element ) {
|
482 |
+
var cleanElement = this.clean( element ),
|
483 |
+
checkElement = this.validationTargetFor( cleanElement ),
|
484 |
+
v = this,
|
485 |
+
result = true,
|
486 |
+
rs, group;
|
487 |
+
|
488 |
+
if ( checkElement === undefined ) {
|
489 |
+
delete this.invalid[ cleanElement.name ];
|
490 |
+
} else {
|
491 |
+
this.prepareElement( checkElement );
|
492 |
+
this.currentElements = $( checkElement );
|
493 |
+
|
494 |
+
// If this element is grouped, then validate all group elements already
|
495 |
+
// containing a value
|
496 |
+
group = this.groups[ checkElement.name ];
|
497 |
+
if ( group ) {
|
498 |
+
$.each( this.groups, function( name, testgroup ) {
|
499 |
+
if ( testgroup === group && name !== checkElement.name ) {
|
500 |
+
cleanElement = v.validationTargetFor( v.clean( v.findByName( name ) ) );
|
501 |
+
if ( cleanElement && cleanElement.name in v.invalid ) {
|
502 |
+
v.currentElements.push( cleanElement );
|
503 |
+
result = v.check( cleanElement ) && result;
|
504 |
+
}
|
505 |
+
}
|
506 |
+
} );
|
507 |
+
}
|
508 |
+
|
509 |
+
rs = this.check( checkElement ) !== false;
|
510 |
+
result = result && rs;
|
511 |
+
if ( rs ) {
|
512 |
+
this.invalid[ checkElement.name ] = false;
|
513 |
+
} else {
|
514 |
+
this.invalid[ checkElement.name ] = true;
|
515 |
+
}
|
516 |
+
|
517 |
+
if ( !this.numberOfInvalids() ) {
|
518 |
+
|
519 |
+
// Hide error containers on last error
|
520 |
+
this.toHide = this.toHide.add( this.containers );
|
521 |
+
}
|
522 |
+
this.showErrors();
|
523 |
+
|
524 |
+
// Add aria-invalid status for screen readers
|
525 |
+
$( element ).attr( "aria-invalid", !rs );
|
526 |
+
}
|
527 |
+
|
528 |
+
return result;
|
529 |
+
},
|
530 |
+
|
531 |
+
// https://jqueryvalidation.org/Validator.showErrors/
|
532 |
+
showErrors: function( errors ) {
|
533 |
+
if ( errors ) {
|
534 |
+
var validator = this;
|
535 |
+
|
536 |
+
// Add items to error list and map
|
537 |
+
$.extend( this.errorMap, errors );
|
538 |
+
this.errorList = $.map( this.errorMap, function( message, name ) {
|
539 |
+
return {
|
540 |
+
message: message,
|
541 |
+
element: validator.findByName( name )[ 0 ]
|
542 |
+
};
|
543 |
+
} );
|
544 |
+
|
545 |
+
// Remove items from success list
|
546 |
+
this.successList = $.grep( this.successList, function( element ) {
|
547 |
+
return !( element.name in errors );
|
548 |
+
} );
|
549 |
+
}
|
550 |
+
if ( this.settings.showErrors ) {
|
551 |
+
this.settings.showErrors.call( this, this.errorMap, this.errorList );
|
552 |
+
} else {
|
553 |
+
this.defaultShowErrors();
|
554 |
+
}
|
555 |
+
},
|
556 |
+
|
557 |
+
// https://jqueryvalidation.org/Validator.resetForm/
|
558 |
+
resetForm: function() {
|
559 |
+
if ( $.fn.resetForm ) {
|
560 |
+
$( this.currentForm ).resetForm();
|
561 |
+
}
|
562 |
+
this.invalid = {};
|
563 |
+
this.submitted = {};
|
564 |
+
this.prepareForm();
|
565 |
+
this.hideErrors();
|
566 |
+
var elements = this.elements()
|
567 |
+
.removeData( "previousValue" )
|
568 |
+
.removeAttr( "aria-invalid" );
|
569 |
+
|
570 |
+
this.resetElements( elements );
|
571 |
+
},
|
572 |
+
|
573 |
+
resetElements: function( elements ) {
|
574 |
+
var i;
|
575 |
+
|
576 |
+
if ( this.settings.unhighlight ) {
|
577 |
+
for ( i = 0; elements[ i ]; i++ ) {
|
578 |
+
this.settings.unhighlight.call( this, elements[ i ],
|
579 |
+
this.settings.errorClass, "" );
|
580 |
+
this.findByName( elements[ i ].name ).removeClass( this.settings.validClass );
|
581 |
+
}
|
582 |
+
} else {
|
583 |
+
elements
|
584 |
+
.removeClass( this.settings.errorClass )
|
585 |
+
.removeClass( this.settings.validClass );
|
586 |
+
}
|
587 |
+
},
|
588 |
+
|
589 |
+
numberOfInvalids: function() {
|
590 |
+
return this.objectLength( this.invalid );
|
591 |
+
},
|
592 |
+
|
593 |
+
objectLength: function( obj ) {
|
594 |
+
/* jshint unused: false */
|
595 |
+
var count = 0,
|
596 |
+
i;
|
597 |
+
for ( i in obj ) {
|
598 |
+
|
599 |
+
// This check allows counting elements with empty error
|
600 |
+
// message as invalid elements
|
601 |
+
if ( obj[ i ] !== undefined && obj[ i ] !== null && obj[ i ] !== false ) {
|
602 |
+
count++;
|
603 |
+
}
|
604 |
+
}
|
605 |
+
return count;
|
606 |
+
},
|
607 |
+
|
608 |
+
hideErrors: function() {
|
609 |
+
this.hideThese( this.toHide );
|
610 |
+
},
|
611 |
+
|
612 |
+
hideThese: function( errors ) {
|
613 |
+
errors.not( this.containers ).text( "" );
|
614 |
+
this.addWrapper( errors ).hide();
|
615 |
+
},
|
616 |
+
|
617 |
+
valid: function() {
|
618 |
+
return this.size() === 0;
|
619 |
+
},
|
620 |
+
|
621 |
+
size: function() {
|
622 |
+
return this.errorList.length;
|
623 |
+
},
|
624 |
+
|
625 |
+
focusInvalid: function() {
|
626 |
+
if ( this.settings.focusInvalid ) {
|
627 |
+
try {
|
628 |
+
$( this.findLastActive() || this.errorList.length && this.errorList[ 0 ].element || [] )
|
629 |
+
.filter( ":visible" )
|
630 |
+
.trigger( "focus" )
|
631 |
+
|
632 |
+
// Manually trigger focusin event; without it, focusin handler isn't called, findLastActive won't have anything to find
|
633 |
+
.trigger( "focusin" );
|
634 |
+
} catch ( e ) {
|
635 |
+
|
636 |
+
// Ignore IE throwing errors when focusing hidden elements
|
637 |
+
}
|
638 |
+
}
|
639 |
+
},
|
640 |
+
|
641 |
+
findLastActive: function() {
|
642 |
+
var lastActive = this.lastActive;
|
643 |
+
return lastActive && $.grep( this.errorList, function( n ) {
|
644 |
+
return n.element.name === lastActive.name;
|
645 |
+
} ).length === 1 && lastActive;
|
646 |
+
},
|
647 |
+
|
648 |
+
elements: function() {
|
649 |
+
var validator = this,
|
650 |
+
rulesCache = {};
|
651 |
+
|
652 |
+
// Select all valid inputs inside the form (no submit or reset buttons)
|
653 |
+
return $( this.currentForm )
|
654 |
+
.find( "input, select, textarea, [contenteditable]" )
|
655 |
+
.not( ":submit, :reset, :image, :disabled" )
|
656 |
+
.not( this.settings.ignore )
|
657 |
+
.filter( function() {
|
658 |
+
var name = this.name || $( this ).attr( "name" ); // For contenteditable
|
659 |
+
var isContentEditable = typeof $( this ).attr( "contenteditable" ) !== "undefined" && $( this ).attr( "contenteditable" ) !== "false";
|
660 |
+
|
661 |
+
if ( !name && validator.settings.debug && window.console ) {
|
662 |
+
console.error( "%o has no name assigned", this );
|
663 |
+
}
|
664 |
+
|
665 |
+
// Set form expando on contenteditable
|
666 |
+
if ( isContentEditable ) {
|
667 |
+
this.form = $( this ).closest( "form" )[ 0 ];
|
668 |
+
this.name = name;
|
669 |
+
}
|
670 |
+
|
671 |
+
// Ignore elements that belong to other/nested forms
|
672 |
+
if ( this.form !== validator.currentForm ) {
|
673 |
+
return false;
|
674 |
+
}
|
675 |
+
|
676 |
+
// Select only the first element for each name, and only those with rules specified
|
677 |
+
if ( name in rulesCache || !validator.objectLength( $( this ).rules() ) ) {
|
678 |
+
return false;
|
679 |
+
}
|
680 |
+
|
681 |
+
rulesCache[ name ] = true;
|
682 |
+
return true;
|
683 |
+
} );
|
684 |
+
},
|
685 |
+
|
686 |
+
clean: function( selector ) {
|
687 |
+
return $( selector )[ 0 ];
|
688 |
+
},
|
689 |
+
|
690 |
+
errors: function() {
|
691 |
+
var errorClass = this.settings.errorClass.split( " " ).join( "." );
|
692 |
+
return $( this.settings.errorElement + "." + errorClass, this.errorContext );
|
693 |
+
},
|
694 |
+
|
695 |
+
resetInternals: function() {
|
696 |
+
this.successList = [];
|
697 |
+
this.errorList = [];
|
698 |
+
this.errorMap = {};
|
699 |
+
this.toShow = $( [] );
|
700 |
+
this.toHide = $( [] );
|
701 |
+
},
|
702 |
+
|
703 |
+
reset: function() {
|
704 |
+
this.resetInternals();
|
705 |
+
this.currentElements = $( [] );
|
706 |
+
},
|
707 |
+
|
708 |
+
prepareForm: function() {
|
709 |
+
this.reset();
|
710 |
+
this.toHide = this.errors().add( this.containers );
|
711 |
+
},
|
712 |
+
|
713 |
+
prepareElement: function( element ) {
|
714 |
+
this.reset();
|
715 |
+
this.toHide = this.errorsFor( element );
|
716 |
+
},
|
717 |
+
|
718 |
+
elementValue: function( element ) {
|
719 |
+
var $element = $( element ),
|
720 |
+
type = element.type,
|
721 |
+
isContentEditable = typeof $element.attr( "contenteditable" ) !== "undefined" && $element.attr( "contenteditable" ) !== "false",
|
722 |
+
val, idx;
|
723 |
+
|
724 |
+
if ( type === "radio" || type === "checkbox" ) {
|
725 |
+
return this.findByName( element.name ).filter( ":checked" ).val();
|
726 |
+
} else if ( type === "number" && typeof element.validity !== "undefined" ) {
|
727 |
+
return element.validity.badInput ? "NaN" : $element.val();
|
728 |
+
}
|
729 |
+
|
730 |
+
if ( isContentEditable ) {
|
731 |
+
val = $element.text();
|
732 |
+
} else {
|
733 |
+
val = $element.val();
|
734 |
+
}
|
735 |
+
|
736 |
+
if ( type === "file" ) {
|
737 |
+
|
738 |
+
// Modern browser (chrome & safari)
|
739 |
+
if ( val.substr( 0, 12 ) === "C:\\fakepath\\" ) {
|
740 |
+
return val.substr( 12 );
|
741 |
+
}
|
742 |
+
|
743 |
+
// Legacy browsers
|
744 |
+
// Unix-based path
|
745 |
+
idx = val.lastIndexOf( "/" );
|
746 |
+
if ( idx >= 0 ) {
|
747 |
+
return val.substr( idx + 1 );
|
748 |
+
}
|
749 |
+
|
750 |
+
// Windows-based path
|
751 |
+
idx = val.lastIndexOf( "\\" );
|
752 |
+
if ( idx >= 0 ) {
|
753 |
+
return val.substr( idx + 1 );
|
754 |
+
}
|
755 |
+
|
756 |
+
// Just the file name
|
757 |
+
return val;
|
758 |
+
}
|
759 |
+
|
760 |
+
if ( typeof val === "string" ) {
|
761 |
+
return val.replace( /\r/g, "" );
|
762 |
+
}
|
763 |
+
return val;
|
764 |
+
},
|
765 |
+
|
766 |
+
check: function( element ) {
|
767 |
+
element = this.validationTargetFor( this.clean( element ) );
|
768 |
+
|
769 |
+
var rules = $( element ).rules(),
|
770 |
+
rulesCount = $.map( rules, function( n, i ) {
|
771 |
+
return i;
|
772 |
+
} ).length,
|
773 |
+
dependencyMismatch = false,
|
774 |
+
val = this.elementValue( element ),
|
775 |
+
result, method, rule, normalizer;
|
776 |
+
|
777 |
+
// Prioritize the local normalizer defined for this element over the global one
|
778 |
+
// if the former exists, otherwise user the global one in case it exists.
|
779 |
+
if ( typeof rules.normalizer === "function" ) {
|
780 |
+
normalizer = rules.normalizer;
|
781 |
+
} else if ( typeof this.settings.normalizer === "function" ) {
|
782 |
+
normalizer = this.settings.normalizer;
|
783 |
+
}
|
784 |
+
|
785 |
+
// If normalizer is defined, then call it to retreive the changed value instead
|
786 |
+
// of using the real one.
|
787 |
+
// Note that `this` in the normalizer is `element`.
|
788 |
+
if ( normalizer ) {
|
789 |
+
val = normalizer.call( element, val );
|
790 |
+
|
791 |
+
// Delete the normalizer from rules to avoid treating it as a pre-defined method.
|
792 |
+
delete rules.normalizer;
|
793 |
+
}
|
794 |
+
|
795 |
+
for ( method in rules ) {
|
796 |
+
rule = { method: method, parameters: rules[ method ] };
|
797 |
+
try {
|
798 |
+
result = $.validator.methods[ method ].call( this, val, element, rule.parameters );
|
799 |
+
|
800 |
+
// If a method indicates that the field is optional and therefore valid,
|
801 |
+
// don't mark it as valid when there are no other rules
|
802 |
+
if ( result === "dependency-mismatch" && rulesCount === 1 ) {
|
803 |
+
dependencyMismatch = true;
|
804 |
+
continue;
|
805 |
+
}
|
806 |
+
dependencyMismatch = false;
|
807 |
+
|
808 |
+
if ( result === "pending" ) {
|
809 |
+
this.toHide = this.toHide.not( this.errorsFor( element ) );
|
810 |
+
return;
|
811 |
+
}
|
812 |
+
|
813 |
+
if ( !result ) {
|
814 |
+
this.formatAndAdd( element, rule );
|
815 |
+
return false;
|
816 |
+
}
|
817 |
+
} catch ( e ) {
|
818 |
+
if ( this.settings.debug && window.console ) {
|
819 |
+
console.log( "Exception occurred when checking element " + element.id + ", check the '" + rule.method + "' method.", e );
|
820 |
+
}
|
821 |
+
if ( e instanceof TypeError ) {
|
822 |
+
e.message += ". Exception occurred when checking element " + element.id + ", check the '" + rule.method + "' method.";
|
823 |
+
}
|
824 |
+
|
825 |
+
throw e;
|
826 |
+
}
|
827 |
+
}
|
828 |
+
if ( dependencyMismatch ) {
|
829 |
+
return;
|
830 |
+
}
|
831 |
+
if ( this.objectLength( rules ) ) {
|
832 |
+
this.successList.push( element );
|
833 |
+
}
|
834 |
+
return true;
|
835 |
+
},
|
836 |
+
|
837 |
+
// Return the custom message for the given element and validation method
|
838 |
+
// specified in the element's HTML5 data attribute
|
839 |
+
// return the generic message if present and no method specific message is present
|
840 |
+
customDataMessage: function( element, method ) {
|
841 |
+
return $( element ).data( "msg" + method.charAt( 0 ).toUpperCase() +
|
842 |
+
method.substring( 1 ).toLowerCase() ) || $( element ).data( "msg" );
|
843 |
+
},
|
844 |
+
|
845 |
+
// Return the custom message for the given element name and validation method
|
846 |
+
customMessage: function( name, method ) {
|
847 |
+
var m = this.settings.messages[ name ];
|
848 |
+
return m && ( m.constructor === String ? m : m[ method ] );
|
849 |
+
},
|
850 |
+
|
851 |
+
// Return the first defined argument, allowing empty strings
|
852 |
+
findDefined: function() {
|
853 |
+
for ( var i = 0; i < arguments.length; i++ ) {
|
854 |
+
if ( arguments[ i ] !== undefined ) {
|
855 |
+
return arguments[ i ];
|
856 |
+
}
|
857 |
+
}
|
858 |
+
return undefined;
|
859 |
+
},
|
860 |
+
|
861 |
+
// The second parameter 'rule' used to be a string, and extended to an object literal
|
862 |
+
// of the following form:
|
863 |
+
// rule = {
|
864 |
+
// method: "method name",
|
865 |
+
// parameters: "the given method parameters"
|
866 |
+
// }
|
867 |
+
//
|
868 |
+
// The old behavior still supported, kept to maintain backward compatibility with
|
869 |
+
// old code, and will be removed in the next major release.
|
870 |
+
defaultMessage: function( element, rule ) {
|
871 |
+
if ( typeof rule === "string" ) {
|
872 |
+
rule = { method: rule };
|
873 |
+
}
|
874 |
+
|
875 |
+
var message = this.findDefined(
|
876 |
+
this.customMessage( element.name, rule.method ),
|
877 |
+
this.customDataMessage( element, rule.method ),
|
878 |
+
|
879 |
+
// 'title' is never undefined, so handle empty string as undefined
|
880 |
+
!this.settings.ignoreTitle && element.title || undefined,
|
881 |
+
$.validator.messages[ rule.method ],
|
882 |
+
"<strong>Warning: No message defined for " + element.name + "</strong>"
|
883 |
+
),
|
884 |
+
theregex = /\$?\{(\d+)\}/g;
|
885 |
+
if ( typeof message === "function" ) {
|
886 |
+
message = message.call( this, rule.parameters, element );
|
887 |
+
} else if ( theregex.test( message ) ) {
|
888 |
+
message = $.validator.format( message.replace( theregex, "{$1}" ), rule.parameters );
|
889 |
+
}
|
890 |
+
|
891 |
+
return message;
|
892 |
+
},
|
893 |
+
|
894 |
+
formatAndAdd: function( element, rule ) {
|
895 |
+
var message = this.defaultMessage( element, rule );
|
896 |
+
|
897 |
+
this.errorList.push( {
|
898 |
+
message: message,
|
899 |
+
element: element,
|
900 |
+
method: rule.method
|
901 |
+
} );
|
902 |
+
|
903 |
+
this.errorMap[ element.name ] = message;
|
904 |
+
this.submitted[ element.name ] = message;
|
905 |
+
},
|
906 |
+
|
907 |
+
addWrapper: function( toToggle ) {
|
908 |
+
if ( this.settings.wrapper ) {
|
909 |
+
toToggle = toToggle.add( toToggle.parent( this.settings.wrapper ) );
|
910 |
+
}
|
911 |
+
return toToggle;
|
912 |
+
},
|
913 |
+
|
914 |
+
defaultShowErrors: function() {
|
915 |
+
var i, elements, error;
|
916 |
+
for ( i = 0; this.errorList[ i ]; i++ ) {
|
917 |
+
error = this.errorList[ i ];
|
918 |
+
if ( this.settings.highlight ) {
|
919 |
+
this.settings.highlight.call( this, error.element, this.settings.errorClass, this.settings.validClass );
|
920 |
+
}
|
921 |
+
this.showLabel( error.element, error.message );
|
922 |
+
}
|
923 |
+
if ( this.errorList.length ) {
|
924 |
+
this.toShow = this.toShow.add( this.containers );
|
925 |
+
}
|
926 |
+
if ( this.settings.success ) {
|
927 |
+
for ( i = 0; this.successList[ i ]; i++ ) {
|
928 |
+
this.showLabel( this.successList[ i ] );
|
929 |
+
}
|
930 |
+
}
|
931 |
+
if ( this.settings.unhighlight ) {
|
932 |
+
for ( i = 0, elements = this.validElements(); elements[ i ]; i++ ) {
|
933 |
+
this.settings.unhighlight.call( this, elements[ i ], this.settings.errorClass, this.settings.validClass );
|
934 |
+
}
|
935 |
+
}
|
936 |
+
this.toHide = this.toHide.not( this.toShow );
|
937 |
+
this.hideErrors();
|
938 |
+
this.addWrapper( this.toShow ).show();
|
939 |
+
},
|
940 |
+
|
941 |
+
validElements: function() {
|
942 |
+
return this.currentElements.not( this.invalidElements() );
|
943 |
+
},
|
944 |
+
|
945 |
+
invalidElements: function() {
|
946 |
+
return $( this.errorList ).map( function() {
|
947 |
+
return this.element;
|
948 |
+
} );
|
949 |
+
},
|
950 |
+
|
951 |
+
showLabel: function( element, message ) {
|
952 |
+
var place, group, errorID, v,
|
953 |
+
error = this.errorsFor( element ),
|
954 |
+
elementID = this.idOrName( element ),
|
955 |
+
describedBy = $( element ).attr( "aria-describedby" );
|
956 |
+
|
957 |
+
if ( error.length ) {
|
958 |
+
|
959 |
+
// Refresh error/success class
|
960 |
+
error.removeClass( this.settings.validClass ).addClass( this.settings.errorClass );
|
961 |
+
|
962 |
+
// Replace message on existing label
|
963 |
+
error.html( message );
|
964 |
+
} else {
|
965 |
+
|
966 |
+
// Create error element
|
967 |
+
error = $( "<" + this.settings.errorElement + ">" )
|
968 |
+
.attr( "id", elementID + "-error" )
|
969 |
+
.addClass( this.settings.errorClass )
|
970 |
+
.html( message || "" );
|
971 |
+
|
972 |
+
// Maintain reference to the element to be placed into the DOM
|
973 |
+
place = error;
|
974 |
+
if ( this.settings.wrapper ) {
|
975 |
+
|
976 |
+
// Make sure the element is visible, even in IE
|
977 |
+
// actually showing the wrapped element is handled elsewhere
|
978 |
+
place = error.hide().show().wrap( "<" + this.settings.wrapper + "/>" ).parent();
|
979 |
+
}
|
980 |
+
if ( this.labelContainer.length ) {
|
981 |
+
this.labelContainer.append( place );
|
982 |
+
} else if ( this.settings.errorPlacement ) {
|
983 |
+
this.settings.errorPlacement.call( this, place, $( element ) );
|
984 |
+
} else {
|
985 |
+
place.insertAfter( element );
|
986 |
+
}
|
987 |
+
|
988 |
+
// Link error back to the element
|
989 |
+
if ( error.is( "label" ) ) {
|
990 |
+
|
991 |
+
// If the error is a label, then associate using 'for'
|
992 |
+
error.attr( "for", elementID );
|
993 |
+
|
994 |
+
// If the element is not a child of an associated label, then it's necessary
|
995 |
+
// to explicitly apply aria-describedby
|
996 |
+
} else if ( error.parents( "label[for='" + this.escapeCssMeta( elementID ) + "']" ).length === 0 ) {
|
997 |
+
errorID = error.attr( "id" );
|
998 |
+
|
999 |
+
// Respect existing non-error aria-describedby
|
1000 |
+
if ( !describedBy ) {
|
1001 |
+
describedBy = errorID;
|
1002 |
+
} else if ( !describedBy.match( new RegExp( "\\b" + this.escapeCssMeta( errorID ) + "\\b" ) ) ) {
|
1003 |
+
|
1004 |
+
// Add to end of list if not already present
|
1005 |
+
describedBy += " " + errorID;
|
1006 |
+
}
|
1007 |
+
$( element ).attr( "aria-describedby", describedBy );
|
1008 |
+
|
1009 |
+
// If this element is grouped, then assign to all elements in the same group
|
1010 |
+
group = this.groups[ element.name ];
|
1011 |
+
if ( group ) {
|
1012 |
+
v = this;
|
1013 |
+
$.each( v.groups, function( name, testgroup ) {
|
1014 |
+
if ( testgroup === group ) {
|
1015 |
+
$( "[name='" + v.escapeCssMeta( name ) + "']", v.currentForm )
|
1016 |
+
.attr( "aria-describedby", error.attr( "id" ) );
|
1017 |
+
}
|
1018 |
+
} );
|
1019 |
+
}
|
1020 |
+
}
|
1021 |
+
}
|
1022 |
+
if ( !message && this.settings.success ) {
|
1023 |
+
error.text( "" );
|
1024 |
+
if ( typeof this.settings.success === "string" ) {
|
1025 |
+
error.addClass( this.settings.success );
|
1026 |
+
} else {
|
1027 |
+
this.settings.success( error, element );
|
1028 |
+
}
|
1029 |
+
}
|
1030 |
+
this.toShow = this.toShow.add( error );
|
1031 |
+
},
|
1032 |
+
|
1033 |
+
errorsFor: function( element ) {
|
1034 |
+
var name = this.escapeCssMeta( this.idOrName( element ) ),
|
1035 |
+
describer = $( element ).attr( "aria-describedby" ),
|
1036 |
+
selector = "label[for='" + name + "'], label[for='" + name + "'] *";
|
1037 |
+
|
1038 |
+
// 'aria-describedby' should directly reference the error element
|
1039 |
+
if ( describer ) {
|
1040 |
+
selector = selector + ", #" + this.escapeCssMeta( describer )
|
1041 |
+
.replace( /\s+/g, ", #" );
|
1042 |
+
}
|
1043 |
+
|
1044 |
+
return this
|
1045 |
+
.errors()
|
1046 |
+
.filter( selector );
|
1047 |
+
},
|
1048 |
+
|
1049 |
+
// See https://api.jquery.com/category/selectors/, for CSS
|
1050 |
+
// meta-characters that should be escaped in order to be used with JQuery
|
1051 |
+
// as a literal part of a name/id or any selector.
|
1052 |
+
escapeCssMeta: function( string ) {
|
1053 |
+
if ( string === undefined ) {
|
1054 |
+
return "";
|
1055 |
+
}
|
1056 |
+
|
1057 |
+
return string.replace( /([\\!"#$%&'()*+,./:;<=>?@\[\]^`{|}~])/g, "\\$1" );
|
1058 |
+
},
|
1059 |
+
|
1060 |
+
idOrName: function( element ) {
|
1061 |
+
return this.groups[ element.name ] || ( this.checkable( element ) ? element.name : element.id || element.name );
|
1062 |
+
},
|
1063 |
+
|
1064 |
+
validationTargetFor: function( element ) {
|
1065 |
+
|
1066 |
+
// If radio/checkbox, validate first element in group instead
|
1067 |
+
if ( this.checkable( element ) ) {
|
1068 |
+
element = this.findByName( element.name );
|
1069 |
+
}
|
1070 |
+
|
1071 |
+
// Always apply ignore filter
|
1072 |
+
return $( element ).not( this.settings.ignore )[ 0 ];
|
1073 |
+
},
|
1074 |
+
|
1075 |
+
checkable: function( element ) {
|
1076 |
+
return ( /radio|checkbox/i ).test( element.type );
|
1077 |
+
},
|
1078 |
+
|
1079 |
+
findByName: function( name ) {
|
1080 |
+
return $( this.currentForm ).find( "[name='" + this.escapeCssMeta( name ) + "']" );
|
1081 |
+
},
|
1082 |
+
|
1083 |
+
getLength: function( value, element ) {
|
1084 |
+
switch ( element.nodeName.toLowerCase() ) {
|
1085 |
+
case "select":
|
1086 |
+
return $( "option:selected", element ).length;
|
1087 |
+
case "input":
|
1088 |
+
if ( this.checkable( element ) ) {
|
1089 |
+
return this.findByName( element.name ).filter( ":checked" ).length;
|
1090 |
+
}
|
1091 |
+
}
|
1092 |
+
return value.length;
|
1093 |
+
},
|
1094 |
+
|
1095 |
+
depend: function( param, element ) {
|
1096 |
+
return this.dependTypes[ typeof param ] ? this.dependTypes[ typeof param ]( param, element ) : true;
|
1097 |
+
},
|
1098 |
+
|
1099 |
+
dependTypes: {
|
1100 |
+
"boolean": function( param ) {
|
1101 |
+
return param;
|
1102 |
+
},
|
1103 |
+
"string": function( param, element ) {
|
1104 |
+
return !!$( param, element.form ).length;
|
1105 |
+
},
|
1106 |
+
"function": function( param, element ) {
|
1107 |
+
return param( element );
|
1108 |
+
}
|
1109 |
+
},
|
1110 |
+
|
1111 |
+
optional: function( element ) {
|
1112 |
+
var val = this.elementValue( element );
|
1113 |
+
return !$.validator.methods.required.call( this, val, element ) && "dependency-mismatch";
|
1114 |
+
},
|
1115 |
+
|
1116 |
+
startRequest: function( element ) {
|
1117 |
+
if ( !this.pending[ element.name ] ) {
|
1118 |
+
this.pendingRequest++;
|
1119 |
+
$( element ).addClass( this.settings.pendingClass );
|
1120 |
+
this.pending[ element.name ] = true;
|
1121 |
+
}
|
1122 |
+
},
|
1123 |
+
|
1124 |
+
stopRequest: function( element, valid ) {
|
1125 |
+
this.pendingRequest--;
|
1126 |
+
|
1127 |
+
// Sometimes synchronization fails, make sure pendingRequest is never < 0
|
1128 |
+
if ( this.pendingRequest < 0 ) {
|
1129 |
+
this.pendingRequest = 0;
|
1130 |
+
}
|
1131 |
+
delete this.pending[ element.name ];
|
1132 |
+
$( element ).removeClass( this.settings.pendingClass );
|
1133 |
+
if ( valid && this.pendingRequest === 0 && this.formSubmitted && this.form() && this.pendingRequest === 0 ) {
|
1134 |
+
$( this.currentForm ).trigger( "submit" );
|
1135 |
+
|
1136 |
+
// Remove the hidden input that was used as a replacement for the
|
1137 |
+
// missing submit button. The hidden input is added by `handle()`
|
1138 |
+
// to ensure that the value of the used submit button is passed on
|
1139 |
+
// for scripted submits triggered by this method
|
1140 |
+
if ( this.submitButton ) {
|
1141 |
+
$( "input:hidden[name='" + this.submitButton.name + "']", this.currentForm ).remove();
|
1142 |
+
}
|
1143 |
+
|
1144 |
+
this.formSubmitted = false;
|
1145 |
+
} else if ( !valid && this.pendingRequest === 0 && this.formSubmitted ) {
|
1146 |
+
$( this.currentForm ).triggerHandler( "invalid-form", [ this ] );
|
1147 |
+
this.formSubmitted = false;
|
1148 |
+
}
|
1149 |
+
},
|
1150 |
+
|
1151 |
+
previousValue: function( element, method ) {
|
1152 |
+
method = typeof method === "string" && method || "remote";
|
1153 |
+
|
1154 |
+
return $.data( element, "previousValue" ) || $.data( element, "previousValue", {
|
1155 |
+
old: null,
|
1156 |
+
valid: true,
|
1157 |
+
message: this.defaultMessage( element, { method: method } )
|
1158 |
+
} );
|
1159 |
+
},
|
1160 |
+
|
1161 |
+
// Cleans up all forms and elements, removes validator-specific events
|
1162 |
+
destroy: function() {
|
1163 |
+
this.resetForm();
|
1164 |
+
|
1165 |
+
$( this.currentForm )
|
1166 |
+
.off( ".validate" )
|
1167 |
+
.removeData( "validator" )
|
1168 |
+
.find( ".validate-equalTo-blur" )
|
1169 |
+
.off( ".validate-equalTo" )
|
1170 |
+
.removeClass( "validate-equalTo-blur" )
|
1171 |
+
.find( ".validate-lessThan-blur" )
|
1172 |
+
.off( ".validate-lessThan" )
|
1173 |
+
.removeClass( "validate-lessThan-blur" )
|
1174 |
+
.find( ".validate-lessThanEqual-blur" )
|
1175 |
+
.off( ".validate-lessThanEqual" )
|
1176 |
+
.removeClass( "validate-lessThanEqual-blur" )
|
1177 |
+
.find( ".validate-greaterThanEqual-blur" )
|
1178 |
+
.off( ".validate-greaterThanEqual" )
|
1179 |
+
.removeClass( "validate-greaterThanEqual-blur" )
|
1180 |
+
.find( ".validate-greaterThan-blur" )
|
1181 |
+
.off( ".validate-greaterThan" )
|
1182 |
+
.removeClass( "validate-greaterThan-blur" );
|
1183 |
+
}
|
1184 |
+
|
1185 |
+
},
|
1186 |
+
|
1187 |
+
classRuleSettings: {
|
1188 |
+
required: { required: true },
|
1189 |
+
email: { email: true },
|
1190 |
+
url: { url: true },
|
1191 |
+
date: { date: true },
|
1192 |
+
dateISO: { dateISO: true },
|
1193 |
+
number: { number: true },
|
1194 |
+
digits: { digits: true },
|
1195 |
+
creditcard: { creditcard: true }
|
1196 |
+
},
|
1197 |
+
|
1198 |
+
addClassRules: function( className, rules ) {
|
1199 |
+
if ( className.constructor === String ) {
|
1200 |
+
this.classRuleSettings[ className ] = rules;
|
1201 |
+
} else {
|
1202 |
+
$.extend( this.classRuleSettings, className );
|
1203 |
+
}
|
1204 |
+
},
|
1205 |
+
|
1206 |
+
classRules: function( element ) {
|
1207 |
+
var rules = {},
|
1208 |
+
classes = $( element ).attr( "class" );
|
1209 |
+
|
1210 |
+
if ( classes ) {
|
1211 |
+
$.each( classes.split( " " ), function() {
|
1212 |
+
if ( this in $.validator.classRuleSettings ) {
|
1213 |
+
$.extend( rules, $.validator.classRuleSettings[ this ] );
|
1214 |
+
}
|
1215 |
+
} );
|
1216 |
+
}
|
1217 |
+
return rules;
|
1218 |
+
},
|
1219 |
+
|
1220 |
+
normalizeAttributeRule: function( rules, type, method, value ) {
|
1221 |
+
|
1222 |
+
// Convert the value to a number for number inputs, and for text for backwards compability
|
1223 |
+
// allows type="date" and others to be compared as strings
|
1224 |
+
if ( /min|max|step/.test( method ) && ( type === null || /number|range|text/.test( type ) ) ) {
|
1225 |
+
value = Number( value );
|
1226 |
+
|
1227 |
+
// Support Opera Mini, which returns NaN for undefined minlength
|
1228 |
+
if ( isNaN( value ) ) {
|
1229 |
+
value = undefined;
|
1230 |
+
}
|
1231 |
+
}
|
1232 |
+
|
1233 |
+
if ( value || value === 0 ) {
|
1234 |
+
rules[ method ] = value;
|
1235 |
+
} else if ( type === method && type !== "range" ) {
|
1236 |
+
|
1237 |
+
// Exception: the jquery validate 'range' method
|
1238 |
+
// does not test for the html5 'range' type
|
1239 |
+
rules[ type === "date" ? "dateISO" : method ] = true;
|
1240 |
+
}
|
1241 |
+
},
|
1242 |
+
|
1243 |
+
attributeRules: function( element ) {
|
1244 |
+
var rules = {},
|
1245 |
+
$element = $( element ),
|
1246 |
+
type = element.getAttribute( "type" ),
|
1247 |
+
method, value;
|
1248 |
+
|
1249 |
+
for ( method in $.validator.methods ) {
|
1250 |
+
|
1251 |
+
// Support for <input required> in both html5 and older browsers
|
1252 |
+
if ( method === "required" ) {
|
1253 |
+
value = element.getAttribute( method );
|
1254 |
+
|
1255 |
+
// Some browsers return an empty string for the required attribute
|
1256 |
+
// and non-HTML5 browsers might have required="" markup
|
1257 |
+
if ( value === "" ) {
|
1258 |
+
value = true;
|
1259 |
+
}
|
1260 |
+
|
1261 |
+
// Force non-HTML5 browsers to return bool
|
1262 |
+
value = !!value;
|
1263 |
+
} else {
|
1264 |
+
value = $element.attr( method );
|
1265 |
+
}
|
1266 |
+
|
1267 |
+
this.normalizeAttributeRule( rules, type, method, value );
|
1268 |
+
}
|
1269 |
+
|
1270 |
+
// 'maxlength' may be returned as -1, 2147483647 ( IE ) and 524288 ( safari ) for text inputs
|
1271 |
+
if ( rules.maxlength && /-1|2147483647|524288/.test( rules.maxlength ) ) {
|
1272 |
+
delete rules.maxlength;
|
1273 |
+
}
|
1274 |
+
|
1275 |
+
return rules;
|
1276 |
+
},
|
1277 |
+
|
1278 |
+
dataRules: function( element ) {
|
1279 |
+
var rules = {},
|
1280 |
+
$element = $( element ),
|
1281 |
+
type = element.getAttribute( "type" ),
|
1282 |
+
method, value;
|
1283 |
+
|
1284 |
+
for ( method in $.validator.methods ) {
|
1285 |
+
value = $element.data( "rule" + method.charAt( 0 ).toUpperCase() + method.substring( 1 ).toLowerCase() );
|
1286 |
+
|
1287 |
+
// Cast empty attributes like `data-rule-required` to `true`
|
1288 |
+
if ( value === "" ) {
|
1289 |
+
value = true;
|
1290 |
+
}
|
1291 |
+
|
1292 |
+
this.normalizeAttributeRule( rules, type, method, value );
|
1293 |
+
}
|
1294 |
+
return rules;
|
1295 |
+
},
|
1296 |
+
|
1297 |
+
staticRules: function( element ) {
|
1298 |
+
var rules = {},
|
1299 |
+
validator = $.data( element.form, "validator" );
|
1300 |
+
|
1301 |
+
if ( validator.settings.rules ) {
|
1302 |
+
rules = $.validator.normalizeRule( validator.settings.rules[ element.name ] ) || {};
|
1303 |
+
}
|
1304 |
+
return rules;
|
1305 |
+
},
|
1306 |
+
|
1307 |
+
normalizeRules: function( rules, element ) {
|
1308 |
+
|
1309 |
+
// Handle dependency check
|
1310 |
+
$.each( rules, function( prop, val ) {
|
1311 |
+
|
1312 |
+
// Ignore rule when param is explicitly false, eg. required:false
|
1313 |
+
if ( val === false ) {
|
1314 |
+
delete rules[ prop ];
|
1315 |
+
return;
|
1316 |
+
}
|
1317 |
+
if ( val.param || val.depends ) {
|
1318 |
+
var keepRule = true;
|
1319 |
+
switch ( typeof val.depends ) {
|
1320 |
+
case "string":
|
1321 |
+
keepRule = !!$( val.depends, element.form ).length;
|
1322 |
+
break;
|
1323 |
+
case "function":
|
1324 |
+
keepRule = val.depends.call( element, element );
|
1325 |
+
break;
|
1326 |
+
}
|
1327 |
+
if ( keepRule ) {
|
1328 |
+
rules[ prop ] = val.param !== undefined ? val.param : true;
|
1329 |
+
} else {
|
1330 |
+
$.data( element.form, "validator" ).resetElements( $( element ) );
|
1331 |
+
delete rules[ prop ];
|
1332 |
+
}
|
1333 |
+
}
|
1334 |
+
} );
|
1335 |
+
|
1336 |
+
// Evaluate parameters
|
1337 |
+
$.each( rules, function( rule, parameter ) {
|
1338 |
+
rules[ rule ] = typeof parameter === "function" && rule !== "normalizer" ? parameter( element ) : parameter;
|
1339 |
+
} );
|
1340 |
+
|
1341 |
+
// Clean number parameters
|
1342 |
+
$.each( [ "minlength", "maxlength" ], function() {
|
1343 |
+
if ( rules[ this ] ) {
|
1344 |
+
rules[ this ] = Number( rules[ this ] );
|
1345 |
+
}
|
1346 |
+
} );
|
1347 |
+
$.each( [ "rangelength", "range" ], function() {
|
1348 |
+
var parts;
|
1349 |
+
if ( rules[ this ] ) {
|
1350 |
+
if ( Array.isArray( rules[ this ] ) ) {
|
1351 |
+
rules[ this ] = [ Number( rules[ this ][ 0 ] ), Number( rules[ this ][ 1 ] ) ];
|
1352 |
+
} else if ( typeof rules[ this ] === "string" ) {
|
1353 |
+
parts = rules[ this ].replace( /[\[\]]/g, "" ).split( /[\s,]+/ );
|
1354 |
+
rules[ this ] = [ Number( parts[ 0 ] ), Number( parts[ 1 ] ) ];
|
1355 |
+
}
|
1356 |
+
}
|
1357 |
+
} );
|
1358 |
+
|
1359 |
+
if ( $.validator.autoCreateRanges ) {
|
1360 |
+
|
1361 |
+
// Auto-create ranges
|
1362 |
+
if ( rules.min != null && rules.max != null ) {
|
1363 |
+
rules.range = [ rules.min, rules.max ];
|
1364 |
+
delete rules.min;
|
1365 |
+
delete rules.max;
|
1366 |
+
}
|
1367 |
+
if ( rules.minlength != null && rules.maxlength != null ) {
|
1368 |
+
rules.rangelength = [ rules.minlength, rules.maxlength ];
|
1369 |
+
delete rules.minlength;
|
1370 |
+
delete rules.maxlength;
|
1371 |
+
}
|
1372 |
+
}
|
1373 |
+
|
1374 |
+
return rules;
|
1375 |
+
},
|
1376 |
+
|
1377 |
+
// Converts a simple string to a {string: true} rule, e.g., "required" to {required:true}
|
1378 |
+
normalizeRule: function( data ) {
|
1379 |
+
if ( typeof data === "string" ) {
|
1380 |
+
var transformed = {};
|
1381 |
+
$.each( data.split( /\s/ ), function() {
|
1382 |
+
transformed[ this ] = true;
|
1383 |
+
} );
|
1384 |
+
data = transformed;
|
1385 |
+
}
|
1386 |
+
return data;
|
1387 |
+
},
|
1388 |
+
|
1389 |
+
// https://jqueryvalidation.org/jQuery.validator.addMethod/
|
1390 |
+
addMethod: function( name, method, message ) {
|
1391 |
+
$.validator.methods[ name ] = method;
|
1392 |
+
$.validator.messages[ name ] = message !== undefined ? message : $.validator.messages[ name ];
|
1393 |
+
if ( method.length < 3 ) {
|
1394 |
+
$.validator.addClassRules( name, $.validator.normalizeRule( name ) );
|
1395 |
+
}
|
1396 |
+
},
|
1397 |
+
|
1398 |
+
// https://jqueryvalidation.org/jQuery.validator.methods/
|
1399 |
+
methods: {
|
1400 |
+
|
1401 |
+
// https://jqueryvalidation.org/required-method/
|
1402 |
+
required: function( value, element, param ) {
|
1403 |
+
|
1404 |
+
// Check if dependency is met
|
1405 |
+
if ( !this.depend( param, element ) ) {
|
1406 |
+
return "dependency-mismatch";
|
1407 |
+
}
|
1408 |
+
if ( element.nodeName.toLowerCase() === "select" ) {
|
1409 |
+
|
1410 |
+
// Could be an array for select-multiple or a string, both are fine this way
|
1411 |
+
var val = $( element ).val();
|
1412 |
+
return val && val.length > 0;
|
1413 |
+
}
|
1414 |
+
if ( this.checkable( element ) ) {
|
1415 |
+
return this.getLength( value, element ) > 0;
|
1416 |
+
}
|
1417 |
+
return value !== undefined && value !== null && value.length > 0;
|
1418 |
+
},
|
1419 |
+
|
1420 |
+
// https://jqueryvalidation.org/email-method/
|
1421 |
+
email: function( value, element ) {
|
1422 |
+
|
1423 |
+
// From https://html.spec.whatwg.org/multipage/forms.html#valid-e-mail-address
|
1424 |
+
// Retrieved 2014-01-14
|
1425 |
+
// If you have a problem with this implementation, report a bug against the above spec
|
1426 |
+
// Or use custom methods to implement your own email validation
|
1427 |
+
return this.optional( element ) || /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test( value );
|
1428 |
+
},
|
1429 |
+
|
1430 |
+
// https://jqueryvalidation.org/url-method/
|
1431 |
+
url: function( value, element ) {
|
1432 |
+
|
1433 |
+
// Copyright (c) 2010-2013 Diego Perini, MIT licensed
|
1434 |
+
// https://gist.github.com/dperini/729294
|
1435 |
+
// see also https://mathiasbynens.be/demo/url-regex
|
1436 |
+
// modified to allow protocol-relative URLs
|
1437 |
+
return this.optional( element ) || /^(?:(?:(?:https?|ftp):)?\/\/)(?:(?:[^\]\[?\/<~#`!@$^&*()+=}|:";',>{ ]|%[0-9A-Fa-f]{2})+(?::(?:[^\]\[?\/<~#`!@$^&*()+=}|:";',>{ ]|%[0-9A-Fa-f]{2})*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i.test( value );
|
1438 |
+
},
|
1439 |
+
|
1440 |
+
// https://jqueryvalidation.org/date-method/
|
1441 |
+
date: ( function() {
|
1442 |
+
var called = false;
|
1443 |
+
|
1444 |
+
return function( value, element ) {
|
1445 |
+
if ( !called ) {
|
1446 |
+
called = true;
|
1447 |
+
if ( this.settings.debug && window.console ) {
|
1448 |
+
console.warn(
|
1449 |
+
"The `date` method is deprecated and will be removed in version '2.0.0'.\n" +
|
1450 |
+
"Please don't use it, since it relies on the Date constructor, which\n" +
|
1451 |
+
"behaves very differently across browsers and locales. Use `dateISO`\n" +
|
1452 |
+
"instead or one of the locale specific methods in `localizations/`\n" +
|
1453 |
+
"and `additional-methods.js`."
|
1454 |
+
);
|
1455 |
+
}
|
1456 |
+
}
|
1457 |
+
|
1458 |
+
return this.optional( element ) || !/Invalid|NaN/.test( new Date( value ).toString() );
|
1459 |
+
};
|
1460 |
+
}() ),
|
1461 |
+
|
1462 |
+
// https://jqueryvalidation.org/dateISO-method/
|
1463 |
+
dateISO: function( value, element ) {
|
1464 |
+
return this.optional( element ) || /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test( value );
|
1465 |
+
},
|
1466 |
+
|
1467 |
+
// https://jqueryvalidation.org/number-method/
|
1468 |
+
number: function( value, element ) {
|
1469 |
+
return this.optional( element ) || /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test( value );
|
1470 |
+
},
|
1471 |
+
|
1472 |
+
// https://jqueryvalidation.org/digits-method/
|
1473 |
+
digits: function( value, element ) {
|
1474 |
+
return this.optional( element ) || /^\d+$/.test( value );
|
1475 |
+
},
|
1476 |
+
|
1477 |
+
// https://jqueryvalidation.org/minlength-method/
|
1478 |
+
minlength: function( value, element, param ) {
|
1479 |
+
var length = Array.isArray( value ) ? value.length : this.getLength( value, element );
|
1480 |
+
return this.optional( element ) || length >= param;
|
1481 |
+
},
|
1482 |
+
|
1483 |
+
// https://jqueryvalidation.org/maxlength-method/
|
1484 |
+
maxlength: function( value, element, param ) {
|
1485 |
+
var length = Array.isArray( value ) ? value.length : this.getLength( value, element );
|
1486 |
+
return this.optional( element ) || length <= param;
|
1487 |
+
},
|
1488 |
+
|
1489 |
+
// https://jqueryvalidation.org/rangelength-method/
|
1490 |
+
rangelength: function( value, element, param ) {
|
1491 |
+
var length = Array.isArray( value ) ? value.length : this.getLength( value, element );
|
1492 |
+
return this.optional( element ) || ( length >= param[ 0 ] && length <= param[ 1 ] );
|
1493 |
+
},
|
1494 |
+
|
1495 |
+
// https://jqueryvalidation.org/min-method/
|
1496 |
+
min: function( value, element, param ) {
|
1497 |
+
return this.optional( element ) || value >= param;
|
1498 |
+
},
|
1499 |
+
|
1500 |
+
// https://jqueryvalidation.org/max-method/
|
1501 |
+
max: function( value, element, param ) {
|
1502 |
+
return this.optional( element ) || value <= param;
|
1503 |
+
},
|
1504 |
+
|
1505 |
+
// https://jqueryvalidation.org/range-method/
|
1506 |
+
range: function( value, element, param ) {
|
1507 |
+
return this.optional( element ) || ( value >= param[ 0 ] && value <= param[ 1 ] );
|
1508 |
+
},
|
1509 |
+
|
1510 |
+
// https://jqueryvalidation.org/step-method/
|
1511 |
+
step: function( value, element, param ) {
|
1512 |
+
var type = $( element ).attr( "type" ),
|
1513 |
+
errorMessage = "Step attribute on input type " + type + " is not supported.",
|
1514 |
+
supportedTypes = [ "text", "number", "range" ],
|
1515 |
+
re = new RegExp( "\\b" + type + "\\b" ),
|
1516 |
+
notSupported = type && !re.test( supportedTypes.join() ),
|
1517 |
+
decimalPlaces = function( num ) {
|
1518 |
+
var match = ( "" + num ).match( /(?:\.(\d+))?$/ );
|
1519 |
+
if ( !match ) {
|
1520 |
+
return 0;
|
1521 |
+
}
|
1522 |
+
|
1523 |
+
// Number of digits right of decimal point.
|
1524 |
+
return match[ 1 ] ? match[ 1 ].length : 0;
|
1525 |
+
},
|
1526 |
+
toInt = function( num ) {
|
1527 |
+
return Math.round( num * Math.pow( 10, decimals ) );
|
1528 |
+
},
|
1529 |
+
valid = true,
|
1530 |
+
decimals;
|
1531 |
+
|
1532 |
+
// Works only for text, number and range input types
|
1533 |
+
// TODO find a way to support input types date, datetime, datetime-local, month, time and week
|
1534 |
+
if ( notSupported ) {
|
1535 |
+
throw new Error( errorMessage );
|
1536 |
+
}
|
1537 |
+
|
1538 |
+
decimals = decimalPlaces( param );
|
1539 |
+
|
1540 |
+
// Value can't have too many decimals
|
1541 |
+
if ( decimalPlaces( value ) > decimals || toInt( value ) % toInt( param ) !== 0 ) {
|
1542 |
+
valid = false;
|
1543 |
+
}
|
1544 |
+
|
1545 |
+
return this.optional( element ) || valid;
|
1546 |
+
},
|
1547 |
+
|
1548 |
+
// https://jqueryvalidation.org/equalTo-method/
|
1549 |
+
equalTo: function( value, element, param ) {
|
1550 |
+
|
1551 |
+
// Bind to the blur event of the target in order to revalidate whenever the target field is updated
|
1552 |
+
var target = $( param );
|
1553 |
+
if ( this.settings.onfocusout && target.not( ".validate-equalTo-blur" ).length ) {
|
1554 |
+
target.addClass( "validate-equalTo-blur" ).on( "blur.validate-equalTo", function() {
|
1555 |
+
$( element ).valid();
|
1556 |
+
} );
|
1557 |
+
}
|
1558 |
+
return value === target.val();
|
1559 |
+
},
|
1560 |
+
|
1561 |
+
// https://jqueryvalidation.org/remote-method/
|
1562 |
+
remote: function( value, element, param, method ) {
|
1563 |
+
if ( this.optional( element ) ) {
|
1564 |
+
return "dependency-mismatch";
|
1565 |
+
}
|
1566 |
+
|
1567 |
+
method = typeof method === "string" && method || "remote";
|
1568 |
+
|
1569 |
+
var previous = this.previousValue( element, method ),
|
1570 |
+
validator, data, optionDataString;
|
1571 |
+
|
1572 |
+
if ( !this.settings.messages[ element.name ] ) {
|
1573 |
+
this.settings.messages[ element.name ] = {};
|
1574 |
+
}
|
1575 |
+
previous.originalMessage = previous.originalMessage || this.settings.messages[ element.name ][ method ];
|
1576 |
+
this.settings.messages[ element.name ][ method ] = previous.message;
|
1577 |
+
|
1578 |
+
param = typeof param === "string" && { url: param } || param;
|
1579 |
+
optionDataString = $.param( $.extend( { data: value }, param.data ) );
|
1580 |
+
if ( previous.old === optionDataString ) {
|
1581 |
+
return previous.valid;
|
1582 |
+
}
|
1583 |
+
|
1584 |
+
previous.old = optionDataString;
|
1585 |
+
validator = this;
|
1586 |
+
this.startRequest( element );
|
1587 |
+
data = {};
|
1588 |
+
data[ element.name ] = value;
|
1589 |
+
$.ajax( $.extend( true, {
|
1590 |
+
mode: "abort",
|
1591 |
+
port: "validate" + element.name,
|
1592 |
+
dataType: "json",
|
1593 |
+
data: data,
|
1594 |
+
context: validator.currentForm,
|
1595 |
+
success: function( response ) {
|
1596 |
+
var valid = response === true || response === "true",
|
1597 |
+
errors, message, submitted;
|
1598 |
+
|
1599 |
+
validator.settings.messages[ element.name ][ method ] = previous.originalMessage;
|
1600 |
+
if ( valid ) {
|
1601 |
+
submitted = validator.formSubmitted;
|
1602 |
+
validator.resetInternals();
|
1603 |
+
validator.toHide = validator.errorsFor( element );
|
1604 |
+
validator.formSubmitted = submitted;
|
1605 |
+
validator.successList.push( element );
|
1606 |
+
validator.invalid[ element.name ] = false;
|
1607 |
+
validator.showErrors();
|
1608 |
+
} else {
|
1609 |
+
errors = {};
|
1610 |
+
message = response || validator.defaultMessage( element, { method: method, parameters: value } );
|
1611 |
+
errors[ element.name ] = previous.message = message;
|
1612 |
+
validator.invalid[ element.name ] = true;
|
1613 |
+
validator.showErrors( errors );
|
1614 |
+
}
|
1615 |
+
previous.valid = valid;
|
1616 |
+
validator.stopRequest( element, valid );
|
1617 |
+
}
|
1618 |
+
}, param ) );
|
1619 |
+
return "pending";
|
1620 |
+
}
|
1621 |
+
}
|
1622 |
+
|
1623 |
+
} );
|
1624 |
+
|
1625 |
+
// Ajax mode: abort
|
1626 |
+
// usage: $.ajax({ mode: "abort"[, port: "uniqueport"]});
|
1627 |
+
// if mode:"abort" is used, the previous request on that port (port can be undefined) is aborted via XMLHttpRequest.abort()
|
1628 |
+
|
1629 |
+
var pendingRequests = {},
|
1630 |
+
ajax;
|
1631 |
+
|
1632 |
+
// Use a prefilter if available (1.5+)
|
1633 |
+
if ( $.ajaxPrefilter ) {
|
1634 |
+
$.ajaxPrefilter( function( settings, _, xhr ) {
|
1635 |
+
var port = settings.port;
|
1636 |
+
if ( settings.mode === "abort" ) {
|
1637 |
+
if ( pendingRequests[ port ] ) {
|
1638 |
+
pendingRequests[ port ].abort();
|
1639 |
+
}
|
1640 |
+
pendingRequests[ port ] = xhr;
|
1641 |
+
}
|
1642 |
+
} );
|
1643 |
+
} else {
|
1644 |
+
|
1645 |
+
// Proxy ajax
|
1646 |
+
ajax = $.ajax;
|
1647 |
+
$.ajax = function( settings ) {
|
1648 |
+
var mode = ( "mode" in settings ? settings : $.ajaxSettings ).mode,
|
1649 |
+
port = ( "port" in settings ? settings : $.ajaxSettings ).port;
|
1650 |
+
if ( mode === "abort" ) {
|
1651 |
+
if ( pendingRequests[ port ] ) {
|
1652 |
+
pendingRequests[ port ].abort();
|
1653 |
+
}
|
1654 |
+
pendingRequests[ port ] = ajax.apply( this, arguments );
|
1655 |
+
return pendingRequests[ port ];
|
1656 |
+
}
|
1657 |
+
return ajax.apply( this, arguments );
|
1658 |
+
};
|
1659 |
+
}
|
1660 |
+
return $;
|
1661 |
+
}));
|
js/messages_ar.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: AR (Arabic; العربية)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "هذا الحقل إلزامي",
|
7 |
+
remote: "يرجى تصحيح هذا الحقل للمتابعة",
|
8 |
+
email: "رجاء إدخال عنوان بريد إلكتروني صحيح",
|
9 |
+
url: "رجاء إدخال عنوان موقع إلكتروني صحيح",
|
10 |
+
date: "رجاء إدخال تاريخ صحيح",
|
11 |
+
dateISO: "رجاء إدخال تاريخ صحيح (ISO)",
|
12 |
+
number: "رجاء إدخال عدد بطريقة صحيحة",
|
13 |
+
digits: "رجاء إدخال أرقام فقط",
|
14 |
+
creditcard: "رجاء إدخال رقم بطاقة ائتمان صحيح",
|
15 |
+
equalTo: "رجاء إدخال نفس القيمة",
|
16 |
+
extension: "رجاء إدخال ملف بامتداد موافق عليه",
|
17 |
+
maxlength: jQuery.validator.format( "الحد الأقصى لعدد الحروف هو {0}" ),
|
18 |
+
minlength: jQuery.validator.format( "الحد الأدنى لعدد الحروف هو {0}" ),
|
19 |
+
rangelength: jQuery.validator.format( "عدد الحروف يجب أن يكون بين {0} و {1}" ),
|
20 |
+
range: jQuery.validator.format( "رجاء إدخال عدد قيمته بين {0} و {1}" ),
|
21 |
+
max: jQuery.validator.format( "رجاء إدخال عدد أقل من أو يساوي {0}" ),
|
22 |
+
min: jQuery.validator.format( "رجاء إدخال عدد أكبر من أو يساوي {0}" )
|
23 |
+
} );
|
js/messages_az.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: Az (Azeri; azərbaycan dili)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Bu xana mütləq doldurulmalıdır.",
|
7 |
+
remote: "Zəhmət olmasa, düzgün məna daxil edin.",
|
8 |
+
email: "Zəhmət olmasa, düzgün elektron poçt daxil edin.",
|
9 |
+
url: "Zəhmət olmasa, düzgün URL daxil edin.",
|
10 |
+
date: "Zəhmət olmasa, düzgün tarix daxil edin.",
|
11 |
+
dateISO: "Zəhmət olmasa, düzgün ISO formatlı tarix daxil edin.",
|
12 |
+
number: "Zəhmət olmasa, düzgün rəqəm daxil edin.",
|
13 |
+
digits: "Zəhmət olmasa, yalnız rəqəm daxil edin.",
|
14 |
+
creditcard: "Zəhmət olmasa, düzgün kredit kart nömrəsini daxil edin.",
|
15 |
+
equalTo: "Zəhmət olmasa, eyni mənanı bir daha daxil edin.",
|
16 |
+
extension: "Zəhmət olmasa, düzgün genişlənməyə malik faylı seçin.",
|
17 |
+
maxlength: jQuery.validator.format( "Zəhmət olmasa, {0} simvoldan çox olmayaraq daxil edin." ),
|
18 |
+
minlength: jQuery.validator.format( "Zəhmət olmasa, {0} simvoldan az olmayaraq daxil edin." ),
|
19 |
+
rangelength: jQuery.validator.format( "Zəhmət olmasa, {0} - {1} aralığında uzunluğa malik simvol daxil edin." ),
|
20 |
+
range: jQuery.validator.format( "Zəhmət olmasa, {0} - {1} aralığında rəqəm daxil edin." ),
|
21 |
+
max: jQuery.validator.format( "Zəhmət olmasa, {0} və ondan kiçik rəqəm daxil edin." ),
|
22 |
+
min: jQuery.validator.format( "Zəhmət olmasa, {0} və ondan böyük rəqəm daxil edin." )
|
23 |
+
} );
|
js/messages_bg.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: BG (Bulgarian; български език)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Полето е задължително.",
|
7 |
+
remote: "Моля, въведете правилната стойност.",
|
8 |
+
email: "Моля, въведете валиден email.",
|
9 |
+
url: "Моля, въведете валидно URL.",
|
10 |
+
date: "Моля, въведете валидна дата.",
|
11 |
+
dateISO: "Моля, въведете валидна дата (ISO).",
|
12 |
+
number: "Моля, въведете валиден номер.",
|
13 |
+
digits: "Моля, въведете само цифри.",
|
14 |
+
creditcard: "Моля, въведете валиден номер на кредитна карта.",
|
15 |
+
equalTo: "Моля, въведете същата стойност отново.",
|
16 |
+
extension: "Моля, въведете стойност с валидно разширение.",
|
17 |
+
maxlength: jQuery.validator.format( "Моля, въведете не повече от {0} символа." ),
|
18 |
+
minlength: jQuery.validator.format( "Моля, въведете поне {0} символа." ),
|
19 |
+
rangelength: jQuery.validator.format( "Моля, въведете стойност с дължина между {0} и {1} символа." ),
|
20 |
+
range: jQuery.validator.format( "Моля, въведете стойност между {0} и {1}." ),
|
21 |
+
max: jQuery.validator.format( "Моля, въведете стойност по-малка или равна на {0}." ),
|
22 |
+
min: jQuery.validator.format( "Моля, въведете стойност по-голяма или равна на {0}." )
|
23 |
+
} );
|
js/messages_bn_BD.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: bn_BD (Bengali, Bangladesh)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "এই তথ্যটি আবশ্যক।",
|
7 |
+
remote: "এই তথ্যটি ঠিক করুন।",
|
8 |
+
email: "অনুগ্রহ করে একটি সঠিক মেইল ঠিকানা লিখুন।",
|
9 |
+
url: "অনুগ্রহ করে একটি সঠিক লিঙ্ক দিন।",
|
10 |
+
date: "তারিখ সঠিক নয়।",
|
11 |
+
dateISO: "অনুগ্রহ করে একটি সঠিক (ISO) তারিখ লিখুন।",
|
12 |
+
number: "অনুগ্রহ করে একটি সঠিক নম্বর লিখুন।",
|
13 |
+
digits: "এখানে শুধু সংখ্যা ব্যবহার করা যাবে।",
|
14 |
+
creditcard: "অনুগ্রহ করে একটি ক্রেডিট কার্ডের সঠিক নম্বর লিখুন।",
|
15 |
+
equalTo: "একই মান আবার লিখুন।",
|
16 |
+
extension: "সঠিক ধরনের ফাইল আপলোড করুন।",
|
17 |
+
maxlength: jQuery.validator.format( "{0}টির বেশি অক্ষর লেখা যাবে না।" ),
|
18 |
+
minlength: jQuery.validator.format( "{0}টির কম অক্ষর লেখা যাবে না।" ),
|
19 |
+
rangelength: jQuery.validator.format( "{0} থেকে {1} টি অক্ষর সম্বলিত মান লিখুন।" ),
|
20 |
+
range: jQuery.validator.format( "{0} থেকে {1} এর মধ্যে একটি মান ব্যবহার করুন।" ),
|
21 |
+
max: jQuery.validator.format( "অনুগ্রহ করে {0} বা তার চাইতে কম মান ব্যবহার করুন।" ),
|
22 |
+
min: jQuery.validator.format( "অনুগ্রহ করে {0} বা তার চাইতে বেশি মান ব্যবহার করুন।" )
|
23 |
+
} );
|
js/messages_ca.js
CHANGED
@@ -1,23 +1,23 @@
|
|
1 |
/*
|
2 |
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: CA
|
4 |
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
});
|
1 |
/*
|
2 |
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: CA (Catalan; català)
|
4 |
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Aquest camp és obligatori.",
|
7 |
+
remote: "Si us plau, omple aquest camp.",
|
8 |
+
email: "Si us plau, escriu una adreça de correu-e vàlida.",
|
9 |
+
url: "Si us plau, escriu una URL vàlida.",
|
10 |
+
date: "Si us plau, escriu una data vàlida.",
|
11 |
+
dateISO: "Si us plau, escriu una data (ISO) vàlida.",
|
12 |
+
number: "Si us plau, escriu un número enter vàlid.",
|
13 |
+
digits: "Si us plau, escriu només dígits.",
|
14 |
+
creditcard: "Si us plau, escriu un número de tarjeta vàlid.",
|
15 |
+
equalTo: "Si us plau, escriu el mateix valor de nou.",
|
16 |
+
extension: "Si us plau, escriu un valor amb una extensió acceptada.",
|
17 |
+
maxlength: jQuery.validator.format( "Si us plau, no escriguis més de {0} caracters." ),
|
18 |
+
minlength: jQuery.validator.format( "Si us plau, no escriguis menys de {0} caracters." ),
|
19 |
+
rangelength: jQuery.validator.format( "Si us plau, escriu un valor entre {0} i {1} caracters." ),
|
20 |
+
range: jQuery.validator.format( "Si us plau, escriu un valor entre {0} i {1}." ),
|
21 |
+
max: jQuery.validator.format( "Si us plau, escriu un valor menor o igual a {0}." ),
|
22 |
+
min: jQuery.validator.format( "Si us plau, escriu un valor major o igual a {0}." )
|
23 |
+
} );
|
js/messages_cs.js
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: CS (Czech; čeština, český jazyk)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Tento údaj je povinný.",
|
7 |
+
remote: "Prosím, opravte tento údaj.",
|
8 |
+
email: "Prosím, zadejte platný e-mail.",
|
9 |
+
url: "Prosím, zadejte platné URL.",
|
10 |
+
date: "Prosím, zadejte platné datum.",
|
11 |
+
dateISO: "Prosím, zadejte platné datum (ISO).",
|
12 |
+
number: "Prosím, zadejte číslo.",
|
13 |
+
digits: "Prosím, zadávejte pouze číslice.",
|
14 |
+
creditcard: "Prosím, zadejte číslo kreditní karty.",
|
15 |
+
equalTo: "Prosím, zadejte znovu stejnou hodnotu.",
|
16 |
+
extension: "Prosím, zadejte soubor se správnou příponou.",
|
17 |
+
maxlength: jQuery.validator.format( "Prosím, zadejte nejvíce {0} znaků." ),
|
18 |
+
minlength: jQuery.validator.format( "Prosím, zadejte nejméně {0} znaků." ),
|
19 |
+
rangelength: jQuery.validator.format( "Prosím, zadejte od {0} do {1} znaků." ),
|
20 |
+
range: jQuery.validator.format( "Prosím, zadejte hodnotu od {0} do {1}." ),
|
21 |
+
max: jQuery.validator.format( "Prosím, zadejte hodnotu menší nebo rovnu {0}." ),
|
22 |
+
min: jQuery.validator.format( "Prosím, zadejte hodnotu větší nebo rovnu {0}." ),
|
23 |
+
step: jQuery.validator.format( "Musí být násobkem čísla {0}." )
|
24 |
+
} );
|
js/messages_da.js
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: DA (Danish; dansk)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Dette felt er påkrævet.",
|
7 |
+
remote: "Ret venligst dette felt.",
|
8 |
+
email: "Indtast en gyldig email-adresse.",
|
9 |
+
url: "Indtast en gyldig URL.",
|
10 |
+
date: "Indtast en gyldig dato.",
|
11 |
+
number: "Indtast et tal.",
|
12 |
+
digits: "Indtast kun cifre.",
|
13 |
+
creditcard: "Indtast et gyldigt kreditkortnummer.",
|
14 |
+
equalTo: "Indtast den samme værdi igen.",
|
15 |
+
time: "Angiv en gyldig tid mellem kl. 00:00 og 23:59.",
|
16 |
+
ipv4: "Angiv venligst en gyldig IPv4-adresse.",
|
17 |
+
ipv6: "Angiv venligst en gyldig IPv6-adresse.",
|
18 |
+
require_from_group: jQuery.validator.format( "Angiv mindst {0} af disse felter." ),
|
19 |
+
extension: "Indtast venligst en værdi med en gyldig endelse.",
|
20 |
+
pattern: "Ugyldigt format.",
|
21 |
+
lettersonly: "Angiv venligst kun bogstaver.",
|
22 |
+
nowhitespace: "Må ikke indholde mellemrum.",
|
23 |
+
maxlength: jQuery.validator.format( "Indtast højst {0} tegn." ),
|
24 |
+
minlength: jQuery.validator.format( "Indtast mindst {0} tegn." ),
|
25 |
+
rangelength: jQuery.validator.format( "Indtast mindst {0} og højst {1} tegn." ),
|
26 |
+
range: jQuery.validator.format( "Angiv en værdi mellem {0} og {1}." ),
|
27 |
+
max: jQuery.validator.format( "Angiv en værdi der højst er {0}." ),
|
28 |
+
min: jQuery.validator.format( "Angiv en værdi der mindst er {0}." ),
|
29 |
+
minWords: jQuery.validator.format( "Indtast venligst mindst {0} ord." ),
|
30 |
+
maxWords: jQuery.validator.format( "Indtast venligst højst {0} ord." ),
|
31 |
+
step: jQuery.validator.format( "Angiv en værdi gange {0}." ),
|
32 |
+
notEqualTo: "Angiv en anden værdi, værdierne må ikke være det samme.",
|
33 |
+
integer: "Angiv et ikke-decimaltal, der er positivt eller negativt."
|
34 |
+
} );
|
js/messages_de.js
CHANGED
@@ -1,20 +1,70 @@
|
|
1 |
-
/*
|
2 |
-
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: DE
|
4 |
-
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
required: "Dieses Feld ist ein Pflichtfeld.",
|
7 |
-
maxlength: jQuery.validator.format("Geben Sie bitte maximal {0} Zeichen ein."),
|
8 |
-
minlength: jQuery.validator.format("Geben Sie bitte mindestens {0} Zeichen ein."),
|
9 |
-
rangelength: jQuery.validator.format("Geben Sie bitte mindestens {0} und maximal {1} Zeichen ein."),
|
10 |
-
email: "Geben Sie bitte eine gültige E-Mail
|
11 |
-
url: "Geben Sie bitte eine gültige URL ein.",
|
12 |
-
date: "
|
13 |
-
number: "Geben Sie bitte eine Nummer ein.",
|
14 |
-
digits: "Geben Sie bitte nur Ziffern ein.",
|
15 |
-
equalTo: "
|
16 |
-
range: jQuery.validator.format("Geben Sie
|
17 |
-
max: jQuery.validator.format("Geben Sie bitte einen Wert kleiner oder gleich {0} ein."),
|
18 |
-
min: jQuery.validator.format("Geben Sie bitte einen Wert größer oder gleich {0} ein."),
|
19 |
-
creditcard: "Geben Sie bitte
|
20 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: DE (German, Deutsch)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Dieses Feld ist ein Pflichtfeld.",
|
7 |
+
maxlength: jQuery.validator.format( "Geben Sie bitte maximal {0} Zeichen ein." ),
|
8 |
+
minlength: jQuery.validator.format( "Geben Sie bitte mindestens {0} Zeichen ein." ),
|
9 |
+
rangelength: jQuery.validator.format( "Geben Sie bitte mindestens {0} und maximal {1} Zeichen ein." ),
|
10 |
+
email: "Geben Sie bitte eine gültige E-Mail-Adresse ein.",
|
11 |
+
url: "Geben Sie bitte eine gültige URL ein.",
|
12 |
+
date: "Geben Sie bitte ein gültiges Datum ein.",
|
13 |
+
number: "Geben Sie bitte eine Nummer ein.",
|
14 |
+
digits: "Geben Sie bitte nur Ziffern ein.",
|
15 |
+
equalTo: "Wiederholen Sie bitte denselben Wert.",
|
16 |
+
range: jQuery.validator.format( "Geben Sie bitte einen Wert zwischen {0} und {1} ein." ),
|
17 |
+
max: jQuery.validator.format( "Geben Sie bitte einen Wert kleiner oder gleich {0} ein." ),
|
18 |
+
min: jQuery.validator.format( "Geben Sie bitte einen Wert größer oder gleich {0} ein." ),
|
19 |
+
creditcard: "Geben Sie bitte eine gültige Kreditkarten-Nummer ein.",
|
20 |
+
remote: "Korrigieren Sie bitte dieses Feld.",
|
21 |
+
dateISO: "Geben Sie bitte ein gültiges Datum ein (ISO-Format).",
|
22 |
+
step: jQuery.validator.format( "Geben Sie bitte ein Vielfaches von {0} ein." ),
|
23 |
+
maxWords: jQuery.validator.format( "Geben Sie bitte {0} Wörter oder weniger ein." ),
|
24 |
+
minWords: jQuery.validator.format( "Geben Sie bitte mindestens {0} Wörter ein." ),
|
25 |
+
rangeWords: jQuery.validator.format( "Geben Sie bitte zwischen {0} und {1} Wörtern ein." ),
|
26 |
+
accept: "Geben Sie bitte einen Wert mit einem gültigen MIME-Typ ein.",
|
27 |
+
alphanumeric: "Geben Sie bitte nur Buchstaben (keine Umlaute), Zahlen oder Unterstriche ein.",
|
28 |
+
bankaccountNL: "Geben Sie bitte eine gültige Kontonummer ein.",
|
29 |
+
bankorgiroaccountNL: "Geben Sie bitte eine gültige Bank- oder Girokontonummer ein.",
|
30 |
+
bic: "Geben Sie bitte einen gültigen BIC-Code ein.",
|
31 |
+
cifES: "Geben Sie bitte eine gültige CIF-Nummer ein.",
|
32 |
+
cpfBR: "Geben Sie bitte eine gültige CPF-Nummer ein.",
|
33 |
+
creditcardtypes: "Geben Sie bitte eine gültige Kreditkarten-Nummer ein.",
|
34 |
+
currency: "Geben Sie bitte eine gültige Währung ein.",
|
35 |
+
extension: "Geben Sie bitte einen Wert mit einer gültigen Erweiterung ein.",
|
36 |
+
giroaccountNL: "Geben Sie bitte eine gültige Girokontonummer ein.",
|
37 |
+
iban: "Geben Sie bitte eine gültige IBAN ein.",
|
38 |
+
integer: "Geben Sie bitte eine positive oder negative Nicht-Dezimalzahl ein.",
|
39 |
+
ipv4: "Geben Sie bitte eine gültige IPv4-Adresse ein.",
|
40 |
+
ipv6: "Geben Sie bitte eine gültige IPv6-Adresse ein.",
|
41 |
+
lettersonly: "Geben Sie bitte nur Buchstaben ein.",
|
42 |
+
letterswithbasicpunc: "Geben Sie bitte nur Buchstaben oder Interpunktion ein.",
|
43 |
+
mobileNL: "Geben Sie bitte eine gültige Handynummer ein.",
|
44 |
+
mobileUK: "Geben Sie bitte eine gültige Handynummer ein.",
|
45 |
+
netmask: "Geben Sie bitte eine gültige Netzmaske ein.",
|
46 |
+
nieES: "Geben Sie bitte eine gültige NIE-Nummer ein.",
|
47 |
+
nifES: "Geben Sie bitte eine gültige NIF-Nummer ein.",
|
48 |
+
nipPL: "Geben Sie bitte eine gültige NIP-Nummer ein.",
|
49 |
+
notEqualTo: "Geben Sie bitte einen anderen Wert ein. Die Werte dürfen nicht gleich sein.",
|
50 |
+
nowhitespace: "Kein Leerzeichen bitte.",
|
51 |
+
pattern: "Ungültiges Format.",
|
52 |
+
phoneNL: "Geben Sie bitte eine gültige Telefonnummer ein.",
|
53 |
+
phonesUK: "Geben Sie bitte eine gültige britische Telefonnummer ein.",
|
54 |
+
phoneUK: "Geben Sie bitte eine gültige Telefonnummer ein.",
|
55 |
+
phoneUS: "Geben Sie bitte eine gültige Telefonnummer ein.",
|
56 |
+
postalcodeBR: "Geben Sie bitte eine gültige brasilianische Postleitzahl ein.",
|
57 |
+
postalCodeCA: "Geben Sie bitte eine gültige kanadische Postleitzahl ein.",
|
58 |
+
postalcodeIT: "Geben Sie bitte eine gültige italienische Postleitzahl ein.",
|
59 |
+
postalcodeNL: "Geben Sie bitte eine gültige niederländische Postleitzahl ein.",
|
60 |
+
postcodeUK: "Geben Sie bitte eine gültige britische Postleitzahl ein.",
|
61 |
+
require_from_group: jQuery.validator.format( "Füllen Sie bitte mindestens {0} dieser Felder aus." ),
|
62 |
+
skip_or_fill_minimum: jQuery.validator.format( "Überspringen Sie bitte diese Felder oder füllen Sie mindestens {0} von ihnen aus." ),
|
63 |
+
stateUS: "Geben Sie bitte einen gültigen US-Bundesstaat ein.",
|
64 |
+
strippedminlength: jQuery.validator.format( "Geben Sie bitte mindestens {0} Zeichen ein." ),
|
65 |
+
time: "Geben Sie bitte eine gültige Uhrzeit zwischen 00:00 und 23:59 ein.",
|
66 |
+
time12h: "Geben Sie bitte eine gültige Uhrzeit im 12-Stunden-Format ein.",
|
67 |
+
vinUS: "Die angegebene Fahrzeugidentifikationsnummer (VIN) ist ungültig.",
|
68 |
+
zipcodeUS: "Die angegebene US-Postleitzahl ist ungültig.",
|
69 |
+
ziprange: "Ihre Postleitzahl muss im Bereich 902xx-xxxx bis 905xx-xxxx liegen."
|
70 |
+
} );
|
js/messages_el.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: EL (Greek; ελληνικά)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Αυτό το πεδίο είναι υποχρεωτικό.",
|
7 |
+
remote: "Παρακαλώ διορθώστε αυτό το πεδίο.",
|
8 |
+
email: "Παρακαλώ εισάγετε μια έγκυρη διεύθυνση email.",
|
9 |
+
url: "Παρακαλώ εισάγετε ένα έγκυρο URL.",
|
10 |
+
date: "Παρακαλώ εισάγετε μια έγκυρη ημερομηνία.",
|
11 |
+
dateISO: "Παρακαλώ εισάγετε μια έγκυρη ημερομηνία (ISO).",
|
12 |
+
number: "Παρακαλώ εισάγετε έναν έγκυρο αριθμό.",
|
13 |
+
digits: "Παρακαλώ εισάγετε μόνο αριθμητικά ψηφία.",
|
14 |
+
creditcard: "Παρακαλώ εισάγετε έναν έγκυρο αριθμό πιστωτικής κάρτας.",
|
15 |
+
equalTo: "Παρακαλώ εισάγετε την ίδια τιμή ξανά.",
|
16 |
+
extension: "Παρακαλώ εισάγετε μια τιμή με έγκυρη επέκταση αρχείου.",
|
17 |
+
maxlength: jQuery.validator.format( "Παρακαλώ εισάγετε μέχρι και {0} χαρακτήρες." ),
|
18 |
+
minlength: jQuery.validator.format( "Παρακαλώ εισάγετε τουλάχιστον {0} χαρακτήρες." ),
|
19 |
+
rangelength: jQuery.validator.format( "Παρακαλώ εισάγετε μια τιμή με μήκος μεταξύ {0} και {1} χαρακτήρων." ),
|
20 |
+
range: jQuery.validator.format( "Παρακαλώ εισάγετε μια τιμή μεταξύ {0} και {1}." ),
|
21 |
+
max: jQuery.validator.format( "Παρακαλώ εισάγετε μια τιμή μικρότερη ή ίση του {0}." ),
|
22 |
+
min: jQuery.validator.format( "Παρακαλώ εισάγετε μια τιμή μεγαλύτερη ή ίση του {0}." )
|
23 |
+
} );
|
js/messages_es.js
CHANGED
@@ -1,23 +1,26 @@
|
|
1 |
-
/*
|
2 |
-
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: ES
|
4 |
-
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: ES (Spanish; Español)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Este campo es obligatorio.",
|
7 |
+
remote: "Por favor, rellena este campo.",
|
8 |
+
email: "Por favor, escribe una dirección de correo válida.",
|
9 |
+
url: "Por favor, escribe una URL válida.",
|
10 |
+
date: "Por favor, escribe una fecha válida.",
|
11 |
+
dateISO: "Por favor, escribe una fecha (ISO) válida.",
|
12 |
+
number: "Por favor, escribe un número válido.",
|
13 |
+
digits: "Por favor, escribe sólo dígitos.",
|
14 |
+
creditcard: "Por favor, escribe un número de tarjeta válido.",
|
15 |
+
equalTo: "Por favor, escribe el mismo valor de nuevo.",
|
16 |
+
extension: "Por favor, escribe un valor con una extensión aceptada.",
|
17 |
+
maxlength: jQuery.validator.format( "Por favor, no escribas más de {0} caracteres." ),
|
18 |
+
minlength: jQuery.validator.format( "Por favor, no escribas menos de {0} caracteres." ),
|
19 |
+
rangelength: jQuery.validator.format( "Por favor, escribe un valor entre {0} y {1} caracteres." ),
|
20 |
+
range: jQuery.validator.format( "Por favor, escribe un valor entre {0} y {1}." ),
|
21 |
+
max: jQuery.validator.format( "Por favor, escribe un valor menor o igual a {0}." ),
|
22 |
+
min: jQuery.validator.format( "Por favor, escribe un valor mayor o igual a {0}." ),
|
23 |
+
nifES: "Por favor, escribe un NIF válido.",
|
24 |
+
nieES: "Por favor, escribe un NIE válido.",
|
25 |
+
cifES: "Por favor, escribe un CIF válido."
|
26 |
+
} );
|
js/messages_es_AR.js
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: ES (Spanish; Español)
|
4 |
+
* Region: AR (Argentina)
|
5 |
+
*/
|
6 |
+
jQuery.extend( jQuery.validator.messages, {
|
7 |
+
required: "Este campo es obligatorio.",
|
8 |
+
remote: "Por favor, completá este campo.",
|
9 |
+
email: "Por favor, escribí una dirección de correo válida.",
|
10 |
+
url: "Por favor, escribí una URL válida.",
|
11 |
+
date: "Por favor, escribí una fecha válida.",
|
12 |
+
dateISO: "Por favor, escribí una fecha (ISO) válida.",
|
13 |
+
number: "Por favor, escribí un número entero válido.",
|
14 |
+
digits: "Por favor, escribí sólo dígitos.",
|
15 |
+
creditcard: "Por favor, escribí un número de tarjeta válido.",
|
16 |
+
equalTo: "Por favor, escribí el mismo valor de nuevo.",
|
17 |
+
extension: "Por favor, escribí un valor con una extensión aceptada.",
|
18 |
+
maxlength: jQuery.validator.format( "Por favor, no escribas más de {0} caracteres." ),
|
19 |
+
minlength: jQuery.validator.format( "Por favor, no escribas menos de {0} caracteres." ),
|
20 |
+
rangelength: jQuery.validator.format( "Por favor, escribí un valor entre {0} y {1} caracteres." ),
|
21 |
+
range: jQuery.validator.format( "Por favor, escribí un valor entre {0} y {1}." ),
|
22 |
+
max: jQuery.validator.format( "Por favor, escribí un valor menor o igual a {0}." ),
|
23 |
+
min: jQuery.validator.format( "Por favor, escribí un valor mayor o igual a {0}." ),
|
24 |
+
nifES: "Por favor, escribí un NIF válido.",
|
25 |
+
nieES: "Por favor, escribí un NIE válido.",
|
26 |
+
cifES: "Por favor, escribí un CIF válido."
|
27 |
+
} );
|
js/messages_es_PE.js
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: ES (Spanish; Español)
|
4 |
+
* Region: PE (Perú)
|
5 |
+
*/
|
6 |
+
jQuery.extend( jQuery.validator.messages, {
|
7 |
+
required: "Este campo es obligatorio.",
|
8 |
+
remote: "Por favor, llene este campo.",
|
9 |
+
email: "Por favor, escriba un correo electrónico válido.",
|
10 |
+
url: "Por favor, escriba una URL válida.",
|
11 |
+
date: "Por favor, escriba una fecha válida.",
|
12 |
+
dateISO: "Por favor, escriba una fecha (ISO) válida.",
|
13 |
+
number: "Por favor, escriba un número válido.",
|
14 |
+
digits: "Por favor, escriba sólo dígitos.",
|
15 |
+
creditcard: "Por favor, escriba un número de tarjeta válido.",
|
16 |
+
equalTo: "Por favor, escriba el mismo valor de nuevo.",
|
17 |
+
extension: "Por favor, escriba un valor con una extensión permitida.",
|
18 |
+
maxlength: jQuery.validator.format( "Por favor, no escriba más de {0} caracteres." ),
|
19 |
+
minlength: jQuery.validator.format( "Por favor, no escriba menos de {0} caracteres." ),
|
20 |
+
rangelength: jQuery.validator.format( "Por favor, escriba un valor entre {0} y {1} caracteres." ),
|
21 |
+
range: jQuery.validator.format( "Por favor, escriba un valor entre {0} y {1}." ),
|
22 |
+
max: jQuery.validator.format( "Por favor, escriba un valor menor o igual a {0}." ),
|
23 |
+
min: jQuery.validator.format( "Por favor, escriba un valor mayor o igual a {0}." ),
|
24 |
+
nifES: "Por favor, escriba un NIF válido.",
|
25 |
+
nieES: "Por favor, escriba un NIE válido.",
|
26 |
+
cifES: "Por favor, escriba un CIF válido."
|
27 |
+
} );
|
js/messages_et.js
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: ET (Estonian; eesti, eesti keel)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "See väli peab olema täidetud.",
|
7 |
+
maxlength: jQuery.validator.format( "Palun sisestage vähem kui {0} tähemärki." ),
|
8 |
+
minlength: jQuery.validator.format( "Palun sisestage vähemalt {0} tähemärki." ),
|
9 |
+
rangelength: jQuery.validator.format( "Palun sisestage väärtus vahemikus {0} kuni {1} tähemärki." ),
|
10 |
+
email: "Palun sisestage korrektne e-maili aadress.",
|
11 |
+
url: "Palun sisestage korrektne URL.",
|
12 |
+
date: "Palun sisestage korrektne kuupäev.",
|
13 |
+
dateISO: "Palun sisestage korrektne kuupäev (YYYY-MM-DD).",
|
14 |
+
number: "Palun sisestage korrektne number.",
|
15 |
+
digits: "Palun sisestage ainult numbreid.",
|
16 |
+
equalTo: "Palun sisestage sama väärtus uuesti.",
|
17 |
+
range: jQuery.validator.format( "Palun sisestage väärtus vahemikus {0} kuni {1}." ),
|
18 |
+
max: jQuery.validator.format( "Palun sisestage väärtus, mis on väiksem või võrdne arvuga {0}." ),
|
19 |
+
min: jQuery.validator.format( "Palun sisestage väärtus, mis on suurem või võrdne arvuga {0}." ),
|
20 |
+
creditcard: "Palun sisestage korrektne krediitkaardi number."
|
21 |
+
} );
|
js/messages_eu.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: EU (Basque; euskara, euskera)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Eremu hau beharrezkoa da.",
|
7 |
+
remote: "Mesedez, bete eremu hau.",
|
8 |
+
email: "Mesedez, idatzi baliozko posta helbide bat.",
|
9 |
+
url: "Mesedez, idatzi baliozko URL bat.",
|
10 |
+
date: "Mesedez, idatzi baliozko data bat.",
|
11 |
+
dateISO: "Mesedez, idatzi baliozko (ISO) data bat.",
|
12 |
+
number: "Mesedez, idatzi baliozko zenbaki oso bat.",
|
13 |
+
digits: "Mesedez, idatzi digituak soilik.",
|
14 |
+
creditcard: "Mesedez, idatzi baliozko txartel zenbaki bat.",
|
15 |
+
equalTo: "Mesedez, idatzi berdina berriro ere.",
|
16 |
+
extension: "Mesedez, idatzi onartutako luzapena duen balio bat.",
|
17 |
+
maxlength: jQuery.validator.format( "Mesedez, ez idatzi {0} karaktere baino gehiago." ),
|
18 |
+
minlength: jQuery.validator.format( "Mesedez, ez idatzi {0} karaktere baino gutxiago." ),
|
19 |
+
rangelength: jQuery.validator.format( "Mesedez, idatzi {0} eta {1} karaktere arteko balio bat." ),
|
20 |
+
range: jQuery.validator.format( "Mesedez, idatzi {0} eta {1} arteko balio bat." ),
|
21 |
+
max: jQuery.validator.format( "Mesedez, idatzi {0} edo txikiagoa den balio bat." ),
|
22 |
+
min: jQuery.validator.format( "Mesedez, idatzi {0} edo handiagoa den balio bat." )
|
23 |
+
} );
|
js/messages_fa.js
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: FA (Persian; فارسی)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "تکمیل این فیلد اجباری است.",
|
7 |
+
remote: "لطفا این فیلد را تصحیح کنید.",
|
8 |
+
email: "لطفا یک ایمیل صحیح وارد کنید.",
|
9 |
+
url: "لطفا آدرس صحیح وارد کنید.",
|
10 |
+
date: "لطفا تاریخ صحیح وارد کنید.",
|
11 |
+
dateFA: "لطفا یک تاریخ صحیح وارد کنید.",
|
12 |
+
dateISO: "لطفا تاریخ صحیح وارد کنید (ISO).",
|
13 |
+
number: "لطفا عدد صحیح وارد کنید.",
|
14 |
+
digits: "لطفا تنها رقم وارد کنید.",
|
15 |
+
creditcard: "لطفا کریدیت کارت صحیح وارد کنید.",
|
16 |
+
equalTo: "لطفا مقدار برابری وارد کنید.",
|
17 |
+
extension: "لطفا مقداری وارد کنید که.",
|
18 |
+
alphanumeric: "لطفا مقدار را عدد (انگلیسی) وارد کنید.",
|
19 |
+
maxlength: jQuery.validator.format( "لطفا بیشتر از {0} حرف وارد نکنید." ),
|
20 |
+
minlength: jQuery.validator.format( "لطفا کمتر از {0} حرف وارد نکنید." ),
|
21 |
+
rangelength: jQuery.validator.format( "لطفا مقداری بین {0} تا {1} حرف وارد کنید." ),
|
22 |
+
range: jQuery.validator.format( "لطفا مقداری بین {0} تا {1} حرف وارد کنید." ),
|
23 |
+
max: jQuery.validator.format( "لطفا مقداری کمتر از {0} وارد کنید." ),
|
24 |
+
min: jQuery.validator.format( "لطفا مقداری بیشتر از {0} وارد کنید." ),
|
25 |
+
minWords: jQuery.validator.format( "لطفا حداقل {0} کلمه وارد کنید." ),
|
26 |
+
maxWords: jQuery.validator.format( "لطفا حداکثر {0} کلمه وارد کنید." )
|
27 |
+
} );
|
js/messages_fi.js
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: FI (Finnish; suomi, suomen kieli)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Tämä kenttä on pakollinen.",
|
7 |
+
email: "Syötä oikea sähköpostiosoite.",
|
8 |
+
url: "Syötä oikea URL-osoite.",
|
9 |
+
date: "Syötä oikea päivämäärä.",
|
10 |
+
dateISO: "Syötä oikea päivämäärä muodossa VVVV-KK-PP.",
|
11 |
+
number: "Syötä luku.",
|
12 |
+
creditcard: "Syötä voimassa oleva luottokorttinumero.",
|
13 |
+
digits: "Syötä pelkästään numeroita.",
|
14 |
+
equalTo: "Syötä sama arvo uudestaan.",
|
15 |
+
maxlength: jQuery.validator.format( "Voit syöttää enintään {0} merkkiä." ),
|
16 |
+
minlength: jQuery.validator.format( "Vähintään {0} merkkiä." ),
|
17 |
+
rangelength: jQuery.validator.format( "Syötä vähintään {0} ja enintään {1} merkkiä." ),
|
18 |
+
range: jQuery.validator.format( "Syötä arvo väliltä {0}–{1}." ),
|
19 |
+
max: jQuery.validator.format( "Syötä arvo, joka on enintään {0}." ),
|
20 |
+
min: jQuery.validator.format( "Syötä arvo, joka on vähintään {0}." )
|
21 |
+
} );
|
js/messages_fr.js
CHANGED
@@ -1,23 +1,52 @@
|
|
1 |
-
/*
|
2 |
-
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: FR
|
4 |
-
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: FR (French; français)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Ce champ est obligatoire.",
|
7 |
+
remote: "Veuillez corriger ce champ.",
|
8 |
+
email: "Veuillez fournir une adresse électronique valide.",
|
9 |
+
url: "Veuillez fournir une adresse URL valide.",
|
10 |
+
date: "Veuillez fournir une date valide.",
|
11 |
+
dateISO: "Veuillez fournir une date valide (ISO).",
|
12 |
+
number: "Veuillez fournir un numéro valide.",
|
13 |
+
digits: "Veuillez fournir seulement des chiffres.",
|
14 |
+
creditcard: "Veuillez fournir un numéro de carte de crédit valide.",
|
15 |
+
equalTo: "Veuillez fournir encore la même valeur.",
|
16 |
+
notEqualTo: "Veuillez fournir une valeur différente, les valeurs ne doivent pas être identiques.",
|
17 |
+
extension: "Veuillez fournir une valeur avec une extension valide.",
|
18 |
+
maxlength: jQuery.validator.format( "Veuillez fournir au plus {0} caractères." ),
|
19 |
+
minlength: jQuery.validator.format( "Veuillez fournir au moins {0} caractères." ),
|
20 |
+
rangelength: jQuery.validator.format( "Veuillez fournir une valeur qui contient entre {0} et {1} caractères." ),
|
21 |
+
range: jQuery.validator.format( "Veuillez fournir une valeur entre {0} et {1}." ),
|
22 |
+
max: jQuery.validator.format( "Veuillez fournir une valeur inférieure ou égale à {0}." ),
|
23 |
+
min: jQuery.validator.format( "Veuillez fournir une valeur supérieure ou égale à {0}." ),
|
24 |
+
step: jQuery.validator.format( "Veuillez fournir une valeur multiple de {0}." ),
|
25 |
+
maxWords: jQuery.validator.format( "Veuillez fournir au plus {0} mots." ),
|
26 |
+
minWords: jQuery.validator.format( "Veuillez fournir au moins {0} mots." ),
|
27 |
+
rangeWords: jQuery.validator.format( "Veuillez fournir entre {0} et {1} mots." ),
|
28 |
+
letterswithbasicpunc: "Veuillez fournir seulement des lettres et des signes de ponctuation.",
|
29 |
+
alphanumeric: "Veuillez fournir seulement des lettres, nombres, espaces et soulignages.",
|
30 |
+
lettersonly: "Veuillez fournir seulement des lettres.",
|
31 |
+
nowhitespace: "Veuillez ne pas inscrire d'espaces blancs.",
|
32 |
+
ziprange: "Veuillez fournir un code postal entre 902xx-xxxx et 905-xx-xxxx.",
|
33 |
+
integer: "Veuillez fournir un nombre non décimal qui est positif ou négatif.",
|
34 |
+
vinUS: "Veuillez fournir un numéro d'identification du véhicule (VIN).",
|
35 |
+
dateITA: "Veuillez fournir une date valide.",
|
36 |
+
time: "Veuillez fournir une heure valide entre 00:00 et 23:59.",
|
37 |
+
phoneUS: "Veuillez fournir un numéro de téléphone valide.",
|
38 |
+
phoneUK: "Veuillez fournir un numéro de téléphone valide.",
|
39 |
+
mobileUK: "Veuillez fournir un numéro de téléphone mobile valide.",
|
40 |
+
strippedminlength: jQuery.validator.format( "Veuillez fournir au moins {0} caractères." ),
|
41 |
+
email2: "Veuillez fournir une adresse électronique valide.",
|
42 |
+
url2: "Veuillez fournir une adresse URL valide.",
|
43 |
+
creditcardtypes: "Veuillez fournir un numéro de carte de crédit valide.",
|
44 |
+
ipv4: "Veuillez fournir une adresse IP v4 valide.",
|
45 |
+
ipv6: "Veuillez fournir une adresse IP v6 valide.",
|
46 |
+
require_from_group: jQuery.validator.format( "Veuillez fournir au moins {0} de ces champs." ),
|
47 |
+
nifES: "Veuillez fournir un numéro NIF valide.",
|
48 |
+
nieES: "Veuillez fournir un numéro NIE valide.",
|
49 |
+
cifES: "Veuillez fournir un numéro CIF valide.",
|
50 |
+
postalCodeCA: "Veuillez fournir un code postal valide.",
|
51 |
+
pattern: "Format non valide."
|
52 |
+
} );
|
js/messages_ge.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @author @tatocaster <kutaliatato@gmail.com>
|
3 |
+
* Translated default messages for the jQuery validation plugin.
|
4 |
+
* Locale: GE (Georgian; ქართული)
|
5 |
+
*/
|
6 |
+
jQuery.extend( jQuery.validator.messages, {
|
7 |
+
required: "ეს ველი სავალდებულოა.",
|
8 |
+
remote: "გთხოვთ შეასწოროთ.",
|
9 |
+
email: "გთხოვთ შეიყვანოთ სწორი ფორმატით.",
|
10 |
+
url: "გთხოვთ შეიყვანოთ სწორი ფორმატით.",
|
11 |
+
date: "გთხოვთ შეიყვანოთ სწორი თარიღი.",
|
12 |
+
dateISO: "გთხოვთ შეიყვანოთ სწორი ფორმატით (ISO).",
|
13 |
+
number: "გთხოვთ შეიყვანოთ რიცხვი.",
|
14 |
+
digits: "დაშვებულია მხოლოდ ციფრები.",
|
15 |
+
creditcard: "გთხოვთ შეიყვანოთ სწორი ფორმატის ბარათის კოდი.",
|
16 |
+
equalTo: "გთხოვთ შეიყვანოთ იგივე მნიშვნელობა.",
|
17 |
+
maxlength: jQuery.validator.format( "გთხოვთ შეიყვანოთ არა უმეტეს {0} სიმბოლოსი." ),
|
18 |
+
minlength: jQuery.validator.format( "შეიყვანეთ მინიმუმ {0} სიმბოლო." ),
|
19 |
+
rangelength: jQuery.validator.format( "გთხოვთ შეიყვანოთ {0} -დან {1} -მდე რაოდენობის სიმბოლოები." ),
|
20 |
+
range: jQuery.validator.format( "შეიყვანეთ {0} -სა {1} -ს შორის." ),
|
21 |
+
max: jQuery.validator.format( "გთხოვთ შეიყვანოთ მნიშვნელობა ნაკლები ან ტოლი {0} -ს." ),
|
22 |
+
min: jQuery.validator.format( "გთხოვთ შეიყვანოთ მნიშვნელობა მეტი ან ტოლი {0} -ს." )
|
23 |
+
} );
|
js/messages_gl.js
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: GL (Galician; Galego)
|
4 |
+
*/
|
5 |
+
( function( jQuery ) {
|
6 |
+
jQuery.extend( jQuery.validator.messages, {
|
7 |
+
required: "Este campo é obrigatorio.",
|
8 |
+
remote: "Por favor, cubre este campo.",
|
9 |
+
email: "Por favor, escribe unha dirección de correo válida.",
|
10 |
+
url: "Por favor, escribe unha URL válida.",
|
11 |
+
date: "Por favor, escribe unha data válida.",
|
12 |
+
dateISO: "Por favor, escribe unha data (ISO) válida.",
|
13 |
+
number: "Por favor, escribe un número válido.",
|
14 |
+
digits: "Por favor, escribe só díxitos.",
|
15 |
+
creditcard: "Por favor, escribe un número de tarxeta válido.",
|
16 |
+
equalTo: "Por favor, escribe o mesmo valor de novo.",
|
17 |
+
extension: "Por favor, escribe un valor cunha extensión aceptada.",
|
18 |
+
maxlength: jQuery.validator.format( "Por favor, non escribas máis de {0} caracteres." ),
|
19 |
+
minlength: jQuery.validator.format( "Por favor, non escribas menos de {0} caracteres." ),
|
20 |
+
rangelength: jQuery.validator.format( "Por favor, escribe un valor entre {0} e {1} caracteres." ),
|
21 |
+
range: jQuery.validator.format( "Por favor, escribe un valor entre {0} e {1}." ),
|
22 |
+
max: jQuery.validator.format( "Por favor, escribe un valor menor ou igual a {0}." ),
|
23 |
+
min: jQuery.validator.format( "Por favor, escribe un valor maior ou igual a {0}." ),
|
24 |
+
nifES: "Por favor, escribe un NIF válido.",
|
25 |
+
nieES: "Por favor, escribe un NIE válido.",
|
26 |
+
cifES: "Por favor, escribe un CIF válido."
|
27 |
+
} );
|
28 |
+
}( jQuery ) );
|
js/messages_he.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: HE (Hebrew; עברית)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "השדה הזה הינו שדה חובה",
|
7 |
+
remote: "נא לתקן שדה זה",
|
8 |
+
email: "נא למלא כתובת דוא\"ל חוקית",
|
9 |
+
url: "נא למלא כתובת אינטרנט חוקית",
|
10 |
+
date: "נא למלא תאריך חוקי",
|
11 |
+
dateISO: "נא למלא תאריך חוקי (ISO)",
|
12 |
+
number: "נא למלא מספר",
|
13 |
+
digits: "נא למלא רק מספרים",
|
14 |
+
creditcard: "נא למלא מספר כרטיס אשראי חוקי",
|
15 |
+
equalTo: "נא למלא את אותו ערך שוב",
|
16 |
+
extension: "נא למלא ערך עם סיומת חוקית",
|
17 |
+
maxlength: jQuery.validator.format( ".נא לא למלא יותר מ- {0} תווים" ),
|
18 |
+
minlength: jQuery.validator.format( "נא למלא לפחות {0} תווים" ),
|
19 |
+
rangelength: jQuery.validator.format( "נא למלא ערך בין {0} ל- {1} תווים" ),
|
20 |
+
range: jQuery.validator.format( "נא למלא ערך בין {0} ל- {1}" ),
|
21 |
+
max: jQuery.validator.format( "נא למלא ערך קטן או שווה ל- {0}" ),
|
22 |
+
min: jQuery.validator.format( "נא למלא ערך גדול או שווה ל- {0}" )
|
23 |
+
} );
|
js/messages_hr.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: HR (Croatia; hrvatski jezik)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Ovo polje je obavezno.",
|
7 |
+
remote: "Ovo polje treba popraviti.",
|
8 |
+
email: "Unesite ispravnu e-mail adresu.",
|
9 |
+
url: "Unesite ispravan URL.",
|
10 |
+
date: "Unesite ispravan datum.",
|
11 |
+
dateISO: "Unesite ispravan datum (ISO).",
|
12 |
+
number: "Unesite ispravan broj.",
|
13 |
+
digits: "Unesite samo brojeve.",
|
14 |
+
creditcard: "Unesite ispravan broj kreditne kartice.",
|
15 |
+
equalTo: "Unesite ponovo istu vrijednost.",
|
16 |
+
extension: "Unesite vrijednost sa ispravnom ekstenzijom.",
|
17 |
+
maxlength: jQuery.validator.format( "Maksimalni broj znakova je {0} ." ),
|
18 |
+
minlength: jQuery.validator.format( "Minimalni broj znakova je {0} ." ),
|
19 |
+
rangelength: jQuery.validator.format( "Unesite vrijednost između {0} i {1} znakova." ),
|
20 |
+
range: jQuery.validator.format( "Unesite vrijednost između {0} i {1}." ),
|
21 |
+
max: jQuery.validator.format( "Unesite vrijednost manju ili jednaku {0}." ),
|
22 |
+
min: jQuery.validator.format( "Unesite vrijednost veću ili jednaku {0}." )
|
23 |
+
} );
|
js/messages_hu.js
CHANGED
@@ -1,20 +1,23 @@
|
|
1 |
-
/*
|
2 |
-
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: HU
|
4 |
-
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
required: "Kötelező megadni.",
|
7 |
-
maxlength: jQuery.validator.format("Legfeljebb {0} karakter hosszú legyen."),
|
8 |
-
minlength: jQuery.validator.format("Legalább {0} karakter hosszú legyen."),
|
9 |
-
rangelength: jQuery.validator.format("Legalább {0} és legfeljebb {1} karakter hosszú legyen."),
|
10 |
-
email: "Érvényes e-mail címnek kell lennie.",
|
11 |
-
url: "Érvényes URL-nek kell lennie.",
|
12 |
-
date: "Dátumnak kell lennie.",
|
13 |
-
number: "Számnak kell lennie.",
|
14 |
-
digits: "Csak számjegyek lehetnek.",
|
15 |
-
equalTo: "Meg kell egyeznie a két értéknek.",
|
16 |
-
range: jQuery.validator.format("{0} és {1} közé kell esnie."),
|
17 |
-
max: jQuery.validator.format("Nem lehet nagyobb, mint {0}."),
|
18 |
-
min: jQuery.validator.format("Nem lehet kisebb, mint {0}."),
|
19 |
-
creditcard: "Érvényes hitelkártyaszámnak kell lennie."
|
20 |
-
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: HU (Hungarian; Magyar)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Kötelező megadni.",
|
7 |
+
maxlength: jQuery.validator.format( "Legfeljebb {0} karakter hosszú legyen." ),
|
8 |
+
minlength: jQuery.validator.format( "Legalább {0} karakter hosszú legyen." ),
|
9 |
+
rangelength: jQuery.validator.format( "Legalább {0} és legfeljebb {1} karakter hosszú legyen." ),
|
10 |
+
email: "Érvényes e-mail címnek kell lennie.",
|
11 |
+
url: "Érvényes URL-nek kell lennie.",
|
12 |
+
date: "Dátumnak kell lennie.",
|
13 |
+
number: "Számnak kell lennie.",
|
14 |
+
digits: "Csak számjegyek lehetnek.",
|
15 |
+
equalTo: "Meg kell egyeznie a két értéknek.",
|
16 |
+
range: jQuery.validator.format( "{0} és {1} közé kell esnie." ),
|
17 |
+
max: jQuery.validator.format( "Nem lehet nagyobb, mint {0}." ),
|
18 |
+
min: jQuery.validator.format( "Nem lehet kisebb, mint {0}." ),
|
19 |
+
creditcard: "Érvényes hitelkártyaszámnak kell lennie.",
|
20 |
+
remote: "Kérem javítsa ki ezt a mezőt.",
|
21 |
+
dateISO: "Kérem írjon be egy érvényes dátumot (ISO).",
|
22 |
+
step: jQuery.validator.format( "A {0} egyik többszörösét adja meg." )
|
23 |
+
} );
|
js/messages_hy_AM.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: HY_AM (Armenian; հայերեն լեզու)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Պարտադիր լրացման դաշտ",
|
7 |
+
remote: "Ներմուծեք ճիշտ արժեքը",
|
8 |
+
email: "Ներմուծեք վավեր էլեկտրոնային փոստի հասցե",
|
9 |
+
url: "Ներմուծեք վավեր URL",
|
10 |
+
date: "Ներմուծեք վավեր ամսաթիվ",
|
11 |
+
dateISO: "Ներմուծեք ISO ֆորմատով վավեր ամսաթիվ։",
|
12 |
+
number: "Ներմուծեք թիվ",
|
13 |
+
digits: "Ներմուծեք միայն թվեր",
|
14 |
+
creditcard: "Ներմուծեք ճիշտ բանկային քարտի համար",
|
15 |
+
equalTo: "Ներմուծեք միևնուն արժեքը ևս մեկ անգամ",
|
16 |
+
extension: "Ընտրեք ճիշտ ընդլանումով ֆայլ",
|
17 |
+
maxlength: jQuery.validator.format( "Ներմուծեք ոչ ավել քան {0} նիշ" ),
|
18 |
+
minlength: jQuery.validator.format( "Ներմուծեք ոչ պակաս քան {0} նիշ" ),
|
19 |
+
rangelength: jQuery.validator.format( "Ներմուծեք {0}֊ից {1} երկարությամբ արժեք" ),
|
20 |
+
range: jQuery.validator.format( "Ներմուծեք թիվ {0}֊ից {1} միջակայքում" ),
|
21 |
+
max: jQuery.validator.format( "Ներմուծեք թիվ, որը փոքր կամ հավասար է {0}֊ին" ),
|
22 |
+
min: jQuery.validator.format( "Ներմուծեք թիվ, որը մեծ կամ հավասար է {0}֊ին" )
|
23 |
+
} );
|
js/messages_id.js
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: ID (Indonesia; Indonesian)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Kolom ini diperlukan.",
|
7 |
+
remote: "Harap benarkan kolom ini.",
|
8 |
+
email: "Silakan masukkan format email yang benar.",
|
9 |
+
url: "Silakan masukkan format URL yang benar.",
|
10 |
+
date: "Silakan masukkan format tanggal yang benar.",
|
11 |
+
dateISO: "Silakan masukkan format tanggal(ISO) yang benar.",
|
12 |
+
number: "Silakan masukkan angka yang benar.",
|
13 |
+
digits: "Harap masukan angka saja.",
|
14 |
+
creditcard: "Harap masukkan format kartu kredit yang benar.",
|
15 |
+
equalTo: "Harap masukkan nilai yg sama dengan sebelumnya.",
|
16 |
+
maxlength: jQuery.validator.format( "Input dibatasi hanya {0} karakter." ),
|
17 |
+
minlength: jQuery.validator.format( "Input tidak kurang dari {0} karakter." ),
|
18 |
+
rangelength: jQuery.validator.format( "Panjang karakter yg diizinkan antara {0} dan {1} karakter." ),
|
19 |
+
range: jQuery.validator.format( "Harap masukkan nilai antara {0} dan {1}." ),
|
20 |
+
max: jQuery.validator.format( "Harap masukkan nilai lebih kecil atau sama dengan {0}." ),
|
21 |
+
min: jQuery.validator.format( "Harap masukkan nilai lebih besar atau sama dengan {0}." )
|
22 |
+
} );
|
js/messages_is.js
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: IS (Icelandic; íslenska)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Þessi reitur er nauðsynlegur.",
|
7 |
+
remote: "Lagaðu þennan reit.",
|
8 |
+
maxlength: jQuery.validator.format( "Sláðu inn mest {0} stafi." ),
|
9 |
+
minlength: jQuery.validator.format( "Sláðu inn minnst {0} stafi." ),
|
10 |
+
rangelength: jQuery.validator.format( "Sláðu inn minnst {0} og mest {1} stafi." ),
|
11 |
+
email: "Sláðu inn gilt netfang.",
|
12 |
+
url: "Sláðu inn gilda vefslóð.",
|
13 |
+
date: "Sláðu inn gilda dagsetningu.",
|
14 |
+
number: "Sláðu inn tölu.",
|
15 |
+
digits: "Sláðu inn tölustafi eingöngu.",
|
16 |
+
equalTo: "Sláðu sama gildi inn aftur.",
|
17 |
+
range: jQuery.validator.format( "Sláðu inn gildi milli {0} og {1}." ),
|
18 |
+
max: jQuery.validator.format( "Sláðu inn gildi sem er minna en eða jafnt og {0}." ),
|
19 |
+
min: jQuery.validator.format( "Sláðu inn gildi sem er stærra en eða jafnt og {0}." ),
|
20 |
+
creditcard: "Sláðu inn gilt greiðslukortanúmer."
|
21 |
+
} );
|
js/messages_it.js
CHANGED
@@ -1,23 +1,27 @@
|
|
1 |
-
/*
|
2 |
-
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: IT
|
4 |
-
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: IT (Italian; Italiano)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Campo obbligatorio.",
|
7 |
+
remote: "Controlla questo campo.",
|
8 |
+
email: "Inserisci un indirizzo email valido.",
|
9 |
+
url: "Inserisci un indirizzo web valido.",
|
10 |
+
date: "Inserisci una data valida.",
|
11 |
+
dateISO: "Inserisci una data valida (ISO).",
|
12 |
+
number: "Inserisci un numero valido.",
|
13 |
+
digits: "Inserisci solo numeri.",
|
14 |
+
creditcard: "Inserisci un numero di carta di credito valido.",
|
15 |
+
equalTo: "Il valore non corrisponde.",
|
16 |
+
extension: "Inserisci un valore con un'estensione valida.",
|
17 |
+
maxlength: jQuery.validator.format( "Non inserire più di {0} caratteri." ),
|
18 |
+
minlength: jQuery.validator.format( "Inserisci almeno {0} caratteri." ),
|
19 |
+
rangelength: jQuery.validator.format( "Inserisci un valore compreso tra {0} e {1} caratteri." ),
|
20 |
+
range: jQuery.validator.format( "Inserisci un valore compreso tra {0} e {1}." ),
|
21 |
+
max: jQuery.validator.format( "Inserisci un valore minore o uguale a {0}." ),
|
22 |
+
min: jQuery.validator.format( "Inserisci un valore maggiore o uguale a {0}." ),
|
23 |
+
nifES: "Inserisci un NIF valido.",
|
24 |
+
nieES: "Inserisci un NIE valido.",
|
25 |
+
cifES: "Inserisci un CIF valido.",
|
26 |
+
currency: "Inserisci una valuta valida."
|
27 |
+
} );
|
js/messages_ja.js
CHANGED
@@ -1,23 +1,25 @@
|
|
1 |
/*
|
2 |
* Translated default messages for the jQuery validation plugin.
|
3 |
-
*
|
4 |
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
})
|
|
|
|
1 |
/*
|
2 |
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: JA (Japanese; 日本語)
|
4 |
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "このフィールドは必須です。",
|
7 |
+
remote: "このフィールドを修正してください。",
|
8 |
+
email: "有効なEメールアドレスを入力してください。",
|
9 |
+
url: "有効なURLを入力してください。",
|
10 |
+
date: "有効な日付を入力してください。",
|
11 |
+
dateISO: "有効な日付(ISO)を入力してください。",
|
12 |
+
number: "有効な数字を入力してください。",
|
13 |
+
digits: "数字のみを入力してください。",
|
14 |
+
creditcard: "有効なクレジットカード番号を入力してください。",
|
15 |
+
equalTo: "同じ値をもう一度入力してください。",
|
16 |
+
extension: "有効な拡張子を含む値を入力してください。",
|
17 |
+
maxlength: jQuery.validator.format( "{0} 文字以内で入力してください。" ),
|
18 |
+
minlength: jQuery.validator.format( "{0} 文字以上で入力してください。" ),
|
19 |
+
rangelength: jQuery.validator.format( "{0} 文字から {1} 文字までの値を入力してください。" ),
|
20 |
+
range: jQuery.validator.format( "{0} から {1} までの値を入力してください。" ),
|
21 |
+
step: jQuery.validator.format( "{0} の倍数を入力してください。" ),
|
22 |
+
max: jQuery.validator.format( "{0} 以下の値を入力してください。" ),
|
23 |
+
min: jQuery.validator.format( "{0} 以上の値を入力してください。" ),
|
24 |
+
require_from_group: jQuery.validator.format( "少なくとも{0}つは入力してください。" )
|
25 |
+
} );
|
js/messages_ka.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: KA (Georgian; ქართული)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "ამ ველის შევსება აუცილებელია.",
|
7 |
+
remote: "გთხოვთ მიუთითოთ სწორი მნიშვნელობა.",
|
8 |
+
email: "გთხოვთ მიუთითოთ ელ-ფოსტის კორექტული მისამართი.",
|
9 |
+
url: "გთხოვთ მიუთითოთ კორექტული URL.",
|
10 |
+
date: "გთხოვთ მიუთითოთ კორექტული თარიღი.",
|
11 |
+
dateISO: "გთხოვთ მიუთითოთ კორექტული თარიღი ISO ფორმატში.",
|
12 |
+
number: "გთხოვთ მიუთითოთ ციფრი.",
|
13 |
+
digits: "გთხოვთ მიუთითოთ მხოლოდ ციფრები.",
|
14 |
+
creditcard: "გთხოვთ მიუთითოთ საკრედიტო ბარათის კორექტული ნომერი.",
|
15 |
+
equalTo: "გთხოვთ მიუთითოთ ასეთივე მნიშვნელობა კიდევ ერთხელ.",
|
16 |
+
extension: "გთხოვთ აირჩიოთ ფაილი კორექტული გაფართოებით.",
|
17 |
+
maxlength: jQuery.validator.format( "დასაშვებია არაუმეტეს {0} სიმბოლო." ),
|
18 |
+
minlength: jQuery.validator.format( "აუცილებელია შეიყვანოთ მინიმუმ {0} სიმბოლო." ),
|
19 |
+
rangelength: jQuery.validator.format( "ტექსტში სიმბოლოების რაოდენობა უნდა იყოს {0}-დან {1}-მდე." ),
|
20 |
+
range: jQuery.validator.format( "გთხოვთ შეიყვანოთ ციფრი {0}-დან {1}-მდე." ),
|
21 |
+
max: jQuery.validator.format( "გთხოვთ შეიყვანოთ ციფრი რომელიც ნაკლებია ან უდრის {0}-ს." ),
|
22 |
+
min: jQuery.validator.format( "გთხოვთ შეიყვანოთ ციფრი რომელიც მეტია ან უდრის {0}-ს." )
|
23 |
+
} );
|
js/messages_kk.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: KK (Kazakh; қазақ тілі)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Бұл өрісті міндетті түрде толтырыңыз.",
|
7 |
+
remote: "Дұрыс мағына енгізуіңізді сұраймыз.",
|
8 |
+
email: "Нақты электронды поштаңызды енгізуіңізді сұраймыз.",
|
9 |
+
url: "Нақты URL-ды енгізуіңізді сұраймыз.",
|
10 |
+
date: "Нақты URL-ды енгізуіңізді сұраймыз.",
|
11 |
+
dateISO: "Нақты ISO форматымен сәйкес датасын енгізуіңізді сұраймыз.",
|
12 |
+
number: "Күнді енгізуіңізді сұраймыз.",
|
13 |
+
digits: "Тек қана сандарды енгізуіңізді сұраймыз.",
|
14 |
+
creditcard: "Несие картасының нөмірін дұрыс енгізуіңізді сұраймыз.",
|
15 |
+
equalTo: "Осы мәнді қайта енгізуіңізді сұраймыз.",
|
16 |
+
extension: "Файлдың кеңейтуін дұрыс таңдаңыз.",
|
17 |
+
maxlength: jQuery.validator.format( "Ұзындығы {0} символдан көр болмасын." ),
|
18 |
+
minlength: jQuery.validator.format( "Ұзындығы {0} символдан аз болмасын." ),
|
19 |
+
rangelength: jQuery.validator.format( "Ұзындығы {0}-{1} дейін мән енгізуіңізді сұраймыз." ),
|
20 |
+
range: jQuery.validator.format( "Пожалуйста, введите число от {0} до {1}. - {0} - {1} санын енгізуіңізді сұраймыз." ),
|
21 |
+
max: jQuery.validator.format( "{0} аз немесе тең санын енгізуіңіді сұраймыз." ),
|
22 |
+
min: jQuery.validator.format( "{0} көп немесе тең санын енгізуіңізді сұраймыз." )
|
23 |
+
} );
|
js/messages_ko.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: KO (Korean; 한국어)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "필수 항목입니다.",
|
7 |
+
remote: "항목을 수정하세요.",
|
8 |
+
email: "유효하지 않은 E-Mail주소입니다.",
|
9 |
+
url: "유효하지 않은 URL입니다.",
|
10 |
+
date: "올바른 날짜를 입력하세요.",
|
11 |
+
dateISO: "올바른 날짜(ISO)를 입력하세요.",
|
12 |
+
number: "유효한 숫자가 아닙니다.",
|
13 |
+
digits: "숫자만 입력 가능합니다.",
|
14 |
+
creditcard: "신용카드 번호가 바르지 않습니다.",
|
15 |
+
equalTo: "같은 값을 다시 입력하세요.",
|
16 |
+
extension: "올바른 확장자가 아닙니다.",
|
17 |
+
maxlength: jQuery.validator.format( "{0}자를 넘을 수 없습니다. " ),
|
18 |
+
minlength: jQuery.validator.format( "{0}자 이상 입력하세요." ),
|
19 |
+
rangelength: jQuery.validator.format( "문자 길이가 {0} 에서 {1} 사이의 값을 입력하세요." ),
|
20 |
+
range: jQuery.validator.format( "{0} 에서 {1} 사이의 값을 입력하세요." ),
|
21 |
+
max: jQuery.validator.format( "{0} 이하의 값을 입력하세요." ),
|
22 |
+
min: jQuery.validator.format( "{0} 이상의 값을 입력하세요." )
|
23 |
+
} );
|
js/messages_lt.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: LT (Lithuanian; lietuvių kalba)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Šis laukas yra privalomas.",
|
7 |
+
remote: "Prašau pataisyti šį lauką.",
|
8 |
+
email: "Prašau įvesti teisingą elektroninio pašto adresą.",
|
9 |
+
url: "Prašau įvesti teisingą URL.",
|
10 |
+
date: "Prašau įvesti teisingą datą.",
|
11 |
+
dateISO: "Prašau įvesti teisingą datą (ISO).",
|
12 |
+
number: "Prašau įvesti teisingą skaičių.",
|
13 |
+
digits: "Prašau naudoti tik skaitmenis.",
|
14 |
+
creditcard: "Prašau įvesti teisingą kreditinės kortelės numerį.",
|
15 |
+
equalTo: "Prašau įvestį tą pačią reikšmę dar kartą.",
|
16 |
+
extension: "Prašau įvesti reikšmę su teisingu plėtiniu.",
|
17 |
+
maxlength: jQuery.validator.format( "Prašau įvesti ne daugiau kaip {0} simbolių." ),
|
18 |
+
minlength: jQuery.validator.format( "Prašau įvesti bent {0} simbolius." ),
|
19 |
+
rangelength: jQuery.validator.format( "Prašau įvesti reikšmes, kurių ilgis nuo {0} iki {1} simbolių." ),
|
20 |
+
range: jQuery.validator.format( "Prašau įvesti reikšmę intervale nuo {0} iki {1}." ),
|
21 |
+
max: jQuery.validator.format( "Prašau įvesti reikšmę mažesnę arba lygią {0}." ),
|
22 |
+
min: jQuery.validator.format( "Prašau įvesti reikšmę didesnę arba lygią {0}." )
|
23 |
+
} );
|
js/messages_lv.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: LV (Latvian; latviešu valoda)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Šis lauks ir obligāts.",
|
7 |
+
remote: "Lūdzu, pārbaudiet šo lauku.",
|
8 |
+
email: "Lūdzu, ievadiet derīgu e-pasta adresi.",
|
9 |
+
url: "Lūdzu, ievadiet derīgu URL adresi.",
|
10 |
+
date: "Lūdzu, ievadiet derīgu datumu.",
|
11 |
+
dateISO: "Lūdzu, ievadiet derīgu datumu (ISO).",
|
12 |
+
number: "Lūdzu, ievadiet derīgu numuru.",
|
13 |
+
digits: "Lūdzu, ievadiet tikai ciparus.",
|
14 |
+
creditcard: "Lūdzu, ievadiet derīgu kredītkartes numuru.",
|
15 |
+
equalTo: "Lūdzu, ievadiet to pašu vēlreiz.",
|
16 |
+
extension: "Lūdzu, ievadiet vērtību ar derīgu paplašinājumu.",
|
17 |
+
maxlength: jQuery.validator.format( "Lūdzu, ievadiet ne vairāk kā {0} rakstzīmes." ),
|
18 |
+
minlength: jQuery.validator.format( "Lūdzu, ievadiet vismaz {0} rakstzīmes." ),
|
19 |
+
rangelength: jQuery.validator.format( "Lūdzu ievadiet {0} līdz {1} rakstzīmes." ),
|
20 |
+
range: jQuery.validator.format( "Lūdzu, ievadiet skaitli no {0} līdz {1}." ),
|
21 |
+
max: jQuery.validator.format( "Lūdzu, ievadiet skaitli, kurš ir mazāks vai vienāds ar {0}." ),
|
22 |
+
min: jQuery.validator.format( "Lūdzu, ievadiet skaitli, kurš ir lielāks vai vienāds ar {0}." )
|
23 |
+
} );
|
js/messages_mk.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: MK (Macedonian; македонски јазик)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Полето е задолжително.",
|
7 |
+
remote: "Поправете го ова поле.",
|
8 |
+
email: "Внесете правилна e-mail адреса.",
|
9 |
+
url: "Внесете правилен URL.",
|
10 |
+
date: "Внесете правилен датум.",
|
11 |
+
dateISO: "Внесете правилен датум (ISO).",
|
12 |
+
number: "Внесете правилен број.",
|
13 |
+
digits: "Внесете само бројки.",
|
14 |
+
creditcard: "Внесете правилен број на кредитната картичка.",
|
15 |
+
equalTo: "Внесете ја истата вредност повторно.",
|
16 |
+
extension: "Внесете вредност со соодветна екстензија.",
|
17 |
+
maxlength: jQuery.validator.format( "Внесете максимално {0} знаци." ),
|
18 |
+
minlength: jQuery.validator.format( "Внесете барем {0} знаци." ),
|
19 |
+
rangelength: jQuery.validator.format( "Внесете вредност со должина помеѓу {0} и {1} знаци." ),
|
20 |
+
range: jQuery.validator.format( "Внесете вредност помеѓу {0} и {1}." ),
|
21 |
+
max: jQuery.validator.format( "Внесете вредност помала или еднаква на {0}." ),
|
22 |
+
min: jQuery.validator.format( "Внесете вредност поголема или еднаква на {0}." )
|
23 |
+
} );
|
js/messages_my.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: MY (Malay; Melayu)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Medan ini diperlukan.",
|
7 |
+
remote: "Sila betulkan medan ini.",
|
8 |
+
email: "Sila masukkan alamat emel yang betul.",
|
9 |
+
url: "Sila masukkan URL yang betul.",
|
10 |
+
date: "Sila masukkan tarikh yang betul.",
|
11 |
+
dateISO: "Sila masukkan tarikh(ISO) yang betul.",
|
12 |
+
number: "Sila masukkan nombor yang betul.",
|
13 |
+
digits: "Sila masukkan nilai digit sahaja.",
|
14 |
+
creditcard: "Sila masukkan nombor kredit kad yang betul.",
|
15 |
+
equalTo: "Sila masukkan nilai yang sama semula.",
|
16 |
+
extension: "Sila masukkan nilai yang telah diterima.",
|
17 |
+
maxlength: jQuery.validator.format( "Sila masukkan tidak lebih dari {0} aksara." ),
|
18 |
+
minlength: jQuery.validator.format( "Sila masukkan sekurang-kurangnya {0} aksara." ),
|
19 |
+
rangelength: jQuery.validator.format( "Sila masukkan antara {0} dan {1} panjang aksara." ),
|
20 |
+
range: jQuery.validator.format( "Sila masukkan nilai antara {0} dan {1} aksara." ),
|
21 |
+
max: jQuery.validator.format( "Sila masukkan nilai yang kurang atau sama dengan {0}." ),
|
22 |
+
min: jQuery.validator.format( "Sila masukkan nilai yang lebih atau sama dengan {0}." )
|
23 |
+
} );
|
js/messages_nl.js
CHANGED
@@ -1,23 +1,34 @@
|
|
1 |
-
/*
|
2 |
-
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: NL
|
4 |
-
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: NL (Dutch; Nederlands, Vlaams)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Dit is een verplicht veld.",
|
7 |
+
remote: "Controleer dit veld.",
|
8 |
+
email: "Vul hier een geldig e-mailadres in.",
|
9 |
+
url: "Vul hier een geldige URL in.",
|
10 |
+
date: "Vul hier een geldige datum in.",
|
11 |
+
dateISO: "Vul hier een geldige datum in (ISO-formaat).",
|
12 |
+
number: "Vul hier een geldig getal in.",
|
13 |
+
digits: "Vul hier alleen getallen in.",
|
14 |
+
creditcard: "Vul hier een geldig creditcardnummer in.",
|
15 |
+
equalTo: "Vul hier dezelfde waarde in.",
|
16 |
+
extension: "Vul hier een waarde in met een geldige extensie.",
|
17 |
+
maxlength: jQuery.validator.format( "Vul hier maximaal {0} tekens in." ),
|
18 |
+
minlength: jQuery.validator.format( "Vul hier minimaal {0} tekens in." ),
|
19 |
+
rangelength: jQuery.validator.format( "Vul hier een waarde in van minimaal {0} en maximaal {1} tekens." ),
|
20 |
+
range: jQuery.validator.format( "Vul hier een waarde in van minimaal {0} en maximaal {1}." ),
|
21 |
+
max: jQuery.validator.format( "Vul hier een waarde in kleiner dan of gelijk aan {0}." ),
|
22 |
+
min: jQuery.validator.format( "Vul hier een waarde in groter dan of gelijk aan {0}." ),
|
23 |
+
step: jQuery.validator.format( "Vul hier een veelvoud van {0} in." ),
|
24 |
+
|
25 |
+
// For validations in additional-methods.js
|
26 |
+
iban: "Vul hier een geldig IBAN in.",
|
27 |
+
dateNL: "Vul hier een geldige datum in.",
|
28 |
+
phoneNL: "Vul hier een geldig Nederlands telefoonnummer in.",
|
29 |
+
mobileNL: "Vul hier een geldig Nederlands mobiel telefoonnummer in.",
|
30 |
+
postalcodeNL: "Vul hier een geldige postcode in.",
|
31 |
+
bankaccountNL: "Vul hier een geldig bankrekeningnummer in.",
|
32 |
+
giroaccountNL: "Vul hier een geldig gironummer in.",
|
33 |
+
bankorgiroaccountNL: "Vul hier een geldig bank- of gironummer in."
|
34 |
+
} );
|
js/messages_no.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: NO (Norwegian; Norsk)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Angi en verdi.",
|
7 |
+
remote: "Ugyldig verdi.",
|
8 |
+
email: "Angi en gyldig epostadresse.",
|
9 |
+
url: "Angi en gyldig URL.",
|
10 |
+
date: "Angi en gyldig dato.",
|
11 |
+
dateISO: "Angi en gyldig dato (&ARING;&ARING;&ARING;&ARING;-MM-DD).",
|
12 |
+
number: "Angi et gyldig tall.",
|
13 |
+
digits: "Skriv kun tall.",
|
14 |
+
equalTo: "Skriv samme verdi igjen.",
|
15 |
+
maxlength: jQuery.validator.format( "Maksimalt {0} tegn." ),
|
16 |
+
minlength: jQuery.validator.format( "Minimum {0} tegn." ),
|
17 |
+
rangelength: jQuery.validator.format( "Angi minimum {0} og maksimum {1} tegn." ),
|
18 |
+
range: jQuery.validator.format( "Angi en verdi mellom {0} og {1}." ),
|
19 |
+
max: jQuery.validator.format( "Angi en verdi som er mindre eller lik {0}." ),
|
20 |
+
min: jQuery.validator.format( "Angi en verdi som er større eller lik {0}." ),
|
21 |
+
step: jQuery.validator.format( "Angi en verdi ganger {0}." ),
|
22 |
+
creditcard: "Angi et gyldig kredittkortnummer."
|
23 |
+
} );
|
js/messages_pl.js
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: PL (Polish; język polski, polszczyzna)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "To pole jest wymagane.",
|
7 |
+
remote: "Proszę o wypełnienie tego pola.",
|
8 |
+
email: "Proszę o podanie prawidłowego adresu email.",
|
9 |
+
url: "Proszę o podanie prawidłowego URL.",
|
10 |
+
date: "Proszę o podanie prawidłowej daty.",
|
11 |
+
dateISO: "Proszę o podanie prawidłowej daty (ISO).",
|
12 |
+
number: "Proszę o podanie prawidłowej liczby.",
|
13 |
+
digits: "Proszę o podanie samych cyfr.",
|
14 |
+
creditcard: "Proszę o podanie prawidłowej karty kredytowej.",
|
15 |
+
equalTo: "Proszę o podanie tej samej wartości ponownie.",
|
16 |
+
extension: "Proszę o podanie wartości z prawidłowym rozszerzeniem.",
|
17 |
+
nipPL: "Proszę o podanie prawidłowego numeru NIP.",
|
18 |
+
phonePL: "Proszę o podanie prawidłowego numeru telefonu.",
|
19 |
+
maxlength: jQuery.validator.format( "Proszę o podanie nie więcej niż {0} znaków." ),
|
20 |
+
minlength: jQuery.validator.format( "Proszę o podanie przynajmniej {0} znaków." ),
|
21 |
+
rangelength: jQuery.validator.format( "Proszę o podanie wartości o długości od {0} do {1} znaków." ),
|
22 |
+
range: jQuery.validator.format( "Proszę o podanie wartości z przedziału od {0} do {1}." ),
|
23 |
+
max: jQuery.validator.format( "Proszę o podanie wartości mniejszej bądź równej {0}." ),
|
24 |
+
min: jQuery.validator.format( "Proszę o podanie wartości większej bądź równej {0}." ),
|
25 |
+
pattern: jQuery.validator.format( "Pole zawiera niedozwolone znaki." )
|
26 |
+
} );
|
js/messages_pt_BR.js
ADDED
@@ -0,0 +1,79 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: PT (Portuguese; português)
|
4 |
+
* Region: BR (Brazil)
|
5 |
+
*/
|
6 |
+
jQuery.extend( jQuery.validator.messages, {
|
7 |
+
|
8 |
+
// Core
|
9 |
+
required: "Este campo é requerido.",
|
10 |
+
remote: "Por favor, corrija este campo.",
|
11 |
+
email: "Por favor, forneça um endereço de email válido.",
|
12 |
+
url: "Por favor, forneça uma URL válida.",
|
13 |
+
date: "Por favor, forneça uma data válida.",
|
14 |
+
dateISO: "Por favor, forneça uma data válida (ISO).",
|
15 |
+
number: "Por favor, forneça um número válido.",
|
16 |
+
digits: "Por favor, forneça somente dígitos.",
|
17 |
+
creditcard: "Por favor, forneça um cartão de crédito válido.",
|
18 |
+
equalTo: "Por favor, forneça o mesmo valor novamente.",
|
19 |
+
maxlength: jQuery.validator.format( "Por favor, forneça não mais que {0} caracteres." ),
|
20 |
+
minlength: jQuery.validator.format( "Por favor, forneça ao menos {0} caracteres." ),
|
21 |
+
rangelength: jQuery.validator.format( "Por favor, forneça um valor entre {0} e {1} caracteres de comprimento." ),
|
22 |
+
range: jQuery.validator.format( "Por favor, forneça um valor entre {0} e {1}." ),
|
23 |
+
max: jQuery.validator.format( "Por favor, forneça um valor menor ou igual a {0}." ),
|
24 |
+
min: jQuery.validator.format( "Por favor, forneça um valor maior ou igual a {0}." ),
|
25 |
+
step: jQuery.validator.format( "Por favor, forneça um valor múltiplo de {0}." ),
|
26 |
+
|
27 |
+
// Metodos Adicionais
|
28 |
+
maxWords: jQuery.validator.format( "Por favor, forneça com {0} palavras ou menos." ),
|
29 |
+
minWords: jQuery.validator.format( "Por favor, forneça pelo menos {0} palavras." ),
|
30 |
+
rangeWords: jQuery.validator.format( "Por favor, forneça entre {0} e {1} palavras." ),
|
31 |
+
accept: "Por favor, forneça um tipo válido.",
|
32 |
+
alphanumeric: "Por favor, forneça somente com letras, números e sublinhados.",
|
33 |
+
bankaccountNL: "Por favor, forneça com um número de conta bancária válida.",
|
34 |
+
bankorgiroaccountNL: "Por favor, forneça um banco válido ou número de conta.",
|
35 |
+
bic: "Por favor, forneça um código BIC válido.",
|
36 |
+
cifES: "Por favor, forneça um código CIF válido.",
|
37 |
+
creditcardtypes: "Por favor, forneça um número de cartão de crédito válido.",
|
38 |
+
currency: "Por favor, forneça uma moeda válida.",
|
39 |
+
dateFA: "Por favor, forneça uma data correta.",
|
40 |
+
dateITA: "Por favor, forneça uma data correta.",
|
41 |
+
dateNL: "Por favor, forneça uma data correta.",
|
42 |
+
extension: "Por favor, forneça um valor com uma extensão válida.",
|
43 |
+
giroaccountNL: "Por favor, forneça um número de conta corrente válido.",
|
44 |
+
iban: "Por favor, forneça um código IBAN válido.",
|
45 |
+
integer: "Por favor, forneça um número não decimal.",
|
46 |
+
ipv4: "Por favor, forneça um IPv4 válido.",
|
47 |
+
ipv6: "Por favor, forneça um IPv6 válido.",
|
48 |
+
lettersonly: "Por favor, forneça apenas com letras.",
|
49 |
+
letterswithbasicpunc: "Por favor, forneça apenas letras ou pontuações.",
|
50 |
+
mobileNL: "Por favor, forneceça um número válido de telefone.",
|
51 |
+
mobileUK: "Por favor, forneceça um número válido de telefone.",
|
52 |
+
nieES: "Por favor, forneça um NIE válido.",
|
53 |
+
nifES: "Por favor, forneça um NIF válido.",
|
54 |
+
nowhitespace: "Por favor, não utilize espaços em branco.",
|
55 |
+
pattern: "O formato fornecido é inválido.",
|
56 |
+
phoneNL: "Por favor, forneça um número de telefone válido.",
|
57 |
+
phoneUK: "Por favor, forneça um número de telefone válido.",
|
58 |
+
phoneUS: "Por favor, forneça um número de telefone válido.",
|
59 |
+
phonesUK: "Por favor, forneça um número de telefone válido.",
|
60 |
+
postalCodeCA: "Por favor, forneça um número de código postal válido.",
|
61 |
+
postalcodeIT: "Por favor, forneça um número de código postal válido.",
|
62 |
+
postalcodeNL: "Por favor, forneça um número de código postal válido.",
|
63 |
+
postcodeUK: "Por favor, forneça um número de código postal válido.",
|
64 |
+
postalcodeBR: "Por favor, forneça um CEP válido.",
|
65 |
+
require_from_group: jQuery.validator.format( "Por favor, forneça pelo menos {0} destes campos." ),
|
66 |
+
skip_or_fill_minimum: jQuery.validator.format( "Por favor, optar entre ignorar esses campos ou preencher pelo menos {0} deles." ),
|
67 |
+
stateUS: "Por favor, forneça um estado válido.",
|
68 |
+
strippedminlength: jQuery.validator.format( "Por favor, forneça pelo menos {0} caracteres." ),
|
69 |
+
time: "Por favor, forneça um horário válido, no intervado de 00:00 a 23:59.",
|
70 |
+
time12h: "Por favor, forneça um horário válido, no intervado de 01:00 a 12:59 am/pm.",
|
71 |
+
url2: "Por favor, forneça uma URL válida.",
|
72 |
+
vinUS: "O número de identificação de veículo informado (VIN) é inválido.",
|
73 |
+
zipcodeUS: "Por favor, forneça um código postal americano válido.",
|
74 |
+
ziprange: "O código postal deve estar entre 902xx-xxxx e 905xx-xxxx.",
|
75 |
+
cpfBR: "Por favor, forneça um CPF válido.",
|
76 |
+
nisBR: "Por favor, forneça um NIS/PIS válido.",
|
77 |
+
cnhBR: "Por favor, forneça um CNH válido.",
|
78 |
+
cnpjBR: "Por favor, forneça um CNPJ válido."
|
79 |
+
} );
|
js/messages_pt_PT.js
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: PT (Portuguese; português)
|
4 |
+
* Region: PT (Portugal)
|
5 |
+
*/
|
6 |
+
jQuery.extend( jQuery.validator.messages, {
|
7 |
+
required: "Campo de preenchimento obrigatório.",
|
8 |
+
remote: "Por favor, corrija este campo.",
|
9 |
+
email: "Por favor, introduza um endereço eletrónico válido.",
|
10 |
+
url: "Por favor, introduza um URL válido.",
|
11 |
+
date: "Por favor, introduza uma data válida.",
|
12 |
+
dateISO: "Por favor, introduza uma data válida (ISO).",
|
13 |
+
number: "Por favor, introduza um número válido.",
|
14 |
+
digits: "Por favor, introduza apenas dígitos.",
|
15 |
+
creditcard: "Por favor, introduza um número de cartão de crédito válido.",
|
16 |
+
equalTo: "Por favor, introduza de novo o mesmo valor.",
|
17 |
+
extension: "Por favor, introduza um ficheiro com uma extensão válida.",
|
18 |
+
maxlength: jQuery.validator.format( "Por favor, não introduza mais do que {0} caracteres." ),
|
19 |
+
minlength: jQuery.validator.format( "Por favor, introduza pelo menos {0} caracteres." ),
|
20 |
+
rangelength: jQuery.validator.format( "Por favor, introduza entre {0} e {1} caracteres." ),
|
21 |
+
range: jQuery.validator.format( "Por favor, introduza um valor entre {0} e {1}." ),
|
22 |
+
max: jQuery.validator.format( "Por favor, introduza um valor menor ou igual a {0}." ),
|
23 |
+
min: jQuery.validator.format( "Por favor, introduza um valor maior ou igual a {0}." ),
|
24 |
+
nifES: "Por favor, introduza um NIF válido.",
|
25 |
+
nieES: "Por favor, introduza um NIE válido.",
|
26 |
+
cifES: "Por favor, introduza um CIF válido."
|
27 |
+
} );
|
js/messages_ro.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: RO (Romanian, limba română)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Acest câmp este obligatoriu.",
|
7 |
+
remote: "Te rugăm să completezi acest câmp.",
|
8 |
+
email: "Te rugăm să introduci o adresă de email validă.",
|
9 |
+
url: "Te rugăm sa introduci o adresă URL validă.",
|
10 |
+
date: "Te rugăm să introduci o dată corectă.",
|
11 |
+
dateISO: "Te rugăm să introduci o dată (ISO) corectă.",
|
12 |
+
number: "Te rugăm să introduci un număr întreg valid.",
|
13 |
+
digits: "Te rugăm să introduci doar cifre.",
|
14 |
+
creditcard: "Te rugăm să introduci un numar de carte de credit valid.",
|
15 |
+
equalTo: "Te rugăm să reintroduci valoarea.",
|
16 |
+
extension: "Te rugăm să introduci o valoare cu o extensie validă.",
|
17 |
+
maxlength: jQuery.validator.format( "Te rugăm să nu introduci mai mult de {0} caractere." ),
|
18 |
+
minlength: jQuery.validator.format( "Te rugăm să introduci cel puțin {0} caractere." ),
|
19 |
+
rangelength: jQuery.validator.format( "Te rugăm să introduci o valoare între {0} și {1} caractere." ),
|
20 |
+
range: jQuery.validator.format( "Te rugăm să introduci o valoare între {0} și {1}." ),
|
21 |
+
max: jQuery.validator.format( "Te rugăm să introduci o valoare egal sau mai mică decât {0}." ),
|
22 |
+
min: jQuery.validator.format( "Te rugăm să introduci o valoare egal sau mai mare decât {0}." )
|
23 |
+
} );
|
js/messages_ru.js
CHANGED
@@ -1,23 +1,23 @@
|
|
1 |
-
/*
|
2 |
-
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: RU
|
4 |
-
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
});
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: RU (Russian; русский язык)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Это поле необходимо заполнить.",
|
7 |
+
remote: "Пожалуйста, введите правильное значение.",
|
8 |
+
email: "Пожалуйста, введите корректный адрес электронной почты.",
|
9 |
+
url: "Пожалуйста, введите корректный URL.",
|
10 |
+
date: "Пожалуйста, введите корректную дату.",
|
11 |
+
dateISO: "Пожалуйста, введите корректную дату в формате ISO.",
|
12 |
+
number: "Пожалуйста, введите число.",
|
13 |
+
digits: "Пожалуйста, вводите только цифры.",
|
14 |
+
creditcard: "Пожалуйста, введите правильный номер кредитной карты.",
|
15 |
+
equalTo: "Пожалуйста, введите такое же значение ещё раз.",
|
16 |
+
extension: "Пожалуйста, выберите файл с правильным расширением.",
|
17 |
+
maxlength: jQuery.validator.format( "Пожалуйста, введите не больше {0} символов." ),
|
18 |
+
minlength: jQuery.validator.format( "Пожалуйста, введите не меньше {0} символов." ),
|
19 |
+
rangelength: jQuery.validator.format( "Пожалуйста, введите значение длиной от {0} до {1} символов." ),
|
20 |
+
range: jQuery.validator.format( "Пожалуйста, введите число от {0} до {1}." ),
|
21 |
+
max: jQuery.validator.format( "Пожалуйста, введите число, меньшее или равное {0}." ),
|
22 |
+
min: jQuery.validator.format( "Пожалуйста, введите число, большее или равное {0}." )
|
23 |
+
} );
|
js/messages_sd.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: SD (Sindhi; سنڌي)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "هنن جاين جي ضرورت آهي",
|
7 |
+
remote: "هنن جاين جي ضرورت آهي",
|
8 |
+
email: "لکيل اي ميل غلط آهي",
|
9 |
+
url: "لکيل ايڊريس غلط آهي",
|
10 |
+
date: "لکيل تاريخ غلط آهي",
|
11 |
+
dateISO: "جي معيار جي مطابق نه آهي (ISO) لکيل تاريخ",
|
12 |
+
number: "لکيل انگ صحيح ناهي",
|
13 |
+
digits: "رڳو انگ داخل ڪري سگهجي ٿو",
|
14 |
+
creditcard: "لکيل ڪارڊ نمبر صحيح نه آهي",
|
15 |
+
equalTo: "داخل ٿيل ڀيٽ صحيح نه آهي",
|
16 |
+
extension: "لکيل غلط آهي",
|
17 |
+
maxlength: jQuery.validator.format( "وڌ کان وڌ {0} جي داخلا ڪري سگهجي ٿي" ),
|
18 |
+
minlength: jQuery.validator.format( "گهٽ ۾ گهٽ {0} جي داخلا ڪرڻ ضروري آهي" ),
|
19 |
+
rangelength: jQuery.validator.format( "داخلا جو {0} ۽ {1}جي وچ ۾ هجڻ ضروري آهي" ),
|
20 |
+
range: jQuery.validator.format( "داخلا جو {0} ۽ {1}جي وچ ۾ هجڻ ضروري آهي" ),
|
21 |
+
max: jQuery.validator.format( "وڌ کان وڌ {0} جي داخلا ڪري سگهجي ٿي" ),
|
22 |
+
min: jQuery.validator.format( "گهٽ ۾ گهٽ {0} جي داخلا ڪرڻ ضروري آهي" )
|
23 |
+
} );
|
js/messages_si.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: SI (Slovenian)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "To polje je obvezno.",
|
7 |
+
remote: "Vpis v tem polju ni v pravi obliki.",
|
8 |
+
email: "Prosimo, vnesite pravi email naslov.",
|
9 |
+
url: "Prosimo, vnesite pravi URL.",
|
10 |
+
date: "Prosimo, vnesite pravi datum.",
|
11 |
+
dateISO: "Prosimo, vnesite pravi datum (ISO).",
|
12 |
+
number: "Prosimo, vnesite pravo številko.",
|
13 |
+
digits: "Prosimo, vnesite samo številke.",
|
14 |
+
creditcard: "Prosimo, vnesite pravo številko kreditne kartice.",
|
15 |
+
equalTo: "Prosimo, ponovno vnesite enako vsebino.",
|
16 |
+
extension: "Prosimo, vnesite vsebino z pravo končnico.",
|
17 |
+
maxlength: jQuery.validator.format( "Prosimo, da ne vnašate več kot {0} znakov." ),
|
18 |
+
minlength: jQuery.validator.format( "Prosimo, vnesite vsaj {0} znakov." ),
|
19 |
+
rangelength: jQuery.validator.format( "Prosimo, vnesite od {0} do {1} znakov." ),
|
20 |
+
range: jQuery.validator.format( "Prosimo, vnesite vrednost med {0} in {1}." ),
|
21 |
+
max: jQuery.validator.format( "Prosimo, vnesite vrednost manjšo ali enako {0}." ),
|
22 |
+
min: jQuery.validator.format( "Prosimo, vnesite vrednost večjo ali enako {0}." )
|
23 |
+
} );
|
js/messages_sk.js
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: SK (Slovak; slovenčina, slovenský jazyk)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Povinné zadať.",
|
7 |
+
maxlength: jQuery.validator.format( "Maximálne {0} znakov." ),
|
8 |
+
minlength: jQuery.validator.format( "Minimálne {0} znakov." ),
|
9 |
+
rangelength: jQuery.validator.format( "Minimálne {0} a maximálne {1} znakov." ),
|
10 |
+
email: "E-mailová adresa musí byť platná.",
|
11 |
+
url: "URL musí byť platná.",
|
12 |
+
date: "Musí byť dátum.",
|
13 |
+
number: "Musí byť číslo.",
|
14 |
+
digits: "Môže obsahovať iba číslice.",
|
15 |
+
equalTo: "Dve hodnoty sa musia rovnať.",
|
16 |
+
range: jQuery.validator.format( "Musí byť medzi {0} a {1}." ),
|
17 |
+
max: jQuery.validator.format( "Nemôže byť viac ako {0}." ),
|
18 |
+
min: jQuery.validator.format( "Nemôže byť menej ako {0}." ),
|
19 |
+
creditcard: "Číslo platobnej karty musí byť platné.",
|
20 |
+
step: jQuery.validator.format( "Musí byť násobkom čísla {0}." )
|
21 |
+
} );
|
js/messages_sl.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Language: SL (Slovenian; slovenski jezik)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "To polje je obvezno.",
|
7 |
+
remote: "Prosimo popravite to polje.",
|
8 |
+
email: "Prosimo vnesite veljaven email naslov.",
|
9 |
+
url: "Prosimo vnesite veljaven URL naslov.",
|
10 |
+
date: "Prosimo vnesite veljaven datum.",
|
11 |
+
dateISO: "Prosimo vnesite veljaven ISO datum.",
|
12 |
+
number: "Prosimo vnesite veljavno število.",
|
13 |
+
digits: "Prosimo vnesite samo števila.",
|
14 |
+
creditcard: "Prosimo vnesite veljavno številko kreditne kartice.",
|
15 |
+
equalTo: "Prosimo ponovno vnesite vrednost.",
|
16 |
+
extension: "Prosimo vnesite vrednost z veljavno končnico.",
|
17 |
+
maxlength: jQuery.validator.format( "Prosimo vnesite največ {0} znakov." ),
|
18 |
+
minlength: jQuery.validator.format( "Prosimo vnesite najmanj {0} znakov." ),
|
19 |
+
rangelength: jQuery.validator.format( "Prosimo vnesite najmanj {0} in največ {1} znakov." ),
|
20 |
+
range: jQuery.validator.format( "Prosimo vnesite vrednost med {0} in {1}." ),
|
21 |
+
max: jQuery.validator.format( "Prosimo vnesite vrednost manjše ali enako {0}." ),
|
22 |
+
min: jQuery.validator.format( "Prosimo vnesite vrednost večje ali enako {0}." )
|
23 |
+
} );
|
js/messages_sr.js
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: SR (Serbian; српски језик)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Поље је обавезно.",
|
7 |
+
remote: "Средите ово поље.",
|
8 |
+
email: "Унесите исправну и-мејл адресу.",
|
9 |
+
url: "Унесите исправан URL.",
|
10 |
+
date: "Унесите исправан датум.",
|
11 |
+
dateISO: "Унесите исправан датум (ISO).",
|
12 |
+
number: "Унесите исправан број.",
|
13 |
+
digits: "Унесите само цифе.",
|
14 |
+
creditcard: "Унесите исправан број кредитне картице.",
|
15 |
+
equalTo: "Унесите исту вредност поново.",
|
16 |
+
extension: "Унесите вредност са одговарајућом екстензијом.",
|
17 |
+
maxlength: jQuery.validator.format( "Унесите мање од {0} карактера." ),
|
18 |
+
minlength: jQuery.validator.format( "Унесите барем {0} карактера." ),
|
19 |
+
rangelength: jQuery.validator.format( "Унесите вредност дугачку између {0} и {1} карактера." ),
|
20 |
+
range: jQuery.validator.format( "Унесите вредност између {0} и {1}." ),
|
21 |
+
max: jQuery.validator.format( "Унесите вредност мању или једнаку {0}." ),
|
22 |
+
min: jQuery.validator.format( "Унесите вредност већу или једнаку {0}." ),
|
23 |
+
step: jQuery.validator.format( "Унесите вредност која је умножак броја {0}." )
|
24 |
+
} );
|
js/messages_sr_lat.js
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: SR (Serbian - Latin alphabet; srpski jezik - latinica)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Polje je obavezno.",
|
7 |
+
remote: "Sredite ovo polje.",
|
8 |
+
email: "Unesite ispravnu e-mail adresu.",
|
9 |
+
url: "Unesite ispravan URL.",
|
10 |
+
date: "Unesite ispravan datum.",
|
11 |
+
dateISO: "Unesite ispravan datum (ISO).",
|
12 |
+
number: "Unesite ispravan broj.",
|
13 |
+
digits: "Unesite samo cifre.",
|
14 |
+
creditcard: "Unesite ispravan broj kreditne kartice.",
|
15 |
+
equalTo: "Unesite istu vrednost ponovo.",
|
16 |
+
extension: "Unesite vrednost sa odgovarajućom ekstenzijom.",
|
17 |
+
maxlength: jQuery.validator.format( "Unesite manje od {0} karaktera." ),
|
18 |
+
minlength: jQuery.validator.format( "Unesite barem {0} karaktera." ),
|
19 |
+
rangelength: jQuery.validator.format( "Unesite vrednost dugačku između {0} i {1} karaktera." ),
|
20 |
+
range: jQuery.validator.format( "Unesite vrednost između {0} i {1}." ),
|
21 |
+
max: jQuery.validator.format( "Unesite vrednost manju ili jednaku {0}." ),
|
22 |
+
min: jQuery.validator.format( "Unesite vrednost veću ili jednaku {0}." ),
|
23 |
+
step: jQuery.validator.format( "Unesite vrednost koja je umnožak broja {0}." )
|
24 |
+
} );
|
js/messages_sv.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: SV (Swedish; Svenska)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Detta fält är obligatoriskt.",
|
7 |
+
remote: "Var snäll och åtgärda detta fält.",
|
8 |
+
maxlength: jQuery.validator.format( "Du får ange högst {0} tecken." ),
|
9 |
+
minlength: jQuery.validator.format( "Du måste ange minst {0} tecken." ),
|
10 |
+
rangelength: jQuery.validator.format( "Ange minst {0} och max {1} tecken." ),
|
11 |
+
email: "Ange en korrekt e-postadress.",
|
12 |
+
url: "Ange en korrekt URL.",
|
13 |
+
date: "Ange ett korrekt datum.",
|
14 |
+
dateISO: "Ange ett korrekt datum (ÅÅÅÅ-MM-DD).",
|
15 |
+
number: "Ange ett korrekt nummer.",
|
16 |
+
digits: "Ange endast siffror.",
|
17 |
+
equalTo: "Ange samma värde igen.",
|
18 |
+
range: jQuery.validator.format( "Ange ett värde mellan {0} och {1}." ),
|
19 |
+
max: jQuery.validator.format( "Ange ett värde som är mindre eller lika med {0}." ),
|
20 |
+
min: jQuery.validator.format( "Ange ett värde som är större eller lika med {0}." ),
|
21 |
+
creditcard: "Ange ett korrekt kreditkortsnummer.",
|
22 |
+
pattern: "Ogiltigt format."
|
23 |
+
} );
|
js/messages_th.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: TH (Thai; ไทย)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "โปรดระบุ",
|
7 |
+
remote: "โปรดแก้ไขให้ถูกต้อง",
|
8 |
+
email: "โปรดระบุที่อยู่อีเมล์ที่ถูกต้อง",
|
9 |
+
url: "โปรดระบุ URL ที่ถูกต้อง",
|
10 |
+
date: "โปรดระบุวันที่ ที่ถูกต้อง",
|
11 |
+
dateISO: "โปรดระบุวันที่ ที่ถูกต้อง (ระบบ ISO).",
|
12 |
+
number: "โปรดระบุทศนิยมที่ถูกต้อง",
|
13 |
+
digits: "โปรดระบุจำนวนเต็มที่ถูกต้อง",
|
14 |
+
creditcard: "โปรดระบุรหัสบัตรเครดิตที่ถูกต้อง",
|
15 |
+
equalTo: "โปรดระบุค่าเดิมอีกครั้ง",
|
16 |
+
extension: "โปรดระบุค่าที่มีส่วนขยายที่ถูกต้อง",
|
17 |
+
maxlength: jQuery.validator.format( "โปรดอย่าระบุค่าที่ยาวกว่า {0} อักขระ" ),
|
18 |
+
minlength: jQuery.validator.format( "โปรดอย่าระบุค่าที่สั้นกว่า {0} อักขระ" ),
|
19 |
+
rangelength: jQuery.validator.format( "โปรดอย่าระบุค่าความยาวระหว่าง {0} ถึง {1} อักขระ" ),
|
20 |
+
range: jQuery.validator.format( "โปรดระบุค่าระหว่าง {0} และ {1}" ),
|
21 |
+
max: jQuery.validator.format( "โปรดระบุค่าน้อยกว่าหรือเท่ากับ {0}" ),
|
22 |
+
min: jQuery.validator.format( "โปรดระบุค่ามากกว่าหรือเท่ากับ {0}" )
|
23 |
+
} );
|
js/messages_tj.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: TJ (Tajikistan; Забони тоҷикӣ)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Ворид кардани ин филд маҷбури аст.",
|
7 |
+
remote: "Илтимос, маълумоти саҳеҳ ворид кунед.",
|
8 |
+
email: "Илтимос, почтаи электронии саҳеҳ ворид кунед.",
|
9 |
+
url: "Илтимос, URL адреси саҳеҳ ворид кунед.",
|
10 |
+
date: "Илтимос, таърихи саҳеҳ ворид кунед.",
|
11 |
+
dateISO: "Илтимос, таърихи саҳеҳи (ISO)ӣ ворид кунед.",
|
12 |
+
number: "Илтимос, рақамҳои саҳеҳ ворид кунед.",
|
13 |
+
digits: "Илтимос, танҳо рақам ворид кунед.",
|
14 |
+
creditcard: "Илтимос, кредит карди саҳеҳ ворид кунед.",
|
15 |
+
equalTo: "Илтимос, миқдори баробар ворид кунед.",
|
16 |
+
extension: "Илтимос, қофияи файлро дуруст интихоб кунед.",
|
17 |
+
maxlength: jQuery.validator.format( "Илтимос, бештар аз {0} рамз ворид накунед." ),
|
18 |
+
minlength: jQuery.validator.format( "Илтимос, камтар аз {0} рамз ворид накунед." ),
|
19 |
+
rangelength: jQuery.validator.format( "Илтимос, камтар аз {0} ва зиёда аз {1} рамз ворид кунед." ),
|
20 |
+
range: jQuery.validator.format( "Илтимос, аз {0} то {1} рақам зиёд ворид кунед." ),
|
21 |
+
max: jQuery.validator.format( "Илтимос, бештар аз {0} рақам ворид накунед." ),
|
22 |
+
min: jQuery.validator.format( "Илтимос, камтар аз {0} рақам ворид накунед." )
|
23 |
+
} );
|
js/messages_tr.js
CHANGED
@@ -1,23 +1,25 @@
|
|
1 |
-
/*
|
2 |
-
* Translated default messages for the jQuery validation plugin.
|
3 |
-
* Locale: TR
|
4 |
-
*/
|
5 |
-
jQuery.extend(jQuery.validator.messages, {
|
6 |
-
required: "Bu alanın doldurulması zorunludur.",
|
7 |
-
remote: "Lütfen bu alanı düzeltin.",
|
8 |
-
email: "Lütfen geçerli bir e-posta adresi giriniz.",
|
9 |
-
url: "Lütfen geçerli bir web adresi (URL) giriniz.",
|
10 |
-
date: "Lütfen geçerli bir tarih giriniz.",
|
11 |
-
dateISO: "Lütfen geçerli bir tarih giriniz(ISO formatında)",
|
12 |
-
number: "Lütfen geçerli bir sayı giriniz.",
|
13 |
-
digits: "Lütfen sadece sayısal karakterler giriniz.",
|
14 |
-
creditcard: "Lütfen geçerli bir kredi kartı giriniz.",
|
15 |
-
equalTo: "Lütfen aynı değeri tekrar giriniz.",
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
})
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: TR (Turkish; Türkçe)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Bu alanın doldurulması zorunludur.",
|
7 |
+
remote: "Lütfen bu alanı düzeltin.",
|
8 |
+
email: "Lütfen geçerli bir e-posta adresi giriniz.",
|
9 |
+
url: "Lütfen geçerli bir web adresi (URL) giriniz.",
|
10 |
+
date: "Lütfen geçerli bir tarih giriniz.",
|
11 |
+
dateISO: "Lütfen geçerli bir tarih giriniz(ISO formatında).",
|
12 |
+
number: "Lütfen geçerli bir sayı giriniz.",
|
13 |
+
digits: "Lütfen sadece sayısal karakterler giriniz.",
|
14 |
+
creditcard: "Lütfen geçerli bir kredi kartı giriniz.",
|
15 |
+
equalTo: "Lütfen aynı değeri tekrar giriniz.",
|
16 |
+
extension: "Lütfen geçerli uzantıya sahip bir değer giriniz.",
|
17 |
+
phone: "Lütfen geçerli bir telefon numarası giriniz.",
|
18 |
+
maxlength: jQuery.validator.format( "Lütfen en fazla {0} karakter uzunluğunda bir değer giriniz." ),
|
19 |
+
minlength: jQuery.validator.format( "Lütfen en az {0} karakter uzunluğunda bir değer giriniz." ),
|
20 |
+
rangelength: jQuery.validator.format( "Lütfen en az {0} ve en fazla {1} uzunluğunda bir değer giriniz." ),
|
21 |
+
range: jQuery.validator.format( "Lütfen {0} ile {1} arasında bir değer giriniz." ),
|
22 |
+
max: jQuery.validator.format( "Lütfen {0} değerine eşit ya da daha küçük bir değer giriniz." ),
|
23 |
+
min: jQuery.validator.format( "Lütfen {0} değerine eşit ya da daha büyük bir değer giriniz." ),
|
24 |
+
require_from_group: jQuery.validator.format( "Lütfen bu alanların en az {0} tanesini doldurunuz." )
|
25 |
+
} );
|
js/messages_uk.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: UK (Ukrainian; українська мова)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Це поле необхідно заповнити.",
|
7 |
+
remote: "Будь ласка, введіть правильне значення.",
|
8 |
+
email: "Будь ласка, введіть коректну адресу електронної пошти.",
|
9 |
+
url: "Будь ласка, введіть коректний URL.",
|
10 |
+
date: "Будь ласка, введіть коректну дату.",
|
11 |
+
dateISO: "Будь ласка, введіть коректну дату у форматі ISO.",
|
12 |
+
number: "Будь ласка, введіть число.",
|
13 |
+
digits: "Вводите потрібно лише цифри.",
|
14 |
+
creditcard: "Будь ласка, введіть правильний номер кредитної карти.",
|
15 |
+
equalTo: "Будь ласка, введіть таке ж значення ще раз.",
|
16 |
+
extension: "Будь ласка, виберіть файл з правильним розширенням.",
|
17 |
+
maxlength: jQuery.validator.format( "Будь ласка, введіть не більше {0} символів." ),
|
18 |
+
minlength: jQuery.validator.format( "Будь ласка, введіть не менше {0} символів." ),
|
19 |
+
rangelength: jQuery.validator.format( "Будь ласка, введіть значення довжиною від {0} до {1} символів." ),
|
20 |
+
range: jQuery.validator.format( "Будь ласка, введіть число від {0} до {1}." ),
|
21 |
+
max: jQuery.validator.format( "Будь ласка, введіть число, менше або рівно {0}." ),
|
22 |
+
min: jQuery.validator.format( "Будь ласка, введіть число, більше або рівно {0}." )
|
23 |
+
} );
|
js/messages_ur.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: UR (Urdu; اردو)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "ان معلومات کا اندراج ضروری ہے",
|
7 |
+
remote: "ان معلومات کا اندراج ضروری ہے",
|
8 |
+
email: "درج کی ہوئی ای میل درست نہیں ہے",
|
9 |
+
url: "درج کیا گیا پتہ درست نہیں ہے",
|
10 |
+
date: "درج کی گئی تاریخ درست نہیں ہے",
|
11 |
+
dateISO: "معیار کے مطابق نہیں ہے (ISO) درج کی گئی تاریخ",
|
12 |
+
number: "درج کیےگئے ہندسے درست نہیں ہیں",
|
13 |
+
digits: "صرف ہندسے اندراج کئے جاسکتے ہیں",
|
14 |
+
creditcard: "درج کیا گیا کارڈ نمبر درست نہیں ہے",
|
15 |
+
equalTo: "اندراج کا موازنہ درست نہیں ہے",
|
16 |
+
extension: "اندراج درست نہیں ہے",
|
17 |
+
maxlength: jQuery.validator.format( "زیادہ سے زیادہ {0} کا اندراج کر سکتے ہیں" ),
|
18 |
+
minlength: jQuery.validator.format( "کم سے کم {0} کا اندراج کرنا ضروری ہے" ),
|
19 |
+
rangelength: jQuery.validator.format( "اندراج کا {0} اور {1}کے درمیان ہونا ضروری ہے" ),
|
20 |
+
range: jQuery.validator.format( "اندراج کا {0} اور {1} کے درمیان ہونا ضروری ہے" ),
|
21 |
+
max: jQuery.validator.format( "زیادہ سے زیادہ {0} کا اندراج کر سکتے ہیں" ),
|
22 |
+
min: jQuery.validator.format( "کم سے کم {0} کا اندراج کرنا ضروری ہے" )
|
23 |
+
} );
|
js/messages_vi.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: VI (Vietnamese; Tiếng Việt)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "Hãy nhập.",
|
7 |
+
remote: "Hãy sửa cho đúng.",
|
8 |
+
email: "Hãy nhập email.",
|
9 |
+
url: "Hãy nhập URL.",
|
10 |
+
date: "Hãy nhập ngày.",
|
11 |
+
dateISO: "Hãy nhập ngày (ISO).",
|
12 |
+
number: "Hãy nhập số.",
|
13 |
+
digits: "Hãy nhập chữ số.",
|
14 |
+
creditcard: "Hãy nhập số thẻ tín dụng.",
|
15 |
+
equalTo: "Hãy nhập thêm lần nữa.",
|
16 |
+
extension: "Phần mở rộng không đúng.",
|
17 |
+
maxlength: jQuery.validator.format( "Hãy nhập từ {0} kí tự trở xuống." ),
|
18 |
+
minlength: jQuery.validator.format( "Hãy nhập từ {0} kí tự trở lên." ),
|
19 |
+
rangelength: jQuery.validator.format( "Hãy nhập từ {0} đến {1} kí tự." ),
|
20 |
+
range: jQuery.validator.format( "Hãy nhập từ {0} đến {1}." ),
|
21 |
+
max: jQuery.validator.format( "Hãy nhập từ {0} trở xuống." ),
|
22 |
+
min: jQuery.validator.format( "Hãy nhập từ {0} trở lên." )
|
23 |
+
} );
|
js/messages_zh.js
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: ZH (Chinese, 中文 (Zhōngwén), 汉语, 漢語)
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.messages, {
|
6 |
+
required: "这是必填字段",
|
7 |
+
remote: "请修正此字段",
|
8 |
+
email: "请输入有效的电子邮件地址",
|
9 |
+
url: "请输入有效的网址",
|
10 |
+
date: "请输入有效的日期",
|
11 |
+
dateISO: "请输入有效的日期 (YYYY-MM-DD)",
|
12 |
+
number: "请输入有效的数字",
|
13 |
+
digits: "只能输入数字",
|
14 |
+
creditcard: "请输入有效的信用卡号码",
|
15 |
+
equalTo: "你的输入不相同",
|
16 |
+
extension: "请输入有效的后缀",
|
17 |
+
maxlength: jQuery.validator.format( "最多可以输入 {0} 个字符" ),
|
18 |
+
minlength: jQuery.validator.format( "最少要输入 {0} 个字符" ),
|
19 |
+
rangelength: jQuery.validator.format( "请输入长度在 {0} 到 {1} 之间的字符串" ),
|
20 |
+
range: jQuery.validator.format( "请输入范围在 {0} 到 {1} 之间的数值" ),
|
21 |
+
step: jQuery.validator.format( "请输入 {0} 的整数倍值" ),
|
22 |
+
max: jQuery.validator.format( "请输入不大于 {0} 的数值" ),
|
23 |
+
min: jQuery.validator.format( "请输入不小于 {0} 的数值" )
|
24 |
+
} );
|
js/messages_zh_TW.js
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Translated default messages for the jQuery validation plugin.
|
3 |
+
* Locale: ZH (Chinese; 中文 (Zhōngwén), 汉语, 漢語)
|
4 |
+
* Region: TW (Taiwan)
|
5 |
+
*/
|
6 |
+
jQuery.extend( jQuery.validator.messages, {
|
7 |
+
required: "必須填寫",
|
8 |
+
remote: "請修正此欄位",
|
9 |
+
email: "請輸入有效的電子郵件",
|
10 |
+
url: "請輸入有效的網址",
|
11 |
+
date: "請輸入有效的日期",
|
12 |
+
dateISO: "請輸入有效的日期 (YYYY-MM-DD)",
|
13 |
+
number: "請輸入正確的數值",
|
14 |
+
digits: "只可輸入數字",
|
15 |
+
creditcard: "請輸入有效的信用卡號碼",
|
16 |
+
equalTo: "請重複輸入一次",
|
17 |
+
extension: "請輸入有效的後綴",
|
18 |
+
maxlength: jQuery.validator.format( "最多 {0} 個字" ),
|
19 |
+
minlength: jQuery.validator.format( "最少 {0} 個字" ),
|
20 |
+
rangelength: jQuery.validator.format( "請輸入長度為 {0} 至 {1} 之間的字串" ),
|
21 |
+
range: jQuery.validator.format( "請輸入 {0} 至 {1} 之間的數值" ),
|
22 |
+
step: jQuery.validator.format( "請輸入 {0} 的整數倍值" ),
|
23 |
+
max: jQuery.validator.format( "請輸入不大於 {0} 的數值" ),
|
24 |
+
min: jQuery.validator.format( "請輸入不小於 {0} 的數值" )
|
25 |
+
} );
|
js/methods_de.js
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Localized default methods for the jQuery validation plugin.
|
3 |
+
* Locale: DE
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.methods, {
|
6 |
+
date: function( value, element ) {
|
7 |
+
return this.optional( element ) || /^\d\d?\.\d\d?\.\d\d\d?\d?jQuery/.test( value );
|
8 |
+
},
|
9 |
+
number: function( value, element ) {
|
10 |
+
return this.optional( element ) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?jQuery/.test( value );
|
11 |
+
}
|
12 |
+
} );
|
js/methods_es_CL.js
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Localized default methods for the jQuery validation plugin.
|
3 |
+
* Locale: ES_CL
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.methods, {
|
6 |
+
date: function( value, element ) {
|
7 |
+
return this.optional( element ) || /^\d\d?\-\d\d?\-\d\d\d?\d?jQuery/.test( value );
|
8 |
+
},
|
9 |
+
number: function( value, element ) {
|
10 |
+
return this.optional( element ) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?jQuery/.test( value );
|
11 |
+
}
|
12 |
+
} );
|
js/methods_fi.js
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Localized default methods for the jQuery validation plugin.
|
3 |
+
* Locale: FI
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.methods, {
|
6 |
+
date: function( value, element ) {
|
7 |
+
return this.optional( element ) || /^\d{1,2}\.\d{1,2}\.\d{4}jQuery/.test( value );
|
8 |
+
},
|
9 |
+
number: function( value, element ) {
|
10 |
+
return this.optional( element ) || /^-?(?:\d+)(?:,\d+)?jQuery/.test( value );
|
11 |
+
}
|
12 |
+
} );
|
js/methods_it.js
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Localized default methods for the jQuery validation plugin.
|
3 |
+
* Locale: IT
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.methods, {
|
6 |
+
date: function( value, element ) {
|
7 |
+
return this.optional( element ) || /^\d\d?\-\d\d?\-\d\d\d?\d?jQuery/.test( value );
|
8 |
+
},
|
9 |
+
number: function( value, element ) {
|
10 |
+
return this.optional( element ) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?jQuery/.test( value );
|
11 |
+
}
|
12 |
+
} );
|
js/methods_nl.js
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Localized default methods for the jQuery validation plugin.
|
3 |
+
* Locale: NL
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.methods, {
|
6 |
+
date: function( value, element ) {
|
7 |
+
return this.optional( element ) || /^\d\d?[\.\/\-]\d\d?[\.\/\-]\d\d\d?\d?jQuery/.test( value );
|
8 |
+
},
|
9 |
+
number: function( value, element ) {
|
10 |
+
return this.optional( element ) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?jQuery/.test( value );
|
11 |
+
}
|
12 |
+
} );
|
js/methods_pt.js
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Localized default methods for the jQuery validation plugin.
|
3 |
+
* Locale: PT_BR
|
4 |
+
*/
|
5 |
+
jQuery.extend( jQuery.validator.methods, {
|
6 |
+
date: function( value, element ) {
|
7 |
+
return this.optional( element ) || /^\d\d?\/\d\d?\/\d\d\d?\d?jQuery/.test( value );
|
8 |
+
}
|
9 |
+
} );
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: Hiroaki Miyashita
|
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WN7Y2442JPRU6
|
4 |
Tags: custom field, custom fields, custom, fields, field, template, meta, custom field template, custom post type, acf, advanced
|
5 |
Requires at least: 2.1
|
6 |
-
Tested up to:
|
7 |
-
Stable tag: 2.5.
|
8 |
License: GPLv2 or later
|
9 |
|
10 |
The Custom Field Template plugin extends the functionality of custom fields.
|
@@ -114,9 +114,17 @@ See the default template and modify it.
|
|
114 |
|
115 |
== Changelog ==
|
116 |
|
|
|
|
|
|
|
|
|
|
|
117 |
= 2.5.6 =
|
118 |
* Bugfix: multipleButton attribute in a fieldset.
|
119 |
|
|
|
|
|
|
|
120 |
= 2.5.4 =
|
121 |
* Code cleaning.
|
122 |
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WN7Y2442JPRU6
|
4 |
Tags: custom field, custom fields, custom, fields, field, template, meta, custom field template, custom post type, acf, advanced
|
5 |
Requires at least: 2.1
|
6 |
+
Tested up to: 6.1.1
|
7 |
+
Stable tag: 2.5.7
|
8 |
License: GPLv2 or later
|
9 |
|
10 |
The Custom Field Template plugin extends the functionality of custom fields.
|
114 |
|
115 |
== Changelog ==
|
116 |
|
117 |
+
= 2.5.7 =
|
118 |
+
* Multiple validation.
|
119 |
+
* Loading limitation by the user id, user login and user role.
|
120 |
+
* Bugfix: import options.
|
121 |
+
|
122 |
= 2.5.6 =
|
123 |
* Bugfix: multipleButton attribute in a fieldset.
|
124 |
|
125 |
+
= 2.5.5 =
|
126 |
+
* User ID and User role filters.
|
127 |
+
|
128 |
= 2.5.4 =
|
129 |
* Code cleaning.
|
130 |
|