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/rospirotorg.ru/bitrix/js/ui/info-helper/src/ |
Upload File : |
import { Event } from 'main.core'; import { FeaturePromotersRegistry } from './export'; export class FeaturePromoterAutoBinder { static #elements: ?NodeList; static #isLaunch: boolean; static #attributeName: string = 'data-feature-promoter'; static launch(): void { if (!FeaturePromoterAutoBinder.#isLaunch) { FeaturePromoterAutoBinder.getElements().forEach((element) => { Event.bind(element, 'click', (event) => { const code = event.target?.attributes?.getNamedItem(FeaturePromoterAutoBinder.#attributeName)?.value; if (code) { FeaturePromotersRegistry.getPromoter({ code: code, bindElement: element, }).show(); } }); }); FeaturePromoterAutoBinder.#isLaunch = true; } } static getElements(): NodeList { if (!FeaturePromoterAutoBinder.#elements) { FeaturePromoterAutoBinder.#elements = document.querySelectorAll(`[${FeaturePromoterAutoBinder.#attributeName}]`); } return FeaturePromoterAutoBinder.#elements; } }