Better handling of the IDB refreshes and updates.
This commit is contained in:
@@ -94,6 +94,58 @@ $slct = {
|
||||
}
|
||||
// console.log(`$slct = `, $slct);
|
||||
|
||||
// Check if the last reload timestamp for $ae_loc.last_idb_reload is no more than 15 minutes ago.
|
||||
let default_idb_reload_time = 120 * 60 * 1000; // 120 minutes
|
||||
if (!$ae_loc.last_idb_reload) {
|
||||
console.log(`Last reload not found. Need to reset.`);
|
||||
|
||||
// $ae_loc.last_idb_reload = Date.now();
|
||||
if (browser) {
|
||||
$ae_loc.last_idb_reload = Date.now();
|
||||
|
||||
// Clear Indexed DB as well
|
||||
indexedDB.deleteDatabase('ae_archives_db');
|
||||
indexedDB.deleteDatabase('ae_core_db');
|
||||
indexedDB.deleteDatabase('ae_events_db');
|
||||
indexedDB.deleteDatabase('ae_notes_db');
|
||||
indexedDB.deleteDatabase('ae_posts_db');
|
||||
|
||||
// localStorage.removeItem('ae_loc');
|
||||
// localStorage.removeItem('events_loc');
|
||||
|
||||
// window.location.reload();
|
||||
}
|
||||
|
||||
} else if ($ae_loc.last_idb_reload && (Date.now() - $ae_loc.last_idb_reload) > default_idb_reload_time) {
|
||||
console.log(`Last reload too old:`, $ae_loc.last_idb_reload);
|
||||
|
||||
if (browser) {
|
||||
$ae_loc.last_idb_reload = Date.now();
|
||||
|
||||
// Clear Indexed DB as well
|
||||
indexedDB.deleteDatabase('ae_archives_db');
|
||||
indexedDB.deleteDatabase('ae_core_db');
|
||||
indexedDB.deleteDatabase('ae_events_db');
|
||||
indexedDB.deleteDatabase('ae_notes_db');
|
||||
indexedDB.deleteDatabase('ae_posts_db');
|
||||
|
||||
// localStorage.removeItem('ae_loc');
|
||||
// localStorage.removeItem('events_loc');
|
||||
|
||||
// window.location.reload();
|
||||
}
|
||||
} else if (browser) {
|
||||
console.log(`Last reload is recent:`, $ae_loc.last_idb_reload);
|
||||
// Clear Indexed DB as well
|
||||
// indexedDB.deleteDatabase('ae_core_db');
|
||||
// indexedDB.deleteDatabase('ae_events_db');
|
||||
|
||||
// localStorage.removeItem('ae_loc');
|
||||
// localStorage.removeItem('events_loc');
|
||||
|
||||
// window.location.reload();
|
||||
}
|
||||
|
||||
// There should almost always be an event_id set.
|
||||
if ($ae_loc?.site_cfg_json.slct__event_id) {
|
||||
$events_slct.event_id = $ae_loc.site_cfg_json.slct__event_id;
|
||||
|
||||
Reference in New Issue
Block a user