src/PortalBundle/Resources/views/Catalog/index.html.twig line 1

Open in your IDE?
  1. {% set bs5 = true %}
  2. {% extends '@Portal/template.html.twig' %}
  3. {% set routePrefix = app.request.get('credit') ? 'portal_finance_credit_' : 'portal_new_' %}
  4. {% block content %}
  5.     {% if hasCredit %}
  6.         {% include '@Portal/Catalog/catalog-credit.html.twig' %}
  7.     {% else %}
  8.         {% include '@Portal/Catalog/catalog-main.html.twig' %}
  9.     {% endif %}
  10.     {#    Модальне вікно банера     #}
  11.     <div class="modal fade modal__step__custom" id="order-car" tabindex="-1" role="dialog" aria-labelledby="orderCarLabel" aria-hidden="true">
  12.         <div class="modal-dialog modal__step__custom__dialog modal-dialog-centered" role="document">
  13.             <div class="modal-content modal__step__custom__content modal__step__custom-btn">
  14.                 <div class="modal-header modal__step__custom__header">
  15.                     <p class="modal-title modal__step__custom__title" id="orderCarLabel">{{ 'card_car.modal.we_are_happy'|trans({}, 'portal_base') }}</p>
  16.                     <button type="button" class="close modal__step__custom__close" data-dismiss="modal" data-bs-dismiss="modal" aria-label="Close">
  17.                         <span aria-hidden="true">&times;</span>
  18.                     </button>
  19.                 </div>
  20.                 {{ form_start(OrderCallForm, {attr: {class: 'forms-sm lead-form pop-up', 'data-parent': 'order-car', 'data-thank-popup': 'show', action: path( 'portal_callback_form' )} }) }}
  21.                 <div class="modal-body modal__step__custom__body">
  22.                     <p class="modal__step__custom__text">{{ 'card_car.modal.contact_phone'|trans({}, 'portal_base') }}</p>
  23.                     <div class="modal__step__custom__input mb-3">
  24.                         {{ form_row(OrderCallForm.name) }}
  25.                     </div>
  26.                     <div class="modal__step__custom__input mb-5">
  27.                         {{ form_row(OrderCallForm.phone) }}
  28.                     </div>
  29.                     <div class="col-md-12">
  30.                         <div class="form-group checkbox style-b js-form-privacy">
  31.                             <label class="checkboxes__item-privacy">
  32.                                 <input type="checkbox" name="{{ OrderCallForm.privacy.vars.full_name }}" value="{{ OrderCallForm.privacy.vars.value }}" id="{{ OrderCallForm.privacy.vars.id }}"/>
  33.                                 <div id="check_privacy" class="checkbox__checkmark form-control"></div>
  34.                                 <div class="checkbox__body">{{ 'multi_consultation.step_3.confirm'|trans({}, 'dc_base') }} <a href="{{ privacyUrl }}" target="_blank">{{ 'modal_online_service.learn_about_deal'|trans({}, 'portal_base') }}</a></div>
  35.                             </label>
  36.                         </div>
  37.                     </div>
  38.                 </div>
  39.                 <div class="d-none">
  40.                     {{ form_rest(OrderCallForm) }}
  41.                 </div>
  42.                 <div class="modal-footer modal__step__custom__footer mt-0">
  43.                     <button type="submit" class="modal__step__custom__btn">{{ 'card_car.modal.waiting_for_call'|trans({}, 'portal_base') }}</button>
  44.                 </div>
  45.                 {{ form_end(OrderCallForm) }}
  46.             </div>
  47.         </div>
  48.     </div>
  49.     {#    Модальне вікно банера     #}
  50. {% endblock %}
  51. {% block script %}
  52.     <script src="/dist/{{ MODE }}/portal/js/portalCarCatalog.js?{{ VERSION }}"></script>
  53.     <script type="text/javascript">
  54.         $(() => {
  55.             window.portal.portalCarCatalog.initCatalogFilters({
  56.                 initUrl: '{{ path('portal_new_catalog_init_filters') }}',
  57.                 buildTypeUrl: '{{ path('portal_new_catalog_build_url') }}',
  58.                 buildUrl: '{{ path('portal_new_catalog_search_build_url') }}',
  59.                 getDealersFromFilter: '{{ path('portal_new_catalog_get_dealers_by_filter') }}',
  60.                 getDealersFromSelectedFilter: '{{ path('portal_new_catalog_get_dealers_by_selected_filter') }}',
  61.                 carUrl: '{{ path(routePrefix ~ 'catalog', {state: state, type: type}) }}',
  62.                 params: {{ baseParams|json_encode|raw }},
  63.                 searchParams: {{ searchParams|json_encode|raw }},
  64.                 searchFilters: {{ filters|json_encode|raw }},
  65.                 count: '{{ count }}',
  66.                 seoLinks: {{ seoLinks|json_encode|raw }}
  67.             });
  68.             {% for item in catalogNav %}
  69.             {% if item.brand is defined %}
  70.             // brand
  71.             new Swiper(".selection__catalog__car-slider", {
  72.                 slidesPerView: 7,
  73.                 allowTouchMove: false,
  74.                 navigation: {
  75.                     nextEl: ".swiper-button-next",
  76.                     prevEl: ".swiper-button-prev",
  77.                 },
  78.                 breakpoints: {
  79.                     1400: {
  80.                         slidesPerView: 7,
  81.                         loop: true,
  82.                         allowTouchMove: true,
  83.                     },
  84.                     1200: {
  85.                         slidesPerView: 6,
  86.                         loop: true,
  87.                         allowTouchMove: true,
  88.                     },
  89.                     991: {
  90.                         slidesPerView: 5,
  91.                         loop: true,
  92.                         allowTouchMove: true,
  93.                     },
  94.                     768: {
  95.                         init: false,
  96.                     },
  97.                 },
  98.             });
  99.             {% elseif item.model is defined %}
  100.             // model
  101.             new Swiper(".selection__catalog__car-slider", {
  102.                 slidesPerView: 5,
  103.                 allowTouchMove: false,
  104.                 navigation: {
  105.                     nextEl: ".swiper-button-next",
  106.                     prevEl: ".swiper-button-prev",
  107.                 },
  108.                 breakpoints: {
  109.                     1400: {
  110.                         slidesPerView: 7,
  111.                         loop: true,
  112.                         allowTouchMove: true,
  113.                     },
  114.                     1200: {
  115.                         slidesPerView: 6,
  116.                         loop: true,
  117.                         allowTouchMove: true,
  118.                     },
  119.                     991: {
  120.                         slidesPerView: 5,
  121.                         loop: true,
  122.                         allowTouchMove: true,
  123.                     },
  124.                     768: {
  125.                         init: false,
  126.                     },
  127.                 },
  128.             });
  129.             {% else %}
  130.             // bodyType
  131.             new Swiper(".selection__catalog__car-slider", {
  132.                 slidesPerView: 8,
  133.                 allowTouchMove: false,
  134.                 navigation: {
  135.                     nextEl: ".swiper-button-next",
  136.                     prevEl: ".swiper-button-prev",
  137.                 },
  138.                 breakpoints: {
  139.                     1400: {
  140.                         slidesPerView: 7,
  141.                         loop: true,
  142.                         allowTouchMove: true,
  143.                     },
  144.                     1200: {
  145.                         slidesPerView: 6,
  146.                         loop: true,
  147.                         allowTouchMove: true,
  148.                     },
  149.                     991: {
  150.                         slidesPerView: 5,
  151.                         loop: true,
  152.                         allowTouchMove: true,
  153.                     },
  154.                     768: {
  155.                         init: false,
  156.                     },
  157.                 },
  158.             });
  159.             {% endif %}
  160.             {% endfor %}
  161.         });
  162.     </script>
  163.     {% block schema_catalog_product %}
  164.     {% endblock %}
  165. {% endblock %}