Warns animator about password modification when user has more than one group.
[platal.git] / templates / xnetgrp / membres-edit.tpl
1 {**************************************************************************}
2 {*                                                                        *}
3 {*  Copyright (C) 2003-2010 Polytechnique.org                             *}
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 <script type="text/javascript">
24 {literal}
25   function showInformations(box)
26   {
27       var state = (box.value != 'virtual') ? '' : 'none';
28       document.getElementById('prenom').style.display = state;
29       document.getElementById('sexe').style.display = state;
30       document.getElementById('make_X').style.display = state;
31       document.getElementById('password').style.display = state;
32   }
33
34   function showXInput(box)
35   {
36      if (box.checked) {
37        document.getElementById('make_X_cb').style.display = 'none';
38        document.getElementById('make_X_login').style.display = '';
39      }
40   }
41 {/literal}
42 </script>
43
44 <h1>{$asso->nom}&nbsp;: gestion des membres</h1>
45
46 <p>
47 [<a href='{$platal->ns}annuaire'>Retour à l'annuaire</a>]
48 </p>
49
50 <h2>
51   Édition du profil de {profile user=$user groupperms=false sex=false promo=true}
52   <a href="mailto:{$user->bestEmail()}">{icon name=email title="mail"}</a>
53 </h2>
54
55 <form method="post" action="{$platal->ns}member/{$platal->argv[1]}">
56   {xsrf_token_field}
57   <table cellpadding="0" cellspacing="0" class='tinybicol'>
58     <tr class="pair">
59       <td class="titre">
60         Permissions&nbsp;:
61       </td>
62       <td>
63         <select name="group_perms">
64           <option value="membre" {if $user->group_perms eq 'membre'}selected="selected"{/if}>Membre</option>
65           <option value="admin" {if $user->group_perms eq 'admin'}selected="selected"{/if}>Animateur</option>
66         </select>
67       </td>
68     </tr>
69     {if !$user->profile()}
70     <tr class="impair">
71       <td class="titre">
72         Type d'utilisateur&nbsp;:
73       </td>
74       <td>
75         <select name="type" onchange="showInformations(this); return true">
76           <option value="xnet" {if $user->type neq 'virtual'}selected="selected"{/if}>Personne physique</option>
77           <option value="virtual" {if $user->type eq "virtual"}selected="selected"{/if}>Personne morale</option>
78         </select>
79       </td>
80     </tr>
81       <tr id="prenom" class="impair" {if $user->type eq "virtual"}style="display: none"{/if}>
82       <td class="titre">
83         Nom affiché&nbsp;:
84       </td>
85       <td>
86         <input type="text" value="{$user->displayName()}" name="display_name" size="40" />
87       </td>
88     </tr>
89     <tr class="impair">
90       <td class="titre">
91         Nom complet&nbsp;:
92       </td>
93       <td>
94         <input type="text" value="{$user->fullName()}" name="full_name" size="40" />
95       </td>
96     </tr>
97     <tr class="impair">
98       <td class="titre">
99         Nom annuaire&nbsp;:
100       </td>
101       <td>
102         <input type="text" value="{$user->directoryName()}" name="directory_name" size="40" />
103       </td>
104     </tr>
105     <tr id="sexe" class="impair" {if $user->type eq "virtual"}style="display: none"{/if}>
106       <td class="titre">
107         Sexe&nbsp;:
108       </td>
109       <td>
110         <select name="sex">
111           <option value="male"{if !$user->isFemale()} selected="selected"{/if}>Homme</option>
112           <option value="female"{if $user->isFemale()} selected="selected"{/if}>Femme</option>
113         </select>
114       </td>
115     </tr>
116     {/if}
117     {if !$user->profile() || !$user->perms}
118     <tr class="impair">
119       <td class="titre">
120         Email&nbsp;:
121       </td>
122       <td>
123         <input type="text" value="{$user->forlifeEmail()}" name="email" size="40" />
124       </td>
125     </tr>
126     {/if}
127     <tr class="impair">
128       <td class="titre">
129         Commentaire&nbsp;:
130       </td>
131       <td>
132         <input type="text" name="comm" value="{$user->group_comm}" size="40" maxlength="255" /><br />
133         <small>Poste, origine&hellip; (accessible à toutes les personnes autorisées à consulter l'annuaire)</small>
134       </td>
135     </tr>
136     {if $user->type eq 'xnet'}
137     <tr class="impair" id="password">
138       <td class="titre">Mot de passe&nbsp;:</td>
139       <td>
140         <div style="float: left">
141           <input type="text" name="new_plain_password" size="10" maxlength="256" value="********" />
142           <input type="hidden" name="pwhash" value="" />
143         </div>
144         <div style="float: left; margin-top: 5px;">
145           {checkpasswd prompt="new_plain_password" submit="dummy_none"}
146         </div>
147         {if !$onlyGroup}
148         <div style="clear: both">
149           <small class="error">
150             Attention, cet utilisateur est inscrit à d'autres groupes, changer son mot de passe modifiera aussi ses accès aux autres groupes.
151           </small>
152         </div>
153         {/if}
154       </td>
155     </tr>
156     <tr id="make_X">
157       <td colspan="2">
158         <span id="make_X_cb">
159           <input type="checkbox" name="is_x" id="is_x" onclick="showXInput(this);" onchange="showXInput(this);" />
160           <label for="is_x">coche cette case s'il s'agit d'un X</label>
161         </span>
162         <span id="make_X_login" style="display: none">
163           <span class="titre">Identifiant (prenom.nom.promo)&nbsp;:</span>
164           <input type="text" name="login_X" value="" />
165         </span>
166       </td>
167     </tr>
168     {/if}
169   </table>
170
171   <h2>Abonnement aux listes</h2>
172
173   <table cellpadding="0" cellspacing="0" class='large'>
174     <tr>
175       <th>&nbsp;</th>
176       <th>Liste</th>
177       <th>Description</th>
178       <th>Nb</th>
179     </tr>
180     {foreach from=$listes item=liste}
181     <tr>
182       <td class='right'>
183         <input type='hidden' name='ml1[{$liste.list}]' value='{$liste.sub}' />
184         <input type='checkbox' name='ml2[{$liste.list}]' {if $liste.sub eq 2}checked="checked"{/if} />
185       </td>
186       <td>
187         <a href='{$platal->ns}lists/members/{$liste.list}'>{$liste.list}</a>
188       </td>
189       <td>{$liste.desc|smarty:nodefaults}</td>
190       <td class='right'>{$liste.nbsub}</td>
191     </tr>
192     {foreachelse}
193     <tr><td colspan='4'>Pas de listes pour ce groupe</td></tr>
194     {/foreach}
195   </table>
196
197   <h2>Abonnement aux alias</h2>
198
199   <table cellpadding="0" cellspacing="0" class='large'>
200     <tr>
201       <th>&nbsp;</th>
202       <th>Alias</th>
203     </tr>
204
205     {foreach from=$alias key=address item=sub}
206     <tr>
207       <td align='right'>
208         <input type='hidden' name='ml3[{$address}]' value='{$sub}' />
209         <input type='checkbox' name='ml4[{$address}]' {if $sub}checked="checked"{/if} />
210       </td>
211       <td>
212         <a href='{$platal->ns}alias/admin/{$address}'>{$address}</a>
213       </td>
214     </tr>
215     {foreachelse}
216     <tr><td colspan='2'>Pas d'alias pour ce groupe</td></tr>
217     {/foreach}
218   </table>
219
220   <div class="center">
221     <br />
222     <input type="submit" name='change' value="Valider ces changements" onclick="return hashResponse('new_plain_password', false, false);" />
223     &nbsp;
224     <input type="reset" value="Annuler ces changements" />
225   </div>
226
227 </form>
228
229
230 {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}