import "./style.scss"; import {startClosedAnimation} from "./closed"; import {startOpenAnimation} from "./open"; window.addEventListener('load', function () { if (document.body.classList.contains('open')) { startOpenAnimation(); } else { startClosedAnimation(); } doIfAuthorized(showToggleButton); }); function showToggleButton() { const template = `
`; const div = document.createElement('div'); div.innerHTML = template.trim(); const content = div.firstChild; div.removeChild(content); document.body.appendChild(content); } /** * Run the specified callback if the user is authorized * * @param callback */ function doIfAuthorized(callback) { const request = new XMLHttpRequest(); request.open('POST', window.location); // Post to self should work request.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); request.onreadystatechange = function () { switch (request.readyState) { case XMLHttpRequest.DONE: if (request.status === 200) { callback(); } break; default: // Wait for completion. break; } }; request.send('auth_check=1'); }