fix: dispensa.db auto-delete, zerowaste save, vacuum expiry, DB retention
- api/index.php: auto-delete legacy dispensa.db when evershelf.db exists and dispensa.db is empty (<1KB); vacuum-sealed items only show as expired after VACUUM_EXPIRY_EXTENSION_DAYS (default 30) past printed date; add dbCleanup() function; add recipe/tx/vacuum params to getServerSettings + saveSettings intMap; add 'db_cleanup' action - api/cron_smart_shopping.php: run dbCleanup() each cron cycle - app.js: add zerowaste_tips_enabled + screensaver_timeout + retention days to saveSettings POST payload (were missing, causing reset on sync); asset version bumped to v=20260518b - .env: added ZEROWASTE_TIPS_ENABLED, RECIPE_RETENTION_DAYS=7, TRANSACTION_RETENTION_DAYS=7, VACUUM_EXPIRY_EXTENSION_DAYS=30
This commit is contained in:
@@ -79,6 +79,19 @@ try {
|
||||
echo '[' . date('Y-m-d H:i:s') . '] Shelf life pre-warm warning: ' . $pe->getMessage() . "\n";
|
||||
}
|
||||
|
||||
// ── DB cleanup (retention policy) ────────────────────────────────────
|
||||
// Delete old recipes and transactions based on .env retention settings.
|
||||
try {
|
||||
ob_start();
|
||||
dbCleanup($db);
|
||||
ob_end_clean();
|
||||
echo '[' . date('Y-m-d H:i:s') . '] DB cleanup done'
|
||||
. ' (recipes >' . env('RECIPE_RETENTION_DAYS','7') . 'd'
|
||||
. ', tx >' . env('TRANSACTION_RETENTION_DAYS','7') . 'd' . ")\n";
|
||||
} catch (Throwable $ce) {
|
||||
echo '[' . date('Y-m-d H:i:s') . '] DB cleanup warning: ' . $ce->getMessage() . "\n";
|
||||
}
|
||||
|
||||
} catch (Throwable $e) {
|
||||
$msg = $e->getMessage();
|
||||
echo '[' . date('Y-m-d H:i:s') . '] ERROR: ' . $msg . "\n";
|
||||
|
||||
Reference in New Issue
Block a user