diff options
| author | 2023-12-15 09:11:47 +0800 | |
|---|---|---|
| committer | 2023-12-15 09:11:47 +0800 | |
| commit | be8de118db913711eb72ae5187d26e54a0055727 (patch) | |
| tree | 96cd6c012dafa3f4015e54edef90df5eaaab0ddb /src/templates/partials/integrations/analytics | |
| parent | 9b2d27ba1d91a0d5531bc9c0d52c3887a2dfb2aa (diff) | |
| download | infini-be8de118db913711eb72ae5187d26e54a0055727.tar.gz infini-be8de118db913711eb72ae5187d26e54a0055727.zip | |
refactor(docs): optmst `docs` dir & `deps`
Diffstat (limited to 'src/templates/partials/integrations/analytics')
| -rw-r--r-- | src/templates/partials/integrations/analytics/google.html | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/src/templates/partials/integrations/analytics/google.html b/src/templates/partials/integrations/analytics/google.html deleted file mode 100644 index a9fa37d9..00000000 --- a/src/templates/partials/integrations/analytics/google.html +++ /dev/null @@ -1,97 +0,0 @@ -<!-- - Copyright (c) 2016-2023 Martin Donath <martin.donath@squidfunk.com> - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to - deal in the Software without restriction, including without limitation the - rights to use, copy, modify, merge, publish, distribute, sublicense, and/or - sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - IN THE SOFTWARE. ---> - -<!-- Determine analytics property --> -{% if config.extra.analytics %} - {% set property = config.extra.analytics.property | d("", true) %} -{% endif %} - -<!-- Integrate with Google Analytics 4 --> -<script id="__analytics"> - function __md_analytics() { - window.dataLayer = window.dataLayer || [] - function gtag() { dataLayer.push(arguments) } - - /* Set up integration and send page view */ - gtag("js", new Date()) - gtag("config", "{{ property }}") - - /* Register event handlers after documented loaded */ - document.addEventListener("DOMContentLoaded", function() { - - /* Set up search tracking */ - if (document.forms.search) { - var query = document.forms.search.query - query.addEventListener("blur", function() { - if (this.value) - gtag("event", "search", { search_term: this.value }) - }) - } - - /* Set up feedback, i.e. "Was this page helpful?" */ - document$.subscribe(function() { - var feedback = document.forms.feedback - if (typeof feedback === "undefined") - return - - /* Send feedback to Google Analytics */ - for (var button of feedback.querySelectorAll("[type=submit]")) { - button.addEventListener("click", function(ev) { - ev.preventDefault() - - /* Retrieve and send data */ - var page = document.location.pathname - var data = this.getAttribute("data-md-value") - gtag("event", "feedback", { page, data }) - - /* Disable form and show note, if given */ - feedback.firstElementChild.disabled = true - var note = feedback.querySelector( - ".md-feedback__note [data-md-value='" + data + "']" - ) - if (note) - note.hidden = false - }) - - /* Show feedback */ - feedback.hidden = false - } - }) - - /* Send page view on location change */ - location$.subscribe(function(url) { - gtag("config", "{{ property }}", { - page_path: url.pathname - }) - }) - }) - - /* Create script tag */ - var script = document.createElement("script") - script.async = true - script.src = "https://www.googletagmanager.com/gtag/js?id={{ property }}" - - /* Inject script tag */ - var container = document.getElementById("__analytics") - container.insertAdjacentElement("afterEnd", script) - } -</script> |
