Overview
Comment:Modernisation installation, renomme repasse en passe_confirmed
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | dev
Files: files | file ages | folders
SHA1: d71d56990e22c5ce6cf987e6d883a389a6e97652
User & Date: bohwaz on 2017-08-09 05:02:00
Other Links: branch diff | manifest | tags
Context
2017-08-09
06:59
Dédoublement du champ ID en deux champs : ID (interne) et numéro de membre (champ membre modifiable) check-in: 3dfb698790 user: bohwaz tags: dev
05:02
Modernisation installation, renomme repasse en passe_confirmed check-in: d71d56990e user: bohwaz tags: dev
2017-08-08
00:01
Correction envoi mails en masse, patch fourni par @nebuchadnezzar check-in: 82dfe8b481 user: bohwaz tags: dev
Changes

Modified src/templates/admin/install.tpl from [8a190c2c94] to [164de6ecf1].

     5      5   {else}
     6      6       <p class="intro">
     7      7           Bienvenue dans Garradin !
     8      8           Veuillez remplir les quelques informations suivantes pour terminer
     9      9           l'installation.
    10     10       </p>
    11     11   
    12         -    {if !empty($error)}
    13         -        <p class="error">{$error}</p>
    14         -    {/if}
           12  +    {form_errors}
    15     13   
    16     14       <form method="post" action="{$self_url}">
    17     15   
    18     16       <fieldset>
    19     17           <legend>Informations sur l'association</legend>
    20     18           <dl>
    21     19               <dt><label for="f_nom_asso">Nom</label> <b title="(Champ obligatoire)">obligatoire</b></dt>
................................................................................
    42     40                   Astuce : un mot de passe de quatre mots choisis au hasard dans le dictionnaire est plus sûr 
    43     41                   et plus simple à retenir qu'un mot de passe composé de 10 lettres et chiffres.
    44     42               </dd>
    45     43               <dd class="help">
    46     44                   Pas d'idée&nbsp;? Voici une suggestion choisie au hasard :
    47     45                   <input type="text" readonly="readonly" title="Cliquer pour utiliser cette suggestion comme mot de passe" id="pw_suggest" value="{$passphrase}" autocomplete="off" />
    48     46               </dd>
    49         -            <dd><input type="password" name="passe_membre" id="f_passe_membre" value="{form_field name=passe_membre}" pattern=".{ldelim}6,{rdelim}" required="required" /></dd>
           47  +            <dd><input type="password" name="passe" id="f_passe_membre" value="{form_field name=passe}" pattern=".{ldelim}6,{rdelim}" required="required" /></dd>
    50     48               <dt><label for="f_repasse_membre">Encore le mot de passe</label> (vérification) <b title="(Champ obligatoire)">obligatoire</b></dt>
    51         -            <dd><input type="password" name="repasse_membre" id="f_repasse_membre" value="{form_field name=repasse_membre}" pattern=".{ldelim}6,{rdelim}" required="required" /></dd>
           49  +            <dd><input type="password" name="passe_confirmed" id="f_repasse_membre" value="{form_field name=passe_confirmed}" pattern=".{ldelim}6,{rdelim}" required="required" /></dd>
    52     50           </dl>
    53     51       </fieldset>
    54     52   
    55     53       <p class="submit">
    56     54           {csrf_field key="install"}
    57     55           <input type="submit" id="f_submit" name="save" value="Terminer l'installation &rarr;" />
    58     56       </p>

Modified src/templates/admin/membres/ajouter.tpl from [291bc29f45] to [6c197884fc].

    23     23               </dd>
    24     24               <dd class="help">
    25     25                   Pas d'idée&nbsp;? Voici une suggestion choisie au hasard :
    26     26                   <input type="text" readonly="readonly" title="Cliquer pour utiliser cette suggestion comme mot de passe" id="pw_suggest" value="{$passphrase}" autocomplete="off" />
    27     27               </dd>
    28     28               <dd><input type="password" name="passe" id="f_passe" value="{form_field name=passe}" pattern=".{ldelim}6,{rdelim}" /></dd>
    29     29               <dt><label for="f_repasse">Encore le mot de passe</label> (vérification)</dt>
    30         -            <dd><input type="password" name="repasse" id="f_repasse" value="{form_field name=repasse}" pattern=".{ldelim}6,{rdelim}" /></dd>
           30  +            <dd><input type="password" name="passe_confirmed" id="f_repasse" value="{form_field name=passe_confirmed}" pattern=".{ldelim}6,{rdelim}" /></dd>
    31     31           </dl>
    32     32       </fieldset>
    33     33   
    34     34       {if $user.droits.membres == Garradin\Membres::DROIT_ADMIN}
    35     35       <fieldset>
    36     36           <legend>Général</legend>
    37     37           <dl>

Modified src/templates/admin/membres/modifier.tpl from [97ca8d4189] to [77d2626485].

    41     41               </dd>
    42     42               <dd class="help">
    43     43                   Pas d'idée&nbsp;? Voici une suggestion choisie au hasard :
    44     44                   <input type="text" readonly="readonly" title="Cliquer pour utiliser cette suggestion comme mot de passe" id="pw_suggest" value="{$passphrase}" autocomplete="off" />
    45     45               </dd>
    46     46               <dd><input type="password" name="passe" id="f_passe" value="{form_field name=passe}" pattern=".{ldelim}6,{rdelim}" /></dd>
    47     47               <dt><label for="f_repasse">Encore le mot de passe</label> (vérification){if $champs.passe.mandatory} <b title="(Champ obligatoire)">obligatoire</b>{/if}</dt>
    48         -            <dd><input type="password" name="repasse" id="f_repasse" value="{form_field name=repasse}" pattern=".{ldelim}6,{rdelim}" /></dd>
           48  +            <dd><input type="password" name="passe_confirmed" id="f_repasse" value="{form_field name=passe_confirmed}" pattern=".{ldelim}6,{rdelim}" /></dd>
    49     49           </dl>
    50     50       </fieldset>
    51     51   
    52     52       {if $user.droits.membres == Garradin\Membres::DROIT_ADMIN && $user.id != $membre.id}
    53     53       <fieldset>
    54     54           <legend>Général</legend>
    55     55           <dl>

Modified src/www/admin/install.php from [a29cc0c7e4] to [58ff9c90a2].

   104    104   if (file_exists(DB_FILE))
   105    105   {
   106    106       $tpl->assign('disabled', true);
   107    107   }
   108    108   else
   109    109   {
   110    110       $tpl->assign('disabled', false);
   111         -    $error = false;
   112    111   
   113    112       if (!empty($_POST['save']))
   114    113       {
   115         -        if (!Utils::CSRF_check('install'))
   116         -        {
   117         -            $error = 'Une erreur est survenue, merci de renvoyer le formulaire.';
   118         -        }
   119         -        elseif (Utils::post('passe_membre') != Utils::post('repasse_membre'))
   120         -        {
   121         -            $error = 'La vérification ne correspond pas au mot de passe.';
   122         -        }
   123         -        else
          114  +        $form->check('install', [
          115  +            'nom_asso'     => 'required',
          116  +            'email_asso'   => 'required|email',
          117  +            'nom_membre'   => 'required',
          118  +            'email_membre' => 'required|email',
          119  +            'passe'        => 'confirmed|required',
          120  +            'cat_membre'   => 'required',
          121  +        ]);
          122  +
          123  +        if (!$form->hasErrors())
   124    124           {
   125    125               try {
   126         -            	Install::install(Utils::post('nom_asso'), Utils::post('adresse_asso'), Utils::post('email_asso'),
   127         -            		Utils::post('cat_membre'), Utils::post('nom_membre'), Utils::post('email_membre'), Utils::post('passe_membre'),
          126  +            	Install::install(f('nom_asso'), f('adresse_asso'), f('email_asso'),
          127  +            		f('cat_membre'), f('nom_membre'), f('email_membre'), f('passe'),
   128    128               		WWW_URL);
   129    129   
   130    130               	Utils::redirect('/admin/login.php');
   131    131               }
   132    132               catch (UserException $e)
   133    133               {
   134    134                   @unlink(DB_FILE);
   135    135   
   136         -                $error = $e->getMessage();
          136  +                $form->addError($e->getMessage());
   137    137               }
   138    138           }
   139    139       }
   140         -
   141         -    $tpl->assign('error', $error);
   142    140   }
   143    141   
   144    142   $tpl->assign('passphrase', Utils::suggestPassword());
   145    143   $tpl->display('admin/install.tpl');