normalize session account storage keys

This commit is contained in:
2026-09-06 19:09:06 +03:00
parent 76baab6b21
commit efe69dfd6b
2 changed files with 11 additions and 4 deletions
+5 -4
View File
@@ -20,6 +20,7 @@ const AppContext = createContext();
// İhale önbelleği: tam havuz (10.000+ kayıt) localStorage kotasına sığmaz.
const TENDER_CACHE_KEY = 'ihaleist_tenders';
const TENDER_CACHE_LIMIT = 300;
const hesapAnahtari = (prefix, email) => `${prefix}:${encodeURIComponent(String(email || '').trim().toLowerCase())}`;
// localStorage her zaman yazılabilir değildir (kota dolu, gizli sekme, site
// verisi kapalı). Yazma hatası uygulamayı çökertmemeli.
@@ -150,15 +151,15 @@ export const AppProvider = ({ children }) => {
useEffect(() => {
if (!authUser) return;
try {
const anahtar = 'ihaleist_son_giris:' + authUser.email;
const anahtar = hesapAnahtari('ihaleist_son_giris', authUser.email);
const onceki = Number(localStorage.getItem(anahtar)) || null;
const oturum = sessionStorage.getItem('ihaleist_oturum_giris:' + authUser.email);
const oturum = sessionStorage.getItem(hesapAnahtari('ihaleist_oturum_giris', authUser.email));
if (oturum !== null) { // aynı sekmede yenileme: damga sabit kalır
setOncekiGiris(Number(oturum) || null);
return;
}
setOncekiGiris(onceki);
sessionStorage.setItem('ihaleist_oturum_giris:' + authUser.email, String(onceki || 0));
sessionStorage.setItem(hesapAnahtari('ihaleist_oturum_giris', authUser.email), String(onceki || 0));
localStorage.setItem(anahtar, String(Date.now()));
} catch { /* depolama kapalıysa kart bugünü gösterir */ }
}, [authUser?.email]);
@@ -708,7 +709,7 @@ export const AppProvider = ({ children }) => {
useEffect(() => {
if (!veriSenkron) return;
const session = getToken();
const uyariAnahtari = 'ihaleist_belge_uyari_gunu:' + authUser?.email;
const uyariAnahtari = hesapAnahtari('ihaleist_belge_uyari_gunu', authUser?.email);
const bugun = new Date().toISOString().slice(0, 10);
try { if (localStorage.getItem(uyariAnahtari) === bugun) return; } catch { /* yoksay */ }
listDocuments().then((d) => {