Merged in fix/sw-2763-external-scripts (pull request #2104)
fix: try/catch external scripts to avoid them breaking our page #sw-2763 * fix: try/catch external scripts to avoid them breaking our page #sw-2763 Approved-by: Joakim Jäderberg
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
import * as Sentry from "@sentry/nextjs"
|
||||||
import Script from "next/script"
|
import Script from "next/script"
|
||||||
|
|
||||||
import { env } from "@/env/server"
|
import { env } from "@/env/server"
|
||||||
@@ -8,6 +9,10 @@ export default function AdobeSDKScript() {
|
|||||||
data-cookieconsent="statistics"
|
data-cookieconsent="statistics"
|
||||||
src={env.ADOBE_SDK_SCRIPT_SRC}
|
src={env.ADOBE_SDK_SCRIPT_SRC}
|
||||||
async
|
async
|
||||||
|
onError={(e) => {
|
||||||
|
console.error("Failed to load AdobeSDK script", e)
|
||||||
|
Sentry.captureException(e)
|
||||||
|
}}
|
||||||
/>
|
/>
|
||||||
) : null
|
) : null
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import * as Sentry from "@sentry/nextjs"
|
||||||
import Script from "next/script"
|
import Script from "next/script"
|
||||||
|
|
||||||
import { env } from "@/env/server"
|
import { env } from "@/env/server"
|
||||||
@@ -9,10 +10,27 @@ export default function GTMScript() {
|
|||||||
data-cookieconsent="statistics"
|
data-cookieconsent="statistics"
|
||||||
dangerouslySetInnerHTML={{
|
dangerouslySetInnerHTML={{
|
||||||
__html: `
|
__html: `
|
||||||
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://analytics.scandichotels.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-KNJCW67W');
|
try {
|
||||||
`,
|
(function(w,d,s,l,i){
|
||||||
|
w[l]=w[l]||[];
|
||||||
|
w[l].push({'gtm.start': new Date().getTime(), event:'gtm.js'});
|
||||||
|
var f = d.getElementsByTagName(s)[0],
|
||||||
|
j = d.createElement(s),
|
||||||
|
dl = l != 'dataLayer' ? '&l=' + l : '';
|
||||||
|
j.async = true;
|
||||||
|
j.src = 'https://analytics.scandichotels.com/gtm.js?id=' + i + dl;
|
||||||
|
f.parentNode.insertBefore(j, f);
|
||||||
|
})(window,document,'script','dataLayer','GTM-KNJCW67W');
|
||||||
|
} catch (e) {
|
||||||
|
console.error('Failed to load GTM script', e);
|
||||||
|
}
|
||||||
|
`,
|
||||||
}}
|
}}
|
||||||
async
|
async
|
||||||
|
onError={(e) => {
|
||||||
|
console.error("Failed to load GTM script", e)
|
||||||
|
Sentry.captureException(e)
|
||||||
|
}}
|
||||||
/>
|
/>
|
||||||
) : null
|
) : null
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user