This repository has been archived on 2026-07-27. You can view files and clone it, but cannot push or open issues or pull requests.
fradrive-old/templates/widgets/communication/recipientLayout.julius

35 lines
1.3 KiB
Plaintext

// 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');
});
}
}
}
})();