// TODO: js utility to check all/none of the checkboxes in a recipient category at once (function() { var RECIPIENT_CATEGORIES_SELECTOR = '.recipient-categories'; var RECIPIENT_CATEGORY_SELECTOR = '.recipient-category'; var RECIPIENT_CATEGORY_FIELDSET_SELECTOR = '.recipient-category__fieldset'; var RECIPIENT_CATEGORY_TOGGLE_ALL_SELECTOR = '.recipient-category__toggle-all'; document.addEventListener('DOMContentLoaded', function() { var recipientCategoriesElement = document.querySelector(RECIPIENT_CATEGORIES_SELECTOR); var recipientCategoryElements = Array.from(recipientCategoriesElement.querySelectorAll(RECIPIENT_CATEGORY_SELECTOR)); recipientCategoryElements.forEach(function(element) { setupRecipientCategory(element); }); }); function setupRecipientCategory(recipientCategoryElement) { var fieldset = recipientCategoryElement.querySelector(RECIPIENT_CATEGORY_FIELDSET_SELECTOR); var categoryCheckboxes = Array.from(fieldset.querySelectorAll('[type="checkbox"]')); if (categoryCheckboxes) { var toggleAllCheckbox = recipientCategoryElement.querySelector(RECIPIENT_CATEGORY_TOGGLE_ALL_SELECTOR); if (toggleAllCheckbox) { toggleAllCheckbox.addEventListener('change', function() { console.log('TBD: setting up toggle all checkbox'); }); } } } })();