Merge commit 'origin/fusionax' into account
[platal.git] / templates / admin / user.tpl
CommitLineData
0337d704 1{**************************************************************************}
2{* *}
8d84c630 3{* Copyright (C) 2003-2009 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{if $smarty.post.u_kill_conf}
f81d9dad 25<form method="post" action="admin/user">
e61326ed 26 {xsrf_token_field}
0337d704 27 <div class="center">
28 <input type="hidden" name="user_id" value="{$smarty.request.user_id}" />
a4017e1b 29 Confirmer la suppression de l'utilisateur {$smarty.request.user_id} ({$mr.prenom} {$mr.nom} - X{$mr.promo})&nbsp;&nbsp;
0337d704 30 <input type="submit" name="u_kill" value="continuer" />
31 </div>
32</form>
8f2104cb 33{elseif $user}
0337d704 34{literal}
16019034 35
0337d704 36<script type="text/javascript">
37//<![CDATA[
38function doEditUser() {
46bde4d1 39 document.forms.auth.hashpass.value = hash_encrypt(document.forms.edit.password.value);
0337d704 40 document.forms.auth.password.value = "";
41 document.forms.auth.submit();
42}
43
44function del_alias(alias) {
45 document.forms.alias.del_alias.value = alias;
46 document.forms.alias.submit();
47}
48
f9743cf1
FB
49function del_profile(pid) {
50 document.forms.profiles.del_profile.value = pid;
51 document.forms.profiles.submit();
52}
53
0337d704 54function del_fwd(fwd) {
55 document.forms.fwds.del_fwd.value = fwd;
56 document.forms.fwds.submit();
57}
8ffa657a 58function act_fwd(fwd, activate) {
59 if (activate)
60 document.forms.fwds.activate_fwd.value = fwd;
61 else
62 document.forms.fwds.deactivate_fwd.value = fwd;
63 document.forms.fwds.submit();
64}
441c2451 65function clean_fwd(fwd) {
66 document.forms.fwds.clean_fwd.value = fwd;
67 document.forms.fwds.submit();
68}
669cb0e0 69function ban_write()
70{
71 document.forms.bans.write_perm.value = "!xorg.*";
72}
73function ban_read()
74{
75 document.forms.bans.read_perm.value = "!xorg.*";
76}
77
16019034
FB
78$(document).ready(function() {
79 $('#tabs > ul').tabs();
73e4718a
FB
80 $('.ui-tabs-nav li').width('33%')
81 .click(function() { $(this).children('a').click() });
16019034
FB
82});
83
0337d704 84// ]]>
85</script>
86{/literal}
87
16019034 88<div id="tabs">
7679a55a
VZ
89 Compte de {$user->login()}.
90 <ul style="margin-top: 0">
91 <li><a href="{$platal->pl_self()}#account"><span >Compte</span></a></li>
92 <li><a href="{$platal->pl_self()}#emails"><span>Emails</span></a></li>
93 <li><a href="{$platal->pl_self()}#forums"><span>Forums</span></a></li>
94 </ul>
95</div>
16019034
FB
96
97<div id="account">
f9743cf1 98<form id="auth" method="post" action="admin/user/{$user->login()}#account">
e61326ed 99 {xsrf_token_field}
8f2104cb
FB
100 <h1>Informations sur le compte</h1>
101 <p class="smaller">
102 Dernière connexion le <strong>{$lastlogin|date_format:"%d %B %Y, %T"}</strong>
103 depuis <strong>{$host}</strong>.
104 </p>
105
7679a55a 106 <table class="bicol">
0337d704 107 <tr>
f97f90f0 108 <th colspan="2">
109 <div style="float: right; text-align: right">
8f2104cb 110 Inscrit le {$user->registration_date|date_format}
f97f90f0 111 </div>
112 <div style="float: left; text-align: left">
8f2104cb 113 {icon name=user_gray} {$mr.hruid} (uid {$user->id()})
f97f90f0 114 </div>
8f2104cb 115 <input type="hidden" name="uid" value="{$user->id()}" />
0337d704 116 </th>
117 </tr>
8f2104cb
FB
118 <tr>
119 <td class="titre">Nom complet</td>
120 <td><input type="text" name="full_name" maxlength="255" value="{$user->fullName()}" /></td>
121 </tr>
122 <tr>
123 <td class="titre">Nom affiché</td>
124 <td><input type="text" name="display_name" maxlength="255" value="{$user->displayName()}" /></td>
125 </tr>
126 <tr>
127 <td class="titre">Sexe</td>
128 <td>
129 <label>femme <input type="radio" name="sex" value="female" {if $user->isFemale()}checked="checked"{/if} /></label>
83752d10 130 <label><input type="radio" name="sex" value="male" {if !$user->isFemale()}checked="checked"{/if} /> homme</label>
0337d704 131 </td>
8f2104cb
FB
132 </tr>
133 <tr class="impair">
134 <td class="titre">Mot de passe</td>
0337d704 135 <td>
5f4ce949 136 <div style="float: left">
ed130f47 137 <input type="text" name="newpass_clair" size="10" maxlength="256" value="********" />
5f4ce949
FB
138 <input type="hidden" name="hashpass" value="" />
139 </div>
140 <div style="float: left; margin-top: 5px;">
141 {checkpasswd prompt="newpass_clair" submit="dummy_none"}
142 </div>
0337d704 143 </td>
144 </tr>
8f2104cb
FB
145 <tr class="impair">
146 <td class="titre">Mot de passe SMTP</td>
147 <td>
148 <div style="float: left">
149 <input type="password" name="weak_password" size="10" maxlength="256" value="" />
150 {if $user->weak_access}
151 <input type="submit" name="disable_weak_access" value="Supprimer" />
152 {/if}
153 </div>
154 </td>
155 </tr>
156 <tr class="impair">
157 <td class="titre">Accès RSS</td>
158 <td>
159 <label>
83752d10 160 <input type="checkbox" name="token_access" {if $user->token_access}checked="checked"{/if} value="1" />
8f2104cb
FB
161 activer l'accès
162 </label>
163 </td>
164 </tr>
165 <tr class="impair">
166 <td class="titre">Skin</td>
167 <td>
168 <select name="skin">
169 <option value="" {if !$user->skin}selected="selected"{/if}>Aucune (défaut du système)</option>
170 {iterate from=$skins item=skin}
171 <option value="{$skin.id}" {if $user->skin eq $skin.id}selected="selected"{/if}>{$skin.name}</option>
172 {/iterate}
173 </select>
174 </td>
175 </tr>
176 <tr class="pair">
177 <td class="titre">Etat du compte</td>
178 <td>
179 <select name="state">
180 <option value="pending" {if $user->state eq 'pending'}selected="selected"{/if}>pending (Non-inscrit)</option>
16019034 181 <option value="active" {if $user->state eq 'active'}selected="selected"{/if}>active (Inscrit, peut se logguer)</option>
8f2104cb
FB
182 <option value="disabled" {if $user->state eq 'disabled'}selected="selected"{/if}>disabled (Inscrit, accès interdit)</option>
183 </select><br />
184 <label>
185 <input type="checkbox" name="is_admin" value="1" {if $user->is_admin}checked="checked"{/if} />
186 administrateur du site
187 </label>
188 </td>
189 </tr>
190 <tr class="pair">
191 <td class="titre">Type de compte</td>
192 <td>
193 <select name="type">
194 {iterate from=$account_types item=type}
195 <option value="{$type.type}" {if $user->type eq $type.type}selected="selected"{/if}>{$type.type} ({$type.perms})</option>
196 {/iterate}
197 </select>
f9743cf1 198 <a href="admin/account/types">{icon name=wrench title=Gérer} gérer</a>
8f2104cb
FB
199 </td>
200 </tr>
201 <tr class="pair">
202 <td class="titre">
203 Surveillance
204 </td>
205 <td>
83752d10 206 <label><input type="checkbox" name="watch" {if $user->watch}checked="checked"{/if} value="1" />
8f2104cb
FB
207 Surveiller l'activité de ce compte</label><br />
208 <span class="smaller">Cette option permet d'avoir des logs complets de l'activité
209 du compte via le logger, et d'être alerté lors des connexions de l'utilisateur.</span>
210 </td>
211 </tr>
212 <tr class="pair">
213 <td class="titre">
214 Commentaire
215 </td>
216 <td>
217 <input type="text" name="comment" size="40" maxlength="64" value="{$user->comment}" />
218 </td>
219 </tr>
7679a55a
VZ
220 <tr class="impair">
221 <td colspan="2" class="center">
222 {* TODO: on 'update_account', update the hashpass field before sending the form. *}
223 <input type="submit" name="update_account" value="Mettre à jour" />
224 <input type="submit" name="su_account" value="Prendre l'identité" />
225 <input type="submit" name="log_account" value="Consulter les logs" />
226 </td>
227 </tr>
8f2104cb 228 </table>
83752d10 229</form>
f9743cf1
FB
230
231<h1>Fiches associées au compte</h1>
232
233<form id="profiles" method="post" action="admin/user/{$user->login()}#account">
234 {xsrf_token_field}
7679a55a 235 <table class="bicol">
f9743cf1
FB
236 <tr>
237 <th></th>
238 <th>Identifiant de la fiche</th>
239 <th></th>
240 </tr>
241 {iterate from=$profiles item=profile}
242 <tr>
243 <td><input type="radio" name="owner" value="{$profile.pid}" {if $profile.owner}checked="checked"{/if}
244 onclick="this.form.submit()" /></td>
245 <td>{$profile.hrpid}</td>
246 <td class="right">
247 <a href="profile/edit/{$profile.hrpid}">{icon name=user_edit}</a>
248 <a href="profile/{$profile.hrpid}" class="popup2">{icon name=user_suit}</a>
249 <a href="javascript:del_profile({$profile.pid})">{icon name=cross}</a>
250 </td>
251 </tr>
252 {/iterate}
253 <tr>
254 <td>
255 <input type="radio" name="owner" value="0" onclick="this.form.submit()" />
256 </td>
257 <td>None</td>
258 <td></td>
259 </tr>
260 <tr class="pair">
261 <td colspan="3">
262 <input type="hidden" name="del_profile" value="" />
263 <input type="text" maxlength="64" name="new_profile" />
264 <input type="submit" name="add_profile" value="Ajouter" />
265 </td>
266 </tr>
267 </table>
268</form>
269
16019034 270</div>
8f2104cb
FB
271
272<!--
273 <h1>Informations sur la fiche</h1>
274 <table cellspacing="0" cellpadding="2" class="tinybicol">
275 <tr>
276 <th colspan="2">
277 <div style="float: right; text-align: right">
278 Matricule = {$mr.matricule}<br />
279 Matricule AX = {$mr.matricule_ax}
280 </div>
281 <div style="float: left; text-align: left">
282 UID = {$mr.user_id}<br />
283 Inscription = {$mr.date_ins|date_format}
284 </div>
285 <input type="hidden" name="user_id" value="{$mr.user_id}" />
286 </th>
287 </tr>
0337d704 288 <tr class="pair">
289 <td class="titre">
290 Nom
291 </td>
292 <td>
293 <input type="text" name="nomN" size="20" maxlength="255" value="{$mr.nom}" />
294 </td>
295 </tr>
296 <tr class="pair">
297 <td class="titre">
298 Nom d'usage
299 </td>
300 <td>
301 <input type="text" name="nomusageN" size="20" maxlength="255" value="{$mr.nom_usage}" />
302 </td>
303 </tr>
304 <tr class="pair">
305 <td class="titre">
a7de4ef7 306 Prénom
0337d704 307 </td>
308 <td>
309 <input type="text" name="prenomN" size="20" maxlength="30" value="{$mr.prenom}" />
310 </td>
311 </tr>
312 <tr class="pair">
313 <td class="titre">
d2958bcf 314 Sexe
315 </td>
316 <td>
a44f405e
SJ
317 <label>femme <input type="radio" name="sexeN" {if $mr.sexe}checked="checked"{/if} value='1'/></label>
318 <label><input type="radio" name="sexeN" {if !$mr.sexe}checked="checked"{/if} value='0'/> homme</label>
d2958bcf 319 </td>
320 </tr>
321 <tr class="pair">
322 <td class="titre">
0337d704 323 Droits
324 </td>
325 <td>
326 <select name="permsN">
327 <option value="user" {if $mr.perms eq "user"}selected="selected"{/if}>user</option>
328 <option value="admin" {if $mr.perms eq "admin"}selected="selected"{/if}>admin</option>
329 <option value="pending" {if $mr.perms eq "pending"}selected="selected"{/if}>pending</option>
330 <option value="disabled" {if $mr.perms eq "disabled"}selected="selected"{/if}>disabled</option>
331 </select>
332 </td>
333 </tr>
3c1e6a1e 334 {if $mr.perms neq 'pending'}
0337d704 335 <tr class="pair">
336 <td class="titre">
3c1e6a1e 337 {if $mr.naiss_err}<span class="erreur">{/if}
0337d704 338 Date de naissance
3c1e6a1e 339 {if $mr.naiss_err}</span>{/if}
0337d704 340 </td>
341 <td>
342 <input type="text" name="naissanceN" size="12" maxlength="10" value="{$mr.naissance}" />
bd5e1f3d 343 {if $mr.naissance_ini neq '0000-00-00' && $mr.naissance neq $mr.naissance_ini}
e8439508 344 <span class="erreur smaller">({icon name=error}Date de naissance connue&nbsp;: {$mr.naissance_ini})</span>
bd5e1f3d 345 {elseif $mr.naiss_err}
346 <span class="erreur smaller">({icon name=error}Date de naissance incohérente)</span>
347 {/if}
0337d704 348 </td>
349 </tr>
3c1e6a1e 350 {/if}
0337d704 351 <tr class="pair">
352 <td class="titre">
a7de4ef7 353 Date de décès
34ffe99a 354 </td>
355 <td>
356 <input type="text" name="decesN" size="12" maxlength="10" value="{$mr.deces}" />
357 </td>
358 </tr>
359 <tr class="pair">
360 <td class="titre">
0337d704 361 Promo
362 </td>
363 <td>
364 <input type="text" name="promoN" size="4" maxlength="4" value="{$mr.promo}" />
365 </td>
366 </tr>
f97f90f0 367 {if $mr.perms eq 'pending'}
368 <tr class="center">
369 <td colspan="2">
3c1e6a1e 370 <input type="hidden" name="naissanceN" value="{$mr.naissance}" />
f97f90f0 371 <input onclick="doEditUser(); return true;" type="submit" name="u_edit" value="UPDATE" />
372 </td>
373 </tr>
374 {else}
0337d704 375 <tr class="center">
376 <td>
d5fbeef6 377 <a href="profile/{$mr.hruid}" class="popup2">[Voir fiche]</a>
0337d704 378 </td>
379 <td>
380 <input onclick="doEditUser(); return true;" type="submit" name="u_edit" value="UPDATE" />
381 </td>
382 </tr>
383 <tr class="center">
384 <td>
86f0a6af 385 <a href="admin/trombino/{$mr.user_id}">[Trombino]</a>
0337d704 386 </td>
387 <td>
a7de4ef7 388 <input type="submit" name="u_kill_conf" value="Désinscrire" />
0337d704 389 </td>
390 </tr>
f97f90f0 391 {/if}
0337d704 392 </table>
393</form>
f97f90f0 394{if $mr.perms neq 'pending'}
0337d704 395<p>
a7de4ef7 396Ne pas utiliser [Désinscrire] si le but est d'exclure la personne.
0337d704 397Pour ceci changer ses permissions en 'disabled'.
398</p>
16019034
FB
399-->
400
401<div id="emails">
7679a55a 402<h1>Gestion de l'adresse X.org</h1>
16019034 403
f9743cf1 404<form id="alias" method="post" action="admin/user/{$user->login()}#emails">
e61326ed 405 {xsrf_token_field}
7679a55a 406 <table class="bicol" cellpadding="2" cellspacing="0">
0337d704 407 <tr>
5c5554b7 408 <th class="alias" colspan="3">
73e4718a 409 Alias email de l'utilisateur
0337d704 410 </th>
411 </tr>
412 {iterate from=$aliases item=a}
413 <tr class="{cycle values="impair,pair"}">
414 <td>
415 <input type="radio" name='best' {if $a.best}checked="checked"{/if} value='{$a.alias}' onclick="this.form.submit()" />
5c5554b7 416 </td>
417 <td>
0337d704 418 {if $a.for_life}<strong>{$a.alias}</strong>{else}{$a.alias}{/if}
419 {if $a.expire}<span class='erreur'>(expire le {$a.expire|date_format})</span>{/if}
420 </td>
421 {if $a.for_life}
a7de4ef7 422 <td>garanti à vie*</td>
0337d704 423 {else}
424 <td class="action">
f9743cf1 425 <a href="javascript:del_alias('{$a.alias}')">{icon name=cross}</a>
0337d704 426 </td>
427 {/if}
428 </tr>
429 {/iterate}
430 <tr class="{cycle values="impair,pair"}">
5c5554b7 431 <td colspan="2" class="detail">
0337d704 432 <input type="text" name="email" size="29" maxlength="60" value="" />
433 </td>
434 <td class="action">
435 <input type="hidden" name="user_id" value="{$mr.user_id}" />
436 <input type="hidden" name="del_alias" value="" />
437 <input type="submit" name="add_alias" value="Ajouter" />
438 </td>
439 </tr>
73e4718a
FB
440 <tr class="{cycle values="impair,pair"}">
441 <td colspan="3" class="desc">
442 <strong>* à ne modifier qu'avec l'accord express de l'utilisateur !!!</strong>
443 </td>
444 </tr>
0337d704 445 </table>
446</form>
447
73e4718a 448<br />
5ff3f06b 449
f9743cf1 450<form id="fwds" method="post" action="admin/user/{$user->login()}#emails">
e61326ed 451 {xsrf_token_field}
0337d704 452 <table class="bicol" cellpadding="2" cellspacing="0">
453 <tr>
8ffa657a 454 <th colspan="4">
0337d704 455 Redirections
456 </th>
457 </tr>
11ed26e5
VZ
458 {assign var=actives value=false}
459 {assign var=disabled value=false}
0337d704 460 {foreach item=mail from=$emails}
2069538b 461 {cycle assign=class values="impair,pair"}
462 <tr class="{$class}">
afde0a3a 463 {if $mail->active && $mail->has_disable()}
441c2451 464 {assign var=actives value=true}
afde0a3a 465 {elseif $mail->disabled && $mail->has_disable()}
441c2451 466 {assign var=disabled value=true}
467 {/if}
0337d704 468 <td class="titre">
441c2451 469 {if $mail->active}active{elseif $mail->disabled}suspendue{/if}
0337d704 470 </td>
471 <td>
441c2451 472 <span class="smaller">
473 {if !$mail->disabled}
474 <a href="javascript:act_fwd('{$mail->email}',{if $mail->active}false{else}true{/if})">
475 {if $mail->active}des{elseif $mail->broken}ré{/if}activer
476 </a>
477 {/if}
478 </span>
8ffa657a 479 </td>
480 <td>
dc557110 481 {if $mail->broken}<span style="color: #f00">{/if}
7679a55a 482 {if $mail->email == 'googleapps'}<a href="admin/googleapps/user/{$user->login()}">{/if}
11ed26e5 483 {$mail->display_email}
1edd4e69 484 {if $mail->email == 'googleapps'}</a>{/if}
dc557110 485 {if $mail->broken}<em> (en panne)</em></span>{/if}
0337d704 486 </td>
487 <td class="action">
afde0a3a 488 {if $mail->is_removable()}
f9743cf1 489 <a href="javascript:del_fwd('{$mail->email}')">{icon name=cross}</a>
afde0a3a 490 {/if}
0337d704 491 </td>
492 </tr>
2069538b 493 {if $mail->panne && $mail->panne neq "0000-00-00"}
494 <tr class="{$class}">
441c2451 495 <td colspan="3" class="smaller" style="color: #f00">
2069538b 496 {icon name=error title="Panne"}
11ed26e5 497 Panne de {$mail->display_email} le {$mail->panne|date_format}
a7de4ef7 498 {if $mail->panne neq $mail->last}confirmée le {$mail->last|date_format}{/if}
2069538b 499 </td>
441c2451 500 <td class="action">
501 <a href="javascript:clean_fwd('{$mail->email}')">effacer les pannes</a>
502 </td>
2069538b 503 </tr>
504 {/if}
0337d704 505 {/foreach}
441c2451 506 {cycle assign=class values="impair,pair"}
507 <tr class="{$class}">
8ffa657a 508 <td class="titre" colspan="2">
faefdbb7 509 Ajouter une adresse
0337d704 510 </td>
511 <td>
512 <input type="text" name="email" size="29" maxlength="60" value="" />
513 </td>
514 <td class="action">
515 <input type="hidden" name="user_id" value="{$mr.user_id}" />
516 <input type="hidden" name="del_fwd" value="" />
441c2451 517 <input type="hidden" name="clean_fwd" value="" />
8ffa657a 518 <input type="hidden" name="activate_fwd" value="" />
519 <input type="hidden" name="deactivate_fwd" value="" />
0337d704 520 <input type="submit" name="add_fwd" value="Ajouter" />
521 </td>
522 </tr>
441c2451 523 <tr class="{$class}">
524 <td colspan="4" class="center">
525 {if $actives}
faefdbb7 526 <input type="submit" name="disable_fwd" value="Désactiver la redirection des emails" />
441c2451 527 {/if}
528 {if $disabled}
faefdbb7 529 <input type="submit" name="enable_fwd" value="Réactiver la redirection des emails" />
441c2451 530 {/if}
531 </td>
532 </tr>
0337d704 533 </table>
534</form>
535
73e4718a
FB
536{javascript name="ajax"}
537{test_email hruid=$user->login()}
538
539<h1>Autres adresses de l'utilisateur</h1>
540
7679a55a 541<table class="bicol">
73e4718a
FB
542 <th>Virtual aliases auquel l'utilisateur appartient</th>
543 {foreach from=$virtuals item=virtual}
544 <tr class="{cycle values="impair,pair"}">
545 <td>{$virtual}</td>
546 </tr>
547 {/foreach}
548</table>
549
16019034
FB
550</div>
551
552<div id="forums">
553
7679a55a 554<h1>Gestion de l'accès au forums</h1>
16019034 555
f9743cf1 556<form id="bans" method="post" action="admin/user/{$user->login()}#forums">
16019034 557 {xsrf_token_field}
7679a55a 558 <table class="bicol">
16019034
FB
559 <tr>
560 <th colspan="4">
561 Permissions sur les forums
562 </th>
563 </tr>
564 <tr class="impair">
565 <td class="titre">
566 Poster
567 </td>
568 <td>
569 <input type="text" name="write_perm" size="32" maxlength="255" value="{$bans.write_perm}" />
570 </td>
571 <td class="action">
572 <a href="javascript:ban_write()">Bannir</a>
573 </td>
574 </tr>
575 <tr class="pair">
576 <td class="titre">
577 Lire
578 </td>
579 <td>
580 <input type="text" name="read_perm" size="32" maxlength="255" value="{$bans.read_perm}" />
581 </td>
582 <td class="action">
583 <a href="javascript:ban_read()">Bannir</a>
584 </td>
585 </tr>
586 <tr class="impair">
587 <td class="titre">
588 Commentaire
589 </td>
590 <td colspan="2">
591 <input type="text" name="comment" size="40" maxlength="255" value="{$bans.comment}" />
592 </td>
593 </tr>
594 <tr class="center">
595 <td colspan="3">
596 <input type="hidden" name="user_id" value="{$mr.user_id}" />
597 <input type="submit" name="b_edit" value="Modifier" />
598 </td>
599 </tr>
600 </table>
601</form>
602</div>
603
604
0337d704 605{/if}
606{/if}
607
a7de4ef7 608{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}