1jQuery(function ($) { 2 3 $(".verify-old-account").on('submit', function (e) { 4 e.preventDefault(); 5 var formData = $(this).serialize(); 6 $(".verify-old-account").addClass('show-loader'); 7 $.ajax({ 8 type: 'post', 9 url: ajax_object.ajax_url, 10 data: { 11 'action': 'verify_api_account', 12 'data': formData 13 }, 14 success: function (response) { 15 var result = JSON.parse(response); 16 17 console.log(result) 18 19 if (result.error) { 20 $(".integration-result").html("<div class='woocommerce-" + (result.error ? 'error' : 'message') + "'>" + result.message + "</div>"); 21 } 22 23 if (!result.error) { 24 $('.request-account-activation').addClass('success'); 25 $('.request-account-activation .site-main .content-area header .title strong').text('Success!'); 26 27 $(".verify-old-account").find('#activate_email').val(''); 28 } 29 30 $(".verify-old-account").removeClass('show-loader'); 31 32 } 33 }); 34 }) 35 36 37 $(".verify-old-form-account").on('submit', function (e) { console.log('here'); 38 e.preventDefault(); 39 var formData = $(this).serialize(); 40 console.log(formData); 41 $(".verify-old-form-account").addClass('show-loader'); 42 $.ajax({ 43 type: 'post', 44 url: ajax_object.ajax_url, 45 data: { 46 'action': 'verify_user_account', 47 'data': formData 48 }, 49 success: function (response) { 50 var result = JSON.parse(response); 51 52 console.log(result) 53 54 if (result.error) { 55 $(".integration-result").html("<div class='woocommerce-" + (result.error ? 'error' : 'message') + "'>" + result.message + "</div>"); 56 } 57 58 if (!result.error) { 59 $('.request-account-activation').addClass('success'); 60 $('.request-account-activation .site-main .content-area header .title strong').text('Success!'); 61 62 $(".verify-old-form-account").find('#activate_email').val(''); 63 } 64 65 $(".verify-old-form-account").removeClass('show-loader'); 66 67 } 68 }); 69 }) 70 71 $(".import-old-orders").bind('click', function (e) { 72 e.preventDefault(); 73 var userId = $(this).data('user-id'); 74 if (!$(this).hasClass('disabled')) { 75 $(this).addClass('disabled'); 76 $(".import-orders-result").html('<p>Importing the old orders! This may take a while, please do not close or refresh this page.</p><div class="loading-import"></div>'); 77 $.ajax({ 78 type: 'post', 79 url: ajax_object.ajax_url, 80 data: { 81 'action': 'import_old_orders', 82 'userId': userId 83 }, 84 success: function (response) { 85 var result = JSON.parse(response); 86 87 $(".import-orders-result").text(result.message); 88 setTimeout(function () { 89 //window.location.reload(); 90 }, 1500) 91 } 92 }); 93 } 94 }) 95 $(".import-old-clubs").bind('click', function (e) { 96 e.preventDefault(); 97 98 var userId = $(this).data('user-id'); 99 if (!$(this).hasClass('disabled')) { 100 $(this).addClass('disabled'); 101 $(".import-clubs-result").html('<p>Importing the clubs! This may take a while, please do not close or refresh this page.</p><div class="loading-import"></div>'); 102 $.ajax({ 103 type: 'post', 104 url: ajax_object.ajax_url, 105 data: { 106 'action': 'import_old_clubs', 107 'userId': userId 108 }, 109 success: function (response) { 110 var result = JSON.parse(response); 111 112 $(".import-clubs-result").text(result.message); 113 setTimeout(function () { 114 window.location.reload(); 115 }, 1500) 116 } 117 }); 118 } 119 }); 120 121 $("#search-ams-products").bind('submit', function (e) { 122 e.preventDefault(); 123 $(".products-result ul li").remove(); 124 $(".products-result button").addClass('hide'); 125 $(".products-result ul").append('<li class="empty">Searching...</li>'); 126 $(".products-result").removeClass('hide'); 127 var type = $(".ams-type").val(); 128 $.ajax({ 129 type: 'post', 130 url: ajax_object.ajax_url, 131 data: { 132 'action': 'search_products', 133 'search': $("#ams-search").val(), 134 'type': type 135 }, 136 success: function (response) { 137 const result = JSON.parse(response); 138 $(".products-result ul li").remove(); 139 if(type == "id"){ 140 if(result.hasOwnProperty('No')){ 141 $(".products-result ul").append( 142 '<li>\n' + 143 ' <label for="checkbox-' + result.No + '">\n' + 144 ' <input class="checkbox-import" type="checkbox" value="' + result.No + '" id="checkbox-' + result.No + '"/>\n' + 145 ' <div>' + 146 ' <b>ID: ' + result.No + '</b>' +
147 ' <span>' + result.Description + '</span>\n' + 148 ' </div>\n' + 149 ' </label>\n' + 150 '</li>' 151 ); 152 $(".products-result button").removeClass('hide'); 153 } 154 }else{ 155 if (result.length > 0) { 156 for (const key in result) { 157 //console.log(result[key]); 158 $(".products-result ul").append( 159 '<li>\n' + 160 ' <label for="checkbox-' + result[key].No + '">\n' + 161 ' <input class="checkbox-import" type="checkbox" value="' + result[key].No + '" id="checkbox-' + result[key].No + '"/>\n' + 162 ' <div>' + 163 ' <b>ID: ' + result[key].No + '</b>' + 164 ' <span>' + result[key].Description + '</span>\n' + 165 ' </div>\n' + 166 ' </label>\n' + 167 '</li>' 168 ); 169 } 170 $(".products-result button").removeClass('hide'); 171 } else { 172 $(".products-result ul").append('<li class="empty">No products were found with this search.</li>'); 173 } 174 } 175 } 176 }); 177 178 }) 179 180 $("#import-products").bind('click', function (e) { 181 e.preventDefault(); 182 const ids = []; 183 $('.checkbox-import:checked').each(function () { 184 ids.push($(this).val()) 185 }); 186 console.log(ids); 187 setTimeout(function () { 188 189 $(".products-result ul li").remove(); 190 $(".products-result button").addClass('hide'); 191 $(".products-result ul").append('<li class="empty">Importing products...</li>'); 192 $.ajax({ 193 type: 'post', 194 url: ajax_object.ajax_url, 195 data: { 196 'action': 'import_products', 197 'ids': ids 198 }, 199 success: function (response) { 200 console.log(response) 201 $(".products-result ul li").remove(); 202 const result = JSON.parse(response); 203 for (const key in result) { 204 $(".products-result ul").append('<li><span class="result-item">' + result[key] + '</span></li>'); 205 } 206 } 207 }); 208 }, 1000) 209 210 }) 211 212 213 214 215 $("#import-orders").bind('click', function (e) { 216 e.preventDefault(); 217 console.log('import start'); 218 setTimeout(function () { 219 $(".users-result ul").append('<li class="empty">Importing Orders...</li>'); 220 $.ajax({ 221 type: 'post', 222 url: ajax_object.ajax_url, 223 data: { 224 'action': 'import_orders', 225 }, 226 success: function (response) { 227 $(".users-result ul li").remove(); 228 const result = JSON.parse(response); 229 for (const key in result) { 230 $(".users-result ul").append('<li><span class="result-item">' + result[key] + '</span></li>'); 231 } 232 } 233 }); 234 }, 1000) 235 }) 236 237 238 $("#import-users").bind('click', function (e) { 239 e.preventDefault(); 240 console.log('import start'); 241 setTimeout(function () { 242 $(".users-result ul").append('<li class="empty">Importing users...</li>'); 243 $.ajax({ 244 type: 'post', 245 url: ajax_object.ajax_url, 246 data: { 247 'action': 'import_users' 248 }, 249 success: function (response) { 250 $(".users-result ul li").remove(); 251 const result = JSON.parse(response); 252 for (const key in result) { 253 $(".users-result ul").append('<li><span class="result-item">' + result[key] + '</span></li>'); 254 } 255 } 256 }); 257 }, 1000) 258 259 }); 260 261 $("#test-import-users").bind('click', function (e) { 262 e.preventDefault(); 263 console.log('import start'); 264 setTimeout(function () { 265 $(".users-result ul").append('<li class="empty">Importing users...</li>'); 266 $.ajax({ 267 type: 'post', 268 url: ajax_object.ajax_url, 269 data: { 270 'action': 'test_import_users' 271 }, 272 success: function (response) { 273 $(".users-result ul li").remove(); 274 $(".users-result ul").append('<li><span class="result-item">' + response + '</span></li>'); 275 276 } 277 }); 278 }, 1000); 279 280 }); 281 282 $(document).on("click", '.qty-adjust .qty-minus, .qty-adjust .qty-plus', function(e){ 283 e.preventDefault(); 284 console.log("here"); 285 jQuery('#updateCart').prop("disabled", false) 286 }); 287 288 289 290 $(document).on("click", '.modify-planned-order', function(e){ 291 e.preventDefault(); 292 var planned_order = $(this).attr("data-orderid"); 293 console.log("planned order = " + planned_order); 294 295 296 var this_order = $("#" + planned_order); 297 298 299 this_order.slideToggle(); 300 if(this_order.find(".wine-club-order-success-message").is(":visible")){ 301 this_order.attr('data-removed-items', ''); 302 this_order.find(".wine-club-order-success-message").hide(); 303 } 304 }); 305 306 $(document).on("click", '.cancel-changes', function(e){ 307 e.preventDefault(); 308 console.log("here"); 309 var planned_order = $(this).closest('.planned-order'); 310 planned_order.slideToggle(); 311 }); 312 313 $(document).on("click", ".wine-club-order-item-actions .replace-item", function(e){ 314 e.preventDefault(); 315 var item_id = $(this).attr('data-item-id'); 316 $('.wine-club-order-item-replace.item-' + item_id).slideToggle(); 317 }); 318 319 $(document).on("click", ".wine-club-order-item-actions .remove-item", function(e){ 320 e.preventDefault(); 321 var order_id = $(this).closest(".planned-order").attr("id"); 322 var line_no = $(this).attr("data-line-no"); 323 var removed_items = $(this).closest(".planned-order").attr("data-removed-items"); 324 if(removed_items == ""){ 325 removed_items = line_no; 326 }else{ 327 removed_items = removed_items + "," + line_no; 328 } 329 $(this).closest(".planned-order").attr("data-removed-items", removed_items); 330 $(this).closest(".wine-club-order-item").remove(); 331 update_wine_club_order_total(order_id); 332 }); 333 334 $(document).on("click", ".wine-club-order-actions .add-item", function(e){ 335 e.preventDefault(); 336 $('.add-item-holder').slideToggle(); 337 }); 338 339 $(document).on("click", ".add-item-holder .close-button", function(e){ 340 e.preventDefault(); 341 $('.add-item-holder').slideToggle(); 342 }); 343 344 $(document).on("change", ".wine-club-order-item .wine-club-order-item-quantity input", function(e){ 345 e.preventDefault(); 346 var order_id = $(this).closest(".planned-order").attr("id"); 347 var new_quantity = $(this).val(); 348 var item_price = $(this).closest(".wine-club-order-item").attr("data-item-price"); 349 var new_amount = parseInt(new_quantity) * parseFloat(item_price); 350 var formatted_new_amount = new_amount.toFixed(2); 351 $(this).closest(".wine-club-order-item").attr("data-item-amount", formatted_new_amount); 352 $(this).closest(".wine-club-order-item").attr("data-item-quantity", new_quantity); 353 $(this).closest(".wine-club-order-item").find(".wine-club-order-item-amount").html("$" + formatted_new_amount); 354 update_wine_club_order_total(order_id); 355 }); 356 357 $(document).on("click", ".wine-club-order-item-replace .product-list .available-product", function(e){ 358 var new_product_id = $(this).attr("data-id"); 359 var new_product_image = $(this).find(".available-product-image").find("img").attr("src"); 360 var new_product_name = $(this).attr("data-name"); 361 var new_product_price = $(this).attr("data-price"); 362 var new_product_unit_price = $(this).attr("data-unit-price"); 363 var new_product_sku = $(this).attr("data-sku"); 364 var current_quantity = $(this).closest(".wine-club-order-item").attr("data-item-quantity"); 365 var new_product_amount = parseFloat(new_product_price) * parseInt(current_quantity); 366 var formatted_product_amount = new_product_amount.toFixed(2); 367 var order_id = $(this).closest(".planned-order").attr("id"); 368 369 $(this).closest(".wine-club-order-item").attr("data-item-id", new_product_id); 370 $(this).closest(".wine-club-order-item").attr("data-item-sku", new_product_sku); 371 $(this).closest(".wine-club-order-item").attr("data-item-price", new_product_price); 372 $(this).closest(".wine-club-order-item").attr("data-item-amount", new_product_amount); 373 $(this).closest(".wine-club-order-item").attr("data-item-unit-price", new_product_unit_price); 374 375 update_wine_club_order_total(order_id); 376 377 $(this).closest(".wine-club-order-item").find(".wine-club-order-item-image").find("img").attr("src", new_product_image); 378 $(this).closest(".wine-club-order-item").find(".wine-club-order-item-name").html(new_product_name); 379 $(this).closest(".wine-club-order-item").find(".wine-club-order-item-price").html("$" + new_product_price); 380 $(this).closest(".wine-club-order-item").find(".wine-club-order-item-amount").html("$" + formatted_product_amount); 381 $(this).closest(".wine-club-order-item-replace").slideToggle(); 382 }); 383 384 $(document).on("click", ".add-item-holder .product-list .available-product", function(e){ 385 var new_product_id = $(this).attr("data-id"); 386 var new_product_image = $(this).find(".available-product-image").find("img").attr("src"); 387 var new_product_name = $(this).attr("data-name"); 388 var new_product_price = $(this).attr("data-price"); 389 var new_unit_price = $(this).attr("data-unit-price"); 390 var new_product_sku = $(this).attr("data-sku"); 391 var current_quantity = 1; 392 var new_product_amount = parseFloat(new_product_price) * parseInt(current_quantity); 393 var formatted_product_amount = new_product_amount.toFixed(2); 394 var order_id = $(this).closest(".planned-order").attr("id"); 395 396 var output = '<div class="wine-club-order-item" data-item-id="' + new_product_id + '" data-item-sku="' + new_product_sku + '" data-item-quantity="1" data-item-unit-price="' + new_unit_price + '" data-item-price="' + new_product_price + '" data-item-amount="' + formatted_product_amount + '" data-line-no="new">' + 397 '<div class="wine-club-order-item-image"><img src="' + new_product_image + '" alt="' + new_product_name + '"></div>' + 398 '<div class="wine-club-order-item-name">' + new_product_name + '</div>' + 399 '<div class="wine-club-order-item-price">$' + new_product_price + '</div>' + 400 '<div class="wine-club-order-item-quantity"><input type="number" value="1"></div>' + 401 '<div class="wine-club-order-item-amount">$' + formatted_product_amount + '</div>' + 402 '<div class="wine-club-order-item-actions"><a class="button remove-item">Remove</a></div>' + 403 '</div>'; 404 405 $(this).closest(".add-item-holder").before(output); 406 //$(this).closest(".add-item-holder").slideToggle(); 407 update_wine_club_order_total(order_id); 408 }); 409 410 $(document).on("click", ".planned-order .close-order", function(e){ 411 var this_order = $(this).closest(".planned-order"); 412 this_order.attr('data-removed-items', ''); 413 this_order.slideToggle(200, function(e){ 414 this_order.find(".wine-club-order-success-message").hide(); 415 }); 416 }); 417 418 function update_wine_club_order_total(order_id){ 419 var order_total = 0; 420 421 $("#" + order_id).find(".wine-club-order-item").each(function(){ 422 var item_amount = $(this).attr("data-item-amount"); 423 order_total = order_total + parseFloat(item_amount); 424 }); 425 426 $("#" + order_id + " .wine-club-order-actions .order_total span").html(order_total.toFixed(2)); 427 $("#" + order_id + " .wine-club-order-actions .save-changes").attr("data-order-total", order_total.toFixed(2)); 428 } 429 430 $(document).on("click", ".planned-order .save-changes", function(e){ 431 e.preventDefault(); 432 var planned_order = $(this).closest(".planned-order"); 433 var save_button = $(this); 434 if($(this).html() == "Save Changes"){ 435 planned_order.find(".wine-club-order-actions .error-message").html("").hide(); 436 save_button.html("Saving..."); 437 save_button.addClass("saving"); 438 save_button.siblings(".error-message").hide(); 439 var order_total = save_button.attr('data-order-total'); 440 var min_order = save_button.attr('data-min-order'); 441 var shipping_line_no = save_button.attr('data-shipping-line-no'); 442 var original_shipping_amount = save_button.attr('data-original-shipping-amount'); 443 if(parseFloat(order_total) < parseFloat(min_order)){ 444 save_button.siblings(".error-message").html('Your order does not meet the minimum order value.').slideToggle(); 445 }else{ 446 var planned_order_id = planned_order.attr("id"); 447 var order_id = planned_order.attr("data-order-id"); 448 var removed_items = planned_order.attr("data-removed-items"); 449 console.log("removed_items = " + removed_items); 450 var items = []; 451 var loop = 0; 452 $("#" + planned_order_id).find(".wine-club-order-item").each(function(){ 453 var item_id = $(this).attr("data-item-id"); 454 var item_sku = $(this).attr("data-item-sku"); 455 var item_price = $(this).attr("data-item-price"); 456 var item_quantity = $(this).attr("data-item-quantity"); 457 var item_line_no = $(this).attr("data-line-no"); 458 var item_name = $(this).find(".wine-club-order-item-name").html(); 459 var item_unit_price = $(this).attr("data-item-unit-price"); 460 items[loop] = item_id + "," + item_sku + "," + item_price + "," + item_quantity + "," + item_line_no + "," + item_name + "," + item_unit_price; 461 loop++; 462 }); 463 464 $.ajax({ 465 type: 'post', 466 url: ajax_object.ajax_url, 467 data: { 468 'action': 'save_wine_club_order', 469 'items': JSON.stringify(items), 470 'removed_items': removed_items, 471 'doc_no': order_id, 472 'shipping_line_no': shipping_line_no, 473 'original_shipping_amount': original_shipping_amount, 474 'planned_shipment': planned_order_id 475 }, 476 success: function (response) { 477 save_button.html("Save Changes"); 478 save_button.removeClass("saving"); 479 result = JSON.parse(response); 480 if(result.success){ 481 if(result.compliant){ 482 //everything worked no errors 483 484 //update any added items with their line numbers. 485 for (let index = 0; index < result.added_items.length; ++index) { 486 var addedItem = result.added_items[index]; 487 $(".wine-club-order-item[data-item-sku='" + addedItem['sku'] + "']").attr("data-line-no",
487 addedItem['line_no']); 488 $(".wine-club-order-item[data-item-sku='" + addedItem['sku'] + "']").find(".button.remove-item").attr("data-line-no", addedItem['line_no']); 489 } 490 491 var total_cost = parseFloat(order_total) + parseFloat(result.shipping) + parseFloat(result.total_tax); 492 493 if(result.shipping != 0){ 494 var shipping_value = parseFloat(result.shipping).toFixed(2); 495 var shipping_display = "$" + shipping_value; 496 }else{ 497 var shipping_display = "Pickup"; 498 } 499 var output = '<div class="message">Your order has been updated.</div>' + 500 '<div class="line-item"><span class="label">Subtotal</span> <span class="value">$' + parseFloat(order_total).toFixed(2) + '</span></div>' + 501 '<div class="line-item"><span class="label">Shipping</span> <span class="value">' + shipping_display + '</span></div>' + 502 '<div class="line-item"><span class="label">Tax</span> <span class="value">$' + parseFloat(result.total_tax).toFixed(2) + '</span></div>' + 503 '<div class="total"><span class="label">Total</span> <span class="value">$' + parseFloat(total_cost).toFixed(2) + '</span></div>' + 504 '<a class="button close-order">Close</a>'; 505 506 planned_order.find(".wine-club-order-success-message").html(output).fadeIn(200); 507 $([document.documentElement, document.body]).animate({ 508 scrollTop: $(".my_account_orders").offset().top 509 }, 500); 510 }else{ 511 planned_order.find(".wine-club-order-actions .error-message").html(result.compliance_error).show(); 512 } 513 }else{ 514 if(result.compliant){ 515 //order was compliant error while updating BC 516 var output = '<div class="message error">There was an error while updating your order. Please contact your account rep at something here.</div><a class="button close-order">Close</a>'; 517 518 planned_order.find("wine-club-order-success-message").html(output).fadeIn(200); 519 }else{ 520 //order was not compliant 521 $(this).siblings(".error-message").html('Your order is not compliant.').slideToggle(); 522 } 523 } 524 console.log(result); 525 }, 526 error: function (response){ 527 result = JSON.parse(response); 528 save_button.html("Save Changes"); 529 save_button.removeClass("saving"); 530 var output = '<div class="message error">There was an error while updating your order. Please contact your account rep at something here.</div><a class="button close-order">Close</a>'; 531 planned_order.find("wine-club-order-success-message").html(output).fadeIn(200); 532 } 533 }); 534 } 535 } 536 537 }); 538 539 $(document).on('click', '.legacy-order-details-button', function(e){ 540 e.preventDefault(); 541 var order_num = $(this).attr('data-order-id'); 542 $('#order-details-' + order_num).slideToggle(); 543 }); 544});
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.