root/main/trunk/greenstone2/macros/collect.dm @ 32220

Revision 28898, 19.8 KB (checked in by ak19, 6 years ago)

1. The cgiargq query variable is now no longer escaped in the 3 simply or large forms that use it. fqv and other js escaped fields are unchanged, since the jssafe now ensures that backslashes are escaped for macro files, so these resolve correctly in query.dm. 2. securitytools.cpp and .h updated to additionally escape back slashes for macro files when javascript escaping. This is done by default, since jssafe variants of cgiargs are all that are used, and they're used in macro files. 3. Encoded versions of decodedcompressedoptions are now used in all macro files. They're always used in attributes, so the attrsafe version which is set in receptionist.cpp is used.

  • Property svn:keywords set to Author Date Id Revision
Line 
1# this file must be UTF-8 encoded
2
3package collector
4
5_imagethispage_ {<a href="_httppagecollector_">_textcollector_</a>}
6
7# _pagescriptextra_ will be set to the appropriate _***scriptextra_
8# macro from within the server
9_pagescriptextra_ {}
10
11# a plain header for those pages that need it (the _pagebanner_ macro
12# will be set to this by the server for those pages.
13_plainbanner_ {}
14
15# dont want links to "help" or "preferences" pages from within
16# collector
17_globallinks_ {_homelink_}
18
19#######################################################################
20# icons
21
22_iconcross_ {<img src="_httpimg_/cross.gif">}
23_iconcross_ [v=1] {<b>no</b>}
24_icontick_ {<img src="_httpimg_/tick.gif">}
25_icontick_ [v=1] {<b>yes</b>}
26_iconblank_ {<img src="_httpimg_/blank.gif">}
27_iconblank_ [v=1] {}
28
29_imagemore_ {<a href="javascript:more()" onMouseover="roll('more',1);" onMouseOut="roll('more',0);"><img
30name="more" src="_httpimg_/moreof.gif" onLoad="gbutton(this,'_httpimg_/moreon.gif');" border=0 alt="_textmore_"
31title="_textmore_" align=top></a>}
32_imagemore_ [v=1] {_textmore_}
33
34_icongreyarrow_ {<img src="_httpimg_/grarrow.gif">}
35_icongreyuparrow_ {<img src="_httpimg_/guarrow.gif">}
36_iconstop_ {<img src="_httpimg_/stop.gif" border=0>}
37
38
39#######################################################################
40# http macros
41
42_httpinfo_ {_gwcgi_?e=_compressedoptions_&p=info}
43_httpview_ {_gwcgi_?a=p&p=about&c=_cgiargbc1dirnameUrlsafe_}
44
45
46#######################################################################
47# intro
48#######################################################################
49
50_introscriptextra_ {}
51
52_introcontent_ {
53<form name="collectorform" method=post action="_gwcgi_">
54<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
55
56<center>
57<table width=_pagewidth_>
58<tr><td>
59<div class="divbar">&nbsp;</div>
60<center>
61<h2>_textcollector_</h2>
62<p>_textcollectorblurb_
63</center>
64<div class="divbar">&nbsp;</div>
65<p>_textcb1_
66<p>_textcb2_
67<ul>
68<input type=radio name=p value=new checked>
69_textcnc_
70<br>
71<input type=radio name=p value=existing>
72_textwec_
73</ul>
74<div class="divbar">&nbsp;</div>
75<p>_textcb3_
76<p>_textcb4_
77
78<table><tr><td width=80>_authen:textusername_</td>
79<td><input type="text" name="un" value="" size=10></td>
80<td></td></tr>
81<tr><td>_authen:textpassword_</td>
82<td><input type="password" name="pw" size=10></td>
83<td><input type="submit" value="_textsignin_"></td>
84</tr>
85</table>
86<div class="divbar">&nbsp;</div>
87</td></tr>
88</table></center>
89
90</form>
91}
92
93
94#######################################################################
95# existing (Changing an existing collection page)
96#######################################################################
97
98_existingscriptextra_ {
99function check\_submit (gotopage) \{
100  var form = document.collectorform;
101  if (gotopage == "srce") \{
102    form.bc1esrce.value = "1";
103  \}
104  if (gotopage == "conf") \{
105    form.bc1econf.value = "1";
106  \}
107  form.p.value = gotopage;
108  form.submit();
109\}
110
111function do\_delete () \{
112  var form = document.collectorform; 
113  var i = form.bc1dirname.selectedIndex;
114  var del = confirm ("Confirm deletion of " + form.bc1dirname.options[i].value + " collection?");
115  if (del) \{
116    form.bc1dodelete.value = "1";
117    form.submit();
118  \}
119\}
120}
121
122_changeexisting_ {
123<p>_textfsc_
124<br>_fullnamemenu_<br>
125<p>_textwtc_
126
127<table class=collectorbar cellspacing=6>
128<tr><td width=20 align=right valign=bottom>1.</td>
129<td class=collectorbargreen valign=bottom><a href="javascript:check\_submit('srce');">_textsrce_</a></td>
130<td valign=bottom>_textamd_</td></tr>
131<tr><td align=right valign=bottom>2.</td>
132<td class=collectorbargreen valign=bottom><a href="javascript:check\_submit('conf');">_textconf_</a></td>
133<td valign=bottom>_textetc_</td></tr>
134<tr><td align=right valign=bottom>3.</td>
135<td class=collectorbargreen valign=bottom><a href="javascript:do\_delete();">_textdel_</a></td>
136<td valign=bottom>_textdtc_</td></tr>
137<tr><td align=right valign=bottom>4.</td>
138<td class=collectorbargreen valign=bottom><a href="javascript:check\_submit('expt');">_textexpt_</a></td>
139<td valign=bottom>_textetcfcd_</td></tr>
140</table>
141}
142
143_existingcontent_ {
144<form name="collectorform" method=post action="_gwcgi_">
145<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
146<input type=hidden name="p" value="_cgiargpAttrsafe_">
147<input type=hidden name="bc1dodelete" value="0">
148<input type=hidden name="bc1esrce" value="0">
149<input type=hidden name="bc1econf" value="0">
150<center>
151<table width=_pagewidth_>
152<tr><td>
153<div class="divbar">&nbsp;</div>
154<center><h2>_textcaec_</h2></center>
155<div class="divbar">&nbsp;</div>
156_If_("_fullnamemenu_" eq "",<p>_textnwec_,_changeexisting_)
157<div class="divbar">&nbsp;</div>
158</td></tr>
159</table></center>
160</form>
161}
162
163
164#######################################################################
165# new (Create a new collection page)
166#######################################################################
167
168_newscriptextra_ {}
169
170_newcontent_ {
171<center>
172<table width=_pagewidth_>
173<tr><td>
174<div class="divbar">&nbsp;</div>
175<center><h2>_textcianc_</h2></center>
176<div class="divbar">&nbsp;</div>
177
178<p>_texttsosn_
179<table class=wizardbar cellspacing=6>
180<tr><td width=20 align=right valign=bottom>1.</td>
181    <td class=wizardbargrey valign=bottom>_textinfo_</td>
182    <td valign=bottom>_textsin_</td></tr>
183<tr><td align=right valign=bottom>2.</td>
184    <td class=wizardbargrey valign=bottom>_textsrce_</td>
185    <td valign=bottom>_textswts_</td></tr>
186<tr><td align=right valign=bottom>3.</td>
187    <td class=wizardbargrey valign=bottom>_textconf_</td>
188    <td valign=bottom>_textatco_</td></tr>
189<tr><td align=right valign=bottom>4.</td>
190    <td class=wizardbargrey valign=bottom>_textbild_</td>
191    <td valign=bottom>_textbtc_</td></tr>
192<tr><td align=right valign=bottom>5.</td>
193    <td class=wizardbargrey valign=bottom>_textview_</td>
194    <td valign=bottom>_textpvyh_</td></tr>
195</table>
196
197<p>_texttfsiw_
198<div class="divbar">&nbsp;</div>
199<p>_textadab_
200<p>_textwyar_
201<p><center>
202_collectorbar_
203</center>
204
205</td></tr>
206</table></center>
207}
208
209
210#######################################################################
211# info (Collection information page)
212#######################################################################
213
214_infoscriptextra_ {
215function check\_submit (gotopage) \{
216  var form = document.collectorform;
217  if (form.bc1fullname.value.match(/^\\s*$/))
218  \{
219    alert("_textcnmbs_");
220    form.bc1fullname.focus();
221    return;
222  \}
223  else if (form.bc1contactemail.value.match(/^\\s*$/))
224  \{     
225    alert("_texteambs_");
226    form.bc1contactemail.focus();
227    return;
228  \}
229  else if (!form.bc1contactemail.value.match(/^([^@]+)@(.+)$/))
230  \{
231    alert("_textpsea_");
232    form.bc1contactemail.focus();
233    return;
234  \}
235  else if (form.bc1aboutdesc.value.match(/^\\s*$/))
236  \{
237    alert("_textdocmbs_");
238    form.bc1aboutdesc.focus();
239    return;
240  \}
241  form.p.value = gotopage;
242  form.submit();
243\}
244}
245
246_infocontent_ {
247<form name="collectorform" method=post action="_gwcgi_">
248<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
249<input type=hidden name="p" value="_cgiargpAttrsafe_">
250<input type=hidden name="bc1infochanged" value="0">
251
252<center>
253<table width=_pagewidth_>
254<tr><td>
255<div class="divbar">&nbsp;</div>
256<center>
257<h2>_textinfo_</h2>
258</center>
259<div class="divbar">&nbsp;</div>
260
261<p>_textwcanc_
262<h4>_texttfc_</h4>
263<input type="text" name="bc1fullname" value="_cgiargbc1fullnameAttrsafe_"
264onChange="document.collectorform.bc1infochanged.value=1;") size=72>
265<br>_texttctiasp_
266<h4>_textcea_</h4>
267<input type="text" name="bc1contactemail" value="_cgiargbc1contactemailAttrsafe_"
268onChange="document.collectorform.bc1infochanged.value=1;" size=72>
269<br>
270_textteas_
271
272<h4>_textatc_</h4>
273<textarea name="bc1aboutdesc"  cols=72 rows=6 wrap=physical
274onChange="document.collectorform.bc1infochanged.value=1;">
275_cgiargbc1aboutdescHtmlsafe_
276</textarea>
277<br>_texttiasd_
278
279<div class="divbar">&nbsp;</div>
280
281<p>_textypits_
282<p><center>
283_collectorbar_
284</center>
285
286</td></tr>
287</table></center>
288
289</form>
290}
291
292
293#######################################################################
294# srce (Source data page)
295#######################################################################
296
297# _fullnamemenu is set from within the server. If it's empty there are
298# no valid collections
299_fullnamemenu_ {}
300
301_srcescriptextra_ {
302var selectedindex = _selectedindex_;
303
304function check\_submit (gotopage) \{
305  var form = document.collectorform;
306  form.p.value = gotopage;
307  form.bc1fromsrce.value = "1";
308  form.submit();
309\}
310
311function menuchange () \{
312  var form = document.collectorform;
313  var warnlist = new Array (_warnindex_);
314
315  if (warnlist[form.bc1clonecol.selectedIndex] == 1) \{
316    alert ("The collection you are cloning has a non-standard input file\\n" +
317           "format, and/or uses metadata specified in auxiliary files.  If your\\n" +
318       "new input lacks this information, some browsing facilities may not\\n" +
319           "work properly.");
320  \}
321
322  if (form.bc1clonecol.selectedIndex == 0) \{
323    form.bc1clone.value = "0";
324  \} else \{
325    form.bc1clone.value = "1";
326  \}
327
328  if (form.bc1clonecol.selectedIndex == selectedindex) \{
329    form.bc1clonechanged.value = "0";
330  \} else \{
331    form.bc1clonechanged.value = "1";
332  \}
333\}
334
335function more () \{
336  var form = document.collectorform;
337  form.bc1inputnum.value = parseInt(form.bc1inputnum.value) + 3;
338  form.p.value = "srce";
339  if (!form.action.match(/sources$/)) \{
340    form.action += "#sources";
341  \}
342  form.submit();
343\}
344}
345
346_srcenew_ {
347<center>
348<h2>_textsrce_</h2>
349</center>
350<div class="divbar">&nbsp;</div>
351_If_("_badsources_" eq "1",_srcebadsources_,_srcenewcontent_)
352}
353
354_srcenewcontent_ {
355_textymbyco_
356<p>_textbtco_
357_fullnamemenu_
358<div class="divbar">&nbsp;</div>
359}
360
361_srceappend_ {
362<center>
363<h2>_textand_</h2>
364</center>
365<div class="divbar">&nbsp;</div>
366<h4>_textad_</h4>
367_texttftysb_
368}
369
370_srcecontent_ {
371<form name="collectorform" method=post action="_gwcgi_">
372<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
373<input type=hidden name="p" value="_cgiargpAttrsafe_">
374<input type=hidden name="bc1fromsrce" value="0">
375<input type=hidden name="bc1clonechanged" value="0">
376<input type=hidden name="bc1clone" value="_cgiargbc1cloneAttrsafe_">
377<input type=hidden name="bc1inputnum" value="_cgiargbc1inputnumAttrsafe_">
378
379<center>
380<table width=_pagewidth_>
381<tr><td>
382<div class="divbar">&nbsp;</div>
383_If_("_cgiargbc1esrce_" eq "1",_srceappend_,_srcenew_)
384
385<a name="sources"></a>
386<h4>_textis_</h4>
387_sourcelist_
388
389_textddd1_
390<div class="divbar">&nbsp;</div>
391_textddd2_
392<p><center>
393_collectorbar_
394</center>
395
396</td></tr>
397</table></center>
398
399</form>
400}
401
402
403#######################################################################
404# conf (Configure collection page)
405#######################################################################
406
407_confscriptextra_ {
408var changed = 0;
409
410function check\_submit (gotopage) \{
411  var form = document.collectorform;
412  form.bc1cfgchanged.value = changed;
413  form.p.value = gotopage;
414  form.submit();
415\}
416
417function reset\_button () \{
418  document.collectorform.reset();
419  changed = 0;
420\}
421}
422
423_confcontent_ {
424<form name="collectorform" method=post action="_gwcgi_">
425<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
426<input type=hidden name="p" value="_cgiargpAttrsafe_">
427<input type=hidden name="bc1cfgchanged" value="_cgiargbc1cfgchangedAttrsafe_">
428
429<center>
430<table width=_pagewidth_>
431<tr><td>
432<div class="divbar">&nbsp;</div>
433<center>
434<h2>_textconf_</h2>
435</center>
436<div class="divbar">&nbsp;</div>
437_textconf1_
438
439<p><textarea name="cfgfile" cols=72 rows=18 wrap=off onChange="changed=1;">
440_cfgfile_
441</textarea>
442<table><tr valign=top>
443<td><a href="javascript:reset\_button();">_iconstop_</a></td>
444<td><a href="javascript:reset\_button();">_textreset_</a></td>
445</tr></table>
446
447<p><center>
448_collectorbar_
449</center>
450
451</td></tr>
452</table></center>
453
454</form>
455}
456
457
458#######################################################################
459# bild (main frameset for build page)
460#######################################################################
461
462_bildcontent_ {
463<html>
464<head>
465<script>
466<!--
467function check\_submit (gotopage) \{
468  var form = document.collectorform;
469  form.p.value = gotopage;
470  form.submit();
471\}
472// -->
473</script>
474</head>
475
476<form name="collectorform" method=post action="_gwcgi_">
477<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
478<input type=hidden name="p" value="_cgiargpAttrsafe_">
479
480<frameset rows="*,160" border=0>
481  <noframes><body bgcolor="#ffffff">
482  <p>You must have a frame enabled browser to obtain feedback
483  on how the building process is progressing. The collection <i>will</i>
484  continue to build as normal however.
485
486  <table>
487  <tr valign=center><td>
488  To stop the building process at any time, click here.
489  <br>The collection you are working on will remain intact.
490  </td>
491  <td><input type="submit" value="stop building"></td>
492  </table>
493
494  </body>
495  </noframes>
496  <frame src="_gwcgi_?e=_compressedoptions_&p=bildframe1">
497  <frame src="_gwcgi_?e=_compressedoptions_&p=bildstatus&c=_cgiargbc1dirnameUrlsafe_">
498</frameset>
499</html>
500}
501
502#######################################################################
503# bildframe1
504#######################################################################
505
506# header overridden to allow base target to be set
507# also no page banner to maximise what we can fit in the frame without scrolling
508_bildframe1header_ {_cgihead_
509<html>
510<head>
511<base target=_top>
512<title>_pagetitle_</title>
513_globalscripts_
514</head>
515<body class="bgimage">
516_startspacer_
517}
518_bildframe1header_[v=1] {_cgihead_
519<html>
520<head>
521<base target=_top>
522<title>_pagetitle_</title>
523_globalscripts_
524</head>
525<body class="bgimage">
526}
527_bildframe1scriptextra_ {}
528_bildframe1content_ {
529<form name="collectorform" method=post action="_gwcgi_">
530<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
531<input type=hidden name="p" value="bildcancel">
532
533<center>
534<table width=_pagewidth_>
535<tr><td>
536<div class="divbar">&nbsp;</div>
537<center>
538<h2>_textbild_</h2>
539</center>
540<div class="divbar">&nbsp;</div>
541<p>
542_textbild1_
543<p>
544
545<table>
546<tr valign=center><td>
547_textbild2_
548</td>
549<td><input type="submit" value="_textstopbuild_"></td>
550</table>
551
552<p>
553_textbild3_
554</td></tr>
555</table></center>
556</form>
557}
558
559
560#######################################################################
561# bildcancel
562#######################################################################
563
564_bildcancelscriptextra_ {
565function check\_submit (gotopage) \{
566  var form = document.collectorform;
567  form.p.value = gotopage;
568  form.submit();
569\}
570}
571_bildcancelcontent_ {
572<form name="collectorform" method=post action="_gwcgi_">
573<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
574<input type=hidden name="p" value="_cgiargpAttrsafe_">
575
576</form>
577<center>
578<table width=_pagewidth_>
579<tr><td>
580<div class="divbar">&nbsp;</div>
581<center>
582<h2>_textbuildcancelled_</h2>
583</center>
584<div class="divbar">&nbsp;</div>
585<p>
586_textbildcancel1_
587<p><center>
588_collectorbar_
589</center>
590
591</td></tr>
592</table></center>
593}
594
595
596#######################################################################
597# bildstatus
598#######################################################################
599
600# special header for status page
601_bildstatusheader_ {_cgihead_
602_htmlhead_(class="bgimage" onLoad="initialize();")_startspacer_
603}
604_bildstatusheader_[v=1] {_cgihead_
605_htmlhead_(onLoad="initialize();")
606}
607
608_bildstatusscriptextra_ {
609var timer = 5;
610function initialize() \{
611  setTimeout("count_down()",1000);
612\}
613
614function count_down() \{
615  if (timer==0) \{
616    window.status = "";
617    document.collectorform.submit();
618  \} else \{
619    if (timer==1) \{
620    window.status = "_textbsupdate1_";
621    \} else \{
622    window.status = "_textbsupdate2_ "+timer+" _textseconds_";
623    \}
624    timer--;
625    setTimeout("count_down()",1000);
626  \}   
627\}
628}
629
630_bildstatuscontent_ {
631<form name="collectorform" method=post action="_gwcgi_">
632<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
633<center>
634<table width=_pagewidth_>
635<tr><td>
636_statusline_
637</td></tr>
638</table></center>
639</form>
640}
641
642
643#######################################################################
644# bilddone
645#######################################################################
646
647_bilddoneheader_ {_cgihead_
648_htmlhead_(class="bgimage")_startspacer_
649}
650_bilddonescriptextra_ {}
651_bilddonecontent_ {
652<center>
653<table width=_pagewidth_>
654<tr><td>
655<p>_textbildsuc_
656
657<p>_textviewbildsummary_
658
659<p><center>
660_collectorbar_
661</center>
662
663</td></tr>
664</table></center>
665}
666
667
668#######################################################################
669# bildfail
670#######################################################################
671
672_bildfailheader_ {_cgihead_
673_htmlhead_(class="bgimage")_startspacer_
674}
675_bildfailscriptextra_ {
676function check\_submit (gotopage) \{
677  var form = document.collectorform;
678  form.p.value = gotopage;
679  form.submit();
680\}
681}
682_bildfailcontent_ {
683<form name="collectorform" method=post action="_gwcgi_">
684<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
685<input type=hidden name="p" value="_cgiargpAttrsafe_">
686
687</form>
688<center>
689<table width=_pagewidth_>
690<tr><td>
691_textfailmsg_
692</td></tr>
693</table></center>
694}
695
696# _textfailmsg_ will be set to one of the following macros from within
697# the server
698
699_textfailmsg1_ {
700_textfailmsg11_
701<p><center>
702_collectorbar_
703</center>
704}
705
706_textfailmsg6_ {_textfailmsg1_}
707
708_textfailmsg2_ {
709_textfailmsg21_
710<p>_textblcont_
711<p>_faillog_
712<p>_texttryagain_
713}
714
715_textfailmsg3_ {
716_textfailmsg31_
717<p>_textblcont_
718<p>_faillog_
719<p>_texttryagain_
720}
721
722_textfailmsg4_ {
723_textfailmsg41_
724<p>_textblcont_
725<p>_faillog_
726}
727
728_textfailmsg5_ {_textfailmsg4_}
729
730_textfailmsg7_ {
731_textfailmsg71_
732<p>_texttryagain_
733}
734
735#######################################################################
736# Error and message pages
737#######################################################################
738
739_messagehead_ {
740<form name="collectorform" method=post action="_gwcgi_">
741<input type=hidden name="e" value="_decodedcompressedoptionsAttrsafe_">
742
743<center>
744<table width=_pagewidth_>
745<tr><td>
746<div class="divbar">&nbsp;</div>
747}
748
749_messagefoot_ {
750<p>
751<a href="javascript:document.collectorform.submit();">_textretcoll_</a>
752<div class="divbar">&nbsp;</div>
753</td></tr>
754</table></center>
755</form>
756}
757
758_messagefootnolink_ {
759<div class="divbar">&nbsp;</div>
760</td></tr>
761</table></center>
762</form>
763}
764
765_delpermissioncontent_ {
766_messagehead_
767<p>
768_textdelperm_
769_messagefoot_
770}
771
772_delinvalidcontent_ {
773_messagehead_
774<p>
775_textdelinv_
776_messagefoot_
777}
778
779_delsuccesscontent_ {
780_messagehead_
781<p>
782_textdelsuc_
783_messagefoot_
784}
785
786_clonefailcontent_ {
787_messagehead_
788<input type=hidden name="bc1clone" value="0">
789<p>_textclonefail_
790_messagefoot_
791}
792
793_genericcontent_ {
794_messagehead_
795<p>_textcolerr_
796_messagefoot_
797}
798
799_tmpfailcontent_ {
800_messagehead_
801<p>
802_texttmpfail_
803_messagefoot_
804}
805
806_mkcolfailcontent_ {
807_messagehead_
808<p>_textmkcolfail_
809_messagefoot_
810}
811
812_nocollectioncontent_ {
813_messagehead_
814<p>_textnocontent_
815<br><a href="_httppagecollector_">_textrestart_</a>
816<p>
817_messagefootnolink_
818}
819
820_reloaderrorcontent_ {
821_messagehead_
822<p>_textreloaderror_
823<br><a href="_httppagecollector_">_textrestart_</a>
824<p>
825_messagefootnolink_
826}
827
828_exptscriptextra_ {}
829
830_exptsuccesscontent_ {
831_messagehead_
832<input type=hidden name=p value=existing>
833<p>_textexptsuc_
834_messagefoot_
835}
836
837_exptfailcontent_ {
838_messagehead_
839<input type=hidden name=p value=existing>
840_textexptfail_
841_messagefoot_
842}
843
844
845###################################################
846## text macros that are defined by another package
847###################################################
848
849_textbild_ {_wizard:textbild_}
850_textview_ {_wizard:textview_}
851_textbildsuc_ {_wizard:textbildsuc_}
852_textviewbildsummary_ {_wizard:textviewbildsummary_}
853
854_textbild1_ {_wizard:textbild1_}
855
856_textbild2_ {_wizard:textbild2_}
857
858_textstopbuild_ {_wizard:textstopbuild_}
859
860_textbild3_ {_wizard:textbild3_}
861
862_textbuildcancelled_ {_wizard:textbuildcancelled_}
863
864_textbildcancel1_ {_wizard:textbildcancel1_}
865
866
867_textbsupdate1_ {_wizard:textbsupdate1_}
868_textbsupdate2_ {_wizard:textbsupdate2_}
869_textseconds_ {_wizard:textseconds_}
870
871
872_textfailmsg11_ {_wizard:textfailmsg11_}
873_textfailmsg21_ {_wizard:textfailmsg21_}
874_textblcont_ {_wizard:textblcont_}
875
876_textfailmsg31_ {_wizard:textfailmsg31_}
877_textfailmsg41_ {_wizard:textfailmsg41_}
878_textfailmsg71_ {_wizard:textfailmsg71_}
879
Note: See TracBrowser for help on using the browser.