templates/usr/ajo.html.twig line 1

Open in your IDE?
  1. {% extends "usrajo_view.html.twig" %}
  2. {% block body %}
  3.     <div class="card-body" id="form_usrajo">      {# pour cibler le formulaire à valider #}
  4.         
  5.         {% form_theme form_ajo 'form/fields.html.twig' %}
  6.         {{ form_errors(form_ajo) }}
  7.         {{ form_start(form_ajo) }}
  8.             <div class="row" style="padding-top:30px;">
  9.                 <div class="col-1">&nbsp;</div>
  10.                 <div class="col-10 text-left" style="border-left: 1px solid #ff0000;">
  11.                     <span class="titre1-base">Créer un compte</span>
  12.                     <div class="texte2-base">
  13.                         <div style="min-height: 18px;">Votre compte sera validé par l'administrateur Rural Consult et vous recevrez un courriel de confirmation.</div>
  14.                         <div style="min-height: 18px;">Vous pourrez ensuite accéder aux outils d'analyse financière réalisés par Rural Consult.</div>
  15.                     </div>
  16.                     
  17.                     <div class="ibox-content">
  18.                         {% if errors|length > 0 %}
  19.                             <h5 class="text-danger" style="text-decoration: underline;">Des erreurs de saisie ont été relevées</h5>
  20.                             <ul class="text-warning">
  21.                                 {% for error in errors %}
  22.                                     <li>{{ error.message }}</li>
  23.                                 {% endfor %}
  24.                             </ul>
  25.                         {% endif %}
  26.                     
  27.                         <div class="row">
  28.                             <div class="col-3">
  29.                                 <div class="form-floating">
  30.                                     {# si à désactiver : 'disabled':'disabled' dans attr #}
  31.                                     {{ form_widget(form_ajo.catid, {'attr': {'class': 'form-select', 'placeholder': 'pasaffiche'}}) }}    
  32.                                     {{ form_label(form_ajo.catid) }}
  33.                                 </div>
  34.                             </div>
  35.                             <div class="col-6">
  36.                                 <div class="form-floating">
  37.                                     {{ form_widget(form_ajo.usrorg, {'attr': {'class': 'form-control',' placeholder': 'pasaffiche'}}) }}
  38.                                     {{ form_label(form_ajo.usrorg) }}
  39.                                 </div>
  40.                             </div>
  41.                             <div class="col-2">
  42.                                 <div class="form-floating">
  43.                                 {{ form_widget(form_ajo.usrcodpos, {'attr': {'class': 'form-control',' placeholder': 'pasaffiche'}}) }}
  44.                                 {{ form_label(form_ajo.usrcodpos) }}
  45.                                 </div>
  46.                             </div>
  47.                         </div>
  48.                         
  49.                         <div class="row" style="padding-top:6px;">
  50.                             <div class="col-3">
  51.                                 <div class="form-floating">
  52.                                     {{ form_widget(form_ajo.usrnom, {'attr': {'class': 'form-control',' placeholder': 'pasaffiche'}}) }}
  53.                                     {{ form_label(form_ajo.usrnom) }}
  54.                                 </div>
  55.                             </div>
  56.                             <div class="col-3 text-left">
  57.                                 <div class="form-floating">
  58.                                     {{ form_widget(form_ajo.usrpre, {'attr': {'class': 'form-control',' placeholder': 'pasaffiche'}}) }}
  59.                                     {{ form_label(form_ajo.usrpre) }}
  60.                                 </div>
  61.                             </div>
  62.                             <div class="col-5 text-left">
  63.                                 <div class="form-floating">
  64.                                     {{ form_widget(form_ajo.usremail, {'attr': {'class': 'form-control',' placeholder': 'pasaffiche'}}) }}
  65.                                     {{ form_label(form_ajo.usremail) }}
  66.                                 </div>
  67.                             </div>
  68.                         </div>
  69.                         
  70.                         <div class="row"style="padding-top:6px;">
  71.                             <div class="col-3">
  72.                                 <div class="form-floating">
  73.                                     {{ form_widget(form_ajo.username, {'attr': {'class': 'form-control',' placeholder': 'pasaffiche'}}) }}
  74.                                     {{ form_label(form_ajo.username) }}
  75.                                 </div>
  76.                             </div>
  77.                             <div class="col-3">
  78.                                 <div class="form-floating">
  79.                                     {{ form_widget(form_ajo.usrpwdajo, {'attr': {'class': 'form-control',' placeholder': 'pasaffiche'}}) }}
  80.                                     {{ form_label(form_ajo.usrpwdajo) }}
  81.                                 </div>
  82.                             </div>
  83.                             <div class="col-3">
  84.                                 <div class="form-floating">
  85.                                     {{ form_widget(form_ajo.usrpwdconf, {'attr': {'class': 'form-control',' placeholder': 'pasaffiche'}}) }}
  86.                                     {{ form_label(form_ajo.usrpwdconf) }}
  87.                                 </div>
  88.                             </div>
  89.                             <div class="col-1">
  90.                                 <div class="input-group">
  91.                                     <span class="input-group-text"><i class="bi-eye myeye" style="color:#6bbdae;" title="Afficher vos mots de passe"></i></span>
  92.                                 </div>
  93.                             </div>
  94.                         </div>
  95.                         <div class="row" style="padding-top:10px;">
  96.                             <div class="col-10 texte2-base">
  97.                                 <div style="min-height: 18px;">
  98.                                     Toutes les informations suivies d'une étoile (*) doivent être obligatoirement renseignées.
  99.                                 </div>
  100.                                 <div style="min-height: 18px;">
  101.                                     Déterminez vous-même votre identifiant ainsi que votre mot de passe en respectant les contraintes indiquées ci-dessous.
  102.                                 </div>
  103.                                 <div style="min-height: 18px;">
  104.                                     Pour limiter les risques d'usurpation d'identité, votre identifiant (login) doit être composé de 10 caractères au minimum et 20 au maximum.
  105.                                 </div>
  106.                                 <div style="min-height: 18px;">
  107.                                     Votre mot de passe doit être composé de 13 caractères au minimum et contenir au moins 2 minuscules, 2 majuscules, 2 chiffres et 2 caractères non alphanumériques.<br />
  108.                                     Exemple de mot de passe : <b>UnMotdepa45é;</b>
  109.                                 </div>
  110.                             </div>
  111.                         </div>
  112.                         
  113.                         <div class="row" style="padding-top:10px;">
  114.                             <div class="col-2" title="Acceptation des conditions générales d'utilisation des outils Collectiv'Finance">
  115.                                 <div class="form-check form-switch">                {# checked par défaut #}
  116.                                   <input class="form-check-input" type="checkbox" role="switch" id="usr_acccgu">
  117.                                   <label class="texte2-base" style="padding-top:5px;" for="usr_acccgu">Accepter les CGU</label>
  118.                                 </div>
  119.                             </div> 
  120.                             <div class="col-2 text-center" style="padding-top:5px;">
  121.                                     {{ form_widget(form_ajo.Enregistrer) }}
  122.                             </div>
  123.                             <div class="col-8 texte2-base">
  124.                                 <div style="min-height: 18px;">
  125.                                     En créant votre espace personnel, vous acceptez les 
  126.                                     <a href="https://www.banquedesterritoires.fr/conditions-generales-dutilisation-du-site-internet-banque-des-territoires" target="_blank">
  127.                                         conditions générales d’utilisation
  128.                                     </a>                                </div>
  129.                                 <div style="min-height: 18px;">
  130.                                     Ainsi que les conditions de collecte et de traitement de vos 
  131.                                     <a href="https://www.banquedesterritoires.fr/donnees-personnelles" target="_blank">
  132.                                         données à caractère personnel
  133.                                     </a>
  134.                                 </div>
  135.                             </div>
  136.                         </div>
  137.                     </div>
  138.                 </div>
  139.             </div>
  140.         {{ form_end(form_ajo) }}
  141.     </div>
  142.     
  143.     <script>
  144.         $(document).ready(function(){
  145.             
  146.             initPlugins();
  147.             $('#usr_ajo_usrorg, #usr_ajo_usrnom').blur(function(){
  148.                 var str = $(this).val();
  149.                 if(str.length > 0){
  150.                    $(this).val(str.toUpperCase());
  151.                 }
  152.             });
  153.             $('#usr_ajo_usrpwdajo, #usr_ajo_usrpwdconf').blur(function(){
  154.                 var pwd = $(this).val();
  155.                 if(pwd.length != 0){
  156.                     verifmpwd(pwd);
  157.                 }
  158.             });
  159.             {# situation départ récup Ctrl #}
  160.             $('label[for="usr_acccgu"]').html('Accepter les CGU ?');
  161.             $('#usr_ajo_usracccgu').val('');
  162.             $('#usr_ajo_Enregistrer').prop("disabled",true);
  163.             $('#usr_ajo_Enregistrer').css('font-style', 'italic');
  164.             {# inclure ou non période si clic #}
  165.             $('#usr_acccgu').click(function(e){
  166.                 var usr_acccgu = $(this);
  167.                 if(usr_acccgu.prop("checked") == true){
  168.                     $('#usr_ajo_usracccgu').val('checked');
  169.                     $('label[for="usr_acccgu"]').html('J\'accepte les CGU');
  170.                     $('#usr_ajo_Enregistrer').prop("disabled",false);
  171.                     $('#usr_ajo_Enregistrer').css('font-style', 'normal');
  172.                 }else{
  173.                     $('#usr_ajo_usracccgu').val('');
  174.                     $('label[for="usr_acccgu"]').html('Accepter les CGU ?');
  175.                     $('#usr_ajo_Enregistrer').prop("disabled",true);
  176.                     $('#usr_ajo_Enregistrer').css('font-style', 'italic');
  177.                 }                
  178.             });
  179.             
  180.             $('.myeye').click(function(e){
  181.                 var zieodkf = $('#usr_ajo_usrpwdajo').attr('type') == 'password' ? true:false;
  182.                 if(zieodkf){
  183.                     $('#usr_ajo_usrpwdajo').attr('type', 'text'); 
  184.                     $('#usr_ajo_usrpwdconf').attr('type', 'text'); 
  185.                     $(this).attr('class', 'bi-eye-slash myeye');
  186.                     $(this).attr('style', 'color:#ff0000;font-size:15px;');
  187.                     $(this).attr('title', 'Cacher vos mots de passe');
  188.                 }else{
  189.                     $('#usr_ajo_usrpwdajo').attr('type', 'password'); 
  190.                     $('#usr_ajo_usrpwdconf').attr('type', 'password'); 
  191.                     $(this).attr('class', 'bi-eye myeye');
  192.                     $(this).attr('style', 'color:#4a9abd;font-size:15px;');
  193.                     $(this).attr('title', 'Afficher vos mots de passe');
  194.                 }
  195.             });
  196.             
  197.             $('#usr_ajo_Enregistrer').click(function(e) {    {# vérif saisies / modifs zones obligatoires #}
  198.                 e.preventDefault();
  199.                 var pasok=0;
  200.                 {# vérif saisie données obligatoires #}
  201.                 if(($('#usr_ajo_usrnom').val() == '')||($('#usr_ajo_usrpre').val() == '')||($('#usr_ajo_usrorg').val() == '')||($('#usr_ajo_username').val() == '')||($('#usr_ajo_usremail').val() == '')||($('#usr_ajo_usrcodpos').val() == '')){
  202.                     pasok=1;
  203.                     if($('#usr_ajo_usrnom').val() == ''){
  204.                         $('label[for^=usr_ajo_usrnom]').css({'color':'#ff0000'});
  205.                     }else{
  206.                         $('label[for^=usr_ajo_usrnom]').css({'color':'#000000'});
  207.                     }
  208.                     if($('#usr_ajo_usrpre').val() == ''){
  209.                         $('label[for^=usr_ajo_usrpre]').css({'color':'#ff0000'});
  210.                     }else{
  211.                         $('label[for^=usr_ajo_usrpre]').css({'color':'#000000'});
  212.                     }
  213.                     if($('#usr_ajo_usrorg').val() == ''){
  214.                         $('label[for^=usr_ajo_usrorg]').css({'color':'#ff0000'});
  215.                     }else{
  216.                         $('label[for^=usr_ajo_usrorg]').css({'color':'#000000'});
  217.                     }
  218.                     if($('#usr_ajo_username').val() == ''){
  219.                         $('label[for^=usr_ajo_username]').css({'color':'#ff0000'});
  220.                     }else{
  221.                         $('label[for^=usr_ajo_username]').css({'color':'#000000'});
  222.                     }
  223.                     if($('#usr_ajo_usremail').val() == ''){
  224.                         $('label[for^=usr_ajo_usremail]').css({'color':'#ff0000'});
  225.                     }else{
  226.                         $('label[for^=usr_ajo_usremail]').css({'color':'#000000'});
  227.                     }
  228.                     if($('#usr_ajo_usrcodpos').val() == ''){
  229.                         $('label[for^=usr_ajo_usrcodpos]').css({'color':'#ff0000'});
  230.                     }else{
  231.                         $('label[for^=usr_ajo_usrcodpos]').css({'color':'#000000'});
  232.                     }
  233.                     if($('#usr_ajo_usracccgu').is(':checked')){
  234.                         $('#usr_ajo_usracccgu').css({'color':'#000000'});
  235.                     }else{
  236.                         $('#usr_ajo_usracccgu').css({'color':'#ff0000'});
  237.                     }
  238.                     
  239.                     swal({
  240.                         title: "Erreur",
  241.                         text: "Veuillez renseigner toutes les informations\n suivies d'une étoile (*)",
  242.                         icon: "warning",
  243.                         button: "Compléter",
  244.                     });                    
  245.                 }
  246.                 
  247.                 {# vérif codpostal #}
  248.                 if(pasok==0){
  249.                     var codpos = $('#usr_ajo_usrcodpos').val();
  250.                     if(codpos.length != 5){
  251.                         pasok=1;
  252.                         swal({
  253.                             title: "Erreur",
  254.                             text: "Le code postal saisi ne contient pas que des chiffres",
  255.                             icon: "warning",
  256.                             button: "Corriger",
  257.                         });
  258.                     }else{
  259.                         var nombr=new Array('0','1','2','3','4','5','6','7','8','9');
  260.                         var nbr = 0;
  261.                         for (i=0; i<codpos.length;i++){
  262.                             for(j=0;j<10;j++) {if(nombr[j]==codpos[i]) {nbr++;}}
  263.                         }
  264.                         if(nbr<5){
  265.                             pasok=1;
  266.                             swal({
  267.                                 title: "Erreur",
  268.                                 text: "Le code postal saisi ne contient pas que des chiffres",
  269.                                 icon: "warning",
  270.                                 button: "Corriger",
  271.                             });
  272.                         }else{
  273.                             if(codpos.substring(0,2)=='00'){        {# dept 00 okbarr #}
  274.                                 pasok=1;
  275.                                 swal({
  276.                                     title: "Erreur",
  277.                                     text: "Le code postal saisi ne paraît pas correct",
  278.                                     icon: "warning",
  279.                                     button: "Corriger",
  280.                                 });
  281.                             }
  282.                         }
  283.                     }
  284.                 }
  285.                 
  286.                 {# vérif login #}
  287.                 if(pasok==0){
  288.                     if($('#usr_ajo_username').val() == ""){
  289.                         pasok=1;
  290.                         swal({
  291.                             title: "Erreur",
  292.                             text: "Vous devez saisir un Identifiant (login)",
  293.                             icon: "warning",
  294.                             button: "Compléter",
  295.                         });                    
  296.                     }else{
  297.                         var str = $('#usr_ajo_username').val();
  298.                         if((str.length<10)||(str.length>20)){
  299.                             pasok=1;
  300.                             swal({
  301.                                 title: "Erreur",
  302.                                 text: "Votre identifiant (login) doit être composé de 10 caractères au minimum, 20 au maximum",
  303.                                 icon: "warning",
  304.                                 button: "Corriger",
  305.                             });                    
  306.                         }
  307.                     }
  308.                 }
  309.                 
  310.                 {# vérif mots de passe #}
  311.                 if(pasok==0){
  312.                     if(($('#usr_ajo_usrpwdajo').val() == "")||($('#usr_ajo_usrpwdconf').val() == "")){
  313.                         pasok=1;
  314.                         swal({
  315.                             title: "Erreur",
  316.                             text: "Vous devez saisir un mot de passe, puis le confirmer",
  317.                             icon: "warning",
  318.                             button: "Compléter",
  319.                         });                    
  320.                     }else{
  321.                         if($('#usr_ajo_usrpwdajo').val() != $('#usr_ajo_usrpwdconf').val()){
  322.                             pasok=1;
  323.                             swal({
  324.                                 title: "Erreur",
  325.                                 text: "Les mots de passe saisis (mot de passe et confirmation)\n ne sont pas identiques",
  326.                                 icon: "warning",
  327.                                 button: "Corriger",
  328.                             });                    
  329.                         }else{
  330.                             var pwda = $('#usr_ajo_usrpwdajo').val();
  331.                             var pwdb = $('#usr_ajo_usrpwdconf').val();
  332.                             if((verifmpwd(pwda)==false)||(verifmpwd(pwdb)==false)){    {# into the main js yol #}
  333.                                 pasok=1;
  334.                             }
  335.                         }
  336.                     }
  337.                 }
  338.                 
  339.                 if(pasok==0) {      {# sans erreur #}
  340.                     showSaveLoading($('#'+this.id));                
  341.                     var form = $('#form_usrajo').find('form');       {# cible le formulaire à valider #}
  342.                     form.submit();
  343.                 }
  344.             });
  345.             
  346.         });
  347.         var showSaveLoading = function(el){
  348.             var label = el.html();
  349.             el.empty();
  350.             el.append('<i class="fa fa-cogs fa-spin"></i> Veuillez patienter...<span class="collapse">'+label+'</span>')
  351.             el.prop('disabled',true);
  352.         }
  353.         
  354.         var hideSaveLoading = function(el){
  355.             var label = el.find('.collapse').html();
  356.             el.empty().html(label);
  357.             el.prop('disabled',false);
  358.         }
  359.         
  360.         var initPlugins = function(){
  361.             // $('.footable').footable();
  362.         }        
  363.     </script>
  364. {% endblock body %}