PageSourceSearch

https://airzumashop.at/js/everflow-visits.js

js airzumashop.at collected 2026-10-01 15:03:20 UTC 1,949 bytes, 77 lines download raw bytes

1(function () {
2	let conversionTriggered = false;
3	let conversionRunning = false;
4
5	if (!params.eventId) {
6		return;
7	}
8
9	const cookieName = params.eventId.cookie;
10
11	const cookieValue = getCookie(cookieName);
12	if (cookieValue) {
13		return;
14	}
15
16	const tryMakeConversion = async () => {
17		if (conversionTriggered || conversionRunning) return;
18		conversionRunning = true;
19
20		try {
21			const EF = window.EF;
22			if (!EF || typeof EF.urlParameter !== 'function') return;
23
24			const offerId = EF.urlParameter('oid');
25			const transactionId = EF.urlParameter('transaction_id');
26			if (!offerId || !transactionId) return;
27
28			if (EF.customParamProvider instanceof Promise) {
29				await EF.customParamProvider;
30			}
31			EF.customParamProvider = null;
32
33			const conversion = await EF.conversion({
34				offer_id: offerId,
35				tracking_domain: 'https://www.csszp8trk.com',
36				adv_event_id: params.eventId.id,
37				transaction_id: transactionId,
38			});
39
40			const txId = conversion?.transaction_id;
41			const convId = conversion?.conversion_id;
42
43			if (txId && convId) {
44				conversionTriggered = true;
45				setCookie(cookieName, true);
46				observer.disconnect();
47			}
48		} catch (err) {
49			console.error('Conversion error:', err);
50		} finally {
51			conversionRunning = false;
52		}
53	};
54
55	const observer = new MutationObserver(() => tryMakeConversion());
56	observer.observe(document.body, { childList: true, subtree: true });
57
58	tryMakeConversion();
59})();
60
61function setCookie(name, value, days = 1, path = '/') {
62	let expires = '';
63	if (days) {
64		const date = new Date();
65		date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
66		expires = '; expires=' + date.toUTCString();
67	}
68	document.cookie = `${name}=${encodeURIComponent(value)}${expires}; path=${path}`;
69}
70
71function getCookie(name) {
72	const cookies = document.cookie.split('; ').map((c) => c.split('='));
73	for (const [key, value] of cookies) {
74		if (key === name) return decodeURIComponent(value);
75	}
76	return null;
77}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.