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.