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