From d24a45615256cb4d3e471893fe34b64c5d44daa9 Mon Sep 17 00:00:00 2001 From: philipp lang Date: Sun, 23 Mar 2025 16:40:11 +0100 Subject: [PATCH] Check if Matomo Event Tracker is present --- partials/shared/footer.htm | 4 ++++ resources/js/app.js | 16 ++++++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/partials/shared/footer.htm b/partials/shared/footer.htm index 7d4a353..9f2bd9a 100644 --- a/partials/shared/footer.htm +++ b/partials/shared/footer.htm @@ -38,4 +38,8 @@ function onStart() { g.async=true; g.src=u+'proxy.php'; s.parentNode.insertBefore(g,s); })(); +{% else %} + {% endif %} diff --git a/resources/js/app.js b/resources/js/app.js index 15b83c1..be5bf00 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -76,7 +76,9 @@ Alpine.data('form', () => ({ } ); - _paq.push(['trackEvent', 'anfrage', 'dateValidated', response.data.result ? 'valid' : 'invalid']); + if (_paq !== undefined) { + _paq.push(['trackEvent', 'anfrage', 'dateValidated', response.data.result ? 'valid' : 'invalid']); + } tippy('[data-tippy-target]', { content: response.data.result ? 'Dieser Termin ist voraussichtlich verfügbar' : 'Dieser Termin ist leider nicht buchbar', @@ -107,15 +109,21 @@ Alpine.data('form', () => ({ behaviour: 'smooth', }); this.sending = false; - _paq.push(['trackEvent', 'anfrage', 'submitted']); + if (_paq !== undefined) { + _paq.push(['trackEvent', 'anfrage', 'submitted']); + } } catch (e) { this.sending = false; if (!e instanceof axios.AxiosError || !e.response || !e.response.data || !e.response.data['X_WINTER_ERROR_FIELDS']) { - _paq.push(['trackEvent', 'anfrage', 'submitInternalError']); + if (_paq !== undefined) { + _paq.push(['trackEvent', 'anfrage', 'submitInternalError']); + } throw e; } const errors = e.response.data['X_WINTER_ERROR_FIELDS']; - _paq.push(['trackEvent', 'anfrage', 'submitValidationFailed']); + if (_paq !== undefined) { + _paq.push(['trackEvent', 'anfrage', 'submitValidationFailed']); + } Object.keys(errors).forEach((k) => { errors[k].forEach((msg) => error(msg)); });