made analytics work
This commit is contained in:
parent
43a650a9b6
commit
06bf69c167
2 changed files with 28 additions and 14 deletions
|
|
@ -1,24 +1,39 @@
|
|||
"use client";
|
||||
|
||||
import { useEffect, useState } from "react";
|
||||
import { Analytics } from "@vercel/analytics/next";
|
||||
import { SpeedInsights } from "@vercel/speed-insights/next";
|
||||
|
||||
export function ConditionalAnalytics() {
|
||||
const [analyticsEnabled, setAnalyticsEnabled] = useState(false);
|
||||
|
||||
useEffect(() => {
|
||||
// check if analytics are enabled
|
||||
const enabled = localStorage.getItem("analytics-enabled") === "true";
|
||||
setAnalyticsEnabled(enabled);
|
||||
}, []);
|
||||
|
||||
if (!analyticsEnabled) return null;
|
||||
|
||||
return (
|
||||
<>
|
||||
<Analytics />
|
||||
<SpeedInsights />
|
||||
<Analytics
|
||||
beforeSend={(event) => {
|
||||
// check if user has consented
|
||||
const analyticsEnabled = localStorage.getItem("analytics-enabled") === "true";
|
||||
|
||||
// if not consented, return null to block the event
|
||||
if (!analyticsEnabled) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// if consented, return the event to send it
|
||||
return event;
|
||||
}}
|
||||
/>
|
||||
<SpeedInsights
|
||||
beforeSend={(event) => {
|
||||
// check if user has consented
|
||||
const analyticsEnabled = localStorage.getItem("analytics-enabled") === "true";
|
||||
|
||||
// if not consented, return null to block the event
|
||||
if (!analyticsEnabled) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// if consented, return the event to send it
|
||||
return event;
|
||||
}}
|
||||
/>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
|
@ -23,7 +23,6 @@ export function CookieConsent() {
|
|||
onClick: () => {
|
||||
localStorage.setItem("cookie-consent", "accepted");
|
||||
localStorage.setItem("analytics-enabled", "true");
|
||||
window.location.reload();
|
||||
},
|
||||
},
|
||||
cancel: {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue