48 lines
1.2 KiB
JavaScript
48 lines
1.2 KiB
JavaScript
let $editor = document.querySelector("#code_textarea");
|
|
let filename = location.hash.substring(1);
|
|
let $output_text = document.querySelector("#output_text");
|
|
|
|
fetch(`/fs/${filename}`)
|
|
.then(function (response) {
|
|
$output_text.innerText = `Loading Status: ${response.status}`;
|
|
return response.status === 200 ? response.text() : "";
|
|
})
|
|
.then(function (data) {
|
|
$editor.value = data;
|
|
});
|
|
|
|
function save() {
|
|
$output_text.innerText = "Saving..."
|
|
const requestOptions = {
|
|
method: 'PUT',
|
|
body: $editor.value
|
|
};
|
|
fetch(`/fs/${filename}`, requestOptions)
|
|
.then(function (response) {
|
|
$output_text.innerText = `Saving Status: ${response.status}`;
|
|
return response.text();
|
|
})
|
|
.then(function (data) {
|
|
console.log("after fetch: " + data);
|
|
});
|
|
}
|
|
|
|
document.querySelector("#save_btn").onclick = function () {
|
|
console.log("Click Save!");
|
|
save();
|
|
}
|
|
|
|
let isCtrl = false;
|
|
document.onkeyup=function(e){
|
|
if(e.keyCode === 17) isCtrl=false;
|
|
}
|
|
|
|
document.onkeydown=function(e){
|
|
if(e.keyCode === 17) isCtrl=true;
|
|
if(e.keyCode === 83 && isCtrl === true) {
|
|
//ctrl-s pressed
|
|
save();
|
|
return false;
|
|
}
|
|
}
|