Sha256: bc6de8a9ec6787f979f7bfb2ebf2a32fb98e33a9c403301aef3d67cd6e90e935
Contents?: true
Size: 1.3 KB
Versions: 32
Compression:
Stored size: 1.3 KB
Contents
// Site files modal. (() => { let modal = null; const initModalContent = (modalContent) => { window.CMS.fileUpload.init(modalContent); window.CMS.fileLinks(modalContent); modalContent.addEventListener('dragstart', (evt) => { if (evt.target.nodeType === Node.ELEMENT_NODE && evt.target.matches('.cms-uploader-filelist .item-title a') && modal != null) { modal.hide(); } }); }; window.CMS.files = { init() { const modalToggle = document.querySelector('.cms-files-open-modal'); const modalContainer = document.querySelector('.cms-files-modal'); if (modalToggle === null || modalContainer === null) return; const modalContent = modalContainer.querySelector('.modal-content'); modalToggle.addEventListener('click', (evt) => { evt.preventDefault(); fetch(modalContainer.dataset.url, {credentials: 'same-origin'}).then((resp) => resp.text()).then((html) => { modalContent.innerHTML = `<div class="modal-body">${html}</div>`; initModalContent(modalContent); }); modal = modal || new bootstrap.Modal(modalContainer); modal.show(); }); }, dispose() { if (modal !== null) { modal.hide(); modal.dispose(); modal = null; } } }; })();
Version data entries
32 entries across 32 versions & 8 rubygems