Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/ilovecveti.ru/bitrix/js/lpost/delivery/map/src/js/ |
Upload File : |
export default class ViewManager { constructor(parent, popupContent) { this.parent = parent; this.popupContent = popupContent; this.mode = "pvz"; this._onEvent(); this._resize(); } /** * @param mode (pvz || zone || zone_with_map) */ switch (mode) { this._setMode(mode); this._action(); } _setMode (mode) { this.mode = mode; } _getMode () { return this.mode; } _action () { if (this._getMode() === "pvz") { this._zoneAction("hide"); this._zoneWithMapAction('hide'); this._pvzAction("show"); } else if (this._getMode() === "zone") { this._pvzAction("hide"); this._zoneWithMapAction('hide'); this._zoneAction("show"); } else { this._zoneAction("hide"); this._zoneWithMapAction('show'); } } _pvzAction (action) { if (action === "show") { this.popupContent.querySelector(".lpost-pvz__list").classList.remove("_disabled"); this.popupContent.querySelector(".lpost-pvz__ctrl-view._pvz").classList.remove("_disabled"); this.popupContent.querySelector(".lpost-pvz__map").classList.remove("_disabled"); } else { this.popupContent.querySelector(".lpost-pvz__list").classList.add("_disabled"); this.popupContent.querySelector(".lpost-pvz__ctrl-view._pvz").classList.add("_disabled"); this.popupContent.querySelector(".lpost-pvz__map").classList.add("_disabled"); } } _zoneAction (action) { if (action === "show") { this.popupContent.querySelector(".lpost-courier__form").classList.remove("_disabled"); } else { this.popupContent.querySelector(".lpost-courier__form").classList.add("_disabled"); } } _zoneWithMapAction (action) { if (action === "show") { this.popupContent.querySelector(".lpost-pvz__return").classList.remove("_disabled"); this.popupContent.querySelector(".lpost-pvz__map").classList.remove("_disabled"); } else { this.popupContent.querySelector(".lpost-pvz__return").classList.add("_disabled"); this.popupContent.querySelector(".lpost-pvz__map").classList.add("_disabled"); } } _resize () { if (window.innerWidth <= 576) { this.popupContent.classList.add("_mobile"); } else { this.popupContent.classList.remove("_mobile"); } } _onEvent () { let _self = this; BX.bindDelegate( this.popupContent.querySelector(".lpost-pvz__ctrl-view._pvz"), 'click', {className: "ctrl-view_item"}, function (e) { let btns = BX.findParent(this, {className: 'lpost-pvz__ctrl-view'} ).querySelectorAll(".ctrl-view_item"); for (let btn of btns) { btn.classList.remove("_active"); } this.classList.add("_active"); if (this.dataset.view === "list") { _self.popupContent.querySelector(".lpost-pvz__list").classList.remove("_disabled"); } else { _self.popupContent.querySelector(".lpost-pvz__list").classList.add("_disabled"); } } ); BX.bindDelegate(this.popupContent, "click", {className: "lpost-pvz__item"}, function (e) { let btns = BX.findParent( this, {className: 'lpost-pvz__list-wrapper'} ).querySelectorAll(".lpost-pvz__item"); for (let btn of btns) { btn.classList.remove("_active"); } this.classList.add("_active"); } ); BX.bind(window, 'resize', BX.proxy(this._resize, this)); BX.bindDelegate(this.popupContent.querySelector(".lpost-pvz__list-search"), "keyup", { tagName: "input" }, function (e) { // delay ~ 1s dev? let value = new RegExp(this.value, 'i'); _self.parent.createList(_self.parent.listPoints.filter(item => { if(item.address.search(value) >= 0) { return true; } else { if(item.metro && item.metro.search(value) >= 0) { return true; } } })); } ) } }