Mercurial > p > roundup > code
annotate templates/minimal/html/help_controls.js @ 3882:46ef2a6fd79d
config option to limit nosy attachments based on size
reworking of patch [SF#772323] from Philipp Gortan
It tries to avoid reading the file contents just to
get the file size but that was too hard for metakit backends.
They don't inherit from blobfiles.FileStorage which makes
it more challenging. Really that backend should be reworked
to inherit from FileStorage.
I'm not sure I like the default being sys.maxint. Maybe have
0 == unlimited? But what if someone really wanted to set it to
0 to mean "don't attach anything"?
| author | Justus Pendleton <jpend@users.sourceforge.net> |
|---|---|
| date | Mon, 03 Sep 2007 17:14:09 +0000 |
| parents | 8c7b522dc934 |
| children | 91008ec8f9a0 |
| rev | line source |
|---|---|
|
3292
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
1 // initial values for either Nosy, Superseder, Topic and Waiting On, |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
2 // depending on which has called |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
3 original_field = form[field].value; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
4 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
5 // Some browsers (ok, IE) don't define the "undefined" variable. |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
6 undefined = document.geez_IE_is_really_friggin_annoying; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
7 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
8 function trim(value) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
9 var temp = value; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
10 var obj = /^(\s*)([\W\w]*)(\b\s*$)/; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
11 if (obj.test(temp)) { temp = temp.replace(obj, '$2'); } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
12 var obj = / /g; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
13 while (temp.match(obj)) { temp = temp.replace(obj, " "); } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
14 return temp; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
15 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
16 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
17 function determineList() { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
18 // generate a comma-separated list of the checked items |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
19 var list = new String(''); |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
20 for (box=0; box < document.frm_help.check.length; box++) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
21 if (document.frm_help.check[box].checked) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
22 if (list.length == 0) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
23 separator = ''; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
24 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
25 else { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
26 separator = ','; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
27 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
28 // we used to use an Array and push / join, but IE5.0 sux |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
29 list = list + separator + document.frm_help.check[box].value; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
30 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
31 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
32 return list; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
33 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
34 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
35 function updateList() { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
36 // write back to opener window |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
37 if (document.frm_help.check==undefined) { return; } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
38 form[field].value = determineList(); |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
39 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
40 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
41 function updatePreview() { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
42 // update the preview box |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
43 if (document.frm_help.check==undefined) { return; } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
44 writePreview(determineList()); |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
45 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
46 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
47 function clearList() { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
48 // uncheck all checkboxes |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
49 if (document.frm_help.check==undefined) { return; } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
50 for (box=0; box < document.frm_help.check.length; box++) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
51 document.frm_help.check[box].checked = false; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
52 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
53 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
54 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
55 function reviseList(vals) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
56 // update the checkboxes based on the preview field |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
57 if (document.frm_help.check==undefined) { return; } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
58 var to_check; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
59 var list = vals.split(","); |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
60 if (document.frm_help.check.length==undefined) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
61 check = document.frm_help.check; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
62 to_check = false; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
63 for (val in list) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
64 if (check.value==trim(list[val])) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
65 to_check = true; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
66 break; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
67 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
68 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
69 check.checked = to_check; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
70 } else { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
71 for (box=0; box < document.frm_help.check.length; box++) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
72 check = document.frm_help.check[box]; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
73 to_check = false; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
74 for (val in list) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
75 if (check.value==trim(list[val])) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
76 to_check = true; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
77 break; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
78 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
79 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
80 check.checked = to_check; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
81 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
82 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
83 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
84 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
85 function resetList() { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
86 // reset preview and check boxes to initial values |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
87 if (document.frm_help.check==undefined) { return; } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
88 writePreview(original_field); |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
89 reviseList(original_field); |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
90 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
91 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
92 function writePreview(val) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
93 // writes a value to the text_preview |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
94 document.frm_help.text_preview.value = val; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
95 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
96 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
97 function focusField(name) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
98 for(i=0; i < document.forms.length; ++i) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
99 var obj = document.forms[i].elements[name]; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
100 if (obj && obj.focus) {obj.focus();} |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
101 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
102 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
103 |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
104 function selectField(name) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
105 for(i=0; i < document.forms.length; ++i) { |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
106 var obj = document.forms[i].elements[name]; |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
107 if (obj && obj.focus){obj.focus();} |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
108 if (obj && obj.select){obj.select();} |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
109 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
110 } |
|
8c7b522dc934
added date selection popup windows (thanks Marcus Priesch)
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
111 |
