Display more info about education on profile pages (Closes #1186).
[platal.git] / templates / admin / user.tpl
CommitLineData
0337d704 1{**************************************************************************}
2{* *}
9f5bd98e 3{* Copyright (C) 2003-2010 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">
1bf36cd1 28 <input type="hidden" name="uid" value="{$smarty.request.uid}" />
210c547f 29 Confirmer la suppression de l'utilisateur {$smarty.request.uid} ({$user->fullName()})&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[
0337d704 38function del_alias(alias) {
39 document.forms.alias.del_alias.value = alias;
40 document.forms.alias.submit();
41}
42
f9743cf1
FB
43function del_profile(pid) {
44 document.forms.profiles.del_profile.value = pid;
45 document.forms.profiles.submit();
46}
47
0337d704 48function del_fwd(fwd) {
49 document.forms.fwds.del_fwd.value = fwd;
50 document.forms.fwds.submit();
51}
83353c71
FB
52
53function del_openid(id) {
54 document.forms.openid.del_openid.value = id;
55 document.forms.openid.submit();
56}
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();
83353c71 80 $('.ui-tabs-nav li').width('24%')
73e4718a 81 .click(function() { $(this).children('a').click() });
16019034
FB
82});
83
0337d704 84// ]]>
85</script>
86{/literal}
87
16019034 88<div id="tabs">
7679a55a 89 <ul style="margin-top: 0">
83353c71 90 <li><a href="{$platal->pl_self()}#account"><span >Compte de {$user->login()}</span></a></li>
7679a55a 91 <li><a href="{$platal->pl_self()}#emails"><span>Emails</span></a></li>
83353c71 92 <li><a href="{$platal->pl_self()}#authext"><span>OpenID</span></a></li>
7679a55a
VZ
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">
98f28a5f
SJ
110 {if $user->state eq 'pending'}
111 Non-inscrit
112 {else}
8f2104cb 113 Inscrit le {$user->registration_date|date_format}
98f28a5f 114 {/if}
f97f90f0 115 </div>
116 <div style="float: left; text-align: left">
210c547f 117 {icon name=user_gray} {$user->hruid} (uid {$user->id()})
f97f90f0 118 </div>
8f2104cb 119 <input type="hidden" name="uid" value="{$user->id()}" />
0337d704 120 </th>
121 </tr>
8f2104cb
FB
122 <tr>
123 <td class="titre">Nom complet</td>
aef87266 124 <td>{if $hasProfile}{$user->fullName()}{else}<input type="text" name="full_name" maxlength="255" value="{$user->fullName()}" />{/if}</td>
8f2104cb
FB
125 </tr>
126 <tr>
d081acb2 127 <td class="titre">Nom annuaire</td>
aef87266 128 <td>{if $hasProfile}{$user->directoryName()}{else}<input type="text" name="directory_name" maxlength="255" value="{$user->directoryName()}" />{/if}</td>
d081acb2
SJ
129 </tr>
130 <tr>
8f2104cb 131 <td class="titre">Nom affiché</td>
aef87266 132 <td>{if $hasProfile}{$user->displayName()}{else}<input type="text" name="display_name" maxlength="255" value="{$user->displayName()}" />{/if}</td>
8f2104cb
FB
133 </tr>
134 <tr>
135 <td class="titre">Sexe</td>
136 <td>
137 <label>femme <input type="radio" name="sex" value="female" {if $user->isFemale()}checked="checked"{/if} /></label>
83752d10 138 <label><input type="radio" name="sex" value="male" {if !$user->isFemale()}checked="checked"{/if} /> homme</label>
0337d704 139 </td>
8f2104cb
FB
140 </tr>
141 <tr class="impair">
142 <td class="titre">Mot de passe</td>
0337d704 143 <td>
5f4ce949 144 <div style="float: left">
853c66f2 145 <input type="text" name="new_plain_password" size="10" maxlength="256" value="********" />
2477a631 146 <input type="hidden" name="pwhash" value="" />
5f4ce949
FB
147 </div>
148 <div style="float: left; margin-top: 5px;">
853c66f2 149 {checkpasswd prompt="new_plain_password" submit="dummy_none"}
5f4ce949 150 </div>
0337d704 151 </td>
152 </tr>
8f2104cb
FB
153 <tr class="impair">
154 <td class="titre">Mot de passe SMTP</td>
155 <td>
156 <div style="float: left">
157 <input type="password" name="weak_password" size="10" maxlength="256" value="" />
158 {if $user->weak_access}
159 <input type="submit" name="disable_weak_access" value="Supprimer" />
160 {/if}
161 </div>
162 </td>
163 </tr>
164 <tr class="impair">
165 <td class="titre">Accès RSS</td>
166 <td>
167 <label>
83752d10 168 <input type="checkbox" name="token_access" {if $user->token_access}checked="checked"{/if} value="1" />
8f2104cb
FB
169 activer l'accès
170 </label>
171 </td>
172 </tr>
173 <tr class="impair">
174 <td class="titre">Skin</td>
175 <td>
176 <select name="skin">
177 <option value="" {if !$user->skin}selected="selected"{/if}>Aucune (défaut du système)</option>
178 {iterate from=$skins item=skin}
179 <option value="{$skin.id}" {if $user->skin eq $skin.id}selected="selected"{/if}>{$skin.name}</option>
180 {/iterate}
181 </select>
182 </td>
183 </tr>
184 <tr class="pair">
185 <td class="titre">Etat du compte</td>
186 <td>
187 <select name="state">
188 <option value="pending" {if $user->state eq 'pending'}selected="selected"{/if}>pending (Non-inscrit)</option>
16019034 189 <option value="active" {if $user->state eq 'active'}selected="selected"{/if}>active (Inscrit, peut se logguer)</option>
8f2104cb
FB
190 <option value="disabled" {if $user->state eq 'disabled'}selected="selected"{/if}>disabled (Inscrit, accès interdit)</option>
191 </select><br />
192 <label>
193 <input type="checkbox" name="is_admin" value="1" {if $user->is_admin}checked="checked"{/if} />
194 administrateur du site
195 </label>
196 </td>
197 </tr>
198 <tr class="pair">
199 <td class="titre">Type de compte</td>
200 <td>
201 <select name="type">
202 {iterate from=$account_types item=type}
203 <option value="{$type.type}" {if $user->type eq $type.type}selected="selected"{/if}>{$type.type} ({$type.perms})</option>
204 {/iterate}
205 </select>
f9743cf1 206 <a href="admin/account/types">{icon name=wrench title=Gérer} gérer</a>
8f2104cb
FB
207 </td>
208 </tr>
209 <tr class="pair">
210 <td class="titre">
211 Surveillance
212 </td>
213 <td>
83752d10 214 <label><input type="checkbox" name="watch" {if $user->watch}checked="checked"{/if} value="1" />
8f2104cb
FB
215 Surveiller l'activité de ce compte</label><br />
216 <span class="smaller">Cette option permet d'avoir des logs complets de l'activité
217 du compte via le logger, et d'être alerté lors des connexions de l'utilisateur.</span>
218 </td>
219 </tr>
220 <tr class="pair">
221 <td class="titre">
222 Commentaire
223 </td>
224 <td>
225 <input type="text" name="comment" size="40" maxlength="64" value="{$user->comment}" />
226 </td>
227 </tr>
7679a55a
VZ
228 <tr class="impair">
229 <td colspan="2" class="center">
2477a631 230 <input type="submit" name="update_account" value="Mettre à jour" onclick="return hashResponse('new_plain_password', false, false);" />
7679a55a
VZ
231 <input type="submit" name="su_account" value="Prendre l'identité" />
232 <input type="submit" name="log_account" value="Consulter les logs" />
233 </td>
234 </tr>
8f2104cb 235 </table>
83752d10 236</form>
f9743cf1
FB
237
238<h1>Fiches associées au compte</h1>
239
240<form id="profiles" method="post" action="admin/user/{$user->login()}#account">
241 {xsrf_token_field}
7679a55a 242 <table class="bicol">
f9743cf1
FB
243 <tr>
244 <th></th>
245 <th>Identifiant de la fiche</th>
246 <th></th>
247 </tr>
248 {iterate from=$profiles item=profile}
249 <tr>
250 <td><input type="radio" name="owner" value="{$profile.pid}" {if $profile.owner}checked="checked"{/if}
251 onclick="this.form.submit()" /></td>
e4e58ca6 252 <td>{$profile.hrpid} (pid {$profile.pid})</td>
f9743cf1
FB
253 <td class="right">
254 <a href="profile/edit/{$profile.hrpid}">{icon name=user_edit}</a>
255 <a href="profile/{$profile.hrpid}" class="popup2">{icon name=user_suit}</a>
256 <a href="javascript:del_profile({$profile.pid})">{icon name=cross}</a>
257 </td>
258 </tr>
259 {/iterate}
260 <tr>
261 <td>
262 <input type="radio" name="owner" value="0" onclick="this.form.submit()" />
263 </td>
264 <td>None</td>
265 <td></td>
266 </tr>
267 <tr class="pair">
268 <td colspan="3">
269 <input type="hidden" name="del_profile" value="" />
270 <input type="text" maxlength="64" name="new_profile" />
271 <input type="submit" name="add_profile" value="Ajouter" />
272 </td>
273 </tr>
274 </table>
275</form>
276
16019034 277</div>
8f2104cb 278
16019034 279<div id="emails">
7679a55a 280<h1>Gestion de l'adresse X.org</h1>
16019034 281
f9743cf1 282<form id="alias" method="post" action="admin/user/{$user->login()}#emails">
e61326ed 283 {xsrf_token_field}
7679a55a 284 <table class="bicol" cellpadding="2" cellspacing="0">
0337d704 285 <tr>
5c5554b7 286 <th class="alias" colspan="3">
73e4718a 287 Alias email de l'utilisateur
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">
f9743cf1 303 <a href="javascript:del_alias('{$a.alias}')">{icon name=cross}</a>
0337d704 304 </td>
305 {/if}
306 </tr>
307 {/iterate}
308 <tr class="{cycle values="impair,pair"}">
5c5554b7 309 <td colspan="2" class="detail">
0337d704 310 <input type="text" name="email" size="29" maxlength="60" value="" />
311 </td>
312 <td class="action">
210c547f 313 <input type="hidden" name="uid" value="{$user->id()}" />
0337d704 314 <input type="hidden" name="del_alias" value="" />
315 <input type="submit" name="add_alias" value="Ajouter" />
316 </td>
317 </tr>
73e4718a
FB
318 <tr class="{cycle values="impair,pair"}">
319 <td colspan="3" class="desc">
320 <strong>* à ne modifier qu'avec l'accord express de l'utilisateur !!!</strong>
321 </td>
322 </tr>
0337d704 323 </table>
324</form>
325
73e4718a 326<br />
5ff3f06b 327
f9743cf1 328<form id="fwds" method="post" action="admin/user/{$user->login()}#emails">
e61326ed 329 {xsrf_token_field}
0337d704 330 <table class="bicol" cellpadding="2" cellspacing="0">
331 <tr>
8ffa657a 332 <th colspan="4">
0337d704 333 Redirections
334 </th>
335 </tr>
11ed26e5
VZ
336 {assign var=actives value=false}
337 {assign var=disabled value=false}
0337d704 338 {foreach item=mail from=$emails}
2069538b 339 {cycle assign=class values="impair,pair"}
340 <tr class="{$class}">
afde0a3a 341 {if $mail->active && $mail->has_disable()}
441c2451 342 {assign var=actives value=true}
afde0a3a 343 {elseif $mail->disabled && $mail->has_disable()}
441c2451 344 {assign var=disabled value=true}
345 {/if}
0337d704 346 <td class="titre">
441c2451 347 {if $mail->active}active{elseif $mail->disabled}suspendue{/if}
0337d704 348 </td>
349 <td>
441c2451 350 <span class="smaller">
351 {if !$mail->disabled}
352 <a href="javascript:act_fwd('{$mail->email}',{if $mail->active}false{else}true{/if})">
353 {if $mail->active}des{elseif $mail->broken}ré{/if}activer
354 </a>
355 {/if}
356 </span>
8ffa657a 357 </td>
358 <td>
dc557110 359 {if $mail->broken}<span style="color: #f00">{/if}
7679a55a 360 {if $mail->email == 'googleapps'}<a href="admin/googleapps/user/{$user->login()}">{/if}
11ed26e5 361 {$mail->display_email}
1edd4e69 362 {if $mail->email == 'googleapps'}</a>{/if}
dc557110 363 {if $mail->broken}<em> (en panne)</em></span>{/if}
0337d704 364 </td>
365 <td class="action">
afde0a3a 366 {if $mail->is_removable()}
f9743cf1 367 <a href="javascript:del_fwd('{$mail->email}')">{icon name=cross}</a>
afde0a3a 368 {/if}
0337d704 369 </td>
370 </tr>
2069538b 371 {if $mail->panne && $mail->panne neq "0000-00-00"}
372 <tr class="{$class}">
441c2451 373 <td colspan="3" class="smaller" style="color: #f00">
2069538b 374 {icon name=error title="Panne"}
11ed26e5 375 Panne de {$mail->display_email} le {$mail->panne|date_format}
a7de4ef7 376 {if $mail->panne neq $mail->last}confirmée le {$mail->last|date_format}{/if}
2069538b 377 </td>
441c2451 378 <td class="action">
379 <a href="javascript:clean_fwd('{$mail->email}')">effacer les pannes</a>
380 </td>
2069538b 381 </tr>
382 {/if}
0337d704 383 {/foreach}
441c2451 384 {cycle assign=class values="impair,pair"}
385 <tr class="{$class}">
8ffa657a 386 <td class="titre" colspan="2">
faefdbb7 387 Ajouter une adresse
0337d704 388 </td>
389 <td>
390 <input type="text" name="email" size="29" maxlength="60" value="" />
391 </td>
392 <td class="action">
1844170a 393 <input type="hidden" name="uid" value="{$user->id()}" />
0337d704 394 <input type="hidden" name="del_fwd" value="" />
441c2451 395 <input type="hidden" name="clean_fwd" value="" />
8ffa657a 396 <input type="hidden" name="activate_fwd" value="" />
397 <input type="hidden" name="deactivate_fwd" value="" />
0337d704 398 <input type="submit" name="add_fwd" value="Ajouter" />
399 </td>
400 </tr>
441c2451 401 <tr class="{$class}">
402 <td colspan="4" class="center">
403 {if $actives}
faefdbb7 404 <input type="submit" name="disable_fwd" value="Désactiver la redirection des emails" />
441c2451 405 {/if}
406 {if $disabled}
faefdbb7 407 <input type="submit" name="enable_fwd" value="Réactiver la redirection des emails" />
441c2451 408 {/if}
409 </td>
410 </tr>
0337d704 411 </table>
412</form>
413
73e4718a
FB
414{javascript name="ajax"}
415{test_email hruid=$user->login()}
416
417<h1>Autres adresses de l'utilisateur</h1>
418
7679a55a 419<table class="bicol">
b5997e90
FB
420 <tr>
421 <th>Virtual aliases auquel l'utilisateur appartient</th>
422 </tr>
73e4718a
FB
423 {foreach from=$virtuals item=virtual}
424 <tr class="{cycle values="impair,pair"}">
425 <td>{$virtual}</td>
426 </tr>
427 {/foreach}
428</table>
83353c71 429</div>
73e4718a 430
83353c71
FB
431<div id="authext">
432<h1>Gestion des autorisations d'authentification externe</h1>
433
434<form id="openid" method="post" action="admin/user/{$user->login()}#authext">
435 {xsrf_token_field}
436 <table class="bicol">
437 <tr>
438 <th colspan="2">Sites de confiance</th>
439 </tr>
440 {iterate from=$openid item=site}
441 <tr class="{cycle values="pair,impair"}">
442 <td><a href="{$site.url}">{$site.url}</a></td>
443 <td><a href="javascript:del_openid({$site.id})">{icon name=cross}</a></td>
444 </tr>
445 {/iterate}
446 </table>
447 <div><input type="hidden" name="del_openid"/></div>
448</form>
16019034
FB
449</div>
450
451<div id="forums">
7679a55a 452<h1>Gestion de l'accès au forums</h1>
16019034 453
f9743cf1 454<form id="bans" method="post" action="admin/user/{$user->login()}#forums">
16019034 455 {xsrf_token_field}
7679a55a 456 <table class="bicol">
16019034
FB
457 <tr>
458 <th colspan="4">
459 Permissions sur les forums
460 </th>
461 </tr>
462 <tr class="impair">
463 <td class="titre">
464 Poster
465 </td>
466 <td>
467 <input type="text" name="write_perm" size="32" maxlength="255" value="{$bans.write_perm}" />
468 </td>
469 <td class="action">
470 <a href="javascript:ban_write()">Bannir</a>
471 </td>
472 </tr>
473 <tr class="pair">
474 <td class="titre">
475 Lire
476 </td>
477 <td>
478 <input type="text" name="read_perm" size="32" maxlength="255" value="{$bans.read_perm}" />
479 </td>
480 <td class="action">
481 <a href="javascript:ban_read()">Bannir</a>
482 </td>
483 </tr>
484 <tr class="impair">
485 <td class="titre">
486 Commentaire
487 </td>
488 <td colspan="2">
489 <input type="text" name="comment" size="40" maxlength="255" value="{$bans.comment}" />
490 </td>
491 </tr>
492 <tr class="center">
493 <td colspan="3">
210c547f 494 <input type="hidden" name="uid" value="{$user->id()}" />
16019034
FB
495 <input type="submit" name="b_edit" value="Modifier" />
496 </td>
497 </tr>
498 </table>
499</form>
500</div>
501
1ac65dd4 502{else}
16019034 503
1ac65dd4
PC
504{literal}
505<script type="text/javascript">
506/* <![CDATA[ */
507 function add_user_to_url(f) {
508 f.action += '/' + f.login.value;
509 }
510/* ]]> */
511</script>
512{/literal}
513<form method="post" action="admin/user" onsubmit="add_user_to_url(this); return true">
514 {xsrf_token_field}
515 <table class="tinybicol" cellspacing="0" cellpadding="2">
516 <tr>
517 <th>
518 Administrer
519 </th>
520 </tr>
521 <tr class="pair">
522 <td class="center">
523 Il est possible d'entrer ici n'importe quelle adresse mail&nbsp;: redirection, melix, ou alias.
524 </td>
525 </tr>
526 <tr>
527 <td class="center">
210c547f 528 <input type="text" name="login" size="40" maxlength="255" value="{$smarty.request.login|default:$user->hruid}" />
1ac65dd4
PC
529 </td>
530 </tr>
531 <tr>
532 <td class="center">
533 <input type="submit" name="select" value=" edit " /> &nbsp;&nbsp;
534 <input type="submit" name="su_account" value=" su " /> &nbsp;&nbsp;
535 <input type="submit" name="log_account" value=" logs " />
536 </td>
537 </tr>
538 </table>
539</form>
0337d704 540{/if}
0337d704 541
a7de4ef7 542{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}