PageSourceSearch

https://domaviator.ru/local/templates/mavis/assets/js/helper.js?17259931615057

js domaviator.ru collected 2026-09-26 08:39:00 UTC 5,057 bytes, 111 lines download raw bytes

1(function(global) {
2    // console.log('helper included');
3    /**
4     * Класс хэлпер по колтачу, который доступен во всех js файлах.
5     */
6    let Calltouch = {
7
8        calltouch_form_key: 'default', // ключ автопрозвона в колтаче
9        /**
10         * Настройки виджета и отображение формы. (для теста или отображения настроек)
11         */
12        getCalltouchSettings(){
13            if (typeof window.ctw == "undefined") return false;
14            window.ctw.getRouteKeyData(this.calltouch_form_key, function(success, data){
15                console.log(success, data);
16                if (success) {
17                    if (data.widgetFound) {
18                        if (data.widgetData.callCenterWorkingMode == 'working_hours') {
19                            console.log('колл-центр работает, отображение виджета');
20                        } else {
21                            if (data.widgetData.collectNonWorkingRequests) {
22                                console.log('колл-центр не работает, но можем отобразить форму нерабочего времени');
23                            } else {
24                                console.log('колл-центр не работает, заявки в нерабочее время не собираем');
25                            }
26                        }
27                    } else {
28                        console.log('не найден включенный виджет по routeKey, либо услуга обратного звонка не активна');
29                    }
30                } else {
31                    console.log('во время обработки произошла ошибка');
32                    console.log(data)
33                }
34            });
35        },
36        /**
37         * Отправляем заявку на автопрозвон
38         * @param name
39         * @param phone
40         */
41        sendRequest({name, phone}){
42            if (typeof window.ctw == "undefined") return false;
43            // Форматируем номер, чтобы получилось без лишних знаков
44            phone = phone.replace(/[^0-9]/gim, "");
45            window.ctw.createRequest(
46                this.calltouch_form_key,
47                phone,
48                [
49                    {"name": "Имя", "value": name},
50                    {"name": "phone", "value": phone}
51                ],
52                function (success, data) {
53                    if (success) {
54                        console.log(
55                            "Создана заявка на колбек, идентификатор: " +
56                            data.callbackRequestId
57                        );
58                    } else {
59                        switch (data.type) {
60                            case "request_throttle_timeout":
61                            case "request_throttle_count":
62                                console.log(
63                                    "Достигнут лимит создания заявок, попробуйте позже"
64                                );
65                                break;
66                            case "request_phone_blacklisted":
67                                console.log("номер телефона находится в черном списке");
68                                break;
69                            case "validation_error":
70                                console.log("были переданы некорректные данные");
71                                break;
72                            default:
73                                console.log(
74                                    "Во время выполнения запроса произошла ошибка: " + data.type
75                                );
76                        }
77                    }
78                }
79            );
80        }
81    };
82
83
84    let Helper = {
85        /**
86         * Установка кук
87         * @param name
88         * @param value
89         * @param minutes
90         */
91        setCookie(name, value, minutes = 10){
92            console.log('setted');
93            var date = new Date(new Date().getTime() + minutes * 60 * 1000);
94            document.cookie = ""+name+"="+value+"; path=/; expires=" + date.toUTCString();
95        },
96        /**
97         * Получение кук
98         * @param name
99         * @returns {string|undefined}
100         */
101        getCookie(name) {
102            let matches = document.cookie.match(new RegExp(
103                "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
104            ));
105            return matches ? decodeURIComponent(matches[1]) : undefined;
106        }
107    };
108
109    global.Calltouch = Calltouch;
110    global.Helper = Helper;
111})(window);

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.