From 56b485f2e618d52b3e726e26311f9c8da02b5933 Mon Sep 17 00:00:00 2001 From: Martin DONADIEU <martindonadieu@gmail.com> Date: Fri, 13 Aug 2021 14:13:25 +0200 Subject: [PATCH] feat: add variant local (#1218) * Update plausible.js * feat: add new variant * feat: add allow-localhost * Update tracker.ex * Update compile.js * Update plausible.js * Update tracker.ex * Update compile.js * Update plausible.js --- lib/plausible_web/plugs/tracker.ex | 2 +- tracker/compile.js | 2 +- tracker/src/plausible.js | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/plausible_web/plugs/tracker.ex b/lib/plausible_web/plugs/tracker.ex index 54f0f547..8b7e3b60 100644 --- a/lib/plausible_web/plugs/tracker.ex +++ b/lib/plausible_web/plugs/tracker.ex @@ -3,7 +3,7 @@ defmodule PlausibleWeb.Tracker do use Agent custom_script_name = Application.get_env(:plausible, :custom_script_name) - base_variants = ["hash", "outbound-links", "exclusions", "compat"] + base_variants = ["hash", "outbound-links", "exclusions", "compat", "local"] base_filenames = ["plausible", custom_script_name] # Generates Power Set of all variants diff --git a/tracker/compile.js b/tracker/compile.js index 511ab31f..fbffbe9b 100644 --- a/tracker/compile.js +++ b/tracker/compile.js @@ -16,7 +16,7 @@ function compilefile(input, output, templateVars = {}) { fs.writeFileSync(output, result.code) } -const base_variants = ["hash", "outbound-links", "exclusions", "compat"] +const base_variants = ["hash", "outbound-links", "exclusions", "compat", "local"] const variants = [...g.clone.powerSet(base_variants)].filter(a => a.length > 0).map(a => a.sort()); compilefile(relPath('src/plausible.js'), relPath('../priv/tracker/js/plausible.js')) diff --git a/tracker/src/plausible.js b/tracker/src/plausible.js index f1a58cb9..4ca8a906 100644 --- a/tracker/src/plausible.js +++ b/tracker/src/plausible.js @@ -33,7 +33,9 @@ function trigger(eventName, options) { + {{#if !local}} if (/^localhost$|^127(\.[0-9]+){0,2}\.[0-9]+$|^\[::1?\]$/.test(location.hostname) || location.protocol === 'file:') return warn('localhost'); + {{/if}} if (window.phantom || window._phantom || window.__nightmare || window.navigator.webdriver || window.Cypress) return; if (plausible_ignore=="true") return warn('localStorage flag') {{#if exclusions}} -- GitLab