HEX
Server: LiteSpeed
System: Linux pulsar191.sitesanctuary.org 5.14.0-284.30.1.el9.tuxcare.els9.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jan 10 17:34:05 UTC 2025 x86_64
User: lgooir (1604)
PHP: 8.1.32
Disabled: exec,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/lgooir/public_html/wp-content/themes/woodmart/js/scripts/wc/emailSubscriptionCheckboxes.js
/* global woodmart_settings, woodmartThemeModule */
woodmartThemeModule.emailSubscriptionCheckboxes = function() {
	let mainCheckbox = document.querySelector('#wd_email_subscription_consent');
	
	function init() {
		if (!mainCheckbox) {
			return;
		}

		setupEventListeners();
	}

	function setupEventListeners() {
		mainCheckbox.addEventListener('change', updateIndividualCheckboxes);

		document.querySelectorAll('.wd-email-individual-consent').forEach(function(checkbox) {
			checkbox.addEventListener('change', updateMainCheckbox);
		});
	}

	function updateIndividualCheckboxes() {
		document.querySelectorAll('.wd-email-individual-consent').forEach(function(checkbox) {
			checkbox.checked = mainCheckbox.checked;

			if (mainCheckbox.checked) {
				checkbox.disabled = false;
				checkbox.value = '1';
			} else {
				checkbox.disabled = true;
				checkbox.value = '0';
			}
		});
	}

	function updateMainCheckbox() {
		if (this.checked) {
			mainCheckbox.checked = true;
			mainCheckbox.value = '1';
		} else if (!anyChecked()) {
			mainCheckbox.checked = false;
			mainCheckbox.value = '0';
		}
	}

	function anyChecked() {
		let anyChecked = false;

		document.querySelectorAll('.wd-email-individual-consent').forEach(function(box) {
			if (box.checked) {
				anyChecked = true;
			}
		});

		return anyChecked;
	}

	init();
}

window.addEventListener('load', function() {
	woodmartThemeModule.emailSubscriptionCheckboxes();
});