Skip to content

Commit ab8a084

Browse files
committed
refactor: separate out the logic to trigger editors
1 parent 1a7a908 commit ab8a084

File tree

1 file changed

+34
-21
lines changed

1 file changed

+34
-21
lines changed

wiki/public/js/render_wiki.js

+34-21
Original file line numberDiff line numberDiff line change
@@ -45,30 +45,14 @@ function set_search_params(key = "", value = "") {
4545
window.history.pushState({}, "", url);
4646
}
4747

48-
function toggleEditor() {
49-
$(".wiki-content").toggleClass("hide");
50-
$(".wiki-page-meta").toggleClass("hide");
51-
$(".wiki-footer").toggleClass("hide");
52-
$(".page-toc").toggleClass("hide");
53-
$(".remove-sidebar-item").toggleClass("hide");
48+
function toggleSidebarEditor() {
5449
$(".sidebar-item, .sidebar-group").toggleClass("draggable");
5550
$(".drop-icon").toggleClass("hide");
5651
$(".add-sidebar-page").toggleClass("hide");
52+
$(".sidebar-edit-mode-btn").toggleClass("hide");
5753
$(".add-sidebar-group, .sidebar-view-mode-btn").toggleClass("hide");
54+
$(".remove-sidebar-item").toggleClass("hide");
5855

59-
// avoid hiding editor when params ?editWiki or ?newWiki
60-
if ($(".from-markdown").is(":visible")) {
61-
$(".wiki-editor").toggleClass("hide");
62-
$(".wiki-options, .sidebar-edit-mode-btn").toggleClass("hide");
63-
} else {
64-
const urlParams = new URLSearchParams(window.location.search);
65-
if (urlParams.get("editWiki") || urlParams.get("newWiki"))
66-
$(".wiki-options, .sidebar-edit-mode-btn").toggleClass("hide");
67-
68-
$(".from-markdown").toggleClass("hide");
69-
}
70-
71-
// sidebar item pointer switching
7256
if ($(".sidebar-edit-mode-btn").hasClass("hide")) {
7357
$(".sidebar-group div, .sidebar-item, .sidebar-item a")
7458
.not(".remove-sidebar-item")
@@ -83,6 +67,22 @@ function toggleEditor() {
8367
.attr("href", `/${$(this).data("route")}`);
8468
});
8569
}
70+
}
71+
72+
function toggleEditor() {
73+
$(".wiki-content").toggleClass("hide");
74+
$(".wiki-page-meta").toggleClass("hide");
75+
$(".wiki-footer").toggleClass("hide");
76+
$(".page-toc").toggleClass("hide");
77+
78+
// avoid hiding editor when params ?editWiki or ?newWiki
79+
if ($(".from-markdown").is(":visible")) {
80+
$(".wiki-editor").toggleClass("hide");
81+
} else {
82+
const urlParams = new URLSearchParams(window.location.search);
83+
if (urlParams.get("editWiki") || urlParams.get("newWiki"))
84+
$(".from-markdown").toggleClass("hide");
85+
}
8686

8787
$(".wiki-title").toggleClass("hide");
8888
}
@@ -255,7 +255,20 @@ window.RenderWiki = class RenderWiki extends Wiki {
255255
},
256256
});
257257

258-
$(".edit-wiki-btn, .sidebar-edit-mode-btn").on("click", function () {
258+
$(".sidebar-edit-mode-btn, .sidebar-view-mode-btn").on(
259+
"click",
260+
function () {
261+
if (frappe.session.user === "Guest") {
262+
window.location.assign(
263+
`/login?redirect-to=${window.location.pathname}`
264+
);
265+
} else {
266+
toggleSidebarEditor();
267+
}
268+
}
269+
);
270+
271+
$(".edit-wiki-btn").on("click", function () {
259272
if (frappe.session.user === "Guest")
260273
window.location.assign(
261274
`/login?redirect-to=${window.location.pathname}`
@@ -270,7 +283,7 @@ window.RenderWiki = class RenderWiki extends Wiki {
270283
}
271284
});
272285

273-
$(".discard-edit-btn , .sidebar-view-mode-btn").on("click", () => {
286+
$(".discard-edit-btn").on("click", () => {
274287
// switch to view mode
275288
toggleEditor();
276289
$("html").css({ overflow: "auto" });

0 commit comments

Comments
 (0)