PageSourceSearch

https://shop.svendborg-brakes.com/js/store/ucommerce/uCommerce.store.productpage.js?d=11100810

js svendborg-brakes.com collected 2026-10-08 19:07:12 UTC 5,530 bytes, 152 lines download raw bytes

1//var _itemAddedAlert = null;
2$(function () {
3    //relateVariations($('#product-sku'), $('#variation-collarsize'), $('#variation-colour'), $('#add-to-basket'));
4    //enableAddToCartWhenSelected($('#add-to-basket'), $('.variant'));
5    wireupAddToCartButton($('#add-to-basket'), $('#catalog-id'), $('#product-sku'), $('#quantity-to-add'));
6
7    // Wire up related products
8    $('.add-to-basket').each(function () {
9        var quantity = $(this).data("moq");
10        wireupRelatedAddToCartButton(this, quantity);
11    });
12
13    wireupRatings($('.rating'));
14
15    //$("#quantity-to-add").change(function () {
16    //    var valid = $("#quantity-to-add").valid()
17    //    console.log(valid)
18    //});
19    $(":input#quantity-to-add").bind('keyup mouseup', function () {
20        if (!$(this).valid()) {
21        }
22
23    });
24
25});
26//function relateVariations(sku) {
27//	//updateVariationOptions(sku, size, colour, true);
28//	//size.change(function () {
29//		// Reset the colour options
30//		//$('option:first', colour).attr('selected', true);
31//		//updateVariationOptions(sku, size, colour, true);
32//	});
33//	colour.change(function () {
34//		updateVariationOptions(sku, size, colour, true);
35//	});
36//};
37function enableAddToCartWhenSelected(addToCartButton, variantInputs) {
38    if (variantInputs.length == 0)
39        return;
40
41    addToCartButton.removeClass('btn-success').addClass('disabled');
42
43    variantInputs.change(function () {
44        updateAddToCartButton(addToCartButton, variantInputs);
45    });
46};
47function updateAddToCartButton(addToCartButton, variantInputs) {
48    if (variantInputs.length == 0)
49        return;
50
51    var empty = variantInputs.filter(function () { return this.value === ""; });
52
53    // If the user has made a valid selection enable the add to cart button
54    if (empty.length == 0) {
55        addToCartButton.removeClass('disabled').addClass('btn-success').removeAttr('disabled');
56    } else {
57        addToCartButton.removeClass('btn-success').addClass('disabled').attr('disabled', 'disabled');
58    }
59};
60function wireupRatings(radios) {
61    $('#review-form').hide();
62    $('label', radios).each(function () {
63        var t = $(this);
64        t.addClass('off');
65        $('input:radio', t).hide();
66        setStarHoverOutState($('i', t));
67        t.hover(function () {
68            var parent = $(this);
69            var labels = parent.prevAll('label');
70            setStarHoverState($('i', labels));
71            setStarHoverState($('i', parent));
72        }, function () {
73            var parent = $(this);
74            var labels = parent.prevAll('label');
75            if (!parent.hasClass('selected')) {
76                setStarHoverOutState($('i', labels));
77                setStarHoverOutState($('i', parent));
78            }
79        });
80        t.click(function () {
81            var parent = $(this);
82            parent.addClass('selected');
83            $('#review-form').slideDown();
84        });
85    });
86};
87function setStarHoverState(label) {
88    label.addClass('icon-star').removeClass('icon-star-empty');
89}
90function setStarHoverOutState(label) {
91    label.addClass('icon-star-empty').removeClass('icon-star');
92}
93
94function wireupAddToCartButton(addToCartButton, catalogIdInput, skuInput, quantityInput) {
95
96    addToCartButton.click(function (e) {
97        if ($(":input#quantity-to-add").valid()) {
98            $.uCommerce.addToBasket(
99                {
100                    catalogId: catalogIdInput.val(),
101                    sku: skuInput.val(),
102                    quantity: quantityInput.val()
103                },
104                function () {
105                    $.uCommerce.getBasket({}, function (data) {
106                        $('#miniBasket .hoverContent').slideDown('slow').delay(1000).slideUp('slow');
107                        $('#MiniBasketOrderLineContent').trigger('UpdateMiniBasketContent', data);
108                        $('#miniBasket .itemCount').css("display", "block");
109                    });
110                }
111            );
112        }
113    });
114};
115
116// Todo: This code is a duplicate of uCommerce.store.catalogpage.wireupAddToCartButton. Code should be consolidated.
117function wireupRelatedAddToCartButton(addToBasketContainer, quantity) {
118    var addToBasketButton = $('.add-to-basket-btn', addToBasketContainer);
119
120    var catalogIdInput = $('.catalog-id', addToBasketContainer);
121    var skuInput = $('.product-sku', addToBasketContainer);
122
123    addToBasketButton.click(function (e) {
124        $.uCommerce.addToBasket(
125            {
126                catalogId: catalogIdInput.val(),
127                sku: skuInput.val(),
128                quantity: quantity
129            },
130            function () {
131                $.uCommerce.getBasket({}, function (data) {
132                    $('#miniBasket .hoverContent').slideDown('slow').delay(1000).slideUp('slow');
133                    $('#MiniBasketOrderLineContent').trigger('UpdateMiniBasketContent', data);
134                    $('#miniBasket .itemCount').css("display", "block");
135                });
136            }
137        );
138    });
139};
140
141function getObjectsByKey(obj, key, val) {
142    var objects = [];
143    for (var i in obj) {
144        if (!obj.hasOwnProperty(i)) continue;
145        if (typeof obj[i] == 'object') {
146            objects = objects.concat(getObjectsByKey(obj[i], key, val));
147        } else if (i == key && obj[key] == val) {
148            objects.push(obj);
149        }
150    }
151    return objects;
152}

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.