diff options
author | Vincent Peugnet <33429034+vincent-peugnet@users.noreply.github.com> | 2019-11-05 18:31:05 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-05 18:31:05 +0100 |
commit | f1f63f556c41c99d45cd610186b0982383eff375 (patch) | |
tree | c62c88864fa4bdc0d54e0bc90d174fae2d8adce3 /src | |
parent | 9b43088415efee1f921feb9c858bcd924f1b6208 (diff) | |
parent | d73bbbcf6c7bfe7291ac1593004581df6c96b3c8 (diff) | |
download | wcms-f1f63f556c41c99d45cd610186b0982383eff375.tar.gz wcms-f1f63f556c41c99d45cd610186b0982383eff375.zip |
Merge pull request #25 from n-peugnet/add-checkall-checkbox
Add checkall checkbox in home page
Diffstat (limited to 'src')
-rw-r--r-- | src/edit.js | 4 | ||||
-rw-r--r-- | src/home.js | 28 |
2 files changed, 30 insertions, 2 deletions
diff --git a/src/edit.js b/src/edit.js index 6c2f328..062a0de 100644 --- a/src/edit.js +++ b/src/edit.js @@ -15,7 +15,7 @@ let editors = []; let unsavedChanges = false; const inputEvent = new InputEvent('input'); -window.onload = () => { +window.addEventListener('load', () => { form = document.getElementById('update'); let inputs = form.elements; for (const input of inputs) { @@ -86,7 +86,7 @@ window.onload = () => { window.onkeydown = keyboardHandler; window.onbeforeunload = confirmExit; -}; +}); /** * Manage a keyboardEvent diff --git a/src/home.js b/src/home.js new file mode 100644 index 0000000..b10e7c3 --- /dev/null +++ b/src/home.js @@ -0,0 +1,28 @@ +/** @type {HTMLInputElement[]} */ +let checkboxes = []; + +window.addEventListener('load', () => { + checkboxes = document.getElementsByName('id[]'); + let checkall = document.getElementById('checkall'); + let checkbox = document.createElement('input'); + checkbox.type = 'checkbox'; + checkbox.addEventListener('input', checkallHandler); + checkall.innerHTML = ''; + checkall.appendChild(checkbox); +}); + +/** + * Manage input event on the checkall checkbox. + * @param {InputEvent} e the input event + */ +function checkallHandler(e) { + if (e.target.checked) { + for (const checkbox of checkboxes) { + checkbox.checked = true; + } + } else { + for (const checkbox of checkboxes) { + checkbox.checked = false; + } + } +} |