From 78d9fac1e673ee32facffba62531ea5d90c4404c Mon Sep 17 00:00:00 2001 From: azivner Date: Fri, 28 Dec 2018 23:57:11 +0100 Subject: [PATCH] global actions context menu, logout --- .../javascripts/services/context_menu.js | 2 - src/public/javascripts/services/mobile.js | 41 +++++++++++++------ src/views/mobile.ejs | 4 ++ 3 files changed, 32 insertions(+), 15 deletions(-) diff --git a/src/public/javascripts/services/context_menu.js b/src/public/javascripts/services/context_menu.js index 72585ea17..d3ac95686 100644 --- a/src/public/javascripts/services/context_menu.js +++ b/src/public/javascripts/services/context_menu.js @@ -6,8 +6,6 @@ function initContextMenu(event, itemContainer, selectContextMenuItem) { $contextMenuContainer.empty(); for (const item of itemContainer.getItems()) { - console.log("Adding " + item.title); - if (item.title === '----') { $contextMenuContainer.append($("
").addClass("dropdown-divider")); } else { diff --git a/src/public/javascripts/services/mobile.js b/src/public/javascripts/services/mobile.js index af4c804e6..4b3741ca1 100644 --- a/src/public/javascripts/services/mobile.js +++ b/src/public/javascripts/services/mobile.js @@ -90,21 +90,36 @@ $("#note-menu-button").click(async e => { itemsContainer.enableItem("delete", isNotRoot && parentNote.type !== 'search'); - contextMenuWidget.initContextMenu(e, itemsContainer, noteContextMenuHandler); + contextMenuWidget.initContextMenu(e, itemsContainer, (event, cmd) => { + if (cmd === "delete") { + treeChangesService.deleteNodes([node]); + + // move to the tree + togglePanes(); + } + else { + throw new Error("Unrecognized command " + cmd); + } + }); }); -async function noteContextMenuHandler(event, cmd) { - const node = treeService.getCurrentNode(); +$("#global-actions-button").click(async e => { + const itemsContainer = new ContextMenuItemsContainer([ + {title: "Switch to desktop version", cmd: "switch-to-desktop", uiIcon: "computer"}, + {title: "Logout", cmd: "log-out", uiIcon: "log-out"} + ]); - if (cmd === "delete") { - treeChangesService.deleteNodes([node]); - - // move to the tree - togglePanes(); - } - else { - throw new Error("Unrecognized command " + cmd); - } -} + contextMenuWidget.initContextMenu(e, itemsContainer, (event, cmd) => { + if (cmd === "switch-to-desktop") { + alert("switch to desktop"); + } + else if (cmd === 'log-out') { + $("#logout-form").submit(); + } + else { + throw new Error("Unrecognized command " + cmd); + } + }); +}); showTree(); \ No newline at end of file diff --git a/src/views/mobile.ejs b/src/views/mobile.ejs index 1800d1388..d58f2c3e6 100644 --- a/src/views/mobile.ejs +++ b/src/views/mobile.ejs @@ -14,6 +14,8 @@ + +
@@ -54,6 +56,8 @@ <% include dialogs/protected_session_password.ejs %> + +