blob: d1354652eaef5984ed60850a4f88d33872540c19 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
import { useEffect, useState } from "react";
export const useEnMarchaAnnouncement = () => {
const [isOpen, setIsOpen] = useState(false);
useEffect(() => {
const lastShown = localStorage.getItem("enmarcha_announcement_last_shown");
const today = new Date().toISOString().split("T")[0];
if (lastShown !== today) {
// Show after a short delay to not overwhelm the user immediately on load
const timer = setTimeout(() => {
setIsOpen(true);
}, 2000);
return () => clearTimeout(timer);
}
}, []);
const closeAnnouncement = () => {
const today = new Date().toISOString().split("T")[0];
localStorage.setItem("enmarcha_announcement_last_shown", today);
setIsOpen(false);
};
return {
isOpen,
closeAnnouncement,
};
};
|