From 30a8d63a169ce5dbb2de46288023dc0b438c3af3 Mon Sep 17 00:00:00 2001 From: softworkz Date: Mon, 22 Aug 2016 23:52:54 +0200 Subject: [PATCH 1/2] AutoorganizeLog: Fixed error when log empty; re-introduced full reload on task completion --- dashboard-ui/dashboard/autoorganizelog.js | 40 ++++++++++++++--------- 1 file changed, 24 insertions(+), 16 deletions(-) diff --git a/dashboard-ui/dashboard/autoorganizelog.js b/dashboard-ui/dashboard/autoorganizelog.js index 63a6654a76..e0f237444f 100644 --- a/dashboard-ui/dashboard/autoorganizelog.js +++ b/dashboard-ui/dashboard/autoorganizelog.js @@ -205,25 +205,33 @@ var btnPrevTop = topPaging.querySelector(".btnPreviousPage"); var btnPrevBottom = bottomPaging.querySelector(".btnPreviousPage"); - btnNextTop.addEventListener('click', function () { - query.StartIndex += query.Limit; - reloadItems(page, true); - }); + if (btnNextTop) { + btnNextTop.addEventListener('click', function () { + query.StartIndex += query.Limit; + reloadItems(page, true); + }); + } - btnNextBottom.addEventListener('click', function () { - query.StartIndex += query.Limit; - reloadItems(page, true); - }); + if (btnNextBottom) { + btnNextBottom.addEventListener('click', function () { + query.StartIndex += query.Limit; + reloadItems(page, true); + }); + } - btnPrevTop.addEventListener('click', function () { - query.StartIndex -= query.Limit; - reloadItems(page, true); - }); + if (btnPrevTop) { + btnPrevTop.addEventListener('click', function () { + query.StartIndex -= query.Limit; + reloadItems(page, true); + }); + } - btnPrevBottom.addEventListener('click', function () { - query.StartIndex -= query.Limit; - reloadItems(page, true); - }); + if (btnPrevBottom) { + btnPrevBottom.addEventListener('click', function () { + query.StartIndex -= query.Limit; + reloadItems(page, true); + }); + } var btnClearLog = page.querySelector('.btnClearLog'); From ed2f72f2a5b016bcc5b4ecca18ddfd285830b84f Mon Sep 17 00:00:00 2001 From: softworkz Date: Tue, 23 Aug 2016 05:35:59 +0200 Subject: [PATCH 2/2] AutoOrganize: Differentiate server events --- dashboard-ui/dashboard/autoorganizelog.js | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/dashboard-ui/dashboard/autoorganizelog.js b/dashboard-ui/dashboard/autoorganizelog.js index e0f237444f..0b65f9b96e 100644 --- a/dashboard-ui/dashboard/autoorganizelog.js +++ b/dashboard-ui/dashboard/autoorganizelog.js @@ -325,7 +325,12 @@ function onServerEvent(e, apiClient, data) { - if (data) { + if (e.type == 'ScheduledTaskEnded') { + + if (data && data.Key == 'AutoOrganize') { + reloadItems(page, false); + } + } else if (e.type == 'AutoOrganize_ItemUpdated' && data) { updateItemStatus(page, data); } else { @@ -380,7 +385,11 @@ reloadItems(view, true); - events.on(serverNotifications, 'AutoOrganizeUpdate', onServerEvent); + events.on(serverNotifications, 'AutoOrganize_LogReset', onServerEvent); + events.on(serverNotifications, 'AutoOrganize_ItemUpdated', onServerEvent); + events.on(serverNotifications, 'AutoOrganize_ItemRemoved', onServerEvent); + events.on(serverNotifications, 'AutoOrganize_ItemAdded', onServerEvent); + events.on(serverNotifications, 'ScheduledTaskEnded', onServerEvent); // on here taskButton({ @@ -396,7 +405,11 @@ currentResult = null; - events.off(serverNotifications, 'AutoOrganizeUpdate', onServerEvent); + events.off(serverNotifications, 'AutoOrganize_LogReset', onServerEvent); + events.off(serverNotifications, 'AutoOrganize_ItemUpdated', onServerEvent); + events.off(serverNotifications, 'AutoOrganize_ItemRemoved', onServerEvent); + events.off(serverNotifications, 'AutoOrganize_ItemAdded', onServerEvent); + events.off(serverNotifications, 'ScheduledTaskEnded', onServerEvent); // off here taskButton({