/* Selection changes presentation only; permissions and updates remain server-side. */ (() => { 'use strict'; const form = document.querySelector('[data-bank-selection]'); if (!form) return; const boxes = Array.from(form.querySelectorAll('input[name="accounts"]')); const all = form.querySelector('[data-select-all]'); const count = form.querySelector('[data-selection-count]'); const submit = form.querySelector('[data-bulk-submit]'); if (!all || !count || !submit) return; const update = () => { const selected = boxes.filter(box => box.checked).length; all.checked = selected > 0 && selected === boxes.length; all.indeterminate = selected > 0 && selected < boxes.length; count.textContent = selected ? `${selected.toLocaleString('fa-IR')} حساب انتخاب شده` : 'حساب‌های موردنظر را انتخاب کنید.'; submit.disabled = selected === 0; }; all.addEventListener('change', () => { boxes.forEach(box => { box.checked = all.checked; }); update(); }); boxes.forEach(box => box.addEventListener('change', update)); window.addEventListener('pageshow', update); update(); })();