PageSourceSearch

https://www.sportvision.ro/nb-public/themes/nbshop5_v5_8/blocks/header/autocomplete_v1/script.js?ver=1005_4.1

js sportvision.ro collected 2026-09-29 23:02:03 UTC 8,219 bytes, 264 lines download raw bytes

1function initAutocomplateSlider(){
2
3        var mainSliderElementId = '.autocomplete-banner > .slider-init';
4        var mainSliderOptions   = {
5            slidesToShow: 1,
6            arrows: false,
7            dots: true,
8        };
9        $(mainSliderElementId).each(function () {
10            nbshopJS.initSlider(this, mainSliderOptions);
11        });
12
13}
14
15function initAutocomplateCategoriesSlider(){
16
17        var mainSliderElementId = '.autocomplete-categories-wrapper .slider-init';
18        var mainSliderOptions   = {
19            dots: false,
20            arrows: false,
21            autoplay: false,
22            infinite: false,
23            slidesToShow: 1,
24            slidesToScroll: 1,
25            variableWidth: true,
26            swipeToSlide:true,
27        };
28        $(mainSliderElementId).each(function () {
29            nbshopJS.initSlider(this, mainSliderOptions);
30        });
31}
32
33function initAutocomplateBrandsSlider(){
34
35    var mainSliderElementId = '.autocomplete-brands-wrapper .slider-init';
36    var mainSliderOptions   = {
37        dots: false,
38        arrows: false,
39        autoplay: false,
40        infinite: false,
41        slidesToShow: 1,
42        slidesToScroll: 1,
43        variableWidth: true,
44        swipeToSlide:true,
45    };
46    $(mainSliderElementId).each(function () {
47        nbshopJS.initSlider(this, mainSliderOptions);
48    });
49
50}
51
52function initAutocomplateProductCategories(){
53
54    var mainSliderElementId = '.autocomplate-product-categories > .slider-init';
55    var mainSliderOptions   = {
56        dots: false,
57        arrows: false,
58        autoplay: false,
59        infinite: false,
60        // slidesToShow: 3.5,
61        slidesToScroll: 1,
62        variableWidth: true,
63    };
64    $(mainSliderElementId).each(function () {
65        nbshopJS.initSlider(this, mainSliderOptions);
66    });
67
68}
69
70function initAutocomplateArticleCategories(){
71
72    var mainSliderElementId = '.autocomplate-article-categories > .slider-init';
73    var mainSliderOptions   = {
74        dots: false,
75        arrows: false,
76        autoplay: false,
77        infinite: false,
78        // slidesToShow: 3.5,
79        slidesToScroll: 1,
80        variableWidth: true,
81    };
82    $(mainSliderElementId).each(function () {
83        nbshopJS.initSlider(this, mainSliderOptions);
84    });
85
86}
87
88function initAutocomplateTabs(){
89
90    $(".autocomplete-popup-wrapper .lists-tabs ul.items-wrapper .item").click(function(){
91        var actionUrl = $(this).data('action');
92
93        if(actionUrl){
94            $('#search-form').attr('action', actionUrl);
95        }
96
97        $(".autocomplete-popup-wrapper .lists-tabs ul.items-wrapper .item").removeClass('active');
98        $(this).addClass('active');
99
100        let tab = $(this).attr('data-tab');
101        $('.autocomplete-popup-wrapper .lists-tabs .tab-content > .tab-pane').removeClass('active');
102        $('#'+tab).addClass('active');
103
104    });
105
106
107}
108
109function autocomplete(){
110    $button = $('.autocomplete-button, .autocomplete-close');
111    $body = $('.uc-home');
112
113    $button.click(function(){
114        $body.toggleClass('srch');
115    });
116
117    if(nbshopJS.width() > 767) {
118
119        $('.autocomplete-button').append($('.search'));
120
121    }
122
123    $('.autocomplete-input, .autocomplete-popup-wrapper').click(function(e){
124        e.stopPropagation();
125    });
126
127    window.addEventListener('searchSuggestAutocomplateNew', function () {
128
129        $('.autocomplete-input, .autocomplete-popup-wrapper').click(function(e){
130            e.stopPropagation();
131        });
132    });
133};
134
135//izbor velicina search
136//searchSuggestAutocomplateNew
137function handleProductSizesInSearch() {
138
139    var options = $('.product .item.autocomplete-product-item .options-wrapper');
140
141    if(typeof options === "undefined" || !options.hasClass('search-buy-active')) {
142        return;
143    }
144
145    let buyButton =$('.product .item.autocomplete-product-item .options-wrapper .product-sizes');
146    let searchProductsSliderPosition = false;
147
148    $(window).on("searchSuggestAutocomplateNew", function () {
149        let productsWrapper = $('.autocomplete-products-wrapper');
150        if(typeof productsWrapper !== "undefined" && productsWra
150pper && productsWrapper.length > 0) {
151            buyButton = productsWrapper.find('.product-sizes');
152            searchProductsSliderPosition = $(productsWrapper).offset().top;
153            if($(window).width() < 576) {
154                searchProductsSliderPosition = $('.autocomplete-results').offset().top;
155            }
156            handleButtonSize(buyButton, searchProductsSliderPosition);
157            closeSizesWrapper();
158        }
159    })
160
161    $('.autocomplete-button-simple').click(function () {
162        if($('.autocomplete-products-wrapper').length !== 0) {
163            return;
164        }
165        setTimeout(function () {
166            searchProductsSliderPosition = $('.product.autocomplete-products-list-wrapper').offset().top;
167            handleButtonSize(buyButton, searchProductsSliderPosition);
168            closeSizesWrapper();
169        }, 200)
170    })
171
172
173    let searchInput = $('.autocomplete .autocomplete-input');
174    searchInput.on('keyup', function() {
175        if(searchInput.val() === '') {
176            setTimeout(function() {
177                buyButton =$('.product .item.autocomplete-product-item .options-wrapper .product-sizes');
178                searchProductsSliderPosition = $('.product.autocomplete-products-list-wrapper').offset().top;
179                handleButtonSize(buyButton, searchProductsSliderPosition);
180                closeSizesWrapper();
181            } , 1000)
182        }
183    });
184
185
186}
187
188function handleButtonSize(buyButton, searchProductsSliderPosition) {
189    $(buyButton).click(function () {
190        $(buyButton).parent().removeClass('selected-button');
191        $(this).parent().addClass('selected-button');
192        let distance = $(this).offset().top - searchProductsSliderPosition; //rastojanje izmedju kliknutog dugmeta i pocetka wrapper-a sa proizvodima
193        let sizesSelectorWrapper = $(this).find('.sizes-selector-wrapper');
194        let sizesSelectorWrapperHeight = sizesSelectorWrapper.height() + 20; //20 jer padding: 10px
195
196        if(distance >= sizesSelectorWrapperHeight) {
197            sizesSelectorWrapper.css('bottom','40px')
198        } else {
199            let bottomDown = (sizesSelectorWrapperHeight + 15) * (-1);
200            sizesSelectorWrapper.css('bottom', bottomDown + 'px');
201        }
202    })
203}
204
205function closeSizesWrapper() {
206    $(document).click(function (e) {
207        if(!$(e.target).parents().hasClass('sizes-selector-wrapper')) {
208            $('.autocomplete-product-item').removeClass('active');
209        }
210    })
211
212    $(".autocomplete-popup-wrapper .col-xs-12").click(function (e) {
213        if(!$(e.target).parents().hasClass('autocomplete-product-item')) {
214            console.log(789)
215            $('.autocomplete-product-item').removeClass('active');
216        }
217    })
218}
219
220$(document).ready(function () {
221    initAutocomplateSlider();
222    initAutocomplateTabs();
223    autocomplete();
224    handleProductSizesInSearch();
225
226    if($(window).width() < 767) {
227        initAutocomplateCategoriesSlider();
228        initAutocomplateBrandsSlider();
229        initAutocomplateArticleCategories();
230        initAutocomplateProductCategories();
231    }
232
233    $(window).on("search_sugest_v1_blockLoaded", function () {
234        initAutocomplateSlider();
235        initAutocomplateTabs();
236        autocomplete();
237        handleProductSizesInSearch();
238        initAutocomplateProductCategories();
239        initAutocomplateArticleCategories();
240        if($(window).width() < 767) {
241            initAutocomplateCategoriesSlider();
242            initAutocomplateBrandsSlider();
243            initAutocomplateArticleCategories();
244            initAutocomplateProductCategories();
245        }
246
247    })
248
249    window.addEventListener('searchSuggestAutocomplateNew', function (e) {
250        initAutocomplateSlider();
251        initAutocomplateTabs();
252        initAutocomplateProductCategories();
253        initAutocomplateArticleCategories();
254        if($(window).width() < 767) {
255            initAutocomplateCategoriesSlider();
256            initAutocomplateBrandsSlider();
257            initAutocomplateArticleCategories();
258            initAutocomplateProductCategories();
259        }
260    });
261
262
263
264});

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.