annotate templates/classic/html/help_controls.js @ 3704:18def94e5150

macro th_label: - usage of th_label in user.item.html (for a start) - macro search_select_translated (for status and priority) - Javascript support for adding uses (just past the email address and leave the input field)
author Tobias Herp <tobias-herp@users.sourceforge.net>
date Sun, 17 Sep 2006 23:27:21 +0000
parents 3f3ca882deb2
children ba2eeadeed69
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1663
09f0a54829eb Fixed spelling of "supersede";
Jean Jordaan <neaj@users.sourceforge.net>
parents: 1608
diff changeset
1 // initial values for either Nosy, Superseder, Topic and Waiting On,
09f0a54829eb Fixed spelling of "supersede";
Jean Jordaan <neaj@users.sourceforge.net>
parents: 1608
diff changeset
2 // depending on which has called
2761
10a49678ebf2 allow listing popup to be used in query forms (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents: 2361
diff changeset
3 original_field = form[field].value;
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
4
2361
9cdc49488fe6 define the "undefined" var manually
Richard Jones <richard@users.sourceforge.net>
parents: 2273
diff changeset
5 // Some browsers (ok, IE) don't define the "undefined" variable.
9cdc49488fe6 define the "undefined" var manually
Richard Jones <richard@users.sourceforge.net>
parents: 2273
diff changeset
6 undefined = document.geez_IE_is_really_friggin_annoying;
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
7
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
8 function trim(value) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
9 var temp = value;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
10 var obj = /^(\s*)([\W\w]*)(\b\s*$)/;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
11 if (obj.test(temp)) { temp = temp.replace(obj, '$2'); }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
12 var obj = / /g;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
13 while (temp.match(obj)) { temp = temp.replace(obj, " "); }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
14 return temp;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
15 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
16
1899
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
17 function determineList() {
3043
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
18 // generate a comma-separated list of the checked items
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
19 var list = new String('');
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
20
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
21 // either a checkbox object or an array of checkboxes
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
22 var check = document.frm_help.check;
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
23
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
24 if ((check.length == undefined) && (check.checked != undefined)) {
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
25 // only one checkbox on page
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
26 if (check.checked) {
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
27 list = check.value;
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
28 }
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
29 } else {
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
30 // array of checkboxes
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
31 for (box=0; box < check.length; box++) {
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
32 if (check[box].checked) {
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
33 if (list.length == 0) {
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
34 separator = '';
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
35 }
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
36 else {
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
37 separator = ',';
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
38 }
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
39 // we used to use an Array and push / join, but IE5.0 sux
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
40 list = list + separator + check[box].value;
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
41 }
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
42 }
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
43 }
3f3ca882deb2 fix "(list)" popup when list is one item long [SF#1064716]
Richard Jones <richard@users.sourceforge.net>
parents: 2761
diff changeset
44 return list;
1899
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
45 }
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
46
3704
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
47 /**
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
48 * update the field in the opening window;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
49 * the text_field variable must be set in the calling page
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
50 */
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
51 function updateOpener() {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
52 // write back to opener window
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
53 if (document.frm_help.check==undefined) { return; }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
54 form[field].value = text_field.value;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
55 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
56
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
57 function updateList() {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
58 // write back to opener window
1764
cd50fbc275a1 Fix JavaScript error when help was asked while no keyword was defined.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1663
diff changeset
59 if (document.frm_help.check==undefined) { return; }
2761
10a49678ebf2 allow listing popup to be used in query forms (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents: 2361
diff changeset
60 form[field].value = determineList();
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
61 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
62
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
63 function updatePreview() {
1899
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
64 // update the preview box
1764
cd50fbc275a1 Fix JavaScript error when help was asked while no keyword was defined.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1663
diff changeset
65 if (document.frm_help.check==undefined) { return; }
1899
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
66 writePreview(determineList());
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
67 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
68
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
69 function clearList() {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
70 // uncheck all checkboxes
1764
cd50fbc275a1 Fix JavaScript error when help was asked while no keyword was defined.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1663
diff changeset
71 if (document.frm_help.check==undefined) { return; }
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
72 for (box=0; box < document.frm_help.check.length; box++) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
73 document.frm_help.check[box].checked = false;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
74 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
75 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
76
3704
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
77 function reviseList_framed(form, textfield) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
78 // update the checkboxes based on the preview field
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
79 // alert('reviseList_framed')
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
80 // alert(form)
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
81 if (form.check==undefined)
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
82 return;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
83 // alert(textfield)
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
84 var to_check;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
85 var list = textfield.value.split(",");
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
86 if (form.check.length==undefined) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
87 check = form.check;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
88 to_check = false;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
89 for (val in list) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
90 if (check.value==trim(list[val])) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
91 to_check = true;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
92 break;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
93 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
94 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
95 check.checked = to_check;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
96 } else {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
97 for (box=0; box < form.check.length; box++) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
98 check = form.check[box];
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
99 to_check = false;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
100 for (val in list) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
101 if (check.value==trim(list[val])) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
102 to_check = true;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
103 break;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
104 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
105 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
106 check.checked = to_check;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
107 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
108 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
109 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
110
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
111 function reviseList(vals) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
112 // update the checkboxes based on the preview field
1764
cd50fbc275a1 Fix JavaScript error when help was asked while no keyword was defined.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1663
diff changeset
113 if (document.frm_help.check==undefined) { return; }
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
114 var to_check;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
115 var list = vals.split(",");
1899
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
116 if (document.frm_help.check.length==undefined) {
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
117 check = document.frm_help.check;
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
118 to_check = false;
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
119 for (val in list) {
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
120 if (check.value==trim(list[val])) {
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
121 to_check = true;
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
122 break;
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
123 }
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
124 }
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
125 check.checked = to_check;
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
126 } else {
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
127 for (box=0; box < document.frm_help.check.length; box++) {
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
128 check = document.frm_help.check[box];
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
129 to_check = false;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
130 for (val in list) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
131 if (check.value==trim(list[val])) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
132 to_check = true;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
133 break;
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
134 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
135 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
136 check.checked = to_check;
1899
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
137 }
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
138 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
139 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
140
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
141 function resetList() {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
142 // reset preview and check boxes to initial values
1764
cd50fbc275a1 Fix JavaScript error when help was asked while no keyword was defined.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1663
diff changeset
143 if (document.frm_help.check==undefined) { return; }
1899
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
144 writePreview(original_field);
d6c039c5b52b fixed javascript for help window for only one checkbox case
Richard Jones <richard@users.sourceforge.net>
parents: 1764
diff changeset
145 reviseList(original_field);
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
146 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
147
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
148 function writePreview(val) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
149 // writes a value to the text_preview
1663
09f0a54829eb Fixed spelling of "supersede";
Jean Jordaan <neaj@users.sourceforge.net>
parents: 1608
diff changeset
150 document.frm_help.text_preview.value = val;
1608
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
151 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
152
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
153 function focusField(name) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
154 for(i=0; i < document.forms.length; ++i) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
155 var obj = document.forms[i].elements[name];
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
156 if (obj && obj.focus) {obj.focus();}
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
157 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
158 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
159
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
160 function selectField(name) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
161 for(i=0; i < document.forms.length; ++i) {
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
162 var obj = document.forms[i].elements[name];
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
163 if (obj && obj.focus){obj.focus();}
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
164 if (obj && obj.select){obj.select();}
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
165 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
166 }
49dd1bf17d66 new improved help controls
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
167
3704
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
168 function checkRequiredFields(fields)
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
169 {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
170 var bonk='';
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
171 var res='';
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
172 var argv = checkRequiredFields.arguments;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
173 var argc = argv.length;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
174 var input = '';
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
175 var val='';
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
176
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
177 for (var i=0; i < argc; i++) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
178 fi = argv[i];
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
179 input = document.getElementById(fi);
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
180 if (input) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
181 val = input.value
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
182 if (val == '' || val == '-1' || val == -1) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
183 if (res == '') {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
184 res = fi;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
185 bonk = input;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
186 } else {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
187 res += ', '+fi;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
188 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
189 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
190 } else {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
191 alert('Field with id='+fi+' not found!')
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
192 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
193 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
194 if (res == '') {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
195 return submit_once();
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
196 } else {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
197 alert('Missing value here ('+res+')!');
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
198 if (window.event && window.event.returnvalue) {
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
199 event.returnValue = 0; // work-around for IE
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
200 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
201 bonk.focus();
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
202 return false;
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
203 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
204 }
18def94e5150 macro th_label:
Tobias Herp <tobias-herp@users.sourceforge.net>
parents: 3043
diff changeset
205

Roundup Issue Tracker: http://roundup-tracker.org/