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/cvetdv.ru/bitrix/js/yandex.market/ui/userfield/catalogsegment/ |
Upload File : |
(function(BX, $) { const Plugin = BX.namespace('YandexMarket.Plugin'); const UserField = BX.namespace('YandexMarket.Ui.UserField'); UserField.CatalogSegment = Plugin.Base.extend({ defaults: { enableElement: '.ym-catalog-segment__enable input[type="checkbox"]', paramElement: '.b-param-table', }, initialize: function() { this.bind(); }, destroy: function() { this.unbind(); }, bind: function() { this.handleEnableChange(true); }, unbind: function() { this.handleEnableChange(false); }, handleEnableChange: function(dir) { this.getElement('enable')[dir ? 'on' : 'off']('change.uiCatalogSegment', $.proxy(this.onEnableChange, this)); }, onEnableChange: function(evt) { const enabled = evt.currentTarget.checked; this.syncEnable(evt.currentTarget, enabled); this.toggleDisabled(!enabled); }, syncEnable: function(checkbox, checked) { if (checkbox.form == null) { return; } for (const sibling of checkbox.form.querySelectorAll(`input[name="${checkbox.name}"]`)) { if (sibling === checkbox || sibling.checked === checked) { continue; } sibling.checked = checked; $(sibling).triggerHandler('change.uiCatalogSegment'); } }, toggleDisabled: function(disabled) { const param = Plugin.manager.getInstance(this.getElement('param')); this.$el.toggleClass('is--disabled', disabled); param[disabled ? 'disable' : 'enable'](); } }, { dataName: 'uiUserFieldCatalogSegment' }); })(BX, jQuery);