templates/Slivki/mobile/delivery/order.html.twig line 1

Open in your IDE?
  1. {% extends 'Slivki/mobile/base.html.twig' %}
  2. {% block floatingMobileBanner %}{% endblock %}
  3. {% block messenger%}{% endblock %}
  4.  {% block styles %}
  5.      {{ parent() }}
  6.      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-toast-plugin/1.3.2/jquery.toast.min.css" integrity="sha512-wJgJNTBBkLit7ymC6vvzM1EcSWeM9mmOu+1USHaRBbHkm6W9EgM0HY27+UtUaprntaYQJF75rc8gjxllKs5OIQ==" crossorigin="anonymous" referrerpolicy="no-referrer" />
  7.      <link href="/mobile/css/order_page.min.css?v={{ mobile_order_page_css_version }}" rel="stylesheet" type="text/css" />
  8.      <link href="/css/orderAsGift.min.css?v={{ order_as_gift_css }}" rel="stylesheet" type="text/css"/>
  9.  {% endblock %}
  10. {% block content %}
  11.     {% if offer.isWithoutCodes() %}
  12.         <input type="hidden" id="isWithoutCodes">
  13.     {% endif %}
  14.     {% if isAvailableOnFood is defined and isAvailableOnFood %}
  15.         <input type="hidden" id="isAvailableOnFood" value="true">
  16.     {% endif %}
  17.     {% if isFirstSosediPurchase is defined and isFirstSosediPurchase %}
  18.         <input type="hidden" id="isFirstSosediPurchase">
  19.     {% endif %}
  20.     {% if allowedCodesToBuy is defined and allowedCodesToBuy is not null %}
  21.         <input type="hidden" id="allowedCodesToBuy" value="{{ allowedCodesToBuy }}">
  22.         <input type="hidden" id="allowedCodesCountBySubscription" value="{{ allowedCodesToBuy }}">
  23.     {% endif %}
  24.     {% if isCertificate is defined and isCertificate %}
  25.         <input id="isCertificate" type="hidden" value="">
  26.     {% endif %}
  27.     {% if allowedCodesToBuyBatchCodes is defined and allowedCodesToBuyBatchCodes is not null %}
  28.         <input type="hidden" id="allowedCodesToBuyBatchCodes" value="{{ allowedCodesToBuyBatchCodes }}">
  29.     {% endif %}
  30.     {% if director is defined %}
  31.         <input type="hidden" id="companyNameOffer" value="{{ director.getName()|e }}">
  32.     {% endif %}
  33.     <nav aria-label="breadcrumb">
  34.         <ol class="breadcrumb m-0 py-1 px-2 bg-white sf-text-font">
  35.             <li class="breadcrumb-item"><a href="{{ base_url }}">Главная</a></li>
  36.             {% if categoryName != null %}
  37.                 <li class="breadcrumb-item"><a href="{{ categoryURL }}">{{ categoryName }}</a></li>
  38.             {% endif %}
  39.             <li class="breadcrumb-item"><a href="{{ getURL(constant('Slivki\\Repository\\SeoRepository::RESOURCE_URL_OFFER_DETAILS'), offer.getID()) }}">{{ offer.getCompanyName() }}</a></li>
  40.             <li class="breadcrumb-item active" aria-current="page">Онлайн заказ</li>
  41.         </ol>
  42.     </nav>
  43.     {% if isCertificate is defined and isCertificate %}
  44.         <div id="deliverySupplierCard" class="card rounded-14 mb-3">
  45.             <div class="gradient rounded-14"></div>
  46.             <div class="card-img rounded-14">
  47.                 <img class="w-100 rounded-14" src="{{ getImageURL(offer.getTopBlockMobileMedia(), 0, 0) }}">
  48.             </div>
  49.             <div class="delivery-supplier--logo" style="background-image: url('{{ getImageURL(logoMedia, 0, 0) }}')"></div>
  50.             <div class="delivery-supplier--rating">
  51.                 <i class="slivki-icon-star"></i>{{ offer.getRating() }}
  52.                 <span class="pl-2">
  53.                     <img style="vertical-align: -3px; margin-right: .2em;" class="delivery-sales-icon d-inline-block" src="/images/delivery-sales-icon.svg" alt="delivery-sales-icon">
  54.                     {{ purchaseCountMonth is defined ? purchaseCountMonth : offer.getUsedCodesCount() }}
  55.                 </span>
  56.                 <span class="pl-2"><i class="slivki-icon-eye"></i>{{ visitCount }}</span>
  57.             </div>
  58.             <div class="delivery-supplier--text sf-bold-font"></div>
  59.             <div class="delivery-supplier--info w-100">
  60.                 <span><i class="slivki-icon-info-circled-o"></i>Информация о компании</span>
  61.                 <div class="supplier-info-tooltip d-none">
  62.                     <div class="clearfix">
  63.                         <button class="close float-right"><i class="slivki-icon-close-thin"></i></button>
  64.                     </div>
  65.                     <div class="mb-2 sf-bold-font text-dark">{{ director.getName() }}</div>
  66.                     <div class="text-muted">
  67.                         {{ director.getLegalEntity() }} УНП {{ director.getTaxID() }}
  68.                     </div>
  69.                 </div>
  70.             </div>
  71.         </div>
  72.     {% else %}
  73.         <div  class="p-2 sf-font delivery-page">
  74.             <div class="brand-block">
  75.                 <div id="mapOrderPage" class="d-none" style="height: 178px;" data-toggle="modal" data-target="#mapsModal"></div>
  76.             </div>
  77.         </div>
  78.     {% endif %}
  79.     <div class="can-be-fixed-wrapper vendor-filters-wrapper">
  80.         <div id="fixedBlockFilters">
  81.             {% if isCertificate is not defined or not isCertificate %}
  82.             <div id="jsFixedType" class="d-flex flex-column align-items-center">
  83.                 <div class="switch-delivery-pickup-block px-0 {% if not offer.getBrandboxEnabled() %}d-none{% endif %}">
  84.                     <a class="switch-delivery-pickup-item button-tab-delivery delivery-type active">
  85.                         <p>Доставка</p>
  86.                         <small>удобно👌</small>
  87.                     </a>
  88.                     <a class="switch-delivery-pickup-item pickup-type button-tab-pickup">
  89.                         <p> Самовывоз</p>
  90.                         <small>еще дешевле🔥</small>
  91.                     </a>
  92.                 </div>
  93.                 {% if offer.isGiftCertificateOnlineOrderAllowedOnSite() and offer.isFoodOnlineOrderAllowedOnSite() %}
  94.                 <a href="/gift-certificate/select/{{ offer.getID() }}" class="button-order certificate-order-btn"> Выбрать сертификат<small>себе или в подарок 🎁</small>
  95.                 </a>
  96.                 {% endif %}
  97.                 {% endif %}
  98.             </div>
  99.             {% if isCertificate is not defined or not isCertificate %}
  100.                 {% if pickupEnabled %}
  101.                     <input id="deliveryTypeOffers" type="hidden" value="2">
  102.                 {% elseif deliveryEnabled %}
  103.                     <input id="deliveryTypeOffers" type="hidden" value="1">
  104.                 {% endif %}
  105.             {% endif %}
  106.             {% if isCertificate is not defined or not isCertificate %}
  107.                 <div class="p-2 sf-font">
  108.                     <div id="jsFixedFilters" class="w-100 py-0 px-2" style="background: linear-gradient(180deg, #A839FF 0%, #6747e5 100%), #6747E5; border-radius: 6px">
  109.                         <div class="col d-flex align-items-center text-white justify-content-end px-0">
  110.                             <p class="col mb-0 px-0 text-filter-tittle" style="font-size: 0.8rem;">⚡️ Используй супер-фильтр</p>
  111.                             <div class="ordder-page-filter py-1 mx-2">
  112.                                 <f class="text-filter">Сравни 🔥</f>
  113.                             </div>
  114.                         </div>
  115.                         <div class="filter-items-block px-2 py-2" style="display: none">
  116.                             <div class="filter-items-wrapper">
  117.                                 {% include 'Slivki/online_order/_online_order_sort.html.twig' %}
  118.                             </div>
  119.                         </div>
  120.                     </div>
  121.                 </div>
  122.             {% endif %}
  123.         </div>
  124.     </div>
  125.     <div class="p-2 sf-font">
  126.         <form method="post" action="{{ formAction }}" id="dishSelectForm" class="delivery-teasers-block js-delivery-teasers">
  127.             <input type="hidden" id="deliveryBasketInput" name="basket" value=""/>
  128.             <input type="hidden" id="pickupDeliveryType" name="pickupDeliveryType" value=""/>
  129.             <input type="hidden" id="offerID" name="offerID" value="{{ offer.getID() }}"/>
  130.             <input type="hidden" id="dishSortBy" name="dishSortBy" value=""/>
  131.             {% if deliveryPrice is defined %}
  132.                 <input type="hidden" id="deliveryPrice" name="deliveryPrice" value="{{ deliveryPrice }}"/>
  133.             {% endif %}
  134.             <div id="listProducts">
  135.                 {% if isCertificate is defined and isCertificate %}
  136.                     {% for dish in dishes %}
  137.                         {% set teaserView = 'Slivki/mobile/delivery/delivery_teaser.html.twig' %}
  138.                         {% if dish.isPizza is defined and dish.isPizza %}
  139.                             {% set teaserView = 'Slivki/mobile/delivery/delivery_teaser_pizza.html.twig' %}
  140.                         {% endif %}
  141.                         {% if loop.index0 is divisible by(2) %}
  142.                             <div class="row">
  143.                         {% endif %}
  144.                         <div class="col-sm-6">
  145.                             {% include teaserView with {'dish': dish, 'isTop': dish.id in topDishIDList, 'isAvailableOnFood': isAvailableOnFood is defined and isAvailableOnFood} only %}
  146.                         </div>
  147.                         {% if loop.index is divisible by(2) or loop.last %}
  148.                             </div>
  149.                         {% endif %}
  150.                     {% endfor %}
  151.                 {% endif %}
  152.             </div>
  153.             {% if options|length > 0 %}
  154.                 {% if offer.getID() == constant('Slivki\\Util\\Iiko\\SushiChefArts::OFFER_ID') %}
  155.                     <h6 id="dataMenu_options" class="font-size-1000 font-700 mb-4">Дополнительно</h6>
  156.                 {% else %}
  157.                     <h6 id="dataMenu_options" class="font-size-1000 font-700 mb-4">Гарниры и напитки:</h6>
  158.                 {% endif %}
  159.                 <div class="row mb-5 pb-3">
  160.                     {% for option in options %}
  161.                         <div class="col-sm-6">
  162.                             <div class="delivery-teaser delivery-teaser-item-products additional-delivery-teaser card border-0 px-3">
  163.                                 <div class="row no-gutters">
  164.                                     <div class="col-auto mr-3">
  165.                                         <div class="additional-delivery-teaser--img" style="background-image: url('{{ option.imageURL }}')"></div>
  166.                                     </div>
  167.                                     <div class="col">
  168.                                         <div class="font-size-1000 dish-name">{{ option.name }}</div>
  169.                                         <div class="d-flex justify-content-between align-items-end">
  170.                                             <div class="d-flex flex-column">
  171.                                                 <div class="font-size-1000 opacity-06 dish-weight">
  172.                                                     {% if option.sizeFull %}
  173.                                                         {{ option.sizeFull }}
  174.                                                     {% endif %}
  175.                                                 </div>
  176.                                             </div>
  177.                                         </div>
  178.                                     </div>
  179.                                 </div>
  180.                                 <div id="options_basket" class="row">
  181.                                     <div class="col-auto">
  182.                                         <div class="font-size-1250 font-700 h5 mb-0 py-2 px-3 text-center delivery-price">
  183.                                             {{ option.price|number_format(2, ',') }}&nbsp;р
  184.                                         </div>
  185.                                     </div>
  186.                                     <div class="col">
  187.                                         {% include 'Slivki/delivery/quantity_select.html.twig' with {'isMobile': true, 'dish': option, 'isOption': true} %}
  188.                                     </div>
  189.                                 </div>
  190.                             </div>
  191.                         </div>
  192.                     {% endfor %}
  193.                 </div>
  194.             {% endif %}
  195.         </form>
  196.         <div class="delivery-bottom-placholder" style="height: 150px"></div>
  197.         <div class="basket-container">
  198.             {% if isAvailableOnFood is not defined or not isAvailableOnFood  %}
  199.                 <div class="d-flex">
  200.                     <div class="basket-item-block" >
  201.                         <img width="20" height="20" src="/images/order_page/basket.svg">
  202.                         <small class="counter-basket">0</small>
  203.                         <p>в корзине</p>
  204.                     </div>
  205.                     <div class="price-block-basket">
  206.                         <p id="deliveryTotal" class="old-price-basket">0,00 р</p>
  207.                         <p id="deliveryTotalOfferPrice" class="new-price-basket">0,00 р</p>
  208.                     </div>
  209.                 </div>
  210.             {% endif %}
  211.             <div id="deliveryBtnWrapperWithoutGift" class="basket-buttons-block">
  212.                 {% if isAvailableOnFood is not defined or not isAvailableOnFood  %}
  213.                     <div class="button-order button-online-order disabled">
  214.                         {% if isBuyOnlyCodeResponse is defined and isBuyOnlyCodeResponse %}
  215.                             получить промокод {{ offer.getDiscount() }}
  216.                         {% elseif isCertificate is defined %}
  217.                             оформить сертификат
  218.                         {% else %}
  219.                             заказать онлайн
  220.                         {% endif %}
  221.                     </div>
  222.                     {% if isCertificate is not defined or not isCertificate %}
  223.                         <div class="btn-phone-pay button-order button-call-order text-uppercase {{ isBuyCodeDisable ? 'd-none' : ''  }}">
  224.                             заказать по телефону
  225.                         </div>
  226.                     {% endif %}
  227.                 {% else %}
  228.                     <div class="btn-phone-pay button-order">
  229.                         Получить скидку {{ offer.getDiscount() }}
  230.                     </div>
  231.                 {% endif %}
  232.             </div>
  233.             <div id="deliveryBtnWrapperForGift" class="basket-buttons-block d-none">
  234.                 {% if isAvailableOnFood is not defined or not isAvailableOnFood  %}
  235.                     <div class="button-order button-online-order disabled">
  236.                         заказать себе
  237.                     </div>
  238.                 {% endif %}
  239.                 <div id="btnGiftOrder" data-toggle="modal" data-target="shareFoodForGift" class="button-order btn-gift-order flex-column">ЗАКАЗАТЬ В ПОДАРОК<br><span>жене, подруге, родителям, детям </span></div>
  240.             </div>
  241.         </div>
  242.     </div>
  243.     <input type="hidden" id="minSumForFreeDelivery" value="{{ minSumForFreeDelivery }}">
  244.     <input type="hidden" id="minOrderSum" value="{{ minOrderSum }}">
  245.     <input type="hidden" id="codeCost" value="0"/>
  246.     <input type="hidden" id="isDominos" name="isDominos" value="{{ (isDominos is defined and isDominos) ? '1' : '0'  }}">
  247. {% endblock %}
  248. {% block footer %}{% endblock %}
  249. {% block popup %}
  250.     {{ parent() }}
  251.     {% if offer.getID() != 283793 %}
  252.         {% include 'Slivki/mobile/delivery/modal/details.html.twig' with {'isOfferPage': false}  %}
  253.     {% endif %}
  254.     {% include 'Slivki/mobile/delivery/modal/clear_basket_modal.html.twig' %}
  255.     {% include 'Slivki/mobile/popup/loading_popup.html.twig' %}
  256.     {% include 'Slivki/mobile/delivery/modal/basket.html.twig' %}
  257.     {% include 'Slivki/popups/buy_code_phone_offer.html.twig' %}
  258.     {% include 'Slivki/popups/buy_code_item-offer.html.twig' %}
  259.     {% include 'Slivki/popups/buy_code_phonenumber_offers.html.twig' %}
  260.     {% include 'Slivki/popups/buy_code_erip_offers.html.twig' %}
  261.     {% include 'Slivki/popups/reviews_delivery_page.html.twig' %}
  262.     {% include 'Slivki/mobile/order_page/delivery_page_modal.html.twig' %}
  263.     {% include 'Slivki/food_court/modal/maps_mobile.html.twig' %}
  264.     {% include 'Slivki/popups/share_food_gift_modal_male.html.twig' %}
  265.     {% include 'Slivki/popups/create_massage_popup.html.twig' %}
  266.     {% include 'Slivki/popups/share_gift_modal.html.twig' %}
  267.     {% if offer.getBrandboxEnabled() and isCertificate is not defined %}
  268.         {% include 'Slivki/mobile/delivery/modal/brandbox/brandbox_popup.html.twig' %}
  269.     {% endif %}
  270.     {% if app.user and app.user.getActiveCreditCards()  %}
  271.         {% include 'Slivki/popups/buy_code_credit_cards.html.twig' %}
  272.         {% include 'Slivki/mobile/popup/buy_promo_custom.html.twig' %}
  273.         {% include 'Slivki/popups/buy_code_phone_order_page.html.twig' %}
  274.     {% endif %}
  275.     {% if isCertificate is defined and isCertificate %}
  276.         {% include 'Slivki/popups/step_buy_certificate.twig' %}
  277.     {% endif %}
  278. {% endblock %}
  279. {% block javascripts %}
  280.     {{ parent() }}
  281.     <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.bundle.min.js"></script>
  282.     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-toast-plugin/1.3.2/jquery.toast.min.js" integrity="sha512-zlWWyZq71UMApAjih4WkaRpikgY9Bz1oXIW5G0fED4vk14JjGlQ1UmkGM392jEULP8jbNMiwLWdM8Z87Hu88Fw==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
  283.     <script type="module" src="/mobile/js/order_page.min.js?v={{ mobile_order_page_js_version }}"></script>
  284.     <script type="module" src="/js/paymentOrderPage/paymentOrderPage.js?v={{ payment_order_page_js_version }}"></script>
  285.     <script type="module" src="/js/paymentOrderPage/api.js?v={{ payment_order_page_api_js_version }}"></script>
  286.     <script type="module" src="/js/order_page/api.js?v=5"></script>
  287.     <script src="/js/delivery-common.min.js?v={{ delivery_common_js_version }}"></script>
  288.     <script src="/js/offer.js?v={{ offer_js_version }}"></script>
  289.     <script src="/mobile/js/delivery.js?v={{ mobile_delivery_js_version }}"></script>
  290.     <script src="/js/jquery.sameheight.js"></script>
  291.     <script type="module" src="/js/order_as_gift/main.js?v={{ order_as_gift_js_version }}"></script>
  292.     <script src="/js/food_has_variant/main.js?v={{ food_has_variant_js_version }}"></script>
  293.     {% if app.request.query.has('checkOrder') %}
  294.         <script>
  295.             $(function(){
  296.                 initCheckOfferOrderStatus({{ app.request.get('checkOrder') }});
  297.             });
  298.         </script>
  299.     {% endif %}
  300. {% endblock %}