port common.mrc changes to .in file
[mharc.git] / lib / common.mrc
1 <!-- $Id: common.mrc.in.dist,v 1.17 2002/07/23 05:51:46 ehood Exp $ -->
2 <!-- ================================================================== -->
3 <!-- MHonArc Resource File for Mail Archives -->
4 <!-- Description:
5 This is the main resource file for the mail archives.
6 it contains all the common formatting characteristics
7 used across archives. Archive specific settings can
8 be set via command-line options the bin/web-archive
9 program.
10 -->
11 <!-- ================================================================== -->
12
13 <!-- CONLEN should only be set of Content-Length is accurate for the
14 system. Mail delivery under Solaris sets it properly.
15 XXX: Should probably move this to command-line invocation.
16 -->
17 <ConLen>
18
19 <!-- Added POSIXSTRFTIME so that we can print out timezone specs for
20 archive generation (RT #244804) - baughj, 2005.06.16
21 -->
22 <POSIXSTRFTIME>
23
24 <!-- Added for rt#106039 -- bernie -->
25 <!-- And #592561 and #592561, importantly also adding the html header line below in IdxPgBegin and MsgPgBegin -- ward -->
26 <TextEncode>
27 utf-8; MHonArc::UTF8::to_utf8; MHonArc/UTF8.pm
28 </TextEncode>
29
30 <-- With data translated to UTF-8, it simplifies CHARSETCONVERTERS -->
31 <CharsetConverters override>
32 default; mhonarc::htmlize
33 </CharsetConverters>
34
35 <-- Need to also register UTF-8-aware text clipping function -->
36 <TextClipFunc>
37 MHonArc::UTF8::clip; MHonArc/UTF8.pm
38 </TextClipFunc>
39
40 <!-- ================================================================== -->
41 <!-- Custom Variable Defintions -->
42 <!-- ================================================================== -->
43 <!--
44 The following variables defined by the web-archive program
45 and not here:
46 $ALL-LISTS-URL$ URL to all archive listing.
47 $CUR-PERIOD$ Current period in YYYY or YYYY-MM format.
48 $LIST-NAME$ Archive/list name and search index name.
49 $LIST-TITLE$ Archive/list title: generally equals
50 $LIST-NAME$, but can be different like for
51 CVS commit archives.
52 $PNAV-CGI$ URL to period navigation cgi program.
53 $SEARCH-CGI$ URL to search cgi program.
54 -->
55
56 <SPAMMODE>
57
58 <AddressModifyCode>
59 $_ = 'address@hidden';
60 </AddressModifyCode>
61
62 <!-- Variables representing period links for index pages.
63 -->
64 <DefineVar chop>
65 PREV-PERIOD-LABEL
66 Prev&nbsp;Period
67 </DefineVar>
68
69 <DefineVar chop>
70 NEXT-PERIOD-LABEL
71 Next&nbsp;Period
72 </DefineVar>
73
74 <DefineVar chop>
75 PREV-PERIOD-LINK
76 [<a href="$PNAV-CGI$?a=$LIST-NAME$&amp;m=$CUR-PERIOD$&amp;d=prev">$PREV-PERIOD-LABEL$</a>]
77 </DefineVar>
78
79 <DefineVar chop>
80 NEXT-PERIOD-LINK
81 [<a href="$PNAV-CGI$?a=$LIST-NAME$&amp;m=$CUR-PERIOD$&amp;d=next">$NEXT-PERIOD-LABEL$</a>]
82 </DefineVar>
83
84 <DefineVar chop>
85 TPREV-PERIOD-LINK
86 [<a href="$PNAV-CGI$?a=$LIST-NAME$&amp;m=$CUR-PERIOD$&amp;d=prev&amp;t=t">$PREV-PERIOD-LABEL$</a>]
87 </DefineVar>
88
89 <DefineVar chop>
90 TNEXT-PERIOD-LINK
91 [<a href="$PNAV-CGI$?a=$LIST-NAME$&amp;m=$CUR-PERIOD$&amp;d=next&amp;t=t">$NEXT-PERIOD-LABEL$</a>]
92 </DefineVar>
93
94 <!-- Variable representing markup of search form.
95 -->
96 <DefineVar>
97 SEARCH-FORM
98 <form method="get" action="$SEARCH-CGI$">
99 <input type="text" name="query" size="30">
100 <input type="submit" name="submit" value="Search">
101 <input type="hidden" name="idxname" value="$LIST-NAME$">
102 <a href="$SEARCH-CGI$?idxname=$LIST-NAME$">Advanced</a>
103 </form>
104 </DefineVar>
105
106 <DefineVar chop>
107 THREAD-IDX-LINK
108 [<b><a href="$TIDXFNAME$">Thread&nbsp;Index</a></b>]
109 </DefineVar>
110
111 <DefineVar chop>
112 DATE-IDX-LINK
113 [<b><a href="$IDXFNAME$">Date&nbsp;Index</a></b>]
114 </DefineVar>
115
116 <!-- Main index page nav links if MULTIPG is ever used.
117 This variable could be reference by list-specific resource files
118 if MULTIPG is activated.
119 -->
120 <DefineVar>
121 MAIN-PAGE-LINKS
122 <hr size=1 noshade>
123 <table width="100%" border=0 cellpadding=0 cellspacing=0>
124 <tr align="center">
125 <th colspan=4><small>Page $PAGENUM$ of $NUMOFPAGES$</small></th>
126 <tr>
127 <td align="left"
128 ><small>[<a href="$PG(FIRST)$">First&nbsp;Page</a>]</small></td>
129 <td align="right"><small>$PGLINK(PREV)$</small></td>
130 <td align="left"><small>$PGLINK(NEXT)$</small></td>
131 <td align="right"><small>[<a href="$PG(LAST)$">Last&nbsp;Page</a>]</small></td>
132 </tr>
133 </table>
134 <hr size=1 noshade>
135 </DefineVar>
136
137 <!-- Thread index page nav links if MULTIPG ever used.
138 This variable could be reference by list-specific resource files
139 if MULTIPG is activated.
140 -->
141 <DefineVar>
142 THREAD-PAGE-LINKS
143 <hr size=1 noshade>
144 <table width="100%" border=0 cellpadding=0 cellspacing=0>
145 <tr align="center">
146 <th colspan=4><small>Page $PAGENUM$ of $NUMOFPAGES$</small></th>
147 <tr>
148 <td align="left"
149 ><small>[<a href="$PG(TFIRST)$">First&nbsp;Page</a>]</small></td>
150 <td align="right"><small>$PGLINK(TPREV)$</small></td>
151 <td align="left"><small>$PGLINK(TNEXT)$</small></td>
152 <td align="right"><small>[<a href="$PG(TLAST)$">Last&nbsp;Page</a>]</small></td>
153 </tr>
154 </table>
155 <hr size=1 noshade>
156 </DefineVar>
157
158 <!-- ================================================================== -->
159 <!-- General Resources -->
160 <!-- ================================================================== -->
161
162 <!-- Since we specify resource settings everytime, no need to save
163 them in archive database.
164 -->
165 <NoSaveResources>
166
167 <!-- Arguments to content filters.
168 CAUTION: Verify options against security concerns and make
169 any changes accordingly.
170 -->
171 <MIMEArgs override>
172 m2h_external::filter; inline useicon
173 m2h_text_plain::filter; attachcheck quote maxwidth=80
174 m2h_text_html::filter; notitle
175 </MIMEArgs>
176
177 <!-- Stricter MSGSEP. Not important if CONLEN active.
178 XXX: Should this strict setting exist or should we just use
179 MHonArc's default value for MSGSEP as the default?
180 -->
181 <MsgSep>
182 ^From \S+\s+\S+\s+\S+\s+\d+\s+\d+:\d+:\d+\s+\d+
183 </MsgSep>
184
185 <!-- Icons settings copied from documentation. Works with
186 Apache server. Icons not used in index, but attachment
187 filter is given useicon argument. If Apache is not used,
188 or the icon URLs are different, this resource needs to
189 be changed or the useicon argument removed from
190 m2h_external::filter.
191 -->
192 <Icons>
193 application/*;[20x22]/icons/generic.png
194 application/msword;[20x22]/icons/layout.png
195 application/postscript;[20x22]/icons/ps.png
196 application/rtf;[20x22]/icons/layout.png
197 application/x-csh;[20x22]/icons/script.png
198 application/x-dvi;[20x22]/icons/dvi.png
199 application/x-gtar;[20x22]/icons/tar.png
200 application/x-gzip;[20x22]/icons/compressed.png
201 application/x-ksh;[20x22]/icons/script.png
202 application/x-latex;[20x22]/icons/tex.png
203 application/octet-stream;[20x22]/icons/binary.png
204 application/x-patch;[20x22]/icons/patch.png
205 application/pdf;[20x22]/icons/pdf.png
206 application/x-script;[20x22]/icons/script.png
207 application/x-sh;[20x22]/icons/script.png
208 application/x-tar;[20x22]/icons/tar.png
209 application/x-tex;[20x22]/icons/tex.png
210 application/x-zip-compressed;[20x22]/icons/compressed.png
211 application/zip;[20x22]/icons/compressed.png
212 audio/*;[20x22]/icons/sound1.png
213 chemical/*;[20x22]/icons/sphere2.png
214 image/*;[20x22]/icons/image2.png
215 message/external-body;[20x22]/icons/link.png
216 multipart/*;[20x22]/icons/layout.png
217 text/*;[20x22]/icons/text.png
218 video/*;[20x22]/icons/movie.png
219 */*;[20x22]/icons/generic.png
220 </Icons>
221
222 <!-- ================================================================== -->
223 <!-- Main Index -->
224 <!-- ================================================================== -->
225
226 <!-- Set sorting order of main index pages: Reverse chronological. -->
227 <Sort>
228 <Reverse>
229
230 <!-- Show dates in local time. -->
231 <UseLocalTime>
232
233 <!-- Make date index the default page for the archive. -->
234 <IdxFName>
235 index.html
236 </IdxFName>
237
238 <MsgLocalDateFmt>
239 %B %d, %Y
240 </MsgLocalDateFmt>
241
242 <IdxPgBegin>
243 <!doctype html public "-//W3C//DTD HTML//EN">
244 <html>
245 <head>
246 <title>$IDXTITLE$</title>
247 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
248 <style> .nowrap { white-space: nowrap } </style>
249 </head>
250 <body>
251 <center>
252 <em>Archives are refreshed every 30 minutes - for details, please visit
253 <a href="http://lists.gnu.org/archive/html/">the main index</a>.</em>
254 <br>
255 You can also <a href="ftp://lists.gnu.org/$LIST-NAME$/">download the archives in mbox format</a>.
256 <p>
257 <table border=0 cellspacing=2 cellpadding=0 bgcolor="#000000">
258 <tr><td><table border=0 bgcolor="#FFFFCC">
259 <tr><td><big><big><b>$IDXTITLE$</b></big></big></td></tr></table></tr></table>
260 <div class="nowrap">
261 <small>$THREAD-IDX-LINK$[<a href="../"
262 >Top</a>][<a href="$ALL-LISTS-URL$">All Lists</a>][<a
263 href="//lists.gnu.org/mailman/listinfo/$LIST-NAME$">$LIST-NAME$ info page</a>]</small>
264 </div>
265 $SEARCH-FORM$
266 </center>
267 </IdxPgBegin>
268
269 <ListBegin>
270 <table width="100%">
271 <tr valign="bottom">
272 <td align="left">$PREV-PERIOD-LINK$</td>
273 <td align="center"><small
274 >Last Modified: $MSGLOCALDATE(LAST;%a %b %d %Y %H:%M:%S %z)$<br>
275 Messages in reverse chronological order</small></td>
276 <td align="right">$NEXT-PERIOD-LINK$</td>
277 </tr>
278 </table>
279 <hr size="1" noshade>
280 <ul>
281 </ListBegin>
282
283 <!-- Date listing is done in day groups with the each day listed in bold
284 and messages for that date listed under it.
285 -->
286 <DayBegin>
287 <li><strong>$MSGLOCALDATE$</strong>
288 <ul>
289 </DayBegin>
290
291 <DayEnd>
292 </ul></li>
293 </DayEnd>
294
295 <LITemplate>
296 <li>$SUBJECT$, <i>$FROMNAME$</i>, <tt>$MSGLOCALDATE(CUR;%H:%M)$</tt></li>
297 </LITemplate>
298
299 <ListEnd>
300 </ul>
301 <hr size="1" noshade>
302 <table width="100%">
303 <tr valign="bottom">
304 <td align="left">$PREV-PERIOD-LINK$</td>
305 <td align="right">$NEXT-PERIOD-LINK$</td>
306 </tr>
307 </table>
308 </ListEnd>
309
310 <!-- ================================================================== -->
311 <!-- Thread Index -->
312 <!-- ================================================================== -->
313
314 <!-- Reverse thread order. -->
315 <TReverse>
316
317 <!-- Show no indicator of subject-based thread detection since most
318 people do not care.
319 NOTE: The blank line is important!
320 -->
321 <TSubjectBeg>
322
323 </TSubjectBeg>
324
325 <TIdxPgBegin>
326 <!doctype html public "-//W3C//DTD HTML//EN">
327 <html>
328 <head>
329 <title>$TIDXTITLE$</title>
330 </head>
331 <body>
332 <center>
333 <em>Archives are refreshed every 30 minutes - for details, please visit <a
334 href="http://lists.gnu.org/archive/html/">the main index</a>.</em>
335 <br>
336 You can also <a href="ftp://lists.gnu.org/$LIST-NAME$/">download the archives in mbox format</a>.
337 <p>
338 <table border=0 cellspacing=2 cellpadding=0 bgcolor="#000000">
339 <tr><td><table border=0 bgcolor="#FFFFCC">
340 <tr><td><big><big><b>$TIDXTITLE$</b></big></big></td></tr></table></tr></table>
341 <div class="nowrap">
342 <small
343 >$DATE-IDX-LINK$[<a href="../"
344 >Top</a>][<a href="$ALL-LISTS-URL$">All Lists</a>]</small>
345 </div>
346 $SEARCH-FORM$
347 </center>
348 </TIdxPgBegin>
349
350 <THead>
351 <table width="100%">
352 <tr valign="bottom">
353 <td align="left">$TPREV-PERIOD-LINK$</td>
354 <td align="center"><small
355 >Last Modified: $MSGLOCALDATE(LAST;%a %b %d %Y %H:%M:%S %z)$<br>
356 Threads in reverse chronological order</small></td>
357 <td align="right">$TNEXT-PERIOD-LINK$</td>
358 </tr>
359 </table>
360 <hr size="1" noshade>
361 <ul>
362 </THead>
363
364 <TTopBegin>
365 <li><b>$SUBJECT$</b>, <i>$FROMNAME$</i>, <tt>$MSGLOCALDATE(CUR;%Y/%m/%d)$</tt>
366 </TTopBegin>
367
368 <TLiTxt>
369 <li><b>$SUBJECT$</b>, <i>$FROMNAME$</i>, <tt>$MSGLOCALDATE(CUR;%Y/%m/%d)$</tt>
370 </TLiTxt>
371
372 <TSingleTxt>
373 <li><b>$SUBJECT$</b>, <i>$FROMNAME$</i>, <tt>$MSGLOCALDATE(CUR;%Y/%m/%d)$</tt>
374 </TSingleTxt>
375
376 <TFoot>
377 </ul>
378 <hr size="1" noshade>
379 <table width="100%">
380 <tr valign="bottom">
381 <td align="left">$TPREV-PERIOD-LINK$</td>
382 <td align="right">$TNEXT-PERIOD-LINK$</td>
383 </tr>
384 </table>
385 </TFoot>
386
387 <!-- ================================================================== -->
388 <!-- Message Pages -->
389 <!-- ================================================================== -->
390
391 <ModTime>
392
393 <!-- We clip the subject title to 72 characters to prevent ugly pages
394 due to very long subject lines. The full subject text will still
395 be shown in the formatted message header.
396 -->
397 <MsgPgBegin>
398 <!doctype html public "-//W3C//DTD HTML//EN">
399 <html>
400 <head>
401 <title>$SUBJECTNA:72$</title>
402 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
403 </head>
404 <body>
405 <center>
406 <table border=0 cellspacing=2 cellpadding=0 bgcolor="#000000">
407 <tr><td><table border=0 bgcolor="#FFFFCC">
408 <tr><td><big><b>$LIST-TITLE$</b></big></td></tr></table></tr></table>
409 <div class="nowrap">
410 <small>[<a href="../"
411 >Top</a>][<a href="$ALL-LISTS-URL$">All Lists</a>]</small>
412 </div>
413 $SEARCH-FORM$
414 </center>
415 </MsgPgBegin>
416
417 <TopLinks>
418 <hr>
419 $BUTTON(PREV)$$BUTTON(NEXT)$$BUTTON(TPREV)$$BUTTON(TNEXT)$[<a
420 href="$IDXFNAME$#$MSGNUM$">Date Index</a>][<a
421 href="$TIDXFNAME$#$MSGNUM$">Thread Index</a>]
422 </TopLinks>
423
424 <SubjectHeader>
425 <h2>$SUBJECTNA:72$</h2>
426 <hr>
427 <table border=0>
428 <tbody>
429 <tr>
430 <td align="right" valign="top">
431 <b>From</b>: </td>
432 <td align="left">
433 $FROMNAME$</td>
434 </tr>
435 </SubjectHeader>
436
437 <!-- Format message header in a table. -->
438
439 <FieldOrder>
440 subject
441 date
442 user-agent
443 </FieldOrder>
444
445 <Fieldsbeg>
446
447 </FieldsBeg>
448
449 <LabelBeg>
450 <tr>
451 <td align="right" valign="top">
452 </LabelBeg>
453
454 <LabelEnd>
455 : </td>
456 </LabelEnd>
457
458 <FldBeg>
459 <td align="left">
460 </FldBeg>
461
462 <FldEnd>
463 </td>
464 </tr>
465 </FldEnd>
466
467 <FieldsEnd>
468 </tbody>
469 </table>
470 </FieldsEnd>
471
472 <LabelStyles>
473 -default-:b
474 </LabelStyles>
475
476 <!-- Disable explicit follow-up/references section and use $TSLICE$ instead.
477 -->
478 <NoFolRefs>
479
480 <!-- Set TSLICE resource to represent default $TSLICE$ behavior and
481 mainly to set the maximum message page update ranges when messages
482 are added to the archive. I.e. The before and after values
483 should represent the largest before and after values we will use
484 with $TSLICE$.
485 -->
486 <TSlice>
487 10:10:1
488 </TSlice>
489
490 <!-- We set up slice formatting so current message in thread is not
491 hyperlinked and "greyed out". We could probably use CSS to
492 do this, but <font> seems to still work with most popular
493 graphical browsers.
494 -->
495 <TSliceBeg>
496 <ul>
497 </TSliceBeg>
498
499 <TSliceTopBeginCur>
500 <li><font color="#666666"><strong>$SUBJECTNA$</strong>,
501 <em>$FROMNAME$</em></font>&nbsp;<b>&lt;=</b>
502 </TSliceTopBeginCur>
503
504 <TSliceLiTxtCur>
505 <li><font color="#666666"><strong>$SUBJECTNA$</strong>,
506 <em>$FROMNAME$</em></font>&nbsp;<b>&lt;=</b>
507 </TSliceLiTxtCur>
508
509 <TSliceSingleTxtCur>
510 <li><font color="#666666"><strong>$SUBJECTNA$</strong>,
511 <em>$FROMNAME$</em></font>&nbsp;<b>&lt;=</b>
512 </TSliceSingleTxtCur>
513
514 <TSliceEnd>
515 </ul>
516 </TSliceEnd>
517
518 <!-- Modify end of message body to include thread slice. We also
519 include convenient next/prev-in-thread links since scanning
520 slice can be inconvenient for simple thread reading.
521 -->
522 <MsgBodyEnd>
523 <hr>
524 <form method="post" action="/mp/yyz.py" enctype="multipart/form-data">
525 <input type="hidden" name="a" value="$FROMADDRNAME$">
526 <input type="hidden" name="b" value="$SUBJECTNA$">
527 <input type="hidden" name="d" value="$MSGID$">
528 <input type="hidden" name="c" value="$FROMADDRDOMAIN$">
529 <center>reply via email to<br><input type="submit" value=" $FROMNAME$ "></center>
530 </form>
531 <hr>
532 <table width="100%">
533 <tr><td align="left">$BUTTON(TPREVIN)$</td>
534 <td align="center"><b>Current Thread</b></td>
535 <td align="right">$BUTTON(TNEXTIN)$</td></tr></table>
536 $TSLICE$
537 <hr>
538 </MsgBodyEnd>