From 9abfefc0e002bf0ca8050ac534c80f622497621a Mon Sep 17 00:00:00 2001 From: Jon Kazama Date: Sun, 14 Jun 2026 09:47:40 +0200 Subject: [PATCH] v2.3 Papierkorb: Bookmark-Loeschen in den Papierkorb umleiten --- src/js/boards.js | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/js/boards.js b/src/js/boards.js index e244daa..ede9d92 100644 --- a/src/js/boards.js +++ b/src/js/boards.js @@ -254,12 +254,21 @@ function bindBoardListEvents(list, board) { const bmItem = e.target.closest('.bm-item'); if (!bmItem) return; - // Delete-Button geklickt + // Delete-Button geklickt: kein Confirm (wie bisher), aber nicht mehr hart loeschen — + // das Bookmark wandert in den Papierkorb (30 Tage, TRASH-01). Erst per find() greifen, + // dann mit Herkunft (originBoardId), type und Zeitstempel ins trash[] pushen. if (e.target.closest('.bm-delete')) { e.stopPropagation(); const bmId = bmItem.dataset.bmId; - board.bookmarks = board.bookmarks.filter(b => b.id !== bmId); - await saveBoards(); + const removed = board.bookmarks.find(b => b.id === bmId); + if (removed) { + // Datensicherheit: ZUERST den Trash-Klon persistieren, DANN die Loeschung committen. + // Falls saveTrash() (Quota) rejectet, ist das Original noch in boards[] -> kein Verlust. + pushToTrash({ item: removed, type: 'bookmark', originBoardId: board.id }); + await saveTrash(); + board.bookmarks = board.bookmarks.filter(b => b.id !== bmId); + await saveBoards(); + } renderBoards(); return; }