templates/Frontend/Candidat/vacation.html.twig line 1

Open in your IDE?
  1. {% extends "Frontend/base-vacataire.html.twig" %}
  2. {% block body %}
  3.     <div id="presentationCadre">
  4.         {% block title %}<title>Espace vacataire</title>{% endblock %}
  5.          <div class="row mt-4 justify-content-end">
  6.             <div class="col-2 pt-2">
  7.                 <a href="{{ path('frontend_candidat') }}" class="btn btn-warning">
  8.                     <i class="fa fa-home"></i>
  9.                     Accueil
  10.                 </a>
  11.             </div>
  12.         </div>
  13.         <div class="row">
  14.             <div class="col">
  15.             <p>Cet espace vous permet de <b> déposer votre dossier de vacataire.</b></p>
  16.                 <p>Pour déposer votre dossier de vacataire, vous devez:
  17.                 <ol>
  18.                     <li>Créer un compte sur ce site si ce n'est pas déjà le cas.</li>
  19.                     <li>Déposer les différentes pièces sur votre espace personnel en sélectionnant auparavant la campagne de vacation.</li>
  20.                 </ol>
  21.                 </p>
  22.             </div>
  23.         </div>
  24.         <div id="msg-success" class="row" {% if message==""%}  style="display: none"      {% endif %}>
  25.             <div class="col">
  26.                 <div  id="msg-success" class="alert alert-{{message_type}}"><i class="fa fa-info-circle"></i> {{ message }}</div>
  27.             </div>
  28.         </div>
  29.         <div class="row mt-4">
  30.             <div id="login" class="col-sm-6">
  31.                 <div class="row">
  32.                     <legend class="border-bottom"> Accéder à votre espace </legend>
  33.                     <form class="form-horizontal" action="{{ path('frontend_vacataire_login_check') }}" method="post">
  34.                         {% if error %}
  35.                             <div id="msg-error" class="alert alert-danger">
  36.                                 <i class="fa fa-info-circle"></i>
  37.                                 {% if error.message=='Bad credentials.' %}Identifiant et/ou mot de passe éronné.
  38.                                 {% elseif error.message=='User account is disabled.' %} Vous n'avez pas activé votre compte via le premier email que vous avez reçu.
  39.                                 {% elseif error.message=='The presented password cannot be empty.'%}Le mot de passe ne peut être vide.
  40.                                 {% elseif error.message=='The presented password is invalid.'%}Le mot de passe est invalide.
  41.                                 {% else %}{{error.message}}{% endif %}
  42.                             </div>
  43.                         {% endif %}
  44.                         <div class="row mb-2">
  45.                             <label class="col-sm-5" for="username">Identifiant :</label>
  46.                             <div class="col-sm-7">
  47.                                 <input type="text" class="form-control" id="username" name="_username" placeholder="adresse de messagerie" value="{{ last_username }}" />
  48.                             </div>
  49.                         </div>
  50.                         <div class="row mb-2">
  51.                             <label class="col-sm-5" for="password">Mot de passe  :</label>
  52.                             <div class="col-sm-7">
  53.                                 <input type="password" class="form-control" id="password" name="_password" />
  54.                             </div>
  55.                         </div>
  56.                         <div class="row">
  57.                             <div class="col-md-12 text-center">
  58.                                 <button type="submit" class="btn btn-success">  <span class="fa fa-sign-in-alt" aria-hidden="true"></span> Connexion</button>
  59.                             </div>
  60.                         </div>
  61.                     </form>
  62.                     <div class="passwordLink">
  63.                         <a id="pwdLink"  data-bs-toggle="modal" data-target="#msgPwdOublie"><i class="fa fa-user-circle"> </i> Mot de passe oublié ?</a><br>
  64.                         <a id="activLink"  data-bs-toggle="modal" data-target="#msgActivSend"><i class="fa fa-user-circle"> </i> Vous n'avez pas reçu le mail d'activation ?</a>
  65.                     </div>
  66.                 </div>
  67.             </div>
  68.             <div class="col-sm-6">
  69.                 <div class="row">
  70.                     <legend>Créer votre compte</legend>
  71.                     <form id="form_create" class="form-horizontal" action="{{ path('frontend_vacataire')}}" method="post">
  72.                         {{ form_errors(form) }}
  73.                         <div class="row mb-2">
  74.                             <label class="form-label  col-sm-4" for="{{ form.nom.vars.id }}">Nom :</label>
  75.                             <div class="col-sm-8">
  76.                                 {{ form_widget(form.nom) }}
  77.                             </div>
  78.                         </div>
  79.                         <div class="row mb-2">
  80.                             <label class="form-label  col-sm-4" for="{{ form.prenom.vars.id }}">Prénom :</label>
  81.                             <div class="col-sm-8">
  82.                                 {{ form_widget(form.prenom) }}
  83.                             </div>
  84.                         </div>
  85.                         <div class="row mb-2">
  86.                             <label class="form-label  col-sm-4" for="{{ form.genre.vars.id }}">Genre :</label>
  87.                             <div class="col-sm-8">
  88.                                 {{ form_widget(form.genre) }}
  89.                             </div>
  90.                         </div>
  91.                         <div class="row mb-2">
  92.                             <label class="form-label  col-sm-4" for="{{ form.date_naissance.vars.id }}">Date de naissance :</label>
  93.                             <div class="col-sm-8">
  94.                                 {{ form_widget(form.date_naissance) }}
  95.                             </div>
  96.                         </div>
  97.                         <div class="row mb-2">
  98.                             <label class="form-label  col-sm-4" for="{{ form.lieu_naissance.vars.id }}">Lieu de naissance :</label>
  99.                             <div class="col-sm-8">
  100.                                 {{ form_widget(form.lieu_naissance) }}
  101.                             </div>
  102.                         </div>
  103.                         <div class="row mb-2">
  104.                             <label class="form-label  col-sm-4" for="{{ form.tel.vars.id }}">Tel :</label>
  105.                             <div class="col-sm-8">
  106.                                 {{ form_widget(form.tel) }}
  107.                             </div>
  108.                         </div>
  109.                         <div class="row mb-2">
  110.                             <label class="form-label  col-sm-4" for="{{ form.email.vars.id }}">Courriel :</label>
  111.                             <div class="col-sm-8">
  112.                                 {{ form_widget(form.email) }}
  113.                             </div>
  114.                         </div>
  115.                         <div class="row mb-2">
  116.                             <label class="form-label  col-sm-4" for="{{ form.adresse.vars.id }}">Adresse :</label>
  117.                             <div class="col-sm-8">
  118.                                 {{ form_widget(form.adresse) }}
  119.                             </div>
  120.                         </div>
  121.                         <div class="row mb-2">
  122.                             <label class="form-label  col-sm-4" for="{{ form.cp.vars.id }}">CP :</label>
  123.                             <div class="col-sm-8">
  124.                                 {{ form_widget(form.cp) }}
  125.                             </div>
  126.                         </div>
  127.                         <div class="row mb-2">
  128.                             <label class="form-label  col-sm-4" for="{{ form.ville.vars.id }}">Ville :</label>
  129.                             <div class="col-sm-8">
  130.                                 {{ form_widget(form.ville) }}
  131.                             </div>
  132.                         </div>
  133.                         <div class="row mb-2">
  134.                             <label class="form-label  col-sm-4" for="{{ form.pays.vars.id }}">Pays :</label>
  135.                             <div class="col-sm-8">
  136.                                 {{ form_widget(form.pays) }}
  137.                             </div>
  138.                         </div>
  139.                         <div class="row mb-2">
  140.                             <label class="form-label  col-sm-4" for="{{ form.password.password.vars.id }}">Mot de passe :</label>
  141.                             <div class="col-sm-8">
  142.                                 {{ form_widget(form.password.password) }}
  143.                             </div>
  144.                         </div>
  145.                         <div class="row mb-2">
  146.                             <label class="form-label col-sm-4" for="{{ form.password.confirmation.vars.id }}">Confirmation :</label>
  147.                             <div class="col-sm-8">
  148.                                 {{ form_widget(form.password.confirmation) }}
  149.                             </div>
  150.                         </div>
  151.                         <div class="row mb-2">
  152.                             <label class="form-label  col-sm-4" for="{{ form.terms.vars.id }}">Termes :</label>
  153.                             <div class="col-sm-1 terms">
  154.                                 {{ form_widget(form.terms) }}
  155.                             </div>
  156.                             <div class="col-sm-offset-7">
  157.                             </div>
  158.                         </div>
  159.                         {{ form_rest(form) }}
  160.                         <div class="control-group">
  161.                             <div class="controls">
  162.                                 <button type="submit" class="btn btn-success"><span class="fa fa-check-circle" ></span>  Valider</button>
  163.                             </div>
  164.                         </div>
  165.                     </form>
  166.                 </div>
  167.             </div>
  168.         </div>
  169.         <div class="modal fade" id="msgPwdOublie" tabindex="-1" aria-labelledby="msgPwdOublieModalLabel" aria-hidden="true">
  170.             <div class="modal-dialog modal-dialog-centered">
  171.                 <div class="modal-content">
  172.                     <div class="modal-header">
  173.                         <h5 class="modal-title" id="msgPwdOublieModalLabel">Générer un nouveau mot de passe</h5>
  174.                         <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  175.                     </div>
  176.                     <div class="modal-body">
  177.                         <div class="row">
  178.                             <div class="col-3">
  179.                                 <label for="user_login">Identifiant : </label>
  180.                             </div>
  181.                             <div class="col-9">
  182.                                 <input id="user_login" placeholder="adresse de messagerie" class="form-control" type="text" value="" name="user_login">
  183.                             </div>
  184.                         </div>
  185.                     </div>
  186.                     <div class="modal-footer">
  187.                         <button type="button" class="btn btn-secondary" data-bs-dismiss="modal"><i class="fa fa-times-circle"></i> Fermer</button>
  188.                         <button id="submitPwd" class="btn btn-primary"> <i class="fa fa-paper-plane"></i> Générer un mot de passe</button>
  189.                     </div>
  190.                 </div>
  191.             </div>
  192.         </div>
  193.         <div class="modal fade" id="msgActivSend" tabindex="-1" aria-labelledby="msgActivSendModalLabel" aria-hidden="true">
  194.             <div class="modal-dialog modal-dialog-centered">
  195.                 <div class="modal-content">
  196.                     <div class="modal-header">
  197.                         <h5 class="modal-title" id="msgActivSendModalLabel">Renvoyer le courriel d'activation</h5>
  198.                         <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  199.                     </div>
  200.                     <div class="modal-body">
  201.                         <div class="row">
  202.                             <div class="col-3">
  203.                                 <label for="user_login_activ">Identifiant : </label>
  204.                             </div>
  205.                             <div class="col-9">
  206.                                 <input id="user_login_activ" placeholder="adresse de messagerie" class="form-control" type="text" value="" name="user_login_activ">
  207.                             </div>
  208.                         </div>
  209.                     </div>
  210.                     <div class="modal-footer">
  211.                         <button type="button" class="btn btn-secondary" data-bs-dismiss="modal"><i class="fa fa-times-circle"></i> Fermer</button>
  212.                         <button id="submitActivSend" class="btn btn-primary"> <i class="fa fa-paper-plane"></i> Envoyer le courriel</button>
  213.                     </div>
  214.                 </div>
  215.             </div>
  216.         </div>
  217.         <div class="modal fade" id="msgTermes" tabindex="-1" aria-labelledby="termesModalLabel" aria-hidden="true">
  218.             <div class="modal-dialog">
  219.                 <div class="modal-content">
  220.                     <div class="modal-header">
  221.                         <h5 class="modal-title" id="termesModalLabel">Termes et conditions d'utilisation</h5>
  222.                         <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  223.                     </div>
  224.                     <div class="modal-body">
  225.                             {% include 'Frontend/Candidat/Termes/termes.html.twig' %}
  226.                     </div>
  227.                     <div class="modal-footer">
  228.                         <button type="button" class="btn btn-secondary" data-bs-dismiss="modal"><i class="fa fa-times-circle"></i> Fermer</button>
  229.                         <button id="validTermes" class="btn btn-primary"><i class="fa fa-user-check"></i> J'accepte</button>
  230.                     </div>
  231.                 </div>
  232.             </div>
  233.         </div>
  234.     </div>
  235.     <script type="text/javascript">
  236.         $(document).ready(function() {
  237.             var msgTermes = new bootstrap.Modal(document.getElementById('msgTermes'));
  238.             var msgPwdOublie = new bootstrap.Modal(document.getElementById('msgPwdOublie'));
  239.             var msgActivSend= new bootstrap.Modal(document.getElementById('msgActivSend'));
  240.             $("#rec_candidat_terms").on('click', function (event){
  241.                 if(this.checked)
  242.                     msgTermes.show();
  243.             });
  244.             $("#activLink").on('click', function (event){
  245.                 event.preventDefault();
  246.                 msgActivSend.show();
  247.             });
  248.             $("#submitActivSend").on('click', function (event){
  249.                 event.preventDefault();
  250.                 msgActivSend.hide();
  251.                 var objData = {};
  252.                 var url = $(this.element).attr('data-url');
  253.                 objData = { mail: $("#user_login_activ").val() };
  254.                 if(validateEmail($("#user_login_activ").val()))
  255.                 {
  256.                     $.ajax({
  257.                         url: '{{  path('frontend_vacataire_activate_account') }}',
  258.                         dataType: "json",
  259.                         data : objData,
  260.                         type: 'POST',
  261.                         success: function (data)
  262.                         {
  263.                             if(data.success==1)
  264.                             {
  265.                                 $("#msg-success").show();
  266.                                 $("#msg-success").find(".alert").html(data.message);
  267.                                 $("#msg-success").find(".alert").removeClass('alert-');
  268.                                 $("#msg-success").find(".alert").addClass('alert-info');
  269.                             }
  270.                             else
  271.                             {
  272.                                 $("#msg-error").show();
  273.                                 $("#msg-error").html(data.message);
  274.                             }
  275.                         }
  276.                     });
  277.                 }
  278.             });
  279.             $("#pwdLink").on('click', function (event){
  280.                 event.preventDefault();
  281.                 msgPwdOublie.show();
  282.             });
  283.             $("#submitPwd").on('click', function (event){
  284.                 event.preventDefault();
  285.                 msgPwdOublie.hide();
  286.                 var objData = {};
  287.                 var url = $(this.element).attr('data-url');
  288.                 objData = { mail: $("#user_login").val() };
  289.                 if(validateEmail($("#user_login").val()))
  290.                 {
  291.                     $.ajax({
  292.                         url: '{{  path('frontend_vacataire_mdp') }}',
  293.                         dataType: "json",
  294.                         data : objData,
  295.                         type: 'POST',
  296.                         success: function (data)
  297.                         {
  298.                             if(data.success==1)
  299.                             {
  300.                                 $("#msg-success").show();
  301.                                 $("#msg-success").find(".alert").html(data.message);
  302.                                 $("#msg-success").find(".alert").removeClass('alert-');
  303.                                 $("#msg-success").find(".alert").addClass('alert-info');
  304.                             }
  305.                             else
  306.                             {
  307.                                 $("#msg-error").show();
  308.                                 $("#msg-error").html(data.message);
  309.                             }
  310.                         }
  311.                     });
  312.                 }
  313.             });
  314.         });
  315.         function validateEmail(sEmail) {
  316.             var filter = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
  317.             if (filter.test(sEmail)) {
  318.                 return true;
  319.             }
  320.             else {
  321.                 return false;
  322.             }
  323.         }
  324.     </script>
  325. {% endblock %}
  326. {% block contact %}
  327.   <p><a target="_blank" href="mailto:{{ mail_rh_vacataire }}">Contacter les ressources humaines</a></p>
  328. {% endblock %}