utf 8 on index pages, rt 1443213
[mharc.git] / lib / common.mrc.in
CommitLineData
01c223d0
BOFG
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
8979e13e
IK
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>
27utf-8; MHonArc::UTF8::to_utf8; MHonArc/UTF8.pm
28</TextEncode>
29
30<-- With data translated to UTF-8, it simplifies CHARSETCONVERTERS -->
31<CharsetConverters override>
32default; mhonarc::htmlize
33</CharsetConverters>
34
35<-- Need to also register UTF-8-aware text clipping function -->
36<TextClipFunc>
37MHonArc::UTF8::clip; MHonArc/UTF8.pm
38</TextClipFunc>
39
01c223d0
BOFG
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>
65PREV-PERIOD-LABEL
66Prev&nbsp;Period
67</DefineVar>
68
69<DefineVar chop>
70NEXT-PERIOD-LABEL
71Next&nbsp;Period
72</DefineVar>
73
74<DefineVar chop>
75PREV-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>
80NEXT-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>
85TPREV-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>
90TNEXT-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>
97SEARCH-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>
107THREAD-IDX-LINK
108[<b><a href="$TIDXFNAME$">Thread&nbsp;Index</a></b>]
109</DefineVar>
110
111<DefineVar chop>
112DATE-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>
121MAIN-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>
142THREAD-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>
172m2h_external::filter; inline useicon
173m2h_text_plain::filter; attachcheck quote maxwidth=80
174m2h_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>
193application/*;[20x22]/icons/generic.png
194application/msword;[20x22]/icons/layout.png
195application/postscript;[20x22]/icons/ps.png
196application/rtf;[20x22]/icons/layout.png
197application/x-csh;[20x22]/icons/script.png
198application/x-dvi;[20x22]/icons/dvi.png
199application/x-gtar;[20x22]/icons/tar.png
200application/x-gzip;[20x22]/icons/compressed.png
201application/x-ksh;[20x22]/icons/script.png
202application/x-latex;[20x22]/icons/tex.png
203application/octet-stream;[20x22]/icons/binary.png
204application/x-patch;[20x22]/icons/patch.png
205application/pdf;[20x22]/icons/pdf.png
206application/x-script;[20x22]/icons/script.png
207application/x-sh;[20x22]/icons/script.png
208application/x-tar;[20x22]/icons/tar.png
209application/x-tex;[20x22]/icons/tex.png
210application/x-zip-compressed;[20x22]/icons/compressed.png
211application/zip;[20x22]/icons/compressed.png
212audio/*;[20x22]/icons/sound1.png
213chemical/*;[20x22]/icons/sphere2.png
214image/*;[20x22]/icons/image2.png
215message/external-body;[20x22]/icons/link.png
216multipart/*;[20x22]/icons/layout.png
217text/*;[20x22]/icons/text.png
218video/*;[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>
235index.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>
8979e13e
IK
247<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
248<style> .nowrap { white-space: nowrap } </style>
01c223d0
BOFG
249</head>
250<body>
251<center>
53064240 252<em>Archives are refreshed every 15 minutes - for details, please visit
3c823cf5 253<a href="http://@@FSF_DOMAIN@@/archive/html/">the main index</a>.</em>
01c223d0 254<br>
51e3c501 255You can also <a href="https://@@FSF_DOMAIN@@/archive/mbox/$LIST-NAME$/">download the archives in mbox format</a>.
01c223d0
BOFG
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>
8979e13e
IK
260<div class="nowrap">
261<small>$THREAD-IDX-LINK$[<a href="../"
262>Top</a>][<a href="$ALL-LISTS-URL$">All Lists</a>][<a
3c823cf5 263href="//@@FSF_DOMAIN@@/mailman/listinfo/$LIST-NAME$">$LIST-NAME$ info page</a>]</small>
8979e13e 264</div>
01c223d0
BOFG
265$SEARCH-FORM$
266</center>
267</IdxPgBegin>
268
269<ListBegin>
270<table width="100%">
271<tr valign="bottom">
8979e13e 272<td align="left">$PREV-PERIOD-LINK$</td>
01c223d0
BOFG
273<td align="center"><small
274>Last Modified: $MSGLOCALDATE(LAST;%a %b %d %Y %H:%M:%S %z)$<br>
275Messages in reverse chronological order</small></td>
8979e13e 276<td align="right">$NEXT-PERIOD-LINK$</td>
01c223d0
BOFG
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>
1d0a170d 292</ul></li>
01c223d0
BOFG
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">
8979e13e
IK
304<td align="left">$PREV-PERIOD-LINK$</td>
305<td align="right">$NEXT-PERIOD-LINK$</td>
01c223d0
BOFG
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>
d4881180 329<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
01c223d0
BOFG
330<title>$TIDXTITLE$</title>
331</head>
332<body>
333<center>
53064240 334<em>Archives are refreshed every 15 minutes - for details, please visit <a
3c823cf5 335href="http://@@FSF_DOMAIN@@/archive/html/">the main index</a>.</em>
01c223d0 336<br>
51e3c501 337You can also <a href="https://@@FSF_DOMAIN@@/archive/mbox/$LIST-NAME$/">download the archives in mbox format</a>.
01c223d0
BOFG
338<p>
339<table border=0 cellspacing=2 cellpadding=0 bgcolor="#000000">
340<tr><td><table border=0 bgcolor="#FFFFCC">
341<tr><td><big><big><b>$TIDXTITLE$</b></big></big></td></tr></table></tr></table>
8979e13e
IK
342<div class="nowrap">
343<small
01c223d0 344>$DATE-IDX-LINK$[<a href="../"
8979e13e
IK
345>Top</a>][<a href="$ALL-LISTS-URL$">All Lists</a>]</small>
346</div>
01c223d0
BOFG
347$SEARCH-FORM$
348</center>
349</TIdxPgBegin>
350
351<THead>
352<table width="100%">
353<tr valign="bottom">
8979e13e 354<td align="left">$TPREV-PERIOD-LINK$</td>
01c223d0
BOFG
355<td align="center"><small
356>Last Modified: $MSGLOCALDATE(LAST;%a %b %d %Y %H:%M:%S %z)$<br>
357Threads in reverse chronological order</small></td>
8979e13e 358<td align="right">$TNEXT-PERIOD-LINK$</td>
01c223d0
BOFG
359</tr>
360</table>
361<hr size="1" noshade>
362<ul>
363</THead>
364
365<TTopBegin>
366<li><b>$SUBJECT$</b>, <i>$FROMNAME$</i>, <tt>$MSGLOCALDATE(CUR;%Y/%m/%d)$</tt>
367</TTopBegin>
368
369<TLiTxt>
370<li><b>$SUBJECT$</b>, <i>$FROMNAME$</i>, <tt>$MSGLOCALDATE(CUR;%Y/%m/%d)$</tt>
371</TLiTxt>
372
373<TSingleTxt>
374<li><b>$SUBJECT$</b>, <i>$FROMNAME$</i>, <tt>$MSGLOCALDATE(CUR;%Y/%m/%d)$</tt>
375</TSingleTxt>
376
377<TFoot>
378</ul>
379<hr size="1" noshade>
380<table width="100%">
381<tr valign="bottom">
8979e13e
IK
382<td align="left">$TPREV-PERIOD-LINK$</td>
383<td align="right">$TNEXT-PERIOD-LINK$</td>
01c223d0
BOFG
384</tr>
385</table>
386</TFoot>
387
388<!-- ================================================================== -->
389<!-- Message Pages -->
390<!-- ================================================================== -->
391
392<ModTime>
393
394<!-- We clip the subject title to 72 characters to prevent ugly pages
395 due to very long subject lines. The full subject text will still
396 be shown in the formatted message header.
397 -->
398<MsgPgBegin>
399<!doctype html public "-//W3C//DTD HTML//EN">
400<html>
401<head>
402<title>$SUBJECTNA:72$</title>
8979e13e 403<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
01c223d0
BOFG
404</head>
405<body>
406<center>
407<table border=0 cellspacing=2 cellpadding=0 bgcolor="#000000">
408<tr><td><table border=0 bgcolor="#FFFFCC">
409<tr><td><big><b>$LIST-TITLE$</b></big></td></tr></table></tr></table>
8979e13e
IK
410<div class="nowrap">
411<small>[<a href="../"
412>Top</a>][<a href="$ALL-LISTS-URL$">All Lists</a>]</small>
413</div>
01c223d0
BOFG
414$SEARCH-FORM$
415</center>
416</MsgPgBegin>
417
418<TopLinks>
419<hr>
420$BUTTON(PREV)$$BUTTON(NEXT)$$BUTTON(TPREV)$$BUTTON(TNEXT)$[<a
421href="$IDXFNAME$#$MSGNUM$">Date Index</a>][<a
422href="$TIDXFNAME$#$MSGNUM$">Thread Index</a>]
423</TopLinks>
424
425<SubjectHeader>
426<h2>$SUBJECTNA:72$</h2>
427<hr>
428<table border=0>
429<tbody>
430<tr>
431<td align="right" valign="top">
432<b>From</b>: </td>
433<td align="left">
434$FROMNAME$</td>
435</tr>
436</SubjectHeader>
437
438<!-- Format message header in a table. -->
439
440<FieldOrder>
441subject
442date
443user-agent
444</FieldOrder>
445
446<Fieldsbeg>
447
448</FieldsBeg>
449
450<LabelBeg>
451<tr>
452<td align="right" valign="top">
453</LabelBeg>
454
455<LabelEnd>
456: </td>
457</LabelEnd>
458
459<FldBeg>
460<td align="left">
461</FldBeg>
462
463<FldEnd>
464</td>
465</tr>
466</FldEnd>
467
468<FieldsEnd>
469</tbody>
470</table>
471</FieldsEnd>
472
473<LabelStyles>
474-default-:b
475</LabelStyles>
476
477<!-- Disable explicit follow-up/references section and use $TSLICE$ instead.
478 -->
479<NoFolRefs>
480
481<!-- Set TSLICE resource to represent default $TSLICE$ behavior and
482 mainly to set the maximum message page update ranges when messages
483 are added to the archive. I.e. The before and after values
484 should represent the largest before and after values we will use
485 with $TSLICE$.
486 -->
487<TSlice>
48810:10:1
489</TSlice>
490
491<!-- We set up slice formatting so current message in thread is not
492 hyperlinked and "greyed out". We could probably use CSS to
493 do this, but <font> seems to still work with most popular
494 graphical browsers.
495 -->
496<TSliceBeg>
497<ul>
498</TSliceBeg>
499
500<TSliceTopBeginCur>
501<li><font color="#666666"><strong>$SUBJECTNA$</strong>,
502<em>$FROMNAME$</em></font>&nbsp;<b>&lt;=</b>
503</TSliceTopBeginCur>
504
505<TSliceLiTxtCur>
506<li><font color="#666666"><strong>$SUBJECTNA$</strong>,
507<em>$FROMNAME$</em></font>&nbsp;<b>&lt;=</b>
508</TSliceLiTxtCur>
509
510<TSliceSingleTxtCur>
511<li><font color="#666666"><strong>$SUBJECTNA$</strong>,
512<em>$FROMNAME$</em></font>&nbsp;<b>&lt;=</b>
513</TSliceSingleTxtCur>
514
515<TSliceEnd>
516</ul>
517</TSliceEnd>
518
519<!-- Modify end of message body to include thread slice. We also
520 include convenient next/prev-in-thread links since scanning
521 slice can be inconvenient for simple thread reading.
522 -->
523<MsgBodyEnd>
524<hr>
525<form method="post" action="/mp/yyz.py" enctype="multipart/form-data">
526<input type="hidden" name="a" value="$FROMADDRNAME$">
527<input type="hidden" name="b" value="$SUBJECTNA$">
528<input type="hidden" name="d" value="$MSGID$">
529<input type="hidden" name="c" value="$FROMADDRDOMAIN$">
530<center>reply via email to<br><input type="submit" value=" $FROMNAME$ "></center>
531</form>
532<hr>
533<table width="100%">
534<tr><td align="left">$BUTTON(TPREVIN)$</td>
535<td align="center"><b>Current Thread</b></td>
536<td align="right">$BUTTON(TNEXTIN)$</td></tr></table>
537$TSLICE$
538<hr>
539</MsgBodyEnd>