1 | /* Event Cats Javascript functions LucMorizur June - ... 2009 */ |
---|
2 | |
---|
3 | // All variables declarations |
---|
4 | // Once this entire file has been read, some JS code is executed at the end |
---|
5 | // of .tpl file, thus some values below are modified during the HTML page |
---|
6 | // "reading and displaying" |
---|
7 | var ec_avoid_infinite_loop = true; |
---|
8 | var ec_is_creation = true; |
---|
9 | var ec_chk_nover_cat = true; |
---|
10 | var ec_chk_over_grp = true; |
---|
11 | var ec_flag1 = false; |
---|
12 | var ec_flag2 = false; |
---|
13 | var ec_dont_check = false; |
---|
14 | var ec_selected_old_group = false; |
---|
15 | var ec_err = ''; |
---|
16 | var ec_selected_img = ''; |
---|
17 | var ec_new_code_text = ''; |
---|
18 | var ec_new_user_text = ''; |
---|
19 | var ec_new_psd_text = ''; |
---|
20 | var ec_new_grp_text = ''; |
---|
21 | var ec_old_new_psd_text = ''; |
---|
22 | var ec_test_reg = ''; |
---|
23 | var ec_auto_code_digits_nb = ''; |
---|
24 | var ec_default_action = ''; |
---|
25 | var ec_default_entry = ''; |
---|
26 | var ec_up_code_lbl_forced_txt = ''; |
---|
27 | var ec_original_old_user = ''; |
---|
28 | var ec_selected_old_entry = '-1'; |
---|
29 | var ec_selected_old_code = '-1'; |
---|
30 | var ec_selected_old_user = '-1'; |
---|
31 | var ec_selected_AP = '-1'; |
---|
32 | var ec_selected_cat = '-1'; |
---|
33 | var ec_selected_user = '-1'; |
---|
34 | var ec_selected_code = '-1'; |
---|
35 | var ec_selected_action = '-1'; |
---|
36 | var ec_JS_message = new Array(); |
---|
37 | var ec_duplic_codes = new Array(); |
---|
38 | var ec_lists_temp = new Array(); |
---|
39 | var ec_lists = new Array(); |
---|
40 | ec_lists['code'] = new Array(); |
---|
41 | ec_lists['user_id'] = new Array(); |
---|
42 | ec_lists['action'] = new Array(); |
---|
43 | ec_lists['arg1'] = new Array(); |
---|
44 | ec_lists['arg2'] = new Array(); |
---|
45 | ec_lists['forced'] = new Array(); |
---|
46 | var d = document; |
---|
47 | |
---|
48 | function de(ec_id) { |
---|
49 | return document.getElementById(ec_id); |
---|
50 | } |
---|
51 | |
---|
52 | function ec_check_exist_value(ec_id, ec_val) { |
---|
53 | var e = document.getElementById(ec_id); |
---|
54 | for (var i = 0; i < e.length; i++) { |
---|
55 | if (e.options[i].value == ec_val) return true; |
---|
56 | } |
---|
57 | return false; |
---|
58 | } |
---|
59 | |
---|
60 | function ec_check_exist_innerHTML(ec_id, ec_val) { |
---|
61 | var e = document.getElementById(ec_id); |
---|
62 | for (var i = 0; i < e.length; i++) { |
---|
63 | if (e.options[i].innerHTML == ec_val) return true; |
---|
64 | } |
---|
65 | return false; |
---|
66 | } |
---|
67 | |
---|
68 | function ec_mark_entry(ec_id) { |
---|
69 | var i = 0; |
---|
70 | ec_chk_nover_cat = false; |
---|
71 | if (ec_id == '-1') de('ec_in_up_entry_list_id').selectedIndex = '-1'; |
---|
72 | else { |
---|
73 | de('ec_in_up_entry_list_id').value = ec_id; |
---|
74 | de('ec_act2_id').value = ec_id; |
---|
75 | if ( |
---|
76 | ec_check_exist_value('ec_in_up_usr_list_id', ec_lists['user_id'][ec_id]) |
---|
77 | ) { |
---|
78 | ec_selected_user = 'ec_sel_user_old'; |
---|
79 | ec_selected_old_user = ec_lists['user_id'][ec_id]; |
---|
80 | ec_original_old_user = ec_selected_old_user; |
---|
81 | if ( |
---|
82 | ec_lists['arg1'][ec_id] != '' && |
---|
83 | ec_lists['action'][ec_id].lastIndexOf('ec_ok') != -1 |
---|
84 | ) i++; |
---|
85 | if (ec_lists['arg2'][ec_id] != '') { i++; i++; } |
---|
86 | switch (i) { |
---|
87 | case 0: // Home |
---|
88 | ec_selected_action = 'ec_input_action_home'; |
---|
89 | break; |
---|
90 | case 1: // Category |
---|
91 | ec_selected_action = 'ec_input_action_cat'; |
---|
92 | ec_selected_cat = (ec_check_exist_value('ec_in_up_cats_id', |
---|
93 | ec_lists['arg1'][ec_id])) ? ec_lists['arg1'][ec_id] : '-1'; |
---|
94 | break; |
---|
95 | case 2: // Additionnal Page |
---|
96 | ec_selected_action = 'ec_input_action_add_p'; |
---|
97 | ec_selected_AP = (ec_check_exist_value('ec_in_up_aps_id', |
---|
98 | ec_lists['arg2'][ec_id])) ? ec_lists['arg2'][ec_id] : '-1'; |
---|
99 | break; |
---|
100 | case 3: // Image |
---|
101 | ec_selected_action = 'ec_input_action_img'; |
---|
102 | ec_selected_cat = (ec_check_exist_value('ec_in_up_cats_id', |
---|
103 | ec_lists['arg1'][ec_id])) ? ec_lists['arg1'][ec_id] : '-1'; |
---|
104 | ec_selected_img = ec_lists['arg2'][ec_id]; |
---|
105 | break; |
---|
106 | } |
---|
107 | de('ec_in_up_forced_id').checked = |
---|
108 | (ec_lists['forced'][ec_id] == 'true') ? 'checked' : ''; |
---|
109 | ec_mark_action(ec_selected_action); |
---|
110 | } |
---|
111 | else { |
---|
112 | ec_selected_user = 'ec_sel_user_none'; |
---|
113 | de('ec_in_up_forced_id').checked = ''; |
---|
114 | if (ec_check_exist_value('ec_in_up_aps_id', ec_lists['arg2'][ec_id])) { |
---|
115 | ec_selected_AP = ec_lists['arg2'][ec_id]; |
---|
116 | ec_mark_action('ec_input_action_add_p'); |
---|
117 | } |
---|
118 | else { |
---|
119 | ec_mark_action('ec_input_action_refused'); |
---|
120 | } |
---|
121 | } |
---|
122 | } |
---|
123 | ec_chk_nover_cat = true; |
---|
124 | } |
---|
125 | |
---|
126 | function ec_mark_code(ec_id) { |
---|
127 | if (ec_id == '-1') { |
---|
128 | de('ec_sel_code_old').checked = 'checked'; |
---|
129 | de('ec_sel_code_old').checked = ''; |
---|
130 | } |
---|
131 | else { |
---|
132 | if (ec_flag2 || |
---|
133 | !(de('ec_sel_code_old').disabled == 'disabled' || |
---|
134 | de('ec_sel_code_old').disabled == true) |
---|
135 | ) { |
---|
136 | var t1 = ''; |
---|
137 | ec_selected_code = ec_id; |
---|
138 | de(ec_selected_code).checked = 'checked'; |
---|
139 | switch (ec_selected_code) { |
---|
140 | case 'ec_sel_code_new': |
---|
141 | de('ec_act1_id').value = 'create'; |
---|
142 | de('ec_in_up_code_list_id').selectedIndex = '-1'; |
---|
143 | de('ec_in_up_code_id').value = ec_new_code_text; |
---|
144 | de('ec_in_up_grp_txt_id').value = ec_new_grp_text; |
---|
145 | de('ec_in_up_newgroup_id').checked = |
---|
146 | (ec_selected_old_group) ? 'checked' : ''; |
---|
147 | de('ec_act2_id').value = '-1'; |
---|
148 | break; |
---|
149 | case 'ec_sel_code_old': |
---|
150 | de('ec_act1_id').value = 'duplicate_entry_submit'; |
---|
151 | de('ec_act2_id').value = ec_selected_old_code; |
---|
152 | de('ec_in_up_code_list_id').value = ec_selected_old_code; |
---|
153 | de('ec_in_up_grp_txt_id').value = ''; |
---|
154 | de('ec_in_up_newgroup_id').checked = ''; |
---|
155 | de('ec_in_up_code_id').value = ''; |
---|
156 | t1 = 'disabled'; |
---|
157 | ec_selected_user = 'ec_sel_user_old'; |
---|
158 | ec_selected_old_user = |
---|
159 | ec_lists['user_id'][ec_selected_old_code]; |
---|
160 | ec_flag1 = true; |
---|
161 | ec_mark_user('ec_sel_user_old'); |
---|
162 | ec_flag1 = false; |
---|
163 | break; |
---|
164 | } |
---|
165 | de('ec_sel_user_new').disabled = t1; |
---|
166 | de('ec_submit_gen_user_id').disabled = t1; |
---|
167 | de('ec_in_up_usr_txt_id').disabled = t1; |
---|
168 | de('ec_in_up_psd_txt_id').disabled = t1; |
---|
169 | de('ec_confirm_psd_txt_id').disabled = t1; |
---|
170 | de('ec_in_up_newgroup_id').disabled = t1; |
---|
171 | de('ec_in_up_grp_txt_id').disabled = t1; |
---|
172 | de('ec_sel_user_old').disabled = t1; |
---|
173 | de('ec_in_up_usr_list_id').disabled = t1; |
---|
174 | } |
---|
175 | } |
---|
176 | } |
---|
177 | |
---|
178 | function ec_mark_user(ec_id) { |
---|
179 | if (ec_id == '-1') { |
---|
180 | de('ec_sel_user_old').checked = 'checked'; |
---|
181 | de('ec_sel_user_old').checked = ''; |
---|
182 | } |
---|
183 | else { |
---|
184 | if ( |
---|
185 | !ec_is_creation && |
---|
186 | de('ec_in_up_entry_list_id').selectedIndex == '-1' |
---|
187 | ) { |
---|
188 | alert(ec_JS_message['ec_act_entry_miss']); |
---|
189 | de('ec_in_up_usr_list_id').selectedIndex = '-1'; |
---|
190 | d.ec_new_code.ec_in_up_entry_list.focus(); |
---|
191 | return false; |
---|
192 | } |
---|
193 | else if (ec_flag1 || |
---|
194 | !(de('ec_sel_user_old').disabled == 'disabled' || |
---|
195 | de('ec_sel_user_old').disabled == true) |
---|
196 | ) { |
---|
197 | ec_selected_user = ec_id; |
---|
198 | de(ec_selected_user).checked = 'checked'; |
---|
199 | switch (ec_selected_user) { |
---|
200 | case 'ec_sel_user_none': // None |
---|
201 | ec_selected_action = |
---|
202 | (ec_ap_ok && (ec_selected_action != 'ec_input_action_refused')) ? |
---|
203 | 'ec_input_action_add_p' : 'ec_input_action_refused'; |
---|
204 | de('ec_in_up_usr_txt_id').value = ''; |
---|
205 | de('ec_in_up_psd_txt_id').value = ''; |
---|
206 | de('ec_confirm_psd_txt_id').value = ''; |
---|
207 | de('ec_in_up_grp_txt_id').value = ''; |
---|
208 | de('ec_in_up_newgroup_id').checked = ''; |
---|
209 | de('ec_in_up_usr_list_id').selectedIndex = '-1'; |
---|
210 | break; |
---|
211 | case 'ec_sel_user_new': // New user |
---|
212 | if (ec_selected_action == 'ec_input_action_refused') |
---|
213 | ec_selected_action = 'ec_input_action_home'; |
---|
214 | de('ec_in_up_usr_txt_id').value = ec_new_user_text; |
---|
215 | de('ec_in_up_psd_txt_id').value = ec_new_psd_text; |
---|
216 | de('ec_confirm_psd_txt_id').value = ''; |
---|
217 | de('ec_in_up_grp_txt_id').value = |
---|
218 | (ec_selected_old_group) ? ec_new_grp_text : ''; |
---|
219 | de('ec_in_up_newgroup_id').checked = |
---|
220 | (ec_selected_old_group) ? 'checked' : ''; |
---|
221 | de('ec_in_up_usr_list_id').selectedIndex = '-1'; |
---|
222 | break; |
---|
223 | case 'ec_sel_user_old': // "Old" user |
---|
224 | if (ec_selected_action == 'ec_input_action_refused') |
---|
225 | ec_selected_action = 'ec_input_action_home'; |
---|
226 | de('ec_in_up_usr_txt_id').value = ''; |
---|
227 | de('ec_in_up_psd_txt_id').value = ''; |
---|
228 | de('ec_confirm_psd_txt_id').value = ''; |
---|
229 | de('ec_in_up_grp_txt_id').value = ''; |
---|
230 | de('ec_in_up_newgroup_id').checked = ''; |
---|
231 | de('ec_in_up_usr_list_id').value = ec_selected_old_user; |
---|
232 | break; |
---|
233 | } |
---|
234 | ec_check_pwd_text(); |
---|
235 | if (ec_avoid_infinite_loop) { |
---|
236 | ec_avoid_infinite_loop = false; |
---|
237 | ec_mark_action(ec_selected_action); |
---|
238 | ec_avoid_infinite_loop = true; |
---|
239 | } |
---|
240 | } |
---|
241 | } |
---|
242 | return true; |
---|
243 | } |
---|
244 | |
---|
245 | function ec_mark_action(ec_id) { |
---|
246 | if (ec_id == '' || ec_id == '-1') { |
---|
247 | de('ec_input_action_home').checked = 'checked'; |
---|
248 | de('ec_input_action_home').checked = ''; |
---|
249 | } |
---|
250 | else { |
---|
251 | if ( |
---|
252 | !ec_is_creation && |
---|
253 | de('ec_in_up_entry_list_id').selectedIndex == '-1' |
---|
254 | ) { |
---|
255 | alert(ec_JS_message['ec_act_entry_miss']); |
---|
256 | de('ec_in_up_aps_id').selectedIndex = '-1'; |
---|
257 | de('ec_in_up_cats_id').selectedIndex = '-1'; |
---|
258 | de('ec_in_up_imgs_id').value = ''; |
---|
259 | d.ec_new_code.ec_in_up_entry_list.focus(); |
---|
260 | return false; |
---|
261 | } |
---|
262 | else if ( |
---|
263 | !(de(ec_id).disabled == 'disabled' || |
---|
264 | de(ec_id).disabled == true) |
---|
265 | ) { |
---|
266 | if ( |
---|
267 | ec_chk_nover_cat && |
---|
268 | ec_id == 'ec_input_action_cat' && |
---|
269 | de('ec_in_up_imgs_id').value != '' |
---|
270 | ) { |
---|
271 | ec_selected_action = 'ec_input_action_img'; |
---|
272 | ec_selected_cat = de('ec_in_up_cats_id').value; |
---|
273 | } |
---|
274 | else ec_selected_action = ec_id; |
---|
275 | de(ec_selected_action).checked = 'checked'; |
---|
276 | switch (ec_selected_action) { |
---|
277 | case 'ec_input_action_add_p': // Additional Page |
---|
278 | if (ec_selected_AP == '-1') |
---|
279 | de('ec_in_up_aps_id').selectedIndex = '-1'; |
---|
280 | else |
---|
281 | de('ec_in_up_aps_id').value = ec_selected_AP; |
---|
282 | de('ec_in_up_cats_id').selectedIndex = '-1'; |
---|
283 | de('ec_in_up_imgs_id').value = ''; |
---|
284 | de('ec_in_up_imgs_warn').innerHTML = ''; |
---|
285 | break; |
---|
286 | case 'ec_input_action_cat': // Category |
---|
287 | de('ec_in_up_aps_id').selectedIndex = '-1'; |
---|
288 | if (ec_selected_cat == '-1') |
---|
289 | de('ec_in_up_cats_id').selectedIndex = '-1'; |
---|
290 | else |
---|
291 | de('ec_in_up_cats_id').value = ec_selected_cat; |
---|
292 | de('ec_in_up_imgs_id').value = ''; |
---|
293 | ec_selected_user = (ec_selected_user == 'ec_sel_user_none') ? |
---|
294 | 'ec_sel_user_old' : ec_selected_user; |
---|
295 | de('ec_in_up_imgs_warn').innerHTML = ''; |
---|
296 | break; |
---|
297 | case 'ec_input_action_img': // Image |
---|
298 | de('ec_in_up_aps_id').selectedIndex = '-1'; |
---|
299 | if (ec_selected_img == '-1') { |
---|
300 | de('ec_in_up_cats_id').selectedIndex = '-1'; |
---|
301 | de('ec_in_up_imgs_id').value = ''; |
---|
302 | } |
---|
303 | else { |
---|
304 | de('ec_in_up_cats_id').value = ec_selected_cat; |
---|
305 | de('ec_in_up_imgs_id').value = ec_selected_img; |
---|
306 | } |
---|
307 | ec_selected_user = (ec_selected_user == 'ec_sel_user_none') ? |
---|
308 | 'ec_sel_user_old' : ec_selected_user; |
---|
309 | ec_check_img_text(); |
---|
310 | break; |
---|
311 | case 'ec_input_action_home': // Home |
---|
312 | de('ec_in_up_aps_id').selectedIndex = '-1'; |
---|
313 | de('ec_in_up_cats_id').selectedIndex = '-1'; |
---|
314 | de('ec_in_up_imgs_id').value = ''; |
---|
315 | de('ec_in_up_imgs_warn').innerHTML = ''; |
---|
316 | ec_selected_user = (ec_selected_user == 'ec_sel_user_none') ? |
---|
317 | 'ec_sel_user_old' : ec_selected_user; |
---|
318 | break; |
---|
319 | case 'ec_input_action_refused': // Access denied |
---|
320 | de('ec_in_up_aps_id').selectedIndex = '-1'; |
---|
321 | de('ec_in_up_cats_id').selectedIndex = '-1'; |
---|
322 | de('ec_in_up_imgs_id').value = ''; |
---|
323 | ec_selected_user = 'ec_sel_user_none'; |
---|
324 | de('ec_in_up_imgs_warn').innerHTML = ''; |
---|
325 | break; |
---|
326 | } |
---|
327 | if (ec_avoid_infinite_loop) { |
---|
328 | ec_avoid_infinite_loop = false; |
---|
329 | ec_mark_user(ec_selected_user); |
---|
330 | ec_avoid_infinite_loop = true; |
---|
331 | } |
---|
332 | ec_mark_forced(); |
---|
333 | } |
---|
334 | } |
---|
335 | return true; |
---|
336 | } |
---|
337 | |
---|
338 | function ec_mark_forced() { |
---|
339 | de('ec_style_forced_id').innerHTML = |
---|
340 | (de('ec_in_up_forced_id').checked == '') ? |
---|
341 | ec_up_code_lbl_forced_txt |
---|
342 | : |
---|
343 | '<span style = "font-weight:bold; color:red;">' + |
---|
344 | ec_up_code_lbl_forced_txt + '</span>' |
---|
345 | ; |
---|
346 | } |
---|
347 | |
---|
348 | function ec_rnd(ec_min, ec_max) { |
---|
349 | return Math.floor(ec_min + (ec_max - ec_min + 1) * Math.random() ); |
---|
350 | } |
---|
351 | |
---|
352 | function ec_gen_txt(ec_length) { |
---|
353 | var t = ''; |
---|
354 | var ec_reg_A = /[A-Z]+/; |
---|
355 | var ec_reg_a = /[a-z]+/; |
---|
356 | var ec_reg_0 = /[0-9]+/; |
---|
357 | var i = 0; |
---|
358 | var ec_l = 0; |
---|
359 | ec_l = parseInt(ec_length); |
---|
360 | if (ec_l < 3) { |
---|
361 | ec_err = '< 3'; |
---|
362 | return ''; |
---|
363 | } |
---|
364 | do { |
---|
365 | i++; |
---|
366 | switch (ec_rnd(0, 2)) { |
---|
367 | case 0: // A - Z |
---|
368 | t += String.fromCharCode(ec_rnd(65, 90)); |
---|
369 | break; |
---|
370 | case 1: // a - z |
---|
371 | t += String.fromCharCode(ec_rnd(97, 122)); |
---|
372 | break; |
---|
373 | case 2: // 0 - 9 |
---|
374 | t += String.fromCharCode(ec_rnd(48, 57)); |
---|
375 | break; |
---|
376 | } |
---|
377 | if (i > 500) { |
---|
378 | break; |
---|
379 | } |
---|
380 | if ((t.length) > (ec_l)) { |
---|
381 | t = t.substr(1, ec_l); |
---|
382 | } |
---|
383 | } while ( |
---|
384 | (t.length < ec_l) || |
---|
385 | !( ec_reg_A.test(t) && ec_reg_a.test(t) && ec_reg_0.test(t) ) |
---|
386 | ); |
---|
387 | if (i > 500) { |
---|
388 | ec_err = '> 500\n' + t; |
---|
389 | return ''; |
---|
390 | } |
---|
391 | else { |
---|
392 | return t; |
---|
393 | } |
---|
394 | } |
---|
395 | |
---|
396 | function ec_gen_code() { |
---|
397 | var t = ''; |
---|
398 | t = ec_gen_txt(ec_auto_code_digits_nb); |
---|
399 | if (t == '') { |
---|
400 | alert("Failed :\n" + ec_err); |
---|
401 | ec_new_code_text = 'Failed...'; |
---|
402 | } |
---|
403 | else { |
---|
404 | ec_new_code_text = t; |
---|
405 | } |
---|
406 | if (ec_check_code_text(ec_new_code_text)) ec_mark_code('ec_sel_code_new'); |
---|
407 | } |
---|
408 | |
---|
409 | function ec_gen_user() { |
---|
410 | var t1 = ''; |
---|
411 | var t2 = ''; |
---|
412 | var ec_word = ''; |
---|
413 | var ec_cat_sel = ''; |
---|
414 | var ec_reg_cat2 = /\//; |
---|
415 | var ec_reg_ap = /^\S+/; |
---|
416 | var ec_reg_cat1 = /\/\s(.+)$/; |
---|
417 | var ec_reg_cat3 = /^\s*\-\s(.+)$/; |
---|
418 | if ( |
---|
419 | ec_selected_action == '' || |
---|
420 | (ec_selected_action == 'ec_input_action_cat' && ec_selected_cat == '-1') || |
---|
421 | (ec_selected_action == 'ec_input_action_img' && |
---|
422 | (ec_selected_img == '' || ec_selected_cat == '-1')) || |
---|
423 | (ec_selected_action == 'ec_input_action_add_p' && ec_selected_AP == '-1') |
---|
424 | ) { |
---|
425 | alert(ec_JS_message['ec_gen_user_act_miss']); |
---|
426 | return false; |
---|
427 | } |
---|
428 | else { |
---|
429 | t1 = ec_gen_txt('8'); |
---|
430 | if (t1 == '') { |
---|
431 | alert("Failed :\n" + ec_err); |
---|
432 | ec_new_psd_text = 'Failed...'; |
---|
433 | return false; |
---|
434 | } |
---|
435 | else { |
---|
436 | ec_new_psd_text = t1; |
---|
437 | ec_old_new_psd_text = ec_new_psd_text; |
---|
438 | switch (ec_selected_action) { |
---|
439 | case 'ec_input_action_add_p': // Additional Page |
---|
440 | ec_new_user_text = ec_reg_ap.exec( |
---|
441 | d.ec_new_code.ec_in_up_aps.options[ |
---|
442 | d.ec_new_code.ec_in_up_aps.selectedIndex |
---|
443 | ].label |
---|
444 | )[0]; |
---|
445 | ec_new_user_text = ec_new_user_text.substr(0, 50); |
---|
446 | t2 = ec_new_user_text; |
---|
447 | break; |
---|
448 | case 'ec_input_action_cat': // Category |
---|
449 | case 'ec_input_action_img': // Image |
---|
450 | ec_cat_sel = d.ec_new_code.ec_in_up_cat.options[ |
---|
451 | d.ec_new_code.ec_in_up_cat.selectedIndex |
---|
452 | ].label; |
---|
453 | ec_new_user_text = ec_reg_cat3.exec(ec_cat_sel)[1]; |
---|
454 | ec_new_user_text = ec_new_user_text.replace(/\s/g, '_'); |
---|
455 | ec_new_user_text = ec_new_user_text.substr(0, 50); |
---|
456 | t2 = ec_new_user_text; |
---|
457 | if (ec_selected_action == 'ec_input_action_img') { |
---|
458 | ec_new_user_text += '_' + d.ec_new_code.ec_in_up_imgs_id.value; |
---|
459 | } |
---|
460 | break; |
---|
461 | case 'ec_input_action_home': // Home |
---|
462 | t1 = ec_gen_txt('3'); |
---|
463 | if (t1 == '') { |
---|
464 | alert("Failed :\n" + ec_err); |
---|
465 | ec_new_psd_text = 'Failed...'; |
---|
466 | return false; |
---|
467 | } |
---|
468 | t2 = ec_JS_message['Home']; |
---|
469 | ec_new_user_text = t2 + '_' + t1; |
---|
470 | break; |
---|
471 | } |
---|
472 | if (ec_selected_old_group) ec_new_grp_text = 'EC_' + t2; |
---|
473 | ec_flag1 = true; |
---|
474 | ec_mark_user('ec_sel_user_new'); |
---|
475 | ec_flag1 = false; |
---|
476 | return ec_check_user_text(); |
---|
477 | } |
---|
478 | } |
---|
479 | } |
---|
480 | |
---|
481 | function ec_gen_full_auto() { |
---|
482 | ec_selected_old_group = true; |
---|
483 | if (ec_gen_user()) ec_gen_code(); |
---|
484 | } |
---|
485 | |
---|
486 | function ec_check_img_text() { |
---|
487 | if (isNaN(de('ec_in_up_imgs_id').value)) { |
---|
488 | alert(ec_JS_message['ec_act_img_miss']); |
---|
489 | ec_selected_img = ''; |
---|
490 | de('ec_in_up_imgs_id').value = ''; |
---|
491 | } |
---|
492 | else { |
---|
493 | de('ec_in_up_imgs_warn').innerHTML = ( |
---|
494 | de('ec_in_up_imgs_id').value != '' && |
---|
495 | de('ec_in_up_cats_id').selectedIndex == '-1' |
---|
496 | ) ? ec_JS_message['ec_act_cat_miss'] : ''; |
---|
497 | } |
---|
498 | } |
---|
499 | |
---|
500 | function ec_check_user_text() { |
---|
501 | if (ec_check_exist_innerHTML('ec_in_up_usr_list_id', ec_new_user_text)) { |
---|
502 | alert(ec_JS_message['ec_user_already_exists']); |
---|
503 | ec_new_user_text = ''; |
---|
504 | ec_mark_user('ec_sel_user_new'); |
---|
505 | return false; |
---|
506 | } |
---|
507 | return true; |
---|
508 | } |
---|
509 | |
---|
510 | function ec_check_pwd_text() { |
---|
511 | if ( |
---|
512 | de('ec_in_up_psd_txt_id').value == ec_old_new_psd_text |
---|
513 | && ec_old_new_psd_text != '' |
---|
514 | && ec_selected_user == 'ec_sel_user_new' |
---|
515 | ) de('ec_in_up_pwd_warn').innerHTML = ec_JS_message['ec_new_pwd_gen']; |
---|
516 | else de('ec_in_up_pwd_warn').innerHTML = ''; |
---|
517 | } |
---|
518 | |
---|
519 | function ec_check_grp_text() { |
---|
520 | if (ec_chk_over_grp) { |
---|
521 | de('ec_in_up_newgroup_id').checked = |
---|
522 | (de('ec_in_up_newgroup_id').checked == '') ? 'checked' : ''; |
---|
523 | ec_chk_over_grp = false; |
---|
524 | } |
---|
525 | ec_selected_old_group = (de('ec_in_up_newgroup_id').checked != ''); |
---|
526 | } |
---|
527 | |
---|
528 | function ec_check_code_text(t) { |
---|
529 | var treg = /^[a-zA-Z0-9_-]{4,32}$/; |
---|
530 | var v = false; |
---|
531 | for (i = 0; i < ec_lists['code'].length; i++) |
---|
532 | v = (v || (t == ec_lists['code'][i])); |
---|
533 | if (v) { |
---|
534 | alert(ec_JS_message['ec_code_already_exists']); |
---|
535 | ec_new_code_text = ''; |
---|
536 | de('ec_in_up_code_id').value = ''; |
---|
537 | return false; |
---|
538 | } |
---|
539 | else if (t == '' || treg.test(t) || t == NULL) { |
---|
540 | ec_new_code_text = t; |
---|
541 | ec_mark_code('ec_sel_code_new'); |
---|
542 | return true; |
---|
543 | } |
---|
544 | else { |
---|
545 | alert(ec_JS_message['ec_submit_code_bad']); |
---|
546 | ec_new_code_text = ''; |
---|
547 | de('ec_in_up_code_id').value = ''; |
---|
548 | return false; |
---|
549 | } |
---|
550 | } |
---|
551 | |
---|
552 | function ec_check_submit() { |
---|
553 | var t1 = true; |
---|
554 | var t2 = true; |
---|
555 | var t3 = false; |
---|
556 | if (ec_dont_check) return true; |
---|
557 | if (ec_is_creation) { |
---|
558 | t3 = de('ec_sel_code_old').checked != ''; |
---|
559 | if (( |
---|
560 | de('ec_sel_code_new').checked != '' && |
---|
561 | de('ec_in_up_code_id').value == '' |
---|
562 | ) || ( |
---|
563 | de('ec_sel_code_old').checked != '' && |
---|
564 | de('ec_in_up_code_list_id').selectedIndex == '-1' |
---|
565 | ) || ( |
---|
566 | de('ec_sel_code_old').checked == '' && |
---|
567 | de('ec_sel_code_new').checked == '' |
---|
568 | ) |
---|
569 | ) { |
---|
570 | alert(ec_JS_message['ec_submit_code_miss']); |
---|
571 | return false; |
---|
572 | } |
---|
573 | } |
---|
574 | else { |
---|
575 | t1 = (de('ec_sel_user_none').checked == ''); |
---|
576 | t2 = (de('ec_input_action_refused').checked == ''); |
---|
577 | if ( |
---|
578 | !t1 && (( |
---|
579 | de('ec_input_action_add_p').checked != '' && |
---|
580 | d.ec_new_code.ec_in_up_aps.selectedIndex == '-1' |
---|
581 | ) || ( |
---|
582 | de('ec_input_action_add_p').checked == '' && |
---|
583 | t2 |
---|
584 | ) |
---|
585 | ) |
---|
586 | ) { |
---|
587 | alert(ec_JS_message['ec_submit_action_miss']); |
---|
588 | return false; |
---|
589 | } |
---|
590 | if (de('ec_in_up_entry_list_id').selectedIndex == '-1') { |
---|
591 | alert(ec_JS_message['ec_act_entry_miss']); |
---|
592 | return false; |
---|
593 | } |
---|
594 | if ( |
---|
595 | ec_original_old_user != '' && ( |
---|
596 | de('ec_sel_user_new').checked != '' || ( |
---|
597 | de('ec_sel_user_old').checked != '' && |
---|
598 | ec_original_old_user != d.ec_new_code.ec_in_up_usr_list.value |
---|
599 | ) |
---|
600 | ) |
---|
601 | ) if (!confirm(ec_JS_message['ec_confirm_change_user'])) return false; |
---|
602 | } |
---|
603 | if (( |
---|
604 | de('ec_sel_user_new').checked != '' && |
---|
605 | de('ec_in_up_usr_txt_id').value == '' |
---|
606 | ) || ( |
---|
607 | de('ec_sel_user_old').checked != '' && |
---|
608 | d.ec_new_code.ec_in_up_usr_list.selectedIndex == '-1' |
---|
609 | ) || ( |
---|
610 | de('ec_sel_user_new').checked == '' && |
---|
611 | de('ec_sel_user_old').checked == '' && |
---|
612 | t1 |
---|
613 | ) |
---|
614 | ) { |
---|
615 | alert(ec_JS_message['ec_submit_user_miss']); |
---|
616 | return false; |
---|
617 | } |
---|
618 | if ( |
---|
619 | d.ec_new_code.ec_in_up_aps.selectedIndex == '-1' && |
---|
620 | d.ec_new_code.ec_in_up_cat.selectedIndex == '-1' && ( |
---|
621 | de('ec_in_up_imgs_id').value == '' || ( |
---|
622 | de('ec_in_up_imgs_id').value != '' && ( |
---|
623 | isNaN(de('ec_in_up_imgs_id').value) || |
---|
624 | d.ec_new_code.ec_in_up_cat.selectedIndex == '-1' |
---|
625 | ) |
---|
626 | ) |
---|
627 | ) && |
---|
628 | de('ec_input_action_home').checked == '' && |
---|
629 | t2 |
---|
630 | ) { |
---|
631 | alert(ec_JS_message['ec_submit_action_miss']); |
---|
632 | return false; |
---|
633 | } |
---|
634 | if ( |
---|
635 | de('ec_sel_user_new').checked != '' && |
---|
636 | de('ec_in_up_psd_txt_id').value != '' && ( |
---|
637 | de('ec_in_up_psd_txt_id').value != de('ec_confirm_psd_txt_id').value |
---|
638 | ) |
---|
639 | ) { |
---|
640 | alert(ec_JS_message['ec_conf_pwd_dont_match']); |
---|
641 | return false; |
---|
642 | } |
---|
643 | if (!ec_is_creation && !t1) |
---|
644 | return confirm(ec_JS_message['ec_confirm_del_other']); |
---|
645 | else if ( |
---|
646 | (!ec_is_creation || t3) && |
---|
647 | de('ec_in_up_forced_id').checked != '' |
---|
648 | ) return confirm(ec_JS_message['ec_confirm_force']); |
---|
649 | return true; |
---|
650 | } |
---|
651 | |
---|
652 | function ec_change_user_list(ec_id) { |
---|
653 | ec_selected_old_user = ec_id; |
---|
654 | ec_mark_user('ec_sel_user_old'); |
---|
655 | } |
---|
656 | |
---|
657 | function ec_change_code_list(ec_id) { |
---|
658 | ec_selected_old_code = ec_id; |
---|
659 | ec_mark_code('ec_sel_code_old'); |
---|
660 | } |
---|
661 | |
---|
662 | function ec_test() { |
---|
663 | alert('OK.'); |
---|
664 | } |
---|
665 | |
---|
666 | function ec_build_ec_lists() { |
---|
667 | var t = new Array(); |
---|
668 | for (var i = 0; i < ec_lists_temp.length; i++) { |
---|
669 | t = ec_lists_temp[i].split(';'); |
---|
670 | ec_lists['code'][t[0]] = t[1]; |
---|
671 | ec_lists['user_id'][t[0]] = t[2]; |
---|
672 | ec_lists['action'][t[0]] = t[3]; |
---|
673 | ec_lists['arg1'][t[0]] = t[4]; |
---|
674 | ec_lists['arg2'][t[0]] = t[5]; |
---|
675 | ec_lists['forced'][t[0]] = t[6]; |
---|
676 | } |
---|
677 | } |
---|
678 | |
---|
679 | function ec_init() { |
---|
680 | ec_selected_old_group = false; |
---|
681 | ec_new_grp_text = ''; |
---|
682 | ec_err = ''; |
---|
683 | ec_selected_action = ''; |
---|
684 | ec_selected_img = ''; |
---|
685 | ec_new_code_text = ''; |
---|
686 | ec_new_user_text = ''; |
---|
687 | ec_new_psd_text = ''; |
---|
688 | ec_old_new_psd_text = ''; |
---|
689 | ec_test_reg = ''; |
---|
690 | ec_selected_old_user = '-1'; |
---|
691 | ec_selected_old_code = '-1'; |
---|
692 | ec_selected_AP = '-1'; |
---|
693 | ec_selected_cat = '-1'; |
---|
694 | ec_selected_user = '-1'; |
---|
695 | ec_selected_code = '-1'; |
---|
696 | de('ec_style_forced_id').innerHTML = ec_up_code_lbl_forced_txt; |
---|
697 | de('ec_act1_id').value = ec_default_action; |
---|
698 | de('ec_act2_id').value = ''; |
---|
699 | de('ec_in_up_usr_txt_id').value = ''; |
---|
700 | de('ec_in_up_psd_txt_id').value = ''; |
---|
701 | de('ec_confirm_psd_txt_id').value = ''; |
---|
702 | de('ec_in_up_grp_txt_id').value = ''; |
---|
703 | de('ec_in_up_newgroup_id').checked = ''; |
---|
704 | de('ec_in_up_pwd_warn').innerHTML = ''; |
---|
705 | de('ec_in_up_aps_id').selectedIndex = '-1'; |
---|
706 | de('ec_in_up_cats_id').selectedIndex = '-1'; |
---|
707 | de('ec_in_up_imgs_id').value = ''; |
---|
708 | de('ec_in_up_imgs_warn').innerHTML = ''; |
---|
709 | de('ec_input_action_home').checked = 'checked'; |
---|
710 | de('ec_input_action_home').checked = ''; |
---|
711 | |
---|
712 | if (ec_is_creation) { // Entry creation |
---|
713 | de('ec_in_up_auto_code_length_id').value= ec_auto_code_digits_nb; |
---|
714 | de('ec_in_up_code_id').value = ''; |
---|
715 | de('ec_sel_code_old').checked = 'checked'; |
---|
716 | de('ec_sel_user_old').checked = 'checked'; |
---|
717 | if ( |
---|
718 | ec_default_action == 'create' || |
---|
719 | ec_default_action == 'create_ask' || |
---|
720 | ec_default_action == 'duplicate_entry_submit' |
---|
721 | ) { // Create entry from blank |
---|
722 | de('ec_in_up_usr_list_id').selectedIndex = '-1'; |
---|
723 | de('ec_in_up_code_list_id').selectedIndex = '-1'; |
---|
724 | de('ec_sel_code_old').checked = ''; |
---|
725 | de('ec_sel_user_old').checked = ''; |
---|
726 | de('ec_submit_gen_full_auto_id').disabled = ''; |
---|
727 | de('ec_submit_gen_code_id').disabled = ''; |
---|
728 | de('ec_in_up_auto_code_length_id').disabled = ''; |
---|
729 | de('ec_in_up_code_id').disabled = ''; |
---|
730 | de('ec_sel_code_new').disabled = ''; |
---|
731 | de('ec_sel_code_old').disabled = ''; |
---|
732 | de('ec_in_up_code_list_id').disabled = ''; |
---|
733 | de('ec_sel_user_new').disabled = ''; |
---|
734 | de('ec_submit_gen_user_id').disabled = ''; |
---|
735 | de('ec_in_up_usr_txt_id').disabled = ''; |
---|
736 | de('ec_in_up_psd_txt_id').disabled = ''; |
---|
737 | de('ec_confirm_psd_txt_id').disabled = ''; |
---|
738 | de('ec_in_up_newgroup_id').disabled = ''; |
---|
739 | de('ec_in_up_grp_txt_id').disabled = ''; |
---|
740 | de('ec_sel_user_old').disabled = ''; |
---|
741 | de('ec_in_up_usr_list_id').disabled = ''; |
---|
742 | de('ec_in_up_forced_id').disabled = ''; |
---|
743 | } |
---|
744 | else { // Duplicate entry |
---|
745 | de('ec_act1_id').value = 'duplicate_entry_submit'; |
---|
746 | de('ec_submit_gen_full_auto_id').disabled = 'disabled'; |
---|
747 | de('ec_submit_gen_code_id').disabled = 'disabled'; |
---|
748 | de('ec_in_up_auto_code_length_id').disabled = 'disabled'; |
---|
749 | de('ec_in_up_code_id').disabled = 'disabled'; |
---|
750 | de('ec_sel_code_new').disabled = 'disabled'; |
---|
751 | de('ec_sel_code_old').disabled = 'disabled'; |
---|
752 | de('ec_in_up_code_list_id').disabled = 'disabled'; |
---|
753 | de('ec_sel_user_new').disabled = 'disabled'; |
---|
754 | de('ec_submit_gen_user_id').disabled = 'disabled'; |
---|
755 | de('ec_in_up_usr_txt_id').disabled = 'disabled'; |
---|
756 | de('ec_in_up_psd_txt_id').disabled = 'disabled'; |
---|
757 | de('ec_confirm_psd_txt_id').disabled = 'disabled'; |
---|
758 | de('ec_in_up_newgroup_id').disabled = 'disabled'; |
---|
759 | de('ec_in_up_grp_txt_id').disabled = 'disabled'; |
---|
760 | de('ec_sel_user_old').disabled = 'disabled'; |
---|
761 | de('ec_in_up_usr_list_id').disabled = 'disabled'; |
---|
762 | de('ec_in_up_forced_id').disabled = 'disabled'; |
---|
763 | ec_selected_old_code = ec_duplic_codes[ec_default_entry]; |
---|
764 | ec_selected_code = ec_selected_old_code; |
---|
765 | ec_flag2 = true; |
---|
766 | ec_mark_code('ec_sel_code_old'); |
---|
767 | ec_flag2 = false; |
---|
768 | } |
---|
769 | ec_default_action = 'create_ask'; |
---|
770 | } |
---|
771 | else { // Entry modification |
---|
772 | de('ec_sel_user_none').checked = 'checked'; |
---|
773 | de('ec_in_up_forced_id').checked = ''; |
---|
774 | de('ec_act1_id').value = 'modify_entry_submit'; |
---|
775 | if ( |
---|
776 | ec_default_action == 'modify_entry_ask' || |
---|
777 | ec_default_action == 'modify_entry_submit' |
---|
778 | ) { // Modify entry |
---|
779 | de('ec_in_up_entry_list_id').disabled = ''; |
---|
780 | de('ec_sel_user_none').checked = ''; |
---|
781 | de('ec_in_up_usr_list_id').selectedIndex = '-1'; |
---|
782 | de('ec_sel_user_none').disabled = ''; |
---|
783 | de('ec_sel_user_new').disabled = ''; |
---|
784 | de('ec_sel_user_old').disabled = ''; |
---|
785 | de('ec_submit_gen_user_id').disabled = ''; |
---|
786 | de('ec_in_up_usr_txt_id').disabled = ''; |
---|
787 | de('ec_in_up_psd_txt_id').disabled = ''; |
---|
788 | de('ec_confirm_psd_txt_id').disabled = ''; |
---|
789 | de('ec_in_up_newgroup_id').disabled = ''; |
---|
790 | de('ec_in_up_grp_txt_id').disabled = ''; |
---|
791 | de('ec_in_up_usr_list_id').disabled = ''; |
---|
792 | de('ec_in_up_forced_id').disabled = ''; |
---|
793 | de('ec_input_action_cat').disabled = ''; |
---|
794 | de('ec_in_up_cats_id').disabled = ''; |
---|
795 | de('ec_input_action_img').disabled = ''; |
---|
796 | de('ec_in_up_imgs_id').disabled = ''; |
---|
797 | de('ec_input_action_home').disabled = ''; |
---|
798 | ec_mark_entry(ec_default_entry); |
---|
799 | ec_default_entry = '-1'; |
---|
800 | } |
---|
801 | else { // Outdate entry |
---|
802 | ec_selected_user = 'ec_sel_user_none'; |
---|
803 | de('ec_in_up_entry_list_id').disabled = 'disabled'; |
---|
804 | de('ec_sel_user_none').disabled = 'disabled'; |
---|
805 | de('ec_sel_user_new').disabled = 'disabled'; |
---|
806 | de('ec_sel_user_old').disabled = 'disabled'; |
---|
807 | de('ec_submit_gen_user_id').disabled = 'disabled'; |
---|
808 | de('ec_in_up_usr_txt_id').disabled = 'disabled'; |
---|
809 | de('ec_in_up_psd_txt_id').disabled = 'disabled'; |
---|
810 | de('ec_confirm_psd_txt_id').disabled = 'disabled'; |
---|
811 | de('ec_in_up_newgroup_id').disabled = 'disabled'; |
---|
812 | de('ec_in_up_grp_txt_id').disabled = 'disabled'; |
---|
813 | de('ec_in_up_usr_list_id').disabled = 'disabled'; |
---|
814 | de('ec_in_up_forced_id').disabled = 'disabled'; |
---|
815 | de('ec_input_action_cat').disabled = 'disabled'; |
---|
816 | de('ec_in_up_cats_id').disabled = 'disabled'; |
---|
817 | de('ec_input_action_img').disabled = 'disabled'; |
---|
818 | de('ec_in_up_imgs_id').disabled = 'disabled'; |
---|
819 | de('ec_input_action_home').disabled = 'disabled'; |
---|
820 | de('ec_in_up_usr_list_id').selectedIndex = '-1'; |
---|
821 | de('ec_in_up_entry_list_id').value = ec_default_entry; |
---|
822 | de('ec_act2_id').value = ec_default_entry; |
---|
823 | } |
---|
824 | ec_default_action = 'modify_entry_ask'; |
---|
825 | } |
---|
826 | return false; |
---|
827 | } |
---|