Skip to content

Commit 95df697

Browse files
committed
Made changes
1 parent efddb17 commit 95df697

File tree

1 file changed

+21
-5
lines changed

1 file changed

+21
-5
lines changed

src/components/NavBar/index.tsx

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -172,17 +172,32 @@ const NavBar = ({ locale }: { locale: string }) => {
172172
useEffect(() => {
173173
const fetchUnreadCount = async () => {
174174
try {
175+
const ONE_WEEK_MS = 7 * 24 * 60 * 60 * 1000;
176+
const now = Date.now();
177+
175178
const postsResponse = await fetch("/api/news?numPosts=4");
176179
const postsData = await postsResponse.json();
177180

178-
const postUpdate = await fetch("/api/news/byTag?tag=release-notes&numPosts=4")
179-
const postRelease = await postUpdate.json()
181+
const releasesResponse = await fetch("/api/news/byTag?tag=release-notes&numPosts=4");
182+
const releasesData = await releasesResponse.json();
180183

181184
const eventsData = await fetchLatestEvents();
182185
const slicedEvents = eventsData.slice(0, 6);
183-
184-
const totalCount = (postsData.posts?.length || 0) + (postRelease.posts?.length || 0) + (slicedEvents.length || 0);
185-
186+
187+
const recentPosts = (postsData.posts || []).filter(
188+
(p: { date: string }) => now - new Date(p.date).getTime() <= ONE_WEEK_MS
189+
);
190+
191+
const recentReleases = (releasesData.posts || []).filter(
192+
(p: { date: string }) => now - new Date(p.date).getTime() <= ONE_WEEK_MS
193+
);
194+
195+
const recentEvents = (slicedEvents || []).filter(
196+
(e: { date: string }) => now - new Date(e.date).getTime() <= ONE_WEEK_MS
197+
);
198+
199+
const totalCount = recentPosts.length + recentReleases.length + recentEvents.length;
200+
186201
setUnreadCount(totalCount);
187202
} catch (error) {
188203
console.error("Error fetching announcement count:", error);
@@ -198,6 +213,7 @@ const handleNotificationRead = () => {
198213
};
199214

200215

216+
201217
useEffect(() => {
202218
if (!mobileMenuOpen) {
203219
setShowLastSlide(false)

0 commit comments

Comments
 (0)