templates/security/inscription.html.twig line 1

Open in your IDE?
  1. {% extends 'base_login.html.twig' %}
  2. {% block stylesheets %}
  3. {{ parent() }}
  4.         <link rel="stylesheet" href="/intl-tel-input/css/intlTelInput.css">
  5. {% endblock %}
  6. {% block title %}Connexion{% endblock %}
  7. {% block notification %}
  8.     {% for message in app.session.flashbag.get('user_inscription_fail') %}
  9.         <div class="alert alert-primary">
  10.             <i class="fa fa-info"></i>{{ message }}
  11.             <button type="button" class="close" data-dismiss="alert" aria-label="Close">
  12.                 <span aria-hidden="true" class="text-primary">&times;</span>
  13.             </button>
  14.         </div>
  15.     {% endfor %}
  16. {% endblock %}
  17. {% block body %}
  18. <div class="row">
  19.     <div class="col-sm-6 card bg-white border border-white ml-auto mr-auto"
  20.         style="padding-bottom: 10px; margin-bottom :15px;">
  21.         <div class="card-body">
  22.             <div class="text-center mb-4">
  23.                 <a class="h1 text-info font-weight-bold text-center text-decoration-none" href="/">
  24.                     <img src="/assets/icon/favicon/ma-ico-180x180.png" width="70px" class="avatar rounded-circle shadow-sm mr-2" alt="app">
  25.                 </a>
  26.             </div>
  27.             
  28.             <div class="card-app bg-white border-0 mb-4">
  29.                 <div class="card-body pl-5 pr-5">
  30.                     <div class="row mt-4" style="margin-bottom:20px;">
  31.                         <div class="col-sm-6 text-left">
  32.                             <div class="h5 font-bold text-dark">
  33.                                 Inscrivez-vous
  34.                             </div>
  35.                         </div>
  36.                         <div class="col-sm-6 text-right">
  37.                             <div class="h5 text-dark">
  38.                                     <p class="" style="font-size:14px;color : rgba(40, 58, 90, 0.9);"> ou 
  39.                                         <a class="font-semi-bold" href="{{ path('app_user_login')}}">  connectez-vous</a></p>
  40.                             </div>
  41.                         </div>
  42.                     </div>
  43.         
  44.                     <div class="row">
  45.                         <div class="col-sm-12">
  46.         
  47.                             {{ form_start(form) }}
  48.                             {{ form_row(form.username) }}
  49.                             {{ form_row(form.login) }}
  50.                             {{ form_row(form.mail) }}
  51.                             {{ form_row(form.telephone,{'attr': {'style': 'width:100%'}}) }}
  52.                             {% if form.password is defined %}
  53.                             {{ form_row(form.password) }}
  54.                             {% endif %}
  55.                              {{ form_row(form.verificationMode) }}
  56.                         
  57.                             <br />
  58.                             {% if form.termsAccepted is defined %}
  59.                             {{ form_row(form.termsAccepted) }}. <a href="{{ path('app_cgu_cgv') }}" target="_blank">Conditions
  60.                                 générales d'utilisation</a>
  61.                             <hr />
  62.                             {% endif %}
  63.         
  64.                             <div class="text-right">
  65.                                 <button type="submit" class="font-semi-bold btn btn-primary-app btn-sm  pt-3 pb-3"
  66.                                     style="width:100%; font-size:15px;">
  67.                                     S'inscrire
  68.                                 </button>
  69.                                 
  70.                             </div>
  71.                             {{ form_end(form) }}
  72.                             <br />
  73.                             
  74.                         </div>
  75.         
  76.                     </div>
  77.                 </div>
  78.             </div>
  79.             
  80.         </div>
  81.     </div>
  82. </div>
  83. <div class="modal fade" id="information" tabindex="-1" role="dialog" aria-labelledby="confirmationTitle"
  84.     aria-hidden="true">
  85.     <div class="modal-dialog modal-dialog-centered" role="document">
  86.         <div class="modal-content">
  87.             <div class="modal-header">
  88.                 <h5 class="modal-title" id="exampleModalLongTitle">
  89.                     <strong>Information</strong>
  90.                 </h5>
  91.             </div>
  92.             <div class="modal-body">
  93.                 <p>
  94.                     <strong id="divInfo">Veuillez renseigner toutes les informations!</strong>
  95.                 </p>
  96.             </div>
  97.             <div class="modal-footer">
  98.                 <button type="button" class="btn btn-primary-app pr-5 pl-5 btn-sm" data-dismiss="modal"
  99.                     aria-label="Close">OK</button>
  100.             </div>
  101.         </div>
  102.     </div>
  103. </div>
  104. {% endblock %}
  105. {% block javascripts %}
  106. {{ parent() }}
  107. <script src="/intl-tel-input/js/intlTelInput-jquery.js"></script>
  108. <script src="/intl-tel-input/js/intlTelInput.js"></script>
  109. <script src="/intl-tel-input/js/data.js"></script>
  110. <script src="/intl-tel-input/js/utils.js"></script>
  111. <script>
  112.     const inputTelephone = $('#user_iscription_telephone');
  113.     var initError="";
  114.     if (inputTelephone.length) {
  115.             var input = document.querySelector('#user_iscription_telephone');
  116.             var iti = intlTelInput(input, {
  117.                 initialCountry: "cd",
  118.                 utilsScript: "intl-tel-input/build/js/utils.js",
  119.                 preferredCountries: ["cd"],
  120.                 formatOnDisplay: false,
  121.             });
  122.             inputTelephone.on('blur', function (event) {
  123.                 const num = iti.getNumber().substring(1);
  124.                 const code      =   iti.selectedCountryData.dialCode;
  125.                 if (!iti.isValidNumber()) {
  126.                     inputTelephone.addClass('is-invalid');
  127.                     
  128.                     if (!initError) {
  129.                             initError = true;
  130.                     }
  131.                 } else {
  132.                      inputTelephone.removeClass('is-invalid');
  133.                 }
  134.                 $(this).val(num);
  135.             })
  136.     }
  137.     $('#btnSave').on('click', function () {
  138.         if ($("#security_login").val() == null ||
  139.             $("#security_login").val() == '' ||
  140.             $("#security_username").val() == null ||
  141.             $("#security_username").val() == '' ||
  142.             $("#security_level").val() == null ||
  143.             $("#security_level").val() == '') {
  144.             $("#information").modal("show");
  145.         } else {
  146.             var level = $("#security_level").val();
  147.             if (level == 'STRUCTURE') {
  148.                 if ($("#security_organization").val() == null ||
  149.                     $("#security_organization").val() == '') {
  150.                     $('#divInfo').empty();
  151.                     $('#divInfo').append("Veuillez sélectionner la structure d'appartenance");
  152.                     $("#information").modal("show");
  153.                     return;
  154.                 }
  155.             } else {
  156.                 if ($("#security_pcode").val() == null ||
  157.                     $("#security_pcode").val() == '') {
  158.                     $('#divInfo').empty();
  159.                     $('#divInfo').append("Veuillez sélectionner l'entité d'appartenance");
  160.                     $("#information").modal("show");
  161.                     return;
  162.                 }
  163.             }
  164.             $("#confirmation").modal("show");
  165.         }
  166.     });
  167. </script>
  168. {% endblock %}