PageSourceSearch

https://www.cdnvideo.ru/include/form/js/f7_script.js

js cdnvideo.ru collected 2026-10-01 10:34:37 UTC 4,078 bytes, 126 lines download raw bytes

1document.addEventListener("DOMContentLoaded", () => { // выполняем после загрузки страницы
2
3// add data-sid form в 1-ом array
4// добавить SID скрытого поля, куда записываются результаты выбранных чекбоксов, например data-sid="type_svyazi_7
5// уникализируем наименование переменных для избежания конфликта кодов форм, например f7_
6
7const f7_typeQ = document.querySelector(' [data-sid="SIMPLE_QUESTION_998"] ');
8const f7_typeHide = document.querySelector(' [data-sid="type_svyazi_7"] ');
9const f7_typeChek = f7_typeQ.querySelectorAll('.checkbox');
10const f7_typeChekTwo = f7_typeQ.querySelectorAll('.checkbox');
11
12
13f7_typeChek.forEach(elem => { // добавляем или убираем класс check_it для привязки выбранных чекбоксов
14const f7_tChIt = elem.querySelector('label');
15elem.addEventListener('change', function(event) {  
16f7_tChIt.classList.toggle('check_it');
17});   // END elem.addEventListener change
18});
18 // END f7_typeChek.forEach
19
20f7_typeChekTwo.forEach(chk => { // строим массив для отслеживания выбранных чекбоксов
21
22chk.addEventListener('change', function(event) { // отслеживаем изменения в чекбоксах
23
24setTimeout(() => { // добавляем задержку
25
26let f7_typeChekTri = f7_typeQ.querySelectorAll('.checkbox');
27
28let f7_ChekCont = '';
29
30f7_typeChekTri.forEach(function(item, index) {
31
32let f7_tChItTri = item.querySelector('label');
33
34let f7_tTextTri  = f7_tChItTri.textContent;
35
36if (f7_tChItTri.classList.contains('check_it')) {
37
38f7_ChekCont += f7_tTextTri +' ' ;
39
40f7_typeHide.value = f7_ChekCont ;
41
42} // END if
43
44}); // END f7_typeChekTri.forEach
45
46
47}, 500); // END Timeout
48
49 });  // END chk.addEventListener change
50
51}); // END f7_tChItTwo.forEach
52
53//console.log("tut");
54
55// дублируем код для исправления бага при не заполненном поле "Выберите удобный способ связи"
56
57const f7_Btn = document.querySelector(' [type="submit"] ');
58
59console.log(f7_Btn);
60
61f7_Btn.addEventListener('click', function() { // отслеживаем клик
62
63setTimeout(() => { // добавляем задержку
64
65const f7_hasErr = document.querySelector('.form.contacts');
66
67if (f7_hasErr.classList.contains('error')) {
68
69//console.log("change");
70
71const f7_typeQ = document.querySelector(' [data-sid="SIMPLE_QUESTION_998"] ');
72const f7_typeHide = document.querySelector(' [data-sid="type_svyazi_7"] ');
73const f7_typeChek = f7_typeQ.querySelectorAll('.checkbox');
74const f7_typeChekTwo = f7_typeQ.querySelectorAll('.checkbox');
75
76
77f7_typeChek.forEach(elem => { // добавляем или убираем класс check_it для привязки выбранных чекбоксов
78const f7_tChIt = elem.querySelector('label');
79elem.addEventListener('change', function(event) {  
80f7_tChIt.classList.toggle('check_it');
81});   // END elem.addEventListener change
82}); // END f7_typeChek.forEach
83
84f7_typeChekTwo.forEach(chk => { // строим массив для отслеживания выбранных чекбоксов
85
86chk.addEventListener('change', function(event) { // отслеживаем изменения в чекбоксах
87
88setTimeout(() => { // добавляем задержку
89
90let f7_typeChekTri = f7_typeQ.querySelectorAll('.checkbox');
91
92let f7_ChekCont = '';
93
94f7_typeChekTri.forEach(function(item, index) {
95
96let f7_tChItTri = item.querySelector('label');
97
98let f7_tTextTri  = f7_tChItTri.textContent;
99
100if (f7_tChItTri.classList.contains('check_it')) {
101
102f7_ChekCont += f7_tTextTri +' ' ;
103
104f7_typeHide.value = f7_ChekCont ;
105
106} // END if
107
108}); // END f7_typeChekTri.forEach
109
110
111}, 500); // END Timeout
112
113 });  // END chk.addEventListener change
114
115}); // END f7_tChItTwo.forEach
116
117} // END if
118
119}, 2000); // END Timeout
120
121});   // END f7_hasErr.addEventListener change
122
123
124
125}); // END DOMContentLoaded
126

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.