Files
isdefoobaropen/src/index.js
2019-03-11 13:42:22 +01:00

53 lines
1.4 KiB
JavaScript

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 = `
<div id="toggle-button">
<form method="post">
<button name="toggle">Verander dit</button>
</form>
</div>`;
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');
}