4fdc36f0451c579f9960ae9a4f9ba3ee8595f0f7
[platal.git] / templates / lists / moderate.tpl
1 {**************************************************************************}
2 {*                                                                        *}
3 {*  Copyright (C) 2003-2013 Polytechnique.org                             *}
4 {*  http://opensource.polytechnique.org/                                  *}
5 {*                                                                        *}
6 {*  This program is free software; you can redistribute it and/or modify  *}
7 {*  it under the terms of the GNU General Public License as published by  *}
8 {*  the Free Software Foundation; either version 2 of the License, or     *}
9 {*  (at your option) any later version.                                   *}
10 {*                                                                        *}
11 {*  This program is distributed in the hope that it will be useful,       *}
12 {*  but WITHOUT ANY WARRANTY; without even the implied warranty of        *}
13 {*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *}
14 {*  GNU General Public License for more details.                          *}
15 {*                                                                        *}
16 {*  You should have received a copy of the GNU General Public License     *}
17 {*  along with this program; if not, write to the Free Software           *}
18 {*  Foundation, Inc.,                                                     *}
19 {*  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA               *}
20 {*                                                                        *}
21 {**************************************************************************}
22
23 {include file="lists/header_listes.tpl" on=moderate}
24
25 <h1>
26   Inscriptions en attente de modération
27 </h1>
28
29 {if $subs|@count}
30 <table class='bicol' cellpadding='0' cellspacing='0'>
31   <tr>
32     <th>Nom</th>
33     <th>Adresse</th>
34     <th></th>
35   </tr>
36   {foreach from=$subs item=s}
37   <tr class='{cycle values="pair,impair"}'>
38     <td>{$s.name}{if $s.login}
39       <a href="profile/{$s.login}" class="popup2">{*
40         *}{icon name=user_suit title="Afficher la fiche"}</a>
41       {/if}
42     </td>
43     <td>{$s.addr}</td>
44     <td class='action'>
45       <a href='{$platal->pl_self(1)}?sadd={$s.id}&amp;token={xsrf_token}'>{icon name=tick title="Valider l'inscription"}</a>
46       <a href='{$platal->pl_self(1)}?sid={$s.id}'>{icon name=delete title="Refuser l'inscription"}</a>
47     </td>
48   </tr>
49   {/foreach}
50 </table>
51 {else}
52 <p>Il n'y a pas d'inscriptions en attente de modération.</p>
53 {/if}
54
55 <h1>
56   Emails en attente de modération
57 </h1>
58
59 {if $mails|@count}
60 <ul>
61   <li>
62   <strong>{icon name=tick}accepter&nbsp;:</strong> l'email est immédiatement libéré, et envoyé à la
63   liste.
64   </li>
65   <li>
66   <strong>{icon name=cross}refuser&nbsp;:</strong> pour refuser un email, suivre le lien {icon name=cross} et
67   remplir le formulaire en bas de page.
68   </li>
69   <li>
70   <strong>{icon name=delete}spam&nbsp;:</strong> l'email est effacé sans autre forme de procès.
71   N'utiliser <strong>QUE</strong> pour les virus et les emails indésirables.<br/>
72   </li>
73 </ul>
74 <p>
75   S'il y a trop d'indésirables, il est probablement plus rapide pour la suite de les
76   jeter directement et non de les modérer en modifant le réglage de
77   l'<a href="{$platal->ns}lists/options/{$platal->argv[1]}#antispam">antispam</a>.
78 </p>
79
80 <script type="text/javascript">//<![CDATA[
81 {literal}
82 var toggleState = false;
83 function toggleAll() {
84   toggleState = !toggleState;
85   var boxes = $(":checkbox.moderate_email");
86   if (toggleState) {
87     boxes.attr("checked", "checked");
88   } else {
89     boxes.removeAttr("checked");
90   }
91 }
92 {/literal}
93 //]]></script>
94
95 <form method="post" action="{$platal->pl_self(1)}">
96 {xsrf_token_field}
97 {if $with_fromx}
98 <table class="bicol" style="margin-bottom: 1ex">
99   <tr>
100     <th colspan="2"></th>
101     <th>Email</th>
102     <th>Infos</th>
103     <th colspan="2"></th>
104   </tr>
105   <tr>
106     <th class="smaller" colspan="6">
107       Les emails suivants proviennent d'adresses identifiées comme étant celles de camarades.
108     </th>
109   </tr>
110   {foreach from=$mails item=m name=mail}
111   {if $m.fromx}
112   <tr class='{cycle values="pair,impair"}'>
113     <td class="checkboxToggle">
114       <input type="checkbox" name="select_mails[{$m.id}]" {if $smarty.foreach.mail.total eq 1}checked="checked"{/if}/>
115     </td>
116     <td class="checkboxToggle">
117       <strong>De&nbsp;:</strong><br />
118       <strong>Sujet&nbsp;:</strong>
119     </td>
120     <td class="checkboxToggle">
121       {$m.sender}<br />
122       {$m.subj|hdc|smarty:nodefaults}
123     </td>
124     <td class='right checkboxToggle'>
125       <small>le {$m.stamp|date_format:"%x"} à {$m.stamp|date_format:"%X"}<br />
126       {$m.size} octets</small>
127     </td>
128     <td class='action'>
129       <a href='{$platal->pl_self(1)}?mid={$m.id}&amp;mok=1&amp;token={xsrf_token}'>{icon name=tick title="Accepter le message"}</a>
130     </td>
131     <td class='action'>
132       <a href='{$platal->pl_self(1)}?mid={$m.id}'>{icon name=cross title="Voir le message"}</a><br/>
133       <a href='{$platal->pl_self(1)}?mid={$m.id}&amp;mdel=1&amp;token={xsrf_token}'>{icon name=delete title="Spam !"}</a>
134     </td>
135   </tr>
136   {/if}
137   {/foreach}
138 </table>
139 {/if}
140
141 {if $with_nonfromx}
142 <table class='bicol' cellpadding='0' cellspacing='0'>
143   <tr>
144     <th>
145       <a href="javascript:toggleAll()">{icon name="arrow_refresh" title="Tout (dé)cocher"}</a>
146     </th>
147     <th></th>
148     <th>Email</th>
149     <th>Infos</th>
150     <th colspan="2"></th>
151   </tr>
152   {foreach from=$mails item=m name=mail}
153   {if !$m.fromx}
154   <tr class='{cycle values="pair,impair"}'>
155     <td class="checkboxToggle">
156       <input type="checkbox" class="moderate_email" name="select_mails[{$m.id}]" {if $smarty.foreach.mail.total eq 1}checked="checked"{/if}/>
157     </td>
158     <td class='checkboxToggle'>
159       <strong>De&nbsp;:</strong><br />
160       <strong>Sujet&nbsp;:</strong>
161     </td>
162     <td class='checkboxToggle'>
163       {$m.sender}<br />
164       {$m.subj|hdc|smarty:nodefaults}
165     </td>
166     <td class='right checkboxToggle'>
167       <small>le {$m.stamp|date_format:"%x"} à {$m.stamp|date_format:"%X"}<br />
168       {$m.size} octets</small>
169     </td>
170     <td class='action'>
171       <a href='{$platal->pl_self(1)}?mid={$m.id}&amp;mok=1&amp;token={xsrf_token}'>{icon name=tick title="Accepter le message"}</a>
172     </td>
173     <td class='action'>
174       <a href='{$platal->pl_self(1)}?mid={$m.id}'>{icon name=magnifier title="Voir le message"}</a><br/>
175       <a href='{$platal->pl_self(1)}?mid={$m.id}&amp;mdel=1&amp;token={xsrf_token}'>{icon name=delete title="Spam !"}</a>
176     </td>
177   </tr>
178   {/if}
179   {/foreach}
180 </table>
181 {/if}
182
183 <script type="text/javascript">//<![CDATA[
184 {literal}
185 $('.checkboxToggle').click(function (event)
186   {
187     // Don't uncheck the checkbox when clicking it
188     if (event.target.tagName === 'INPUT') {
189       return;
190     }
191
192     var checkbox = $(this).parent().find(':checkbox');
193
194     checkbox = checkbox.attr('checked', !checkbox.attr('checked'));
195
196     event.stopPropagation();
197   });
198 {/literal}
199 //]]></script>
200
201 <p class="center desc">
202   Utilise ces boutons pour appliquer une action à tous les emails sélectionnés.<br />
203   <input type="hidden" name="moderate_mails" value="1" />
204   <input type="submit" name="mok" value="Accepter" />
205   <input type="submit" name="mdel" value="Spam !" />
206 </p>
207 </form>
208 {else}
209 <p>Il n'y a pas d'emails en attente de modération.</p>
210 {/if}
211
212
213 {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}