PageSourceSearch

https://evrostroy-1.ru/bitrix/templates/aspro-allcorp3/js/custom.js?177867915210123

js evrostroy-1.ru collected 2026-10-06 21:47:02 UTC 10,123 bytes, 315 lines download raw bytes

1"use strict";
2$(document).ready(function () {
3    $('.about-carousel').owlCarousel('destroy');
4    $('.about-carousel').owlCarousel({
5        loop      : true,
6        margin    : 0,
7        dots      : false,
8        nav       : true,
9        responsive: {
10            0   : {
11                items: 1,
12                nav  : true,
13            },
14            600 : {
15                items: 1,
16                nav  : true,
17            },
18            1300: {
19                items: 1,
20                nav  : true,
21            }
22        }
23    });
24    $('.review-carousel').owlCarousel('destroy');
25    $('.review-carousel').owlCarousel({
26        loop      : false,
27        margin    : 10,
28        dots      : false,
29        nav       : false,
30        responsive: {
31            0   : {
32                items: 1,
33                nav  : true,
34            },
35            600 : {
36                items: 1,
37                nav  : true,
38            },
39            1300: {
40                items: 1,
41                nav  : true,
42            }
43        }
44    });
45    $('.products-carousel').owlCarousel('destroy');
46    $('.products-carousel').owlCarousel({
47        loop      : false,
48        margin    : 10,
49        dots      : false,
50        nav       : false,
51        responsive: {
52            0   : {
53                items: 1,
54                nav  : true,
55            },
56            600 : {
57                items: 3,
58                nav  : true,
59            },
60            1300: {
61                items: 4,
62                nav  : true,
63            }
64        }
65    });
66    $('.sotrudniki-carousel').owlCarousel('destroy');
67    $('.sotrudniki-carousel').owlCarousel({
68        loop      : false,
69        margin    : 10,
70        dots      : true,
71        nav       : false,
72        responsive: {
73            0   : {
74                items: 1,
75                nav  : true,
76            },
77            600 : {
78                items: 2,
79                nav  : true,
80            },
81            1300: {
82                items: 3,
83                nav  : true,
84            }
85        }
86    });
87    $('.SIMILAR_PRODUCTS-carousel').owlCarousel('destroy');
88    $('.SIMILAR_PRODUCTS-carousel').owlCarousel({
89        loop      : false,
90        margin    : 2,
91        dots      : true,
92        nav       : false,
93        responsive: {
94            0   : {
95                items: 3,
96                nav  : true,
97            },
98            600 : {
99                items: 4,
100                nav  : true,
101            },
102            1300: {
103                items: 5,
104                nav  : true,
105            }
106        }
107    });
108
109
110    new Swiper('.swiper-1', {
111        // Optional parameters
112        loop: true,
113        slidesPerView: 1,
114        spaceBetween: 10,
115        pagination: {
116            el: ".swiper-pagination",
117            clickable: true,
118        },
119        // And if we need scrollbar
120        scrollbar: {
121            el: '.swiper-scrollbar',
122            clickable: true,
123        },
124
125        // Navigation arrows
126        navigation: {
127            nextEl: '.swiper-button-next',
128            prevEl: '.swiper-button-prev',
129        },
130
131    });
132    new Swiper('.swiper-video', {
133        // Optional parameters 
134        slidesPerView: 1,
135        spaceBetween: 10,
136        pagination: {
137            el: ".swiper-video .swiper-pagination",
138            clickable: true,
139        },
140        breakpoints: {
141            768: {
142                slidesPerView: 2,
143                spaceBetween: 20,
144            },
145            1024: {
146                slidesPerView: 3,
147                spaceBetween: 30,
148            },
149        },
150
151        // And if we need scrollbar
152        scrollbar: {
153            el: '.swiper-video .swiper-scrollbar',
154            clickable: true,
155        },
156
157        // Navigation arrows
158        navigation: {
159            nextEl: '.swiper-video .swiper-button-next',
160            prevEl: '.swiper-video .swiper-button-prev',
161        },
162
163    });
164
165      new Swiper('.swiper-3', {
166        // Optional parameters
167        loop: true,
168         slidesPerView: 1,
169         spaceBetween: 10,
170         pagination: {
171             el: ".swiper-pagination",
172             clickable: true,
173         },
174         breakpoints: {
175             768: {
176                 slidesPerView: 2,
177                 spaceBetween: 20,
178             },
179             1024: {
180                 slidesPerView: 3,
181                 spaceBetween: 30,
182             },
183         },
184
185          // And if we need scrollbar
186          scrollbar: {
187              el: '.swiper-scrollbar',
188              clickable: true,
189          },
190
191        // Navigation arrows
192        navigation: {
193            nextEl: '.swiper-button-next',
194            prevEl: '.swiper-button-prev',
195        },
196
197    });
198
199    $(document).on("click", ".js-item-action", function () {
200        const action = $(this).data("action");
201        const _this  = $(this);
202        _this.blur();
203        _this.toggleClass("active");
204        _this.parent().toggleClass("active");
205        // пример bayAction
206        if (typeof window[action + "Action"] === "function") {
207            window[action + "Action"](_this);
208        }
209        return false;
210    });
211    $(document).on('submit', '.js-form-action', function () {
212        const action = $(this).data("action");
213        const _this  = $(this);
214        _this.blur();
215        _this.toggleClass("active");
216        _this.parent().toggleClass("active");
217        get($(this).prop('action'),
218            $(this).serialize(),
219            'json',
220            function (data) {
221                //  updateCapcha();// Recaptchafree.reset();
222                if (typeof window[action + "Action"] === "function") {
223                    window[action + "Action"](_this);
224                }
225            });
226        return false;
227    });
228});
229  function get(url, data, dataType, func) {
230    BX.ajax({
231        url            : url,
232        method         : 'POST',
233        data           : data,
234        dataType       : dataType,
235        timeout        : 60,
236        async          : true,
237        processData    : true,
238        scriptsRunFirst: true,
239        emulateOnload  : true,
240        start          : true,
241        cache          : false,
242        onsuccess      : func
243    });
244    /*
245    let request, controller;
246    try {
247        request    = fetch(url, {
248            method : 'POST',
249            headers: {
250                'Content-Type': (dataType === 'json' ? 'application/json;charset=utf-8' : 'text/plain;charset=UTF-8')
251            },
252            body   : JSON.stringify(data),
253            referrer: "about:client", // или "" для того, чтобы не послать заголовок Referer,
254            // или URL с текущего источника
255            referrerPolicy: "strict-origin-when-cross-origin", // no-referrer-when-downgrade, no-referrer, origin, same-origin...
256            mode          : "cors", // same-origin, no-cors  Опция mode – это защита от нечаянной отправки запроса на другой источник:
257            credentials   : "same-origin", // omit, include  Опция credentials указ
257ывает, должен ли fetch отправлять куки и авторизационные заголовки HTTP вместе с запросом.
258            cache         : "no-cache", // no-store, reload, no-cache, force-cache или only-if-cached
259            redirect      : "follow", // manual, error Обычно fetch прозрачно следует HTTP-редиректам, таким как 301, 302 и так далее.
260            integrity     : "", // контрольная сумма, например "sha256-abcdef1234567890" Опция integrity позволяет проверить, соответствует ли ответ известной заранее контрольной сумме.
261            keepalive     : true, // true Опция keepalive указывает на то, что запрос может «пережить» страницу, которая его отправила.
262            window        : null // null
263        })
264            .then(response => {
265                if (!response.ok) {
266                    throw new Error('Ошибка запроса');
267                }
268                if (dataType === 'json') {
269                    return response.json();
270                } else {
271                    return response.text();
272                }
273            })
274            .then(data => {
275                func(data);
276            })
277            .catch(error => {
278                console.log(error);
279            });
280    } catch (error) {
281        console.error('Error:', error);
282    }
283    return {'request': request, 'controller': controller};*/
284}
285function checkMobile() {
286    var a = {
287        Android   : function () {
288            return navigator.userAgent.match(/Android/i);
289        },
290        BlackBerry: function () {
291            return navigator.userAgent.match(/BlackBerry/i);
292        },
293        iOS       : function () {
294            return navigator.userAgent.match(/iPhone/i);
295        },
296        Windows   : function () {
297            return navigator.userAgent.match(/IEMobile/i);
298        },
299        mobile    : function () {
300            return a.Android() || a.BlackBerry() || a.iOS();
301        },
302        any       : function () {
303            return a.Android() || a.BlackBerry() || a.iOS() || a.Opera() || a.Windows();
304        }
305    };
306    return a;
307}
308
309
310
311 !function(){var e={"buttons":[
312     {"type":"whatsapp","token":"79180010871"},
313         {"type":"telegram","token":"evrostroy1"} ,
314         {"type":"max","token":"https://max.ru/u/f9LHodD0cOLxx7O5nmwFmfHNXWUtRMD5Wk1nJrb_EArvMdYA79A7r4D23zk"}
315     ],"color":"#F0645A","position":"left","bottomSpacing":"40","callToActionMessage":"Напишите нам","displayOn":"everywhere"},t=document.location.protocol+"//evrostroy-1.ru",o=document.createElement("script");o.type="text/javascript",o.async=!0,o.src=t+"/local/js/watg.js",o.onload=function(){new BhWidgetPage.init(e)};var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(o,n)}();

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.