diff options
author | n-peugnet <n.peugnet@free.fr> | 2019-10-21 19:44:52 +0200 |
---|---|---|
committer | n-peugnet <n.peugnet@free.fr> | 2019-10-21 21:49:12 +0200 |
commit | 9250000af69b5c0ddc73537ec40573df68283dcc (patch) | |
tree | b844ef3625f0d1f00177f701289865016a1c8539 /assets/js/edit.js | |
parent | 01355d4e0173036fefe513ddf51f4d81ec66d90a (diff) | |
download | wcms-9250000af69b5c0ddc73537ec40573df68283dcc.tar.gz wcms-9250000af69b5c0ddc73537ec40573df68283dcc.zip |
move js sources to /src/ & remove old worker stuff
Diffstat (limited to 'assets/js/edit.js')
-rw-r--r-- | assets/js/edit.js | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/assets/js/edit.js b/assets/js/edit.js deleted file mode 100644 index 7df75de..0000000 --- a/assets/js/edit.js +++ /dev/null @@ -1,93 +0,0 @@ -import CodeMirror from "codemirror"; -import "codemirror/lib/codemirror.css"; -import "codemirror/mode/markdown/markdown.js"; - -let form; -let unsavedChanges = false; -const pageurl = basepath + pageid; - -let myCodeMirror = CodeMirror.fromTextArea(document.getElementById('main'), { - mode: 'markdown', - lineNumbers: true, -}); - -window.onload = () => { - form = document.getElementById('update'); - let inputs = form.elements; - for (let i = 0; i < inputs.length; i++) { - inputs[i].oninput = changeHandler; - } - - form.addEventListener("submit", function (event) { - event.preventDefault(); - submitHandler(this); - }); - window.onkeydown = keyboardHandler; - window.onbeforeunload = confirmExit; -}; - -/** - * Manage a keyboardEvent - * @param {KeyboardEvent} e - */ -function keyboardHandler(e) { - if (e.composed) { - if (e.ctrlKey) { - switch (e.key) { - // ctrl + s - case 's': - submitHandler(form); - break; - // ctrl + d - case 'd': - url = document.getElementById('update').getAttribute('href'); - window.open(url); - break; - default: - return true; - } - e.preventDefault(); - return false; - } - } -} - -/** - * Manage change event - * @param {InputEvent} e - */ -function changeHandler(e) { - if(e.target.classList.contains("toggle")||e.target.classList.contains("checkboxtab")) { - return; - } - unsavedChanges = true; -} - -/** - * Manage submit event - * @param {HTMLFormElement} form - */ -function submitHandler(form) { - var xhr = new XMLHttpRequest(); - var fd = new FormData(form); - - xhr.addEventListener("load", function(event) { - unsavedChanges = false; - alert("updated"); - }); - xhr.addEventListener("error", function(event) { - alert('Error while trying to update.'); - }); - xhr.open(form.method, form.action); - xhr.send(fd); -} - -/** - * Manage a beforeUnloadEvent - * @param {BeforeUnloadEvent} e - */ -function confirmExit(e) { - if (unsavedChanges) { - return 'You have unsaved changes, do you really want to leave this page?'; - } -} |