From d3a74b09b02b306458d65fb054d9ab7b4fab1ba9 Mon Sep 17 00:00:00 2001 From: Yonas Habteab Date: Thu, 7 Apr 2022 14:03:32 +0200 Subject: [PATCH] Fix `dnd` doesn't work for panes without a home being rendered --- public/js/icinga/behavior/dashboards.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/public/js/icinga/behavior/dashboards.js b/public/js/icinga/behavior/dashboards.js index 7d87b9f73..3c4f3098a 100644 --- a/public/js/icinga/behavior/dashboards.js +++ b/public/js/icinga/behavior/dashboards.js @@ -42,6 +42,10 @@ */ getTypeFor(target) { if (target.matches('.dashboard-settings')) { + if (! target.querySelector('.home-list-control:first-child')) { + return this.widgetTypes.Dashboard; + } + return this.widgetTypes.DashboardHome; } else if (target.matches('.dashboard-item-list')) { return this.widgetTypes.Dashboard; @@ -77,10 +81,11 @@ } case _this.widgetTypes.Dashboard: { let pane = item.dataset.icingaPane, - home = orgEvt.to.closest('.home-list-control').dataset.icingaHome; + home = orgEvt.to.closest('.home-list-control, .dashboard-settings').dataset.icingaHome; if (orgEvt.to !== orgEvt.from) { + let homeList = orgEvt.from.closest('.home-list-control, .dashboard-settings'); data.originals = { - originalHome : orgEvt.from.closest('.home-list-control').dataset.icingaHome, + originalHome : homeList.dataset.icingaHome, originalPane : pane }; }