PageSourceSearch

https://prometheus.org.ua/wp-content/themes/prometheus-new/assets/js/analytics.js?ver=2.1.30

js prometheus.org.ua collected 2026-09-24 08:58:12 UTC 8,030 bytes, 292 lines download raw bytes

1// Function for getting price from landings
2function parsePrices(priceStr) {
3  let cleanedPrice = priceStr.replace(/від\s*/g, "").trim();
4
5  const matches = cleanedPrice.match(/(\d[\d\s]*\d|\d)/g);
6
7  if (!matches) {
8    return [];
9  }
10
11  const prices = matches.map((match) =>
12    parseInt(match.replace(/[\s\n]/g, ""), 10)
13  );
14
15  return prices;
16}
17
18let page_category = "";
19let type_form = "";
20
21let prev_page_category = Cookies.get("a_page_category");
22
23if (document.location.href == "https://prometheus.org.ua/") {
24  page_category = "Головна";
25  type_form = "basic";
26} else if (
27  document.location.href.startsWith("https://prometheus.org.ua/course/")
28) {
29  page_category = "Cторінка курсу";
30  type_form = "basic";
31} else if (
32  document.location.href ==
33  "https://prometheus.org.ua/courses-catalog/prometheus-plus"
34) {
35  page_category = "Прометеус +";
36  type_form = "basic";
37} else if (document.location.href == "https://prometheus.org.ua/blog/") {
38  page_category = "Блог";
39  type_form = "basic";
40} else if (
41  document.location.href == "https://prometheus.org.ua/corporate-learning/"
42) {
43  page_category = "Корпоративне навчання";
44  type_form = "basic";
45} else if (
46  document.location.href.startsWith("https://prometheus.org.ua/prometheus-plus")
47) {
48  page_category = "Сторінка платного курсу";
49  type_form = "basic";
50  Cookies.set("a_item_list_name", prev_page_category, {
51    domain: ".prometheus.org.ua",
52  });
53
54  // document.addEventListener("DOMContentLoaded", e => {
55  // 	let course_data = JSON.parse(localStorage.getItem("course_data"));
56  // 	localStorage.removeItem("course_data");
57
58  // 	let price = "";
59  // 	if (course_data.price_selector != "") {
60  // 		let price_text = document.querySelector(course_data.price_selector).textContent;
61  // 		price = parsePrices(price_text)[0];
62  // 	} else {
63  // 		price = "";
64  // 	}
65
66  // 	let item_list_name = Cookies.get('a_prev_page_category') || '';
67
68  // 	dataLayer.push({ ecommerce: null });
69  // 	dataLayer.push({
70  // 		'event': 'view_item',
71  // 		'ecommerce': {
72  // 		'items': [
73  // 			{
74  // 			    'item_name': course_data.title,
75  // 			    'price': price,
76  // 			    'item_brand': course_data.item_brand,
77  // 			    'item_list_name': item_list_name,
78  // 			    'item_category_2': course_data.item_category_2,
79  // 			}]
80  // 		}
81  // 	});
82  // })
83} else if (
84  document.location.href == "https://prometheus.org.ua/courses-catalog/"
85) {
86  page_category = "Каталог курсів";
87  type_form = "basic";
88}
89
90Cookies.set("a_prev_page_category", Cookies.get("a_page_category") || "", {
91  domain: ".prometheus.org.ua",
92});
93Cookies.set("a_page_category", page_category, { domain: ".prometheus.org.ua" });
94
95document.querySelector(".register-button")?.addEventListener("click", (e) => {
96  window.dataLayer = window.dataLayer || [];
97  dataLayer.push({
98    event: "registration_start",
99    page_category: page_category,
100    button_place: "header",
101    type_form: type_form,
102  });
103  Cookies.set("a_type_form", "basic", { domain: ".prometheus.org.ua" });
104});
105
106document.querySelector(".login-button")?.addEventListener("click", (e) => {
107  window.dataLayer = window.dataLayer || [];
108  dataLayer.push({
109    event: "login_start",
110  });
111});
112
113// document.querySelectorAll("#menu-megamenu-submenu .menu-item").forEach(item => {
114// 	item.addEventListener("click", e => {
115// 		window.dataLayer = window.dataLayer || [];
116// 		dataLayer.push({
117// 			'event':'click_menu',
118// 			'type_menu': item.textContent
119// 		});
120// 	})
121// })
122
123document
124  .querySelector(".prometheus-plus-button")
125  ?.addEventListener("click", (e) => {
126    window.dataLayer = window.dataLayer || [];
127    dataLayer.push({
128      event: "click_menu",
129      type_menu: "Prometheus+",
130    });
131  });
132
133document
134  .querySelector(".order-course-button")
135  ?.addEventListener("click", (e) => {
136    window.dataLayer = window.dataLayer || [];
137    dataLayer.push({
138      event: "click_menu",
139      type_menu: "Замовити курс",
140    });
141  });
142
143document.querySelector(".header__dropdown")?.addEventListener("click", (e) => {
144  window.dataLayer = window.dataLayer || [];
145  dataLayer.push({
146    event: "click_menu",
147    type_menu: "Каталог",
148  });
149});
150
151// Analytics for free course
152window.addEventListener("DOMContentLoaded", (event) => {
153  document
154    .querySelector('a[href*="https://courses.prometheus.org.ua/register?"]')
155    ?.addEventListener("click", (e) => {
156      Cookies.set("a_type_form", "free_course", {
157        domain: ".prometheus.org.ua",
158      });
159    });
160});
161
162// Analytics for paid course
163window.addEventListener("DOMContentLoaded", (event) => {
164  document
165    .querySelectorAll(
166      'a[href^="https://ecommerce.prometheus.org.ua/basket/add/"]'
167    )
168    ?.forEach((elem) => {
169      elem.addEventListener("click", (e) => {
170        Cookies.set("a_type_form", "pay_course", {
171          domain: ".prometheus.org.ua",
172        });
173      });
174    });
175});
176
177// Traffic sources
178const UTM_PARAMS = [
179  "utm_source",
180  "utm_medium",
181  "utm_campaign",
182  "utm_term",
183  "utm_content",
184];
185
186function has_utm(url) {
187  for (let i = 0; i < UTM_PARAMS.length; i++) {
188    if (url.searchParams.get("utm_source")) {
189      return true;
190    }
191  }
192  return false;
193}
194
195let data = {
196  gclid: "",
197  utm_source: "",
198  utm_medium: "",
199  utm_campaign: "",
200  utm_term: "",
201  utm_content: "",
202};
203
204let url = new URL(window.location.href);
205
206if (url.searchParams.get("gclid")) {
207  data.utm_source = "google";
208  data.utm_medium = "cpc";
209  data.utm_campaign = url.searchParams.get("utm_campaign") || "none";
210  data.utm_term = url.searchParams.get("utm_term") || "none";
211  data.utm_content = url.searchParams.get("utm_content") || "none";
212  data.gclid = url.searchParams.get("gclid");
213} else {
214  data.gclid = null;
215
216  if (has_utm(url)) {
217    data.utm_source = url.searchParams.get("utm_source") || "none";
218    data.utm_medium = url.searchParams.get("utm_medium") || "none";
219    data.utm_campaign = url.searchParams.get("utm_campaign") || "none";
220    data.utm_term = url.searchParams.get("utm_term") || "none";
221    data.utm_content = url.searchParams.get("utm_content") || "none";
222  } else {
223    if (document.referrer) {
224      let referrer_url = new URL(document.referrer);
225      let referrer_host = referrer_url.host;
226
227      data.utm_medium = "referral";
228      data.utm_campaign = "none";
229      data.utm_term = "none";
230      data.utm_content = "none";
231
232      if (
233        referrer_host == "www.google.com" ||
234        referrer_host == "www.google.com.ua"
235      ) {
236        data.utm_source = "google";
237        data.utm_medium = "organic";
238      } else if (referrer_host == "www.bing.com") {
239        data.utm_source = "bing";
240        data.utm_medium = "organic";
241      } else if (referrer_host == "duckduckgo.com") {
242        data.utm_source = "duckduckgo";
243        data.utm_medium = "organic";
244      } else {
245        data.utm_source = referrer_host;
246      }
247    } else {
248      data.utm_source = "direct";
249      data.utm_medium = "none";
250      data.utm_campaign = "none";
251      data.utm_term = "none";
252      data.utm_content = "none";
253    }
254  }
255}
256
257let cookies_array = document.cookie.split("; ");
258
259for (let i = 0; i < cookies_array.length; i++) {
260  if (cookies_array[i].startsWith("_ga_62JY148LQZ")) {
261    // console.log("Found session id", cookies_array[i]);
262    break;
263  }
264}
265
266if (Cookies.get("a_source_data")) {
267  if (
268    data.utm_source != "direct" &&
269    !data.utm_source.includes("prometheus.org.ua")
270  ) {
271    Cookies.set("a_source_data", JSON.stringify(data), {
272      domain: ".prometheus.org.ua",
273    });
274  }
275} else {
276  if (!data.utm_source.includes("prometheus.org.ua")) {
277    Cookies.set("a_source_data", JSON.stringify(data), {
278      domain: ".prometheus.org.ua",
279    });
280  }
281}
282
283// Cookies check
284const raw_cookie = Cookies.get("a_source_data");
285
286if (raw_cookie) {
287  const cookie = JSON.parse(raw_cookie);
288
289  if (cookie.utm_source.includes("prometheus.org.ua")) {
290    Cookies.remove("a_source_data", { domain: ".prometheus.org.ua" });
291  }
292}

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.