From bc0e1b4db23c409ff95192bc35c28afe6b85f736 Mon Sep 17 00:00:00 2001 From: Sean Morley Date: Wed, 10 Apr 2024 17:47:20 +0000 Subject: [PATCH] Add visit count functionality to Navbar and Log page --- src/lib/components/Navbar.svelte | 16 +++++++---- src/lib/utils/stores/visitCountStore.ts | 4 ++- src/routes/+layout.server.ts | 2 +- src/routes/api/visitcount/+server.ts | 36 +++++++++++++++++++++++++ src/routes/log/+page.svelte | 8 ++++++ 5 files changed, 59 insertions(+), 7 deletions(-) create mode 100644 src/routes/api/visitcount/+server.ts diff --git a/src/lib/components/Navbar.svelte b/src/lib/components/Navbar.svelte index f05c718..d377bb2 100644 --- a/src/lib/components/Navbar.svelte +++ b/src/lib/components/Navbar.svelte @@ -5,6 +5,7 @@ import type { DatabaseUser } from "$lib/server/auth"; export let user: any; import UserAvatar from "./UserAvatar.svelte"; + import { onMount } from "svelte"; async function goHome() { goto("/"); } @@ -22,6 +23,15 @@ } let count = 0; + + // get value from fetch /api/visitcount + + onMount(async () => { + const res = await fetch("/api/visitcount"); + const data = await res.json(); + visitCount.set(data.visitCount); + }); + visitCount.subscribe((value) => { count = value; }); @@ -30,10 +40,6 @@ const isBrowser = typeof window !== "undefined"; if (isBrowser) { const storedAdventures = localStorage.getItem("adventures"); - if (storedAdventures) { - let parsed = JSON.parse(storedAdventures); - visitCount.set(parsed.length); - } } @@ -57,12 +63,12 @@ AdventureLog 🗺️