source: trunk/gsdl/macros/pref.dm@ 13423

Last change on this file since 13423 was 13423, checked in by kjdon, 17 years ago

moved the blockquote tags around - they weren't properly nested with the form tags

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 14.2 KB
Line 
1# this file must be UTF-8 encoded
2
3package preferences
4
5# set within server
6
7# collectionoption is only set when cross-collection searching is turned on
8_collectionoption_ {}
9
10# this macro will be set to "1" when the "source docs retrived from dl/web
11# button is required - i.e. whenever PreferenceDocsFromWeb isn't set to false
12# in collect.cfg
13_PreferenceDocsFromWeb_ {}
14
15# this macro will be set to _textprefschanged_ when the "set preferences"
16# button has been pressed
17_prefschanged_ {}
18
19#######################################################################
20# global navigation links
21#######################################################################
22
23# this is overridden here as we don't want a 'preferences' link on this page
24
25_globallinks_ {_homelink_ _helplink_}
26
27#######################################################################
28# scripts
29# note that changing either the "m" or the "o" argument
30# from the preferences page necessitates reseting the "r"
31# argument to 1
32#######################################################################
33
34_ccsfunctions_ {argcc = "";
35savedccs = new Object();
36
37function initialize () \{
38 for (i = 0; i < document.links.length; i++)
39 savedhrefs[i] = document.links[i].href;
40
41 s = "_cgiargcc_";
42 a = s.split (",");
43 for (i = 0; i < a.length ;i++) \{
44 for (j = 0; j < document.PrefForm.cc.length; j++) \{
45 if (a[i] == document.PrefForm.elements["cc"][j].value) \{
46 document.PrefForm.elements["cc"][j].checked = true;
47 savedccs[a[i]] = 1;
48 argcc = argcc + "&cc=" + a[i];
49 break;
50 \} else \{
51 savedccs[a[i]] = 0;
52 \}
53 \}
54 \}
55 updatehrefs();
56\}
57
58function updatecc (collection) \{
59 if (savedccs[collection] == 1) savedccs[collection] = 0;
60 else savedccs[collection] = 1;
61
62 var i;
63 argcc = "";
64 var changed = 0;
65 for (i in savedccs)
66 if (savedccs[i] == 1) \{
67 argcc += "&cc=" + i;
68 changed = 1;
69 \}
70 if (changed == 1) argcc += "&r=1";
71 updatehrefs();
72\}
73}
74
75_standardfunctions_ {
76function initialize () \{
77 for (i = 0; i < document.links.length; i++)
78 savedhrefs[i] = document.links[i].href;
79
80\}
81
82}
83
84_getargsfunction_ {
85function getargs () \{
86 return argk + args + argaf + argm + argo + argrd + arghd + argb + argqb + argfqn + argqt_If_(_collectionoption_,_ccsargs_)_If_(_htmloptions_,_htmlargs_);
87\}
88}
89
90_ccsargs_ {+ argcc}
91_htmlargs_ {+ argel + argil + argfc + arghl}
92
93_htmlfunctions_ {argel = "";
94argil = "";
95argfc = "";
96arghl = "";
97
98function updateel () \{
99 value = document.PrefForm.el.options[document.PrefForm.el.selectedIndex].value;
100 if (value != "_cgiargel_") argel = "&el=" + value;
101 else argel = "";
102 updatehrefs();
103\}
104
105function updateil () \{
106 value = document.PrefForm.il.options[document.PrefForm.il.selectedIndex].value;
107 if (value != "_cgiargil_") argil = "&il=" + value;
108 else argil = "";
109 updatehrefs();
110\}
111
112function updatefc(value) \{
113 if (value != _cgiargfc_) argfc = "&fc=" + value + "&f=" + value;
114 else argfc = "";
115 updatehrefs();
116\}
117
118function updatehl(value) \{
119 if (value != _cgiarghl_) arghl = "&hl=" + value;
120 else arghl = "";
121 updatehrefs();
122\}
123}
124
125_pagescriptextra_ {
126// preferences scripts generated from \_preferences:pagescriptextra\_
127
128savedhrefs = new Object();
129
130argk = "";
131args = "";
132argm = "";
133argrd = "";
134argo = "";
135argb = "";
136arghd = "";
137argqb = "";
138argfqn = "";
139argqt= "";
140argaf = "";
141
142_If_(_collectionoption_,_ccsfunctions_,_standardfunctions_)
143_If_(_htmloptions_,_htmlfunctions_)
144_getargsfunction_
145function updatehrefs () \{
146 for (i = 0; i < document.links.length; i++)
147 document.links[i].href = savedhrefs[i] + getargs();
148\}
149
150function updatek (value) \{
151 if (value != _cgiargk_) argk = "&k=" + value;
152 else argk = "";
153 updatehrefs();
154\}
155
156function updates (value) \{
157 if (value != _cgiargs_) args = "&s=" + value;
158 else args = "";
159 updatehrefs();
160\}
161
162function updateaf (value) \{
163 if (value != _cgiargaf_) argaf = "&af=" + value;
164 else argaf = "";
165 updatehrefs();
166\}
167
168function updatem () \{
169 value = document.PrefForm.m.options[document.PrefForm.m.selectedIndex].value;
170 if (value != _cgiargm_) argm = "&r=1&m=" + value;
171 else argm = "";
172 updatehrefs();
173\}
174
175function updaterd () \{
176 if (document.PrefForm.rd.checked)
177 _If_("_cgiargrd_" eq "1",argrd="";,argrd="&rd=1";)
178 else
179 _If_("_cgiargrd_" ne "1",argrd="";,argrd="&rd=0";)
180 updatehrefs();
181\}
182
183function updateo () \{
184 value = document.PrefForm.o.options[document.PrefForm.o.selectedIndex].value;
185 if (value != _cgiargo_) argo = "&r=1&o=" + value;
186 else argo = "";
187 updatehrefs();
188\}
189
190function updateqt (value) \{
191 if (value != _cgiargqt_) argqt = "&qt=" + value;
192 else argqt = "";
193 updatehrefs();
194\}
195
196function updatefqn () \{
197 value = document.PrefForm.fqn.options[document.PrefForm.fqn.selectedIndex].value;
198 if (value != _cgiargfqn_) argfqn = "&fqn=" + value;
199 else argfqn = "";
200 updatehrefs();
201\}
202
203function updateb (value) \{
204 if (value != _cgiargb_) argb = "&b=" + value;
205 else argb = "";
206 updatehrefs();
207\}
208
209function updatehd() \{
210 arghd="";
211 if (document.PrefForm.hd[0].checked) \{
212 if ("_cgiarghd_" != "0") arghd = "&hd=0";
213 \}
214 else \{
215 value = document.PrefForm.hdn[document.PrefForm.hdn.selectedIndex].value;
216 if (_cgiarghd_ != value) arghd = "&hd="+value;
217 \}
218 updatehrefs();
219\}
220
221
222function updateqb() \{
223
224 value = document.PrefForm.qb.options[document.PrefForm.qb.selectedIndex].value;
225 if (value != _cgiargqb_) argqb = "&qb=" + value;
226 else argqb = "";
227 updatehrefs();
228\}
229
230function updatel () \{
231 value = document.PrefForm.l.options[document.PrefForm.l.selectedIndex].value;
232 href = location.href;
233 if (href.match(/&l=[\\w\\-]+/)) href = href.replace(/&l=[\\w\\-]+/, "&l=" + value);
234 else href += "&l=" + value;
235 if (!location.href.match(/&nl=1$/)) href += "&nl=1";
236 while (href.match(/&cc=[\\w]+/)) href = href.replace(/&cc=[\\w]+/, "");
237 location.href = href + getargs();
238\}
239
240function updatev () \{
241 value = document.PrefForm.v.options[document.PrefForm.v.selectedIndex].value;
242 href = location.href;
243 if (href.match(/&v=\\d/)) href = href.replace(/&v=\\d/, "&v=" + value);
244 else href += "&v=" + value;
245 while (href.match(/&cc=[\\w]+/)) href = href.replace(/&cc=[\\w]+/, "");
246 location.href = href + getargs();
247\}
248
249function updatew () \{
250 value = document.PrefForm.w.options[document.PrefForm.w.selectedIndex].value;
251 href = location.href;
252 if (href.match(/&nw=[^&]+/)) href = href.replace(/&nw=[^&]+/, "&nw=" + value);
253 else href += "&nw=" + value;
254 if (!location.href.match(/&nl=0$/)) href += "&nl=0";
255 while (href.match(/&cc=[\\w]+/)) href = href.replace(/&cc=[\\w]+/, "");
256 location.href = href + getargs();
257\}
258
259}
260
261
262#######################################################################
263# headers
264# these are overridden so we can put an onLoad event handler
265# in the <body> tag of this page
266#######################################################################
267
268
269_header_ {_cgihead_
270_htmlhead_(class="bgimage" onLoad="initialize();")_startspacer__pagebanner_
271}
272
273# this declaration ends up being the same as style=restrict, never mind
274_header_[v=1] {_cgihead_
275_htmlhead_(onLoad="initialize();")_pagebanner_
276}
277
278
279#######################################################################
280# page content
281#######################################################################
282
283_pagetitle_ {_collectionname_: _textpreferences_}
284_imagethispage_ {_textpreferences_}
285
286_htmloptions_ {}
287
288_htmloptionson_ {
289<p>
290<tr>_fcoption_</tr>
291<p>
292<tr>_hloption_</tr>
293<p>
294<tr>_extlinkoption_</tr>
295_If_(_PreferenceDocsFromWeb_,<p>
296<tr>_intlinkoption_</tr>)
297}
298
299_fcoption_ {
300<td valign=baseline>Document page layout</td>
301<td><input type=radio name=fc value=1 onClick="updatefc(1);"
302 _If_(_cgiargfc_, checked)>navigation bar at top<br>
303<input type=radio name=fc value=0 onClick="updatefc(0);"
304 _If_(_cgiargfc_,, checked)>no navigation bar</td>
305}
306
307_hloption_ {
308<td valign=baseline>Search term highlighting</td>
309<td><input type=radio name=hl value=1 onClick="updatehl(1);"
310 _If_(_cgiarghl_, checked)>highlight search terms<br>
311<input type=radio name=hl value=0 onClick="updatehl(0);"
312 _If_(_cgiarghl_,, checked)>don't highlight search terms</td>
313}
314
315#search pref options
316
317
318# search type option
319_searchtypeoptionplain_ {
320<td valign=baseline>_textsearchtype_</td>
321<td>_textplainsearchtype_</td>
322}
323_searchtypeoptionform_ {
324<td valign=baseline>_textsearchtype_</td>
325<td>_textformsearchtype_</td>
326}
327_searchtypeoptionboth_ {
328<td valign=baseline>_textsearchtype_</td>
329<td><input type=radio name=qt value=0 onClick="updateqt(0);"
330 _If_(_cgiargqt_,, checked)>_textplainsearchtype_<br>
331<input type=radio name=qt value=1 onClick="updateqt(1);"
332 _If_(_cgiargqt_, checked)>_textformsearchtype_</td>
333}
334
335_boxsizeoption_{
336<select name="qb" onChange="updateqb();">
337 <option value="0"_If_("_cgiargqb_" eq "0", selected)>_textregularbox_
338 <option value="1"_If_("_cgiargqb_" eq "1", selected)>_textlargebox_
339</select>
340}
341
342_formnumfieldoption_ {
343<select name="fqn" onChange="updatefqn();">
344 <option value="2"_If_("_cgiargfqn_" eq "2", selected)>2
345 <option value="4"_If_("_cgiargfqn_" eq "4", selected)>4
346 <option value="6"_If_("_cgiargfqn_" eq "6", selected)>6
347 <option value="8"_If_("_cgiargfqn_" eq "8", selected)>8
348</select>
349}
350
351_modeoption_ {
352<td valign=baseline>_textquerymode_</td>
353<td><input type=radio name=b value=0 onClick="updateb(0);"
354 _If_(_cgiargb_,, checked)>_textsimplemode_<br>
355<input type=radio name=b value=1 onClick="updateb(1);"
356 _If_(_cgiargb_, checked)>_textadvancedmode_</td>
357}
358
359_caseoption_ {
360<td valign=baseline>_textcasediffs_</td>
361<td><input type=radio name=k value=1 onClick="updatek(1);"
362 _If_(_cgiargk_, checked)>_textignorecase_<br>
363<input type=radio name=k value=0 onClick="updatek(0);"
364 _If_(_cgiargk_,, checked)>_textmatchcase_</td>
365}
366
367_caseoption_ [l=ar] {}
368_caseoption_ [l=zh] {}
369
370_stemoption_ {
371<td valign=baseline>_textwordends_</td>
372<td><input type=radio name=s value=1 onClick="updates(1);"
373 _If_(_cgiargs_, checked)>_textstem_<br>
374<input type=radio name=s value=0 onClick="updates(0);"
375 _If_(_cgiargs_,, checked)>_textnostem_</td>
376}
377
378_stemoption_ [l=zh] {}
379
380_accentoption_ {
381<td valign=baseline>_textaccentdiffs_</td>
382<td><input type=radio name=af value=1 onClick="updateaf(1);"
383 _If_(_cgiargaf_, checked)>_textignoreaccents_<br>
384<input type=radio name=af value=0 onClick="updateaf(0);"
385 _If_(_cgiargaf_,, checked)>_textmatchaccents_</td>
386}
387
388_searchhistoryop_ {
389<td valign=baseline>_textsearchhistory_</td>
390<td><input type=radio name="hd" value=0 onClick="updatehd();"
391 _If_("_cgiarghd_" eq "0", checked)>_textnohistorydisplay_<br>
392<input type=radio name="hd" value=1 onClick="updatehd();"
393 _If_("_cgiarghd_" eq "0",, checked)>_texthistorydisplay_</td>
394}
395
396_relateddocop_ {
397<td colspan=2><nobr><input type=checkbox name="rd" value=1 onClick="updaterd();" _If_("_cgiargrd_" eq "1", checked)>
398Display related documents</nobr></td>
399}
400
401_historynumrecords_{<select name="hdn" onChange="updatehd();">
402 <option value="5"_If_("_cgiarghd_" eq "5", selected)>5
403 <option value="10"_If_("_cgiarghd_" eq "10", selected)>10
404 <option value="15"_If_("_cgiarghd_" eq "15", selected)>15
405 <option value="20"_If_("_cgiarghd_" eq "20", selected)>20
406</select>}
407
408_maxdocoption_ {
409<select name="m" onChange="updatem();">
410 <option value="50"_If_("_cgiargm_" eq "50", selected)>50
411 <option value="100"_If_("_cgiargm_" eq "100", selected)>100
412 <option value="200"_If_("_cgiargm_" eq "200", selected)>200
413 <option value="-1"_If_("_cgiargm_" eq "-1", selected)>_textall_
414</select>
415}
416
417_hitsperpageoption_ {
418<select name="o" onChange="updateo();">
419 <option value="10"_If_("_cgiargo_" eq "10", selected)>10
420 <option value="20"_If_("_cgiargo_" eq "20", selected)>20
421 <option value="50"_If_("_cgiargo_" eq "50", selected)>50
422 <option value="-1"_If_("_cgiargo_" eq "-1", selected)>_textall_
423</select>
424}
425
426_extlinkoption_ {
427<td>_textextlink_</td>
428<td><select name="el" onChange="updateel();">
429 <option value="prompt"_If_("_cgiargel_" eq "prompt", selected)>
430 _textlinkinterm_
431 <option value="direct"_If_("_cgiargel_" eq "direct", selected)>
432 _textlinkdirect_
433</select></td>
434}
435
436_intlinkoption_ {
437<td>_textintlink_</td>
438<td><select name="il" onChange="updateil();">
439 <option value="l"_If_("_cgiargil_" eq "l", selected)>
440 _textdigitlib_
441 <option value="w"_If_("_cgiargil_" eq "w", selected)>
442 _textweb_
443</select></td>
444}
445
446# set from within pageaction
447_languageoption_ {}
448_encodingoption_ {}
449
450_formatoption_ {
451<td>_textformat_</td>
452<td><select name="v" onChange="updatev();">
453 <option value="0"_If_("_cgiargv_" eq "0", selected)>_textgraphical_
454 <option value="1"_If_("_cgiargv_" eq "1", selected)>_texttextual_
455</select></td>
456}
457
458_content_ {
459_optnavigationbar_
460_If_(_prefschanged_,<p>_prefschanged_<br><div class="divbar">&nbsp;</div>)
461
462<form name=PrefForm method=get action="_gwcgi_">
463<input type="hidden" name="e" value="_compressedoptions_">
464_If_(_collectionoption_,_collectionprefs_)
465_presentationprefs_
466_searchprefs_
467</form>
468}
469
470#search prefs
471_searchprefs_ {
472<table border=0 cellpadding=0 cellspacing=0 width=_pagewidth_><tr>
473<td><h3>_textsearchprefs_</h3></td>
474<td align=right><input type=submit name="bp" value="_textsetprefs_"></td>
475</tr></table>
476<blockquote>
477
478<table>
479<tr>_modeoption_</tr>
480
481<tr>_querytypedependantoptions_</tr>
482
483_If_("_cgiargks_" eq "1",
484<tr>_caseoption_</tr>
485)
486_If_("_cgiargss_" eq "1",
487<tr>_stemoption_</tr>
488)
489_If_("_cgiargafs_" eq "1",
490<tr>_accentoption_</tr>
491)
492<tr>_searchhistoryop_</tr>
493
494<!--
495Don't include this for now
496<tr>_relateddocop_</tr>
497-->
498
499<tr><td colspan=2>_textprefop_</td></tr>
500</table>
501</blockquote>
502<div class="divbar">&nbsp;</div>
503}
504
505_querytypedependantoptions_ {
506_If_("_cgiargct_" eq "0",_searchtypeoptionplain_,_mgppqueryoptions_)
507}
508_mgppqueryoptions_ {
509_If_("_cgiargqto_" eq "1", _searchtypeoptionplain_)
510_If_("_cgiargqto_" eq "2", _searchtypeoptionform_)
511_If_("_cgiargqto_" eq "3", _searchtypeoptionboth_)
512}
513
514# should this go somewhere??
515#<noscript><tr><td colspan=2><b>_query:textnojsformwarning_</b></td></tr></noscript>
516
517_collectionprefs_ {
518<h3>_textcollectionprefs_</h3>
519<blockquote>
520_collectionoption_
521</blockquote>
522<div class="divbar">&nbsp;</div>
523}
524
525_presentationprefs_ {
526<h3>_textpresentationprefs_</h3>
527<blockquote>
528<table>_htmloptions_
529
530_If_(_languageoption_,<tr><td>_textlanguage_</td><td>_languageoption_</td></tr>)
531
532_If_(_encodingoption_,<tr><td>_textencoding_</td><td>_encodingoption_</td></tr>)
533
534<tr>_formatoption_</tr></table>
535</blockquote>
536<div class="divbar">&nbsp;</div>
537}
538
Note: See TracBrowser for help on using the repository browser.