diff options
author | 2018-07-05 22:18:51 -0700 | |
---|---|---|
committer | 2018-07-05 22:18:51 -0700 | |
commit | 53deb0b8cd1899ec325eca93631b3e137bdd3ec3 (patch) | |
tree | 23894ed57040ea689e9f60243656e1889d39a275 /ui/static/js/modal_handler.js | |
parent | e1c56b2e53ba3c6f48d5e159d18ae59c180cc388 (diff) | |
download | v2-53deb0b8cd1899ec325eca93631b3e137bdd3ec3.tar.gz v2-53deb0b8cd1899ec325eca93631b3e137bdd3ec3.tar.zst v2-53deb0b8cd1899ec325eca93631b3e137bdd3ec3.zip |
Refactor assets bundler and split Javascript files
Diffstat (limited to 'ui/static/js/modal_handler.js')
-rw-r--r-- | ui/static/js/modal_handler.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/ui/static/js/modal_handler.js b/ui/static/js/modal_handler.js new file mode 100644 index 00000000..c0e8b137 --- /dev/null +++ b/ui/static/js/modal_handler.js @@ -0,0 +1,31 @@ +class ModalHandler { + static exists() { + return document.getElementById("modal-container") !== null; + } + + static open(fragment) { + if (ModalHandler.exists()) { + return; + } + + let container = document.createElement("div"); + container.id = "modal-container"; + container.appendChild(document.importNode(fragment, true)); + document.body.appendChild(container); + + let closeButton = document.querySelector("a.btn-close-modal"); + if (closeButton !== null) { + closeButton.onclick = (event) => { + event.preventDefault(); + ModalHandler.close(); + }; + } + } + + static close() { + let container = document.getElementById("modal-container"); + if (container !== null) { + container.parentNode.removeChild(container); + } + } +} |