Commit | Line | Data |
---|---|---|
0337d704 | 1 | {**************************************************************************} |
2 | {* *} | |
179afa7f | 3 | {* Copyright (C) 2003-2008 Polytechnique.org *} |
0337d704 | 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 | ||
0337d704 | 24 | <h1> |
25 | Gestion des utilisateurs | |
26 | </h1> | |
27 | ||
28 | ||
29 | {if $smarty.post.u_kill_conf} | |
f81d9dad | 30 | <form method="post" action="admin/user"> |
e61326ed | 31 | {xsrf_token_field} |
0337d704 | 32 | <div class="center"> |
33 | <input type="hidden" name="user_id" value="{$smarty.request.user_id}" /> | |
34 | Confirmer la suppression de {$smarty.request.user_id} | |
35 | <input type="submit" name="u_kill" value="continuer" /> | |
36 | </div> | |
37 | </form> | |
38 | {else} | |
39 | ||
f81d9dad | 40 | <form method="post" action="admin/user"> |
e61326ed | 41 | {xsrf_token_field} |
0337d704 | 42 | <table class="tinybicol" cellspacing="0" cellpadding="2"> |
43 | <tr> | |
44 | <th> | |
45 | Administrer | |
46 | </th> | |
47 | </tr> | |
48 | {if !$smarty.request.login && !$mr.forlife} | |
49 | <tr class="pair"> | |
50 | <td class="center"> | |
faefdbb7 | 51 | Il est possible d'entrer ici n'importe quelle adresse email : redirection, melix, ou alias. |
0337d704 | 52 | </td> |
53 | </tr> | |
54 | {/if} | |
55 | <tr> | |
56 | <td class="center"> | |
57 | <input type="text" name="login" size="40" maxlength="255" value="{$smarty.request.login|default:$mr.forlife}" /> | |
58 | </td> | |
59 | </tr> | |
60 | <tr> | |
61 | <td class="center"> | |
62 | <input type="hidden" name="hashpass" value="" /> | |
63 | <input type="submit" name="select" value=" edit " /> | |
64 | <input type="submit" name="suid_button" value=" su " /> | |
65 | <input type="submit" name="ax_button" value=" AX " /> | |
66 | <input type="submit" name="logs_button" value=" logs " /> | |
67 | </td> | |
68 | </tr> | |
69 | </table> | |
70 | </form> | |
71 | ||
72 | {if $mr} | |
73 | ||
74 | <p class="smaller"> | |
669cb0e0 | 75 | Dernière connexion le <strong>{$lastlogin|date_format:"%d %B %Y, %T"}</strong> |
661e78f7 | 76 | depuis <strong>{$host}</strong>. |
0337d704 | 77 | </p> |
78 | ||
79 | {literal} | |
80 | <script type="text/javascript"> | |
81 | //<![CDATA[ | |
82 | function doEditUser() { | |
46bde4d1 | 83 | document.forms.auth.hashpass.value = hash_encrypt(document.forms.edit.password.value); |
0337d704 | 84 | document.forms.auth.password.value = ""; |
85 | document.forms.auth.submit(); | |
86 | } | |
87 | ||
88 | function del_alias(alias) { | |
89 | document.forms.alias.del_alias.value = alias; | |
90 | document.forms.alias.submit(); | |
91 | } | |
92 | ||
93 | function del_fwd(fwd) { | |
94 | document.forms.fwds.del_fwd.value = fwd; | |
95 | document.forms.fwds.submit(); | |
96 | } | |
8ffa657a | 97 | function act_fwd(fwd, activate) { |
98 | if (activate) | |
99 | document.forms.fwds.activate_fwd.value = fwd; | |
100 | else | |
101 | document.forms.fwds.deactivate_fwd.value = fwd; | |
102 | document.forms.fwds.submit(); | |
103 | } | |
441c2451 | 104 | function clean_fwd(fwd) { |
105 | document.forms.fwds.clean_fwd.value = fwd; | |
106 | document.forms.fwds.submit(); | |
107 | } | |
669cb0e0 | 108 | function ban_write() |
109 | { | |
110 | document.forms.bans.write_perm.value = "!xorg.*"; | |
111 | } | |
112 | function ban_read() | |
113 | { | |
114 | document.forms.bans.read_perm.value = "!xorg.*"; | |
115 | } | |
116 | ||
0337d704 | 117 | // ]]> |
118 | </script> | |
119 | {/literal} | |
120 | ||
f81d9dad | 121 | <form id="auth" method="post" action="admin/user"> |
e61326ed | 122 | {xsrf_token_field} |
0337d704 | 123 | <table cellspacing="0" cellpadding="2" class="tinybicol"> |
124 | <tr> | |
f97f90f0 | 125 | <th colspan="2"> |
126 | <div style="float: right; text-align: right"> | |
127 | Matricule = {$mr.matricule}<br /> | |
128 | Matricule AX = {$mr.matricule_ax} | |
129 | </div> | |
130 | <div style="float: left; text-align: left"> | |
131 | UID = {$mr.user_id}<br /> | |
132 | Inscription = {$mr.date_ins|date_format} | |
133 | </div> | |
0337d704 | 134 | <input type="hidden" name="user_id" value="{$mr.user_id}" /> |
135 | </th> | |
136 | </tr> | |
137 | <tr class="pair"> | |
138 | <td class="titre"> | |
139 | Mot de passe | |
140 | </td> | |
141 | <td> | |
5f4ce949 FB |
142 | <div style="float: left"> |
143 | <input type="text" name="newpass_clair" size="10" maxlength="10" value="********" /> | |
144 | <input type="hidden" name="passw" size="32" maxlength="32" value="{$mr.password}" /> | |
145 | <input type="hidden" name="hashpass" value="" /> | |
146 | </div> | |
147 | <div style="float: left; margin-top: 5px;"> | |
148 | {checkpasswd prompt="newpass_clair" submit="dummy_none"} | |
149 | </div> | |
0337d704 | 150 | </td> |
151 | </tr> | |
152 | <tr class="pair"> | |
153 | <td class="titre"> | |
154 | Nom | |
155 | </td> | |
156 | <td> | |
157 | <input type="text" name="nomN" size="20" maxlength="255" value="{$mr.nom}" /> | |
158 | </td> | |
159 | </tr> | |
160 | <tr class="pair"> | |
161 | <td class="titre"> | |
162 | Nom d'usage | |
163 | </td> | |
164 | <td> | |
165 | <input type="text" name="nomusageN" size="20" maxlength="255" value="{$mr.nom_usage}" /> | |
166 | </td> | |
167 | </tr> | |
168 | <tr class="pair"> | |
169 | <td class="titre"> | |
a7de4ef7 | 170 | Prénom |
0337d704 | 171 | </td> |
172 | <td> | |
173 | <input type="text" name="prenomN" size="20" maxlength="30" value="{$mr.prenom}" /> | |
174 | </td> | |
175 | </tr> | |
176 | <tr class="pair"> | |
177 | <td class="titre"> | |
d2958bcf | 178 | Sexe |
179 | </td> | |
180 | <td> | |
0be07aa6 | 181 | femme <input type="radio" name="sexeN" {if $mr.sexe}checked="checked"{/if} value='1'/> |
182 | <input type="radio" name="sexeN" {if !$mr.sexe}checked="checked"{/if} value='0'/> homme | |
d2958bcf | 183 | </td> |
184 | </tr> | |
185 | <tr class="pair"> | |
186 | <td class="titre"> | |
0337d704 | 187 | Droits |
188 | </td> | |
189 | <td> | |
190 | <select name="permsN"> | |
191 | <option value="user" {if $mr.perms eq "user"}selected="selected"{/if}>user</option> | |
192 | <option value="admin" {if $mr.perms eq "admin"}selected="selected"{/if}>admin</option> | |
193 | <option value="pending" {if $mr.perms eq "pending"}selected="selected"{/if}>pending</option> | |
194 | <option value="disabled" {if $mr.perms eq "disabled"}selected="selected"{/if}>disabled</option> | |
195 | </select> | |
196 | </td> | |
197 | </tr> | |
3c1e6a1e | 198 | {if $mr.perms neq 'pending'} |
0337d704 | 199 | <tr class="pair"> |
200 | <td class="titre"> | |
3c1e6a1e | 201 | {if $mr.naiss_err}<span class="erreur">{/if} |
0337d704 | 202 | Date de naissance |
3c1e6a1e | 203 | {if $mr.naiss_err}</span>{/if} |
0337d704 | 204 | </td> |
205 | <td> | |
206 | <input type="text" name="naissanceN" size="12" maxlength="10" value="{$mr.naissance}" /> | |
bd5e1f3d | 207 | {if $mr.naissance_ini neq '0000-00-00' && $mr.naissance neq $mr.naissance_ini} |
e8439508 | 208 | <span class="erreur smaller">({icon name=error}Date de naissance connue : {$mr.naissance_ini})</span> |
bd5e1f3d | 209 | {elseif $mr.naiss_err} |
210 | <span class="erreur smaller">({icon name=error}Date de naissance incohérente)</span> | |
211 | {/if} | |
0337d704 | 212 | </td> |
213 | </tr> | |
3c1e6a1e | 214 | {/if} |
0337d704 | 215 | <tr class="pair"> |
216 | <td class="titre"> | |
a7de4ef7 | 217 | Date de décès |
34ffe99a | 218 | </td> |
219 | <td> | |
220 | <input type="text" name="decesN" size="12" maxlength="10" value="{$mr.deces}" /> | |
221 | </td> | |
222 | </tr> | |
223 | <tr class="pair"> | |
224 | <td class="titre"> | |
0337d704 | 225 | Promo |
226 | </td> | |
227 | <td> | |
228 | <input type="text" name="promoN" size="4" maxlength="4" value="{$mr.promo}" /> | |
229 | </td> | |
230 | </tr> | |
669cb0e0 | 231 | <tr class="impair"> |
0be07aa6 | 232 | <td class="titre"> |
233 | Surveillance | |
234 | </td> | |
235 | <td> | |
236 | <input type="checkbox" name="watchN" {if $mr.watch}checked="checked"{/if} /> | |
237 | Surveiller l'activité de ce compte<br /> | |
238 | <span class="smaller">Cette option permet d'avoir des logs complets de l'activité | |
661e78f7 | 239 | du compte via le logger, et d'être alerté lors des connexions de l'utilisateur.</span> |
0be07aa6 | 240 | </td> |
241 | </tr> | |
0337d704 | 242 | <tr class="impair"> |
243 | <td class="titre"> | |
244 | Commentaire | |
245 | </td> | |
246 | <td> | |
247 | <input type="text" name="commentN" size="40" maxlength="64" value="{$mr.comment}" /> | |
248 | </td> | |
249 | </tr> | |
f97f90f0 | 250 | {if $mr.perms eq 'pending'} |
251 | <tr class="center"> | |
252 | <td colspan="2"> | |
3c1e6a1e | 253 | <input type="hidden" name="naissanceN" value="{$mr.naissance}" /> |
f97f90f0 | 254 | <input onclick="doEditUser(); return true;" type="submit" name="u_edit" value="UPDATE" /> |
255 | </td> | |
256 | </tr> | |
257 | {else} | |
0337d704 | 258 | <tr class="center"> |
259 | <td> | |
7b2413f6 | 260 | <a href="profile/{$mr.forlife}" class="popup2">[Voir fiche]</a> |
0337d704 | 261 | </td> |
262 | <td> | |
263 | <input onclick="doEditUser(); return true;" type="submit" name="u_edit" value="UPDATE" /> | |
264 | </td> | |
265 | </tr> | |
266 | <tr class="center"> | |
267 | <td> | |
86f0a6af | 268 | <a href="admin/trombino/{$mr.user_id}">[Trombino]</a> |
0337d704 | 269 | </td> |
270 | <td> | |
a7de4ef7 | 271 | <input type="submit" name="u_kill_conf" value="Désinscrire" /> |
0337d704 | 272 | </td> |
273 | </tr> | |
f97f90f0 | 274 | {/if} |
0337d704 | 275 | </table> |
276 | </form> | |
f97f90f0 | 277 | {if $mr.perms neq 'pending'} |
0337d704 | 278 | <p> |
a7de4ef7 | 279 | Ne pas utiliser [Désinscrire] si le but est d'exclure la personne. |
0337d704 | 280 | Pour ceci changer ses permissions en 'disabled'. |
281 | </p> | |
f81d9dad | 282 | <form id="alias" method="post" action="admin/user"> |
e61326ed | 283 | {xsrf_token_field} |
0337d704 | 284 | <table class="tinybicol" cellpadding="2" cellspacing="0"> |
285 | <tr> | |
5c5554b7 | 286 | <th class="alias" colspan="3"> |
faefdbb7 | 287 | Alias email |
0337d704 | 288 | </th> |
289 | </tr> | |
290 | {iterate from=$aliases item=a} | |
291 | <tr class="{cycle values="impair,pair"}"> | |
292 | <td> | |
293 | <input type="radio" name='best' {if $a.best}checked="checked"{/if} value='{$a.alias}' onclick="this.form.submit()" /> | |
5c5554b7 | 294 | </td> |
295 | <td> | |
0337d704 | 296 | {if $a.for_life}<strong>{$a.alias}</strong>{else}{$a.alias}{/if} |
297 | {if $a.expire}<span class='erreur'>(expire le {$a.expire|date_format})</span>{/if} | |
298 | </td> | |
299 | {if $a.for_life} | |
a7de4ef7 | 300 | <td>garanti à vie*</td> |
0337d704 | 301 | {else} |
302 | <td class="action"> | |
303 | <a href="javascript:del_alias('{$a.alias}')">delete</a> | |
304 | </td> | |
305 | {/if} | |
306 | </tr> | |
307 | {/iterate} | |
441c2451 | 308 | {iterate from=$virtuals item=virtual} |
5c5554b7 | 309 | <tr class="{cycle values="impair,pair"}"> |
310 | <td></td> | |
441c2451 | 311 | <td>{$virtual.alias}</td> |
5c5554b7 | 312 | <td></td> |
313 | </tr> | |
441c2451 | 314 | {/iterate} |
0337d704 | 315 | <tr class="{cycle values="impair,pair"}"> |
5c5554b7 | 316 | <td colspan="2" class="detail"> |
0337d704 | 317 | <input type="text" name="email" size="29" maxlength="60" value="" /> |
318 | </td> | |
319 | <td class="action"> | |
320 | <input type="hidden" name="user_id" value="{$mr.user_id}" /> | |
321 | <input type="hidden" name="del_alias" value="" /> | |
322 | <input type="submit" name="add_alias" value="Ajouter" /> | |
323 | </td> | |
324 | </tr> | |
325 | </table> | |
326 | </form> | |
327 | ||
c554e4f8 VZ |
328 | <p><strong>* à ne modifier qu'avec l'accord express de l'utilisateur !!!</strong></p> |
329 | ||
669cb0e0 | 330 | <form id="bans" method="post" action="admin/user"> |
e61326ed | 331 | {xsrf_token_field} |
669cb0e0 | 332 | <table cellspacing="0" cellpadding="2" class="tinybicol"> |
333 | <tr> | |
334 | <th colspan="4"> | |
335 | Permissions sur les forums | |
336 | </th> | |
337 | </tr> | |
338 | <tr class="impair"> | |
339 | <td class="titre"> | |
c554e4f8 | 340 | Poster |
669cb0e0 | 341 | </td> |
342 | <td> | |
c554e4f8 | 343 | <input type="text" name="write_perm" size="32" maxlength="255" value="{$bans.write_perm}" /> |
669cb0e0 | 344 | </td> |
345 | <td class="action"> | |
346 | <a href="javascript:ban_write()">Bannir</a> | |
347 | </td> | |
348 | </tr> | |
349 | <tr class="pair"> | |
350 | <td class="titre"> | |
c554e4f8 | 351 | Lire |
669cb0e0 | 352 | </td> |
353 | <td> | |
c554e4f8 | 354 | <input type="text" name="read_perm" size="32" maxlength="255" value="{$bans.read_perm}" /> |
669cb0e0 | 355 | </td> |
356 | <td class="action"> | |
357 | <a href="javascript:ban_read()">Bannir</a> | |
358 | </td> | |
359 | </tr> | |
360 | <tr class="impair"> | |
361 | <td class="titre"> | |
362 | Commentaire | |
363 | </td> | |
c554e4f8 | 364 | <td colspan="2"> |
669cb0e0 | 365 | <input type="text" name="comment" size="40" maxlength="255" value="{$bans.comment}" /> |
366 | </td> | |
669cb0e0 | 367 | </tr> |
368 | <tr class="center"> | |
369 | <td colspan="3"> | |
370 | <input type="hidden" name="user_id" value="{$mr.user_id}" /> | |
371 | <input type="submit" name="b_edit" value="Modifier" /> | |
372 | </td> | |
373 | </tr> | |
374 | </table> | |
375 | </form> | |
376 | ||
5ff3f06b FB |
377 | {javascript name="ajax"} |
378 | {test_email forlife=$mr.forlife} | |
379 | ||
f81d9dad | 380 | <form id="fwds" method="post" action="admin/user#fwds"> |
e61326ed | 381 | {xsrf_token_field} |
0337d704 | 382 | <table class="bicol" cellpadding="2" cellspacing="0"> |
383 | <tr> | |
8ffa657a | 384 | <th colspan="4"> |
0337d704 | 385 | Redirections |
386 | </th> | |
387 | </tr> | |
11ed26e5 VZ |
388 | {assign var=actives value=false} |
389 | {assign var=disabled value=false} | |
0337d704 | 390 | {foreach item=mail from=$emails} |
2069538b | 391 | {cycle assign=class values="impair,pair"} |
392 | <tr class="{$class}"> | |
afde0a3a | 393 | {if $mail->active && $mail->has_disable()} |
441c2451 | 394 | {assign var=actives value=true} |
afde0a3a | 395 | {elseif $mail->disabled && $mail->has_disable()} |
441c2451 | 396 | {assign var=disabled value=true} |
397 | {/if} | |
0337d704 | 398 | <td class="titre"> |
441c2451 | 399 | {if $mail->active}active{elseif $mail->disabled}suspendue{/if} |
0337d704 | 400 | </td> |
401 | <td> | |
441c2451 | 402 | <span class="smaller"> |
403 | {if !$mail->disabled} | |
404 | <a href="javascript:act_fwd('{$mail->email}',{if $mail->active}false{else}true{/if})"> | |
405 | {if $mail->active}des{elseif $mail->broken}ré{/if}activer | |
406 | </a> | |
407 | {/if} | |
408 | </span> | |
8ffa657a | 409 | </td> |
410 | <td> | |
dc557110 | 411 | {if $mail->broken}<span style="color: #f00">{/if} |
1edd4e69 | 412 | {if $mail->email == 'googleapps'}<a href="admin/googleapps/user/{$mr.forlife}">{/if} |
11ed26e5 | 413 | {$mail->display_email} |
1edd4e69 | 414 | {if $mail->email == 'googleapps'}</a>{/if} |
dc557110 | 415 | {if $mail->broken}<em> (en panne)</em></span>{/if} |
0337d704 | 416 | </td> |
417 | <td class="action"> | |
afde0a3a | 418 | {if $mail->is_removable()} |
0337d704 | 419 | <a href="javascript:del_fwd('{$mail->email}')">delete</a> |
afde0a3a | 420 | {/if} |
0337d704 | 421 | </td> |
422 | </tr> | |
2069538b | 423 | {if $mail->panne && $mail->panne neq "0000-00-00"} |
424 | <tr class="{$class}"> | |
441c2451 | 425 | <td colspan="3" class="smaller" style="color: #f00"> |
2069538b | 426 | {icon name=error title="Panne"} |
11ed26e5 | 427 | Panne de {$mail->display_email} le {$mail->panne|date_format} |
a7de4ef7 | 428 | {if $mail->panne neq $mail->last}confirmée le {$mail->last|date_format}{/if} |
2069538b | 429 | </td> |
441c2451 | 430 | <td class="action"> |
431 | <a href="javascript:clean_fwd('{$mail->email}')">effacer les pannes</a> | |
432 | </td> | |
2069538b | 433 | </tr> |
434 | {/if} | |
0337d704 | 435 | {/foreach} |
441c2451 | 436 | {cycle assign=class values="impair,pair"} |
437 | <tr class="{$class}"> | |
8ffa657a | 438 | <td class="titre" colspan="2"> |
faefdbb7 | 439 | Ajouter une adresse |
0337d704 | 440 | </td> |
441 | <td> | |
442 | <input type="text" name="email" size="29" maxlength="60" value="" /> | |
443 | </td> | |
444 | <td class="action"> | |
445 | <input type="hidden" name="user_id" value="{$mr.user_id}" /> | |
446 | <input type="hidden" name="del_fwd" value="" /> | |
441c2451 | 447 | <input type="hidden" name="clean_fwd" value="" /> |
8ffa657a | 448 | <input type="hidden" name="activate_fwd" value="" /> |
449 | <input type="hidden" name="deactivate_fwd" value="" /> | |
0337d704 | 450 | <input type="submit" name="add_fwd" value="Ajouter" /> |
451 | </td> | |
452 | </tr> | |
441c2451 | 453 | <tr class="{$class}"> |
454 | <td colspan="4" class="center"> | |
455 | {if $actives} | |
faefdbb7 | 456 | <input type="submit" name="disable_fwd" value="Désactiver la redirection des emails" /> |
441c2451 | 457 | {/if} |
458 | {if $disabled} | |
faefdbb7 | 459 | <input type="submit" name="enable_fwd" value="Réactiver la redirection des emails" /> |
441c2451 | 460 | {/if} |
461 | </td> | |
462 | </tr> | |
0337d704 | 463 | </table> |
464 | </form> | |
465 | ||
0337d704 | 466 | {/if} |
467 | {/if} | |
f97f90f0 | 468 | {/if} |
0337d704 | 469 | |
a7de4ef7 | 470 | {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *} |