--- /dev/null
+<?php
+/***************************************************************************
+ * Copyright (C) 2003-2004 Polytechnique.org *
+ * http://opensource.polytechnique.org/ *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
+ ***************************************************************************
+ $Id: archives.php,v 1.1 2004-11-28 22:51:28 x2000habouzit Exp $
+ ***************************************************************************/
+
+if(empty($_REQUEST['liste'])) header('Location: index.php');
+$liste = strtolower($_REQUEST['liste']);
+
+require_once("xorg.inc.php");
+new_skinned_page('listes/archives.tpl', AUTH_COOKIE, 'listes/archives.head.tpl');
+require_once('xml-rpc-client.inc.php');
+
+$client = new xmlrpc_client("http://{$_SESSION['uid']}:{$_SESSION['password']}@localhost:4949/polytechnique.org");
+
+if (list($det) = $client->get_members($liste)) {
+ $file = isset($_GET['file']) ? $_GET['file'] : "dates.html";
+ $page->assign('url', $globals->lists->spool."/polytechnique.org-$liste/$file");
+} else
+ $page->assign('no_list',true);
+
+$page->run();
+?>
--- /dev/null
+<?php
+/***************************************************************************
+ * Copyright (C) 2003-2004 Polytechnique.org *
+ * http://opensource.polytechnique.org/ *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
+ ***************************************************************************
+ $Id: lists.globals.inc.php,v 1.1 2004-11-28 22:51:28 x2000habouzit Exp $
+ ***************************************************************************/
+
+// {{{ class ListsConfig
+
+class ListsConfig
+{
+ var $rpchost = 'localhost';
+ var $rpcport = 119;
+
+ var $spool = '***';
+}
+
+// }}}
+
+$this->lists = new ListsConfig;
+
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker:
+?>
templates/listes/trombi.tpl
templates/mails/listes.promo.tpl
templates/mails/valid.liste.tpl
+htdocs/images/lists_date.png
+htdocs/images/lists_firstia.png
+htdocs/images/lists_first.png
+htdocs/images/lists_lastia.png
+htdocs/images/lists_last.png
+htdocs/images/lists_nextia.png
+htdocs/images/lists_next.png
+htdocs/images/lists_previa.png
+htdocs/images/lists_prev.png
+htdocs/images/lists_thread.png
--- /dev/null
+<MultiPg>
+<NoDoc>
+<UseLocalTime>
+<MsgLocalDateFmt>
+%d-%m-%y
+</MsgLocalDateFmt>
+<IdxSize>
+25
+</IdxSize>
+<NoFolRefs>
+
+
+<MIMEAltPrefs>
+text/plain
+text/html
+</MIMEAltPrefs>
+
+<MIMEArgs>
+m2h_external::filter; forceinline
+m2h_text_plain::filter; fancyquote maxwidth=80 quoteclass=quote
+</MIMEArgs>
+
+<AttachmentDir>
+/home/x2000habouzit/mh/attach/
+</AttachmentDir>
+
+<AttachmentURL>
+../attach
+</AttachmentURL>
+
+<!-- ------------------------------------------------------------------------ -->
+<!-- -->
+<!-- VARS -->
+<!-- -->
+<!-- ------------------------------------------------------------------------ -->
+
+<DefineVar>
+MY-LINK
+?liste={$$smarty.request.liste}&file=
+</DefineVar>
+
+<DefineVar>
+MY-ESCSUBJ
+$SUBJECTNA$
+</DefineVar>
+
+<DefineVar>
+MY-SUBJ
+<a href="$MY-LINK$$MSG$" id="m$MSGNUM$" title="$MY-ESCSUBJ$">$MY-ESCSUBJ$</a>
+</DefineVar>
+
+<DefineVar>
+MY-SUBJNA
+<strong title="$MY-ESCSUBJ$">$MY-ESCSUBJ$</strong>
+</DefineVar>
+
+
+<!-- ------------------------------------------------------------------------ -->
+<!-- -->
+<!-- LINKS -->
+<!-- -->
+<!-- ------------------------------------------------------------------------ -->
+
+<PrevPgLink>
+<a href="$MY-LINK$$PG(PREV)$"><img src="/images/lists_prev.png" alt="précédent" /></a>
+</PrevPgLink>
+
+<PrevPgLinkIA>
+<img src="/images/lists_previa.png" alt="précedent" />
+</PrevPgLinkIA>
+
+<NextPgLink>
+<a href="$MY-LINK$$PG(NEXT)$"><img src="/images/lists_next.png" alt="suivant" /></a>
+</NextPgLink>
+
+<NextPgLinkIA>
+<img src="/images/lists_nextia.png" alt="suivant" />
+</NextPgLinkIA>
+
+<FirstPgLink>
+<a href="$MY-LINK$$PG(FIRST)$"><img src="/images/lists_first.png" alt="début" /></a>
+</FirstPgLink>
+
+<LastPgLink>
+<a href="$MY-LINK$$PG(LAST)$"><img src="/images/lists_last.png" alt="fin" /></a>
+</LastPgLink>
+
+
+<TPrevPgLink>
+<a href="$MY-LINK$$PG(TPREV)$"><img src="/images/lists_prev.png" alt="précédent" /></a>
+</TPrevPgLink>
+
+<TPrevPgLinkIA>
+<img src="/images/lists_previa.png" alt="précedent" />
+</TPrevPgLinkIA>
+
+<TNextPgLink>
+<a href="$MY-LINK$$PG(TNEXT)$"><img src="/images/lists_next.png" alt="suivant" /></a>
+</TNextPgLink>
+
+<TNextPgLinkIA>
+<img src="/images/lists_nextia.png" alt="suivant" />
+</TNextPgLinkIA>
+
+<TFirstPgLink>
+<a href="$MY-LINK$$PG(TFIRST)$"><img src="/images/lists_first.png" alt="début" /></a>
+</TFirstPgLink>
+
+<TLastPgLink>
+<a href="$MY-LINK$$PG(TLAST)$"><img src="/images/lists_last.png" alt="fin" /></a>
+</TLastPgLink>
+
+
+<TPrevInButton>
+<a href="$MY-LINK$$MSG(TPREVIN)$"><img src="/images/lists_prev.png" alt="précédent" /></a>
+</TPrevInButton>
+
+<TPrevInButtonIA>
+<img src="/images/lists_previa.png" />
+</TPrevInButtonIA>
+
+<TNextInButton>
+<a href="$MY-LINK$$MSG(TNEXTIN)$"><img src="/images/lists_next.png" alt="suivant" /></a>
+</TNextInButton>
+
+<TNextInButtonIA>
+<img src="/images/lists_nextia.png" alt="suivant" />
+</TNextInButtonIA>
+
+<TPrevTopButton>
+<a href="$MY-LINK$$MSG(TPREVTOP)$"><img src="/images/lists_first.png" alt="début" /></a>
+</TPrevTopButton>
+
+<TNextTopButton>
+<a href="$MY-LINK$$MSG(TNEXTTOP)$"><img src="/images/lists_last.png" alt="fin" /></a>
+</TNextTopButton>
+
+<TPrevTopButtonIA>
+<img src="/images/lists_firstia.png" alt="début" />
+</TPrevTopButtonIA>
+
+<TNextTopButtonIA>
+<img src="/images/lists_lastia.png" alt="fin" />
+</TNextTopButtonIA>
+
+<!-- ------------------------------------------------------------------------ -->
+<!-- -->
+<!-- MESSAGE INDEX -->
+<!-- -->
+<!-- ------------------------------------------------------------------------ -->
+
+<MsgPgSSMarkup>
+
+</MsgPgSSMarkup>
+
+<MsgPgBegin>
+
+</MsgPgBegin>
+
+<MsgPgEnd>
+
+</MsgPgEnd>
+
+<TopLinks>
+ <h1>Vue de message</h1>
+ <table class='bicol' cellpadding="0" cellspacing="0">
+ <tr>
+ <th>fil précédent</th>
+ <th>msg. précédent</th>
+ <th>vue par dates/fils</th>
+ <th>msg. suivant</th>
+ <th>fil suivant</th>
+ </tr>
+ <tr class="impair">
+ <td class="center">$BUTTON(TPREVTOP)$</td>
+ <td class="center">$BUTTON(TPREVIN)$</td>
+ <td class="center">
+ <a href="$MY-LINK$$IDXFNAME$#m$MSGNUM$"><img src="/images/lists_date.png" alt="par dates" /></a>
+ /
+ <a href="$MY-LINK$$TIDXFNAME$#m$MSGNUM$"><img src="/images/lists_thread.png" alt="par fils" /></a>
+ </td>
+ <td class="center">$BUTTON(TNEXTIN)$</td>
+ <td class="center">$BUTTON(TNEXTTOP)$</td>
+ </tr>
+ </table>
+</TopLinks>
+
+<SubjectHeader>
+
+</SubjectHeader>
+
+<FieldsBeg>
+ <table class="bicol" cellpadding="0" cellspacing="0">
+</FieldsBeg>
+
+<LabelBeg>
+ <tr>
+ <td class="right">
+</LabelBeg>
+<LabelStyles>
+-default-:
+</LabelStyles>
+<LabelEnd>
+ </td>
+</LabelEnd>
+
+<FldBeg>
+ <td>
+</FldBeg>
+<FieldOrder>
+subject
+from
+to
+date
+</FieldOrder>
+<FieldStyles>
+subject:strong
+-default-:
+</FieldStyles>
+<FldEnd>
+ </td>
+ </tr>
+</FldEnd>
+
+<FieldsEnd>
+ </table>
+</FieldsEnd>
+
+<HeadBodySep>
+ <table class="bicol" cellpadding="0" cellspacing="0">
+ <tr class="pair">
+ <td>{literal}
+</HeadBodySep>
+
+<MsgBodyEnd>
+ {/literal}</td>
+ </tr>
+ </table>
+ $TSLICE$
+</MsgBodyEnd>
+
+<BotLinks>
+
+</BotLinks>
+
+<MsgFoot>
+</MsgFoot>
+
+<!-- ------------------------------------------------------------------------ -->
+<!-- -->
+<!-- THREAD INDEX -->
+<!-- -->
+<!-- ------------------------------------------------------------------------ -->
+
+<TIdxPgSSMarkup>
+
+</TIdxPgSSMarkup>
+
+<TIdxPgBegin>
+
+</TIdxPgBegin>
+
+<TIdxPgEnd>
+
+</TIdxPgEnd>
+
+<THead>
+ <h1>Archives de la liste {$$smarty.request.liste} ($PAGENUM$/$NUMOFPAGES$)</h1>
+ <table class='bicol' cellpadding="0" cellspacing="0">
+ <tr>
+ <th> </th>
+ <th>précédent</th>
+ <th>vue par date</th>
+ <th>suivant</th>
+ <th> </th>
+ </tr>
+ <tr class="impair">
+ <td class="center">$PGLINK(TFIRST)$</td>
+ <td class="center">$PGLINK(TPREV)$</td>
+ <td class="center"><a href="$MY-LINK$$IDXFNAME$"><img src="/images/lists_date.png" alt="par dates" /></a></td>
+ <td class="center">$PGLINK(TNEXT)$</td>
+ <td class="center">$PGLINK(TLAST)$</td>
+ </tr>
+ </table>
+ <table class="bicol" cellspacing="0" cellpadding="0">
+</THead>
+
+<TFoot>
+ </table>
+</TFoot>
+
+<!-- ------------------------------------------------------------------------ -->
+
+<TIndentBegin>
+
+</TIndentBegin>
+<TIndentEnd>
+
+</TIndentEnd>
+
+<!-- ------------------------------------------------------------------------ -->
+
+<TTopBegin>
+<tr class="pair"><td colspan="3" class="center"> - - - </td></tr>
+<tr>
+ <td>$MSGLOCALDATE$</td>
+ <td class='subj' style="padding-left: $TLEVEL$em">$MY-SUBJ$</td>
+ <td class='right'><em>$FROMNAME$</em></td>
+</tr>
+</TTopBegin>
+<TTopEnd>
+
+</TTopEnd>
+
+<TContBegin>
+<tr>
+ <td> </td>
+ <td style="padding-left: $TLEVEL$em"><em>[...]</em></td>
+ <td> </td>
+</tr>
+</TContBegin>
+<TContEnd>
+
+</TContEnd>
+
+<!-- ------------------------------------------------------------------------ -->
+
+<TSublistBeg>
+
+</TSublistBeg>
+<TSublistEnd>
+
+</TSublistEnd>
+
+
+<TSubjectBeg>
+
+</TSubjectBeg>
+<TSubjectEnd>
+
+</TSubjectEnd>
+
+<!-- ------------------------------------------------------------------------ -->
+
+<TSingleTxt>
+<tr>
+ <td>$MSGLOCALDATE$</td>
+ <td class='subj' style="padding-left: $TLEVEL$em">$MY-SUBJ$</td>
+ <td class='right'><em>$FROMNAME$</em></td>
+</tr>
+</TSingleTxt>
+
+<TLiTxt>
+<tr>
+ <td>$MSGLOCALDATE$</td>
+ <td class='subj' style="padding-left: $TLEVEL$em">$MY-SUBJ$</td>
+ <td class='right'><em>$FROMNAME$</em></td>
+</tr>
+</TLiTxt>
+<TLiEnd>
+
+</TLiEnd>
+
+<TLiNone>
+<tr>
+ <td style="padding-left: $TLEVEL$em"><em><non disponnible></em></td>
+ <td> </td>
+</tr>
+</TLiNone>
+
+
+<!-- ------------------------------------------------------------------------ -->
+
+<TSlice>
+10;10;1
+</TSlice>
+
+<TSliceBeg>
+<table class="bicol" cellpadding="0" cellspacing="0">
+</TSliceBeg>
+<TSliceEnd>
+</table>
+</TSliceEnd>
+
+<TSliceTopBegin>
+<tr>
+ <td>$MSGLOCALDATE$</td>
+ <td class='subj' style="padding-left: $TLEVEL$em">$MY-SUBJ$</td>
+ <td class='right'><em>$FROMNAME$</em></td>
+</tr>
+</TSliceTopBegin>
+
+<TSliceTopBeginCur>
+<tr>
+ <td>$MSGLOCALDATE$</td>
+ <td class='subj' style="padding-left: $TLEVEL$em">$MY-SUBJNA$</td>
+ <td class='right'><strong><em>$FROMNAME$</em></strong></td>
+</tr>
+</TSliceTopBeginCur>
+<TSliceTopEndCur>
+
+</TSliceTopEndCur>
+
+
+<TSliceLiTxtCur>
+<tr>
+ <td>$MSGLOCALDATE$</td>
+ <td class='subj' style="padding-left: $TLEVEL$em">$MY-SUBJNA$</td>
+ <td class='right'><strong><em>$FROMNAME$</em></strong></td>
+</tr>
+</TSliceLiTxtCur>
+<TSliceLiEndCur>
+
+</TSliceLiEndCur>
+
+<!-- ------------------------------------------------------------------------ -->
+<!-- -->
+<!-- DATE INDEX -->
+<!-- -->
+<!-- ------------------------------------------------------------------------ -->
+
+<Sort>
+<IdxFname>
+dates.html
+</IdxFname>
+<IdxPrefix>
+date
+</IdxPrefix>
+
+
+<IdxPgSSMarkup>
+
+</IdxPgSSMarkup>
+
+<IdxPgBegin>
+
+</IdxPgBegin>
+
+<IdxPgEnd>
+
+</IdxPgEnd>
+
+<ListBegin>
+ <h1>Archives de la liste {$$smarty.request.liste} ($PAGENUM$/$NUMOFPAGES$)</h1>
+ <table class='bicol' cellpadding="0" cellspacing="0">
+ <tr>
+ <th> </th>
+ <th>précédent</th>
+ <th>vue par fils</th>
+ <th>suivant</th>
+ <th> </th>
+ </tr>
+ <tr class="impair">
+ <td class="center">$PGLINK(FIRST)$</td>
+ <td class="center">$PGLINK(PREV)$</td>
+ <td class="center"><a href="$MY-LINK$$TIDXFNAME$"><img src="/images/lists_thread.png" alt="par fils" /></a></td>
+ <td class="center">$PGLINK(NEXT)$</td>
+ <td class="center">$PGLINK(LAST)$</td>
+ </tr>
+ </table>
+ <table class="bicol" cellpadding="0" cellspacing="0">
+</ListBegin>
+
+<ListEnd>
+ </table>
+</ListEnd>
+
+<!-- ------------------------------------------------------------------------ -->
+<DayBegin>
+</DayBegin>
+
+<DayEnd>
+</DayEnd>
+
+<LITemplate>
+ <tr>
+ <td>$MSGLOCALDATE$</td>
+ <td class='subj'>$MY-SUBJ$</td>
+ <td class='right'><em>$FROMNAME$</em></td>
+ </tr>
+</LITemplate>
+
+
+<!-- vim:set syntax=mhonarc:sw=2: -->
+
+<!-- ------------------------------------------------------------------------ -->
+<!-- vim:set syntax=mhonarc:sw=2: -->
--- /dev/null
+{***************************************************************************
+ * Copyright (C) 2003-2004 Polytechnique.org *
+ * http://opensource.polytechnique.org/ *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
+ ***************************************************************************
+ $Id: archives.head.tpl,v 1.1 2004-11-28 22:51:29 x2000habouzit Exp $
+ ***************************************************************************}
+
+{literal}
+<style type="text/css">
+ table.bicol+table.bicol { margin: 1ex; }
+ table.bicol td.right { white-space: nowrap; }
+ table.bicol td.subj { white-space: nowrap; }
+ table.bicol tr:hover td { background: yellow; }
+ table.bicol tr.pair:hover td { background: inherit; }
+ table.bicol tr.impair:hover td { background: inherit; }
+ table.bicol img { margin: 1ex; }
+ td.subj a { overflow: hidden; display: block; }
+ td.subj strong { overflow: hidden; display: block; }
+
+ .quote {
+ font-style: italic;
+ margin: 0em 0.3em;
+ padding-left: 0.3em;
+ color: green;
+ border-left: green solid 2px;
+ }
+ .quote .quote {
+ color: #95b;
+ border-left: #95b solid 2px;
+ }
+ .quote .quote .quote {
+ color: #888;
+ border-left: #888 solid 2px;
+ }
+</style>
+{/literal}
+
+{* vim:set et sw=2 sts=2 sws=2: *}
--- /dev/null
+{***************************************************************************
+ * Copyright (C) 2003-2004 Polytechnique.org *
+ * http://opensource.polytechnique.org/ *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
+ ***************************************************************************
+ $Id: archives.tpl,v 1.1 2004-11-28 22:51:29 x2000habouzit Exp $
+ ***************************************************************************}
+
+{dynamic}
+
+{if $no_list}
+
+<p class='erreur'>La liste n'existe pas ou tu n'as pas le droit d'en voir les détails</p>
+
+{else}
+
+{include file="listes/header_listes.tpl" on=archives}
+
+{include file="$url"}
+
+{/if}
+
+{/dynamic}
+
+{* vim:set et sw=2 sts=2 sws=2: *}
* Foundation, Inc., *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************
- $Id: header_listes.tpl,v 1.3 2004-11-27 19:00:33 x2000habouzit Exp $
+ $Id: header_listes.tpl,v 1.4 2004-11-28 22:51:29 x2000habouzit Exp $
***************************************************************************}
{dynamic}
{else}
[trombinoscope]
{/if}
+ {if $on neq archives}
+ [<a href='archives.php?liste={$smarty.request.liste}'>archives</a>]
+ {else}
+ [archives]
+ {/if}
</td>
</tr>
{if $details.own || $smarty.session.perms eq admin}
[options]
{/if}
{if $on neq delete}
- [<a href='delete.php?liste={$smarty.get.liste}'>détruire liste</a>]
+ [<a href='delete.php?liste={$smarty.get.liste}'>détruire</a>]
{else}
[détruire liste]
{/if}