<?

use Bik\Project\Tools;

require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php");
$APPLICATION->SetTitle("Доставка");

$currentOrg = \Bik\Project\Tools::getCurrentOrganization();
if (!strlen($currentOrg['code'])) {
    \Bitrix\Main\Page\Asset::getInstance()->addString('<script src="https://api-maps.yandex.ru/2.1/?apikey=ac0a18f5-a67e-4e1f-b955-29fd0075162b&lang=ru_RU" type="text/javascript"></script>', true, \Bitrix\Main\Page\AssetLocation::BEFORE_CSS);
}
$deliveryFilter = [
    'PROPERTY_ORG' => $currentOrg['id'],
];
?>
<? if (1): ?>

    <? $APPLICATION->IncludeComponent(
        "bitrix:news.list",
        "delivery_new",
        array(
            "ACTIVE_DATE_FORMAT" => "d.m.Y",
            "ADD_SECTIONS_CHAIN" => "N",
            "AJAX_MODE" => "N",
            "AJAX_OPTION_ADDITIONAL" => "",
            "AJAX_OPTION_HISTORY" => "N",
            "AJAX_OPTION_JUMP" => "N",
            "AJAX_OPTION_STYLE" => "N",
            "CACHE_FILTER" => "N",
            "CACHE_GROUPS" => "N",
            "CACHE_TIME" => "3600000",
            "CACHE_TYPE" => "A",
            "CHECK_DATES" => "Y",
            "DETAIL_URL" => "",
            "DISPLAY_BOTTOM_PAGER" => "N",
            "DISPLAY_DATE" => "N",
            "DISPLAY_NAME" => "Y",
            "DISPLAY_PICTURE" => "Y",
            "DISPLAY_PREVIEW_TEXT" => "Y",
            "DISPLAY_TOP_PAGER" => "N",
            "FIELD_CODE" => array("NAME", "PREVIEW_TEXT", "DETAIL_TEXT"),
            "FILTER_NAME" => "deliveryFilter",
            "HIDE_LINK_WHEN_NO_DETAIL" => "N",
            "IBLOCK_ID" => "72",
            "IBLOCK_TYPE" => "settings",
            "INCLUDE_IBLOCK_INTO_CHAIN" => "N",
            "INCLUDE_SUBSECTIONS" => "Y",
            "MESSAGE_404" => "",
            "NEWS_COUNT" => "999",
            "PAGER_BASE_LINK_ENABLE" => "N",
            "PAGER_DESC_NUMBERING" => "N",
            "PAGER_DESC_NUMBERING_CACHE_TIME" => "36000",
            "PAGER_SHOW_ALL" => "N",
            "PAGER_SHOW_ALWAYS" => "N",
            "PAGER_TEMPLATE" => ".default",
            "PAGER_TITLE" => "",
            "PARENT_SECTION" => "",
            "PARENT_SECTION_CODE" => "",
            "PREVIEW_TRUNCATE_LEN" => "",
            "PROPERTY_CODE" => array("ORG", "ICON", "YA_ADDR", "YA_NAME", "YA_COORDS", "YA_WORKTIME"),
            "SET_BROWSER_TITLE" => "N",
            "SET_LAST_MODIFIED" => "N",
            "SET_META_DESCRIPTION" => "N",
            "SET_META_KEYWORDS" => "N",
            "SET_STATUS_404" => "N",
            "SET_TITLE" => "N",
            "SHOW_404" => "N",
            "SORT_BY1" => "SORT",
            "SORT_BY2" => "DATE_ACTIVE_FROM",
            "SORT_ORDER1" => "ASC",
            "SORT_ORDER2" => "DESC",
            "STRICT_SECTION_CHECK" => "N",
        )
    ); ?>

<? else: ?>
    <div class="delivery">
        <div class="container">
            <? $APPLICATION->IncludeComponent(
                "bitrix:news.list",
                "delivery",
                array(
                    "ACTIVE_DATE_FORMAT" => "d.m.Y",
                    "ADD_SECTIONS_CHAIN" => "N",
                    "AJAX_MODE" => "N",
                    "AJAX_OPTION_ADDITIONAL" => "",
                    "AJAX_OPTION_HISTORY" => "N",
                    "AJAX_OPTION_JUMP" => "N",
                    "AJAX_OPTION_STYLE" => "N",
                    "CACHE_FILTER" => "N",
                    "CACHE_GROUPS" => "N",
                    "CACHE_TIME" => "3600000",
                    "CACHE_TYPE" => "A",
                    "CHECK_DATES" => "Y",
                    "DETAIL_URL" => "",
                    "DISPLAY_BOTTOM_PAGER" => "N",
                    "DISPLAY_DATE" => "N",
                    "DISPLAY_NAME" => "Y",
                    "DISPLAY_PICTURE" => "Y",
                    "DISPLAY_PREVIEW_TEXT" => "Y",
                    "DISPLAY_TOP_PAGER" => "N",
                    "FIELD_CODE" => array("NAME", "PREVIEW_TEXT", "DETAIL_TEXT"),
                    "FILTER_NAME" => "deliveryFilter",
                    "HIDE_LINK_WHEN_NO_DETAIL" => "N",
                    "IBLOCK_ID" => "72",
                    "IBLOCK_TYPE" => "settings",
                    "INCLUDE_IBLOCK_INTO_CHAIN" => "N",
                    "INCLUDE_SUBSECTIONS" => "Y",
                    "MESSAGE_404" => "",
                    "NEWS_COUNT" => "999",
                    "PAGER_BASE_LINK_ENABLE" => "N",
                    "PAGER_DESC_NUMBERING" => "N",
                    "PAGER_DESC_NUMBERING_CACHE_TIME" => "36000",
                    "PAGER_SHOW_ALL" => "N",
                    "PAGER_SHOW_ALWAYS" => "N",
                    "PAGER_TEMPLATE" => ".default",
                    "PAGER_TITLE" => "",
                    "PARENT_SECTION" => "",
                    "PARENT_SECTION_CODE" => "",
                    "PREVIEW_TRUNCATE_LEN" => "",
                    "PROPERTY_CODE" => array("ORG", "ICON"),
                    "SET_BROWSER_TITLE" => "N",
                    "SET_LAST_MODIFIED" => "N",
                    "SET_META_DESCRIPTION" => "N",
                    "SET_META_KEYWORDS" => "N",
                    "SET_STATUS_404" => "N",
                    "SET_TITLE" => "N",
                    "SHOW_404" => "N",
                    "SORT_BY1" => "SORT",
                    "SORT_BY2" => "DATE_ACTIVE_FROM",
                    "SORT_ORDER1" => "ASC",
                    "SORT_ORDER2" => "DESC",
                    "STRICT_SECTION_CHECK" => "N",
                )
            ); ?>



            <? if (!strlen($currentOrg['code'])) { ?>
                <div class="delivery-block">
                    <div class="delivery-header">
                        <div class="delivery-header-img">
                            <img src="/local/templates/brutalitygame/img/icons/courier.svg" loading="lazy" alt="">
                        </div>
                        <div class="delivery-header-title">По Казани и в пределах Казани (10км)</div>
                    </div>
                    <div class="delivery-body">
                        <div class="row">
                            <div class="col-md-6">
                                <div class="delivery-contacts-item">
                                    <div class="accent-title">Курьером магазина</div>
                                    <div class="delivery-contact">
                                        <span>с 11:00 до 19:00</span>
                                        <div class="small-mute-text">Ежедневно</div>
                                    </div>
                                </div>
                                <div class="delivery-big-text">Доставка производится в день оформления заказа, либо в
                                    течение 3 дней после оформления заказа, в зависимости от загруженности службы
                                    доставки
                                </div>
                                <div class="delivery-contacts-item">
                                    <div class="accent-title">Доставка за пределы Казани</div>
                                    <div class="delivery-phone">
                                        <p>Уточните по телефону у менеджера</p>
                                        <a href="tel:<?= Tools::getCurrentTelPhone() ?>"><?= Tools::getCurrentPhone() ?></a>
                                    </div>
                                </div>
                            </div>
                            <div class="col-md-6">
                                <div class="delivery-contacts-item">
                                    <div class="accent-title">Доставка в пределах Казани</div>
                                    <div class="delivery-price">200 ₽</div>
                                </div>
                                <div class="delivery-contacts-item">
                                    <div class="accent-title">Отдаленные районы, такие как</div>
                                    <div class="delivery-price">400 ₽</div>
                                    <div class="delivery-ul">
                                        <ul>
                                            <li>Залесный</li>
                                            <li>Осиново</li>
                                            <li>Нижний Услон</li>
                                            <li>Верхний Услон</li>
                                            <li>Набережные Моркваши</li>
                                            <li>Столбище</li>
                                            <li>Усады</li>
                                            <li>Богородское</li>
                                        </ul>
                                        <ul>
                                            <li>Высокая Гора</li>
                                            <li>Царево</li>
                                            <li>Новониколаевский</li>
                                            <li>Кадышево</li>
                                            <li>Борисоглебск</li>
                                            <li>Мирный</li>
                                            <li>Салмачи</li>
                                        </ul>
                                    </div>
                                    <div class="delivery-btn">
                                        <a href="#address-map-3" class="btn btn-white open-popup">Показать на карте</a>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>

                <div class="delivery-text-content">
                    <div class="text-content">

                        <div class="delivery-text-item">
                            <h4>Общие положения доставки по городу курьером</h4>
                            <ul>
                                <li>Внешний вид и комплектность товара, а также комплектность всего заказа должны быть
                                    проверены получателем в момент доставки товара
                                </li>
                                <li>При доставке товара, получатель ставит свою подпись в квитанции о доставке, в графе:
                                    "Заказ принял, комплектность полная, услуги по доставке оказаны, претензий к
                                    количеству и внешнему виду товара не имею. С условиями гарантии и возврата товара
                                    ознакомлен"
                                </li>
                                <li>После получения заказа претензии к внешним дефектам товара, его количеству,
                                    комплектности и товарному виду не принимаются
                                </li>
                            </ul>
                            <p>Курьер не уполномочен давать какие-либо консультации на технические или коммерческие
                                темы, а также выполнять любые поручения клиента. Проверка товара в присутствии курьера,
                                а так же все взаиморасчеты должны быть произведены в срок не более 15 минут</p>
                        </div>

                        <div class="delivery-text-item">
                            <h4>Виды оплаты при самовывозе и доставкой по городу</h4>
                            <p>Оплата заказа осуществляется электронным переводом денег с карты на карту, наличными, по
                                терминалу</p>
                        </div>

                        <div class="delivery-map-block">
                            <div class="h4">Пункты самовывоза в Казани</div>
                            <!-- 			<div class="delivery-search">
                                            <div class="form-group form-group-icon">
                                                <input type="text" class="form-control" placeholder="Поиск по метро, улице и названию">
                                                <span><img src="/local/templates/brutalitygame/img/icons/search.svg" loading="lazy" alt=""></span>
                                            </div>
                                        </div> -->
                            <div class="delivery-map">
                                <div class="map-wrapper">
                                    <div id="map"></div>
                                </div>
                            </div>
                        </div>

                    </div>
                </div>
            <? } ?>

        </div>
    </div>

    <? if (!strlen($currentOrg['code'])) { ?>
        <script type="text/javascript" defer>

            "use strict";

            let itemsData = [
                {
                    name: 'Бруталити видеоигры',
                    coordinates: [55.826473, 49.083893],
                    street: 'улица Марселя Салимжанова, 5',
                    workTime: 'Открыто до 20:00'
                },
                {
                    name: 'Бруталити видеоигры',
                    coordinates: [55.786480, 49.104833],
                    street: 'улица Марселя Салимжанова, 5',
                    workTime: 'Открыто до 20:00'
                },
                {
                    name: 'Бруталити видеоигры',
                    coordinates: [55.781291, 49.124749],
                    street: 'улица Марселя Салимжанова, 5',
                    workTime: 'Открыто до 20:00'
                }
            ];

            let mainStreet = [
                {
                    name: 'Бруталити видеоигры',
                    coordinates: [55.786359, 49.104770],
                    street: 'улица Аметьевкая магистраль 16к1,
                    workTime: 'c 10:00 до 19:00'
                }
            ];

            ymaps.ready(init);

            function init() {

                let myMap = new ymaps.Map("map", {
                    center: [55.794817, 49.103537],
                    zoom: 12,
                    controls: [],
                    duration: 1000
                }, {
                    suppressMapOpenBlock: true
                });

                let myMap2 = new ymaps.Map("map-2", {
                    center: mainStreet[0].coordinates,
                    zoom: 12,
                    controls: [],
                    duration: 1000
                }, {
                    suppressMapOpenBlock: true
                });
                let myCollection = new ymaps.GeoObjectCollection(),
                    myCollection2 = new ymaps.GeoObjectCollection();

                let MyBalloonLayout = ymaps.templateLayoutFactory.createClass('<div class="popover top">' + '<a class="close popover-close" href="#"><span class="icon-close"></span></a>' + '<div class="arrow"></div>' + '<div class="popover-inner">' + '$[[options.contentLayout observeSize minWidth=328 maxWidth=328 maxHeight=110 minHeight=110]]' + '</div>' + '</div>', {
                    build: function build() {
                        this.constructor.superclass.build.call(this);
                        this._$element = $('.popover', this.getParentElement());
                        this.applyElementOffset();

                        this._$element.find('.close').on('click', $.proxy(this.onCloseClick, this));
                    },
                    clear: function clear() {
                        this._$element.find('.close').off('click');

                        this.constructor.superclass.clear.call(this);
                    },
                    onSublayoutSizeChange: function onSublayoutSizeChange() {
                        MyBalloonLayout.superclass.onSublayoutSizeChange.apply(this, arguments);

                        if (!this._isElement(this._$element)) {
                            return;
                        }

                        this.applyElementOffset();
                        this.events.fire('shapechange');
                    },
                    applyElementOffset: function applyElementOffset() {
                        this._$element.css({
                            left: -(this._$element[0].offsetWidth / 2),
                            top: -(this._$element[0].offsetHeight + this._$element.find('.arrow')[0].offsetHeight)
                        });
                    },
                    onCloseClick: function onCloseClick(e) {
                        e.preventDefault();
                        this.events.fire('userclose');
                    },
                    getShape: function getShape() {
                        if (!this._isElement(this._$element)) {
                            return MyBalloonLayout.superclass.getShape.call(this);
                        }

                        let position = this._$element.position();

                        return new ymaps.shape.Rectangle(new ymaps.geometry.pixel.Rectangle([[position.left, position.top], [position.left + this._$element[0].offsetWidth, position.top + this._$element[0].offsetHeight + this._$element.find('.arrow')[0].offsetHeight]]));
                    },
                    _isElement: function _isElement(element) {
                        return element && element[0] && element.find('.arrow')[0];
                    }
                });

                let MyBalloonContentLayout = ymaps.templateLayoutFactory.createClass('<div class="popover-content">$[properties.balloonContent]</div>');

                let ballonCont;

                function filterApiData() {

                    mainStreet.forEach(item => {

                        ballonCont = [
                            `<div class="map-item"`,
                            `<div class="map-item-info">`,
                            `<div class="map-item-title">${item.name}</div>`,
                            `<div class="map-item-street">${item.street}</div>`,
                            `<div class="map-item-worktime">${item.workTime}</div>`,
                            `</div>`,
                            `</div>`
                        ].join('');

                        myCollection.add(new ymaps.Placemark(item.coordinates, {
                            balloonContent: ballonCont
                        }, {
                            balloonLayout: MyBalloonLayout,
                            balloonContentLayout: MyBalloonContentLayout,
                            balloonPanelMaxMapArea: 0,
                            balloonOffset: [-53, -155],
                            iconLayout: 'default#imageWithContent',
                            iconImageHref: '/local/templates/brutalitygame/img/map-sticker.png',
                            iconImageSize: [59, 59],
                            iconImageOffset: [-29, -29],
                            hideIconOnBalloonOpen: false
                        }));

                        myMap.geoObjects.add(myCollection);

                    });

                    mainStreet.forEach(item => {

                        ballonCont = [
                            `<div class="map-item"`,
                            `<div class="map-item-info">`,
                            `<div class="map-item-title">${item.name}</div>`,
                            `<div class="map-item-street">${item.street}</div>`,
                            `<div class="map-item-worktime">${item.workTime}</div>`,
                            `</div>`,
                            `</div>`
                        ].join('');

                        let placeMark = new ymaps.Placemark(item.coordinates, {
                            balloonContent: ballonCont
                        }, {
                            balloonLayout: MyBalloonLayout,
                            balloonContentLayout: MyBalloonContentLayout,
                            balloonPanelMaxMapArea: 0,
                            balloonOffset: [-53, -155],
                            iconLayout: 'default#imageWithContent',
                            iconImageHref: '/local/templates/brutalitygame/img/map-sticker.png',
                            iconImageSize: [59, 59],
                            iconImageOffset: [-29, -29],
                            hideIconOnBalloonOpen: false
                        });


                        myCollection2.add(placeMark);

                        myMap2.geoObjects.add(myCollection2);

                        placeMark.balloon.open();

                    });

                };

                filterApiData();

                myMap.behaviors.disable('scrollZoom');
                myMap2.behaviors.disable('scrollZoom');
                myMap.controls.add('zoomControl');
                myMap2.controls.add('zoomControl');

                let isMobile = {
                    Android: function () {
                        return navigator.userAgent.match(/Android/i);
                    },
                    BlackBerry: function () {
                        return navigator.userAgent.match(/BlackBerry/i);
                    },
                    iOS: function () {
                        return navigator.userAgent.match(/iPhone|iPad|iPod/i);
                    },
                    Opera: function () {
                        return navigator.userAgent.match(/Opera Mini/i);
                    },
                    Windows: function () {
                        return navigator.userAgent.match(/IEMobile/i);
                    },
                    any: function () {
                        return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
                    }
                };

                function disableDrag() {
                    if (isMobile.any() != null) {
                        myMap.behaviors.disable('drag');
                    } else {
                        myMap.behaviors.enable('drag');
                    }
                }

                disableDrag();

                myMap.events.add('click', function () {
                    if (isMobile.any() != null) {
                        myMap.behaviors.enable('drag')
                    }
                });

                $(window).on('scroll', function () {
                    if (isMobile.any() != null) {
                        myMap.behaviors.disable('drag')
                    }
                });
                $(window).on('resize', disableDrag);

            }

        </script>
    <? } ?>
<? endif; ?>

<? require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/footer.php"); ?>