Projet

Général

Profil

Actions

Souhaits #1440

fermé

Nouvelle fiche - Un bouton pour un identifiant et mot de passe par défaut

Ajouté par Manuel Her il y a presque 4 ans. Mis à jour il y a presque 4 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Début:
12/06/2020
Echéance:
% réalisé:

0%

Temps estimé:

Description

Bonjour,
Nous avons des adhérents qui adhèrent par bon d'adhésion papier. Quand on ajoute une nouvelle fiche, il faut entrer un identifiant et un mot de passe.
Je propose d'ajouter un bouton sur le formulaire pour générer un identifiant et un mot de passe.
L'identifiant est généré avec le code postal, le prénom et une chaine unique.

66a67,77
>     
>     {* Générer des identifiants automatiquement à partir du prénom et du code postal *}
>     {if $login->isAdmin() or $login->isStaff() }
>         <div class="button-container" style="margin-bottom: 30px;"> 
>             <button id="generatememberid" class="action ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" role="button" aria-disabled="false" >
>                 <span class="ui-button-text"> <i class="far fa-id-card"></i> Générer automatiquement des identifiants </span>
>             </button>
>         </div>
>     {/if}
>         
>         
95c106
<                             {_T string="Member will be notified by email his account has been modified."}
---
>                             {_T string="Member will be notified by mail his account has been modified."}
371a383,430
> 
> {* Générer des identifiants automatiquement à partir du prénom et du code postal *}
> {if ($login->isAdmin() or $login->isStaff()) }
>                 function generate_string(length = 4,
>                     characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')
>                 {
>                    var result           = '';
>                    var charactersLength = characters.length;
>                    for ( var i = 0; i < length; i++ ) {
>                       result += characters.charAt(Math.floor(Math.random() * charactersLength));
>                    }
>                    return result;
>                 }
>     
>                 $("#prenom_adh").keydown(memberchange);
>                 $("#cp_adh").keydown(memberchange);
>                 
>                 function memberchange() {
>                     if ( $('#prenom_adh').val().trim().length < 1 || $('#cp_adh').val().trim().length < 1 )
>                         $('#generatememberid').hide();//attr('disabled', true);
>                     else
>                         $('#generatememberid').show();//attr('disabled', false);
>                 }
>                 memberchange(); 
> 
>                 $('#generatememberid').click(function(e) {
>                     e.preventDefault();
>                                     
>                     if ($('#prenom_adh').val().length < 1 || $('#cp_adh').val().length < 1) alert('La fiche est incompléte pour générer les identifiants.');
>                     
>                     var login = $('#prenom_adh').val() + $('#cp_adh').val();
>                     login = login.replace('#[@_\.\-\s]#g', '');
>                     login = login.toLowerCase();
>                     login = login + generate_string();
>                     
>                     $('#login_adh').val(login);
>                     $('#pseudo_adh').val(login);
>                     
>                     var pwd = generate_string(8, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ+-*!_-<>');
>                     $('#mdp_adh').val(pwd);
>                     $('#mdp_adh2').val(pwd);
>                      
>                     $("html, body").animate({ scrollTop: $('#login_adh').offset().top-50 }, 1000);
>                     
>                     return false;
>                 });
> {/if}
>                 

Manuel
Actions

Formats disponibles : Atom PDF