From 9c218d015450e85d4f825c4397539225d4e6146d Mon Sep 17 00:00:00 2001 From: Brace Sproul Date: Fri, 8 Mar 2024 14:32:40 -0800 Subject: [PATCH] docs[patch]: Update how GA4 is collected (#18821) There's some issue/setting with the current python GA4 app. I created a new one just for feedback. --- docs/docusaurus.config.js | 4 ++++ docs/src/analytics.js | 4 ++-- docs/src/theme/Feedback.js | 17 +++++++---------- docs/static/js/google_analytics.js | 14 +++++++++----- 4 files changed, 22 insertions(+), 17 deletions(-) diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index 10c24444b92..b5f5cc0c0c5 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -335,6 +335,10 @@ const config = { src: "https://www.googletagmanager.com/gtag/js?id=G-9B66JQQH2F", async: true, }, + { + src: "https://www.googletagmanager.com/gtag/js?id=G-WFT0J048RF", + async: true, + } ], }; diff --git a/docs/src/analytics.js b/docs/src/analytics.js index e9b3d2a5323..f00c0900331 100644 --- a/docs/src/analytics.js +++ b/docs/src/analytics.js @@ -1,5 +1,5 @@ export default function gtag(...args) { - if (window.gtag) { - window.gtag(...args); + if (window.gtagFeedback) { + window.gtagFeedback(...args); } } diff --git a/docs/src/theme/Feedback.js b/docs/src/theme/Feedback.js index e7c41841ea8..6e1f2a8aa58 100644 --- a/docs/src/theme/Feedback.js +++ b/docs/src/theme/Feedback.js @@ -97,7 +97,7 @@ export default function Feedback() { const [feedbackSent, setFeedbackSent] = useState(false); /** - * @param {"yes" | "no"} feedback + * @param {"good" | "bad"} feedback */ const handleFeedback = (feedback) => { const cookieName = `${FEEDBACK_COOKIE_PREFIX}_${window.location.pathname}`; @@ -105,15 +105,12 @@ export default function Feedback() { return; } - const feedbackType = + const feedbackEnv = process.env.NODE_ENV === "production" ? "page_feedback" : "page_feedback_dev"; - gtag("event", feedbackType, { - url: window.location.pathname, - feedback, - }); + gtag("event", `${feedbackEnv}_${feedback}`, {}); // Set a cookie to prevent feedback from being sent multiple times setCookie(cookieName, window.location.pathname, 1); setFeedbackSent(true); @@ -168,12 +165,12 @@ export default function Feedback() { // Handle keyboard interaction if (e.key === "Enter" || e.key === " ") { e.preventDefault(); - handleFeedback("yes"); + handleFeedback("good"); } }} onClick={(e) => { e.preventDefault(); - handleFeedback("yes"); + handleFeedback("good"); }} > @@ -186,12 +183,12 @@ export default function Feedback() { // Handle keyboard interaction if (e.key === "Enter" || e.key === " ") { e.preventDefault(); - handleFeedback("no"); + handleFeedback("bad"); } }} onClick={(e) => { e.preventDefault(); - handleFeedback("no"); + handleFeedback("bad"); }} > diff --git a/docs/static/js/google_analytics.js b/docs/static/js/google_analytics.js index d665aa45023..ea5ceb60219 100644 --- a/docs/static/js/google_analytics.js +++ b/docs/static/js/google_analytics.js @@ -1,7 +1,11 @@ window.dataLayer = window.dataLayer || []; -function gtag() { - dataLayer.push(arguments); -} -gtag("js", new Date()); +function gtag(){dataLayer.push(arguments);} +gtag('js', new Date()); -gtag("config", "G-9B66JQQH2F"); +gtag('config', 'G-9B66JQQH2F'); + +// Only for feedback +function gtagFeedback(){dataLayer.push(arguments);} +gtagFeedback('js', new Date()); + +gtagFeedback('config', 'G-WFT0J048RF'); \ No newline at end of file