templates/bubble/bubble_update.html.twig line 1

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2. {% block title %}- Mise à jour d'une bulle{% endblock %}
  3. {% block breadcrumb %}
  4.     <!-- ============================================================== -->
  5.     <!-- Bread crumb and right sidebar toggle -->
  6.     <!-- ============================================================== -->
  7.     <div class="page-breadcrumb">
  8.         <div class="row custom-between">
  9.             <div class="align-self-center">
  10.                 <h1 class="page-title text-dark font-weight-medium mb-1 text-break">{% trans %}Modifier une bulle{% endtrans %}</h1>
  11.                 <div class="d-flex align-items-center">
  12.                     <nav aria-label="breadcrumb">
  13.                         <ol class="breadcrumb m-0 p-0">
  14.                             <li class="breadcrumb-item">
  15.                                 <li class="breadcrumb-item"><a href="{{ path('home') }}">{% trans %}Page d'accueil{% endtrans %}</a>&nbsp;>&nbsp;&nbsp;>&nbsp;<a href="{{ path('bubble') }}">{% trans %}Mes bulles{% endtrans %}</a>&nbsp;>&nbsp;<span>{% trans %}Modifier une bulle{% endtrans %}</span>
  16.                             </li>
  17.                         </ol>
  18.                     </nav>
  19.                 </div>
  20.             </div>
  21.         </div>
  22.     </div>
  23. {% endblock %}
  24. {% block content %}
  25.     <div class="row">
  26.         <div class="col-12">
  27.             <div class="card">
  28.                 <div class="card-header mc-bg text-white">
  29.                     {% trans %}Informations de la bulle{% endtrans %}
  30.                 </div>
  31.                 <div class="card-body">
  32.                     {{ form_start(bubbleForm) }}
  33.                     <div class="input-group mb-3">
  34.                         <div class="input-group-prepend">
  35.                             <label class="input-group-text" ><i data-feather="tag"
  36.                                                                 class="feather-icon"></i></label>
  37.                         </div>
  38.                         {{ form_widget(bubbleForm.bubble_name, { 'attr' : {
  39.                             'placeholder' : 'Nom de la bulle'
  40.                         }}) }}
  41.                     </div>
  42.                     {% if form_errors(bubbleForm.bubble_name)%}
  43.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.bubble_name) }}</div>
  44.                     {% endif %}
  45.                     <div class="input-group mb-3">
  46.                         <div class="input-group-prepend">
  47.                             <label class="input-group-text" ><i data-feather="mail"
  48.                                                                 class="feather-icon"></i></label>
  49.                         </div>
  50.                         {{ form_widget(bubbleForm.b_address, { 'attr' : {
  51.                             'placeholder' : 'Adresse'
  52.                         }}) }}
  53.                     </div>
  54.                     {% if form_errors(bubbleForm.b_address)%}
  55.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.b_address) }}</div>
  56.                     {% endif %}
  57.                     <div class="input-group mb-3">
  58.                         <div class="input-group-prepend">
  59.                             <label class="input-group-text" ><i data-feather="map-pin"
  60.                                                                 class="feather-icon"></i></label>
  61.                         </div>
  62.                         {{ form_widget(bubbleForm.b_postal_code, { 'attr' : {
  63.                             'placeholder' : 'Code postal'
  64.                         }}) }}
  65.                     </div>
  66.                     {% if form_errors(bubbleForm.b_postal_code)%}
  67.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.b_postal_code) }}</div>
  68.                     {% endif %}
  69.                     <div class="input-group mb-3">
  70.                         <div class="input-group-prepend">
  71.                             <label class="input-group-text" ><i data-feather="home"
  72.                                                                 class="feather-icon"></i></label>
  73.                         </div>
  74.                         {{ form_widget(bubbleForm.b_city_name, { 'attr' : {
  75.                             'placeholder' : 'Ville'
  76.                         }}) }}
  77.                     </div>
  78.                     {% if form_errors(bubbleForm.b_city_name)%}
  79.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.b_city_name) }}</div>
  80.                     {% endif %}
  81.                     <div class="input-group mb-3">
  82.                         <div class="input-group-prepend">
  83.                             <label class="input-group-text" ><i data-feather="map"
  84.                                                                 class="feather-icon"></i></label>
  85.                         </div>
  86.                         {{ form_widget(bubbleForm.b_country, { 'attr' : {
  87.                             'placeholder' : 'Pays'
  88.                         }}) }}
  89.                     </div>
  90.                     {% if form_errors(bubbleForm.b_country)%}
  91.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.b_country) }}</div>
  92.                     {% endif %}
  93.                     <div class="input-group mb-3">
  94.                         <div class="input-group-prepend">
  95.                             <label class="input-group-text" ><i data-feather="check-square"
  96.                                                                 class="feather-icon"></i></label>
  97.                         </div>
  98.                         {{ form_widget(bubbleForm.is_qc_updatable, { 'attr' : {
  99.                             'placeholder' : 'Contrôle qualité'
  100.                         }}) }}
  101.                     </div>
  102.                     {% if form_errors(bubbleForm.is_qc_updatable)%}
  103.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.is_qc_updatable) }}</div>
  104.                     {% endif %}
  105.                     {# Number of crédit Field >>> #}
  106.                     <div class="number-credit-error" style="color: red; display: none">{% trans %}Veuillez entrer une valeur supérieure ou égale à 0,01.{% endtrans %}</div>
  107.                     <div class="number-credit-error-dec" style="color: red; display: none">{% trans %}Merci d'indiquer un nombre à deux décimales maximum{% endtrans %}</div>
  108.                     <div class="input-group mb-3">
  109.                         <div class="input-group-prepend">
  110.                             <label class="input-group-text" ><i data-feather="credit-card"
  111.                                                                 class="feather-icon"></i></label>
  112.                         </div>
  113.                         {{ form_widget(bubbleForm.number_credit, { 'attr' : {
  114.                             'placeholder' : 'Nombre de crédits'
  115.                         }}) }}
  116.                     </div>
  117.                     {% if form_errors(bubbleForm.number_credit) %}
  118.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.number_credit) }}</div>
  119.                     {% endif %}
  120.                     {# <<< Number of crédit Field #}
  121.                     {# Credit value Field >>> #}
  122.                     <div class="credit-value-error" style="color: red; display: none">{% trans %}Veuillez entrer une valeur supérieure ou égale à 0,01.{% endtrans %}</div>
  123.                     <div class="credit-value-error-dec" style="color: red; display: none">{% trans %}Merci d'indiquer un nombre à deux décimales maximum{% endtrans %}</div>
  124.                     <div class="credits mb-3">
  125.                         {{ form_widget(bubbleForm.credit_value, { 'attr' : {
  126.                             'placeholder' : 'Valeur d\'un crédit'
  127.                         }}) }}
  128.                     </div>
  129.                     {% if form_errors(bubbleForm.credit_value) %}
  130.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.credit_value) }}</div>
  131.                     {% endif %}
  132.                     {# <<< Credit value Field #}
  133.                     {# Ad valorem value Field >>> #}
  134.                     <div class="ad-valorem-error" style="color: red; display: none">{% trans %}Veuillez entrer une valeur supérieure ou égale à 0,01.{% endtrans %}</div>
  135.                     <div class="ad-valorem-error-dec" style="color: red; display: none">{% trans %}Merci d'indiquer un nombre à deux décimales maximum{% endtrans %}</div>
  136.                     <div class="input-group ad-valorem mb-3">
  137.                         <div class="input-group-prepend">
  138.                             <label class="input-group-text" ><i data-feather="plus-square"
  139.                                                                 class="feather-icon"></i></label>
  140.                         </div>
  141.                         {{ form_widget(bubbleForm.ad_valorem, { 'attr' : {
  142.                             'placeholder' : "Valeur de l'ad valorem Vistory (en %)"
  143.                         }}) }}
  144.                     </div>
  145.                     {% if form_errors(bubbleForm.ad_valorem) %}
  146.                         <div class="alert alert-danger">{{ form_errors(bubbleForm.ad_valorem) }}</div>
  147.                     {% endif %}
  148.                     {# <<< Ad valorem value Field #}
  149.                     <button class="btn btn-primary btn-mc-to-load update-bubble-button" type="submit">
  150.                         <span class="btn-mc-loader d-none spinner-grow spinner-grow-sm" role="status" aria-hidden="true"></span>
  151.                         <span class="btn-mc-loading-text">{% trans %}Valider{% endtrans %}
  152.                     </button>
  153.                     {{ form_end(bubbleForm) }}
  154.                 </div>
  155.             </div>
  156.         </div>
  157.     </div>
  158. {% endblock %}
  159. {% block javascripts %}
  160.     {{ parent() }}
  161.     <script>
  162.         $(document).ready(function() {
  163.             
  164.             var numberCredit = true;
  165.             var creditValue = true;
  166.             var numberCreditDec = true;
  167.             var creditValueDec = true;
  168.             var adValoremDec = true;
  169.             //----- NUMBER CREDIT -----/
  170.             $('#bubble_edit_number_credit').blur(function(){
  171.                 if($('#bubble_edit_number_credit').val() < 0.01 && $('#bubble_edit_number_credit').val() != 0) {
  172.                     if($('#bubble_edit_number_credit').val() != ''){
  173.                         $('#bubble_edit_number_credit').css('border', 'solid red 1px');
  174.                         $('.update-bubble-button').attr('disabled', true);
  175.                         $('.number-credit-error').show()
  176.                         numberCredit = false
  177.                     } 
  178.                 } else {
  179.                     $('#bubble_edit_number_credit').css('border', '1px solid #e9ecef');
  180.                     $('.number-credit-error').hide()
  181.                         numberCredit = true
  182.                 }
  183.                 if ($('#bubble_edit_number_credit').val() > 0.01 && (/\.\d{3,}/.test($('#bubble_edit_number_credit').val()) || /\,\d{3,}/.test($('#bubble_number_credit').val()))) {
  184.                     $('#bubble_edit_number_credit').css('border', 'solid red 1px');
  185.                     $('.update-bubble-button').attr('disabled', true)
  186.                     $('.number-credit-error-dec').show();
  187.                     numberCreditDec = false
  188.                 } else {
  189.                     $('#bubble_number_credit').css('border', '1px solid #e9ecef');
  190.                     $('.number-credit-error-dec').hide();
  191.                     numberCreditDec = true
  192.                 }
  193.              
  194.                 if(numberCredit == true && creditValue == true && numberCreditDec == true && creditValueDec == true && adValoremDec == true) {
  195.                     $('.update-bubble-button').attr('disabled', false)
  196.                 }
  197.             })
  198.             //----- CREDIT VALUE -----//
  199.             $('#bubble_edit_credit_value').blur(function(){
  200.                 if($('#bubble_edit_credit_value').val() < 0.01) {
  201.                     if($('#bubble_edit_credit_value').val() != ''){
  202.                         $('#bubble_edit_credit_value').css('border', 'solid red 1px');
  203.                         $('.update-bubble-button').attr('disabled', true);
  204.                         $('.credit-value-error').show()
  205.                         creditValue = false
  206.                     } 
  207.                 } else {
  208.                     $('#bubble_edit_credit_value').css('border', '1px solid #e9ecef');
  209.                     $('.credit-value-error').hide()
  210.                     creditValue = true
  211.                 }
  212.                 if ($('#bubble_edit_credit_value').val() > 0.01 && (/\.\d{3,}/.test($('#bubble_edit_credit_value').val()) || /\,\d{3,}/.test($('#bubble_credit_value').val()))) {
  213.                     $('#bubble_edit_credit_value').css('border', 'solid red 1px');
  214.                     $('.update-bubble-button').attr('disabled', true)
  215.                     $('.credit-value-error-dec').show();
  216.                     creditValueDec = false
  217.                 } else {
  218.                     $('#bubble_edit_credit_value').css('border', '1px solid #e9ecef');
  219.                     $('.credit-value-error-dec').hide();
  220.                     creditValueDec = true
  221.                 }
  222.              
  223.                 if(numberCredit == true && creditValue == true && numberCreditDec == true && creditValueDec == true && adValoremDec == true) {
  224.                     $('.update-bubble-button').attr('disabled', false)
  225.                 }
  226.             })
  227.             //----- AD VALOREM -----//
  228.             $('#bubble_edit_ad_valorem').blur(function(){
  229.                 
  230.                 /* if($('#bubble_edit_ad_valorem').val() < 0) {
  231.                     if($('#bubble_edit_ad_valorem').val() != ''){
  232.                         $('#bubble_edit_ad_valorem').css('border', 'solid red 1px');
  233.                         $('.update-bubble-button').attr('disabled', true)
  234.                         $('.ad-valorem-error').show()
  235.                     }
  236.                 } else {
  237.                     $('#bubble_edit_ad_valorem').css('border', '1px solid #e9ecef');
  238.                     $('.ad-valorem-error').hide()
  239.                 } */
  240.                 if ($('#bubble_edit_ad_valorem').val() >= 0 && (/\.\d{3,}/.test($('#bubble_edit_ad_valorem').val()) || /\,\d{3,}/.test($('#bubble_edit_ad_valorem').val()))) {
  241.                     $('#bubble_edit_ad_valorem').css('border', 'solid red 1px');
  242.                     $('.update-bubble-button').attr('disabled', true)
  243.                     $('.ad-valorem-error-dec').show();
  244.                     adValoremDec = false
  245.                 } else {
  246.                     $('#bubble_edit_ad_valorem').css('border', '1px solid #e9ecef');
  247.                     $('.ad-valorem-error-dec').hide();
  248.                     adValoremDec = true
  249.                 }
  250.                 if(numberCredit == true && creditValue == true && numberCreditDec == true && creditValueDec == true && adValoremDec == true) {
  251.                     $('.update-bubble-button').attr('disabled', false)
  252.                 }
  253.             })
  254.             
  255.             $('#bubble_edit_ad_valorem').on('input', function() {
  256.                 let adValorem = $(this).val();
  257.                 let adValoremError = $('.ad-valorem-error');
  258.                 /* if (/\.\d{3,}/.test(adValorem) || /\,\d{3,}/.test(adValorem)) {
  259.                     adValoremError.show();
  260.                     const twoDecimalPlacesMessage = '<span style="color: red; font-size: 11px; padding: 0 0 0 20px; ">' +
  261.                         '{% trans %}Veuillez entrer une valeur supérieure à 0.01.{% endtrans %}' +
  262.                         '</span>';
  263.                     adValoremError.html(twoDecimalPlacesMessage)
  264.                 } else {
  265.                     adValoremError.hide();
  266.                 } */ 
  267.             });
  268.             const credictsElt = $(".credits");
  269.             credictsElt.find('.input-group-text').remove();
  270.             credictsElt.find('.input-group-prepend').remove();
  271.             credictsElt.find('.input-group-append').remove();
  272.             const credictsIcon = "<span class='credicts-icon'>€</span>";
  273.             credictsElt.find('.input-group').prepend(credictsIcon);
  274.         });
  275.         $('.js-example-basic-single').select2();
  276.     </script>
  277. {% endblock %}