function addMedia(url) {
return () =>
($("#editor-contents").value += `[[${url.replace(/ /g, "%20")}]]`);
}
documentReady(() => {
document.body.on("htmx:beforeSwap", evt => {
if (evt.detail.xhr.status === 422) {
evt.detail.shouldSwap = true;
evt.detail.isError = false;
}
});
$("#editor-publish").on("click", () => {
$("#editor-retract").removeAttribute("hidden");
$("#editor-view").removeAttribute("hidden");
$("#editor-publish").setAttribute("hidden", true);
$("#editor-preview").setAttribute("hidden", true);
});
$("#editor-retract").on("click", () => {
$("#editor-publish").removeAttribute("hidden");
$("#editor-preview").removeAttribute("hidden");
$("#editor-retract").setAttribute("hidden", true);
$("#editor-view").setAttribute("hidden", true);
});
$("#tab-write").on("click", () => {
$(".writer").style.display = "grid";
$(".sidebar").style.display = "none";
$(".media-file-selector").style.display = "none";
$(".tab.enabled").classList.remove("enabled");
$("#tab-write").classList.add("enabled");
});
$("#tab-tag").on("click", () => {
$(".writer").style.display = "none";
$(".sidebar").style.display = "flex";
$(".media-file-selector").style.display = "none";
$(".tab.enabled").classList.remove("enabled");
$("#tab-tag").classList.add("enabled");
});
$("#tab-media").on("click", () => {
$(".writer").style.display = "none";
$(".sidebar").style.display = "none";
$(".media-file-selector").style.display = "grid";
$(".tab.enabled").classList.remove("enabled");
$("#tab-media").classList.add("enabled");
});
$(".new-file button").on("click", () => $("#input-file input").click());
$("#editor-lang").on("change", () => {
const newLang = $("#editor-lang :checked").lang;
$(".writer").lang = newLang;
$("#editor-thumbnail-alt").lang = newLang;
});
$("#editor-slug").on("keyup", () => {
if (!$("#editor-translates").value) {
$("#editor-translates").placeholder =
$("#editor-slug").value || $("#editor-slug").placeholder;
}
});
for (const button of $$(
".media-file-selector figure:not(.new-file) button"
)) {
button.on("click", addMedia(button.dataset.url));
}
document.body.on("htmx:afterSwap", () => {
const button = $(".media-file-selector figure:not(.new-file) button");
button.on("click", addMedia(button.dataset.url));
});
});