src/DcSiteBundle/Resources/views/LandRover/model-lineup.html.twig line 1

Open in your IDE?
  1. {% extends '@DcSite/LandRover/base.html.twig' %}
  2. {% block title %}
  3.     <title>{{ 'seo.model_lineup.title'|trans({}, 'dc_landrover') }}</title>
  4. {% endblock title %}
  5. {% block seo %}
  6.     <meta name="description" content="{{ 'seo.model_lineup.description'|trans({}, 'dc_landrover') }}"/>
  7.     <meta name="keywords" content=""/>
  8. {% endblock seo %}
  9. {% block ogtagDynamic %}
  10.     <meta property="og:title" content="{{ 'seo.model_lineup.title'|trans({}, 'dc_landrover') }}"/>
  11.     <meta property="og:description" content="{{ 'seo.model_lineup.description'|trans({}, 'dc_landrover') }}"/>
  12. {% endblock ogtagDynamic %}
  13. {% block css %}
  14.     <link rel="stylesheet" href="{{ asset('bundles/dcsite/css/modules/slider.css') }}">
  15.     <link rel="stylesheet" href="{{ asset('bundles/dcsite/css/landrover/slick.css') }}">
  16.     <link rel="stylesheet" href="{{ asset('bundles/dcsite/css/landrover/model-lineup.css') }}">
  17. {% endblock %}
  18. {% block content %}
  19.     <main>
  20.         <section class="breadcrumbs__new">
  21.             <div class="container">
  22.                 <ol class="global_breadcrumbs__new" itemscope itemtype="https://schema.org/BreadcrumbList">
  23.                     <li class="marker__none" itemprop="itemListElement" itemscope
  24.                         itemtype="https://schema.org/ListItem">
  25.                         <a itemprop="item" href="{{ path('landrover_homepage') }}">
  26.                             <span class="breadcrumbs__link" itemprop="name">Land Rover</span></a>
  27.                         <meta itemprop="position" content="1"/>
  28.                     </li>
  29.                     <div class="arrow-bcs"> ❯ </div>
  30.                     <li itemprop="item" class="marker__none" itemprop="itemListElement" itemscope
  31.                         itemtype="https://schema.org/ListItem">
  32.                         <span style="color: #ABABAB;" class="breadcrumbs__link" itemprop="name">{{ 'car.model_lineup'|trans({}, 'dc_jaguar') }}</span>
  33.                         <meta itemprop="position" content="2"/>
  34.                     </li>
  35.                 </ol>
  36.             </div>
  37.         </section>
  38.         <section class="section-padding">
  39.             <div class="container">
  40.                 <div class="row justify-content-center">
  41.                     <div class="col-md-8 section-title mb-0 ">
  42.                         <h1 class="smal-size">{{ 'main.price_model_lineup'|trans({}, 'dc_jaguar') }} LAND ROVER</h1>
  43.                     </div>
  44.                 </div>
  45.             </div>
  46.         </section>
  47.         <section class="model-lineup section-padding section-padding-new">
  48.             <div class="container">
  49.                 <div class="row">
  50.                     {% for car in cars %}
  51.                         <div class="col-sm-12 col-md-6 col-lg-4 col-xl-3">
  52.                             <div class="model-card">
  53.                                 <div class="model-image flexbox-wrapper">
  54.                                     <div class="car_status_is_new-block">
  55.                                         {% if  car.new %}
  56.                                             <span class="car_status_is_new">{{ 'pages.car.status_is_new'|trans({}, 'dc_base') }}</span>
  57.                                         {% endif %}
  58.                                     </div>
  59.                                     <a href="{{ path('landrover_card_car', {'car': car.url}) }}">
  60.                                         <img style="visibility: hidden" width="270px" height="191px"
  61.                                              data-src="{{ webpUrl(car.preview, 'small') }}">
  62.                                     </a>
  63.                                 </div>
  64.                                 <div class="card-body">
  65.                                     <span class="car-name">{{ car.modelName }}</span>
  66.                                     <span class="car-price">{{ 'main.from'|trans({}, 'dc_landrover') }} {{ car.price | price }} {{ 'main.uah'|trans({}, 'dc_landrover')|raw }}</span>
  67.                                     <span class="car-title">{{ car.slogan(app.request.locale) }}</span>
  68.                                     {# <a class="link-btn before-arrow" href="{{ path('landrover_car_configurator', { 'url': car.url }) }}">{{ 'main.configurator'|trans({}, 'dc_landrover') }}</a> #}
  69.                                     <a class="link-btn before-arrow"
  70.                                        href="{{ path('landrover_service_consultation', {'carId': car.vehicleId}) }}">{{ 'main.order_td'|trans({}, 'dc_landrover') }}</a>
  71.                                 </div>
  72.                             </div>
  73.                         </div>
  74.                     {% endfor %}
  75.                 </div>
  76.             </div>
  77.             {% include '@DcSite/Modules/car/catalog-model-range-item.html.twig' with { name: 'landrover_model_lineup_pages' } %}
  78.         </section>
  79.     </main>
  80. {% endblock %}
  81. {% block pageJS %}
  82.     <script>
  83.         app.onCustomEvent('appInit', function () {
  84.             app.loadCss('{{ asset('/bundles/dcsite/css/modules/multi-consultation-enter.css') }}');
  85.             app.loadCss('{{ asset('/bundles/dcsite/css/landrover/modules/multi-consultation.css') }}');
  86.             app.loadJs('{{ asset('/bundles/dcsite/js/hammer.min.js') }}');
  87.             app.loadJs('{{ asset('/bundles/core/js/modules/slick/slick.js') }}', function () {
  88.                 var slick = $('.slider').slick({
  89.                     autoplay: true,
  90.                     autoplaySpeed: 3000,
  91.                     arrows: false,
  92.                     dots: false,
  93.                     centerPadding: '0px',
  94.                     slidesToShow: 1,
  95.                     adaptiveHeight: true,
  96.                     variableWidth: false,
  97.                     centerMode: false,
  98.                     responsive: [
  99.                         {
  100.                             breakpoint: 992,
  101.                             settings: {
  102.                                 arrows: true,
  103.                                 adaptiveHeight: true,
  104.                                 variableWidth: false,
  105.                                 centerMode: false,
  106.                                 slidesToShow: 1
  107.                             }
  108.                         }
  109.                     ]
  110.                 });
  111.                 var length = $('.slider.regular').data('length');
  112.                 var sliderNumberBlock = $(".slider-number");
  113.                 for (var i = 1; i <= length; i++) {
  114.                     if (i === 1) {
  115.                         sliderNumberBlock.append("<div class='slides active' id='slide-" + i + "'>" + i + "</div>");
  116.                     } else {
  117.                         sliderNumberBlock.append("<div class='slides' id='slide-" + i + "'>" + i + "</div>");
  118.                     }
  119.                 }
  120.                 var slides = sliderNumberBlock.children();
  121.                 slides.each(function () {
  122.                     $(this).click(function () {
  123.                         let num = $(this).text();
  124.                         slick.slick('slickGoTo', num - 1);
  125.                     });
  126.                 });
  127.                 slick.on('beforeChange', function () {
  128.                     var beforeSlide = $(".slick-active").data("slick-index") + 1;
  129.                     $("#slide-" + beforeSlide).removeClass('active');
  130.                 });
  131.                 slick.on('afterChange', function () {
  132.                     var activeSlide = $(".slick-active").data("slick-index") + 1;
  133.                     $("#slide-" + activeSlide).addClass('active');
  134.                 });
  135.             });
  136.             var readmore = function (target) {
  137.                 $("#seo-content-main .seo-btn").on("click", function () {
  138.                     var $this = $(this);
  139.                     if ($this.hasClass("more")) {
  140.                         $this
  141.                             .removeClass("more")
  142.                             .addClass("less")
  143.                             .text("{{ 'pages.hide'|trans({}, 'dc_yamaha') }}");
  144.                         target.collapse("show");
  145.                     } else {
  146.                         $this
  147.                             .removeClass("less")
  148.                             .addClass("more")
  149.                             .text("{{ 'pages.read_all'|trans({}, 'dc_yamaha') }}");
  150.                         target.collapse("hide");
  151.                     }
  152.                 });
  153.             };
  154.             var target = $("#seo-content-main div.seo-block:nth-child(n+2)");
  155.             readmore(target);
  156.             /* Отложеная загрузка google карты */
  157.             setTimeout(function () {
  158.                 $('#mainMap').attr('src', 'https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d6842.171213936868!2d30.44718856241725!3d50.37624966458023!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0xda543660049c03c8!2zSmFndWFyIExhbmQgUm92ZXIg0JrQuNGX0LIg0JfQsNGF0ZbQtA!5e0!3m2!1sru!2sua!4v1552659463552')
  159.             }, 4000);
  160.             /* Загрузка новостей блока 'специальные предложения', и 'новостей' */
  161.             app.loadJs('{{ asset('/bundles/dcsite/js/load-entities.js') }}', function () {
  162.                 initSection({
  163.                     initUrl: '{{ path('news_special_load') }}',
  164.                     wrapper: '#specialOfferVue',
  165.                     urlSingle: 'landrover_special_offers_single'
  166.                 });
  167.                 initSection({
  168.                     initUrl: '{{ path('news_load') }}',
  169.                     wrapper: '#newsVue',
  170.                     urlSingle: 'landrover_special_offers_single'
  171.                 });
  172.             });
  173.         });
  174.     </script>
  175. {% endblock %}