41 lines
1.0 KiB
JavaScript
41 lines
1.0 KiB
JavaScript
{
|
|
let ta = document.getElementById("babycode-content");
|
|
|
|
ta.addEventListener("keydown", (e) => {
|
|
if(e.key === "Enter" && e.ctrlKey) {
|
|
if (inThread()) {
|
|
localStorage.removeItem(window.location.pathname);
|
|
}
|
|
e.target.form?.submit();
|
|
}
|
|
})
|
|
|
|
const inThread = () => {
|
|
const scheme = window.location.pathname.split("/");
|
|
return scheme[1] === "threads" && scheme[2] !== "create";
|
|
}
|
|
|
|
ta.addEventListener("input", () => {
|
|
if (!inThread()) return;
|
|
|
|
localStorage.setItem(window.location.pathname, ta.value);
|
|
})
|
|
|
|
if (inThread()) {
|
|
const form = ta.closest('.post-edit-form');
|
|
console.log(ta.closest('.post-edit-form'));
|
|
if (form){
|
|
form.addEventListener("submit", () => {
|
|
localStorage.removeItem(window.location.pathname);
|
|
})
|
|
}
|
|
}
|
|
|
|
document.addEventListener("DOMContentLoaded", () => {
|
|
if (!inThread()) return;
|
|
const prevContent = localStorage.getItem(window.location.pathname);
|
|
if (!prevContent) return;
|
|
ta.value = prevContent;
|
|
})
|
|
}
|