<!--Код фильтрации приёмщика в форме ZeroBlock  mo-ti.ru-->
<script>
t_onReady(function() {
    
    var SUBSCRIPTION_FIELD_NAME = "подписка";
    var FORM_INPUT_VALUE = "46d64d15a6dc3c5a634234923f2fd87d";
    
    var processedForms = new WeakSet();

    function initForm(form) {
        if (processedForms.has(form)) return;
        processedForms.add(form);

        var checkboxSelector = '.t-input-group[data-field-name="' + SUBSCRIPTION_FIELD_NAME + '"] input[type="checkbox"]';
        var checkbox = form.querySelector(checkboxSelector);

        if (!checkbox) return;

        var formInputSelector = 'input[value="' + FORM_INPUT_VALUE + '"]';
        var formInput = form.querySelector(formInputSelector);
        var savedInput = null;

        if (formInput) {
            savedInput = formInput.cloneNode(true);
            formInput.remove();
        }

        function updateFormField() {
            if (!form || !savedInput) return;

            var existingInput = form.querySelector(formInputSelector);

            if (checkbox.checked) {
                if (!existingInput) {
                    form.insertBefore(savedInput.cloneNode(true), form.firstChild);
                }
            } else {
                if (existingInput) {
                    existingInput.remove();
                }
            }
        }

        checkbox.addEventListener('change', updateFormField);
        updateFormField();
    }

    document.querySelectorAll('form').forEach(initForm);

    var observer = new MutationObserver(function(mutations) {
        mutations.forEach(function(mutation) {
            mutation.addedNodes.forEach(function(node) {
                if (node.nodeType === Node.ELEMENT_NODE) {
                    if (node.tagName === 'FORM') {
                        initForm(node);
                    }
                    if (node.querySelectorAll) {
                        node.querySelectorAll('form').forEach(initForm);
                    }
                }
            });
        });
    });

    observer.observe(document.body, {
        childList: true,
        subtree: true
    });
    
});
</script>
Made on
Tilda