v2.3 Papierkorb: Trash-Konstanten und Auto-Cleanup beim Laden
This commit is contained in:
@@ -10,6 +10,14 @@ async function init() {
|
|||||||
|
|
||||||
boards = savedBoards ?? getDefaultBoards();
|
boards = savedBoards ?? getDefaultBoards();
|
||||||
trash = Array.isArray(savedTrash) ? savedTrash : [];
|
trash = Array.isArray(savedTrash) ? savedTrash : [];
|
||||||
|
|
||||||
|
// Auto-Cleanup: Eintraege aelter als 30 Tage verwerfen (TRASH-02). Muss VOR
|
||||||
|
// renderBoards() laufen, damit der Papierkorb-Stand konsistent ist. Schreibt nur
|
||||||
|
// zurueck, wenn wirklich etwas entfernt wurde (kein unnoetiger Storage-Write).
|
||||||
|
const cutoff = Date.now() - TRASH_RETENTION_MS;
|
||||||
|
const beforeCount = trash.length;
|
||||||
|
trash = trash.filter(entry => typeof entry.deletedAt === 'number' && entry.deletedAt >= cutoff);
|
||||||
|
if (trash.length !== beforeCount) await saveTrash();
|
||||||
if (savedSettings) Object.assign(settings, savedSettings);
|
if (savedSettings) Object.assign(settings, savedSettings);
|
||||||
|
|
||||||
I18n.init();
|
I18n.init();
|
||||||
|
|||||||
@@ -9,6 +9,13 @@ let boards = [];
|
|||||||
// Eintrag-Schema: { item, type: 'bookmark'|'board', deletedAt, originBoardId }
|
// Eintrag-Schema: { item, type: 'bookmark'|'board', deletedAt, originBoardId }
|
||||||
let trash = [];
|
let trash = [];
|
||||||
|
|
||||||
|
// Papierkorb: Auto-Cleanup-Fenster und harte Obergrenze (Quota-Schutz, TRASH-04).
|
||||||
|
// 30 Tage in Millisekunden; ueber dieser Zeit wird ein Eintrag beim Laden auto-geloescht.
|
||||||
|
const TRASH_RETENTION_MS = 30 * 24 * 60 * 60 * 1000;
|
||||||
|
// Max. Anzahl trash-Eintraege. Bei Ueberlauf werden die aeltesten zuerst verworfen,
|
||||||
|
// damit der Papierkorb nicht das 10-MB-Storage-Limit sprengt (kein blindes Wachstum).
|
||||||
|
const TRASH_MAX_ENTRIES = 100;
|
||||||
|
|
||||||
let settings = {
|
let settings = {
|
||||||
compact: false,
|
compact: false,
|
||||||
shortenTitles: false,
|
shortenTitles: false,
|
||||||
|
|||||||
Reference in New Issue
Block a user