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