(function () { "use strict"; const modals = document.getElementsByClassName("modal"); const modalTriggers = document.getElementsByClassName("modal-trigger"); function openModal(el) { if (el) { document.body.classList.add("modal-is-active"); el.classList.add("is-active"); } } function closeModals() { document.body.classList.remove("modal-is-active"); for (let i = 0; i < modals.length; i++) { modals[i].classList.remove("is-active"); } } if (modals.length > 0 && modalTriggers.length > 0) { for (let i = 0; i < modalTriggers.length; i++) { let modalTrigger = modalTriggers[i]; let modal = document.getElementById( modalTrigger.getAttribute("aria-controls") ); if (modal) { // Modal video if (modalTrigger.hasAttribute("data-video")) { if (modal.querySelector("iframe") !== null) { modal .querySelector("iframe") .setAttribute("src", modalTrigger.getAttribute("data-video")); } else if (modal.querySelector("video") !== null) { modal .querySelector("video") .setAttribute("src", modalTrigger.getAttribute("data-video")); } } modalTrigger.addEventListener("click", function (e) { e.preventDefault(); if (modalTrigger.hasAttribute("aria-controls")) { openModal(modal); } }); } } } document.addEventListener("click", function (e) { if ( e.target.classList.contains("modal") || e.target.classList.contains("modal-close-trigger") ) { e.preventDefault(); closeModals(); } }); document.addEventListener("keydown", function (event) { var e = event || window.event; if (e.keyCode === 27) { closeModals(); } }); })();