From d67956cbd04002678dd0ceaaa048fada29f44b98 Mon Sep 17 00:00:00 2001 From: Zuzanna Date: Thu, 12 Feb 2026 13:21:42 +0100 Subject: [PATCH 1/3] #2176 deleting kanban board now deletes relevant tags --- www/kanban/inner.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/www/kanban/inner.js b/www/kanban/inner.js index 2a47cdf1f..fe310f2f2 100644 --- a/www/kanban/inner.js +++ b/www/kanban/inner.js @@ -432,6 +432,10 @@ define([ var list = boards.list || []; var idx = list.indexOf(id); if (idx !== -1) { list.splice(idx, 1); } + var boardItems = (boards.data || {})[id].item; + boardItems.forEach(function(item) { + delete kanban.options.boards.items[item]; + }); delete (boards.data || {})[id]; kanban.removeBoard(id); return void commit(); From b194a63960d1b48ef0cd9b27ccf2a10839a14d3f Mon Sep 17 00:00:00 2001 From: Zuzanna Ludzik Date: Thu, 16 Apr 2026 15:21:32 +0200 Subject: [PATCH 2/3] removes tags when board dragged into trash --- www/kanban/jkanban_cp.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/www/kanban/jkanban_cp.js b/www/kanban/jkanban_cp.js index 1db2117a6..84c337c3f 100644 --- a/www/kanban/jkanban_cp.js +++ b/www/kanban/jkanban_cp.js @@ -313,9 +313,16 @@ define([ if (target.classList.contains('kanban-trash')) { list.splice(index1, 1); if (list.indexOf(id) === -1) { - delete self.options.boards.data[id]; + var board = self.options.boards.data[id] + var boardItems = board.item; + boardItems.forEach(function(item) { + delete self.options.boards.items[item]; + }); + delete board; } self.onChange(); + self.setBoards(self.options.boards); + return; } From ac1ddeea9b4715ce69573d1d2a7038089753bcd6 Mon Sep 17 00:00:00 2001 From: Zuzanna Ludzik Date: Mon, 20 Apr 2026 11:01:22 +0200 Subject: [PATCH 3/3] linting --- www/kanban/jkanban_cp.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/www/kanban/jkanban_cp.js b/www/kanban/jkanban_cp.js index 84c337c3f..067b360a0 100644 --- a/www/kanban/jkanban_cp.js +++ b/www/kanban/jkanban_cp.js @@ -313,12 +313,12 @@ define([ if (target.classList.contains('kanban-trash')) { list.splice(index1, 1); if (list.indexOf(id) === -1) { - var board = self.options.boards.data[id] + var board = self.options.boards.data[id]; var boardItems = board.item; boardItems.forEach(function(item) { delete self.options.boards.items[item]; }); - delete board; + delete self.options.boards.data[id]; } self.onChange(); self.setBoards(self.options.boards);