PageSourceSearch

https://www.borderstates.com/_ui/responsive/common/js/acc.order.js

js borderstates.com collected 2026-10-03 21:43:28 UTC 35,904 bytes, 824 lines download raw bytes

1ACC.order = {
2
3    _autoload: [
4        "bindClearFormButton",
5        "backToOrderHistory",
6        "bindMultidProduct",
7        "orderSearchFormInit",
8        "bindDropDownsBySoldTo",
9        "addAllToCartOrderHistory",
10        "addSelectedToCartOrderHistory",
11        "addToCartOrder",
12        "addToCartAllOrder",
13        "showHideQtyTextbox",
14        "unrollShippingAndComponentsDetails",
15        "bindRefineOrderHistorySearch",
16        "requestOnlineAvailability",
17        "productCategoryList",
18        "bindViewKitDetails",
19        "bindDisplayAddAllToCart",
20        "bindOrderHistorySearchToggle",
21        "bindOrderDetailsActions",
22        "bindCheckUnitQuantity"
23    ],
24
25    bindDisplayAddAllToCart: function () {
26        if($('.add_to_cart_form').length > 0){
27            $('#addAllToCart_orderHistoryBtn').show();
28            $('#addSelectedToCart_orderHistoryBtn').show();
29        }
30    },
31
32    bindViewKitDetails: function (event) {
33        $(document).on('click', '.view-kit-details', function (event) {
34           event.preventDefault();
35           var components = $(this).siblings('.kit-components');
36           components.toggle();
37           var icon = $(this).find('.icon');
38           icon.toggleClass('glyphicon-plus-sign');
39           icon.toggleClass('glyphicon-minus-sign');
40        });
41    },
42
43    requestOnlineAvailability: function () {
44        $('[data-toggle="tooltip"]').tooltip();
45
46        $(document).on("click", '.js-requestOnlineAvailability', function (event) {
47            event.preventDefault();
48            var productcode = $(this).data("productcode");
49            var productdescription = $(this).data("productdescription");
50            var url = $(this).data("url");
51
52            $.ajax({
53                url: url,
54                data: {productCode:productcode, productDesc: productdescription},
55                type: 'POST',
56                dataType: "text",
57                success: function (data) {
58                    window.location.reload();
59                },
60                error: function () {
61                    window.location.reload();
62                    console.log("Failed to send request for product : " + productcode);
63                }
64            });
65        });
66    },
67
68    productCategoryList: function () {
69        $(document).on("click", ".see-category", function (e) {
70            e.preventDefault();
71            $(".product-list-rest").toggle();
72            $(".see-less").toggle();
73            $(".see-more").toggle();
74        });
75    },
76
77        backToOrderHistory: function () {
78        $(".orderBackBtn > button").on("click", function () {
79            var sUrl = $(this).data("backToOrders");
80            window.location = sUrl;
81        });
82    },
83
84    bindMultidProduct: function () {
85        // link to display the multi-d grid in read-only mode
86        $(document).on("click", '.js-show-multiD-grid-in-order', function (event) {
87            ACC.multidgrid.populateAndShowGrid(this, event, true);
88            return false;
89        });
90
91        // link to display the multi-d grid in read-only mode
92        $(document).on("click", '.showMultiDGridInOrderOverlay', function (event) {
93            ACC.multidgrid.populateAndShowGridOverlay(this, event);
94        });
95
96    },
97
98    orderSearchFormInit: function () {
99        $(".datepicker input").attr("autocomplete", "off");
100
101        var todayDate = new Date();
102        var monthMaxPast = ($('#lastMonthsMaxDisplay').val() == null ? 18 : parseInt($('#lastMonthsMaxDisplay').val()));
103        var maxPastDate = new Date(todayDate.setMonth(todayDate.getMonth()-monthMaxPast));
104
105        $(".orderFromDatePicker").datepicker(({ minDate: maxPastDate }));
106        $(".orderToDatePicker").datepicker(({ minDate: maxPastDate }));
107
108
109    },
110
111    bindDropDownsBySoldTo: function () {
112        $(document).on("change", '#form_orderHistoryForm_account #selectSoldTo select', function () {
113            $("#form_orderHistoryForm_account #order\\.payer").empty();
114            // Disables the select box while no results are in there
115            $("#form_orderHistoryForm_account #order\\.payer").enable(false);
116            ACC.order.displayPayerBySoldTo($(this).val(), "form_orderHistoryForm_account", "#order\\.payer");
117        })
118
119        $(document).on("change", '#form_orderHistoryForm_company #selectSoldTo select', function () {
120            $("#form_orderHistoryForm_company #order\\.payer").empty();
121            // Disables the select box while no results are in there
122            $("#form_orderHistoryForm_company #order\\.payer").enable(false);
123            ACC.order.displayPayerBySoldTo($(this).val(), "form_orderHistoryForm_company", "#order\\.payer");
124            $("#form_orderHistoryForm_company #order\\.user").empty();
125            // Disables the select box while no results are in there
126            $("#form_orderHistoryForm_company #order\\.user").enable(false);
127            ACC.order.displayUserBySoldTo($(this).val(), "form_orderHistoryForm_company","#order\\.user");
128        })
129    },
130
131    displayPayerBySoldTo: function (soldToCode, owner, formIdElementPayer) {
132        var formIdElementInactivePayer = "#inactivePayer";
133        var getPayerDetailsUrl = ACC.config.encodedContextPath + "/my-account-api/getPayerDetails";
134        $("#" + owner + " " + formIdElementPayer).empty();
135        $("#" + owner + " " + formIdElementInactivePayer).empty();
136        if(owner == "invoiceSearchForm")
137        {
138            $("#" + owner + " " + formIdElementPayer).append($("<option></option>")
139                .attr("value", "ALL").text("Job Account"));
140            $("#" + owner + " " + formIdElementInactivePayer).append($("<option></option>")
141                .attr("value", "ALL").text("Job Account"));
142        }
143        else {
144            $("#" + owner + " " + formIdElementPayer).append($("<option></option>")
145                .attr("value", "ALL").text("All"));
146            $("#" + owner + " " + formIdElementInactivePayer).append($("<option></option>")
147                .attr("value", "ALL").text("All"));
148        }
149
150        // Do not call filterPayers if the soldToCode is empty (not chosen)
151        if ((soldToCode == null) || (soldToCode == "") || (soldToCode == "ALL")) {
152            $("#" + owner + " " + formIdElementPayer).prop("disabled", true);
153            $("#" + owner + " " + formIdElementInactivePayer).prop("disabled", true);
154            return;
155        }
156        else {
157            $("#" + owner + " " + formIdElementPayer).prop("disabled", false);
158            $("#" + owner + " " + formIdElementInactivePayer).prop("disabled", false);
159        }
160
161        $.ajax({
162            type: 'GET',
163            url: getPayerDetailsUrl,
164            dataType: "json",
165            data: {'b2bUnitCode': soldToCode},
166            success: function (response) {
167
168                $.each(response, function (key, value) {
169                    $("#" + owner + " " + formIdElementPayer).append($("<option></option>")
170                        .attr("value", value.id)
171                        .text(value.companyName))
172                });
173                // Enables the select box after the result have been added
174                $("#" + owner + " " + formIdElementPayer).enable();
175            },
176            error: function (xhr, ajaxOptions, thrownError) {
177                if (xhr.status == 404) {
178                    alert(thrownError);
179                }
180                $("#" + owner + " " + formIdElementPayer).enable();
181            }
182        });
183
184        var getInactivePayerDetailsUrl = ACC.config.encodedContextPath + "/my-account-api/getInactivePayerDetails";
185        $.ajax({
186            type: 'GET',
187            url: getInactivePayerDetailsUrl,
188            dataType: "json",
189            data: {'b2bUnitCode': soldToCode},
190            success: function (response) {
191
192                $.each(response, function (key, value) {
193                    $("#" + owner + " " + formIdElementInactivePayer).append($("<option></option>")
194                        .attr("value", value.id)
195                        .text(value.companyName))
196                });
197                // Enables the select box after the result have been added
198                $("#" + owner + " " + formIdElementInactivePayer).enable();
199            },
200            error: function (xhr, ajaxOptions, thrownError) {
201                if (xhr.status == 404) {
202                    alert(thrownError);
203                }
204                $("#" + owner + " " + formIdElementInactivePayer).enable();
205            }
206        });
207
208
209    },
210
211    bindClearFormButton: function () {
212
213        $(document).on("click", '#clearFormBtn', function () {
214            window.location.replace(ACC.config.encodedContextPath + '/my-account/orders?showSearchOptions=true');
215        });
216    },
217
218    bindOrderDetailsActions: function () {
219        $(document).on("click", '.js-order-details-back', function () {
220            window.history.back();
221        });
222        $(document).on("click", '.js-order-details-print', function () {
223            window.print();
224        });
225    },
226
227    displayUserBySoldTo: function (soldToCode, owner, formIdElementUser) {
228        $("#" + owner + " " + formIdElementUser).empty();
229        if(owner =="invoiceSearchForm")
230        {
231            $("#" + owner + " " + formIdElementUser).append($("<option></option>")
232                .attr("value", "ALL").text("User"));
233        }
234        else {
235            $("#" + owner + " " + formIdElementUser).append($("<option></option>")
236                .attr("value", "ALL").text("All"));
237        }
238
239        // Do not call filterPayers if the soldToCode is empty (not chosen)
240        if ((soldToCode == null) || (soldToCode == "") || (soldToCode == "ALL")) {
241            $("#" + owner + " " + formIdElementUser).enable();
242            return;
243        }
244
245        $.ajax({
246            type: 'GET',
247            url: ACC.config.encodedContextPath + "/my-account/getCustomerDetails",
248            dataType: "json",
249            data: {'b2bUnitCode': soldToCode},
250            success: function (response) {
251
252                $.each(response, function (key, value) {
253                    $("#" + owner + " " + formIdElementUser).append($("<option></option>")
254                        .attr("value", value.uid)
255                        .text(value.firstName + " " + value.lastName))
256                });
257                // Enables the select box after the result have been added
258                $("#" + owner + " " + formIdElementUser).enable();
259            },
260            error: function (xhr, ajaxOptions, thrownError) {
261                if (xhr.status == 404) {
262                    alert(thrownError);
263                }
264                $("#" + owner + " " + formIdElementUser).enable();
265            }
266        });
267
268    },
269
270    addAllToCartOrderHistory: function() {
271        $(document).on("click", '#addAllToCart_orderHistoryBtn', function () {
272            var cartEntries = [];
273            $('.add_to_cart_form').each(function () {
274                var obj = {};
275                obj.product = {};
276                obj.product.code = $(this).find("input[name='productCodePost']").val();
277                if(!cartEntries.some(p => p.product.code ===  obj.product.code)) {
278                    obj.product.unit = $(this).find("input[name='uomCode']").val();
279                    obj.quantity = $(this).find("input[name='qty']") && $(this).find("input[name='qty']").val() > 0 ? $(this).find("input[name='qty']").val() : 1;
280                    obj.uomConversionValue = $(this).find("input[name='conversionFactor']") && $(this).find("input[name='conversionFactor']").val() > 0 ? $(this).find("input[name='conversionFactor']").val() : 1;
281                    cartEntries.push(obj);
282                }
283            });
284
285            if(cartEntries.length > 0) {
286                $.ajax({
287                    type: 'POST',
288                    contentType: 'application/json',
289                    url: ACC.config.encodedContextPath + '/cart/addMultipleCart',
290                    data: JSON.stringify({"cartEntries": cartEntries}),
291                    dataType: 'json',
292                    success: function (response) {
293                        ACC.quickorder.handleAddToCartSuccess(response);
294                    },
295                    error: function () {
296                        console.log("error log");
297                    }
298                });
299            }
300        });
301    },
302
303    addSelectedToCartOrderHistory: function() {
304        $(document).on("click", '#addSelectedToCart_orderHistoryBtn', function () {
305        	 var cartEntries = [];
306            $('.selectedOrder').each(function () {
307                var checkedOrder = $(this).find('input[type="checkbox"]').is(':checked');
308                var obj = {};
309                obj.product = {};
310                obj.product.code= $(this).find(".orderHistoryAddtoCartInput_hidden").attr('name');
311                if(checkedOrder && !cartEntries.some(p => p.product.code ===  obj.product.code)) {
312                    obj.product.unit = $(this).find("option:selected").attr('uom');
313                    obj.quantity = parseInt($(this).find(".quantity_text-" + obj.product.code).val());
314                    obj.uomConversionValue = parseInt($(this).find(".packaging_unit-" + obj.product.code).val());
315                    cartEntries.push(obj);
316                }
317            });
318
319        	 $.ajax({
320                 type: 'POST',
321                 contentType: 'application/json',
322                 url: ACC.config.encodedContextPath + '/cart/addMultipleCart',
323                 data: JSON.stringify({ "cartEntries": cartEntries }),
324                 dataType: 'json',
325                 success: function(response) {
326                     ACC.quickorder.handleAddToCartSuccess(response);
327                 },
328                 error: function() {
329                	 console.log("error log");
330                 }
331             });
332        });
333    },
334
335
336    addToCartOrder: function() {
337        $(document).on("click", '#addToCart_orderBtn', function () {
338            var checkedOrders = $('input[type="checkbox"]') // get all checkboxes
339                .filter(':checked')  // get only checked;
340                .each(function(index, x){
341                    var productId = x.id.split("-")[1];
342                    $.ajax({
343                        type: 'POST',
344                        url: ACC.config.encodedContextPath + "/cart/add",
345                        dataType: "json",
346                        data: {'qty': $('#quantity_text-' + productId).val(), 'productC
346odePost': productId , 'productPostPrice' : $('#orderHistoryDataTotalPrice-' + productId).text() },
347                        success: function (response) {
348                            $("#addSuccessMsg").show();
349                            ACC.quickorder.handleAddToCartSuccess(response);
350                        },
351                        error: function (xhr, ajaxOptions, thrownError) {
352                            alert(thrownError);
353                        }
354                    });
355                });
356        });
357    },
358
359    addToCartAllOrder: function() {
360        $(document).on("click", '#addToCart_allOrderBtn', function () {
361            var checkedOrders = $('input[type="checkbox"]') // get all checkboxes
362                .each(function(index, x){
363                    $.ajax({
364                        type: 'POST',
365                        url: ACC.config.encodedContextPath + "/cart/add",
366                        dataType: "json",
367                        data: {'productCodePost': x.id.split("-")[1], 'qty': '1' },
368                        success: function (response) {
369                            ACC.colorbox.close();
370                            var url =  ACC.config.encodedContextPath + "/cart";
371                            window.location.replace(url);
372                        },
373                        error: function (xhr, ajaxOptions, thrownError) {
374                            alert(thrownError);
375                        }
376                    });
377                });
378        });
379    },
380
381
382    showHideQtyTextbox: function () {
383        $(document).on("click", ".results-table .orderCheckBox", function(event) {
384            var targetid = event.target.name.split("-")[1];
385            var selectedDiv = "." + 'add-selected-' + targetid;
386            if ($(this).is(':checked')) {
387                $("." + event.target.name).each(function(){
388                    $(this).prop("checked", true);
389                });
390                $(selectedDiv).show();
391            } else {
392                $("." + event.target.name).each(function(){
393                    $(this).prop("checked", false);
394                });
395                $(selectedDiv).hide();
396            }
397
398            ACC.order.enableDisableSelectedCartButton();
399        } );
400
401    },
402
403    enableDisableSelectedCartButton : function (){
404        if($('input[type="checkbox"]').filter(':checked').length > 0){
405            $('#addSelectedToCart_orderHistoryBtn').prop('disabled', false);
406        }
407        else
408            $('#addSelectedToCart_orderHistoryBtn').prop('disabled', true);
409    },
410
411    unrollShippingAndComponentsDetails : function () {
412        $(document).on("click", "td [name='shipInfo_title']", function(event) {
413            var targetid = event.target.id.split("shipInfo_title_")[1];
414            if ($("tr [name='shipInfo_body_" + targetid + "'").is(":visible"))  {
415                $("tr [name='shipInfo_body_" + targetid + "'").hide();
416                $("tr #shipInfo_header_" + targetid).hide();
417            } else {
418                $("tr [name='shipInfo_body_" + targetid + "'").show();
419                $("tr #shipInfo_header_" + targetid).show();
420            }
421        });
422
423        $(document).on("click", "td [name='components_title']", function(event) {
424            var targetid = event.target.id.split("components_title_")[1];
425            if ($("tr [name='components_body_" + targetid + "'").is(":visible"))  {
426                $("tr [name='components_body_" + targetid + "'").hide();
427            } else {
428                $("tr [name='components_body_" + targetid + "'").show();
429            }
430        });
431    },
432
433
434    bindRefineOrderHistorySearch : function () {
435        $(document).on("click", 'span.glyphicon.glyphicon-sort', function (event) {
436            var splitIconId = event.target.id.split("-");
437            var colName = splitIconId[0];
438            var sortOrder = splitIconId[1];
439
440            $("#refineForm #sortCol").val(colName);
441            $("#refineForm #sortOrder").val(sortOrder);
442            $("#refineForm").submit();
443        });
444        $(document).on("change", '[name="rowsPerPage"]', function (event) {
445            $('[name="rowsPerPage"]').val(this.value);
446            var defaultAccount = $('#orderHistoryResultType').val();
447            if (defaultAccount != null && (defaultAccount == true || defaultAccount == 'true')) {
448                $('#form_orderHistoryForm_account').submit();
449            } else {
450                $('#form_orderHistoryForm_company').submit();
451            }
452        });
453        $(document).on("click", '.bse-th', function (event) {
454           var colName = $(event.target).data('column');
455           if (colName) {
456               $('[name="sortColumn"]').val(colName);
457               var curCol =  $(event.target).data('sort-column');
458               var curOrder = $(event.target).data('sort-order');
459               if (colName == curCol) {
460                   $('[name="sortOrder"]').val(curOrder == "ASC" ? "DESC" : "ASC");
461               } else {
462                   $('[name="sortOrder"]').val("ASC");
463               }
464               var defaultAccount = $('#orderHistoryResultType').val();
465               if (defaultAccount != null && (defaultAccount == true || defaultAccount == 'true')) {
466                   $('#form_orderHistoryForm_account').submit();
467               } else {
468                   $('#form_orderHistoryForm_company').submit();
469               }
470           }
471        });
472    },
473
474    bindCheckUnitQuantity: function () {
475        $('.js-checkUnitQuantity').on('change',ACC.order.validateUnitQuantity);
476    },
477
478    bindOrderHistorySearchToggle: function (){
479        $(".js-search-history-toggle").click(function(){
480            $(this).toggleClass("open");
481            $("#showSearchOptions").val( $(this).hasClass("open"))
482            $('a[href*="/orders/search?"]').each(function(  ) {
483                var currentHref = $( this ).attr('href');
484                if (currentHref.indexOf('showSearchOptions') >= 0) {
485                    var newparam = '&showSearchOptions=' + $("#showSearchOptions").val() +'&';
486                    var newhref = currentHref.replace(/&showSearchOptions=(.*?)&/g,newparam )
487                    $( this ).attr('href', newhref)
488                }
489            });
490        });
491        if ($("#showSearchOptions").val() == "true" && $("#form_orderHistoryForm_company").length>0) {
492            $(".js-search-history-toggle").click();
493        }
494    },
495
496    validateUnitQuantity : function () {
497    var minQty = parseInt($(this).parent().find('.orderHistoryAddtoCartInput_hidden').val());
498    var errMsg= "Minimum quantity requirement of "+ minQty +" was not met.";
499    var productId = $(this).parent().find(".orderHistoryAddtoCartInput_hidden").attr('name');
500    var inputQty = parseInt($(this).parent().find(".quantity_text-" + productId).val());
501    var selectUnit = parseInt($(this).parent().find(".packaging_unit-" + productId).val());
502    var totalQty = inputQty * selectUnit;
503
504    $(".packaging_unit-" + productId).each(function(){
505        $(this).val(selectUnit);
506    });
507
508        if(totalQty >= minQty && totalQty%minQty==0){
509            $(".quantity_text-" + productId).each(function(){
510                $(this).val(inputQty);
511            });
512        }
513        else {
514            var correctedQty = minQty;
515            if(!totalQty%minQty==0){
516                var removeQuantity =parseInt(inputQty)%minQty;
517                correctedQty = inputQty - removeQuantity > minQty ? inputQty - removeQuantity : minQty;
518                errMsg = "This product requires quantities in multiples of " + minQty;
519            }
520
521            $(".quantity_text-" + productId).each(function(){
522                $(this).val(correctedQty);
523            });
524            var element=$(this);
525            element.attr("title",errMsg);
526            element.tooltip();
527            element.trigger("mouseover");
528            setTimeout(function(){element.tooltip('destroy');},3000);
529        }
530    }
531
532};
533
534$(document).ready(function(){
535
536	//Start Back Button for orderhistory
537	var url=window.location.href.split("/")[window.location.href.split("/").length-1];
538	if(url=="orders"){
539		if($(".tabcontent .sortable").is(":visible")){
540			var url1=window.location.href;
541			url1=url1+"?fromOrderDetail=true&page=1";
542			window.history.pushState("", "", url1);
543		}
544	}
545	//End Back Buttonfor orderhistory
546    if ($('.logged-in-user').length) {
547        var divCount = $('.product__listing.product__grid > .product-item, .js-brand-featured-products .js-product-item, .js-owl-relatedProducts .js-product-item');
548        var divListCount = $('.product__listing.product__list > .product__list--item');
549        var priceWs = [ ];
550        var stockWs = [ ];
551
552        if(divCount.length > 0 ) {
553            for (var i = 0; i < divCount.length; i++) {
554                var sapPriceWsDTO = {};
555                var sapStockWsDTO = {};
556                if ($(divCount[i]).find('.addtocart').length > 0) {
557                    var prdtext = $(divCount[i]).find('.product_code').text();
558                    var minqty = $(divCount[i]).find('.product_minQty').text();
559                    var pkgref = $(divCount[i]).find('.product_pkgRef').text();
560                    var multidimension = $(divCount[i]).find('.multidimension_product').text();
561                    var distributionChain = $(divCount[i]).find('.distributionChain_product').text();
562                    if (multidimension.toLowerCase().includes("false") && distributionChain != "02" && distributionChain != "03") {
563                        sapPriceWsDTO.productCode = prdtext;
564                        sapPriceWsDTO.minOrderQuantity = minqty;
565                        sapPriceWsDTO.unit = pkgref;
566                        priceWs.push(sapPriceWsDTO);
567
568                        sapStockWsDTO.productCode = prdtext;
569                        sapStockWsDTO.minOrderQuantity = minqty;
570                        sapStockWsDTO.unit = pkgref;
571                        stockWs.push(sapStockWsDTO);
572                    }
573                }
574            }
575
576
577            $.ajax({
578                type: 'POST',
579                url: ACC.config.encodedContextPath + '/c/priceWs',
580                contentType: 'application/json',
581                data: JSON.stringify(priceWs),
582                success: priceResponse,
583                error: function () {
584                },
585                complete: function () {
586                    $(".ajax-loader").hide();
587                    $(".priceAndAvailability").show();
588                }
589            });
590            $.ajax({
591                type: 'POST',
592                url: ACC.config.encodedContextPath + '/c/stockWs',
593                contentType: 'application/json',
594                data:JSON.stringify(stockWs),
595                success: StockResponse,
596                error: function(){
597                },
598                complete: function () {
599                    $(".ajax-loader").hide();
600                    $(".priceAndAvailability").show();
601                }
602            });
603        }
604    }
605
606    function priceResponse(SapPriceWsResponse){
607        if(SapPriceWsResponse.length>0){
608            for(var j=0; j<SapPriceWsResponse.length; j++){
609                var responsePrdCode = SapPriceWsResponse[j].productC
609ode;
610                for(var k=0; k<divCount.length; k++){
611                    var divPrdCode = $(divCount[k]).find('.product_code').text();
612
613                    if(responsePrdCode == divPrdCode){
614
615                        if(SapPriceWsResponse[j].price.value >= 0.01){
616                            var minQty = parseInt($(divCount[k]).find(".product_minQty").text());
617                            if (minQty > 1) {
618                                var pricePerUnit = (SapPriceWsResponse[j].price.value / minQty).toFixed(2);
619                                $(divCount[k]).find('.price span').text('$' + Math.trunc(pricePerUnit).toLocaleString() + pricePerUnit.slice(pricePerUnit.length - 3));
620                            } else {
621                                $(divCount[k]).find('.price span').text(SapPriceWsResponse[j].price.formattedValue);
622                            }
623                        }
624
625                    }
626                }
627
628
629
630            }
631        }
632        CheckStockAndPriceResponse();
633    }
634
635    function StockResponse(SapPriceWsResponse){
636        if(SapPriceWsResponse.length>0){
637            for(var j=0; j<SapPriceWsResponse.length; j++){
638                var responsePrdCode = SapPriceWsResponse[j].productC
638ode;
639                for(var k=0; k<divCount.length; k++){
640                    var divPrdCode = $(divCount[k]).find('.product_code').text();
641
642                    if(responsePrdCode == divPrdCode){
643
644                        if (SapPriceWsResponse[j].stock.stockLevel > 0){
645                            $(divCount[k]).find('.livestock .plp-available-number span').text(SapPriceWsResponse[j].stock.stockLevel);
646                        } else {
647                            $(divCount[k]).find('.livestock .plp-available-number span').text('None');
648                            $(divCount[k]).find('.livestock .plp-available-number').addClass('not-available');
649                            $(divCount[k]).find('.livestock .plp-available-marker img').attr("src", ACC.config.commonResourcePath + "/images/not-available.svg");
650                        }
651                    }
652                }
653
654            }
655        }
656        CheckStockAndPriceResponse();
657    }
658
659    function CheckStockAndPriceResponse() {
660        for(var k=0; k<divCount.length; k++){
661
662            var availbilityPLP=$(divCount[k]).find(".livestock span").text();
663            var availabilityStock = parseInt(availbilityPLP);
664            var returnedPrice = $(divCount[k]).find(".price span").text();
665            if (returnedPrice == "" && availbilityPLP == "") {
666
667                $(divCount[k]).find(".price").hide();
668                $(divCount[k]).find(".livestock").hide();
669                $(divCount[k]).find(".noPriceAndAvailabilityPlaceHolder").show();
670                $(divCount[k]).find('.add_to_cart_form .glyphicon-shopping-cart').attr("disabled",true);
671            }
672
673            if(returnedPrice == "$0.00" || returnedPrice == "" || ($(divCount[k]).find('.isDiscontinuedFlag').val() == "true" && (isNaN(availabilityStock) || availabilityStock == 0))) {
674                $(divCount[k]).find('.add_to_cart_form .glyphicon-shopping-cart').attr("disabled",true);
675                $(divCount[k]).find('.glyphicon-star').attr("disabled",true);
676            }
677
678            else{
679                $(divCount[k]).find('.add_to_cart_form .glyphicon-shopping-cart').removeAttr("disabled");
680                $(divCount[k]).find('.glyphicon-star').removeAttr("disabled");
681            }
682        }
683    }
684
685    $('.js-checkQuantity').on('blur',function(){
686    	var errMsg=$('.minqtycheck').text();
687        var quantityVal = parseInt($(this).parent().find('#orderHistoryAddtoCartInput_hidden').val());
688        var curVal = $(this).val();
689        if(curVal > quantityVal){
690
691            var removeQuantity =parseInt(curVal)%quantityVal;
692            curVal = curVal-removeQuantity;
693
694            $(this).val(curVal);
695
696            if(curVal==quantityVal){
697                $(this).parent().find('.js-qty-selector-minusDP').attr('disabled','disabled');
698            }else{
699                $(this).parent().find('.js-qty-selector-minusDP').removeAttr('disabled');
700            }
701            if(removeQuantity!=0){
702                var element=$(this);
703                element.attr("title",errMsg +" "+ quantityVal);
704                element.tooltip();
705                element.trigger("mouseover");
706                setTimeout(function(){element.tooltip('destroy');},3000);
707            }
708
709        }
710
711        else if (curVal == quantityVal){
712        	$(this).val(quantityVal);
713        	$(this).parent().find('.js-qty-selector-minusDP').attr('disabled','disabled');
714        	$(this).parent().parent().parent().find("div.actions").find("form#addToCartForm").find("input[name='qty']").val(quantityVal);
715        }
716
717        else{
718            $(this).val(quantityVal);
719            var element=$(this);
720            element.attr("title",errMsg +" "+ quantityVal);
721            element.tooltip();
722            element.trigger("mouseover");
723            setTimeout(function(){element.tooltip('destroy');},3000);
724            $(this).parent().find('.js-qty-selector-minusDP').attr('disabled','disabled');
725            $(this).parent().parent().parent().find("div.actions").find("form#addToCartForm").find("input[name='qty']").val(quantityVal);
726        }
727
728
729    });
730
731
732
733});
734
735var previousOrderToDatePicker_company = $("#orderToDate_company").val();
736var previousOrderFromDatePicker_company = $("#orderFromDate_company").val();
737
738$(".datepicker input").on("change", function (){
739    var monthDiff = 6;
740    $(".datepicker input").attr("autocomplete", "off");
741    var bt_company = document.getElementById('submitOrderFormBtn_company');
742    var orderToDatePicker_company = $("#orderToDate_company").val();
743    var orderFromDatePicker_company = $("#orderFromDate_company").val();
744    if(Date.parse(orderFromDatePicker_company) > Date.parse(orderToDatePicker_company)) {
745        $("#orderToLessDateErrors_company").html("To Date cannot be earlier than From Date.");
746        $("#orderToLessDateErrors_company").fadeIn();
747        $("#initialDateMessage").fadeOut();
748        $("#submitOrderFormBtn_company").attr("disabled", true);
749    } else {
750        $("#submitOrderFormBtn_company").attr("disabled", false);
751
752        var monthMaxPast = ($('#lastMonthsMaxDisplay').val() == null ? 18 : parseInt($('#lastMonthsMaxDisplay').val()));
753        var todayDate = new Date();
754        var monthRemovedDate = new Date(todayDate.setMonth(todayDate.getMonth()-monthMaxPast));
755        var maxPastDate = new Date(monthRemovedDate.setTime(monthRemovedDate.getTime() - (24*60*60*1000)));
756        var dateFrom_company = new Date(orderFromDatePicker_company);
757
758        if (dateFrom_company.getTime() < maxPastDate.getTime()) {
759                $("#orderToLessDateErrors_company").html('Date range is restricted to the last ' + monthMaxPast + ' months.');
760                $("#orderToLessDateErrors_company").fadeIn();
761                $("#initialDateMessage").fadeOut();
762                $("#submitOrderFormBtn_company").attr("disabled", true);
763        } else if ((orderToDatePicker_company != previousOrderToDatePicker_company)) {
764            $("#orderToLessDateErrors_company").fadeOut();
765            $("#initialDateMessage").fadeIn();
766            previousOrderToDatePicker_company = orderToDatePicker_company;
767            var date1_company = new Date(orderFromDatePicker_company);
768            var date2_company = new Date(orderToDatePicker_company);
769            var diffMinToDate = new Date(date2_company.setMonth(date2_company.getMonth()-monthDiff));
770            var minPastToDate = new Date(diffMinToDate.setTime(diffMinToDate.getTime()));
771
772            if (date1_company.getTime() < minPastToDate.getTime()) {
773                $("#initialDateMessage").addClass("error");
774                $("#submitOrderFormBtn_company").attr("disabled", true);
775            } else {
776                $("#initialDateMessage").removeClass("error");
777                $("#submitOrderFormBtn_company").attr("disabled", false);
778            }
779
780        } else if ((orderFromDatePicker_company != previousOrderFromDatePicker_company)) {
781            $("#orderToLessDateErrors_company").fadeOut();
782            $("#initialDateMessage").fadeIn();
783            var date1From_company = new Date(orderFromDatePicker_company);
784            var date2To_company = new Date(previousOrderToDatePicker_company);
785            var diffMinDate = new Date(date2To_company.setMonth(date2To_company.getMonth()-monthDiff));
786            var minPastDate = new Date(diffMinDate.setTime(diffMinDate.getTime()));
787
788            if (date1From_company.getTime() < minPastDate.getTime()) {
789                $("#initialDateMessage").addClass("error");
790                $("#submitOrderFormBtn_company").attr("disabled", true);
791            } else {
792                $("#initialDateMessage").removeClass("error");
793                $("#submitOrderFormBtn_company").attr("disabled", false);
794            }
795        } else {
796            $("#submitOrderFormBtn_company").attr("disabled", false);
797            $("#initialDateMessage").removeClass("error");
798        }
799    }
800});
801function validateCartData(currentDiv){
802	var checkedBox=$(currentDiv).parent().parent().parent().find(".orderCheckBox");
803	var value=$(currentDiv).parent().parent().parent().find('.js-checkQuantity').val();
804	var orderedValue=$(currentDiv).parent().parent().parent().find('.OrderedVal').text();
805	if($(checkedBox).is(":checked")){
806		$(currentDiv).parent().find(".add_to_cart_form").find("input[name='qty']").val(value);
807	}else{
808		$(currentDiv).parent().find(".add_to_cart_form").find("input[name='qty']").val(orderedValue);
809	}
810
811	return true;
812}
813
814function validateInvoiceData(currentDiv){
815  	var checkedBox=$(currentDiv).parent().parent().parent().find(".invoiceCheckBox");
816  	var value=$(currentDiv).parent().parent().parent().find('.js-checkQuantity').val();
817  	var orderedValue=$(currentDiv).parent().parent().find("input[name='qty']").val();
818  	if($(checkedBox).is(":checked")){
819  		$(currentDiv).parent().find(".add_to_cart_form").find("input[name='qty']").val(value);
820  	}else{
821  		$(currentDiv).parent().find(".add_to_cart_form").find("input[name='qty']").val(orderedValue);
822  	}
823  	return true;
824}

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.