|
8 | 8 | runScriptInCurrentTab, |
9 | 9 | sendEventToTab, |
10 | 10 | toggleActiveScript, |
11 | | - trackingUseScript, |
| 11 | + trackEvent, |
12 | 12 | } from "../scripts/helpers/utils.js"; |
13 | 13 | import { checkForUpdate } from "./helpers/checkForUpdate.js"; |
14 | 14 | import { getFlag, t, toggleLang } from "./helpers/lang.js"; |
@@ -37,9 +37,11 @@ function initLanguage() { |
37 | 37 | flagImg.setAttribute("src", getFlag()); |
38 | 38 |
|
39 | 39 | flagImg.onclick = () => { |
40 | | - toggleLang(); |
| 40 | + let newLang = toggleLang(); |
41 | 41 | flagImg.setAttribute("src", getFlag()); |
42 | 42 |
|
| 43 | + trackEvent("change-language-" + newLang); |
| 44 | + |
43 | 45 | // reset UI |
44 | 46 | createTabs(); |
45 | 47 | checkForUpdate(); |
@@ -157,7 +159,7 @@ function createScriptButton(script, isFavorite = false) { |
157 | 159 | checkmark.className = "checkmark tooltip"; |
158 | 160 | checkmark.onclick = async (e) => { |
159 | 161 | let newValue = await toggleActiveScript(script.id); |
160 | | - newValue && trackingUseScript(script.id); |
| 162 | + trackEvent(script.id + (newValue ? "-ON" : "-OFF")); |
161 | 163 | newValue ? script.onEnable?.() : script.onDisable?.(); |
162 | 164 | updateButtonChecker(script, buttonContainer, newValue); |
163 | 165 | }; |
@@ -321,7 +323,7 @@ async function runScript(script) { |
321 | 323 | if (willRun) { |
322 | 324 | try { |
323 | 325 | recentScriptsSaver.add(script); |
324 | | - trackingUseScript(script.id); |
| 326 | + trackEvent(script.id); |
325 | 327 | if (isFunction(script.onClickExtension)) await script.onClickExtension(); |
326 | 328 | if (isFunction(script.onClick)) |
327 | 329 | await runScriptInCurrentTab(script.onClick); |
@@ -385,8 +387,20 @@ function initSearch() { |
385 | 387 | }); |
386 | 388 | } |
387 | 389 |
|
| 390 | +function initTracking() { |
| 391 | + let trackingEles = document.querySelectorAll("[data-track]"); |
| 392 | + |
| 393 | + trackingEles.forEach((ele) => { |
| 394 | + ele.onclick = () => { |
| 395 | + trackEvent("click_" + ele.getAttribute("data-track")); |
| 396 | + }; |
| 397 | + }); |
| 398 | +} |
| 399 | + |
388 | 400 | (async function () { |
389 | | - // initOpenInNewTabBtn(); |
| 401 | + trackEvent("open-popup"); |
| 402 | + |
| 403 | + initTracking(); |
390 | 404 | initSearch(); |
391 | 405 | initLanguage(); |
392 | 406 | createTabs(); |
|
0 commit comments