PageSourceSearch

https://lunsvet.com/bitrix/templates/aspro_max/js/custom.js

js lunsvet.com collected 2026-10-04 16:33:24 UTC 7,060 bytes, 191 lines download raw bytes

1setTimeout(() => {
2    document.getElementById("title-search-input_fixed").maxLength = 250;
3}, "2000");
4setTimeout(() => {
5    (function (w, d, u) {
6        var s = d.createElement("script");
7        s.async = true;
8        s.src = u + "?" + ((Date.now() / 60000) | 0);
9        var h = d.getElementsByTagName("script")[0];
10        h.parentNode.insertBefore(s, h);
11    })(window, document, "https://portal.lunsvet.com/upload/crm/site_button/loader_2_o0gqpz.js");
12}, "3000");
13window.addEventListener("onBitrixLiveChat", function (event) {
14    var widget = event.detail.widget;
15    widget.setOption("checkSameDomain", false);
16});
17var url = window.location.href;
18$(document).ready(function () {
19    url = window.location.href;
20    if (url.indexOf('ORDER_ID') > 0) {
21        $(".survey-button-widget").removeClass("hidden");
22        $(".newsitereviewbutton").addClass("hidden");
23    }
24    if (window.innerWidth >= 992) 
25    {
26        if (url.indexOf('/?q=') > 0) {
27            if ($(".slide-block__head.title-menu.font-bold.colored_theme_hover_bg-block.darken.font_upper_md").hasClass("closed")) {
28                $(".svg.svg-inline-down.colored_theme_hover_bg-el").click();
29                console.log('Меню закрылось');
30            }
31        } else {
32            if ($(".slide-block__head.title-menu.font-bold.colored_theme_hover_bg-block.darken.font_upper_md").hasClass("closed")) {
33                $(".svg.svg-inline-down.colored_theme_hover_bg-el").click();
34                console.log('Меню открылось');
35            }
36        }
37    }
38});
39
40if (window.digiLayer === undefined) {
41    window.digiLayer = {};
42}
43
44$(function () {
45    BX.addCustomEvent('OnBasketChange', function (eventdata) {
46        console.log(eventdata);
47    });
48
49    BX.addCustomEvent('onCompleteAction', function (eventdata) {
50        console.log(eventdata);
51        if (eventdata.action === 'loadBasket') {
52            updateCartState();
53        }
54    });
55
56    window.digiLayer.cartState = function () {
57        if (window.digiLayer.cartStateData !== undefined) {
58            return window.digiLayer.cartStateData.withQuantity;
59        }
60
61        if (window.basketOnLoadPage.cartStateData !== undefined) {
62            return window.basketOnLoadPage.cartStateData.withQuantity;
63        }
64
65        return {};
66    };
67
68    window.digiLayer.addToCart = function (offer_id, amount = 1) {
69        if (amount === 0) {
70            return this.removeFromCart(offer_id);
71        }
72
73        return new Promise(function(resolve, reject) {
74            let btnOnPage = $('.to-cart[data-item="' + offer_id + '"]');
75            if (btnOnPage.length > 0) {
76                let timeoutReject = setTimeout(function () {
77                    reject('Превышено время ожидания');
78                }, 10000);
79
80                let eventFunction = function (eventdata) {
81                    if (eventdata.action === 'loadBasket') {
82                        clearTimeout(timeoutReject);
83                        resolve(true);
84
85                        BX.removeCustomEvent('onCompleteAction', eventFunction);
86                    }
87                };
88
89                BX.addCustomEvent('onCompleteAction', eventFunction);
90
91                btnOnPage.click();
92            } else {
93                $.ajax({
94                    type: "POST",
95                    url: arAsproOptions["SITE_DIR"] + "ajax/item.php",
96                    data: {
97                        prop: [0],
98                        quantity: amount,
99                        add_item: 'Y',
100                        rid: '',
101                        offers: 'N',
102                        iblockID: 36,
103                        part_props: 'N',
104                        add_props: 'Y',
105                        props: '""',
106                        item: offer_id,
107                        basket_props: ""
108                    },
109                    dataType: "json",
110                    success: function (data) {
111                        getActualBasket(36);
112
113                        arStatusBasketAspro = {};
114
115                        if (data !== null) {
116                            if ("STATUS" in data) {
117                                if (data.MESSAGE_EXT === null) data.MESSAGE_EXT = "";
118                                if (data.STATUS === "OK") {
119                                    addBasketCounter(offer_id);
120
121                                    if ($("#ajax_basket").length) reloadTopBasket("add", $("#ajax_basket"), 200, 5000, "Y");
122
123                                    basketTop('reload', $(".top_basket").find(".basket_hover_block"));
124                                    resolve(true);
125                                } else {
126                                    reject(BX.message(data.MESSAGE) + " <br/>" + data.MESSAGE_EXT);
127                                }
128                            } else {
129                                reject(BX.message("CATALOG_PARTIAL_BASKET_PROPERTIES_ERROR"));
130                            }
131                        } else {
132                            addBasketCounter(item);
133                            if ($("#ajax_basket").length) reloadTopBasket("add", $("#ajax_basket"), 200, 5000, "Y");
134
135                            reject('ajax result is null');
136                        }
137                    },
138                });
139            }
140        });
141    };
142
143    window.digiLayer.removeFromCart = function (offer_id) {
144        return new Promise(function(resolve, reject) {
145            try {
146                let basketId;
147                if (window.digiLayer.cartStateData !== undefined) {
148                    basketId = window.digiLayer.cartStateData.withBasketId[offer_id];
149                } else {
150                    basketId = window.basketOnLoadPage.cartStateData.withBasketId[offer_id];
151                }
152
153                if (basketId === undefined) {
154                    resolve(true);
155                    return;
156                }
157
158                $.post(
159                    arMaxOptions['SITE_DIR'] + 'ajax/item.php',
160                    'product_id=' + offer_id + '&delete_basket_id=' + basketId,
161                    $.proxy(function(){
162                        resolve(true);
163                        updateCartState();
164                        basketTop('reload', $(".top_basket").find(".basket_hover_block"));
165                        reloadBasketCounters();
166                    })
167                );
168            } catch (error) {
169                reject(error);
170            }
171        });
172    };
173});
174
175function updateCartState () {
176    $.ajax({
177        type: "GET",
178        url: "/ajax/cartState.php",
179        dataType: "json",
180        success: function (data) {
181            if (window.digiLayer === undefined) {
182                window.digiLayer = {};
183            }
184
185            window.digiLayer.cartStateData = data;
186            },
187        error: function(req, text, error){ // отслеживание ошибок во время выполнения ajax-запроса
188            console.error('Упс! Ошибочка: ' + text + ' | ' + error);
189        }
190    })
191}

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.