templates/Mobile/HuVignette/hu-vignette.html.twig line 1

Open in your IDE?
  1. {% extends '@templates/Mobile/Shop/layout.html.twig' %}
  2. {% block head %}
  3.     <head>
  4.         {% block title %} <title>{{ 'app.hu_vignette.calculator_hu_vignette'|trans }} | roviniete.ro</title> {% endblock %}
  5.         {% block metatags %}
  6.             <meta name="description" content="{% if huVignetteDescriptionForSeo|length > 0 %}{{ huVignetteDescriptionForSeo.content }}{% endif %}"/>
  7.         {% endblock %}
  8.         <meta charset="utf-8">
  9.         <meta http-equiv="X-UA-Compatible" content="IE=edge">
  10.         <meta http-equiv="Content-Language" content="ro">
  11.         <meta name="google-site-verification" content="BEtIqk-choaMawpOxG98NtbWKAZK5MuTxV_2-pSHGFQ">
  12.         <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
  13.         <meta name="keywords" content="{% if huVignetteKeywordsForSeo|length > 0 %}{{ huVignetteKeywordsForSeo.content }}{% endif %}">
  14.         {% block stylesheets %}
  15.             <link rel="stylesheet" href="/assets/shop/css/homepage.css">
  16.             <link rel="stylesheet" href="/assets/shop/css/bootstrap.min.css">
  17.             <link rel="stylesheet" href="/assets/shop/css/vignette_shop.v1.css">
  18.             <link rel="stylesheet" href="/assets/shop/css/bs-stepper.css">
  19.             <link rel="stylesheet" href="/assets/shop/css/leftmenu.v2.css">
  20.             <link rel="stylesheet" href="/assets/shop/css/bootstrap_select.css">
  21.             {{ encore_entry_link_tags('bootstrap-fix', null, 'bootstrapTheme') }}
  22.         {% endblock %}
  23.         {{ sonata_block_render_event('sylius.shop.layout.head') }}
  24.         {% block javascripts %}
  25.             <script src="{{ asset('assets/shop/js/sentry-bundle.min.js') }}"></script>
  26.             <script>
  27.                  if (typeof Sentry !== 'undefined') {
  28.                     Sentry.init({
  29.                         dsn: "{{ sentry_dsn }}",
  30.                         integrations: [new Sentry.Integrations.TryCatch({
  31.                             eventTarget: false,
  32.                         })]
  33.                     });
  34.                 }
  35.             </script>
  36.             <script src="{{ asset('assets/shop/js/jquery.min.js') }}"></script>
  37.             <script src="{{ asset('assets/shop/js/bs-stepper.js') }}"></script>
  38.             <script src="{{ asset('assets/shop/js/jquery-ui.min.js') }}"></script>
  39.             <script src="{{ asset('assets/shop/js/popper.min.js') }}"></script>
  40.             <script src="{{ asset('assets/shop/js/bootstrap.min.js') }}"></script>
  41.             <script src="{{ asset('/assets/shop/js/_bootstrap_select.min.js') }}"></script>
  42.             <script src="{{ asset('assets/shop/js/leftmenu.js') }}"></script>
  43.             {{ encore_entry_script_tags('hu-vignette') }}
  44.             <script src="{{ asset('/bundles/fosjsrouting/js/router.js') }}"></script>
  45.             <script>
  46.                 dataLayer = [];
  47.             </script>
  48.             <!-- Google Tag Manager -->
  49.             <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  50.                         new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  51.                     j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  52.                     'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  53.                 })(window,document,'script','dataLayer','{{ gtm_code }}');</script>
  54.             <!-- End Google Tag Manager -->
  55.             <script src="{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}"></script>
  56.         {% endblock %}
  57.     </head>
  58. {% endblock %}
  59. {% block content %}
  60.     <!-- Google Tag Manager (noscript) -->
  61.     <noscript><iframe src="https://www.googletagmanager.com/ns.html?id={{ gtm_code }}"
  62.                       height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  63.     <!-- End Google Tag Manager (noscript) -->
  64.     {% if lastProductStatus.huVignetteStatus or isAdmin %}
  65.         <div id="loadingAvailabilitiesDiv" class="loading">
  66.             <div class="card w-50" style="background-color: #F1F2F3">
  67.                 <div class="card-body bg-loading-card">
  68.                     <img src="{{ asset('assets/shop/images/spinner.gif') }}"
  69.                          style="width: 50px; pointer-events: none"/>
  70.                     <h5>{{ 'app.hu_vignette.retrieve_prices_for_category'|trans }}</h5>
  71.                 </div>
  72.             </div>
  73.         </div>
  74.         <div class="d-inline-flex mx-3">
  75.             <a href="{{ path('sylius_shop_homepage') }}" class="section text-primary" style="font-size: 0.8em;">{{ 'sylius.ui.home'|trans }}</a>
  76.             <div class="divider"> /</div>
  77.             <small class="section active">{{ 'app.hu_vignette.hu_vignette'|trans }}</small>
  78.         </div>
  79.         <h1 class="mt-4 mx-3">{{ 'app.hu_vignette.calculator_hu_vignette'|trans }}</h1>
  80.         {% set smsPrice = sms_price_ron.calculateSmsPrice %}
  81.         {% set oldValues = app.request.request %}
  82.         <div id="specialErrors" class="alert alert-warning alert-dismissible fade show d-none" role="alert">
  83.             <div class="header text-center">
  84.                 <h2>{{ 'app.ui.error'|trans }}</h2>
  85.             </div>
  86.             <p>
  87.             <h5 class="text-center text-primary vignette-already-bought d-none">
  88.                 {{ 'app.hu_vignette.hu_vignette_available_for_choosen_date'|trans }}
  89.             </h5>
  90.             <h5 class="special-error">
  91.             </h5>
  92.             <a class="text-center">
  93.             </a>
  94.             </p>
  95.             <button type="button" class="close" data-dismiss="alert" aria-label="Close">
  96.                 <span aria-hidden="true">&times;</span>
  97.             </button>
  98.         </div>
  99.         <div id="categoryError" class="alert alert-warning fade show d-none" role="alert">
  100.             <div class="header text-center">
  101.                 <h2>{{ 'app.ui.error'|trans }}</h2>
  102.             </div>
  103.             <p>
  104.             <h5 class="text-center text-primary">
  105.                 {{ 'app.ui.vignette_category_error'|trans }}
  106.             </h5>
  107.             <h5 class="special-error">
  108.             </h5>
  109.             <a class="text-center">
  110.             </a>
  111.             </p>
  112.         </div>
  113.         <div id="divNoSpecialCharacters" class="alert alert-warning d-none" role="alert">
  114.             {{ 'app.ui.no_special_characters_allowed'|trans }}
  115.         </div>
  116.         {% include '@templates/Mobile/Checkout/_modal_payment_not_available.html.twig' %}
  117.         <div class="row mx-1 my-3">
  118.         </div>
  119.         <form id="huVignetteForm" data-is-mobile="1" method="POST">
  120.             <input type="hidden" value="1" name="isHuVignette" />
  121.             <input type="hidden" name="productStatusExtraOptions" id="productStatusExtraOptions" value="{{ lastProductStatus.extraOptionsStatus }}">
  122.             <div class="mb-5">
  123.                 <div class="main-container mx-2 mt-2">
  124.                     <div id="accordion">
  125.                         <div class="card mb-3 shadow-sm">
  126.                             <div id="headingOne" class="pb-2">
  127.                                 <h5 class="mb-0">
  128.                                     <div class="d-flex justify-content-between">
  129.                                         <button id="btnStep1" style="font-size: 0.8em;" class=" w-100 no-button text-dark font-weight-bolder ml-3" type="button" data-toggle="collapse" data-target="#step1Collapse" aria-expanded="true" aria-controls="step1Collapse" disabled>
  130.                                             <div class="row align-items-center mt-2 mr-2">
  131.                                                 <div class="col-12 mt-1">
  132.                                                     <div class="d-flex justify-content-between align-items-left w-100">
  133.                                                         <div class="step-wrapper">
  134.                                                             <img id="imgStep1" class="float-left" src="{{ asset('assets/shop/images/icons/ic_check_small_primary.png')}}" style="width: 18px; position: relative; margin-right: 10px;display:inline-block;float:left"/>
  135.                                                             <a id="txtStep1" class="text-primary">
  136.                                                                 <span class="float-left" style="float:left;font-size: 1.5em; font-weight: 500;">{{'app.ui.step_one'|trans}}</span>
  137.                                                                 <span id="step1CollapsedTxt" style="font-size: 1.3em; font-weight: 400; margin-left: 20px;">{{ 'app.ui.step_one_indication'|trans }}</span>
  138.                                                             </a>
  139.                                                         </div>
  140.                                                         <div id="step1EditIcon"  class="d-none"  style="margin-left: auto; order: 2;">
  141.                                                             <img src="{{ asset('assets/shop/images/icons/ic_edit_grey.png')}}" style="width: 20px"/>
  142.                                                         </div>
  143.                                                     </div>
  144.                                                     <div class="text-left" style="margin-left: 27px">
  145.                                                         <a id="txtSelectionStep1"></a>
  146.                                                     </div>
  147.                                                 </div>
  148.                                             </div>
  149.                                         </button>
  150.                                         <div>
  151.                                             <img class="show-info-btn" data-for="category" src="{{ asset('assets/shop/images/icons/info.png') }}" style="width: 30px;height: 30px;"/>
  152.                                         </div>
  153.                                     </div>
  154.                                 </h5>
  155.                             </div>
  156.                             <div id="step1Collapse" class="collapse show" aria-labelledby="headingOne" data-parent="#accordion" >
  157.                                 <div class="card-body">
  158.                                     <div class="mt-0">
  159.                                         {% for category in categories %}
  160.                                             {% if loop.index % 2 != 0 %}
  161.                                                 <div class="d-flex justify-content-between {% if loop.index == categories|length %} w-50 {% endif %}">
  162.                                             {% endif %}
  163.                                             <label type="button" for="{{ category.code|lower }}" class="btn btn-vignette-unselected w-100 mr-1 webkit-none" style="min-height: 60px !important;">
  164.                                                 <div class="d-flex justify-content-between align-items-center">
  165.                                                     <input type="radio" name="category" data-error-message="{{'app.errors.no_category_selected'|trans }}" id="{{ category.code|lower }}" value="{{ category.id }}"
  166.                                                            data-category="{% if category.wsId == category_hu_vignette_d1m_id %}
  167.                                                                         {{ 'app.hu_vignette.category_d1m_name'|trans }}
  168.                                                                     {% elseif category.wsId == category_hu_vignette_d1_id %}
  169.                                                                         {{ 'app.hu_vignette.category_d1_name'|trans }}
  170.                                                                     {% elseif category.wsId == category_hu_vignette_d2_id %}
  171.                                                                         {{ 'app.hu_vignette.category_d2_name'|trans|raw }}
  172.                                                                     {% elseif category.wsId == category_hu_vignette_b2_id %}
  173.                                                                         {{ 'app.hu_vignette.category_b2_name'|trans }}
  174.                                                                     {% elseif category.wsId == category_hu_vignette_u_id %}
  175.                                                                         {{ 'app.hu_vignette.category_u_name'|trans|raw }}
  176.                                                                     {% endif %}" hidden>
  177.                                                     <img src="{{ (asset('assets/shop/images/icons/hu_' ~ category.code|lower) ~ '_orange.png')}}" style="height: 46px"/>
  178.                                                     <a id="vehicleType-{{category.code|lower}}" class="font-weight-bold" style="color: #343a40;" >
  179.                                                         {% if category.wsId == category_hu_vignette_d1m_id %}
  180.                                                             {{ 'app.hu_vignette.category_d1m_short_code'|trans }}
  181.                                                         {% elseif category.wsId == category_hu_vignette_d1_id %}
  182.                                                             {{ 'app.hu_vignette.category_d1_short_code'|trans }}
  183.                                                         {% elseif category.wsId == category_hu_vignette_d2_id %}
  184.                                                             {{ 'app.hu_vignette.category_d2_short_code'|trans|raw }}
  185.                                                         {% elseif category.wsId == category_hu_vignette_b2_id %}
  186.                                                             {{ 'app.hu_vignette.category_b2_short_code'|trans }}
  187.                                                         {% elseif category.wsId == category_hu_vignette_u_id %}
  188.                                                             {{ 'app.hu_vignette.category_u_short_code'|trans|raw }}
  189.                                                         {% endif %}
  190.                                                     </a>
  191.                                                 </div>
  192.                                             </label>
  193.                                             {% if loop.index % 2 == 0 or loop.index == categories|length %}
  194.                                                 </div>
  195.                                             {% endif %}
  196.                                         {% endfor %}
  197.                                     </div>
  198.                                 </div>
  199.                             </div>
  200.                         </div>
  201.                         <div class="card mb-3 shadow-sm">
  202.                             <div id="headingTwo" class="pb-2">
  203.                                 <h5 class="mb-0">
  204.                                     <div class="d-flex justify-content-between">
  205.                                         <button disabled id="btnStep2" style="font-size: 0.8em;" class=" w-100 no-button text-dark font-weight-bolder ml-3" type="button" data-toggle="collapse" data-target="#step2Collapse" aria-expanded="false" aria-controls="step2Collapse">
  206.                                             <div class="row align-items-start mt-2 mr-2">
  207.                                                 <div class="col-12 mt-1">
  208.                                                     <div class="d-flex justify-content-between align-items-center w-100">
  209.                                                         <div>
  210.                                                             <img id="imgStep2" class="float-left" src="{{ asset('assets/shop/images/icons/ic_check_small_grey.png')}}" style="width: 18px; position: relative; margin-right: 10px;"/>
  211.                                                             <a id="txtStep2" class="text-secondary">
  212.                                                                 <span class='float-left' style="font-size: 1.5em; font-weight: 500;">{{'app.ui.step_two'|trans}}</span>
  213.                                                                 <span id="step2CollapsedTxt" style="font-size: 1.3em; font-weight: 400; margin-left: 20px;">{{ 'app.hu_vignette.availability_type'|trans }}</span>
  214.                                                             </a>
  215.                                                         </div>
  216.                                                         <div id="step2EditIcon"  class="d-none"  style=" margin-left: auto; order: 2;"  >
  217.                                                             <img src="{{ asset('assets/shop/images/icons/ic_edit_grey.png')}}" style="width: 20px"/>
  218.                                                         </div>
  219.                                                     </div>
  220.                                                     <div class="text-left" style="margin-left: 27px">
  221.                                                         <a id="txtSelectionStep2"></a>
  222.                                                     </div>
  223.                                                 </div>
  224.                                             </div>
  225.                                         </button>
  226.                                         <div>
  227.                                             <img class="show-info-btn" data-for="availability" src="{{ asset('assets/shop/images/icons/info.png') }}" style="width: 30px;height: 30px;"/>
  228.                                         </div>
  229.                                     </div>
  230.                                 </h5>
  231.                             </div>
  232.                             <div id="step2Collapse" class="collapse availability-wrapper" data-error-message="{{'app.errors.no_availability_selected'|trans }}" aria-labelledby="headingTwo" data-parent="#accordion">
  233.                                 <div class="card-body">
  234.                                     <div class="d-flex justify-content-between my-2">
  235.                                         <div data-toggle="tooltip" data-placement="top" class="w-100 mx-3 tooltip-prevent-availability" title="{{ 'app.hu_vignette.please_select_a_category_first'|trans }}">
  236.                                             <label type="button" id="lblAv1Day" for="av_1" class="btn btn-vignette-unselected w-100 webkit-none d-flex align-items-center justify-content-center" data-value="{{ 'app.hu_vignette.1_day'|trans }}" data-title="mobile" style="min-height: 145px !important;">
  237.                                                 <div class="mx-2 my-2">
  238.                                                     <input type="radio" name="availability" id="av_1" value="31" data-value="{{ 'app.hu_vignette.1_day'|trans }}" hidden disabled>
  239.                                                     <h2 id="txtAv1Day" class="text-primary txtAvailability">{{ 'app.hu_vignette.1_day'|trans }}</h2>
  240.                                                     <a id="txtAv1DayPrice" class="txtAvailabilityPrice text-dark"></a>
  241.                                                 </div>
  242.                                             </label>
  243.                                         </div>
  244.                                         <div data-toggle="tooltip" data-placement="top" class="w-100 mx-3 tooltip-prevent-availability" title="{{ 'app.hu_vignette.please_select_a_category_first'|trans }}">
  245.                                             <label type="button" id="lblAv10Days" for="av_10" class="btn btn-vignette-unselected w-100 webkit-none d-flex align-items-center justify-content-center" data-value="{{ 'app.hu_vignette.10_days'|trans }}" data-title="mobile" style="min-height: 145px !important;">
  246.                                                 <div class="mx-2 my-2">
  247.                                                     <input type="radio" name="availability" id="av_10" value="1" data-value="{{ 'app.hu_vignette.10_days'|trans }}" hidden disabled>
  248.                                                     <h2 id="txtAv10Days" class="text-primary txtAvailability">{{ 'app.hu_vignette.10_days'|trans }}</h2>
  249.                                                     <a id="txtAv10DaysPrice" class="txtAvailabilityPrice text-dark"></a>
  250.                                                 </div>
  251.                                             </label>
  252.                                         </div>
  253.                                 </div>
  254.                                     <div class="d-flex justify-content-between my-2">
  255.                                         <div data-toggle="tooltip" data-placement="top" class="w-100 mx-3 tooltip-prevent-availability" title="{{ 'app.hu_vignette.please_select_a_category_first'|trans }}">
  256.                                             <label type="button" id="lblAv30Days" for="av_30" class="btn btn-vignette-unselected w-100 webkit-none d-flex align-items-center justify-content-center" data-value="{{ 'app.ui.30_days'|trans }}" data-title="mobile" style="min-height: 145px !important;">
  257.                                                 <div class="mx-2 my-2">
  258.                                                     <input type="radio" name="availability" id="av_30" value="2" data-value="{{ 'app.hu_vignette.30_days'|trans }}" hidden disabled>
  259.                                                     <h2 id="txtAv30Days" class="text-primary txtAvailability">{{ 'app.ui.30_days'|trans }}</h2>
  260.                                                     <a id="txtAv30DaysPrice" class="txtAvailabilityPrice text-dark"></a>
  261.                                                 </div>
  262.                                             </label>
  263.                                         </div>
  264.                                         <div data-toggle="tooltip" data-placement="top" class="w-100 mx-3 tooltip-prevent-availability" title="{{ 'app.hu_vignette.please_select_a_category_first'|trans }}">
  265.                                             <label type="button" id="lblAv12Months" for="av_12" class="btn btn-vignette-unselected w-100 webkit-none d-flex align-items-center justify-content-center" data-value="{{ 'app.ui.12_months'|trans|raw }}" data-title="mobile" style="min-height: 145px !important;">
  266.                                                 <div class="mx-2 my-2">
  267.                                                     <input type="radio" name="availability" id="av_12" value="3" data-value="{{ 'app.hu_vignette.12_months'|trans|raw }}" hidden disabled>
  268.                                                     <h2 id="txtAv1Year" class="text-primary txtAvailability">{{ 'app.ui.12_months'|trans|raw }}</h2>
  269.                                                     <a id="txtAv1YearPrice" class="txtAvailabilityPrice text-dark"></a>
  270.                                                 </div>
  271.                                             </label>
  272.                                         </div>
  273.                                     </div>
  274.                                     <div class="d-flex justify-content-between my-2">
  275.                                         <div data-toggle="tooltip" data-placement="top" class="w-100 mx-3 tooltip-prevent-availability" title="{{ 'app.hu_vignette.please_select_a_category_first'|trans }}">
  276.                                             <label type="button" id="lblAv12County" for="av_12_county" class="btn btn-vignette-unselected w-100 webkit-none d-flex align-items-center justify-content-center" data-value="{{ 'app.hu_vignette.12_months_county'|trans|raw }}" data-title="mobile" style="min-height: 145px !important;">
  277.                                                 <div class="mx-2 my-2">
  278.                                                     <input type="radio" name="availability" id="av_12_county" value="4" data-value="{{ 'app.hu_vignette.12_months_county'|trans|raw }}" hidden disabled>
  279.                                                     <h2 id="txtAv12County" class="text-primary txtAvailability">{{ 'app.hu_vignette.12_months_county'|trans|raw }}</h2>
  280.                                                     <a id="txtAv12CountyPrice" class="txtAvailabilityPrice text-dark"></a>
  281.                                                 </div>
  282.                                             </label>
  283.                                         </div>
  284.                                     </div>
  285.                                     <div id="selectCountiesDiv" class="d-none">
  286.                                         <label for="counties">{{ 'app.hu_vignette.select_counties'|trans }}</label> <br/>
  287.                                         <select id="counties" class="selectpicker w-100" name="counties[]" data-style="btn-light h-35-px"
  288.                                                 multiple data-live-search="true" data-done-button="true" data-actions-box="true" data-live-search-style="startsWith"
  289.                                                 title="{{ 'app.hu_vignette.please_select_at_least_one'|trans }}">
  290.                                         </select>
  291.                                     </div>
  292.                                 <h6 class="text-center mt-3">{{ 'app.hu_vignette.price_without_tax'|trans }}</h6>
  293.                             </div>
  294.                         </div>
  295.                     </div>
  296.                         <div class="card mb-3 shadow-sm">
  297.                             <div id="headingThree" class="pb-2">
  298.                                 <h5 class="mb-0">
  299.                                     <div class="d-flex justify-content-between">
  300.                                         <button disabled id="btnStep3" style="font-size: 0.8em;" class=" w-100 no-button text-dark font-weight-bolder ml-3" type="button" data-toggle="collapse" data-target="#step3Collapse" aria-expanded="false" aria-controls="step3Collapse">
  301.                                             <div class="row align-items-start mt-2 mr-2">
  302.                                                 <div class="col-12 mt-1">
  303.                                                     <div class="d-flex justify-content-between align-items-center">
  304.                                                         <div>
  305.                                                             <img id="imgStep3" src="{{ asset('assets/shop/images/icons/ic_check_small_grey.png')}}" style="width: 18px;top:-2px; position: relative; margin-right: 10px;"/>
  306.                                                             <a id="txtStep3" class="text-secondary">
  307.                                                                 <span style="font-size: 1.5em; font-weight: 500;">{{'app.ui.step_three'|trans}}</span>
  308.                                                                 <span id="step3CollapsedTxt" style="font-size: 1.3em; font-weight: 400; margin-left: 20px;">{{ 'app.ui.select_start_date'|trans}}</span>
  309.                                                             </a>
  310.                                                         </div>
  311.                                                         <div id="step3EditIcon"  class="d-none"  style=" margin-left: auto; order: 2;"  >
  312.                                                             <img src="{{ asset('assets/shop/images/icons/ic_edit_grey.png')}}" style="width: 20px"/>
  313.                                                         </div>
  314.                                                     </div>
  315.                                                     <div class="text-left" style="margin-left: 27px">
  316.                                                         <a id="txtSelectionStep3" style="display: none"></a>
  317.                                                     </div>
  318.                                                 </div>
  319.                                             </div>
  320.                                         </button>
  321.                                         <div style="display: none">
  322.                                             <button data-toggle="tooltip" class="tooltip-button" data-placement="top" data-original-title="{{ 'app.hu_vignette.availability_description'|raw|trans }}">
  323.                                                 <img src="{{ asset('assets/shop/images/icons/info.png') }}" style="width: 30px"/>
  324.                                             </button>
  325.                                         </div>
  326.                                     </div>
  327.                                 </h5>
  328.                             </div>
  329.                             <div id="step3Collapse" class="collapse" aria-labelledby="headingThree" data-parent="#accordion">
  330.                                 <div class="card-body">
  331.                                     <div class="d-flex justify-content-center">
  332.                                         <input type="hidden" id="validFrom" name="validFrom">
  333.                                         <div id="datepicker" data-error-message = '{{'app.errors.no_date_selected'|trans }}'></div>
  334.                                     </div>
  335.                                 </div>
  336.                             </div>
  337.                         </div>
  338.                         <div class="card mb-3 shadow-sm">
  339.                             <div id="headingFour" class="pb-2">
  340.                                 <h5 class="mb-0">
  341.                                     <div class="d-flex justify-content-between">
  342.                                         <button disabled id="btnStep4" style="font-size: 0.8em;" class=" w-100 no-button text-dark font-weight-bolder ml-3" type="button" data-toggle="collapse" data-target="#step4Collapse" aria-expanded="false" aria-controls="step4Collapse">
  343.                                             <div class="row align-items-start mt-2 mr-2">
  344.                                                 <div class="col-12 mt-1">
  345.                                                     <div class="d-flex justify-content-between align-items-center">
  346.                                                         <div>
  347.                                                             <img id="imgStep4" src="{{ asset('assets/shop/images/icons/ic_check_small_grey.png')}}" style="width: 18px; position: relative; top: -2px; margin-right: 10px;"/>
  348.                                                             <a id="txtStep4" class="text-secondary">
  349.                                                                 <span style="font-size: 1.5em; font-weight: 500;">{{'app.ui.step_four'|trans}}</span>
  350.                                                                 <span style="font-size: 1.3em; font-weight: 400; margin-left: 20px;">{{ 'app.ui.step_four_indication'|trans }}</span>
  351.                                                             </a>
  352.                                                         </div>
  353.                                                         <div id="step4EditIcon"  class="d-none"  style=" margin-left: auto; order: 2;"  >
  354.                                                             <img src="{{ asset('assets/shop/images/icons/ic_edit_grey.png')}}" style="width: 20px"/>
  355.                                                         </div>
  356.                                                     </div>
  357.                                                 </div>
  358.                                             </div>
  359.                                         </button>
  360.                                         <div style="display: none">
  361.                                             <button data-toggle="tooltip" class="tooltip-button" data-placement="top" data-original-title="{{ 'app.hu_vignette.availability_description'|raw|trans }}">
  362.                                                 <img src="{{ asset('assets/shop/images/icons/info.png') }}" style="width: 30px"/>
  363.                                             </button>
  364.                                         </div>
  365.                                     </div>
  366.                                 </h5>
  367.                             </div>
  368.                             <div id="step4Collapse" class="collapse" aria-labelledby="headingFour" data-parent="#accordion">
  369.                                 <div class="card-body">
  370.                                     <div class=" d-flex align-items-center" >
  371.                                         <div class="mr-2">
  372.                                             <label for="carCountry" id="carCountryLabel" class="lbl-custom lbl-custom-grey d-none" style="width: 100% !important;">{{ 'app.ui.country_code'|trans}}</label>
  373.                                             <select id="carCountry" name="carCountry"
  374.                                                     data-style="btn-grey border-0 selectpicker-custom shadow-none prometo-font restrict-height" data-live-search="true"
  375.                                                     title="{{ 'app.ui.country_code'|trans }}*" class="form-control input-custom input-custom-grey selectpicker"
  376.                                                     required>
  377.                                                 <option id="countryCodeOption" value="">{{'app.ui.country_code'|trans}}</option>
  378.                                                 {% for country in countries|sort((a, b) => a.name > b.name) %}
  379.                                                     <option data-content="<span class='text-dark'>{{ country.name }} - {{ country.code }}</span>"
  380.                                                             value="{{ country.code }}"
  381.                                                     >{{ country.name }} - {{ country.code }}</option>
  382.                                                 {% endfor %}
  383.                                             </select>
  384.                                         </div>
  385.                                         <div class="flex-grow-1">
  386.                                             <label for="registrationPlate"  id="registrationPlateLabel" class="lbl-custom lbl-custom-grey d-none" style="width: 100% !important;">{{'app.ui.registration_plate'|trans}}</label>
  387.                                             <input id="registrationPlate" data-warning-message="{{ 'app.warning.characters_not_allowed'|trans }}" data-error-message="{{'app.errors.no_plate'|trans }}" name="registrationPlate"
  388.                                                    maxlength="10" type="text" class="form-control input-custom input-custom-grey"
  389.                                                    placeholder="{{'app.ui.registration_plate'|trans}}" required>
  390.                                         </div>
  391.                                         <div id="registrationPlateCheckIcon" class="ml-2 invisible" >
  392.                                             <img src="{{ asset('assets/shop/images/icons/ic_validation_check.png')}}" style="width: 30px"/>
  393.                                         </div>
  394.                                     </div>
  395.                                     <div class="date-disclaimer mb-1">
  396.                                         {% autoescape false %}
  397.                                             <b>Calendar Huvinieta</b> - calendarul se bazează pe ora Ungariei
  398.                                         {% endautoescape %}
  399.                                     </div>
  400.                                     <div class="date-disclaimer">
  401.                                         {% autoescape false %}
  402.                                             {{'app.ui.date_disclaimer'|trans}}
  403.                                         {% endautoescape %}
  404.                                     </div>
  405.                                     <div class="d-flex align-items-center my-2">
  406.                                         <div class="flex-grow-1">
  407.                                             <div id="vinBlock">
  408.                                             </div>
  409.                                         </div>
  410.                                         <div id="vinCheckIcon" class="ml-2 invisible" >
  411.                                             <img src="{{ asset('assets/shop/images/icons/ic_validation_check.png')}}" style="width: 30px"/>
  412.                                         </div>
  413.                                     </div>
  414.                                 </div>
  415.                             </div>
  416.                         </div>
  417.                     </div>
  418.                 </div>
  419.                 <div id="finalizeOrder">
  420.                     {# <div id="smsAlert" class="vignette-alert-container px-2 py-3">
  421.                     <div class="d-flex justify-content-between align-items-center-center">
  422.                         <div class="custom-control custom-checkbox">
  423.                             <input type="checkbox" name="vignetteAlert" id="vignetteAlert" class="custom-control-input">
  424.                             <label for="vignetteAlert" class="custom-control-label">
  425.                                 <h4 class="text-dark font-weight-bolder" style="letter-spacing: 0.01em;">{{'app.ui.sms_alert'|trans}}</h4>
  426.                             </label>
  427.                         </div>
  428.                         <div>
  429.                             <h4 class="font-weight-bolder"> {{ smsPrice }} Lei ({{ sms_price_eur }} Eur)</h4>
  430.                         </div>
  431.                     </div>
  432.                     <div>
  433.                         <a>{{'app.ui.alert_description'|trans}}</a>
  434.                     </div>
  435.                 </div>#}
  436.                     <div class="row my-3" style="height: 45px; margin: 5px;">
  437.                         <button id="btnSubmitVignette" name="btnSubmitVignette" type="submit" class="submit-button btn btn-submit btn-primary w-100 h-100">
  438.                             <a>{{'app.ui.next_step'|trans}}</a>
  439.                         </button>
  440.                     </div>
  441.                 </div>
  442.             </div>
  443.         </form>
  444.         <div class="row">
  445.             <div class="col-12">
  446.                 <div class="info-text category">
  447.                     {% autoescape false %}
  448.                         {{ 'app.hu_vignette.category_description'|raw|trans }}
  449.                     {% endautoescape %}
  450.                 </div>
  451.             </div>
  452.             <div class="col-12">
  453.                 <div class="info-text availability">
  454.                     {% autoescape false %}
  455.                         {{ 'app.hu_vignette.availability_description'|raw|trans }}
  456.                     {% endautoescape %}
  457.                 </div>
  458.             </div>
  459.         </div>
  460.         <div class="bs-stepper">
  461.         </div>
  462.         <style>
  463.             .date-disclaimer {
  464.                 border: 1px solid;
  465.                 padding: 5px;
  466.                 margin-top: 10px;
  467.             }
  468.             .step-wrapper {
  469.                 display: inline-block;
  470.             }
  471.             #imgStep1 span {
  472.                 float:left;
  473.             }
  474.             button.tooltip-button {
  475.                 cursor: pointer;
  476.                 border: none;
  477.                 background-color: transparent;
  478.                 padding: 0;
  479.             }
  480.             button.tooltip-button:focus {outline:0;}
  481.             .selectpicker-custom {
  482.                 height: 50px !important;
  483.                 border-bottom: 1px solid #878C96 !important;
  484.             }
  485.             .input-custom {
  486.                 width: 100% !important;
  487.             }
  488.             .webkit-none {
  489.                 -webkit-appearance: none !important;
  490.             }
  491.             .tooltip-inner {
  492.                 max-width: 350px; /* set this to your maximum fitting width */
  493.                 width: inherit; /* will take up least amount of space */
  494.             }
  495.             .restrict-height {
  496.                 height: 25px !important;
  497.             }
  498.             .loading {
  499.                 display: flex;
  500.                 flex-direction: column;
  501.                 justify-content: center;
  502.                 align-items: center;
  503.                 text-align: center;
  504.                 min-height: 100vh;
  505.                 z-index: 999;
  506.                 position: fixed;
  507.                 background-color: rgba(0,0,0,0.7);
  508.                 opacity: 100%;
  509.                 width: 100%;
  510.                 height: 100%;
  511.             }
  512.             .availability-box {
  513.                 max-width: 130px;
  514.             }
  515.             .dropdown-menu.show {
  516.                 max-width: 100%;
  517.             }
  518.             .datepicker-disabled .ui-datepicker-next {
  519.                 display: none;
  520.             }
  521.             .datepicker-disabled .ui-state-default {
  522.                 color: lightgray;
  523.                 cursor: default;
  524.             }
  525.             .show-info-btn {
  526.                 cursor: pointer;
  527.             }
  528.             .info-text {
  529.                 display: block;
  530.                 border: 1px solid lightgray;
  531.                 padding: 20px;
  532.                 width: 100%;
  533.                 background: white;
  534.                 border-radius: 20px;
  535.             }
  536.             .ui-state-highlight, .ui-widget-content .ui-state-highlight {
  537.                 background: none !important;
  538.                 color: #454545 !important;
  539.                 border: none !important;
  540.             }
  541.         </style>
  542.     {% else %}
  543.         <div class="card text-center my-3">
  544.             <div class="card-header">
  545.                 <h2>{{ 'app.ui.disabled_temporary'|trans }}</h2>
  546.             </div>
  547.             <div class="card-body">
  548.                 <a href="{{ path('sylius_shop_homepage') }}">{{ 'sylius.ui.back_to_store'|trans }}</a>
  549.             </div>
  550.         </div>
  551.     {% endif %}
  552. {% endblock %}
  553. {% block footer %}
  554.     {% if lastProductStatus.huVignetteStatus or isAdmin %}
  555.         <script type="text/javascript">
  556.             $(document).ready(function () {
  557.                 $('.selectpicker').selectpicker({
  558.                     'selectAllText': '{{ 'app.ui.select_all'|trans }}',
  559.                     'deselectAllText': '{{ 'app.ui.deselect_all'|trans }}',
  560.                     'doneButtonText': '{{ 'app.ui.close'|trans }}',
  561.                 });
  562.                 $('.show-info-btn').click(function() {
  563.                     const element = $('.info-text.'+$(this).data('for'));
  564.                     element.toggleClass('d-none');
  565.                     if (!element.hasClass('d-none')) {
  566.                         $("html, body").animate({ scrollTop: $(document).height() }, 1000);
  567.                     }
  568.                 });
  569.                 $('body').on('keyup', '.bs-searchbox input', function() {
  570.                     const options = optionsStartsWith($(this).val(), $('#carCountry').find('option'));
  571.                     $("#carCountry").empty().append(options);
  572.                     $("#carCountry").selectpicker('refresh');
  573.                 });
  574.                 function optionsStartsWith(input, data) {
  575.                     const first = [];
  576.                     const others = [];
  577.                     for (var i = 0; i < data.length; i++) {
  578.                         console.log(data[i].text.toLowerCase());
  579.                         console.log(input);
  580.                         if (startsWith(data[i].text.toLowerCase(), input.toLowerCase())) {
  581.                             first.push(data[i]);
  582.                         } else {
  583.                             others.push(data[i]);
  584.                         }
  585.                     }
  586.                     return first.concat(others);
  587.                 }
  588.                 function startsWith(str, word) {
  589.                     return str.indexOf(word) === 0;
  590.                 }
  591.                 $('[data-toggle="tooltip"]').tooltip({
  592.                     html:true,
  593.                     trigger: 'focus'
  594.                 });
  595.                 $(window).bind("load", function () {
  596.                     let locale = getLocale();
  597.                     function getLocale() {
  598.                         let url = Routing.generate('app_shop_get_locale');
  599.                         $.ajax({
  600.                             url: url,
  601.                             type: 'GET',
  602.                             async: false,
  603.                             dataType: 'json',
  604.                             success: function (locale) {
  605.                                 if (locale == 'ro_RO' || locale == 'ro') {
  606.                                     $('[name="carCountry"] option').filter(function() {
  607.                                         return ($(this).val() == 'RO');
  608.                                     }).prop('selected', true).change();
  609.                                     $('select[name=carCountry]').val('RO').change();
  610.                                     $('.selectpicker').selectpicker('refresh');
  611.                                     let btn = $('[data-id="' + 'carCountry' + '"]');
  612.                                     btn.addClass('selectpicker-custom-selected');
  613.                                     btn.removeClass('selectpicker-custom');
  614.                                 } else if (locale == 'hu') {
  615.                                     $('[name="carCountry"] option').filter(function() {
  616.                                         return ($(this).val() == 'HU');
  617.                                     }).prop('selected', true).change();
  618.                                 }
  619.                             },
  620.                             error: function (data) {
  621.                             }
  622.                         });
  623.                     }
  624.                 });
  625.             })
  626.             var stepper = new Stepper($('.bs-stepper')[0]);
  627.             var one_day = '{{ 'app.hu_vignette.1_day'|trans|lower }}';
  628.             var ten_days = '{{ 'app.hu_vignette.10_days'|trans|lower }}';
  629.             var thirty_days = '{{ 'app.hu_vignette.30_days'|trans|lower }}';
  630.             var twelve_months = '{{ 'app.hu_vignette.12_months'|trans|lower|raw }}';
  631.             var twelve_months_county = '{{ 'app.hu_vignette.12_months_county'|trans|lower|raw }}';
  632.             var locale = '{{ app.request.getLocale() }}';
  633.             var isOneYearHuVignetteAvailableThisYear = {{ isOneYearHuVignetteAvailableThisYear ? 'true' : 'false' }};
  634.         </script>
  635.     {% endif %}
  636.     {% block cnair_partner %}
  637.         <div class="mx-5">
  638.             <div class="text-center align-items-center">
  639.                 <div class="ui circular label bg-white">
  640.                     <img src="{{ asset('assets/shop/images/icons/ic_trust_cnair_bw.png') }}" style="width: 20px"/>
  641.                 </div>
  642.                 <div class="ui circular label bg-white">
  643.                     <img src="{{ asset('assets/shop/images/icons/ic_trust_stema_bw.png') }}" style="width: 20px"/>
  644.                 </div>
  645.                 <br/>
  646.                 <small>
  647.                     {{ 'app.ui.cnair_authorized_long'|trans }}
  648.                 </small>
  649.             </div>
  650.         </div>
  651.     {% endblock %}
  652.     {% if accordionBlocksAboutHuVignette is defined and accordionBlocksAboutHuVignette|length > 0 %}
  653.         <div class="row my-3 align-items-center text-center">
  654.             {% for key, block in accordionBlocksAboutHuVignette %}
  655.                 <div class="col-12 col-sm-12 col-md-6 col-lg-4 mb-3">
  656.                     <button class="accordion" type="button" data-toggle="collapse" data-target="#collapse{{ key }}" aria-expanded="false" aria-controls="collapse{{ key }}">{{ block.name }}</button>
  657.                     <div class="collapse" id="collapse{{ key }}">
  658.                         <div class="card card-body border">{{ block.content|raw }}</div>
  659.                     </div>
  660.                 </div>
  661.             {% endfor %}
  662.         </div>
  663.     {% endif %}
  664.     {% include '@templates/Front/Shop/v2/_footer.html.twig' %}
  665. {% endblock %}