WooCommerce Wishlist Plugin - Version 2.0.15

Version Description

Release Date - 22 November 2022

  • Added option "Days after which the guest wishlist will be deleted"
  • Fixed the message about the failed event of the add to cart button on the wishlist page
Download this release

Release Info

Developer templateinvaders
Plugin Icon 128x128 WooCommerce Wishlist Plugin
Version 2.0.15
Comparing to
See all releases

Code changes from version 2.0.14 to 2.0.15

admin/settings/general.class.php CHANGED
@@ -203,6 +203,17 @@ class TInvWL_Admin_Settings_General extends TInvWL_Admin_BaseSection {
203
  'std' => false,
204
  'class' => '',
205
  ),
 
 
 
 
 
 
 
 
 
 
 
206
  array(
207
  'type' => 'group',
208
  'id' => 'show_notice',
203
  'std' => false,
204
  'class' => '',
205
  ),
206
+ array(
207
+ 'type' => 'number',
208
+ 'name' => 'guests_timeout',
209
+ 'text' => __( 'Days after which the guest wishlist will be deleted', 'ti-woocommerce-wishlist' ),
210
+ 'std' => 30,
211
+ 'extra' => array(
212
+ 'step' => '1',
213
+ 'min' => '1',
214
+ ),
215
+ 'desc' => __( "Guest's wishlists are automatically deleted after a defined period of days from the latest product addition.", 'ti-woocommerce-wishlist' ),
216
+ ),
217
  array(
218
  'type' => 'group',
219
  'id' => 'show_notice',
admin/tinvwl.class.php CHANGED
@@ -417,14 +417,14 @@ class TInvWL_Admin_TInvWL extends TInvWL_Admin_Base {
417
  * Removing old wishlist without a user older than 34 days
418
  */
419
  public function remove_old_wishlists() {
420
- $wl = new TInvWL_Wishlist();
421
- $wishlists = $wl->get( array(
422
- 'author' => 0,
423
- 'type' => 'default',
424
- 'sql' => 'SELECT * FROM {table} {where} AND `date` < DATE_SUB( CURDATE(), INTERVAL 34 DAY)',
425
- ) );
426
- foreach ( $wishlists as $wishlist ) {
427
- $wl->remove( $wishlist['ID'] );
428
  }
429
  }
430
 
417
  * Removing old wishlist without a user older than 34 days
418
  */
419
  public function remove_old_wishlists() {
420
+ global $wpdb;
421
+ $wishlists = $wpdb->get_results( 'SELECT t1.wishlist_id ID FROM ' . $wpdb->prefix . 'tinvwl_items t1 JOIN( SELECT wishlist_id, MAX(DATE) DATE FROM ' . $wpdb->prefix . 'tinvwl_items GROUP BY wishlist_id ) t2 ON t1.wishlist_id = t2.wishlist_id AND t1.date = t2.date WHERE t1.author = 0 AND t1.date < DATE_SUB(CURDATE(), INTERVAL ' . (int) tinv_get_option( 'general', 'guests_timeout' ) . ' DAY)', ARRAY_A );
422
+
423
+ if ( $wishlists ) {
424
+ $wl = new TInvWL_Wishlist();
425
+ foreach ( $wishlists as $wishlist ) {
426
+ $wl->remove( $wishlist['ID'] );
427
+ }
428
  }
429
  }
430
 
assets/css/admin-form-rtl.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tiwlform-number-container{display:inline-block;margin:2px;position:relative;vertical-align:middle}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tiwlform-number-container{display:inline-block;margin:2px;position:relative;vertical-align:middle}
assets/css/admin-form.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tiwlform-number-container{display:inline-block;margin:2px;position:relative;vertical-align:middle}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tiwlform-number-container{display:inline-block;margin:2px;position:relative;vertical-align:middle}
assets/css/admin-rtl.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  *{-webkit-box-sizing:border-box;box-sizing:border-box}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  *{-webkit-box-sizing:border-box;box-sizing:border-box}
assets/css/admin-setup-rtl.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  html{background:#f6f3ed}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  html{background:#f6f3ed}
assets/css/admin-setup.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  html{background:#f6f3ed}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  html{background:#f6f3ed}
assets/css/admin.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  *{-webkit-box-sizing:border-box;box-sizing:border-box}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  *{-webkit-box-sizing:border-box;box-sizing:border-box}
assets/css/public-rtl.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tinv-wishlist form,.tinv-wishlist p:last-child,.tinv-wishlist table{margin-bottom:0}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tinv-wishlist form,.tinv-wishlist p:last-child,.tinv-wishlist table{margin-bottom:0}
assets/css/public.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tinv-wishlist form,.tinv-wishlist p:last-child,.tinv-wishlist table{margin-bottom:0}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tinv-wishlist form,.tinv-wishlist p:last-child,.tinv-wishlist table{margin-bottom:0}
assets/css/theme-rtl.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tinv-wishlist,.tinv-wishlist input,.tinv-wishlist select,.tinv-wishlist textarea,.tinv-wishlist button,.tinv-wishlist input[type=button],.tinv-wishlist input[type=reset],.tinv-wishlist input[type=submit]{font-family:Georgia,serif;font-size:14px;font-weight:400;text-transform:none;line-height:1.75}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tinv-wishlist,.tinv-wishlist input,.tinv-wishlist select,.tinv-wishlist textarea,.tinv-wishlist button,.tinv-wishlist input[type=button],.tinv-wishlist input[type=reset],.tinv-wishlist input[type=submit]{font-family:Georgia,serif;font-size:14px;font-weight:400;text-transform:none;line-height:1.75}
assets/css/theme.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tinv-wishlist,.tinv-wishlist input,.tinv-wishlist select,.tinv-wishlist textarea,.tinv-wishlist button,.tinv-wishlist input[type=button],.tinv-wishlist input[type=reset],.tinv-wishlist input[type=submit]{font-family:Georgia,serif;font-size:14px;font-weight:400;text-transform:none;line-height:1.75}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  .tinv-wishlist,.tinv-wishlist input,.tinv-wishlist select,.tinv-wishlist textarea,.tinv-wishlist button,.tinv-wishlist input[type=button],.tinv-wishlist input[type=reset],.tinv-wishlist input[type=submit]{font-family:Georgia,serif;font-size:14px;font-weight:400;text-transform:none;line-height:1.75}
assets/css/webfont-rtl.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  @font-face{font-family:"tinvwl-webfont";font-display:block;src:url("../fonts/tinvwl-webfont.eot?ver=xu2uyi");src:url("../fonts/tinvwl-webfont.eot?ver=xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.woff2?ver=xu2uyi") format("woff2"),url("../fonts/tinvwl-webfont.woff?ver=xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.ttf?ver=xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.svg?ver=xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  @font-face{font-family:"tinvwl-webfont";font-display:block;src:url("../fonts/tinvwl-webfont.eot?ver=xu2uyi");src:url("../fonts/tinvwl-webfont.eot?ver=xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.woff2?ver=xu2uyi") format("woff2"),url("../fonts/tinvwl-webfont.woff?ver=xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.ttf?ver=xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.svg?ver=xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
assets/css/webfont.min.css CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  @font-face{font-family:"tinvwl-webfont";font-display:block;src:url("../fonts/tinvwl-webfont.eot?ver=xu2uyi");src:url("../fonts/tinvwl-webfont.eot?ver=xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.woff2?ver=xu2uyi") format("woff2"),url("../fonts/tinvwl-webfont.woff?ver=xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.ttf?ver=xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.svg?ver=xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  @font-face{font-family:"tinvwl-webfont";font-display:block;src:url("../fonts/tinvwl-webfont.eot?ver=xu2uyi");src:url("../fonts/tinvwl-webfont.eot?ver=xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.woff2?ver=xu2uyi") format("woff2"),url("../fonts/tinvwl-webfont.woff?ver=xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.ttf?ver=xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.svg?ver=xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
assets/js/admin.min.js CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  "use strict";function TInvWL($,h){this.pf="tinvwl",this.g="_",this.ho=h||!1,this.n="TInvWL",this.aj_act=function(t){return[this.pf,t].join(this.g)},this._csel=function(t,n){n=n||".";return"{0}{1}{2}".format(n,this.pf,t)},this._tm=function(t){t=$("script#{0}[type='text/template']".format(t));return t.length?t.html():""},this.formElm=function(){var e,n;$(this._csel("-form-onoff")).tiwl_onoff(),$("input[type=checkbox][tiwl-show], input[type=checkbox][tiwl-hide]").tiwl_onoffblock(),$("[tiwl-value][tiwl-show], [tiwl-value][tiwl-hide]").tiwl_byvalueblock(),void 0!==$.fn.wpColorPicker&&(e=function(t){t=t.substring(1),t=parseInt(t,16);return.2126*(t>>16&255)+.7152*(t>>8&255)+.0722*(t>>0&255)},n=this._csel("-form-color"),$(n).each(function(){var n=$(this),t=$(this).closest(".tinvwl-color-picker"),i=t.find(".tinvwl-eyedropper");n.css("background-color",n.val()),175<e(n.val())&&n.css("color","#000000"),n.iris({mode:"hsv",target:$(this).parent().parent(),change:function(t,n){175<e(n.color.toCSS())?$(this).css("color","#000000"):$(this).css("color",""),$(this).css("background-color",n.color.toCSS())}}),t.on("click",".iris-square-value",function(t){t.preventDefault(),n.iris("toggle")}),i.on("click",function(t){t.preventDefault(),n.iris("show")}),n.on("focusin",function(){n.iris("show")})}),$(document).on("click",function(t){($(t.target).is(n+", .iris-picker, .iris-picker-inner, .iris-slider-offset, .tinvwl-eyedropper, .tinvwl-eyedropper .ftinvwl-eyedropper")?$(n).not($(t.target).closest(".tinvwl-color-picker").find(n)):$(n)).iris("hide")}))},this.wizard_page=function(t){$(t).find("select").change(this._wizard_page_ch),this.wizard_page_ch($(t).find("select"))},this.wizard_page_ch=function(t){var n=(t=$(t)).parent(this._csel("-page-select")),i=n.find("input[type=hidden]").val(),e=n.find(this._csel("-error-icon")),o=n.find(this._csel("-error-desc"));""!==t.val()?(n.removeClass("tinvwl-error"),e.hide(),o.hide()):0==i&&(n.addClass("tinvwl-error"),e.show(),o.show())},this.pageElm=function(){$(this._csel("-header","div.")).prependTo("#wpbody-content"),$(this._csel("-page-select")).each(this._wizard_page),$(".bulkactions [type=submit]").each(this._control_bulkactions),$(".action-search [type=submit]").each(this._control_search)},this.control_bulkactions=function(t){$(t).on("click",this._control_bulkactions_ck)},this.control_bulkactions_ck=function(t,n){var i=(t=$(t)).parents(".bulkactions").eq(0).find("[name=action]"),t=t.parents("form").eq(0);i&&("-1"!==i.val()&&t.find("input[type=checkbox]:checked").length||n.preventDefault())},this.control_search=function(t){$(t).on("click",this._control_search_ck)},this.control_search_ck=function(t,n){t=(t=$(t)).parents(".action-search").eq(0).find("[name=s]");t&&""===t.val()&&n.preventDefault()},this.Run=function(){this.formElm(),this.pageElm()},this.cg=function(){var t,n=this.n;this.ho&&(n=n+(t=new Date).getFullYear()+t.getMonth()+t.getDate()),window[n]=this},this.cg(),String.prototype.format||(String.prototype.format=function(){var i=arguments;return this.replace(/{(\d+)}/g,function(t,n){return void 0!==i[n]?i[n]:t})});var o=this,n=o.n,ho=o.ho,c=ho?"t=new Date(),n=n+t.getFullYear()+t.getMonth()+t.getDate(),":"",i;for(i in o)"function"!=typeof o[i]||"_"===i[0]||o.hasOwnProperty("_"+i)||eval("o._"+i+"=function(a,b,c,d){var n='"+n+"',"+c+"o=window[n]||null;if (o) {return o."+i+"(this,a,b,c,d);};};")}!function(s){s.fn.tiwl_onoff=function(t){var o=s.extend(!0,{},{value:{on:"",off:""},class:"tiwlform-onoff",wrap:"container",button:"button"},t);return s(this).each(function(){var n=s(this),t=s("<div>").attr({class:o.class+"-"+o.button}),i=o.class+"-"+o.wrap,e=s("<div>").attr({id:n.attr("id")+"_"+o.wrap,class:i});return n.is("input")&&(e.attr("class",e.attr("class")+" "+n.attr("class")),n.is(":disabled")&&(e.toggleClass("disabled",n.is(":disabled")),n.prop("disabled",!1)),e.toggleClass("checked",n.is(":checked")),n.hide().removeAttr("class").wrap(e).before(t),e=n.parent(),n.on("change",function(t){if(e.hasClass("disabled"))return t.preventDefault();e.toggleClass("checked",s(this).is(":checked"))}),e.on("click",function(t){if(e.hasClass("disabled"))return t.preventDefault();n.is(":enabled")&&e.hasClass("checked")===n.is(":checked")&&n.click()})),n})},s.fn.tiwl_onoffblock=function(t){var c=s.extend(!0,{},{onEachElm:function(){},isChecked:function(){return s(this).is(":checked")}},t);return s(this).each(function(){function t(){function t(t,i){t=t.match(/[\w\d-\>\.\#\:\=\[\]]+/gim)||[],s.each(t,function(t,n){c.onEachElm.call(s(n).toggle(i))})}var n=s(this),i=n.attr("tiwl-show"),e=n.attr("tiwl-hide"),o=c.isChecked.call(n);return"string"==typeof i&&t(i,o),"string"==typeof e&&t(e,!o),n}var n=s(this);return n.is("input")&&"checkbox"==n.attr("type")?(s(this).on("change",t),t.call(n)):n})},s.fn.tiwl_byvalueblock=function(t){var i=s.extend(!0,{},{onEachElm:function(){},onClick:function(){return s(this).val()==s(this).attr("tiwl-value")}},t);return s(this).each(function(){function t(e){function t(t,i){t=t.match(/[\w\d-\>\.\#\:\=\[\]]+/gim)||[],s.each(t,function(t,n){e.onEachElm.call(s(n).toggle(i))})}var n=s(this),i=n.attr("tiwl-show"),o=n.attr("tiwl-hide"),c=e.onClick.call(n);return"string"==typeof i&&t(i,c),"string"==typeof o&&t(o,!c),n}var n=s(this);return n.is("input")||n.is("select")?(s(this).on("change",function(){t.call(this,i)}),t.call(n,i)):n})};var n=new TInvWL(s);s(document).ready(function(){var t;n.Run(),jQuery('input[name="general-show_notice"]').change(function(){var t=!jQuery(this).is(":checked"),n=jQuery('input[name="general-redirect_require_login"]');t&&!n.is(":checked")&&n.click().trigger("change"),n.closest(".tiwlform-onoff-container").toggleClass("disabled",t)}).change(),s(".tablenav").each(function(){var t=s(this);s.trim(t.find(".alignleft").html()).length||t.find(".alignleft").remove(),s.trim(t.find(".alignright").html()).length&&!t.find(".tablenav-pages").hasClass("one-page")||(t.find(".alignright").remove(),t.find(".tinv-wishlist-clear").remove()),s.trim(t.html()).length||t.remove()}),s(".tablenav .bulkactions select").addClass("tinvwl-select grey").wrap('<span class="tinvwl-select-wrap">').parent().append('<span class="tinvwl-caret"><span></span></span>'),s(".tablenav .bulkactions .button.action, .tablenav #search-submit").removeClass("button").addClass("tinvwl-btn grey"),s(".tinvwl-modal-btn").on("click",function(){s(this).next(".tinvwl-modal").addClass("tinvwl-modal-open")}),s(".tinvwl-overlay, .tinvwl-close-modal, .tinvwl_button_close").on("click",function(t){t.preventDefault(),s(this).parents(".tinvwl-modal:first").removeClass("tinvwl-modal-open")}),void 0!==s.fn.popover&&((t=s(".tinvwl-help")).popover({content:function(){return s(this).closest(".tinvwl-info-wrap").find(".tinvwl-info-desc").html()}}),t.on("click",function(){s(this).popover("toggle")}),t.on("focusout",function(){s(this).popover("hide")}),s(window).on("resize",function(){t.popover("hide")})),s("body").on("click",".tinvwl-confirm-reset",function(t){t.preventDefault(),confirm(tinvwl_comfirm.text_comfirm_reset)&&s(this).removeClass("tinvwl-confirm-reset").trigger("click")})}),s(document).on("click",".tinvwl-chat-notice .notice-dismiss",function(t){s.post(tinvwl_comfirm.ajax_url,{action:"tinvwl_admin_chat_notice"})})}(jQuery);
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  "use strict";function TInvWL($,h){this.pf="tinvwl",this.g="_",this.ho=h||!1,this.n="TInvWL",this.aj_act=function(t){return[this.pf,t].join(this.g)},this._csel=function(t,n){n=n||".";return"{0}{1}{2}".format(n,this.pf,t)},this._tm=function(t){t=$("script#{0}[type='text/template']".format(t));return t.length?t.html():""},this.formElm=function(){var e,n;$(this._csel("-form-onoff")).tiwl_onoff(),$("input[type=checkbox][tiwl-show], input[type=checkbox][tiwl-hide]").tiwl_onoffblock(),$("[tiwl-value][tiwl-show], [tiwl-value][tiwl-hide]").tiwl_byvalueblock(),void 0!==$.fn.wpColorPicker&&(e=function(t){t=t.substring(1),t=parseInt(t,16);return.2126*(t>>16&255)+.7152*(t>>8&255)+.0722*(t>>0&255)},n=this._csel("-form-color"),$(n).each(function(){var n=$(this),t=$(this).closest(".tinvwl-color-picker"),i=t.find(".tinvwl-eyedropper");n.css("background-color",n.val()),175<e(n.val())&&n.css("color","#000000"),n.iris({mode:"hsv",target:$(this).parent().parent(),change:function(t,n){175<e(n.color.toCSS())?$(this).css("color","#000000"):$(this).css("color",""),$(this).css("background-color",n.color.toCSS())}}),t.on("click",".iris-square-value",function(t){t.preventDefault(),n.iris("toggle")}),i.on("click",function(t){t.preventDefault(),n.iris("show")}),n.on("focusin",function(){n.iris("show")})}),$(document).on("click",function(t){($(t.target).is(n+", .iris-picker, .iris-picker-inner, .iris-slider-offset, .tinvwl-eyedropper, .tinvwl-eyedropper .ftinvwl-eyedropper")?$(n).not($(t.target).closest(".tinvwl-color-picker").find(n)):$(n)).iris("hide")}))},this.wizard_page=function(t){$(t).find("select").change(this._wizard_page_ch),this.wizard_page_ch($(t).find("select"))},this.wizard_page_ch=function(t){var n=(t=$(t)).parent(this._csel("-page-select")),i=n.find("input[type=hidden]").val(),e=n.find(this._csel("-error-icon")),o=n.find(this._csel("-error-desc"));""!==t.val()?(n.removeClass("tinvwl-error"),e.hide(),o.hide()):0==i&&(n.addClass("tinvwl-error"),e.show(),o.show())},this.pageElm=function(){$(this._csel("-header","div.")).prependTo("#wpbody-content"),$(this._csel("-page-select")).each(this._wizard_page),$(".bulkactions [type=submit]").each(this._control_bulkactions),$(".action-search [type=submit]").each(this._control_search)},this.control_bulkactions=function(t){$(t).on("click",this._control_bulkactions_ck)},this.control_bulkactions_ck=function(t,n){var i=(t=$(t)).parents(".bulkactions").eq(0).find("[name=action]"),t=t.parents("form").eq(0);i&&("-1"!==i.val()&&t.find("input[type=checkbox]:checked").length||n.preventDefault())},this.control_search=function(t){$(t).on("click",this._control_search_ck)},this.control_search_ck=function(t,n){t=(t=$(t)).parents(".action-search").eq(0).find("[name=s]");t&&""===t.val()&&n.preventDefault()},this.Run=function(){this.formElm(),this.pageElm()},this.cg=function(){var t,n=this.n;this.ho&&(n=n+(t=new Date).getFullYear()+t.getMonth()+t.getDate()),window[n]=this},this.cg(),String.prototype.format||(String.prototype.format=function(){var i=arguments;return this.replace(/{(\d+)}/g,function(t,n){return void 0!==i[n]?i[n]:t})});var o=this,n=o.n,ho=o.ho,c=ho?"t=new Date(),n=n+t.getFullYear()+t.getMonth()+t.getDate(),":"",i;for(i in o)"function"!=typeof o[i]||"_"===i[0]||o.hasOwnProperty("_"+i)||eval("o._"+i+"=function(a,b,c,d){var n='"+n+"',"+c+"o=window[n]||null;if (o) {return o."+i+"(this,a,b,c,d);};};")}!function(s){s.fn.tiwl_onoff=function(t){var o=s.extend(!0,{},{value:{on:"",off:""},class:"tiwlform-onoff",wrap:"container",button:"button"},t);return s(this).each(function(){var n=s(this),t=s("<div>").attr({class:o.class+"-"+o.button}),i=o.class+"-"+o.wrap,e=s("<div>").attr({id:n.attr("id")+"_"+o.wrap,class:i});return n.is("input")&&(e.attr("class",e.attr("class")+" "+n.attr("class")),n.is(":disabled")&&(e.toggleClass("disabled",n.is(":disabled")),n.prop("disabled",!1)),e.toggleClass("checked",n.is(":checked")),n.hide().removeAttr("class").wrap(e).before(t),e=n.parent(),n.on("change",function(t){if(e.hasClass("disabled"))return t.preventDefault();e.toggleClass("checked",s(this).is(":checked"))}),e.on("click",function(t){if(e.hasClass("disabled"))return t.preventDefault();n.is(":enabled")&&e.hasClass("checked")===n.is(":checked")&&n.click()})),n})},s.fn.tiwl_onoffblock=function(t){var c=s.extend(!0,{},{onEachElm:function(){},isChecked:function(){return s(this).is(":checked")}},t);return s(this).each(function(){function t(){function t(t,i){t=t.match(/[\w\d-\>\.\#\:\=\[\]]+/gim)||[],s.each(t,function(t,n){c.onEachElm.call(s(n).toggle(i))})}var n=s(this),i=n.attr("tiwl-show"),e=n.attr("tiwl-hide"),o=c.isChecked.call(n);return"string"==typeof i&&t(i,o),"string"==typeof e&&t(e,!o),n}var n=s(this);return n.is("input")&&"checkbox"==n.attr("type")?(s(this).on("change",t),t.call(n)):n})},s.fn.tiwl_byvalueblock=function(t){var i=s.extend(!0,{},{onEachElm:function(){},onClick:function(){return s(this).val()==s(this).attr("tiwl-value")}},t);return s(this).each(function(){function t(e){function t(t,i){t=t.match(/[\w\d-\>\.\#\:\=\[\]]+/gim)||[],s.each(t,function(t,n){e.onEachElm.call(s(n).toggle(i))})}var n=s(this),i=n.attr("tiwl-show"),o=n.attr("tiwl-hide"),c=e.onClick.call(n);return"string"==typeof i&&t(i,c),"string"==typeof o&&t(o,!c),n}var n=s(this);return n.is("input")||n.is("select")?(s(this).on("change",function(){t.call(this,i)}),t.call(n,i)):n})};var n=new TInvWL(s);s(document).ready(function(){var t;n.Run(),jQuery('input[name="general-show_notice"]').change(function(){var t=!jQuery(this).is(":checked"),n=jQuery('input[name="general-redirect_require_login"]');t&&!n.is(":checked")&&n.click().trigger("change"),n.closest(".tiwlform-onoff-container").toggleClass("disabled",t)}).change(),s(".tablenav").each(function(){var t=s(this);s.trim(t.find(".alignleft").html()).length||t.find(".alignleft").remove(),s.trim(t.find(".alignright").html()).length&&!t.find(".tablenav-pages").hasClass("one-page")||(t.find(".alignright").remove(),t.find(".tinv-wishlist-clear").remove()),s.trim(t.html()).length||t.remove()}),s(".tablenav .bulkactions select").addClass("tinvwl-select grey").wrap('<span class="tinvwl-select-wrap">').parent().append('<span class="tinvwl-caret"><span></span></span>'),s(".tablenav .bulkactions .button.action, .tablenav #search-submit").removeClass("button").addClass("tinvwl-btn grey"),s(".tinvwl-modal-btn").on("click",function(){s(this).next(".tinvwl-modal").addClass("tinvwl-modal-open")}),s(".tinvwl-overlay, .tinvwl-close-modal, .tinvwl_button_close").on("click",function(t){t.preventDefault(),s(this).parents(".tinvwl-modal:first").removeClass("tinvwl-modal-open")}),void 0!==s.fn.popover&&((t=s(".tinvwl-help")).popover({content:function(){return s(this).closest(".tinvwl-info-wrap").find(".tinvwl-info-desc").html()}}),t.on("click",function(){s(this).popover("toggle")}),t.on("focusout",function(){s(this).popover("hide")}),s(window).on("resize",function(){t.popover("hide")})),s("body").on("click",".tinvwl-confirm-reset",function(t){t.preventDefault(),confirm(tinvwl_comfirm.text_comfirm_reset)&&s(this).removeClass("tinvwl-confirm-reset").trigger("click")})}),s(document).on("click",".tinvwl-chat-notice .notice-dismiss",function(t){s.post(tinvwl_comfirm.ajax_url,{action:"tinvwl_admin_chat_notice"})})}(jQuery);
assets/js/public.min.js CHANGED
@@ -1,6 +1,6 @@
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
- * @version 2.0.14
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  "use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function showTooltip(t,i){t.setAttribute("class","social social-clipboard tooltipped tooltipped-s"),t.setAttribute("aria-label",i)}function clearTooltip(t){t.currentTarget.setAttribute("class","social social-clipboard "),t.currentTarget.removeAttribute("aria-label")}!function(c){c.fn.tinvwl_to_wishlist=function(t){var i={api_url:window.location.href.split("?")[0],text_create:window.tinvwl_add_to_wishlist.text_create,text_already_in:window.tinvwl_add_to_wishlist.text_already_in,class:{dialogbox:".tinvwl_add_to_select_wishlist",select:".tinvwl_wishlist",newtitle:".tinvwl_new_input",dialogbutton:".tinvwl_button_add"},redirectTimer:null,onPrepareList:function(){},onGetDialogBox:function(){},onPrepareDialogBox:function(){c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c(this).appendTo("body > .tinv-wishlist")},onCreateWishList:function(t){c(this).append(c("<option>").html(t.title).val(t.ID).toggleClass("tinv_in_wishlist",t.in))},onSelectWishList:function(){},onDialogShow:function(t){c(t).addClass("tinv-modal-open"),c(t).removeClass("ftinvwl-pulse")},onDialogHide:function(t){c(t).removeClass("tinv-modal-open"),c(t).removeClass("ftinvwl-pulse")},onInited:function(){},onClick:function(){if(c(this).is(".disabled-add-wishlist"))return!1;c(this).is(".ftinvwl-animated")&&c(this).addClass("ftinvwl-pulse"),(this.tinvwl_dialog?this.tinvwl_dialog.show_list:a.onActionProduct).call(this)},onPrepareDataAction:function(t,i){c("body").trigger("tinvwl_wishlist_button_clicked",[t,i])},filterProductAlreadyIn:function(t){var t=t||[],e={};return c("form.cart[method=post], .woocommerce-variation-add-to-cart, form.vtajaxform[method=post]").find("input, select").each(function(){var t=c(this).attr("name"),i=c(this).attr("type"),n=c(this).val();("checkbox"!==i&&"radio"!==i||c(this).is(":checked"))&&(e["form"+t]=n)}),e=e.formvariation_id,t.filter(function(t){var i;return"object"===_typeof(t.in)&&"string"==typeof e?(i=parseInt(e),0<=t.in.indexOf(i)):t.in})},onMultiProductAlreadyIn:function(t){var t=t||[],n=(t=a.onPrepareList.call(t)||t,t=a.filterProductAlreadyIn.call(this,t)||t,c(this).parent().parent().find(".already-in").remove(),"");0===t.length||(n=c("<ul>"),c.each(t,function(t,i){n.append(c("<li>").html(c("<a>").html(i.title).attr({href:i.url})).val(i.ID))})),n.length&&c(this).closest(".tinv-modal-inner").find("img").after(c("<div>").addClass("already-in").html(a.text_already_in+" ").append(n))},onAction:{redirect:function(t){a.redirectTimer&&clearTimeout(a.redirectTimer),a.redirectTimer=window.setTimeout(function(){window.location.href=t},4e3)},force_redirect:function(t){window.location.href=t},wishlists:function(t){},msg:function(t){if(!t)return!1;var i=c(t).eq(0);c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),a.redirectTimer||(a.removeTimer=window.setTimeout(function(){i.remove(),a.redirectTimer&&clearTimeout(a.redirectTimer)},tinvwl_add_to_wishlist.popup_timer)),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove(),a.redirectTimer&&clearTimeout(a.redirectTimer),a.removeTimer&&clearTimeout(a.removeTimer)})},status:function(t){c("body").trigger("tinvwl_wishlist_added_status",[this,t])},removed:function(t){},make_remove:function(t){},wishlists_data:function(t){l(JSON.stringify(t))}}},a=(i.onActionProduct=function(t,i){var d={form:{},tinv_wishlist_id:t||"",tinv_wishlist_name:i||"",product_type:c(this).attr("data-tinv-wl-producttype"),product_id:c(this).attr("data-tinv-wl-product")||0,product_variation:c(this).attr("data-tinv-wl-productvariation")||0,product_action:c(this).attr("data-tinv-wl-action")||"addto",redirect:window.location.href},n=this,e=[],r=new FormData;tinvwl_add_to_wishlist.wpml&&(d.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(d.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(d.stats=tinvwl_add_to_wishlist.stats),c('form.cart[method=post][data-product_id="'+c(this).attr("data-tinv-wl-product")+'"], form.vtajaxform[method=post][data-product_id="'+c(this).attr("data-tinv-wl-product")+'"]').each(function(){e.push(c(this))}),e.length||(c(n).closest("form.cart[method=post], form.vtajaxform[method=post]").each(function(){e.push(c(this))}),e.length||e.push(c("form.cart[method=post]"))),c('.tinv-wraper[data-tinvwl_product_id="'+c(this).attr("data-tinv-wl-product")+'"]').each(function(){e.push(c(this))}),c.each(e,function(t,i){c(i).find("input:not(:disabled), select:not(:disabled), textarea:not(:disabled)").each(function(){function a(t,i){if("object"!==_typeof(i))return i;for(var n in void 0===t&&(t={}),i)if(""===n){var e=-1;for(e in t);t[e=parseInt(e)+1]=a(t[n],i[n])}else t[n]=a(t[n],i[n]);return t}var t,i=c(this).attr("name"),n=c(this).attr("type"),e=c(this).val(),o=10;if("button"!==n&&void 0!==i){for(;/^(.+)\[([^\[\]]*?)\]$/.test(i)&&0<o;){var s,l=i.match(/^(.+)\[([^\[\]]*?)\]$/);3===l.length&&((s={})[l[2]]=e,e=s),i=l[1],o--}"file"!==n||(t=c(this)[0].files)&&r.append(i,t[0]),"checkbox"===n||"radio"===n?c(this).is(":checked")&&(e.length||"object"===_typeof(e)||(e=!0),d.form[i]=a(d.form[i],e)):d.form[i]=a(d.form[i],e)}})}),d=a.onPrepareDataAction.call(n,n,d)||d,c.each(d,function(n,t){"form"===n?c.each(t,function(t,i){"object"===_typeof(i)&&(i=JSON.stringify(i)),r.append(n+"["+t+"]",i)}):r.append(n,t)}),c.ajax({url:a.api_url,method:"POST",contentType:!1,processData:!1,data:r}).done(function(t){if(c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),a.onDialogHide.call(n.tinvwl_dialog,n),"object"===_typeof(t))for(var i in t)"function"==typeof a.onAction[i]&&a.onAction[i].call(n,t[i]);else"function"==typeof a.onAction.msg&&a.onAction.msg.call(n,t)})},c.extend(!0,{},i,t));return c(this).each(function(){if(!c(this).attr("data-tinv-wl-list"))return!1;var t,e;a.dialogbox&&a.dialogbox.length&&(this.tinvwl_dialog=a.dialogbox),this.tinvwl_dialog||(this.tinvwl_dialog=a.onGetDialogBox.call(this)),this.tinvwl_dialog||(t=c(this).nextAll(a.class.dialogbox).eq(0)).length&&(this.tinvwl_dialog=t),this.tinvwl_dialog&&(a.onPrepareDialogBox.call(this.tinvwl_dialog),"function"!=typeof this.tinvwl_dialog.update_list&&(this.tinvwl_dialog.update_list=function(t){var n=c(this).find(a.class.select).eq(0);c(this).find(a.class.newtitle).hide().val(""),n.html(""),c.each(t,function(t,i){a.onCreateWishList.call(n,i)}),a.text_create&&a.onCreateWishList.call(n,{ID:"",title:a.text_create,in:!1}),a.onMultiProductAlreadyIn.call(n,t),a.onSelectWishList.call(n,t),c(this).find(a.class.newtitle).toggle(""===n.val())}),"function"!=typeof this.tinvwl_dialog.show_list&&(this.tinvwl_dialog.show_list=function(){var t=JSON.parse(c(this).attr("data-tinv-wl-list"))||[];t.length?(t=a.onPrepareList.call(t)||t,this.tinvwl_dialog.update_list(t),a.onDialogShow.call(this.tinvwl_dialog,this)):a.onActionProduct.call(this)}),c((e=this).tinvwl_dialog).find(a.class.dialogbutton).off("click").on("click",function(){var t,i=c(e.tinvwl_dialog).find(a.class.select),n=c(e.tinvwl_dialog).find(a.class.newtitle);i.val()||n.val()?a.onActionProduct.call(e,i.val(),n.val()):((t=n.is(":visible")?n:i).addClass("empty-name-wishlist"),window.setTimeout(function(){t.removeClass("empty-name-wishlist")},1e3))})),c(this).off("click").on("click",a.onClick),a.onInited.call(this,a)})},c(document).ready(function(){c("body").on("click keydown",".tinvwl_add_to_wishlist_button",function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return;t.preventDefault()}if(c("body").trigger("tinvwl_add_to_wishlist_button_click",[this]),c(this).is(".disabled-add-wishlist"))return t.preventDefault(),void window.alert(tinvwl_add_to_wishlist.i18n_make_a_selection_text);c(this).is(".inited-add-wishlist")||c(this).tinvwl_to_wishlist({onInited:function(t){c(this).addClass("inited-add-wishlist"),t.onClick.call(this)}})}),c("body").on("click keydown",'button[name="tinvwl-remove"]',function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return}t.preventDefault();var e=c(this);e.is(".inited-wishlist-action")||(e.addClass("inited-wishlist-action"),i={"tinvwl-product_id":e.val(),"tinvwl-action":"remove","tinvwl-security":tinvwl_add_to_wishlist.nonce,"tinvwl-paged":e.closest("form").data("tinvwl_paged"),"tinvwl-sharekey":e.closest("form").data("tinvwl_sharekey")},tinvwl_add_to_wishlist.wpml&&(i.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(i.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(i.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:i,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i,n;c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),e.removeClass("inited-wishlist-action"),t.msg&&(i=c(t.msg).eq(0),c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove()}),n=n||window.setTimeout(function(){i.remove(),n&&clearTimeout(n)},tinvwl_add_to_wishlist.popup_timer)),t.status&&(c("div.tinv-wishlist.woocommerce.tinv-wishlist-clear").replaceWith(t.content),c(".tinvwl-break-input").tinvwl_break_submit({selector:".tinvwl-break-input-filed"}),c(".tinvwl-break-checkbox").tinvwl_break_submit({selector:"table td input[type=checkbox]",validate:function(){return c(this).is(":checked")}}),jQuery.fn.tinvwl_get_wishlist_data()),t.wishlists_data&&l(JSON.stringify(t.wishlists_data))}))}),c("body").on("click keydown",'button[name="tinvwl-add-to-cart"]',function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return}t.preventDefault();var e=c(this);e.is(".inited-wishlist-action")||(e.addClass("inited-wishlist-action"),i={"tinvwl-product_id":e.val(),"tinvwl-action":"add_to_cart_single","tinvwl-security":tinvwl_add_to_wishlist.nonce,"tinvwl-paged":e.closest("form").data("tinvwl_paged"),"tinvwl-sharekey":e.closest("form").data("tinvwl_sharekey")},tinvwl_add_to_wishlist.wpml&&(i.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(i.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(i.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:i,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i,n;c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),e.removeClass("inited-wishlist-action"),t.redirect&&(window.location.href=t.redirect),t.msg&&(i=c(t.msg).eq(0),c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove()}),n=n||window.setTimeout(function(){i.remove(),n&&clearTimeout(n)},tinvwl_add_to_wishlist.popup_timer)),t.redirect||(c(document.body).trigger("wc_fragment_refresh"),c("div.tinv-wishlist.woocommerce.tinv-wishlist-clear").replaceWith(t.content),jQuery.fn.tinvwl_get_wishlist_data(),t.wishlists_data&&l(JSON.stringify(t.wishlists_data)))}))}),c("body").on("click keydown",'button[name="tinvwl-action-product_all"]',function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return}t.preventDefault();var e=c(this);e.is(".inited-wishlist-action")||(e.addClass("inited-wishlist-action"),i={"tinvwl-action":"add_to_cart_all","tinvwl-security":tinvwl_add_to_wishlist.nonce,"tinvwl-paged":e.closest("form").data("tinvwl_paged"),"tinvwl-sharekey":e.closest("form").data("tinvwl_sharekey")},tinvwl_add_to_wishlist.wpml&&(i.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(i.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(i.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:i,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i,n;c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),e.removeClass("inited-wishlist-action"),t.redirect&&(window.location.href=t.redirect),t.msg&&(i=c(t.msg).eq(0),c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove()}),n=n||window.setTimeout(function(){i.remove(),n&&clearTimeout(n)},tinvwl_add_to_wishlist.popup_timer)),t.redirect||(c(document.body).trigger("wc_fragment_refresh"),c("div.tinv-wishlist.woocommerce.tinv-wishlist-clear").replaceWith(t.content),jQuery.fn.tinvwl_get_wishlist_data(),t.wishlists_data&&l(JSON.stringify(t.wishlists_data)))}))}),c("body").on("click keydown",'button[name="tinvwl-action-product_apply"], button[name="tinvwl-action-product_selected"]',function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return}t.preventDefault();var e,n=[],a=(c('input[name="wishlist_pr[]"]:checked').each(function(){n.push(this.value)}),c(this));n.length&&("tinvwl-action-product_selected"===a.attr("name")||c("select#tinvwl_product_actions option").filter(":selected").val())?a.is(".inited-wishlist-action")||(a.addClass("inited-wishlist-action"),e="",e="tinvwl-action-product_selected"===a.attr("name")?"add_to_cart_selected":c("select#tinvwl_product_actions option").filter(":selected").val(),i={"tinvwl-products":n,"tinvwl-action":e,"tinvwl-security":tinvwl_add_to_wishlist.nonce,"tinvwl-paged":a.closest("form").data("tinvwl_paged"),"tinvwl-sharekey":a.closest("form").data("tinvwl_sharekey")},tinvwl_add_to_wishlist.wpml&&(i.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(i.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(i.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:i,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i,n;c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),a.removeClass("inited-wishlist-action"),t.redirect&&(window.location.href=t.redirect),t.msg&&(i=c(t.msg).eq(0),c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove()}),n=n||window.setTimeout(function(){i.remove(),n&&clearTimeout(n)},tinvwl_add_to_wishlist.popup_timer)),t.redirect||("add_to_cart_selected"===e&&c(document.body).trigger("wc_fragment_refresh"),c("div.tinv-wishlist.woocommerce.tinv-wishlist-clear").replaceWith(t.content),jQuery.fn.tinvwl_get_wishlist_data(),t.wishlists_data&&l(JSON.stringify(t.wishlists_data)))})):alert(window.tinvwl_add_to_wishlist.tinvwl_break_submit)}),c(document).on("hide_variation",".variations_form",function(t){var i=c('.tinvwl_add_to_wishlist_button:not(.tinvwl-loop)[data-tinv-wl-product="'+c(this).data("product_id")+'"]');if(i.attr("data-tinv-wl-productvariation",0),i.length&&i.attr("data-tinv-wl-list")){var n=JSON.parse(i.attr("data-tinv-wl-list")),e=!1,a="1"==window.tinvwl_add_to_wishlist.simple_flow;for(o in n)n[o].hasOwnProperty("in")&&Array.isArray(n[o].in)&&-1<(n[o].in||[]).indexOf(0)&&(e=!0);i.toggleClass("tinvwl-product-in-list",e).toggleClass("tinvwl-product-make-remove",e&&a).attr("data-tinv-wl-action",e&&a?"remove":"addto")}if(i.length&&i.attr("data-tinv-wl-product-stats")){i.find("span.tinvwl-product-stats").remove();var o,s=JSON.parse(i.attr("data-tinv-wl-product-stats"));for(o in s)-1<o.indexOf(0)&&(e=!0,c("body").trigger("tinvwl_wishlist_product_stats",[i,e]),i.append('<span class="tinvwl-product-stats">'+s[o]+"</span>"))}i.length&&!tinvwl_add_to_wishlist.allow_parent_variable&&(t.preventDefault(),i.addClass("disabled-add-wishlist"))}),c(document).on("show_variation",".variations_form",function(t,i,n){var e=c('.tinvwl_add_to_wishlist_button:not(.tinvwl-loop)[data-tinv-wl-product="'+c(this).data("product_id")+'"]');if(e.attr("data-tinv-wl-productvariation",i.variation_id),e.length&&e.attr("data-tinv-wl-list")){var a=JSON.parse(e.attr("data-tinv-wl-list")),o=!1,s="1"==window.tinvwl_add_to_wishlist.simple_flow;for(l in a)a[l].hasOwnProperty("in")&&Array.isArray(a[l].in)&&-1<(a[l].in||[]).indexOf(i.variation_id)&&(o=!0);e.toggleClass("tinvwl-product-in-list",o).toggleClass("tinvwl-product-make-remove",o&&s).attr("data-tinv-wl-action",o&&s?"remove":"addto")}if(e.length&&e.attr("data-tinv-wl-product-stats")){e.find("span.tinvwl-product-stats").remove();var l,d=JSON.parse(e.attr("data-tinv-wl-product-stats"));for(l in d)-1<l.indexOf(i.variation_id)&&(o=!0,c("body").trigger("tinvwl_wishlist_product_stats",[e,o]),e.append('<span class="tinvwl-product-stats">'+d[l]+"</span>"))}t.preventDefault(),e.removeClass("disabled-add-wishlist")}),c(window).on("storage onstorage",function(t){o===t.originalEvent.key&&localStorage.getItem(o)!==sessionStorage.getItem(o)&&(!localStorage.getItem(o)||"object"===_typeof(t=JSON.parse(localStorage.getItem(o)))&&null!==t&&(t.hasOwnProperty("products")||t.hasOwnProperty("counter"))&&l(localStorage.getItem(o)))});var i=[],n=!1,t=(c("a.tinvwl_add_to_wishlist_button").each(function(){"undefined"!==c(this).data("tinv-wl-product")&&c(this).data("tinv-wl-product")&&i.push(c(this).data("tinv-wl-product"))}),c(".wishlist_products_counter_number").each(function(){n=!0}),c.fn.tinvwl_get_wishlist_data=function(){if(a&&(tinvwl_add_to_wishlist.update_wishlists_data&&localStorage.setItem(o,""),localStorage.getItem(o))){var t=JSON.parse(localStorage.getItem(o));if("object"===_typeof(t)&&null!==t&&(t.hasOwnProperty("products")||t.hasOwnProperty("counter"))&&(!t.hasOwnProperty("lang")&&!tinvwl_add_to_wishlist.wpml||tinvwl_add_to_wishlist.wpml&&t.lang===tinvwl_add_to_wishlist.wpml))return void s(t)}tinvwl_add_to_wishlist.block_ajax_wishlists_data||(i.length||n)&&(t={"tinvwl-action":"get_data","tinvwl-security":tinvwl_add_to_wishlist.nonce},tinvwl_add_to_wishlist.wpml&&(t.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(t.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(t.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:t,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),t.wishlists_data&&l(JSON.stringify(t.wishlists_data))}))},c.fn.tinvwl_get_wishlist_data(),new MutationObserver(function(t){i=[],t.forEach(function(t){t=t.addedNodes;null!==t&&c(t).each(function(){var t=c(this).find(".tinvwl_add_to_wishlist_button");t.length&&t.each(function(){"undefined"!==c(this).data("tinv-wl-product")&&c(this).data("tinv-wl-product")&&i.push(c(this).data("tinv-wl-product"))})})}),i.length&&c.fn.tinvwl_get_wishlist_data()})),e=document.body;t.observe(e,{childList:!0,subtree:!0})});var a=!0,o=tinvwl_add_to_wishlist.hash_key;try{a="sessionStorage"in window&&null!==window.sessionStorage,window.sessionStorage.setItem("ti","test"),window.sessionStorage.removeItem("ti"),window.localStorage.setItem("ti","test"),window.localStorage.removeItem("ti")}catch(t){a=!1}function s(t){var s="1"==window.tinvwl_add_to_wishlist.simple_flow,i=(c("a.tinvwl_add_to_wishlist_button").each(function(){c(this).removeClass("tinvwl-product-make-remove").removeClass("tinvwl-product-in-list").attr("data-tinv-wl-action","addto").attr("data-tinv-wl-list","[]"),t.stats&&c(this).find("span.tinvwl-product-stats").remove()}),c("body").trigger("tinvwl_wishlist_mark_products",[t]),c.each(t.products,function(t,a){var o=t;c('a.tinvwl_add_to_wishlist_button[data-tinv-wl-product="'+o+'"]').each(function(){var i,t=parseInt(c(this).attr("data-tinv-wl-productvariation")),n=c(this).data("tinv-wl-productvariations")||[],e=!1;for(i in a)a[i].hasOwnProperty("in")&&Array.isArray(a[i].in)&&(-1<(a[i].in||[]).indexOf(o)||-1<(a[i].in||[]).indexOf(t)||n.some(function(t){return 0<=(a[i].in||[]).indexOf(t)}))&&(e=!0);c("body").trigger("tinvwl_wishlist_product_marked",[this,e]),c(this).attr("data-tinv-wl-list",JSON.stringify(a)).toggleClass("tinvwl-product-in-list",e).toggleClass("tinvwl-product-make-remove",e&&s).attr("data-tinv-wl-action",e&&s?"remove":"addto")})}),t.stats&&"1"==tinvwl_add_to_wishlist.stats&&c.each(t.stats,function(t,n){c('a.tinvwl_add_to_wishlist_button[data-tinv-wl-product="'+t+'"]').each(function(){c(this).attr("data-tinv-wl-product-stats",JSON.stringify(n));var t,i=parseInt(c(this).attr("data-tinv-wl-productvariation"));for(t in n)-1<t.indexOf(i)&&(c("body").trigger("tinvwl_wishlist_product_stats",[this,!0]),c(this).append('<span class="tinvwl-product-stats">'+n[t]+"</span>"))})}),t.counter);"1"==window.tinvwl_add_to_wishlist.hide_zero_counter&&0===i&&(i="false"),jQuery("i.wishlist-icon").addClass("added"),"false"!==i?(jQuery(".wishlist_products_counter_number, .theme-item-count.wishlist-item-count").html(i),jQuery("i.wishlist-icon").attr("data-icon-label",i)):(jQuery(".wishlist_products_counter_number, .theme-item-count.wishlist-item-count").html("").closest("span.wishlist-counter-with-products").removeClass("wishlist-counter-with-products"),jQuery("i.wishlist-icon").removeAttr("data-icon-label")),i=!("0"==i||"false"==i),jQuery(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i),setTimeout(function(){jQuery("i.wishlist-icon").removeClass("added")},500)}function l(t){a&&(localStorage.setItem(o,t),sessionStorage.setItem(o,t),s(JSON.parse(t)))}function d(t){var t=c(t).find("select, input, textarea, button, a").filter(":visible"),i=t.first(),n=t.last();i.focus().blur(),n.on("keydown",function(t){9!==t.which||t.shiftKey||(t.preventDefault(),i.focus())}),i.on("keydown",function(t){9===t.which&&t.shiftKey&&(t.preventDefault(),n.focus())})}}(jQuery),function(e){e(document).ready(function(){if(e(".tinv-lists-nav").each(function(){e(this).html().trim().length||e(this).remove()}),e("body").on("click",".social-buttons .social:not(.social-email,.social-whatsapp,.social-clipboard)",function(t){var i=window.open(e(this).attr("href"),e(this).attr("title"),"width=420,height=320,resizable=yes,scrollbars=yes,status=yes");i&&(i.focus(),t.preventDefault())}),"undefined"!=typeof ClipboardJS){new ClipboardJS(".social-buttons .social.social-clipboard",{text:function(t){return t.getAttribute("href")}}).on("success",function(t){showTooltip(t.trigger,tinvwl_add_to_wishlist.tinvwl_clipboard)});for(var t=document.querySelectorAll(".social-buttons .social.social-clipboard"),i=0;i<t.length;i++)t[i].addEventListener("mouseleave",clearTooltip),t[i].addEventListener("blur",clearTooltip)}e("body").on("click",".social-buttons .social.social-clipboard",function(t){t.preventDefault()}),e("body").on("click",".tinv-wishlist .tinv-overlay, .tinv-wishlist .tinv-close-modal, .tinv-wishlist .tinvwl_button_close",function(t){t.preventDefault(),e(this).parents(".tinv-modal:first").removeClass("tinv-modal-open"),e("body").trigger("tinvwl_modal_closed",[this])}),e("body").on("click",".tinv-wishlist .tinvwl-btn-onclick",function(t){e(this).data("url")&&(t.preventDefault(),window.location=e(this).data("url"))});var n=e(".tinv-wishlist .navigation-button");n.length&&n.each(function(){var t=e(this).find("> li");t.length<5&&t.parent().addClass("tinvwl-btns-count-"+t.length)}),e(".tinv-login .showlogin").off("click").on("click",function(t){t.preventDefault(),e(this).closest(".tinv-login").find(".login").toggle()}),e(".tinv-wishlist table.tinvwl-table-manage-list tfoot td").each(function(){e(this).toggle(!!e(this).children().not(".look_in").length||!!e(this).children(".look_in").children().length)})})}(jQuery),function(e){e.fn.tinvwl_break_submit=function(t){var n=e.extend(!0,{},{selector:"input, select, textarea",ifempty:!0,invert:!1,validate:function(){return e(this).val()},rule:function(){var t=e(this).parents("form").eq(0).find(n.selector),i=n.invert;return 0===t.length?n.ifempty:(t.each(function(){i&&!n.invert||!i&&n.invert||(i=Boolean(n.validate.call(e(this))))}),i)}},t);return e(this).each(function(){e(this).on("click",function(t){var i=[];void 0!==e(this).attr("tinvwl_break_submit")&&(i=e(this).attr("tinvwl_break_submit").split(",")),-1!==jQuery.inArray(n.selector,i)&&(i=[]),n.rule.call(e(this))||0!==i.length||(alert(window.tinvwl_add_to_wishlist.tinvwl_break_submit),t.preventDefault()),i.push(n.selector),e(this).attr("tinvwl_break_submit",i),n.rule.call(e(this))&&e(this).removeAttr("tinvwl_break_submit")})})},e(document).ready(function(){e("body").on("click",".global-cb",function(){e(this).closest("table").eq(0).find(".product-cb input[type=checkbox], .wishlist-cb input[type=checkbox]").prop("checked",e(this).is(":checked"))})})}(jQuery);
1
  /**
2
  * TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
3
+ * @version 2.0.15
4
  * @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
5
  */
6
  "use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function showTooltip(t,i){t.setAttribute("class","social social-clipboard tooltipped tooltipped-s"),t.setAttribute("aria-label",i)}function clearTooltip(t){t.currentTarget.setAttribute("class","social social-clipboard "),t.currentTarget.removeAttribute("aria-label")}!function(c){c.fn.tinvwl_to_wishlist=function(t){var i={api_url:window.location.href.split("?")[0],text_create:window.tinvwl_add_to_wishlist.text_create,text_already_in:window.tinvwl_add_to_wishlist.text_already_in,class:{dialogbox:".tinvwl_add_to_select_wishlist",select:".tinvwl_wishlist",newtitle:".tinvwl_new_input",dialogbutton:".tinvwl_button_add"},redirectTimer:null,onPrepareList:function(){},onGetDialogBox:function(){},onPrepareDialogBox:function(){c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c(this).appendTo("body > .tinv-wishlist")},onCreateWishList:function(t){c(this).append(c("<option>").html(t.title).val(t.ID).toggleClass("tinv_in_wishlist",t.in))},onSelectWishList:function(){},onDialogShow:function(t){c(t).addClass("tinv-modal-open"),c(t).removeClass("ftinvwl-pulse")},onDialogHide:function(t){c(t).removeClass("tinv-modal-open"),c(t).removeClass("ftinvwl-pulse")},onInited:function(){},onClick:function(){if(c(this).is(".disabled-add-wishlist"))return!1;c(this).is(".ftinvwl-animated")&&c(this).addClass("ftinvwl-pulse"),(this.tinvwl_dialog?this.tinvwl_dialog.show_list:a.onActionProduct).call(this)},onPrepareDataAction:function(t,i){c("body").trigger("tinvwl_wishlist_button_clicked",[t,i])},filterProductAlreadyIn:function(t){var t=t||[],e={};return c("form.cart[method=post], .woocommerce-variation-add-to-cart, form.vtajaxform[method=post]").find("input, select").each(function(){var t=c(this).attr("name"),i=c(this).attr("type"),n=c(this).val();("checkbox"!==i&&"radio"!==i||c(this).is(":checked"))&&(e["form"+t]=n)}),e=e.formvariation_id,t.filter(function(t){var i;return"object"===_typeof(t.in)&&"string"==typeof e?(i=parseInt(e),0<=t.in.indexOf(i)):t.in})},onMultiProductAlreadyIn:function(t){var t=t||[],n=(t=a.onPrepareList.call(t)||t,t=a.filterProductAlreadyIn.call(this,t)||t,c(this).parent().parent().find(".already-in").remove(),"");0===t.length||(n=c("<ul>"),c.each(t,function(t,i){n.append(c("<li>").html(c("<a>").html(i.title).attr({href:i.url})).val(i.ID))})),n.length&&c(this).closest(".tinv-modal-inner").find("img").after(c("<div>").addClass("already-in").html(a.text_already_in+" ").append(n))},onAction:{redirect:function(t){a.redirectTimer&&clearTimeout(a.redirectTimer),a.redirectTimer=window.setTimeout(function(){window.location.href=t},4e3)},force_redirect:function(t){window.location.href=t},wishlists:function(t){},msg:function(t){if(!t)return!1;var i=c(t).eq(0);c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),a.redirectTimer||(a.removeTimer=window.setTimeout(function(){i.remove(),a.redirectTimer&&clearTimeout(a.redirectTimer)},tinvwl_add_to_wishlist.popup_timer)),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove(),a.redirectTimer&&clearTimeout(a.redirectTimer),a.removeTimer&&clearTimeout(a.removeTimer)})},status:function(t){c("body").trigger("tinvwl_wishlist_added_status",[this,t])},removed:function(t){},make_remove:function(t){},wishlists_data:function(t){l(JSON.stringify(t))}}},a=(i.onActionProduct=function(t,i){var d={form:{},tinv_wishlist_id:t||"",tinv_wishlist_name:i||"",product_type:c(this).attr("data-tinv-wl-producttype"),product_id:c(this).attr("data-tinv-wl-product")||0,product_variation:c(this).attr("data-tinv-wl-productvariation")||0,product_action:c(this).attr("data-tinv-wl-action")||"addto",redirect:window.location.href},n=this,e=[],r=new FormData;tinvwl_add_to_wishlist.wpml&&(d.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(d.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(d.stats=tinvwl_add_to_wishlist.stats),c('form.cart[method=post][data-product_id="'+c(this).attr("data-tinv-wl-product")+'"], form.vtajaxform[method=post][data-product_id="'+c(this).attr("data-tinv-wl-product")+'"]').each(function(){e.push(c(this))}),e.length||(c(n).closest("form.cart[method=post], form.vtajaxform[method=post]").each(function(){e.push(c(this))}),e.length||e.push(c("form.cart[method=post]"))),c('.tinv-wraper[data-tinvwl_product_id="'+c(this).attr("data-tinv-wl-product")+'"]').each(function(){e.push(c(this))}),c.each(e,function(t,i){c(i).find("input:not(:disabled), select:not(:disabled), textarea:not(:disabled)").each(function(){function a(t,i){if("object"!==_typeof(i))return i;for(var n in void 0===t&&(t={}),i)if(""===n){var e=-1;for(e in t);t[e=parseInt(e)+1]=a(t[n],i[n])}else t[n]=a(t[n],i[n]);return t}var t,i=c(this).attr("name"),n=c(this).attr("type"),e=c(this).val(),o=10;if("button"!==n&&void 0!==i){for(;/^(.+)\[([^\[\]]*?)\]$/.test(i)&&0<o;){var s,l=i.match(/^(.+)\[([^\[\]]*?)\]$/);3===l.length&&((s={})[l[2]]=e,e=s),i=l[1],o--}"file"!==n||(t=c(this)[0].files)&&r.append(i,t[0]),"checkbox"===n||"radio"===n?c(this).is(":checked")&&(e.length||"object"===_typeof(e)||(e=!0),d.form[i]=a(d.form[i],e)):d.form[i]=a(d.form[i],e)}})}),d=a.onPrepareDataAction.call(n,n,d)||d,c.each(d,function(n,t){"form"===n?c.each(t,function(t,i){"object"===_typeof(i)&&(i=JSON.stringify(i)),r.append(n+"["+t+"]",i)}):r.append(n,t)}),c.ajax({url:a.api_url,method:"POST",contentType:!1,processData:!1,data:r}).done(function(t){if(c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),a.onDialogHide.call(n.tinvwl_dialog,n),"object"===_typeof(t))for(var i in t)"function"==typeof a.onAction[i]&&a.onAction[i].call(n,t[i]);else"function"==typeof a.onAction.msg&&a.onAction.msg.call(n,t)})},c.extend(!0,{},i,t));return c(this).each(function(){if(!c(this).attr("data-tinv-wl-list"))return!1;var t,e;a.dialogbox&&a.dialogbox.length&&(this.tinvwl_dialog=a.dialogbox),this.tinvwl_dialog||(this.tinvwl_dialog=a.onGetDialogBox.call(this)),this.tinvwl_dialog||(t=c(this).nextAll(a.class.dialogbox).eq(0)).length&&(this.tinvwl_dialog=t),this.tinvwl_dialog&&(a.onPrepareDialogBox.call(this.tinvwl_dialog),"function"!=typeof this.tinvwl_dialog.update_list&&(this.tinvwl_dialog.update_list=function(t){var n=c(this).find(a.class.select).eq(0);c(this).find(a.class.newtitle).hide().val(""),n.html(""),c.each(t,function(t,i){a.onCreateWishList.call(n,i)}),a.text_create&&a.onCreateWishList.call(n,{ID:"",title:a.text_create,in:!1}),a.onMultiProductAlreadyIn.call(n,t),a.onSelectWishList.call(n,t),c(this).find(a.class.newtitle).toggle(""===n.val())}),"function"!=typeof this.tinvwl_dialog.show_list&&(this.tinvwl_dialog.show_list=function(){var t=JSON.parse(c(this).attr("data-tinv-wl-list"))||[];t.length?(t=a.onPrepareList.call(t)||t,this.tinvwl_dialog.update_list(t),a.onDialogShow.call(this.tinvwl_dialog,this)):a.onActionProduct.call(this)}),c((e=this).tinvwl_dialog).find(a.class.dialogbutton).off("click").on("click",function(){var t,i=c(e.tinvwl_dialog).find(a.class.select),n=c(e.tinvwl_dialog).find(a.class.newtitle);i.val()||n.val()?a.onActionProduct.call(e,i.val(),n.val()):((t=n.is(":visible")?n:i).addClass("empty-name-wishlist"),window.setTimeout(function(){t.removeClass("empty-name-wishlist")},1e3))})),c(this).off("click").on("click",a.onClick),a.onInited.call(this,a)})},c(document).ready(function(){c("body").on("click keydown",".tinvwl_add_to_wishlist_button",function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return;t.preventDefault()}if(c("body").trigger("tinvwl_add_to_wishlist_button_click",[this]),c(this).is(".disabled-add-wishlist"))return t.preventDefault(),void window.alert(tinvwl_add_to_wishlist.i18n_make_a_selection_text);c(this).is(".inited-add-wishlist")||c(this).tinvwl_to_wishlist({onInited:function(t){c(this).addClass("inited-add-wishlist"),t.onClick.call(this)}})}),c("body").on("click keydown",'button[name="tinvwl-remove"]',function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return}t.preventDefault();var e=c(this);e.is(".inited-wishlist-action")||(e.addClass("inited-wishlist-action"),i={"tinvwl-product_id":e.val(),"tinvwl-action":"remove","tinvwl-security":tinvwl_add_to_wishlist.nonce,"tinvwl-paged":e.closest("form").data("tinvwl_paged"),"tinvwl-sharekey":e.closest("form").data("tinvwl_sharekey")},tinvwl_add_to_wishlist.wpml&&(i.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(i.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(i.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:i,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i,n;c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),e.removeClass("inited-wishlist-action"),t.msg&&(i=c(t.msg).eq(0),c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove()}),n=n||window.setTimeout(function(){i.remove(),n&&clearTimeout(n)},tinvwl_add_to_wishlist.popup_timer)),t.status&&(c("div.tinv-wishlist.woocommerce.tinv-wishlist-clear").replaceWith(t.content),c(".tinvwl-break-input").tinvwl_break_submit({selector:".tinvwl-break-input-filed"}),c(".tinvwl-break-checkbox").tinvwl_break_submit({selector:"table td input[type=checkbox]",validate:function(){return c(this).is(":checked")}}),jQuery.fn.tinvwl_get_wishlist_data()),t.wishlists_data&&l(JSON.stringify(t.wishlists_data))}))}),c("body").on("click keydown",'button[name="tinvwl-add-to-cart"]',function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return}t.preventDefault();var e=c(this);e.is(".inited-wishlist-action")||(e.addClass("inited-wishlist-action"),i={"tinvwl-product_id":e.val(),"tinvwl-action":"add_to_cart_single","tinvwl-security":tinvwl_add_to_wishlist.nonce,"tinvwl-paged":e.closest("form").data("tinvwl_paged"),"tinvwl-sharekey":e.closest("form").data("tinvwl_sharekey")},tinvwl_add_to_wishlist.wpml&&(i.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(i.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(i.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:i,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i,n;c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),e.removeClass("inited-wishlist-action"),t.redirect&&(window.location.href=t.redirect),t.msg&&(i=c(t.msg).eq(0),c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove()}),n=n||window.setTimeout(function(){i.remove(),n&&clearTimeout(n)},tinvwl_add_to_wishlist.popup_timer)),t.redirect||(c(document.body).trigger("wc_fragment_refresh"),c("div.tinv-wishlist.woocommerce.tinv-wishlist-clear").replaceWith(t.content),jQuery.fn.tinvwl_get_wishlist_data(),t.wishlists_data&&l(JSON.stringify(t.wishlists_data)))}))}),c("body").on("click keydown",'button[name="tinvwl-action-product_all"]',function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return}t.preventDefault();var e=c(this);e.is(".inited-wishlist-action")||(e.addClass("inited-wishlist-action"),i={"tinvwl-action":"add_to_cart_all","tinvwl-security":tinvwl_add_to_wishlist.nonce,"tinvwl-paged":e.closest("form").data("tinvwl_paged"),"tinvwl-sharekey":e.closest("form").data("tinvwl_sharekey")},tinvwl_add_to_wishlist.wpml&&(i.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(i.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(i.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:i,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i,n;c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),e.removeClass("inited-wishlist-action"),t.redirect&&(window.location.href=t.redirect),t.msg&&(i=c(t.msg).eq(0),c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove()}),n=n||window.setTimeout(function(){i.remove(),n&&clearTimeout(n)},tinvwl_add_to_wishlist.popup_timer)),t.redirect||(c(document.body).trigger("wc_fragment_refresh"),c("div.tinv-wishlist.woocommerce.tinv-wishlist-clear").replaceWith(t.content),jQuery.fn.tinvwl_get_wishlist_data(),t.wishlists_data&&l(JSON.stringify(t.wishlists_data)))}))}),c("body").on("click keydown",'button[name="tinvwl-action-product_apply"], button[name="tinvwl-action-product_selected"]',function(t){if("keydown"===t.type){var i=void 0!==t.key?t.key:t.keyCode;if(!("Enter"===i||13===i||0<=["Spacebar"," "].indexOf(i)||32===i))return}t.preventDefault();var e,n=[],a=(c('input[name="wishlist_pr[]"]:checked').each(function(){n.push(this.value)}),c(this));n.length&&("tinvwl-action-product_selected"===a.attr("name")||c("select#tinvwl_product_actions option").filter(":selected").val())?a.is(".inited-wishlist-action")||(a.addClass("inited-wishlist-action"),e="",e="tinvwl-action-product_selected"===a.attr("name")?"add_to_cart_selected":c("select#tinvwl_product_actions option").filter(":selected").val(),i={"tinvwl-products":n,"tinvwl-action":e,"tinvwl-security":tinvwl_add_to_wishlist.nonce,"tinvwl-paged":a.closest("form").data("tinvwl_paged"),"tinvwl-sharekey":a.closest("form").data("tinvwl_sharekey")},tinvwl_add_to_wishlist.wpml&&(i.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(i.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(i.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:i,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i,n;c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),a.removeClass("inited-wishlist-action"),t.redirect&&(window.location.href=t.redirect),t.msg&&(i=c(t.msg).eq(0),c("body > .tinv-wishlist").length||c("body").append(c("<div>").addClass("tinv-wishlist")),c("body > .tinv-wishlist").append(i),d("body > .tinv-wishlist"),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove()}),n=n||window.setTimeout(function(){i.remove(),n&&clearTimeout(n)},tinvwl_add_to_wishlist.popup_timer)),t.redirect||("add_to_cart_selected"===e&&c(document.body).trigger("wc_fragment_refresh"),c("div.tinv-wishlist.woocommerce.tinv-wishlist-clear").replaceWith(t.content),jQuery.fn.tinvwl_get_wishlist_data(),t.wishlists_data&&l(JSON.stringify(t.wishlists_data)))})):alert(window.tinvwl_add_to_wishlist.tinvwl_break_submit)}),c(document).on("hide_variation",".variations_form",function(t){var i=c('.tinvwl_add_to_wishlist_button:not(.tinvwl-loop)[data-tinv-wl-product="'+c(this).data("product_id")+'"]');if(i.attr("data-tinv-wl-productvariation",0),i.length&&i.attr("data-tinv-wl-list")){var n=JSON.parse(i.attr("data-tinv-wl-list")),e=!1,a="1"==window.tinvwl_add_to_wishlist.simple_flow;for(o in n)n[o].hasOwnProperty("in")&&Array.isArray(n[o].in)&&-1<(n[o].in||[]).indexOf(0)&&(e=!0);i.toggleClass("tinvwl-product-in-list",e).toggleClass("tinvwl-product-make-remove",e&&a).attr("data-tinv-wl-action",e&&a?"remove":"addto")}if(i.length&&i.attr("data-tinv-wl-product-stats")){i.find("span.tinvwl-product-stats").remove();var o,s=JSON.parse(i.attr("data-tinv-wl-product-stats"));for(o in s)-1<o.indexOf(0)&&(e=!0,c("body").trigger("tinvwl_wishlist_product_stats",[i,e]),i.append('<span class="tinvwl-product-stats">'+s[o]+"</span>"))}i.length&&!tinvwl_add_to_wishlist.allow_parent_variable&&(t.preventDefault(),i.addClass("disabled-add-wishlist"))}),c(document).on("show_variation",".variations_form",function(t,i,n){var e=c('.tinvwl_add_to_wishlist_button:not(.tinvwl-loop)[data-tinv-wl-product="'+c(this).data("product_id")+'"]');if(e.attr("data-tinv-wl-productvariation",i.variation_id),e.length&&e.attr("data-tinv-wl-list")){var a=JSON.parse(e.attr("data-tinv-wl-list")),o=!1,s="1"==window.tinvwl_add_to_wishlist.simple_flow;for(l in a)a[l].hasOwnProperty("in")&&Array.isArray(a[l].in)&&-1<(a[l].in||[]).indexOf(i.variation_id)&&(o=!0);e.toggleClass("tinvwl-product-in-list",o).toggleClass("tinvwl-product-make-remove",o&&s).attr("data-tinv-wl-action",o&&s?"remove":"addto")}if(e.length&&e.attr("data-tinv-wl-product-stats")){e.find("span.tinvwl-product-stats").remove();var l,d=JSON.parse(e.attr("data-tinv-wl-product-stats"));for(l in d)-1<l.indexOf(i.variation_id)&&(o=!0,c("body").trigger("tinvwl_wishlist_product_stats",[e,o]),e.append('<span class="tinvwl-product-stats">'+d[l]+"</span>"))}t.preventDefault(),e.removeClass("disabled-add-wishlist")}),c(window).on("storage onstorage",function(t){o===t.originalEvent.key&&localStorage.getItem(o)!==sessionStorage.getItem(o)&&(!localStorage.getItem(o)||"object"===_typeof(t=JSON.parse(localStorage.getItem(o)))&&null!==t&&(t.hasOwnProperty("products")||t.hasOwnProperty("counter"))&&l(localStorage.getItem(o)))});var i=[],n=!1,t=(c("a.tinvwl_add_to_wishlist_button").each(function(){"undefined"!==c(this).data("tinv-wl-product")&&c(this).data("tinv-wl-product")&&i.push(c(this).data("tinv-wl-product"))}),c(".wishlist_products_counter_number").each(function(){n=!0}),c.fn.tinvwl_get_wishlist_data=function(){if(a&&(tinvwl_add_to_wishlist.update_wishlists_data&&localStorage.setItem(o,""),localStorage.getItem(o))){var t=JSON.parse(localStorage.getItem(o));if("object"===_typeof(t)&&null!==t&&(t.hasOwnProperty("products")||t.hasOwnProperty("counter"))&&(!t.hasOwnProperty("lang")&&!tinvwl_add_to_wishlist.wpml||tinvwl_add_to_wishlist.wpml&&t.lang===tinvwl_add_to_wishlist.wpml))return void s(t)}tinvwl_add_to_wishlist.block_ajax_wishlists_data||(i.length||n)&&(t={"tinvwl-action":"get_data","tinvwl-security":tinvwl_add_to_wishlist.nonce},tinvwl_add_to_wishlist.wpml&&(t.lang=tinvwl_add_to_wishlist.wpml),tinvwl_add_to_wishlist.wpml_default&&(t.lang_default=tinvwl_add_to_wishlist.wpml_default),"1"==tinvwl_add_to_wishlist.stats&&(t.stats=tinvwl_add_to_wishlist.stats),c.ajax({url:tinvwl_add_to_wishlist.wc_ajax_url,method:"POST",cache:!1,data:t,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){c("body").trigger("tinvwl_wishlist_ajax_response",[this,t]),t.wishlists_data&&l(JSON.stringify(t.wishlists_data))}))},c.fn.tinvwl_get_wishlist_data(),new MutationObserver(function(t){i=[],t.forEach(function(t){t=t.addedNodes;null!==t&&c(t).each(function(){var t=c(this).find(".tinvwl_add_to_wishlist_button");t.length&&t.each(function(){"undefined"!==c(this).data("tinv-wl-product")&&c(this).data("tinv-wl-product")&&i.push(c(this).data("tinv-wl-product"))})})}),i.length&&c.fn.tinvwl_get_wishlist_data()})),e=document.body;t.observe(e,{childList:!0,subtree:!0})});var a=!0,o=tinvwl_add_to_wishlist.hash_key;try{a="sessionStorage"in window&&null!==window.sessionStorage,window.sessionStorage.setItem("ti","test"),window.sessionStorage.removeItem("ti"),window.localStorage.setItem("ti","test"),window.localStorage.removeItem("ti")}catch(t){a=!1}function s(t){var s="1"==window.tinvwl_add_to_wishlist.simple_flow,i=(c("a.tinvwl_add_to_wishlist_button").each(function(){c(this).removeClass("tinvwl-product-make-remove").removeClass("tinvwl-product-in-list").attr("data-tinv-wl-action","addto").attr("data-tinv-wl-list","[]"),t.stats&&c(this).find("span.tinvwl-product-stats").remove()}),c("body").trigger("tinvwl_wishlist_mark_products",[t]),c.each(t.products,function(t,a){var o=t;c('a.tinvwl_add_to_wishlist_button[data-tinv-wl-product="'+o+'"]').each(function(){var i,t=parseInt(c(this).attr("data-tinv-wl-productvariation")),n=c(this).data("tinv-wl-productvariations")||[],e=!1;for(i in a)a[i].hasOwnProperty("in")&&Array.isArray(a[i].in)&&(-1<(a[i].in||[]).indexOf(o)||-1<(a[i].in||[]).indexOf(t)||n.some(function(t){return 0<=(a[i].in||[]).indexOf(t)}))&&(e=!0);c("body").trigger("tinvwl_wishlist_product_marked",[this,e]),c(this).attr("data-tinv-wl-list",JSON.stringify(a)).toggleClass("tinvwl-product-in-list",e).toggleClass("tinvwl-product-make-remove",e&&s).attr("data-tinv-wl-action",e&&s?"remove":"addto")})}),t.stats&&"1"==tinvwl_add_to_wishlist.stats&&c.each(t.stats,function(t,n){c('a.tinvwl_add_to_wishlist_button[data-tinv-wl-product="'+t+'"]').each(function(){c(this).attr("data-tinv-wl-product-stats",JSON.stringify(n));var t,i=parseInt(c(this).attr("data-tinv-wl-productvariation"));for(t in n)-1<t.indexOf(i)&&(c("body").trigger("tinvwl_wishlist_product_stats",[this,!0]),c(this).append('<span class="tinvwl-product-stats">'+n[t]+"</span>"))})}),t.counter);"1"==window.tinvwl_add_to_wishlist.hide_zero_counter&&0===i&&(i="false"),jQuery("i.wishlist-icon").addClass("added"),"false"!==i?(jQuery(".wishlist_products_counter_number, .theme-item-count.wishlist-item-count").html(i),jQuery("i.wishlist-icon").attr("data-icon-label",i)):(jQuery(".wishlist_products_counter_number, .theme-item-count.wishlist-item-count").html("").closest("span.wishlist-counter-with-products").removeClass("wishlist-counter-with-products"),jQuery("i.wishlist-icon").removeAttr("data-icon-label")),i=!("0"==i||"false"==i),jQuery(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i),setTimeout(function(){jQuery("i.wishlist-icon").removeClass("added")},500)}function l(t){a&&(localStorage.setItem(o,t),sessionStorage.setItem(o,t),s(JSON.parse(t)))}function d(t){var t=c(t).find("select, input, textarea, button, a").filter(":visible"),i=t.first(),n=t.last();i.focus().blur(),n.on("keydown",function(t){9!==t.which||t.shiftKey||(t.preventDefault(),i.focus())}),i.on("keydown",function(t){9===t.which&&t.shiftKey&&(t.preventDefault(),n.focus())})}}(jQuery),function(e){e(document).ready(function(){if(e(".tinv-lists-nav").each(function(){e(this).html().trim().length||e(this).remove()}),e("body").on("click",".social-buttons .social:not(.social-email,.social-whatsapp,.social-clipboard)",function(t){var i=window.open(e(this).attr("href"),e(this).attr("title"),"width=420,height=320,resizable=yes,scrollbars=yes,status=yes");i&&(i.focus(),t.preventDefault())}),"undefined"!=typeof ClipboardJS){new ClipboardJS(".social-buttons .social.social-clipboard",{text:function(t){return t.getAttribute("href")}}).on("success",function(t){showTooltip(t.trigger,tinvwl_add_to_wishlist.tinvwl_clipboard)});for(var t=document.querySelectorAll(".social-buttons .social.social-clipboard"),i=0;i<t.length;i++)t[i].addEventListener("mouseleave",clearTooltip),t[i].addEventListener("blur",clearTooltip)}e("body").on("click",".social-buttons .social.social-clipboard",function(t){t.preventDefault()}),e("body").on("click",".tinv-wishlist .tinv-overlay, .tinv-wishlist .tinv-close-modal, .tinv-wishlist .tinvwl_button_close",function(t){t.preventDefault(),e(this).parents(".tinv-modal:first").removeClass("tinv-modal-open"),e("body").trigger("tinvwl_modal_closed",[this])}),e("body").on("click",".tinv-wishlist .tinvwl-btn-onclick",function(t){e(this).data("url")&&(t.preventDefault(),window.location=e(this).data("url"))});var n=e(".tinv-wishlist .navigation-button");n.length&&n.each(function(){var t=e(this).find("> li");t.length<5&&t.parent().addClass("tinvwl-btns-count-"+t.length)}),e(".tinv-login .showlogin").off("click").on("click",function(t){t.preventDefault(),e(this).closest(".tinv-login").find(".login").toggle()}),e(".tinv-wishlist table.tinvwl-table-manage-list tfoot td").each(function(){e(this).toggle(!!e(this).children().not(".look_in").length||!!e(this).children(".look_in").children().length)})})}(jQuery),function(e){e.fn.tinvwl_break_submit=function(t){var n=e.extend(!0,{},{selector:"input, select, textarea",ifempty:!0,invert:!1,validate:function(){return e(this).val()},rule:function(){var t=e(this).parents("form").eq(0).find(n.selector),i=n.invert;return 0===t.length?n.ifempty:(t.each(function(){i&&!n.invert||!i&&n.invert||(i=Boolean(n.validate.call(e(this))))}),i)}},t);return e(this).each(function(){e(this).on("click",function(t){var i=[];void 0!==e(this).attr("tinvwl_break_submit")&&(i=e(this).attr("tinvwl_break_submit").split(",")),-1!==jQuery.inArray(n.selector,i)&&(i=[]),n.rule.call(e(this))||0!==i.length||(alert(window.tinvwl_add_to_wishlist.tinvwl_break_submit),t.preventDefault()),i.push(n.selector),e(this).attr("tinvwl_break_submit",i),n.rule.call(e(this))&&e(this).removeAttr("tinvwl_break_submit")})})},e(document).ready(function(){e("body").on("click",".global-cb",function(){e(this).closest("table").eq(0).find(".product-cb input[type=checkbox], .wishlist-cb input[type=checkbox]").prop("checked",e(this).is(":checked"))})})}(jQuery);
languages/ti-woocommerce-wishlist.pot CHANGED
@@ -1,8 +1,8 @@
1
- # Copyright (C) 2022 TI WooCommerce Wishlist Plugin - 2.0.14
2
- # This file is distributed under the same license as the TI WooCommerce Wishlist Plugin - 2.0.14 package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: TI WooCommerce Wishlist Plugin - 2.0.14\n"
6
  "MIME-Version: 1.0\n"
7
  "Content-Type: text/plain; charset=UTF-8\n"
8
  "Content-Transfer-Encoding: 8bit\n"
@@ -11,7 +11,7 @@ msgstr ""
11
  "Language-Team: TemplateInvaders (https://templateinvaders.com/)\n"
12
  "Last-Translator: TemplateInvaders (https://templateinvaders.com/)\n"
13
  "MIME-Version: 1.0\n"
14
- "Project-Id-Version: TI WooCommerce Wishlist Plugin - 2.0.14\n"
15
  "Report-Msgid-Bugs-To: https://templateinvaders.com/help/\n"
16
  "X-Poedit-Basepath: ..\n"
17
  "X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
@@ -36,15 +36,15 @@ msgstr ""
36
  msgid "Template Custom CSS"
37
  msgstr ""
38
 
39
- #: admin/basestyle.helper.php:115, admin/settings/general.class.php:982, admin/settings/integrations.class.php:115
40
  msgid "Save Settings"
41
  msgstr ""
42
 
43
- #: admin/basestyle.helper.php:121, admin/settings/general.class.php:988
44
  msgid "Reset"
45
  msgstr ""
46
 
47
- #: admin/basestyle.helper.php:127, admin/settings/general.class.php:994, admin/settings/integrations.class.php:121
48
  msgid "Save"
49
  msgstr ""
50
 
@@ -80,7 +80,7 @@ msgstr ""
80
  msgid "General Settings"
81
  msgstr ""
82
 
83
- #: admin/settings/general.class.php:82, admin/settings/general.class.php:402, admin/settings/general.class.php:556, admin/settings/general.class.php:859
84
  msgid "None"
85
  msgstr ""
86
 
@@ -132,11 +132,11 @@ msgstr ""
132
  msgid "Remove Product from Wishlist if added to cart"
133
  msgstr ""
134
 
135
- #: admin/settings/general.class.php:178, admin/settings/general.class.php:360
136
  msgid "Remove by anyone"
137
  msgstr ""
138
 
139
- #: admin/settings/general.class.php:185, admin/settings/general.class.php:353
140
  msgid "Redirect to the checkout page from Wishlist if added to cart"
141
  msgstr ""
142
 
@@ -152,443 +152,451 @@ msgstr ""
152
  msgid "Show number of times each product added to wishlists across the site."
153
  msgstr ""
154
 
155
- #: admin/settings/general.class.php:213
 
 
 
 
 
 
 
 
156
  msgid "Show successful notice in popup"
157
  msgstr ""
158
 
159
- #: admin/settings/general.class.php:214
160
  msgid "This option allows to show/hide a popup with successful or error notices after adding or removing products from a Wishlist."
161
  msgstr ""
162
 
163
- #: admin/settings/general.class.php:224
164
  msgid "\"View Wishlist\" button Text"
165
  msgstr ""
166
 
167
- #: admin/settings/general.class.php:231
168
  msgid "Redirect to Wishlist"
169
  msgstr ""
170
 
171
- #: admin/settings/general.class.php:232
172
  msgid "If enabled, the user will be redirected to wishlist page after 5 sec from adding product to wishlist."
173
  msgstr ""
174
 
175
- #: admin/settings/general.class.php:239
176
  msgid "\"Product added to Wishlist\" Text"
177
  msgstr ""
178
 
179
- #: admin/settings/general.class.php:241, admin/settings/general.class.php:248
180
  msgid "You can use next placeholder in this field to get current product name: <code>{product_name}</code>, <code>{product_sku}</code>"
181
  msgstr ""
182
 
183
- #: admin/settings/general.class.php:247
184
  msgid "\"Product already in Wishlist\" Text"
185
  msgstr ""
186
 
187
- #: admin/settings/general.class.php:248
188
  msgid "This notification will be shown if a user will try to add a product that is already on the wishlist. "
189
  msgstr ""
190
 
191
- #: admin/settings/general.class.php:255
192
  msgid "\"Product removed from Wishlist\" Text"
193
  msgstr ""
194
 
195
- #: admin/settings/general.class.php:256
196
  msgid "This notification will be shown once the product is removed from Wishlist on a single or catalog page."
197
  msgstr ""
198
 
199
- #: admin/settings/general.class.php:264
200
  msgid "Permalinks Settings"
201
  msgstr ""
202
 
203
- #: admin/settings/general.class.php:270
204
  msgid "Force permalinks rewrite"
205
  msgstr ""
206
 
207
- #: admin/settings/general.class.php:271
208
  msgid "This option should be enabled to avoid any issues with URL rewrites between other plugins and Wishlist"
209
  msgstr ""
210
 
211
- #: admin/settings/general.class.php:279
212
  msgid "Rename wishlist Settings"
213
  msgstr ""
214
 
215
- #: admin/settings/general.class.php:285
216
  msgid "Rename wishlist word across the plugin"
217
  msgstr ""
218
 
219
- #: admin/settings/general.class.php:286
220
  msgid "These options allow changing word <code>wishlist</code> across all plugin instance"
221
  msgstr ""
222
 
223
- #: admin/settings/general.class.php:293
224
  msgid "Single form"
225
  msgstr ""
226
 
227
- #: admin/settings/general.class.php:294
228
  msgid "This option allows you to change a single form of the word. You need to write a new word in lowercase and the proper case will be applied automatically for all instances."
229
  msgstr ""
230
 
231
- #: admin/settings/general.class.php:301
232
  msgid "Plural form"
233
  msgstr ""
234
 
235
- #: admin/settings/general.class.php:302
236
  msgid "This option allows you to change a plural form of the word. Left it empty if you need to add just \"s\" suffix to the single form word that you set above."
237
  msgstr ""
238
 
239
- #: admin/settings/general.class.php:311
240
  msgid "Wishlist Page Options"
241
  msgstr ""
242
 
243
- #: admin/settings/general.class.php:312, admin/settings/general.class.php:329
244
  msgid "Coming soon"
245
  msgstr ""
246
 
247
- #: admin/settings/general.class.php:319
248
  msgid "My Wishlist"
249
  msgstr ""
250
 
251
- #: admin/settings/general.class.php:328
252
  msgid "Wishlist Processing Options"
253
  msgstr ""
254
 
255
- #: admin/settings/general.class.php:336
256
  msgid "Automatic removal"
257
  msgstr ""
258
 
259
- #: admin/settings/general.class.php:343
260
  msgid "Remove condition"
261
  msgstr ""
262
 
263
- #: admin/settings/general.class.php:346
264
  msgid "Add to Cart"
265
  msgstr ""
266
 
267
- #: admin/settings/general.class.php:368
268
  msgid "Product page \"Add to Wishlist\" Button Settings"
269
  msgstr ""
270
 
271
- #: admin/settings/general.class.php:374, admin/settings/general.class.php:530, views/wizard/step-button.php:33
272
  msgid "Button position"
273
  msgstr ""
274
 
275
- #: admin/settings/general.class.php:375
276
  msgid "Add this shortcode <code>[ti_wishlists_addtowishlist]</code> anywhere on product page, if you have chosen custom position for product button. You will have to do this for each product."
277
  msgstr ""
278
 
279
- #: admin/settings/general.class.php:378, admin/settings/general.class.php:533, includes/wizard.class.php:440
280
  msgid "After \"Add to Cart\" button"
281
  msgstr ""
282
 
283
- #: admin/settings/general.class.php:379, admin/settings/general.class.php:534, includes/wizard.class.php:441
284
  msgid "Before \"Add to Cart\" button"
285
  msgstr ""
286
 
287
- #: admin/settings/general.class.php:380
288
  msgid "After Thumbnails"
289
  msgstr ""
290
 
291
- #: admin/settings/general.class.php:381
292
  msgid "After summary"
293
  msgstr ""
294
 
295
- #: admin/settings/general.class.php:382, admin/settings/general.class.php:536, includes/wizard.class.php:442
296
  msgid "Custom position with code"
297
  msgstr ""
298
 
299
- #: admin/settings/general.class.php:388, admin/settings/general.class.php:543
300
  msgid "Button custom CSS class"
301
  msgstr ""
302
 
303
- #: admin/settings/general.class.php:389, admin/settings/general.class.php:544
304
  msgid "You can add custom CSS classes to button markup separated by spaces. Most of themes using <code>button</code> class for this type of buttons."
305
  msgstr ""
306
 
307
- #: admin/settings/general.class.php:398, admin/settings/general.class.php:553
308
  msgid "\"Add to Wishlist\" Icon"
309
  msgstr ""
310
 
311
- #: admin/settings/general.class.php:399, admin/settings/general.class.php:864
312
  msgid "You can choose from our predefined icons or upload your custom icon. Custom icon size is limited to 16x16 px."
313
  msgstr ""
314
 
315
- #: admin/settings/general.class.php:403, admin/settings/general.class.php:557, admin/settings/general.class.php:860
316
  msgid "Heart"
317
  msgstr ""
318
 
319
- #: admin/settings/general.class.php:404, admin/settings/general.class.php:558, admin/settings/general.class.php:861
320
  msgid "Heart+"
321
  msgstr ""
322
 
323
- #: admin/settings/general.class.php:405, admin/settings/general.class.php:559, admin/settings/general.class.php:862
324
  msgid "Custom"
325
  msgstr ""
326
 
327
- #: admin/settings/general.class.php:418, admin/settings/general.class.php:571
328
  msgid "Default state"
329
  msgstr ""
330
 
331
- #: admin/settings/general.class.php:422, admin/settings/general.class.php:435, admin/settings/general.class.php:575, admin/settings/general.class.php:588, admin/settings/general.class.php:879
332
  msgid "Upload"
333
  msgstr ""
334
 
335
- #: admin/settings/general.class.php:431, admin/settings/general.class.php:584
336
  msgid "Already added state"
337
  msgstr ""
338
 
339
- #: admin/settings/general.class.php:444, admin/settings/general.class.php:597
340
  msgid "\"Add to Wishlist\" Icon Color"
341
  msgstr ""
342
 
343
- #: admin/settings/general.class.php:446, admin/settings/general.class.php:599, admin/settings/general.class.php:839, admin/settings/general.class.php:890
344
  msgid "Use font color"
345
  msgstr ""
346
 
347
- #: admin/settings/general.class.php:447, admin/settings/general.class.php:600, admin/settings/general.class.php:891
348
  msgid "Black"
349
  msgstr ""
350
 
351
- #: admin/settings/general.class.php:448, admin/settings/general.class.php:601, admin/settings/general.class.php:841, admin/settings/general.class.php:892
352
  msgid "White"
353
  msgstr ""
354
 
355
- #: admin/settings/general.class.php:455, admin/settings/general.class.php:608
356
  msgid "Show preloader"
357
  msgstr ""
358
 
359
- #: admin/settings/general.class.php:456, admin/settings/general.class.php:609
360
  msgid "If enabled, applies animation for the button icon until product adding or removing processed. (Usable for servers with slow connection mostly.)"
361
  msgstr ""
362
 
363
- #: admin/settings/general.class.php:462, admin/settings/general.class.php:615
364
  msgid "Show button text"
365
  msgstr ""
366
 
367
- #: admin/settings/general.class.php:477
368
  msgid "\"Add to Wishlist\" button Text"
369
  msgstr ""
370
 
371
- #: admin/settings/general.class.php:483, admin/settings/general.class.php:636
372
  msgid "Show \"Already In Wishlist\" button Text"
373
  msgstr ""
374
 
375
- #: admin/settings/general.class.php:493, admin/settings/general.class.php:646
376
  msgid "\"Already In Wishlist\" button Text"
377
  msgstr ""
378
 
379
- #: admin/settings/general.class.php:500, admin/settings/general.class.php:653
380
  msgid "\"Remove from Wishlist\" Button Text"
381
  msgstr ""
382
 
383
- #: admin/settings/general.class.php:508
384
  msgid "Product listing Button Settings"
385
  msgstr ""
386
 
387
- #: admin/settings/general.class.php:509
388
  msgid "These are separate settings for the \"Add to Wishlist\" button on a product listing (Shop page, categories, etc.). You can also adjust button and text colors, size, etc. in a <code>TI Wishlist > Style Options.</code>"
389
  msgstr ""
390
 
391
- #: admin/settings/general.class.php:515
392
  msgid "Show in Product Listing"
393
  msgstr ""
394
 
395
- #: admin/settings/general.class.php:535
396
  msgid "Above Thumbnail"
397
  msgstr ""
398
 
399
- #: admin/settings/general.class.php:538
400
  msgid "Note: if \"Custom position with code\" option is applied, the \"Add to Wishlist\" button should be added into template using <code>do_shortcode()</code> function like this:<br /><code>do_shortcode(\"[ti_wishlists_addtowishlist loop=yes]\")</code>"
401
  msgstr ""
402
 
403
- #: admin/settings/general.class.php:630, views/wizard/step-button.php:42
404
  msgid "\"Add to Wishlist\" Text"
405
  msgstr ""
406
 
407
- #: admin/settings/general.class.php:661
408
  msgid "Wishlist Product Settings"
409
  msgstr ""
410
 
411
- #: admin/settings/general.class.php:662
412
  msgid "Following options allows you to choose what information/functionality to show/enable in wishlist table on the wishlist page."
413
  msgstr ""
414
 
415
- #: admin/settings/general.class.php:668
416
  msgid "Show \"Add to Cart\" button"
417
  msgstr ""
418
 
419
- #: admin/settings/general.class.php:675
420
  msgid "\"Add to Cart\" Text"
421
  msgstr ""
422
 
423
- #: admin/settings/general.class.php:682
424
  msgid "Show Unit price"
425
  msgstr ""
426
 
427
- #: admin/settings/general.class.php:688
428
  msgid "Show Stock status"
429
  msgstr ""
430
 
431
- #: admin/settings/general.class.php:694
432
  msgid "Show Date of addition"
433
  msgstr ""
434
 
435
- #: admin/settings/general.class.php:701
436
  msgid "Wishlist Table Settings"
437
  msgstr ""
438
 
439
- #: admin/settings/general.class.php:702
440
  msgid "Following options will help user to manage and add products to cart from wishlist table in bulk."
441
  msgstr ""
442
 
443
- #: admin/settings/general.class.php:708
444
  msgid "Products per page"
445
  msgstr ""
446
 
447
- #: admin/settings/general.class.php:718
448
  msgid "Show Checkboxes"
449
  msgstr ""
450
 
451
- #: admin/settings/general.class.php:730
452
  msgid "Show Actions button"
453
  msgstr ""
454
 
455
- #: admin/settings/general.class.php:731
456
  msgid "Bulk actions drop-down at the bottom of wishlist table"
457
  msgstr ""
458
 
459
- #: admin/settings/general.class.php:737
460
  msgid "Show \"Add Selected to Cart\" button"
461
  msgstr ""
462
 
463
- #: admin/settings/general.class.php:744
464
  msgid "\"Add Selected to Cart\" Button Text"
465
  msgstr ""
466
 
467
- #: admin/settings/general.class.php:755
468
  msgid "Show \"Add All to Cart\" button"
469
  msgstr ""
470
 
471
- #: admin/settings/general.class.php:762
472
  msgid "\"Add All to Cart\" Button Text"
473
  msgstr ""
474
 
475
- #: admin/settings/general.class.php:769
476
  msgid "Hide popup for wishlist products management actions"
477
  msgstr ""
478
 
479
- #: admin/settings/general.class.php:770
480
  msgid "This option allows hide/show a popup after any action is processed with wishlist products on the wishlist page."
481
  msgstr ""
482
 
483
- #: admin/settings/general.class.php:782
484
  msgid "Following options enable/disable Social share icons below wishlist table on the wishlist page. Wishlist owner can easily share their wishlists using this button on social networks. Wishlist privacy should be set to public or shared status, private wishlists can't be shared."
485
  msgstr ""
486
 
487
- #: admin/settings/general.class.php:788
488
  msgid "Social Networks Sharing Options"
489
  msgstr ""
490
 
491
- #: admin/settings/general.class.php:794, views/wizard/step-social.php:26
492
  msgid "Show \"Facebook\" Button"
493
  msgstr ""
494
 
495
- #: admin/settings/general.class.php:800, views/wizard/step-social.php:35
496
  msgid "Show \"Twitter\" Button"
497
  msgstr ""
498
 
499
- #: admin/settings/general.class.php:806, views/wizard/step-social.php:44
500
  msgid "Show \"Pinterest\" Button"
501
  msgstr ""
502
 
503
- #: admin/settings/general.class.php:812, views/wizard/step-social.php:53
504
  msgid "Show \"WhatsApp\" Button"
505
  msgstr ""
506
 
507
- #: admin/settings/general.class.php:818
508
  msgid "Show \"Copy to clipboard\" Button"
509
  msgstr ""
510
 
511
- #: admin/settings/general.class.php:824, views/wizard/step-social.php:71
512
  msgid "Show \"Share by Email\" Button"
513
  msgstr ""
514
 
515
- #: admin/settings/general.class.php:830
516
  msgid "\"Share on\" Text"
517
  msgstr ""
518
 
519
- #: admin/settings/general.class.php:836
520
  msgid "Social Icons Color"
521
  msgstr ""
522
 
523
- #: admin/settings/general.class.php:840
524
  msgid "Dark"
525
  msgstr ""
526
 
527
- #: admin/settings/general.class.php:849
528
  msgid "Wishlist Product Counter"
529
  msgstr ""
530
 
531
- #: admin/settings/general.class.php:850
532
  msgid "Add this shortcode <code>[ti_wishlist_products_counter]</code> anywhere into a page content to show Wishlist Counter.<br/><br/>It can be also added as a widget <code>Wishlist Products Counter</code> under the <a href=\"%s\">Appearance -> Widgets</a> section."
533
  msgstr ""
534
 
535
- #: admin/settings/general.class.php:856
536
  msgid "\"Wishlist\" Counter Icon"
537
  msgstr ""
538
 
539
- #: admin/settings/general.class.php:888
540
  msgid "\"Wishlist\" Counter Icon Color"
541
  msgstr ""
542
 
543
- #: admin/settings/general.class.php:899
544
  msgid "Show \"Wishlist\" Counter Text"
545
  msgstr ""
546
 
547
- #: admin/settings/general.class.php:908
548
  msgid "\"Wishlist\" Counter Text"
549
  msgstr ""
550
 
551
- #: admin/settings/general.class.php:909
552
  msgid "Wishlist - "
553
  msgstr ""
554
 
555
- #: admin/settings/general.class.php:915
556
  msgid "Add counter to menu"
557
  msgstr ""
558
 
559
- #: admin/settings/general.class.php:917
560
  msgid "You can add a wishlist products counter as an item to the selected menu."
561
  msgstr ""
562
 
563
- #: admin/settings/general.class.php:926
564
  msgid "Counter position (Menu item order)"
565
  msgstr ""
566
 
567
- #: admin/settings/general.class.php:927
568
  msgid "Allows you to add the wishlist counter as a menu item and set its position."
569
  msgstr ""
570
 
571
- #: admin/settings/general.class.php:938
572
  msgid "Show number of products in counter"
573
  msgstr ""
574
 
575
- #: admin/settings/general.class.php:947
576
  msgid "Hide zero value"
577
  msgstr ""
578
 
579
- #: admin/settings/general.class.php:948
580
  msgid "Do not show the \"0\" value in a counter if the wishlist is empty."
581
  msgstr ""
582
 
583
- #: admin/settings/general.class.php:959
584
  msgid "Support Chat Settings"
585
  msgstr ""
586
 
587
- #: admin/settings/general.class.php:960, views/wizard/step-support.php:22
588
  msgid "Enable the support chat to get the most from our service and get answers to your questions promptly. We optimized the support process to get the required details from your current setup to solve your issues faster. Dedicated to your Care."
589
  msgstr ""
590
 
591
- #: admin/settings/general.class.php:966, views/wizard/step-support.php:26
592
  msgid "Enable support chat"
593
  msgstr ""
594
 
@@ -1304,9 +1312,9 @@ msgstr ""
1304
  msgid "%s has been removed from wishlist."
1305
  msgstr ""
1306
 
1307
- #: public/wishlist/ajax.class.php:221
1308
- msgid "%s has not been added to your cart."
1309
- msgid_plural "%s have been added to your cart."
1310
  msgstr[0] ""
1311
  msgstr[1] ""
1312
 
@@ -1331,12 +1339,6 @@ msgctxt "Item name in quotes"
1331
  msgid "&ldquo;%s&rdquo;"
1332
  msgstr ""
1333
 
1334
- #: public/wishlist/ajax.class.php:326, public/wishlist/ajax.class.php:408
1335
- msgid "Product %s could not be added to the cart because some requirements are not met."
1336
- msgid_plural "Products: %s could not be added to the cart because some requirements are not met."
1337
- msgstr[0] ""
1338
- msgstr[1] ""
1339
-
1340
  #: public/wishlist/buttons.class.php:60
1341
  msgid "Apply %s"
1342
  msgstr ""
1
+ # Copyright (C) 2022 TI WooCommerce Wishlist Plugin - 2.0.15
2
+ # This file is distributed under the same license as the TI WooCommerce Wishlist Plugin - 2.0.15 package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: TI WooCommerce Wishlist Plugin - 2.0.15\n"
6
  "MIME-Version: 1.0\n"
7
  "Content-Type: text/plain; charset=UTF-8\n"
8
  "Content-Transfer-Encoding: 8bit\n"
11
  "Language-Team: TemplateInvaders (https://templateinvaders.com/)\n"
12
  "Last-Translator: TemplateInvaders (https://templateinvaders.com/)\n"
13
  "MIME-Version: 1.0\n"
14
+ "Project-Id-Version: TI WooCommerce Wishlist Plugin - 2.0.15\n"
15
  "Report-Msgid-Bugs-To: https://templateinvaders.com/help/\n"
16
  "X-Poedit-Basepath: ..\n"
17
  "X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
36
  msgid "Template Custom CSS"
37
  msgstr ""
38
 
39
+ #: admin/basestyle.helper.php:115, admin/settings/general.class.php:993, admin/settings/integrations.class.php:115
40
  msgid "Save Settings"
41
  msgstr ""
42
 
43
+ #: admin/basestyle.helper.php:121, admin/settings/general.class.php:999
44
  msgid "Reset"
45
  msgstr ""
46
 
47
+ #: admin/basestyle.helper.php:127, admin/settings/general.class.php:1005, admin/settings/integrations.class.php:121
48
  msgid "Save"
49
  msgstr ""
50
 
80
  msgid "General Settings"
81
  msgstr ""
82
 
83
+ #: admin/settings/general.class.php:82, admin/settings/general.class.php:413, admin/settings/general.class.php:567, admin/settings/general.class.php:870
84
  msgid "None"
85
  msgstr ""
86
 
132
  msgid "Remove Product from Wishlist if added to cart"
133
  msgstr ""
134
 
135
+ #: admin/settings/general.class.php:178, admin/settings/general.class.php:371
136
  msgid "Remove by anyone"
137
  msgstr ""
138
 
139
+ #: admin/settings/general.class.php:185, admin/settings/general.class.php:364
140
  msgid "Redirect to the checkout page from Wishlist if added to cart"
141
  msgstr ""
142
 
152
  msgid "Show number of times each product added to wishlists across the site."
153
  msgstr ""
154
 
155
+ #: admin/settings/general.class.php:209
156
+ msgid "Days after which the guest wishlist will be deleted"
157
+ msgstr ""
158
+
159
+ #: admin/settings/general.class.php:215
160
+ msgid "Guest's wishlists are automatically deleted after a defined period of days from the latest product addition."
161
+ msgstr ""
162
+
163
+ #: admin/settings/general.class.php:224
164
  msgid "Show successful notice in popup"
165
  msgstr ""
166
 
167
+ #: admin/settings/general.class.php:225
168
  msgid "This option allows to show/hide a popup with successful or error notices after adding or removing products from a Wishlist."
169
  msgstr ""
170
 
171
+ #: admin/settings/general.class.php:235
172
  msgid "\"View Wishlist\" button Text"
173
  msgstr ""
174
 
175
+ #: admin/settings/general.class.php:242
176
  msgid "Redirect to Wishlist"
177
  msgstr ""
178
 
179
+ #: admin/settings/general.class.php:243
180
  msgid "If enabled, the user will be redirected to wishlist page after 5 sec from adding product to wishlist."
181
  msgstr ""
182
 
183
+ #: admin/settings/general.class.php:250
184
  msgid "\"Product added to Wishlist\" Text"
185
  msgstr ""
186
 
187
+ #: admin/settings/general.class.php:252, admin/settings/general.class.php:259
188
  msgid "You can use next placeholder in this field to get current product name: <code>{product_name}</code>, <code>{product_sku}</code>"
189
  msgstr ""
190
 
191
+ #: admin/settings/general.class.php:258
192
  msgid "\"Product already in Wishlist\" Text"
193
  msgstr ""
194
 
195
+ #: admin/settings/general.class.php:259
196
  msgid "This notification will be shown if a user will try to add a product that is already on the wishlist. "
197
  msgstr ""
198
 
199
+ #: admin/settings/general.class.php:266
200
  msgid "\"Product removed from Wishlist\" Text"
201
  msgstr ""
202
 
203
+ #: admin/settings/general.class.php:267
204
  msgid "This notification will be shown once the product is removed from Wishlist on a single or catalog page."
205
  msgstr ""
206
 
207
+ #: admin/settings/general.class.php:275
208
  msgid "Permalinks Settings"
209
  msgstr ""
210
 
211
+ #: admin/settings/general.class.php:281
212
  msgid "Force permalinks rewrite"
213
  msgstr ""
214
 
215
+ #: admin/settings/general.class.php:282
216
  msgid "This option should be enabled to avoid any issues with URL rewrites between other plugins and Wishlist"
217
  msgstr ""
218
 
219
+ #: admin/settings/general.class.php:290
220
  msgid "Rename wishlist Settings"
221
  msgstr ""
222
 
223
+ #: admin/settings/general.class.php:296
224
  msgid "Rename wishlist word across the plugin"
225
  msgstr ""
226
 
227
+ #: admin/settings/general.class.php:297
228
  msgid "These options allow changing word <code>wishlist</code> across all plugin instance"
229
  msgstr ""
230
 
231
+ #: admin/settings/general.class.php:304
232
  msgid "Single form"
233
  msgstr ""
234
 
235
+ #: admin/settings/general.class.php:305
236
  msgid "This option allows you to change a single form of the word. You need to write a new word in lowercase and the proper case will be applied automatically for all instances."
237
  msgstr ""
238
 
239
+ #: admin/settings/general.class.php:312
240
  msgid "Plural form"
241
  msgstr ""
242
 
243
+ #: admin/settings/general.class.php:313
244
  msgid "This option allows you to change a plural form of the word. Left it empty if you need to add just \"s\" suffix to the single form word that you set above."
245
  msgstr ""
246
 
247
+ #: admin/settings/general.class.php:322
248
  msgid "Wishlist Page Options"
249
  msgstr ""
250
 
251
+ #: admin/settings/general.class.php:323, admin/settings/general.class.php:340
252
  msgid "Coming soon"
253
  msgstr ""
254
 
255
+ #: admin/settings/general.class.php:330
256
  msgid "My Wishlist"
257
  msgstr ""
258
 
259
+ #: admin/settings/general.class.php:339
260
  msgid "Wishlist Processing Options"
261
  msgstr ""
262
 
263
+ #: admin/settings/general.class.php:347
264
  msgid "Automatic removal"
265
  msgstr ""
266
 
267
+ #: admin/settings/general.class.php:354
268
  msgid "Remove condition"
269
  msgstr ""
270
 
271
+ #: admin/settings/general.class.php:357
272
  msgid "Add to Cart"
273
  msgstr ""
274
 
275
+ #: admin/settings/general.class.php:379
276
  msgid "Product page \"Add to Wishlist\" Button Settings"
277
  msgstr ""
278
 
279
+ #: admin/settings/general.class.php:385, admin/settings/general.class.php:541, views/wizard/step-button.php:33
280
  msgid "Button position"
281
  msgstr ""
282
 
283
+ #: admin/settings/general.class.php:386
284
  msgid "Add this shortcode <code>[ti_wishlists_addtowishlist]</code> anywhere on product page, if you have chosen custom position for product button. You will have to do this for each product."
285
  msgstr ""
286
 
287
+ #: admin/settings/general.class.php:389, admin/settings/general.class.php:544, includes/wizard.class.php:440
288
  msgid "After \"Add to Cart\" button"
289
  msgstr ""
290
 
291
+ #: admin/settings/general.class.php:390, admin/settings/general.class.php:545, includes/wizard.class.php:441
292
  msgid "Before \"Add to Cart\" button"
293
  msgstr ""
294
 
295
+ #: admin/settings/general.class.php:391
296
  msgid "After Thumbnails"
297
  msgstr ""
298
 
299
+ #: admin/settings/general.class.php:392
300
  msgid "After summary"
301
  msgstr ""
302
 
303
+ #: admin/settings/general.class.php:393, admin/settings/general.class.php:547, includes/wizard.class.php:442
304
  msgid "Custom position with code"
305
  msgstr ""
306
 
307
+ #: admin/settings/general.class.php:399, admin/settings/general.class.php:554
308
  msgid "Button custom CSS class"
309
  msgstr ""
310
 
311
+ #: admin/settings/general.class.php:400, admin/settings/general.class.php:555
312
  msgid "You can add custom CSS classes to button markup separated by spaces. Most of themes using <code>button</code> class for this type of buttons."
313
  msgstr ""
314
 
315
+ #: admin/settings/general.class.php:409, admin/settings/general.class.php:564
316
  msgid "\"Add to Wishlist\" Icon"
317
  msgstr ""
318
 
319
+ #: admin/settings/general.class.php:410, admin/settings/general.class.php:875
320
  msgid "You can choose from our predefined icons or upload your custom icon. Custom icon size is limited to 16x16 px."
321
  msgstr ""
322
 
323
+ #: admin/settings/general.class.php:414, admin/settings/general.class.php:568, admin/settings/general.class.php:871
324
  msgid "Heart"
325
  msgstr ""
326
 
327
+ #: admin/settings/general.class.php:415, admin/settings/general.class.php:569, admin/settings/general.class.php:872
328
  msgid "Heart+"
329
  msgstr ""
330
 
331
+ #: admin/settings/general.class.php:416, admin/settings/general.class.php:570, admin/settings/general.class.php:873
332
  msgid "Custom"
333
  msgstr ""
334
 
335
+ #: admin/settings/general.class.php:429, admin/settings/general.class.php:582
336
  msgid "Default state"
337
  msgstr ""
338
 
339
+ #: admin/settings/general.class.php:433, admin/settings/general.class.php:446, admin/settings/general.class.php:586, admin/settings/general.class.php:599, admin/settings/general.class.php:890
340
  msgid "Upload"
341
  msgstr ""
342
 
343
+ #: admin/settings/general.class.php:442, admin/settings/general.class.php:595
344
  msgid "Already added state"
345
  msgstr ""
346
 
347
+ #: admin/settings/general.class.php:455, admin/settings/general.class.php:608
348
  msgid "\"Add to Wishlist\" Icon Color"
349
  msgstr ""
350
 
351
+ #: admin/settings/general.class.php:457, admin/settings/general.class.php:610, admin/settings/general.class.php:850, admin/settings/general.class.php:901
352
  msgid "Use font color"
353
  msgstr ""
354
 
355
+ #: admin/settings/general.class.php:458, admin/settings/general.class.php:611, admin/settings/general.class.php:902
356
  msgid "Black"
357
  msgstr ""
358
 
359
+ #: admin/settings/general.class.php:459, admin/settings/general.class.php:612, admin/settings/general.class.php:852, admin/settings/general.class.php:903
360
  msgid "White"
361
  msgstr ""
362
 
363
+ #: admin/settings/general.class.php:466, admin/settings/general.class.php:619
364
  msgid "Show preloader"
365
  msgstr ""
366
 
367
+ #: admin/settings/general.class.php:467, admin/settings/general.class.php:620
368
  msgid "If enabled, applies animation for the button icon until product adding or removing processed. (Usable for servers with slow connection mostly.)"
369
  msgstr ""
370
 
371
+ #: admin/settings/general.class.php:473, admin/settings/general.class.php:626
372
  msgid "Show button text"
373
  msgstr ""
374
 
375
+ #: admin/settings/general.class.php:488
376
  msgid "\"Add to Wishlist\" button Text"
377
  msgstr ""
378
 
379
+ #: admin/settings/general.class.php:494, admin/settings/general.class.php:647
380
  msgid "Show \"Already In Wishlist\" button Text"
381
  msgstr ""
382
 
383
+ #: admin/settings/general.class.php:504, admin/settings/general.class.php:657
384
  msgid "\"Already In Wishlist\" button Text"
385
  msgstr ""
386
 
387
+ #: admin/settings/general.class.php:511, admin/settings/general.class.php:664
388
  msgid "\"Remove from Wishlist\" Button Text"
389
  msgstr ""
390
 
391
+ #: admin/settings/general.class.php:519
392
  msgid "Product listing Button Settings"
393
  msgstr ""
394
 
395
+ #: admin/settings/general.class.php:520
396
  msgid "These are separate settings for the \"Add to Wishlist\" button on a product listing (Shop page, categories, etc.). You can also adjust button and text colors, size, etc. in a <code>TI Wishlist > Style Options.</code>"
397
  msgstr ""
398
 
399
+ #: admin/settings/general.class.php:526
400
  msgid "Show in Product Listing"
401
  msgstr ""
402
 
403
+ #: admin/settings/general.class.php:546
404
  msgid "Above Thumbnail"
405
  msgstr ""
406
 
407
+ #: admin/settings/general.class.php:549
408
  msgid "Note: if \"Custom position with code\" option is applied, the \"Add to Wishlist\" button should be added into template using <code>do_shortcode()</code> function like this:<br /><code>do_shortcode(\"[ti_wishlists_addtowishlist loop=yes]\")</code>"
409
  msgstr ""
410
 
411
+ #: admin/settings/general.class.php:641, views/wizard/step-button.php:42
412
  msgid "\"Add to Wishlist\" Text"
413
  msgstr ""
414
 
415
+ #: admin/settings/general.class.php:672
416
  msgid "Wishlist Product Settings"
417
  msgstr ""
418
 
419
+ #: admin/settings/general.class.php:673
420
  msgid "Following options allows you to choose what information/functionality to show/enable in wishlist table on the wishlist page."
421
  msgstr ""
422
 
423
+ #: admin/settings/general.class.php:679
424
  msgid "Show \"Add to Cart\" button"
425
  msgstr ""
426
 
427
+ #: admin/settings/general.class.php:686
428
  msgid "\"Add to Cart\" Text"
429
  msgstr ""
430
 
431
+ #: admin/settings/general.class.php:693
432
  msgid "Show Unit price"
433
  msgstr ""
434
 
435
+ #: admin/settings/general.class.php:699
436
  msgid "Show Stock status"
437
  msgstr ""
438
 
439
+ #: admin/settings/general.class.php:705
440
  msgid "Show Date of addition"
441
  msgstr ""
442
 
443
+ #: admin/settings/general.class.php:712
444
  msgid "Wishlist Table Settings"
445
  msgstr ""
446
 
447
+ #: admin/settings/general.class.php:713
448
  msgid "Following options will help user to manage and add products to cart from wishlist table in bulk."
449
  msgstr ""
450
 
451
+ #: admin/settings/general.class.php:719
452
  msgid "Products per page"
453
  msgstr ""
454
 
455
+ #: admin/settings/general.class.php:729
456
  msgid "Show Checkboxes"
457
  msgstr ""
458
 
459
+ #: admin/settings/general.class.php:741
460
  msgid "Show Actions button"
461
  msgstr ""
462
 
463
+ #: admin/settings/general.class.php:742
464
  msgid "Bulk actions drop-down at the bottom of wishlist table"
465
  msgstr ""
466
 
467
+ #: admin/settings/general.class.php:748
468
  msgid "Show \"Add Selected to Cart\" button"
469
  msgstr ""
470
 
471
+ #: admin/settings/general.class.php:755
472
  msgid "\"Add Selected to Cart\" Button Text"
473
  msgstr ""
474
 
475
+ #: admin/settings/general.class.php:766
476
  msgid "Show \"Add All to Cart\" button"
477
  msgstr ""
478
 
479
+ #: admin/settings/general.class.php:773
480
  msgid "\"Add All to Cart\" Button Text"
481
  msgstr ""
482
 
483
+ #: admin/settings/general.class.php:780
484
  msgid "Hide popup for wishlist products management actions"
485
  msgstr ""
486
 
487
+ #: admin/settings/general.class.php:781
488
  msgid "This option allows hide/show a popup after any action is processed with wishlist products on the wishlist page."
489
  msgstr ""
490
 
491
+ #: admin/settings/general.class.php:793
492
  msgid "Following options enable/disable Social share icons below wishlist table on the wishlist page. Wishlist owner can easily share their wishlists using this button on social networks. Wishlist privacy should be set to public or shared status, private wishlists can't be shared."
493
  msgstr ""
494
 
495
+ #: admin/settings/general.class.php:799
496
  msgid "Social Networks Sharing Options"
497
  msgstr ""
498
 
499
+ #: admin/settings/general.class.php:805, views/wizard/step-social.php:26
500
  msgid "Show \"Facebook\" Button"
501
  msgstr ""
502
 
503
+ #: admin/settings/general.class.php:811, views/wizard/step-social.php:35
504
  msgid "Show \"Twitter\" Button"
505
  msgstr ""
506
 
507
+ #: admin/settings/general.class.php:817, views/wizard/step-social.php:44
508
  msgid "Show \"Pinterest\" Button"
509
  msgstr ""
510
 
511
+ #: admin/settings/general.class.php:823, views/wizard/step-social.php:53
512
  msgid "Show \"WhatsApp\" Button"
513
  msgstr ""
514
 
515
+ #: admin/settings/general.class.php:829
516
  msgid "Show \"Copy to clipboard\" Button"
517
  msgstr ""
518
 
519
+ #: admin/settings/general.class.php:835, views/wizard/step-social.php:71
520
  msgid "Show \"Share by Email\" Button"
521
  msgstr ""
522
 
523
+ #: admin/settings/general.class.php:841
524
  msgid "\"Share on\" Text"
525
  msgstr ""
526
 
527
+ #: admin/settings/general.class.php:847
528
  msgid "Social Icons Color"
529
  msgstr ""
530
 
531
+ #: admin/settings/general.class.php:851
532
  msgid "Dark"
533
  msgstr ""
534
 
535
+ #: admin/settings/general.class.php:860
536
  msgid "Wishlist Product Counter"
537
  msgstr ""
538
 
539
+ #: admin/settings/general.class.php:861
540
  msgid "Add this shortcode <code>[ti_wishlist_products_counter]</code> anywhere into a page content to show Wishlist Counter.<br/><br/>It can be also added as a widget <code>Wishlist Products Counter</code> under the <a href=\"%s\">Appearance -> Widgets</a> section."
541
  msgstr ""
542
 
543
+ #: admin/settings/general.class.php:867
544
  msgid "\"Wishlist\" Counter Icon"
545
  msgstr ""
546
 
547
+ #: admin/settings/general.class.php:899
548
  msgid "\"Wishlist\" Counter Icon Color"
549
  msgstr ""
550
 
551
+ #: admin/settings/general.class.php:910
552
  msgid "Show \"Wishlist\" Counter Text"
553
  msgstr ""
554
 
555
+ #: admin/settings/general.class.php:919
556
  msgid "\"Wishlist\" Counter Text"
557
  msgstr ""
558
 
559
+ #: admin/settings/general.class.php:920
560
  msgid "Wishlist - "
561
  msgstr ""
562
 
563
+ #: admin/settings/general.class.php:926
564
  msgid "Add counter to menu"
565
  msgstr ""
566
 
567
+ #: admin/settings/general.class.php:928
568
  msgid "You can add a wishlist products counter as an item to the selected menu."
569
  msgstr ""
570
 
571
+ #: admin/settings/general.class.php:937
572
  msgid "Counter position (Menu item order)"
573
  msgstr ""
574
 
575
+ #: admin/settings/general.class.php:938
576
  msgid "Allows you to add the wishlist counter as a menu item and set its position."
577
  msgstr ""
578
 
579
+ #: admin/settings/general.class.php:949
580
  msgid "Show number of products in counter"
581
  msgstr ""
582
 
583
+ #: admin/settings/general.class.php:958
584
  msgid "Hide zero value"
585
  msgstr ""
586
 
587
+ #: admin/settings/general.class.php:959
588
  msgid "Do not show the \"0\" value in a counter if the wishlist is empty."
589
  msgstr ""
590
 
591
+ #: admin/settings/general.class.php:970
592
  msgid "Support Chat Settings"
593
  msgstr ""
594
 
595
+ #: admin/settings/general.class.php:971, views/wizard/step-support.php:22
596
  msgid "Enable the support chat to get the most from our service and get answers to your questions promptly. We optimized the support process to get the required details from your current setup to solve your issues faster. Dedicated to your Care."
597
  msgstr ""
598
 
599
+ #: admin/settings/general.class.php:977, views/wizard/step-support.php:26
600
  msgid "Enable support chat"
601
  msgstr ""
602
 
1312
  msgid "%s has been removed from wishlist."
1313
  msgstr ""
1314
 
1315
+ #: public/wishlist/ajax.class.php:221, public/wishlist/ajax.class.php:326, public/wishlist/ajax.class.php:408
1316
+ msgid "Product %s could not be added to the cart because some requirements are not met."
1317
+ msgid_plural "Products: %s could not be added to the cart because some requirements are not met."
1318
  msgstr[0] ""
1319
  msgstr[1] ""
1320
 
1339
  msgid "&ldquo;%s&rdquo;"
1340
  msgstr ""
1341
 
 
 
 
 
 
 
1342
  #: public/wishlist/buttons.class.php:60
1343
  msgid "Apply %s"
1344
  msgstr ""
public/cart.class.php CHANGED
@@ -375,7 +375,7 @@ class TInvWL_Public_Cart {
375
 
376
  /* Run a 3rd party code when product purchased from wishlist.
377
  *
378
- * @param WC_order $order Order object.
379
  * @param WC_Order_Item_Product $item Order item product object.
380
  * @param array $wishlist A wishlist data where product added from.
381
  * */
375
 
376
  /* Run a 3rd party code when product purchased from wishlist.
377
  *
378
+ * @param WC_Order $order Order object.
379
  * @param WC_Order_Item_Product $item Order item product object.
380
  * @param array $wishlist A wishlist data where product added from.
381
  * */
public/wishlist/ajax.class.php CHANGED
@@ -218,7 +218,7 @@ class TInvWL_Public_Wishlist_Ajax {
218
  }
219
  } else {
220
  $response['status'] = false;
221
- $response['msg'][] = sprintf( _n( '%s has not been added to your cart.', '%s have been added to your cart.', 1, 'ti-woocommerce-wishlist' ), $title );
222
  }
223
  $response['content'] = tinvwl_shortcode_view( array(
224
  'paged' => $post['tinvwl-paged'],
218
  }
219
  } else {
220
  $response['status'] = false;
221
+ $response['msg'][] = sprintf( __( 'Product %s could not be added to the cart because some requirements are not met.', 'ti-woocommerce-wishlist' ), $title );
222
  }
223
  $response['content'] = tinvwl_shortcode_view( array(
224
  'paged' => $post['tinvwl-paged'],
public/wishlist/buttons.class.php CHANGED
@@ -196,7 +196,7 @@ class TInvWL_Public_Wishlist_Buttons {
196
  * @return array
197
  */
198
  public static function class_action( $attr ) {
199
- if ( array_key_exists( 'class', $attr ) ) {
200
  $attr['class'] .= ' alt';
201
  } else {
202
  $attr['class'] = 'alt';
196
  * @return array
197
  */
198
  public static function class_action( $attr ) {
199
+ if ( array_key_exists( 'class', (array) $attr ) ) {
200
  $attr['class'] .= ' alt';
201
  } else {
202
  $attr['class'] = 'alt';
readme.txt CHANGED
@@ -3,19 +3,19 @@ Contributors: templateinvaders
3
  Tags: woocommerce, wishlist, woocommerce wishlist, shop, ecommerce
4
  Requires at least: 4.7
5
  Tested up to: 6.1
6
- Stable tag: 2.0.14
7
  License: GPLv3
8
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
9
  Plugin URI: https://wordpress.org/plugins/ti-woocommerce-wishlist/
10
 
11
  Add WooCommerce Wishlist functionality to your store for free.
12
- Allow your store guests and customers to add products to Wishlist.
13
 
14
  == Description ==
15
 
16
  = Increase Sales and Conversions =
17
 
18
- WooCommerce Wishlist is a simple but powerful tool that can help you to convert your site visitors into loyal customers. There are many situations when customers can't buy a product at this time or simply don’t want. Possibility to save products for later encourages users to return to your site and after all, make a purchase. Adding products to Wishlist is easy and convenient so it may also force your customers to buy even more products than they planned. Users can share their wishlist, for example, to help their friends choose a gift for an upcoming holiday and so on. By sharing their Wishlists, they are bringing you, new potential customers. All in all this increasing amount of your site visitors, conversion and as a result sales.
19
 
20
  🔗 [Live Preview #1](https://wishlist2.templateinvaders.com/?utm_source=wordpressorg&utm_content=preview)
21
  🔗 [Live Preview #2](https://wishlist3.templateinvaders.com/?utm_source=wordpressorg&utm_content=preview)
@@ -25,21 +25,27 @@ WooCommerce Wishlist is a simple but powerful tool that can help you to convert
25
 
26
  = Basic Features =
27
 
28
- + Select Wishlist page and Name
29
- + Remove the product from wishlist automatically, after adding it to cart
30
- + Position of "Add to wishlist" button on product page and catalogue
31
- + Shortcode for "Add to wishlist" button to place it anywhere on the page.
32
- + "Add to wishlist" Button or Link on product page
33
- + Predefined icons for "Add to Wishlist" button
 
34
  + Upload your custom "Add to Wishlist" button icon
35
- + Redirect to wishlist page after adding items to the wishlist
 
36
  + Customizable wishlist table columns
 
37
  + Share wishlist on social channels (Facebook, Twitter, Pinterest, Google+, WhatsApp, email)
38
  + Fully Customizable Appearance
39
  + Custom CSS styles
40
  + Translation ready
41
- + [WPML](https://wpml.org/?aid=9393&affiliate_key=9xzbMQnIyxHE) Support
 
 
42
  + Cache friendly
 
43
 
44
  = Premium Features =
45
 
@@ -49,16 +55,18 @@ TI WooCommerce Wishlist Premium version is a powerful marketing tool on top of a
49
 
50
  🔹 Multi-wishlists per user
51
  🔹 Wishlist privacy settings
 
 
52
  🔹 Products quantity
53
  🔹 Product analytics for admin
54
  🔹 Promotional emails
55
  🔹 Ask for an estimate feature
56
- 🔹 Following wishlist feature
57
  🔹 Advanced settings almost for all basic features
58
  🔹 Additional shortcodes and widgets
59
  🔹 Premium predefined styles skin
60
 
61
- 🔗 [See the difference between free and premium versions](https://templateinvaders.com/free-vs-premium-woocommerce-wishlist-comparison/?utm_source=wordpressorg&utm_content=compare) of the most powerful Wishlist solution for WooCommerce.
62
 
63
  💰 <strong>[100% Money Back Guarantee](https://templateinvaders.com/product/ti-woocommerce-wishlist-wordpress-plugin/?utm_source=wordpressorg&utm_content=money_back)</strong>
64
 
@@ -68,20 +76,20 @@ It is also very important for any WordPress website to use cache plugins, so we
68
 
69
  = Add to Wishlist button =
70
  You can adjust Add to wishlist button settings to make it work best for your website.
71
- Make it a link or a button, choose from predefined icons or upload your own. Select predefined button position or place it wherever you want using the shortcode.
72
 
73
  = Customizable Wishlist table =
74
- You can show/hide any column in wishlist table on the wishlist page. So it is for you to decide what information to show and whatnot. Make your wishlist page informative or simple.
75
 
76
  = Make it fit your website perfectly =
77
- TI WooCommerce Wishlist comes with over 60 appearance options such as colours, font size, borders, etc. Not enough? You can add your custom CSS styles directly in the admin panel.
78
 
79
  = Translation Ready =
80
- You can easily translate TI WooCommerce Wishlist to any language. Simply choose the most convenient way for you: using poEdit tool, [Loco Translate](https://wordpress.org/plugins/loco-translate/), [WP Multilang](https://wordpress.org/plugins/wp-multilang/) or [WPML](https://wpml.org/?aid=9393&affiliate_key=9xzbMQnIyxHE).
81
 
82
- = Responsive & Retina Ready =
83
- We know how important responsive website for the online store in nowadays.
84
- That is why we made sure that Wishlist looks and works perfectly on any devices and the layouts are user-friendly. Simply check screenshots or preview.
85
 
86
  = GDPR Ready =
87
  The TI WooCommerce Wishlist does not collect any personal data from website visitors which makes it GDPR compliant.
@@ -89,43 +97,41 @@ The TI WooCommerce Wishlist does not collect any personal data from website visi
89
  == Translations ==
90
  Want to add a new language to TI WooCommerce Wishlist? You can contribute via [translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/ti-woocommerce-wishlist).
91
 
92
-
93
  == Suggestions ==
94
- You are excited from the TI WooCommerce Wishlist and want to contribute? Get involved at our [GitHub repository](https://github.com/TemplateInvaders/ti-woocommerce-wishlist)
95
-
96
 
97
  == Documentation ==
98
  Full documentation is available [here](https://templateinvaders.com/documentation/ti-woocommerce-wishlist-free/?utm_source=wordpressorg&utm_content=documentation).
99
 
100
  == Installation ==
101
 
102
- There are few ways to install TI WooCommerce Wishlist:
103
 
104
  = 1. From the WordPress admin panel: =
105
 
106
  + Go to "Plugins" > "Add New" and search for "TI WooCommerce Wishlist"
107
 
108
- + Press "Install Now" button for the "TI WooCommerce Wishlist" plugin
109
 
110
- + After the installation is complete click "Activate" link (Plugins > Installed Plugins).
111
 
112
  = 2. Install manually using the FTP method. =
113
 
114
  + Download the plugin
115
 
116
- + Upload the plugin folder into /wp-content/plugins directory of your WordPress installation using your favourite FTP client.
117
 
118
- + Navigate to "Plugins" > "Installed Plugins" section in your dashboard and activate the plugin.
119
 
120
- = 3. Install manually from WordPress admin panel =
121
 
122
  + Download the plugin
123
 
124
- + Go to "Plugins" > "Add New" and press "Upload Plugin" button.
125
 
126
  + Browse the plugin archive and click "Install Now"
127
 
128
- + After the installation is complete click "Activate" link (Plugins > Installed Plugins).
129
 
130
  == Frequently Asked Questions ==
131
 
@@ -151,10 +157,10 @@ Yes, you can! Join in on our [GitHub repository](https://github.com/TemplateInva
151
 
152
  1. TI WooCommerce Wishlist Settings page
153
  2. TI WooCommerce Wishlist Appearance Options
154
- 3. The look of "Add to Wishlist" button on the frontend with different settings
155
  4. Wishlist page with all columns, desktop view
156
- 5. Wishlist page with turned off date of addition, checkboxes and bulk actions.
157
- 6. When you click Add to Wishlist button a popup with success or error message appears.
158
  7. Wishlist page, Tablet view
159
  8. Wishlist page, Mobile view
160
  9. Simplified Wishlist page, Mobile view
@@ -163,6 +169,12 @@ Yes, you can! Join in on our [GitHub repository](https://github.com/TemplateInva
163
 
164
 
165
  == Changelog ==
 
 
 
 
 
 
166
  = 2.0.14 =
167
  *Release Date - 17 November 2022*
168
 
3
  Tags: woocommerce, wishlist, woocommerce wishlist, shop, ecommerce
4
  Requires at least: 4.7
5
  Tested up to: 6.1
6
+ Stable tag: 2.0.15
7
  License: GPLv3
8
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
9
  Plugin URI: https://wordpress.org/plugins/ti-woocommerce-wishlist/
10
 
11
  Add WooCommerce Wishlist functionality to your store for free.
12
+ Allows your store guests and customers to add products to the wishlist.
13
 
14
  == Description ==
15
 
16
  = Increase Sales and Conversions =
17
 
18
+ WooCommerce Wishlist is a simple but powerful tool that can help you to convert your site visitors into loyal customers. There are many situations when customers can't buy a product at this time or simply don’t want it. The possibility to save products for later encourages users to return to your site and after all, make a purchase. Adding products to a wishlist is easy and convenient so it may also force your customers to buy even more products than they planned. Users can share their wishlist, for example, to help their friends choose a gift for an upcoming holiday and so on. By sharing their Wishlists, they are bringing you, new potential customers. All in all this increasing amount of your site visitors, conversion, and as a result sales.
19
 
20
  🔗 [Live Preview #1](https://wishlist2.templateinvaders.com/?utm_source=wordpressorg&utm_content=preview)
21
  🔗 [Live Preview #2](https://wishlist3.templateinvaders.com/?utm_source=wordpressorg&utm_content=preview)
25
 
26
  = Basic Features =
27
 
28
+ + Setup Wizard
29
+ + Select the Wishlist page or set it under the WooCommerce My Account section
30
+ + Storewide stats for each product on the add to wishlist button
31
+ + Wishlist products counter
32
+ + Position of "Add to wishlist" button on the product page and catalog
33
+ + Shortcode for the "Add to wishlist" button to place it anywhere on the page.
34
+ + Predefined icons for the "Add to Wishlist" button
35
  + Upload your custom "Add to Wishlist" button icon
36
+ + Custom product fields support by default and extended integrations with other plugins
37
+ + Redirect to the wishlist page after adding items to the wishlist
38
  + Customizable wishlist table columns
39
+ + Remove the product from the wishlist automatically, after adding it to the cart
40
  + Share wishlist on social channels (Facebook, Twitter, Pinterest, Google+, WhatsApp, email)
41
  + Fully Customizable Appearance
42
  + Custom CSS styles
43
  + Translation ready
44
+ + Multilingual ready with [WPML](https://wpml.org/?aid=9393&affiliate_key=9xzbMQnIyxHE) or Polylang plugins
45
+ + More than 50+ integrations with other plugins
46
+ + Fast AJAX interaction for all frontend events
47
  + Cache friendly
48
+ + [REST API](https://templateinvaders.com/api/wishlist/?utm_source=wordpressorg&utm_content=basic_features)
49
 
50
  = Premium Features =
51
 
55
 
56
  🔹 Multi-wishlists per user
57
  🔹 Wishlist privacy settings
58
+ 🔹 Wishlist products sorting by drag & drop
59
+ 🔹 Wishlist total price
60
  🔹 Products quantity
61
  🔹 Product analytics for admin
62
  🔹 Promotional emails
63
  🔹 Ask for an estimate feature
64
+ 🔹 Following the wishlist feature
65
  🔹 Advanced settings almost for all basic features
66
  🔹 Additional shortcodes and widgets
67
  🔹 Premium predefined styles skin
68
 
69
+ 🔗 [Check the difference between free and premium versions](https://templateinvaders.com/free-vs-premium-woocommerce-wishlist-comparison/?utm_source=wordpressorg&utm_content=compare) of the most powerful Wishlist solution for WooCommerce.
70
 
71
  💰 <strong>[100% Money Back Guarantee](https://templateinvaders.com/product/ti-woocommerce-wishlist-wordpress-plugin/?utm_source=wordpressorg&utm_content=money_back)</strong>
72
 
76
 
77
  = Add to Wishlist button =
78
  You can adjust Add to wishlist button settings to make it work best for your website.
79
+ Make it a link or a button, choose from predefined icons or upload your own. Select a predefined button position or place it wherever you want using the shortcode.
80
 
81
  = Customizable Wishlist table =
82
+ You can show/hide any column in the wishlist table on the wishlist page. So it is for you to decide what information to show and whatnot. Make your wishlist page informative or simple.
83
 
84
  = Make it fit your website perfectly =
85
+ TI WooCommerce Wishlist comes with over 60 appearance options such as colors, font size, borders, etc. Not enough? You can add your custom CSS styles directly in the admin panel.
86
 
87
  = Translation Ready =
88
+ You can easily translate TI WooCommerce Wishlist into any language. Simply choose the most convenient way for you: using poEdit tool, [Loco Translate](https://wordpress.org/plugins/loco-translate/), [WP Multilang](https://wordpress.org/plugins/wp-multilang/) or [WPML](https://wpml.org/?aid=9393&affiliate_key=9xzbMQnIyxHE).
89
 
90
+ = Responsive =
91
+ We know how important responsive websites are for online stores nowadays.
92
+ That is why we made sure that Wishlist looks and works perfectly on any device and that the layouts are user-friendly. Simply check screenshots or preview.
93
 
94
  = GDPR Ready =
95
  The TI WooCommerce Wishlist does not collect any personal data from website visitors which makes it GDPR compliant.
97
  == Translations ==
98
  Want to add a new language to TI WooCommerce Wishlist? You can contribute via [translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/ti-woocommerce-wishlist).
99
 
 
100
  == Suggestions ==
101
+ You are excited about the TI WooCommerce Wishlist and want to contribute? Get involved at our [GitHub repository](https://github.com/TemplateInvaders/ti-woocommerce-wishlist)
 
102
 
103
  == Documentation ==
104
  Full documentation is available [here](https://templateinvaders.com/documentation/ti-woocommerce-wishlist-free/?utm_source=wordpressorg&utm_content=documentation).
105
 
106
  == Installation ==
107
 
108
+ There are a few ways to install TI WooCommerce Wishlist:
109
 
110
  = 1. From the WordPress admin panel: =
111
 
112
  + Go to "Plugins" > "Add New" and search for "TI WooCommerce Wishlist"
113
 
114
+ + Press the "Install Now" button for the "TI WooCommerce Wishlist" plugin
115
 
116
+ + After the installation is complete click the "Activate" link (Plugins > Installed Plugins).
117
 
118
  = 2. Install manually using the FTP method. =
119
 
120
  + Download the plugin
121
 
122
+ + Upload the plugin folder into the /wp-content/plugins directory of your WordPress installation using your favorite FTP client.
123
 
124
+ + Navigate to the "Plugins" > "Installed Plugins" section in your dashboard and activate the plugin.
125
 
126
+ = 3. Install manually from the WordPress admin panel =
127
 
128
  + Download the plugin
129
 
130
+ + Go to "Plugins" > "Add New" and press the "Upload Plugin" button.
131
 
132
  + Browse the plugin archive and click "Install Now"
133
 
134
+ + After the installation is complete click the "Activate" link (Plugins > Installed Plugins).
135
 
136
  == Frequently Asked Questions ==
137
 
157
 
158
  1. TI WooCommerce Wishlist Settings page
159
  2. TI WooCommerce Wishlist Appearance Options
160
+ 3. The look of the "Add to Wishlist" button on the frontend with different settings
161
  4. Wishlist page with all columns, desktop view
162
+ 5. Wishlist page with the turned-off date of addition, checkboxes, and bulk actions.
163
+ 6. When you click Add to Wishlist button a popup with a success or error message appears.
164
  7. Wishlist page, Tablet view
165
  8. Wishlist page, Mobile view
166
  9. Simplified Wishlist page, Mobile view
169
 
170
 
171
  == Changelog ==
172
+ = 2.0.15 =
173
+ *Release Date - 22 November 2022*
174
+
175
+ * Added option "Days after which the guest wishlist will be deleted"
176
+ * Fixed the message about the failed event of the add to cart button on the wishlist page
177
+
178
  = 2.0.14 =
179
  *Release Date - 17 November 2022*
180
 
ti-woocommerce-wishlist.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: TI WooCommerce Wishlist
5
  * Plugin URI: https://wordpress.org/plugins/ti-woocommerce-wishlist/
6
  * Description: Wishlist functionality for your WooCommerce store.
7
- * Version: 2.0.14
8
  * Requires at least: 4.7
9
  * Tested up to: 6.1
10
  * WC requires at least: 3.0
@@ -41,7 +41,7 @@ if ( ! defined( 'TINVWL_DOMAIN' ) ) {
41
  }
42
 
43
  if ( ! defined( 'TINVWL_FVERSION' ) ) {
44
- define( 'TINVWL_FVERSION', '2.0.14' );
45
  }
46
 
47
  if ( ! defined( 'TINVWL_LOAD_FREE' ) ) {
4
  * Plugin Name: TI WooCommerce Wishlist
5
  * Plugin URI: https://wordpress.org/plugins/ti-woocommerce-wishlist/
6
  * Description: Wishlist functionality for your WooCommerce store.
7
+ * Version: 2.0.15
8
  * Requires at least: 4.7
9
  * Tested up to: 6.1
10
  * WC requires at least: 3.0
41
  }
42
 
43
  if ( ! defined( 'TINVWL_FVERSION' ) ) {
44
+ define( 'TINVWL_FVERSION', '2.0.15' );
45
  }
46
 
47
  if ( ! defined( 'TINVWL_LOAD_FREE' ) ) {