https://careerconnector.com.au/wp-content/plugins/woo-smart-wishlist/assets/js/frontend.js?ver=4.9.5
1'use strict'; 2 3(function($) { 4 var $storage = true; 5 var added_ids = []; 6 var key = Cookies.get('woosw_key'); 7 8 try { 9 $storage = ('sessionStorage' in window && window.sessionStorage !== null); 10 window.sessionStorage.setItem('woosw', 'test'); 11 window.sessionStorage.removeItem('woosw'); 12 } catch (err) { 13 $storage = false; 14 } 15 16 $(function() { 17 if (key === null || key === undefined || key === '') { 18 key = woosw_get_key(); 19 Cookies.set('woosw_key', key, {expires: 7}); 20 } 21 22 // Load data for the first time 23 woosw_load_data(); 24 25 if ($('.woosw-custom-menu-item').length || woosw_vars.reload_count === 26 'yes') { 27 // reload the count 28 woosw_load_count(); 29 } 30 31 if (woosw_vars.added_to_cart === 'yes' && woosw_vars.auto_remove === 32 'yes') { 33 setTimeout(function() { 34 woosw_load_count(); 35 woosw_get_data(); 36 }, 300); 37 } 38 39 if (woosw_vars.button_action === 'message') { 40 $.notiny.addTheme('woosw', { 41 notification_class: 'notiny-theme-woosw', 42 }); 43 } 44 }); 45 46 $(document).on('change', '.woosw-switcher-dropdown', function() { 47 window.location = $(this).val(); 48 }); 49 50 $(document).on('woosw_refresh_data', function() { 51 woosw_get_data(); 52 }); 53 54 $(document).on('woosw_refresh_count', function() { 55 woosw_load_count(); 56 }); 57 58 // woovr 59 $(document).on('woovr_selected', function(e, selected, variations) { 60 var id = selected.attr('data-id'); 61 var pid = selected.attr('data-pid'); 62 63 if (id > 0) { 64 $('.woosw-btn-' + pid). 65 attr('data-id', id). 66 removeClass('woosw-btn-added woosw-added'); 67 68 // refresh button 69 woosw_refresh_button_id(id); 70 } else { 71 $('.woosw-btn-' + pid). 72 attr('data-id', pid). 73 removeClass('woosw-btn-added woosw-added'); 74 75 // refresh button 76 woosw_refresh_button_id(pid); 77 } 78 }); 79 80 // found variation 81 $(document).on('found_variation', function(e, t) { 82 var product_id = $(e['target']).attr('data-product_id'); 83 84 // change id 85 $('.woosw-btn-' + product_id). 86 attr('data-id', t.variation_id). 87 removeClass('woosw-btn-added woosw-added'); 88 89 // refresh button 90 woosw_refresh_button_id(t.variation_id); 91 }); 92 93 // reset data 94 $(document).on('reset_data', function(e) { 95 var product_id = $(e['target']).attr('data-product_id'); 96 97 // change id 98 $('.woosw-btn-' + product_id). 99 attr('data-id', product_id). 100 removeClass('woosw-btn-added woosw-added'); 101 102 // refresh button 103 woosw_refresh_button_id(product_id); 104 }); 105 106 $(document.body).on('added_to_cart', function(e) { 107 if (woosw_vars.auto_remove === 'yes') { 108 woosw_load_count(); 109 woosw_get_data(); 110 } 111 }); 112 113 // quick view 114 $(document). 115 on('click touch', 116 '#woosw_wishlist .woosq-link, #woosw_wishlist .woosq-btn', 117 function(e) { 118 woosw_wishlist_hide(); 119 e.preventDefault(); 120 }); 121 122 // add to wishlist 123 $(document).on('click touch', '.woosw-btn', function(e) { 124 var $this = $(this); 125 var id = $this.attr('data-id'); 126 var pid = $this.attr('data-pid'); 127 var product_id = $this.attr('data-product_id'); 128 var product_name = $this.attr('data-product_name'); 129 var product_image = $this.attr('data-product_image'); 130 131 if (typeof pid !== typeof undefined && pid !== false) { 132 id = pid; 133 } 134 135 if (typeof product_id !== typeof undefined && product_id !== false) { 136 id = product_id; 137 } 138 139 if ($this.hasClass('woosw-added')) { 140 if (woosw_vars.button_action_added === 'remove') { 141 // remove from wishlist 142 var data = { 143 action: 'woosw_remove', 144 product_id: id, 145 key: key, 146 nonce: woosw_vars.nonce, 147 }; 148 149 $this.addClass('woosw-adding'). 150 find('.woosw-btn-icon'). 151 removeClass(woosw_vars.button_normal_icon + ' ' + 152 woosw_vars.button_added_icon). 153 addClass(woosw_vars.button_loading_icon); 154 155 $.post(woosw_vars.wc_ajax_url.toString(). 156 replace('%%endpoint%%', 'woosw_remove'), data, function(response) { 157 $this.removeClass('woosw-adding'). 158 find('.woosw-btn-icon'). 159 removeClass(woosw_vars.button_loading_icon); 160 161 if (response.content != null) { 162 $('#woosw_wishlist'). 163 html(response.content). 164 addClass('woosw-loaded'); 165 } 166 167 if (response.notice != null) { 168 woosw_notice(response.notice); 169 } 170 171 if (response.count != null) { 172 woosw_change_count(response.count); 173 } 174 175 if ($storage && response.data) { 176 sessionStorage.setItem('woosw_data_' + response.data.key, 177 JSON.stringify(response.data)); 178 } 179 180 if (response.data.fragments) { 181 woosw_refresh_fragments(response.data.fragments); 182 } 183 184 if (response.data.ids) { 185 woosw_refresh_buttons(response.data.ids); 186 woosw_refresh_ids(response.data.ids); 187 } 188 189 $(document.body).trigger('woosw_remove', [product_id]); 190 }); 191 } else if (woosw_vars.button_action_added === 'page') { 192 // open wishlist page 193 window.location.href = woosw_vars.wishlist_url; 194 } else { 195 // open wishlist popup 196 if ($('#woosw_wishlist').hasClass('woosw-loaded')) { 197 woosw_wishlist_show(); 198 } else { 199 woosw_wishlist_load(); 200 } 201 } 202 } else { 203 // add product 204 var data = { 205 action: 'woosw_add', product_id: id, nonce: woosw_vars.nonce, 206 }; 207 208 $this.addClass('woosw-adding'). 209 find('.woosw-btn-icon'). 210 removeClass(woosw_vars.button_normal_icon + ' ' + 211 woosw_vars.button_added_icon). 212 addClass(woosw_vars.button_loading_icon); 213 214 $.post(woosw_vars.wc_ajax_url.toString(). 215 replace('%%endpoint%%', 'woosw_add'), data, function(response) { 216 $this.removeClass('woosw-adding'). 217 find('.woosw-btn-icon'). 218 removeClass(woosw_vars.button_loading_icon); 219 220 if (woosw_vars.button_action === 'list') { 221 if (response.content != null) { 222 $('#woosw_wishlist'). 223 html(response.content). 224 addClass('woosw-loaded'); 225 } 226 227 if (response.notice != null) { 228 woosw_notice(response.notice.replace('{name}', 229 '<strong>' + product_name + '</strong>')); 230 } 231 232 woosw_perfect_scrollbar(); 233 woosw_wishlist_show(); 234 } 235 236 if (woosw_vars.button_action === 'message') { 237 $('#woosw_wishlist').removeClass('woosw-loaded'); 238 239 $.notiny({ 240 theme: 'woosw', 241 position: woosw_vars.message_position, 242 image: product_image, 243 text: response.notice.replace('{name}', 244 '<strong>' + product_name + '</strong>'),
245 }); 246 } 247 248 if (woosw_vars.button_action === 'no') { 249 // add to wishlist solely 250 $('#woosw_wishlist').removeClass('woosw-loaded'); 251 } 252 253 if (response.count != null) { 254 woosw_change_count(response.count); 255 } 256 257 if (response.status === 1) { 258 woosw_refresh_button_id(id); 259 } 260 261 if ($storage && response.data) { 262 sessionStorage.setItem('woosw_data_' + response.data.key, 263 JSON.stringify(response.data)); 264 } 265 266 if (response.data.fragments) { 267 woosw_refresh_fragments(response.data.fragments); 268 } 269 270 if (response.data.ids) { 271 woosw_refresh_buttons(response.data.ids); 272 woosw_refresh_ids(response.data.ids); 273 } 274 275 $(document.body).trigger('woosw_add', [id]); 276 }); 277 } 278 279 e.preventDefault(); 280 }); 281 282 // add product 283 $(document).on('click touch', '.woosw-item--add span', function(e) { 284 var $this = $(this); 285 var key = $this.closest('.woosw-items').data('key'); 286 var $this_item = $this.closest('.woosw-item'); 287 var product_id = $this_item.attr('data-id'); 288 var product_name = $this_item.attr('data-product_name'); 289 var data = { 290 action: 'woosw_add', 291 product_id: product_id, 292 key: key, 293 nonce: woosw_vars.nonce, 294 }; 295 296 $this.addClass('woosw-item--adding'); 297 298 $.post( 299 woosw_vars.wc_ajax_url.toString().replace('%%endpoint%%', 'woosw_add'), 300 data, function(response) { 301 $this.addClass('woosw-item--adding'); 302 303 if (response.content != null) { 304 $('#woosw_wishlist'). 305 html(response.content). 306 addClass('woosw-loaded'); 307 } 308 309 if (response.notice != null) { 310 woosw_notice(response.notice.replace('{name}', 311 '<strong>' + product_name + '</strong>')); 312 } 313 314 if (response.count != null) { 315 woosw_change_count(response.count); 316 } 317 318 if ($storage && response.data) { 319 sessionStorage.setItem('woosw_data_' + response.data.key, 320 JSON.stringify(response.data)); 321 } 322 323 if (response.data.fragments) { 324 woosw_refresh_fragments(response.data.fragments); 325 } 326 327 if (response.data.ids) { 328 woosw_refresh_buttons(response.data.ids); 329 woosw_refresh_ids(response.data.ids); 330 } 331 332 $(document.body).trigger('woosw_add', [product_id]); 333 334 // list shortcode 335 if ($this.closest('.woosw-list').length) { 336 location.reload(); 337 } 338 }); 339 340 e.preventDefault(); 341 }); 342 343 // remove product 344 $(document).on('click touch', '.woosw-item--remove span', function(e) { 345 var $this = $(this); 346 var key = $this.closest('.woosw-items').data('key'); 347 var $this_item = $this.closest('.woosw-item'); 348 var product_id = $this_item.attr('data-id'); 349 var data = { 350 action: 'woosw_remove', 351 product_id: product_id, 352 key: key, 353 nonce: woosw_vars.nonce, 354 }; 355 356 $this.addClass('woosw-item--removing'); 357 358 $.post(woosw_vars.wc_ajax_url.toString(). 359 replace('%%endpoint%%', 'woosw_remove'), data, function(response) { 360 $this.removeClass('woosw-item--removing'); 361 $this_item.remove(); 362 363 if (response.content != null) { 364 $('#woosw_wishlist').html(response.content).addClass('woosw-loaded'); 365 } 366 367 if (response.notice != null) { 368 woosw_notice(response.notice); 369 } 370 371 if (response.count != null) { 372 woosw_change_count(response.count); 373 } 374 375 if ($storage && response.data) { 376 sessionStorage.setItem('woosw_data_' + response.data.key, 377 JSON.stringify(response.data)); 378 } 379 380 if (response.data.fragments) { 381 woosw_refresh_fragments(response.data.fragments); 382 } 383 384 if (response.data.ids) { 385 woosw_refresh_buttons(response.data.ids); 386 woosw_refresh_ids(response.data.ids); 387 } 388 389 $(document.body).trigger('woosw_remove', [product_id]); 390 }); 391 392 e.preventDefault(); 393 }); 394 395 // empty wishlist 396 $(document).on('click touch', '.woosw-empty', function(e) { 397 var $this = $(this); 398 399 if (confirm(woosw_vars.empty_confirm)) { 400 woosw_popup_loading(); 401 402 var key = $this.data('key'); 403 var data = { 404 action: 'woosw_empty', key: key, nonce: woosw_vars.nonce, 405 }; 406 407 $.post(woosw_vars.wc_ajax_url.toString(). 408 replace('%%endpoint%%', 'woosw_empty'), data, function(response) { 409 if (response.content != null) { 410 $('#woosw_wishlist').html(response.content).addClass('woosw-loaded'); 411 } 412 413 if (response.notice != null) { 414 woosw_notice(response.notice); 415 } 416 417 if (response.count != null) { 418 woosw_change_count(response.count); 419 } 420 421 if ($storage && response.data) { 422 sessionStorage.setItem('woosw_data_' + response.data.key, 423 JSON.stringify(response.data)); 424 } 425 426 if (response.data.fragments) { 427 woosw_refresh_fragments(response.data.fragments); 428 } 429 430 if (response.data.ids) { 431 woosw_refresh_buttons(response.data.ids); 432 woosw_refresh_ids(response.data.ids); 433 } 434 435 woosw_popup_loaded(); 436 437 $(document.body).trigger('woosw_empty', [key]); 438 }); 439 } 440 441 e.preventDefault(); 442 }); 443 444 // click on area 445 $(document).on('click touch', '.woosw-popup', function(e) { 446 var woosw_content = $('.woosw-popup-content'); 447 448 if ($(e.target).closest(woosw_content).length == 0) { 449 woosw_wishlist_hide(); 450 woosw_manage_hide(); 451 } 452 }); 453 454 // continue 455 $(document).on('click touch', '.woosw-continue', function(e) { 456 var url = $(this).attr('data-url'); 457 woosw_wishlist_hide(); 458 459 if (url !== '') { 460 window.location.href = url; 461 } 462 463 e.preventDefault(); 464 }); 465 466 // close 467 $(document). 468 on('click touch', '#woosw_wishlist .woosw-popup-close', function(e) { 469 woosw_wishlist_hide(); 470 e.preventDefault(); 471 }); 472 473 // manage close 474 $(document). 475 on('click touch', '#woosw_manage .woosw-popup-close', function(e) { 476 woosw_manage_hide(); 477 e.preventDefault(); 478 }); 479 480 // manage wishlists 481 $(document).on('click touch', '.woosw-manage', function(e) { 482 e.preventDefault(); 483 woosw_popup_loading(); 484 485 var data = { 486 action: 'woosw_manage_wishlists', nonce: woosw_vars.nonce, 487 }; 488 489 $.post(woosw_vars.wc_ajax_url.toString(). 490 replace('%%endpoint%%', 'woosw_manage_wishlists'), data, 491 function(response) { 492 woosw_wishlist_hide(); 493 $('#woosw_manage').html(response); 494 woosw_manage_show(); 495 woosw_popup_loaded(); 496 }); 497 }); 498 499 // add wishlist 500 $(document).on('click touch', '#woosw_add_wishlist', function(e) { 501 e.preventDefault(); 502 woosw_popup_loading(); 503 504 var name = $('#woosw_wishlist_name').val(); 505 var data = { 506 action: 'woosw_add_wishlist', name: name, nonce: woosw_vars.nonce, 507 }; 508 509 $.post(woosw_vars.wc_ajax_url.toString(). 510 replace('%%endpoint%%', 'woosw_add_wishlist'), data, 511 function(response) { 512 $('#woosw_manage').html(response); 513 $('#woosw_wishlist').removeClass('woosw-loaded'); 514 woosw_popup_loaded(); 515 }); 516 }); 517 518 // set default 519 $(document).on('click touch', '.woosw-set-default', function(e) { 520 e.preventDefault(); 521 woosw_popup_loading(); 522 523 var key = $(this).data('key'); 524 var data = { 525 action: 'woosw_set_default', key: key, nonce: woosw_vars.nonce, 526 }; 527 528 $.post(woosw_vars.wc_ajax_url.toString(). 529 replace('%%endpoint%%', 'woosw_set_default'), data, function(response) { 530 if (response.count != null) { 531 woosw_change_count(response.count); 532 } 533 534 if ((response.products != null) && response.products.length) {
535 response.products.forEach((product_id) => { 536 woosw_refresh_button_id(product_id); 537 }); 538 } 539 540 $('#woosw_manage').html(response.content); 541 542 if ($storage && response.data) { 543 sessionStorage.setItem('woosw_data_' + response.data.key, 544 JSON.stringify(response.data)); 545 } 546 547 if (response.data.fragments) { 548 woosw_refresh_fragments(response.data.fragments); 549 } 550 551 if (response.data.ids) { 552 woosw_refresh_buttons(response.data.ids); 553 woosw_refresh_ids(response.data.ids); 554 } 555 556 $('#woosw_wishlist').removeClass('woosw-loaded'); 557 woosw_popup_loaded(); 558 }); 559 }); 560 561 // delete wishlist 562 $(document).on('click touch', '.woosw-delete-wishlist', function(e) { 563 e.preventDefault(); 564 565 if (confirm(woosw_vars.delete_confirm)) { 566 woosw_popup_loading(); 567 568 var key = $(this).data('key'); 569 var data = { 570 action: 'woosw_delete_wishlist', key: key, nonce: woosw_vars.nonce, 571 }; 572 573 $.post(woosw_vars.wc_ajax_url.toString(). 574 replace('%%endpoint%%', 'woosw_delete_wishlist'), data, 575 function(response) { 576 $('#woosw_manage').html(response); 577 $('#woosw_wishlist').removeClass('woosw-loaded'); 578 woosw_popup_loaded(); 579 }); 580 } 581 }); 582 583 // view wishlist 584 $(document).on('click touch', '.woosw-view-wishlist', function(e) { 585 e.preventDefault(); 586 woosw_popup_loading(); 587 588 var key = $(this).data('key'); 589 var data = { 590 action: 'woosw_view_wishlist', key: key, nonce: woosw_vars.nonce, 591 }; 592 593 $.post(woosw_vars.wc_ajax_url.toString(). 594 replace('%%endpoint%%', 'woosw_view_wishlist'), data, 595 function(response) { 596 woosw_manage_hide(); 597 $('#woosw_wishlist').removeClass('woosw-loaded').html(response); 598 woosw_wishlist_show(); 599 woosw_popup_loaded(); 600 }); 601 }); 602 603 // menu item 604 $(document). 605 on('click touch', 606 '.woosw-menu-item a, .woosw-menu a, .woosw-link.woosw-link-auto a', 607 function(e) { 608 if (woosw_vars.menu_action === 'open_popup') { 609 e.preventDefault(); 610 611 if ($('#woosw_wishlist').hasClass('woosw-loaded')) { 612 woosw_wishlist_show(); 613 } else { 614 woosw_wishlist_load(); 615 } 616 } 617 }); 618 619 // link popup 620 $(document).on('click touch', '.woosw-link.woosw-link-popup a', function(e) { 621 e.preventDefault(); 622 623 if ($('#woosw_wishlist').hasClass('woosw-loaded')) { 624 woosw_wishlist_show(); 625 } else { 626 woosw_wishlist_load(); 627 } 628 }); 629 630 // account link 631 $(document). 632 on('click touch', '.woocommerce-MyAccount-navigation-link--wishlist a', 633 function(e) { 634 if (woosw_vars.page_myaccount === 'yes_popup') { 635 e.preventDefault(); 636 637 if ($('#woosw_wishlist').hasClass('woosw-loaded')) { 638 woosw_wishlist_show(); 639 } else { 640 woosw_wishlist_load(); 641 } 642 } 643 }); 644 645 // copy link 646 $(document). 647 on('click touch', '#woosw_copy_url, #woosw_copy_btn', function(e) { 648 e.preventDefault(); 649 let $link = $('#woosw_copy_url'); 650 let link = $link.val(); 651 652 navigator.clipboard.writeText(link).then(function() { 653 alert(woosw_vars.copied_text + ' ' + link); 654 }, function() { 655 alert('Failure to copy!'); 656 }); 657 658 $link.select(); 659 }); 660 661 // add note 662 $(document).on('click touch', '.woosw-item--note', function() { 663 if ($(this).closest('.woosw-item').find('.woosw-item--note-add').length) { 664 $(this).closest('.woosw-item').find('.woosw-item--note-add').show(); 665 $(this).hide(); 666 } 667 }); 668 669 $(document).on('click touch', '.woosw_add_note', function(e) { 670 e.preventDefault(); 671 woosw_popup_loading(); 672 673 var $this = $(this); 674 var key = $this.closest('.woosw-items').data('key'); 675 var product_id = $this.closest('.woosw-item').attr('data-id'); 676 var note = $this.closest('.woosw-item').find('input[type="text"]').val(); 677 var data = { 678 action: 'woosw_add_note', 679 key: key, 680 product_id: product_id, 681 note: woosw_html_entities(note), 682 nonce: woosw_vars.nonce, 683 }; 684 685 $.post(woosw_vars.wc_ajax_url.toString(). 686 replace('%%endpoint%%', 'woosw_add_note'), data, function(response) { 687 $this.closest('.woosw-item'). 688 find('.woosw-item--note'). 689 html(response). 690 show(); 691 $this.closest('.woosw-item').find('.woosw-item--note-add').hide(); 692 woosw_popup_loaded(); 693 }); 694 }); 695 696 // resize 697 $(window).on('resize', function() { 698 woosw_fix_height(); 699 }); 700 701 function woosw_wishlist_load() { 702 var data = { 703 action: 'woosw_load', nonce: woosw_vars.nonce, 704 }; 705 706 $.post( 707 woosw_vars.wc_ajax_url.toString().replace('%%endpoint%%', 'woosw_load'), 708 data, function(response) { 709 if (response.content != null) { 710 $('#woosw_wishlist').html(response.content); 711 } 712 713 if (response.count != null) { 714 if ($( 715 '#woosw_wishlist .woosw-items:not(.woosw-suggested-items) .woosw-item').length && 716 ($('#woosw_wishlist .woosw-items:not(.woosw-suggested-items) .woosw-item').length != 717 response.count)) { 718 woosw_change_count( 719 $('#woosw_wishlist .woosw-items:not(.woosw-suggested-items) .woosw-item').length); 720 } else { 721 woosw_change_count(response.count); 722 } 723 } 724 725 if (response.notice != null) { 726 woosw_notice(response.notice); 727 } 728 729 $('#woosw_wishlist').addClass('woosw-loaded'); 730 731 woosw_perfect_scrollbar(); 732 woosw_wishlist_show(); 733 }); 734 } 735 736 function woosw_load_count() { 737 var data = { 738 action: 'woosw_load_count', nonce: woosw_vars.nonce, 739 }; 740 741 $.post(woosw_vars.wc_ajax_url.toString(). 742 replace('%%endpoint%%', 'woosw_load_count'), data, function(response) { 743 if (response.count != null) { 744 var count = response.count; 745 746 woosw_change_count(count); 747 $(document.body).trigger('woosw_load_count', [count]); 748 } 749 }); 750 } 751 752 function woosw_wishlist_show() { 753 $('#woosw_wishlist').addClass('woosw-show'); 754 woosw_fix_height(); 755 756 $(document.body).trigger('woosw_wishlist_show'); 757 } 758 759 function woosw_wishlist_hide() { 760 $('#woosw_wishlist').removeClass('woosw-show'); 761 $(document.body).trigger('woosw_wishlist_hide'); 762 } 763 764 function woosw_manage_show() { 765 $('#woosw_manage').addClass('woosw-show'); 766 $(document.body).trigger('woosw_manage_show'); 767 } 768 769 function woosw_manage_hide() { 770 $('#woosw_manage').removeClass('woosw-show'); 771 $(document.body).trigger('woosw_manage_hide'); 772 } 773 774 function woosw_popup_loading() { 775 $('.woosw-popup').addClass('woosw-loading'); 776 } 777 778 function woosw_popup_loaded() { 779 $('.woosw-popup').removeClass('woosw-loading'); 780 } 781 782 function woosw_change_count(count) { 783 $('#woosw_wishlist .woosw-count').html(count); 784 $('.woosw-link .woosw-link-inner').attr('data-count', count); 785 786 if (parseInt(count) > 0) { 787 $('.woosw-empty').show(); 788 } else { 789 $('.woosw-empty').hide(); 790 } 791 792 if ($('.woosw-menu-item .woosw-menu-item-inner').length) { 793 $('.woosw-menu-item .woosw-menu-item-inner').attr('data-count', count); 794 } else { 795 $('.woosw-menu-item a'). 796 html('<span class="woosw-menu-item-inner" data-count="' + count + 797 '"><i class="woosw-icon"></i><span>' + woosw_vars.menu_text + 798 '</span></span>'); 799 } 800 801 $(document.body).trigger('woosw_change_count', [count]); 802 } 803 804 function woosw_notice(notice) { 805 $('.woosw-notice').html(notice); 806 woosw_notice_show(); 807 setTimeout(function() { 808 woosw_notice_hide(); 809 }, 3000); 810 } 811 812 function woosw_notice_show() { 813 $('#woosw_wishlist .woosw-notice').addClass('woosw-notice-show'); 814 } 815 816 function woosw_notice_hide() { 817 $('#woosw_wishlist .woosw-notice').removeClass('woosw-notice-show'); 818 } 819 820 function woosw_perfect_scrollbar() { 821 if (woosw_vars.perfect_scrollbar === 'yes') { 822 jQuery('#woosw_wishlist .woosw-popup-content-mid'). 823 perfectScrollbar({theme: 'wpc'}); 824 } 825 } 826 827 function woosw_html_entities(str) { 828 return String(str). 829 replace(/&/g, '&'). 830 replace(/</g, '<'). 831 replace(/>/g, '>'). 832 replace(/"/g, '"'); 833 } 834 835 function woosw_get_key() { 836 var result = []; 837 var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; 838 var charactersLength = characters.length; 839 840 for (var i = 0; i < 6; i++) { 841 result.push( 842 characters.charAt(Math.floor(Math.random() * charactersLength))); 843 } 844 845 return result.join(''); 846 } 847 848 function woosw_fix_height() { 849 // fix for center only 850 jQuery('.woosw-popup-center .woosw-popup-content'). 851 height(2 * Math.floor( 852 jQuery('.woosw-popup-center .woosw-popup-content').height() / 2) + 853 2); 854 } 855 856 function woosw_load_data() { 857 if ($storage) {
858 try { 859 var data = JSON.parse(sessionStorage.getItem('woosw_data_' + key)); 860 861 if (data.fragments) { 862 woosw_refresh_fragments(data.fragments); 863 } 864 865 if (data.ids) { 866 woosw_refresh_buttons(data.ids); 867 woosw_refresh_ids(data.ids); 868 } 869 870 if (data.key && (key === null || key === undefined || key === '')) { 871 Cookies.set('woosw_key', data.key, {expires: 7}); 872 } 873 } catch (err) { 874 woosw_get_data(); 875 } 876 } else { 877 woosw_get_data(); 878 } 879 } 880 881 function woosw_get_data() { 882 var data = { 883 action: 'woosw_get_data', nonce: woosw_vars.nonce, 884 }; 885 886 $.post(woosw_vars.wc_ajax_url.toString(). 887 replace('%%endpoint%%', 'woosw_get_data'), data, function(response) { 888 if (response) { 889 if ($storage) { 890 sessionStorage.setItem('woosw_data_' + response.key, 891 JSON.stringify(response)); 892 } 893 894 if (response.fragments) { 895 woosw_refresh_fragments(response.fragments); 896 } 897 898 if (response.ids) { 899 woosw_refresh_buttons(response.ids); 900 woosw_refresh_ids(response.ids); 901 } 902 903 if (response.key && 904 (key === null || key === undefined || key === '' || key !== 905 response.key)) { 906 Cookies.set('woosw_key', response.key, {expires: 7}); 907 } 908 909 $(document.body).trigger('woosw_data_refreshed', [response]); 910 } 911 }); 912 } 913 914 function woosw_refresh_fragments(fragments) { 915 $.each(fragments, function(key, value) { 916 $(key).replaceWith(value); 917 }); 918 919 $(document.body).trigger('woosw_fragments_refreshed', [fragments]); 920 } 921 922 function woosw_refresh_ids(ids) { 923 added_ids = ids; 924 } 925 926 function woosw_refresh_buttons(ids) { 927 $('.woosw-btn').removeClass('woosw-btn-added woosw-added'); 928 $('.woosw-btn:not(.woosw-btn-has-icon)').html(woosw_vars.button_text); 929 $('.woosw-btn.woosw-btn-has-icon'). 930 find('.woosw-btn-icon'). 931 removeClass(woosw_vars.button_added_icon). 932 addClass(woosw_vars.button_normal_icon); 933 $('.woosw-btn.woosw-btn-has-icon'). 934 find('.woosw-btn-text'). 935 html(woosw_vars.button_text); 936 937 $.each(ids, function(key, value) { 938 $('.woosw-btn-' + key).addClass('woosw-btn-added woosw-added'); 939 $('.woosw-btn-' + key + ':not(.woosw-btn-has-icon)'). 940 html(woosw_vars.button_text_added); 941 $('.woosw-btn-has-icon.woosw-btn-' + key). 942 find('.woosw-btn-icon'). 943 removeClass(woosw_vars.button_normal_icon). 944 addClass(woosw_vars.button_added_icon); 945 $('.woosw-btn-has-icon.woosw-btn-' + key). 946 find('.woosw-btn-text'). 947 html(woosw_vars.button_text_added); 948 949 if (value.parent !== undefined) { 950 $('.woosw-btn-' + value.parent).addClass('woosw-btn-added woosw-added'); 951 $('.woosw-btn-' + value.parent + ':not(.woosw-btn-has-icon)'). 952 html(woosw_vars.button_text_added); 953 $('.woosw-btn-has-icon.woosw-btn-' + value.parent). 954 find('.woosw-btn-icon'). 955 removeClass(woosw_vars.button_normal_icon). 956 addClass(woosw_vars.button_added_icon); 957 $('.woosw-btn-has-icon.woosw-btn-' + value.parent). 958 find('.woosw-btn-text'). 959 html(woosw_vars.button_text_added); 960 } 961 }); 962 963 $(document.body).trigger('woosw_buttons_refreshed', [ids]); 964 } 965 966 function woosw_refresh_button_id(id) { 967 $('.woosw-btn[data-id="' + id + '"]'). 968 removeClass('woosw-btn-added woosw-added'); 969 $('.woosw-btn[data-id="' + id + '"]:not(.woosw-btn-has-icon)'). 970 html(woosw_vars.button_text); 971 $('.woosw-btn-has-icon.woosw-btn[data-id="' + id + '"]'). 972 find('.woosw-btn-icon'). 973 removeClass(woosw_vars.button_added_icon). 974 addClass(woosw_vars.button_normal_icon); 975 $('.woosw-btn-has-icon.woosw-btn[data-id="' + id + '"]'). 976 find('.woosw-btn-text'). 977 html(woosw_vars.button_text); 978 979 $.each(added_ids, function(key) { 980 if (parseInt(key) === parseInt(id)) { 981 $('.woosw-btn[data-id="' + id + '"]'). 982 addClass('woosw-btn-added woosw-added'); 983 $('.woosw-btn[data-id="' + id + '"]:not(.woosw-btn-has-icon)'). 984 html(woosw_vars.button_text_added); 985 $('.woosw-btn-has-icon.woosw-btn[data-id="' + id + '"]'). 986 find('.woosw-btn-icon'). 987 removeClass(woosw_vars.button_normal_icon). 988 addClass(woosw_vars.button_added_icon); 989 $('.woosw-btn-has-icon.woosw-btn[data-id="' + id + '"]'). 990 find('.woosw-btn-text'). 991 html(woosw_vars.button_text_added); 992 } 993 }); 994 995 $(document.body).trigger('woosw_refresh_button_id', [id, added_ids]); 996 } 997})(jQuery);
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.