1 {**************************************************************************}
3 {* Copyright (C) 2003-2006 Polytechnique.org *}
4 {* http://opensource.polytechnique.org/ *}
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. *}
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. *}
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 *}
21 {**************************************************************************}
24 {if $smarty.session.suid}
26 Attention, déjà en SUID !!!
31 Gestion des utilisateurs
35 {if $smarty.post.u_kill_conf}
36 <form method="post" action="admin/user">
38 <input type="hidden" name="user_id" value="{$smarty.request.user_id}" />
39 Confirmer la suppression de {$smarty.request.user_id}
40 <input type="submit" name="u_kill" value="continuer" />
45 <form method="post" action="admin/user">
46 <table class="tinybicol" cellspacing="0" cellpadding="2">
52 {if !$smarty.request.login && !$mr.forlife}
55 Il est possible d'entrer ici n'importe quelle adresse mail : redirection, melix, ou alias.
61 <input type="text" name="login" size="40" maxlength="255" value="{$smarty.request.login|default:$mr.forlife}" />
66 <input type="hidden" name="hashpass" value="" />
67 <input type="submit" name="select" value=" edit " />
68 <input type="submit" name="suid_button" value=" su " />
69 <input type="submit" name="ax_button" value=" AX " />
70 <input type="submit" name="logs_button" value=" logs " />
79 Derniére connexion le <strong>{$lastlogin|date_format:"%d %B %Y, %T"}</strong>
80 depuis <strong>{$host}</strong>
84 <script type="text/javascript">
86 function doEditUser() {
87 document.forms.auth.hashpass.value = hash_encrypt(document.forms.edit.password.value);
88 document.forms.auth.password.value = "";
89 document.forms.auth.submit();
92 function del_alias(alias) {
93 document.forms.alias.del_alias.value = alias;
94 document.forms.alias.submit();
97 function del_fwd(fwd) {
98 document.forms.fwds.del_fwd.value = fwd;
99 document.forms.fwds.submit();
101 function act_fwd(fwd, activate) {
103 document.forms.fwds.activate_fwd.value = fwd;
105 document.forms.fwds.deactivate_fwd.value = fwd;
106 document.forms.fwds.submit();
112 <form id="auth" method="post" action="admin/user">
113 <table cellspacing="0" cellpadding="2" class="tinybicol">
116 <div style="float: right; text-align: right">
117 Matricule = {$mr.matricule}<br />
118 Matricule AX = {$mr.matricule_ax}
120 <div style="float: left; text-align: left">
121 UID = {$mr.user_id}<br />
122 Inscription = {$mr.date_ins|date_format}
124 <input type="hidden" name="user_id" value="{$mr.user_id}" />
132 <input type="text" name="newpass_clair" size="10" maxlength="10" value="********" />
133 <input type="hidden" name="passw" size="32" maxlength="32" value="{$mr.password}" />
134 <input type="hidden" name="hashpass" value="" />
142 <input type="text" name="nomN" size="20" maxlength="255" value="{$mr.nom}" />
150 <input type="text" name="nomusageN" size="20" maxlength="255" value="{$mr.nom_usage}" />
158 <input type="text" name="prenomN" size="20" maxlength="30" value="{$mr.prenom}" />
166 femme <input type="radio" name="sexeN" {if $mr.sexe eq 'femme'}checked="checked"{/if} value='femme'/>
167 <input type="radio" name="sexeN" {if $mr.sexe neq 'femme'}checked="checked"{/if} value=''/> homme
175 <select name="permsN">
176 <option value="user" {if $mr.perms eq "user"}selected="selected"{/if}>user</option>
177 <option value="admin" {if $mr.perms eq "admin"}selected="selected"{/if}>admin</option>
178 <option value="pending" {if $mr.perms eq "pending"}selected="selected"{/if}>pending</option>
179 <option value="disabled" {if $mr.perms eq "disabled"}selected="selected"{/if}>disabled</option>
183 {if $mr.perms neq 'pending'}
186 {if $mr.naiss_err}<span class="erreur">{/if}
188 {if $mr.naiss_err}</span>{/if}
191 <input type="text" name="naissanceN" size="12" maxlength="10" value="{$mr.naissance}" />
192 {if $mr.naiss_err}<span class="erreur smaller">({icon name=error}Date de naissance incohérente)</span>{/if}
201 <input type="text" name="decesN" size="12" maxlength="10" value="{$mr.deces}" />
209 <input type="text" name="promoN" size="4" maxlength="4" value="{$mr.promo}" />
217 <input type="text" name="commentN" size="40" maxlength="64" value="{$mr.comment}" />
220 {if $mr.perms eq 'pending'}
223 <input type="hidden" name="naissanceN" value="{$mr.naissance}" />
224 <input onclick="doEditUser(); return true;" type="submit" name="u_edit" value="UPDATE" />
230 <a href="profile/{$mr.forlife}" class="popup2">[Voir fiche]</a>
233 <input onclick="doEditUser(); return true;" type="submit" name="u_edit" value="UPDATE" />
238 <a href="admin/trombino/{$mr.user_id}">[Trombino]</a>
241 <input type="submit" name="u_kill_conf" value="Désinscrire" />
247 {if $mr.perms neq 'pending'}
249 Ne pas utiliser [Désinscrire] si le but est d'exclure la personne.
250 Pour ceci changer ses permissions en 'disabled'.
252 <form id="alias" method="post" action="admin/user">
253 <table class="tinybicol" cellpadding="2" cellspacing="0">
255 <th class="alias" colspan="2">
259 {iterate from=$aliases item=a}
260 <tr class="{cycle values="impair,pair"}">
262 <input type="radio" name='best' {if $a.best}checked="checked"{/if} value='{$a.alias}' onclick="this.form.submit()" />
263 {if $a.for_life}<strong>{$a.alias}</strong>{else}{$a.alias}{/if}
264 {if $a.expire}<span class='erreur'>(expire le {$a.expire|date_format})</span>{/if}
267 <td>garanti à vie*</td>
270 <a href="javascript:del_alias('{$a.alias}')">delete</a>
275 <tr class="{cycle values="impair,pair"}">
277 <input type="text" name="email" size="29" maxlength="60" value="" />
280 <input type="hidden" name="user_id" value="{$mr.user_id}" />
281 <input type="hidden" name="del_alias" value="" />
282 <input type="submit" name="add_alias" value="Ajouter" />
289 <strong>* à ne modifier qu'avec l'accord express de l'utilisateur !!!</strong>
292 <form id="fwds" method="post" action="admin/user#fwds">
293 <table class="bicol" cellpadding="2" cellspacing="0">
299 {foreach item=mail from=$emails}
300 {cycle assign=class values="impair,pair"}
301 <tr class="{$class}">
303 {if $mail->active}active{/if}
306 <span class="smaller"><a href="javascript:act_fwd('{$mail->email}',{if $mail->active}false{else}true{/if})">{if $mail->active}des{elseif $mail->broken}ré{/if}activer</a></span>
309 {if $mail->broken}<span style="color: #f00">{/if}
311 {if $mail->broken}<em> (en panne)</em></span>{/if}
314 <a href="javascript:del_fwd('{$mail->email}')">delete</a>
317 {if $mail->panne && $mail->panne neq "0000-00-00"}
318 <tr class="{$class}">
319 <td colspan="4" class="smaller" style="color: #f00">
320 {icon name=error title="Panne"}
321 Panne de {$mail->email} le {$mail->panne|date_format}
322 {if $mail->panne neq $mail->last}confirmée le {$mail->last|date_format}{/if}
327 <tr class="{cycle values="impair,pair"}">
328 <td class="titre" colspan="2">
332 <input type="text" name="email" size="29" maxlength="60" value="" />
335 <input type="hidden" name="user_id" value="{$mr.user_id}" />
336 <input type="hidden" name="del_fwd" value="" />
337 <input type="hidden" name="activate_fwd" value="" />
338 <input type="hidden" name="deactivate_fwd" value="" />
339 <input type="submit" name="add_fwd" value="Ajouter" />
349 {* vim:set et sw=2 sts=2 sws=2: *}