YITH WooCommerce Wishlist - Version 2.0.10

Version Description

  • Added: Compatibility with WC 2.4.2
  • Tweak: added nonce field to wishlist-view form
  • Tweak: added yith_wcwl_custom_add_to_cart_text and yith_wcwl_ask_an_estimate_text filters
  • Tweak: added check for presence of required function in wishlist script
  • Fixed: admin colorpicker field (for WC 2.4.x compatibility)
Download this release

Release Info

Developer yithemes
Plugin Icon 128x128 YITH WooCommerce Wishlist
Version 2.0.10
Comparing to
See all releases

Code changes from version 2.0.9 to 2.0.10

README.txt CHANGED
@@ -1,10 +1,10 @@
1
- === YITH WooCommerce Wishlist ===
2
3
Contributors: yithemes
4
- Tags: wishlist, woocommerce, products, themes, yit, e-commerce, shop, ecommerce wishlist, yith, woocommerce wishlist, woocommerce 2.3 ready, shop wishlist
5
Requires at least: 4.0
6
- Tested up to: 4.2.3
7
- Stable tag: 2.0.9
8
License: GPLv2 or later
9
License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
@@ -14,21 +14,35 @@ WooCommerce 2.3.x compatible.
14
15
== Description ==
16
17
- What can really make the difference in conversions and amount of sales is without a doubt the freedom to share your own wishlist, even on social networks, increasing indirect sales: can you imagine the sales volume you can generate during holidays or birthdays, when relatives and friends will be looking for the wishlist of your clients to buy a gift?
18
19
- Offer to your visitors a chance to add the products of your woocommerce store to a wishlist page. With YITH WooCommerce Wishlist you can add a link in each product detail page,
20
- in order to add the products to the wishlist page. The plugin will create you the specific page and the products will be added in this page and
21
- afterwards add them to the cart or remove them.
22
23
- Working demo are available:
24
25
**[LIVE DEMO 1](http://preview.yithemes.com/room09/product/africa-style/)** - **[LIVE DEMO 2](http://preview.yithemes.com/bazar/shop/ankle-shoes/)**
26
27
- Full documentation is available [here](http://yithemes.com/docs-plugins/yith-woocommerce-wishlist).
28
29
- This plugin is 100% compatible with [WPML](http://wpml.org/?aid=24889&affiliate_key=Qn1wDeBNTcZV)
30
31
- = Available Languages =
32
33
* Chinese - CHINA
34
* Chinese - TAIWAN
@@ -46,17 +60,49 @@ This plugin is 100% compatible with [WPML](http://wpml.org/?aid=24889&affiliate_
46
* Turkish - TURKEY
47
* Ukrainian - UKRAINE
48
49
== Installation ==
50
51
1. Unzip the downloaded zip file.
52
2. Upload the plugin folder into the `wp-content/plugins/` directory of your WordPress site.
53
3. Activate `YITH WooCommerce Wishlist` from Plugins page
54
55
- YITH WooCommerce Wishlist will add a new submenu called "Wishlist" under "YIT Plugins" menu. Here you are able to configure all the plugin settings.
56
57
== Frequently Asked Questions ==
58
59
- = Can I customize the wishlist page? =
60
Yes, the page is a simple template and you can override it by putting the file template "wishlist.php" inside the "woocommerce" folder of the theme folder.
61
62
= Can I move the position of "Add to wishlist" button? =
@@ -69,7 +115,7 @@ Yes, you can change the colors of background, text and border or apply a custom
69
Try to regenerate permalinks from Settings -> Permalinks by simply saving them again.
70
71
= Did icons of your theme disappear after update to Wishlist 2.0.x? =
72
- It might be a compatibility problem with the old version of font-awesome, which has been solved with version 2.0.2 of the plugin. Be sure that you are using a plugin version that is greater or equal to 2.0.2. If, after update, you cannot see icons in your theme yet, save again options of YITH WooCommerce Wishlist plugin (that you can find in YIT Plugin -> Wishlist).
73
74
= Have you encountered anomalies after plugin update, that did not exist in the previous version? =
75
This might depend on the fact that your theme overrides plugin templates. Check if the developer of your theme has released a compatibility update with version 2.0 or later of YITH WooCommerce Wishlist. As an alternative you can try the plugin in WordPress default theme to leave out any possible influences by the theme.
@@ -77,15 +123,46 @@ This might depend on the fact that your theme overrides plugin templates. Check
77
= I am currently using Wishlist plugin with Catalog Mode enabled in my site. Prices for products should disappear, yet they still appear in the wishlist page. Can I remove them? =
78
Yes, of course you can. To avoid Wishlist page to show product prices, you can hide price column from wishlist table. Go to YIT plugins -> wishlist -> settings and disable option "Show Unit price".
79
80
== Screenshots ==
81
82
1. The page with "Add to wishlist" button
83
- 2. The wishlist page
84
- 3. The Wishlist settings page
85
- 4. The Wishlist settings page
86
87
== Changelog ==
88
89
= 2.0.9 =
90
91
* Added: russian translation
@@ -291,24 +368,17 @@ Some of these translations are not complete.
291
If you have created your own language pack, or have an update for an existing one, you can send [gettext PO and MO file](http://codex.wordpress.org/Translating_WordPress "Translating WordPress")
292
[use](http://yithemes.com/contact/ "Your Inspiration Themes") so we can bundle it into YITH WooCommerce Wishlist Languages.
293
294
== Documentation ==
295
296
- Full documentation is available [here](http://yithemes.com/docs-plugins/yith-woocommerce-wishlist).
297
298
== Upgrade notice ==
299
300
- = 2.0.9 =
301
302
- * Added: russian translation
303
- * Added: WooCommerce class to wishlist view form
304
- * Added: spinner to plugin assets
305
- * Added: check on "user_logged_in" for sub-templates in wishlist-view
306
- * Added: WordPress 4.2.3 compatibility
307
- * Added: WPML 3.2.2 compatibility (removed deprecated function)
308
- * Added: new check on is_product_in_wishlist (for unlogged users/default wishlist)
309
- * Tweak: escaped urls on share template
310
- * Tweak: removed new line between html attributes, to improve themes compatibility
311
- * Fixed: WPML 3.2.2 compatibility (fix suggested by Konrad)
312
- * Fixed: regex used to find class attr in "Add to Cart" button
313
- * Fixed: usage of product_id for add_to_wishlist shortcode, when global $product is not defined
314
- * Fixed: icon attribute for yith_wcwl_add_to_wishlist shortcode
1
+ === YITH WooCommerce Wishlist ===
2
3
Contributors: yithemes
4
+ Tags: wishlist in woocommerce ,woocommerce add wishlist,woocommerce wishlist button, woocommerce wishlist shortcode, wishlist, woocommerce, products, themes, yit, e-commerce, shop, ecommerce wishlist, yith, woocommerce wishlist, woocommerce 2.3 ready, shop wishlist
5
Requires at least: 4.0
6
+ Tested up to: 4.2.4
7
+ Stable tag: 2.0.10
8
License: GPLv2 or later
9
License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
14
15
== Description ==
16
17
+ What can really make the difference in conversions and amount of sales in your WooCommerce store is, without a doubt, the freedom to share your own wishlist, even on social networks, because this helps you increase indirect sales. Can you imagine the sales volume you can generate for your WooCommerce store during holidays or birthdays, when relatives and friends will be looking for the wishlist of your customers to buy a gift?
18
19
+ Offer to your visitors the chance to add WooCommerce products of your store to a wishlist page, that they will be able to recover easily in your WooCommerce store. With YITH WooCommerce Wishlist, you can add a link in detail page of each of your WooCommerce products, in order to add WooCommerce products to the wishlist page. The plugin will create a specific page where products selected by users of your WooCommerce shop will appear. From this page, they will also be able to add WooCommerce products in wishlist to the cart or to remove them.
20
21
+ YITH WooCommerce Wishlist is one of the plugins most required and most used by WordPress and WooCommerce users. YITH WooCommerce Wishlist has reveled to be a precious functionality for a WooCommerce store, because users often like products, but they do not have enough money to purchase them. And if they have to come back and search for the specific WooCommerce product they liked, probably they will have to lose time before they find the right one, while if they know where they can recover products they like will certainly increase loyalty and user’s satisfaction.
22
+
23
+ = Main features of YITH WooCommerce Wishlist =
24
+
25
+ * Select wishist page in your WooCommerce shop
26
+ * Select where displaying shortcode “add to wishlist”
27
+ * Customise columns that will be shown in wishlist table
28
+ * Show “Add to Cart” button in wishlist table
29
+ * Show the date when the WooCommerce product has been added to the wishlist (only for logged users)
30
+ * Remove WooCommerce items from wishlist after having added them to the cart
31
+ * Redirect to WooCommerce checkout page after adding items to the cart
32
+ * Share wishlist on social channels (for logged users only)
33
+ * Fully customise colours and style of your YITH WooCommerce Wishlist
34
+
35
+
36
+
37
+ Working demos for YITH WooCommerce Wishlist are available:
38
39
**[LIVE DEMO 1](http://preview.yithemes.com/room09/product/africa-style/)** - **[LIVE DEMO 2](http://preview.yithemes.com/bazar/shop/ankle-shoes/)**
40
41
+ Full documentation of YITH WooCommerce Wishlist is available [here](http://yithemes.com/docs-plugins/yith-woocommerce-wishlist).
42
43
+ YITH WooCommerce Wishlist is 100% compatible with [WPML](http://wpml.org/?aid=24889&affiliate_key=Qn1wDeBNTcZV).
44
45
+ = Available Languages for YITH WooCommerce Wishlist =
46
47
* Chinese - CHINA
48
* Chinese - TAIWAN
60
* Turkish - TURKEY
61
* Ukrainian - UKRAINE
62
63
+
64
+ = Compatibility with WooCommerce plugins =
65
+
66
+ YITH WooCommerce Wishlist has been tested and compatibility is certain with the following WooCommerce plugins that you can add to your site:
67
+
68
+ * [YITH WooCommerce Request A Quote](https://wordpress.org/plugins/yith-woocommerce-request-a-quote/)
69
+ * [YITH WooCommerce Waiting List](https://wordpress.org/plugins/yith-woocommerce-waiting-list/)
70
+
71
+ = An essential kit for your WooCommerce site? =
72
+
73
+ YITH WooCommerce Wishlist is available in combination with many other plugins in [**YITH Essential Kit for WooCommerce #1**](https://wordpress.org/plugins/yith-essential-kit-for-woocommerce-1/), a bundle of indispensable tools to make your WooCommerce site look more professional and be more user-friendly. Learn more about all of WooCommerce plugins included and boost your WooCommerce site with a simple click!
74
+
75
+
76
+ = Premium features of YITH WooCommerce Wishlist =
77
+
78
+ If you want to benefit from more features you can give a look the the premium version of YITH WooCommerce Wishlist:
79
+
80
+ * View wishlists created (by logged users) on your WooCommerce shop
81
+ * View popular products added to wishlists by users of your WooCommerce shop
82
+ * Enable/disable wishlist features for unlogged users
83
+ * Show a notice to unlogged users: invite them to log in to benefit from all wishlist functionalities
84
+ * Allow users to create as many wishlists as they want
85
+ * Allow users to manage wishlists, rename and delete them, add or remove WooCommerce items
86
+ * Allow users to search registered wishlists and to display them
87
+ * Allow users to set visibility options for each wishlist, by making them either public (visible to anyone), private (visible to owner only) or shared (visible only to people it has been shared with)
88
+ * Show multiple “Add to Cart” buttons in wishlist table
89
+ * Show “Ask an estimate” button to let customers send the content of their wishlist to the site admin and get a quotation
90
+ * Add optional notes to quote request
91
+ * Admin can send a promotional email to users who have added a specific product to their wishlist
92
+ * Allow users to move a WooCommerce product from a wishlist to another one directly from the wishlist table
93
+
94
+
95
== Installation ==
96
97
1. Unzip the downloaded zip file.
98
2. Upload the plugin folder into the `wp-content/plugins/` directory of your WordPress site.
99
3. Activate `YITH WooCommerce Wishlist` from Plugins page
100
101
+ YITH WooCommerce Wishlist will add a new submenu called "Wishlist" in "YIT Plugins" menu. Here you are able to configure all the plugin settings.
102
103
== Frequently Asked Questions ==
104
105
+ = Can I customize the wishlist page in this WooCommerce plugin? =
106
Yes, the page is a simple template and you can override it by putting the file template "wishlist.php" inside the "woocommerce" folder of the theme folder.
107
108
= Can I move the position of "Add to wishlist" button? =
115
Try to regenerate permalinks from Settings -> Permalinks by simply saving them again.
116
117
= Did icons of your theme disappear after update to Wishlist 2.0.x? =
118
+ It might be a compatibility problem with the old version of font-awesome, which has been solved with version 2.0.2 of the plugin. Ensure that you are using a plugin version that is greater or equal to 2.0.2. If, after update, you cannot see icons in your theme yet, save again options of YITH WooCommerce Wishlist plugin (that you can find in YIT Plugin -> Wishlist).
119
120
= Have you encountered anomalies after plugin update, that did not exist in the previous version? =
121
This might depend on the fact that your theme overrides plugin templates. Check if the developer of your theme has released a compatibility update with version 2.0 or later of YITH WooCommerce Wishlist. As an alternative you can try the plugin in WordPress default theme to leave out any possible influences by the theme.
123
= I am currently using Wishlist plugin with Catalog Mode enabled in my site. Prices for products should disappear, yet they still appear in the wishlist page. Can I remove them? =
124
Yes, of course you can. To avoid Wishlist page to show product prices, you can hide price column from wishlist table. Go to YIT plugins -> wishlist -> settings and disable option "Show Unit price".
125
126
+ = Is it compatible with all WordPress themes? =
127
+
128
+ Compatibility with all themes is impossible, because they are too many, but generally if themes are developed according to WordPress and WooCommerce guidelines, YITH plugins are compatible with them.
129
+ Yet, we can grant compatibility with themes developed by YIThemes, because they are constantly updated and tested with our plugins. Sometimes, especially when new versions are released, it might only require some time for them to be all updated, but you can be sure that they will be tested and will be working in a few days.
130
+
131
+ = How can I get support if my WooCommerce plugin is not working? =
132
+
133
+ If you have problems with our plugins or something is not working as it should, first follow this preliminary steps:
134
+
135
+ * Test the plugin with a WordPress default theme, to be sure that the error is not caused by the theme you are currently using.
136
+ * Deactivate all plugins you are using and check if the problem is still occurring.
137
+ * Ensure that you plugin version, your theme version and your WordPress and WooCommerce version (if required) are updated and that the problem you are experiencing has not already been solved in a later plugin update.
138
+
139
+ If none of the previous listed actions helps you solve the problem, then, submit a ticket in the forum and describe your problem accurately, specify WordPress and WooCommerce versions you are using and any other information that might help us solve your problem as quickly as possible. Thanks!
140
+
141
+ = How can I get more features for my WooCommerce plugin? =
142
+ You can get more features with the premium version of YITH WooCommerce Wishlist, available on [YIThemes page](https://yithemes.com/themes/plugins/yith-woocommerce-wishlist). Here you can read more about the premium features of the plugin and make it give it its best shot!
143
+
144
+
145
+ = How can I try the full-featured plugin? =
146
+
147
+ If you want to see a demonstration version of the premium plugin, you can see that in [this page](http://plugins.yithemes.com/yith-woocommerce-wishlist). Browse it and try all options available so that you can see how your plugin looks like.
148
+
149
== Screenshots ==
150
151
1. The page with "Add to wishlist" button
152
+ 2. Wishlist page
153
+ 3. Wishlist settings page
154
+ 4. Wishlist settings page
155
156
== Changelog ==
157
158
+ = 2.0.10 =
159
+
160
+ * Added: Compatibility with WC 2.4.2
161
+ * Tweak: added nonce field to wishlist-view form
162
+ * Tweak: added yith_wcwl_custom_add_to_cart_text and yith_wcwl_ask_an_estimate_text filters
163
+ * Tweak: added check for presence of required function in wishlist script
164
+ * Fixed: admin colorpicker field (for WC 2.4.x compatibility)
165
+
166
= 2.0.9 =
167
168
* Added: russian translation
368
If you have created your own language pack, or have an update for an existing one, you can send [gettext PO and MO file](http://codex.wordpress.org/Translating_WordPress "Translating WordPress")
369
[use](http://yithemes.com/contact/ "Your Inspiration Themes") so we can bundle it into YITH WooCommerce Wishlist Languages.
370
371
+
372
== Documentation ==
373
374
+ Full documentation for YITH WooCommerce Wishlist is available [here](http://yithemes.com/docs-plugins/yith-woocommerce-wishlist).
375
376
== Upgrade notice ==
377
378
+ = 2.0.10 =
379
380
+ * Added: Compatibility with WC 2.4.2
381
+ * Tweak: added nonce field to wishlist-view form
382
+ * Tweak: added yith_wcwl_custom_add_to_cart_text and yith_wcwl_ask_an_estimate_text filters
383
+ * Tweak: added check for presence of required function in wishlist script
384
+ * Fixed: admin colorpicker field (for WC 2.4.x compatibility)
assets/js/jquery.yith-wcwl.js CHANGED
@@ -1,18 +1,20 @@
1
- jQuery(document).ready(function(b){function l(){b('a[data-rel="prettyPhoto[ask_an_estimate]"]').prettyPhoto({hook:"data-rel",social_tools:!1,theme:"pp_woocommerce",horizontal_padding:20,opacity:.8,deeplinking:!1});f.off("change");f=b('.wishlist_table tbody input[type="checkbox"]');b("select.selectBox").selectBox();g()}function r(a){var c=a.data("product-id"),d=b(".add-to-wishlist-"+c),c={add_to_wishlist:c,product_type:a.data("product-type"),action:yith_wcwl_l10n.actions.add_to_wishlist_action};if(yith_wcwl_l10n.multi_wishlist&&
2
- yith_wcwl_l10n.is_user_logged_in){var e=a.parents(".yith-wcwl-popup-footer").prev(".yith-wcwl-popup-content"),m=e.find(".wishlist-select"),f=e.find(".wishlist-name"),e=e.find(".wishlist-visibility");c.wishlist_id=m.val();c.wishlist_name=f.val();c.wishlist_visibility=e.val()}p()?b.ajax({type:"POST",url:yith_wcwl_l10n.ajax_url,data:c,dataType:"json",beforeSend:function(){a.siblings(".ajax-loading").css("visibility","visible")},complete:function(){a.siblings(".ajax-loading").css("visibility","hidden")},
3
- success:function(a){var c=b("#yith-wcwl-popup-message"),e=a.result,f=a.message;if(yith_wcwl_l10n.multi_wishlist&&yith_wcwl_l10n.is_user_logged_in){var m=b("select.wishlist-select");b.prettyPhoto.close();m.each(function(c){c=b(this);var d=c.find("option"),d=d.slice(1,d.length-1);d.remove();if("undefined"!=typeof a.user_wishlists)for(d in d=0,a.user_wishlists)"1"!=a.user_wishlists[d].is_default&&b("<option>").val(a.user_wishlists[d].ID).html(a.user_wishlists[d].wishlist_name).insertBefore(c.find("option:last-child"))})}b("#yith-wcwl-message").html(f);
4
- c.css("margin-left","-"+b(c).width()+"px").fadeIn();window.setTimeout(function(){c.fadeOut()},2E3);"true"==e?((!yith_wcwl_l10n.multi_wishlist||!yith_wcwl_l10n.is_user_logged_in||yith_wcwl_l10n.multi_wishlist&&yith_wcwl_l10n.is_user_logged_in&&yith_wcwl_l10n.hide_add_button)&&d.find(".yith-wcwl-add-button").hide().removeClass("show").addClass("hide"),d.find(".yith-wcwl-wishlistexistsbrowse").hide().removeClass("show").addClass("hide").find("a").attr("href",a.wishlist_url),d.find(".yith-wcwl-wishlistaddedbrowse").show().removeClass("hide").addClass("show").find("a").attr("href",
5
- a.wishlist_url)):"exists"==e?((!yith_wcwl_l10n.multi_wishlist||!yith_wcwl_l10n.is_user_logged_in||yith_wcwl_l10n.multi_wishlist&&yith_wcwl_l10n.is_user_logged_in&&yith_wcwl_l10n.hide_add_button)&&d.find(".yith-wcwl-add-button").hide().removeClass("show").addClass("hide"),d.find(".yith-wcwl-wishlistexistsbrowse").show().removeClass("hide").addClass("show").find("a").attr("href",a.wishlist_url),d.find(".yith-wcwl-wishlistaddedbrowse").hide().removeClass("show").addClass("hide").find("a").attr("href",
6
- a.wishlist_url)):(d.find(".yith-wcwl-add-button").show().removeClass("hide").addClass("show"),d.find(".yith-wcwl-wishlistexistsbrowse").hide().removeClass("show").addClass("hide"),d.find(".yith-wcwl-wishlistaddedbrowse").hide().removeClass("show").addClass("hide"));b("body").trigger("added_to_wishlist")}}):alert(yith_wcwl_l10n.labels.cookie_disabled)}function t(a){var c=a.parents(".cart.wishlist_table"),d=c.data("pagination"),e=c.data("per-page"),f=c.data("page");a=a.parents("tr");c.find(".pagination-row");
7
- a=a.data("row-id");var n=c.data("id"),h=c.data("token"),d={action:yith_wcwl_l10n.actions.remove_from_wishlist_action,remove_from_wishlist:a,pagination:d,per_page:e,current_page:f,wishlist_id:n,wishlist_token:h};b("#yith-wcwl-message").html("&nbsp;");c.fadeTo("400","0.6").block({message:null,overlayCSS:{background:"transparent url("+yith_wcwl_l10n.ajax_loader_url+") no-repeat center",backgroundSize:"16px 16px",opacity:.6}});b("#yith-wcwl-form").load(yith_wcwl_l10n.ajax_url+" #yith-wcwl-form",d,function(){c.stop(!0).css("opacity",
8
- "1").unblock();l();b("body").trigger("removed_from_wishlist")})}function u(a,c){var d=a.data("product-id"),e=b(document).find(".cart.wishlist_table"),f=e.data("pagination"),n=e.data("per-page"),h=e.data("id"),g=e.data("token"),d={action:yith_wcwl_l10n.actions.reload_wishlist_and_adding_elem_action,pagination:f,per_page:n,wishlist_id:h,wishlist_token:g,add_to_wishlist:d,product_type:a.data("product-type")};p()?b.ajax({type:"POST",url:yith_wcwl_l10n.ajax_url,data:d,dataType:"html",beforeSend:function(){e.fadeTo("400",
9
- "0.6").block({message:null,overlayCSS:{background:"transparent url("+yith_wcwl_l10n.ajax_loader_url+") no-repeat center",backgroundSize:"16px 16px",opacity:.6}})},success:function(a){a=b(a).find("#yith-wcwl-form");c.replaceWith(a);l()}}):alert(yith_wcwl_l10n.labels.cookie_disabled)}function v(a){var c=a.parents(".cart.wishlist_table"),d=c.data("token"),e=c.data("id"),f=a.parents("tr").data("row-id");a=a.val();var g=c.data("pagination"),h=c.data("per-page"),k=c.data("page"),d={action:yith_wcwl_l10n.actions.move_to_another_wishlist_action,
10
- wishlist_token:d,wishlist_id:e,destination_wishlist_token:a,item_id:f,pagination:g,per_page:h,current_page:k};""!=a&&(c.fadeTo("400","0.6").block({message:null,overlayCSS:{background:"transparent url("+yith_wcwl_l10n.ajax_loader_url+") no-repeat center",backgroundSize:"16px 16px",opacity:.6}}),b("#yith-wcwl-form").load(yith_wcwl_l10n.ajax_url+" #yith-wcwl-form",d,function(){c.stop(!0).css("opacity","1").unblock();l();b("body").trigger("moved_to_another_wishlist")}))}function q(a){var c=b(this);a.preventDefault();
11
- c.parents(".wishlist-title").next().show();c.parents(".wishlist-title").hide()}function p(){if(navigator.cookieEnabled)return!0;document.cookie="cookietest=1";var a=-1!=document.cookie.indexOf("cookietest=");document.cookie="cookietest=1; expires=Thu, 01-Jan-1970 00:00:01 GMT";return a}function g(){f.on("change",function(){var a="",c=b(this).parents(".cart.wishlist_table"),d=c.data("id"),c=c.data("token"),e=document.URL;f.filter(":checked").each(function(){var c=b(this);a+=0!=a.length?",":"";a+=c.parents("tr").data("row-id")});
12
- e=k(e,"wishlist_products_to_add_to_cart",a);e=k(e,"wishlist_token",c);e=k(e,"wishlist_id",d);b("#custom_add_to_cart").attr("href",e)})}function k(a,c,b){b=c+"="+b;a=a.replace(new RegExp("(&|\\?)"+c+"=[^&]*"),"$1"+b);-1<a.indexOf(c+"=")||(a=-1<a.indexOf("?")?a+("&"+b):a+("?"+b));return a}var w="undefined"!==typeof wc_add_to_cart_params?wc_add_to_cart_params.cart_redirect_after_add:"",f=b('.wishlist_table tbody input[type="checkbox"]:not(:disabled)');b(document).on("click",".add_to_wishlist",function(a){var c=
13
- b(this);a.preventDefault();r(c);return!1});b(document).on("click",".remove_from_wishlist",function(a){var c=b(this);a.preventDefault();t(c);return!1});b(document).on("adding_to_cart","body",function(a,b,d){0!=b.closest(".wishlist_table").length&&(d.remove_from_wishlist_after_add_to_cart=b.closest("tr").data("row-id"),d.wishlist_id=b.closest("table").data("id"),wc_add_to_cart_params.cart_redirect_after_add=yith_wcwl_l10n.redirect_to_cart)});b(document).on("added_to_cart","body",function(a){wc_add_to_cart_params.cart_redirect_after_add=
14
- w;a=b(".wishlist_table");a.find(".added").removeClass("added");a.find(".added_to_cart").remove()});b(document).on("added_to_cart","body",function(){var a=b(".woocommerce-message");0==a.length?b("#yith-wcwl-form").prepend(yith_wcwl_l10n.labels.added_to_cart_message):a.fadeOut(300,function(){b(this).replaceWith(yith_wcwl_l10n.labels.added_to_cart_message).fadeIn()})});b(document).on("cart_page_refreshed","body",l);b(document).on("click",".show-title-form",q);b(document).on("click",".wishlist-title-with-form h2",
15
- q);b(document).on("click",".hide-title-form",function(a){var c=b(this);a.preventDefault();c.parents(".hidden-title-form").hide();c.parents(".hidden-title-form").prev().show()});b(document).on("change",".change-wishlist",function(a){a=b(this);v(a);return!1});b(document).on("change",".yith-wcwl-popup-content .wishlist-select",function(a){a=b(this);"new"==a.val()?a.parents(".yith-wcwl-first-row").next(".yith-wcwl-second-row").css("display","table-row"):a.parents(".yith-wcwl-first-row").next(".yith-wcwl-second-row").hide()});
16
- b(document).on("change","#bulk_add_to_cart",function(){b(this).is(":checked")?f.attr("checked","checked").change():f.removeAttr("checked").change()});b(document).on("click","#custom_add_to_cart",function(a){var c=b(this),d=c.parents(".cart.wishlist_table");yith_wcwl_l10n.ajax_add_to_cart_enabled&&(a.preventDefault(),d.fadeTo("400","0.6").block({message:null,overlayCSS:{background:"transparent url("+yith_wcwl_l10n.ajax_loader_url+") no-repeat center",backgroundSize:"16px 16px",opacity:.6}}),b("#yith-wcwl-form").load(yith_wcwl_l10n.ajax_url+
17
- c.attr("href")+" #yith-wcwl-form",{action:yith_wcwl_l10n.actions.bulk_add_to_cart_action},function(){d.stop(!0).css("opacity","1").unblock();b('a[data-rel="prettyPhoto[ask_an_estimate]"]').prettyPhoto({hook:"data-rel",social_tools:!1,theme:"pp_woocommerce",horizontal_padding:20,opacity:.8,deeplinking:!1});f.off("change");f=b('.wishlist_table tbody input[type="checkbox"]');b("select.selectBox").selectBox();g()}))});(function(){if(0!=b(".yith-wcwl-add-to-wishlist").length&&0==b("#yith-wcwl-popup-message").length){var a=
18
- b("<div>").attr("id","yith-wcwl-message"),a=b("<div>").attr("id","yith-wcwl-popup-message").html(a).hide();b("body").prepend(a)}})();g();b("select.selectBox").selectBox();b(".yith-wfbt-add-wishlist").on("click",function(a){a.preventDefault();a=b(this);var c=b("#yith-wcwl-form");b("html, body").animate({scrollTop:c.offset().top},500);u(a,c)})});
1
+ jQuery(document).ready(function(b){function l(){"undefined"!=typeof b.prettyPhoto&&b('a[data-rel="prettyPhoto[ask_an_estimate]"]').prettyPhoto({hook:"data-rel",social_tools:!1,theme:"pp_woocommerce",horizontal_padding:20,opacity:.8,deeplinking:!1});f.off("change");f=b('.wishlist_table tbody input[type="checkbox"]');"undefined"!=typeof b.fn.selectBox&&b("select.selectBox").selectBox();g()}function r(a){var c=a.data("product-id"),d=b(".add-to-wishlist-"+c),c={add_to_wishlist:c,product_type:a.data("product-type"),
2
+ action:yith_wcwl_l10n.actions.add_to_wishlist_action};if(yith_wcwl_l10n.multi_wishlist&&yith_wcwl_l10n.is_user_logged_in){var e=a.parents(".yith-wcwl-popup-footer").prev(".yith-wcwl-popup-content"),m=e.find(".wishlist-select"),f=e.find(".wishlist-name"),e=e.find(".wishlist-visibility");c.wishlist_id=m.val();c.wishlist_name=f.val();c.wishlist_visibility=e.val()}p()?b.ajax({type:"POST",url:yith_wcwl_l10n.ajax_url,data:c,dataType:"json",beforeSend:function(){a.siblings(".ajax-loading").css("visibility",
3
+ "visible")},complete:function(){a.siblings(".ajax-loading").css("visibility","hidden")},success:function(a){var c=b("#yith-wcwl-popup-message"),e=a.result,f=a.message;if(yith_wcwl_l10n.multi_wishlist&&yith_wcwl_l10n.is_user_logged_in){var m=b("select.wishlist-select");"undefined"!=typeof b.prettyPhoto&&b.prettyPhoto.close();m.each(function(c){c=b(this);var d=c.find("option"),d=d.slice(1,d.length-1);d.remove();if("undefined"!=typeof a.user_wishlists)for(d in d=0,a.user_wishlists)"1"!=a.user_wishlists[d].is_default&&
4
+ b("<option>").val(a.user_wishlists[d].ID).html(a.user_wishlists[d].wishlist_name).insertBefore(c.find("option:last-child"))})}b("#yith-wcwl-message").html(f);c.css("margin-left","-"+b(c).width()+"px").fadeIn();window.setTimeout(function(){c.fadeOut()},2E3);"true"==e?((!yith_wcwl_l10n.multi_wishlist||!yith_wcwl_l10n.is_user_logged_in||yith_wcwl_l10n.multi_wishlist&&yith_wcwl_l10n.is_user_logged_in&&yith_wcwl_l10n.hide_add_button)&&d.find(".yith-wcwl-add-button").hide().removeClass("show").addClass("hide"),
5
+ d.find(".yith-wcwl-wishlistexistsbrowse").hide().removeClass("show").addClass("hide").find("a").attr("href",a.wishlist_url),d.find(".yith-wcwl-wishlistaddedbrowse").show().removeClass("hide").addClass("show").find("a").attr("href",a.wishlist_url)):"exists"==e?((!yith_wcwl_l10n.multi_wishlist||!yith_wcwl_l10n.is_user_logged_in||yith_wcwl_l10n.multi_wishlist&&yith_wcwl_l10n.is_user_logged_in&&yith_wcwl_l10n.hide_add_button)&&d.find(".yith-wcwl-add-button").hide().removeClass("show").addClass("hide"),
6
+ d.find(".yith-wcwl-wishlistexistsbrowse").show().removeClass("hide").addClass("show").find("a").attr("href",a.wishlist_url),d.find(".yith-wcwl-wishlistaddedbrowse").hide().removeClass("show").addClass("hide").find("a").attr("href",a.wishlist_url)):(d.find(".yith-wcwl-add-button").show().removeClass("hide").addClass("show"),d.find(".yith-wcwl-wishlistexistsbrowse").hide().removeClass("show").addClass("hide"),d.find(".yith-wcwl-wishlistaddedbrowse").hide().removeClass("show").addClass("hide"));b("body").trigger("added_to_wishlist")}}):
7
+ alert(yith_wcwl_l10n.labels.cookie_disabled)}function t(a){var c=a.parents(".cart.wishlist_table"),d=c.data("pagination"),e=c.data("per-page"),f=c.data("page");a=a.parents("tr");c.find(".pagination-row");a=a.data("row-id");var n=c.data("id"),h=c.data("token"),d={action:yith_wcwl_l10n.actions.remove_from_wishlist_action,remove_from_wishlist:a,pagination:d,per_page:e,current_page:f,wishlist_id:n,wishlist_token:h};b("#yith-wcwl-message").html("&nbsp;");"undefined"!=typeof b.fn.block&&c.fadeTo("400",
8
+ "0.6").block({message:null,overlayCSS:{background:"transparent url("+yith_wcwl_l10n.ajax_loader_url+") no-repeat center",backgroundSize:"16px 16px",opacity:.6}});b("#yith-wcwl-form").load(yith_wcwl_l10n.ajax_url+" #yith-wcwl-form",d,function(){"undefined"!=typeof b.fn.unblock&&c.stop(!0).css("opacity","1").unblock();l();b("body").trigger("removed_from_wishlist")})}function u(a,c){var d=a.data("product-id"),e=b(document).find(".cart.wishlist_table"),f=e.data("pagination"),n=e.data("per-page"),h=e.data("id"),
9
+ g=e.data("token"),d={action:yith_wcwl_l10n.actions.reload_wishlist_and_adding_elem_action,pagination:f,per_page:n,wishlist_id:h,wishlist_token:g,add_to_wishlist:d,product_type:a.data("product-type")};p()?b.ajax({type:"POST",url:yith_wcwl_l10n.ajax_url,data:d,dataType:"html",beforeSend:function(){"undefined"!=typeof b.fn.block&&e.fadeTo("400","0.6").block({message:null,overlayCSS:{background:"transparent url("+yith_wcwl_l10n.ajax_loader_url+") no-repeat center",backgroundSize:"16px 16px",opacity:.6}})},
10
+ success:function(a){a=b(a).find("#yith-wcwl-form");c.replaceWith(a);l()}}):alert(yith_wcwl_l10n.labels.cookie_disabled)}function v(a){var c=a.parents(".cart.wishlist_table"),d=c.data("token"),e=c.data("id"),f=a.parents("tr").data("row-id");a=a.val();var g=c.data("pagination"),h=c.data("per-page"),k=c.data("page"),d={action:yith_wcwl_l10n.actions.move_to_another_wishlist_action,wishlist_token:d,wishlist_id:e,destination_wishlist_token:a,item_id:f,pagination:g,per_page:h,current_page:k};""!=a&&("undefined"!=
11
+ typeof b.fn.block&&c.fadeTo("400","0.6").block({message:null,overlayCSS:{background:"transparent url("+yith_wcwl_l10n.ajax_loader_url+") no-repeat center",backgroundSize:"16px 16px",opacity:.6}}),b("#yith-wcwl-form").load(yith_wcwl_l10n.ajax_url+" #yith-wcwl-form",d,function(){"undefined"!=typeof b.fn.unblock&&c.stop(!0).css("opacity","1").unblock();l();b("body").trigger("moved_to_another_wishlist")}))}function q(a){var c=b(this);a.preventDefault();c.parents(".wishlist-title").next().show();c.parents(".wishlist-title").hide()}
12
+ function p(){if(navigator.cookieEnabled)return!0;document.cookie="cookietest=1";var a=-1!=document.cookie.indexOf("cookietest=");document.cookie="cookietest=1; expires=Thu, 01-Jan-1970 00:00:01 GMT";return a}function g(){f.on("change",function(){var a="",c=b(this).parents(".cart.wishlist_table"),d=c.data("id"),c=c.data("token"),e=document.URL;f.filter(":checked").each(function(){var c=b(this);a+=0!=a.length?",":"";a+=c.parents("tr").data("row-id")});e=k(e,"wishlist_products_to_add_to_cart",a);e=k(e,
13
+ "wishlist_token",c);e=k(e,"wishlist_id",d);b("#custom_add_to_cart").attr("href",e)})}function k(a,b,d){d=b+"="+d;a=a.replace(new RegExp("(&|\\?)"+b+"=[^&]*"),"$1"+d);-1<a.indexOf(b+"=")||(a=-1<a.indexOf("?")?a+("&"+d):a+("?"+d));return a}var w="undefined"!==typeof wc_add_to_cart_params?wc_add_to_cart_params.cart_redirect_after_add:"",f=b('.wishlist_table tbody input[type="checkbox"]:not(:disabled)');b(document).on("click",".add_to_wishlist",function(a){var c=b(this);a.preventDefault();r(c);return!1});
14
+ b(document).on("click",".remove_from_wishlist",function(a){var c=b(this);a.preventDefault();t(c);return!1});b(document).on("adding_to_cart","body",function(a,b,d){0!=b.closest(".wishlist_table").length&&(d.remove_from_wishlist_after_add_to_cart=b.closest("tr").data("row-id"),d.wishlist_id=b.closest("table").data("id"),wc_add_to_cart_params.cart_redirect_after_add=yith_wcwl_l10n.redirect_to_cart)});b(document).on("added_to_cart","body",function(a){wc_add_to_cart_params.cart_redirect_after_add=w;a=
15
+ b(".wishlist_table");a.find(".added").removeClass("added");a.find(".added_to_cart").remove()});b(document).on("added_to_cart","body",function(){var a=b(".woocommerce-message");0==a.length?b("#yith-wcwl-form").prepend(yith_wcwl_l10n.labels.added_to_cart_message):a.fadeOut(300,function(){b(this).replaceWith(yith_wcwl_l10n.labels.added_to_cart_message).fadeIn()})});b(document).on("cart_page_refreshed","body",l);b(document).on("click",".show-title-form",q);b(document).on("click",".wishlist-title-with-form h2",
16
+ q);b(document).on("click",".hide-title-form",function(a){var c=b(this);a.preventDefault();c.parents(".hidden-title-form").hide();c.parents(".hidden-title-form").prev().show()});b(document).on("change",".change-wishlist",function(a){a=b(this);v(a);return!1});b(document).on("change",".yith-wcwl-popup-content .wishlist-select",function(a){a=b(this);"new"==a.val()?a.parents(".yith-wcwl-first-row").next(".yith-wcwl-second-row").css("display","table-row"):a.parents(".yith-wcwl-first-row").next(".yith-wcwl-second-row").hide()});
17
+ b(document).on("change","#bulk_add_to_cart",function(){b(this).is(":checked")?f.attr("checked","checked").change():f.removeAttr("checked").change()});b(document).on("click","#custom_add_to_cart",function(a){var c=b(this),d=c.parents(".cart.wishlist_table");yith_wcwl_l10n.ajax_add_to_cart_enabled&&(a.preventDefault(),"undefined"!=typeof b.fn.block&&d.fadeTo("400","0.6").block({message:null,overlayCSS:{background:"transparent url("+yith_wcwl_l10n.ajax_loader_url+") no-repeat center",backgroundSize:"16px 16px",
18
+ opacity:.6}}),b("#yith-wcwl-form").load(yith_wcwl_l10n.ajax_url+c.attr("href")+" #yith-wcwl-form",{action:yith_wcwl_l10n.actions.bulk_add_to_cart_action},function(){"undefined"!=typeof b.fn.unblock&&d.stop(!0).css("opacity","1").unblock();"undefined"!=typeof b.prettyPhoto&&b('a[data-rel="prettyPhoto[ask_an_estimate]"]').prettyPhoto({hook:"data-rel",social_tools:!1,theme:"pp_woocommerce",horizontal_padding:20,opacity:.8,deeplinking:!1});f.off("change");f=b('.wishlist_table tbody input[type="checkbox"]');
19
+ "undefined"!=typeof b.fn.selectBox&&b("select.selectBox").selectBox();g()}))});(function(){if(0!=b(".yith-wcwl-add-to-wishlist").length&&0==b("#yith-wcwl-popup-message").length){var a=b("<div>").attr("id","yith-wcwl-message"),a=b("<div>").attr("id","yith-wcwl-popup-message").html(a).hide();b("body").prepend(a)}})();g();"undefined"!=typeof b.fn.selectBox&&b("select.selectBox").selectBox();b(".yith-wfbt-add-wishlist").on("click",function(a){a.preventDefault();a=b(this);var c=b("#yith-wcwl-form");b("html, body").animate({scrollTop:c.offset().top},
20
+ 500);u(a,c)})});
assets/js/unminified/jquery.yith-wcwl.js CHANGED
@@ -91,24 +91,39 @@ jQuery( document ).ready( function( $ ){
91
92
ev.preventDefault();
93
94
- table.fadeTo( '400', '0.6' ).block({ message: null, overlayCSS: { background: 'transparent url(' + yith_wcwl_l10n.ajax_loader_url + ') no-repeat center', backgroundSize: '16px 16px', opacity: 0.6 } } );
95
96
$( '#yith-wcwl-form' ).load( yith_wcwl_l10n.ajax_url + t.attr( 'href' ) + ' #yith-wcwl-form', {action: yith_wcwl_l10n.actions.bulk_add_to_cart_action}, function(){
97
- table.stop( true ).css( 'opacity', '1' ).unblock();
98
99
- $('a[data-rel="prettyPhoto[ask_an_estimate]"]').prettyPhoto({
100
- hook: 'data-rel',
101
- social_tools: false,
102
- theme: 'pp_woocommerce',
103
- horizontal_padding: 20,
104
- opacity: 0.8,
105
- deeplinking: false
106
- });
107
108
checkboxes.off('change');
109
checkboxes = $( '.wishlist_table tbody input[type="checkbox"]');
110
111
- $( 'select.selectBox' ).selectBox();
112
113
handle_wishlist_checkbox();
114
} );
@@ -121,7 +136,9 @@ jQuery( document ).ready( function( $ ){
121
/**
122
* Adds selectbox where needed
123
*/
124
- $( 'select.selectBox' ).selectBox();
125
126
/**
127
* Init js handling on wishlist table items after ajax update
@@ -130,19 +147,23 @@ jQuery( document ).ready( function( $ ){
130
* @since 2.0.7
131
*/
132
function init_handling_after_ajax(){
133
- $('a[data-rel="prettyPhoto[ask_an_estimate]"]').prettyPhoto({
134
- hook: 'data-rel',
135
- social_tools: false,
136
- theme: 'pp_woocommerce',
137
- horizontal_padding: 20,
138
- opacity: 0.8,
139
- deeplinking: false
140
- });
141
142
checkboxes.off('change');
143
checkboxes = $( '.wishlist_table tbody input[type="checkbox"]');
144
145
- $( 'select.selectBox' ).selectBox();
146
147
handle_wishlist_checkbox();
148
}
@@ -213,7 +234,9 @@ jQuery( document ).ready( function( $ ){
213
214
if( yith_wcwl_l10n.multi_wishlist && yith_wcwl_l10n.is_user_logged_in ) {
215
var wishlist_select = $( 'select.wishlist-select' );
216
- $.prettyPhoto.close();
217
218
wishlist_select.each( function( index ){
219
var t = $(this),
@@ -297,10 +320,21 @@ jQuery( document ).ready( function( $ ){
297
298
$( '#yith-wcwl-message' ).html( '&nbsp;' );
299
300
- table.fadeTo( '400', '0.6' ).block({ message: null, overlayCSS: { background: 'transparent url(' + yith_wcwl_l10n.ajax_loader_url + ') no-repeat center', backgroundSize: '16px 16px', opacity: 0.6 } } );
301
302
$( '#yith-wcwl-form' ).load( yith_wcwl_l10n.ajax_url + ' #yith-wcwl-form', data, function(){
303
- table.stop( true ).css( 'opacity', '1' ).unblock();
304
305
init_handling_after_ajax();
306
@@ -344,7 +378,15 @@ jQuery( document ).ready( function( $ ){
344
data: data,
345
dataType : 'html',
346
beforeSend: function(){
347
- table.fadeTo( '400', '0.6' ).block({ message: null, overlayCSS: { background: 'transparent url(' + yith_wcwl_l10n.ajax_loader_url + ') no-repeat center', backgroundSize: '16px 16px', opacity: 0.6 } } );
348
},
349
success: function(res) {
350
var obj = $(res),
@@ -401,10 +443,21 @@ jQuery( document ).ready( function( $ ){
401
return;
402
}
403
404
- table.fadeTo( '400', '0.6' ).block({ message: null, overlayCSS: { background: 'transparent url(' + yith_wcwl_l10n.ajax_loader_url + ') no-repeat center', backgroundSize: '16px 16px', opacity: 0.6 } } );
405
406
$( '#yith-wcwl-form' ).load( yith_wcwl_l10n.ajax_url + ' #yith-wcwl-form', data, function(){
407
- table.stop( true ).css( 'opacity', '1' ).unblock();
408
409
init_handling_after_ajax();
410
91
92
ev.preventDefault();
93
94
+ if( typeof $.fn.block != 'undefined' ) {
95
+ table.fadeTo('400', '0.6').block({message: null,
96
+ overlayCSS : {
97
+ background : 'transparent url(' + yith_wcwl_l10n.ajax_loader_url + ') no-repeat center',
98
+ backgroundSize: '16px 16px',
99
+ opacity : 0.6
100
+ }
101
+ });
102
+ }
103
104
$( '#yith-wcwl-form' ).load( yith_wcwl_l10n.ajax_url + t.attr( 'href' ) + ' #yith-wcwl-form', {action: yith_wcwl_l10n.actions.bulk_add_to_cart_action}, function(){
105
106
+ if( typeof $.fn.unblock != 'undefined' ) {
107
+ table.stop(true).css('opacity', '1').unblock();
108
+ }
109
+
110
+ if( typeof $.prettyPhoto != 'undefined' ) {
111
+ $('a[data-rel="prettyPhoto[ask_an_estimate]"]').prettyPhoto({
112
+ hook : 'data-rel',
113
+ social_tools : false,
114
+ theme : 'pp_woocommerce',
115
+ horizontal_padding: 20,
116
+ opacity : 0.8,
117
+ deeplinking : false
118
+ });
119
+ }
120
121
checkboxes.off('change');
122
checkboxes = $( '.wishlist_table tbody input[type="checkbox"]');
123
124
+ if( typeof $.fn.selectBox != 'undefined' ) {
125
+ $('select.selectBox').selectBox();
126
+ }
127
128
handle_wishlist_checkbox();
129
} );
136
/**
137
* Adds selectbox where needed
138
*/
139
+ if( typeof $.fn.selectBox != 'undefined' ) {
140
+ $('select.selectBox').selectBox();
141
+ }
142
143
/**
144
* Init js handling on wishlist table items after ajax update
147
* @since 2.0.7
148
*/
149
function init_handling_after_ajax(){
150
+ if( typeof $.prettyPhoto != 'undefined' ) {
151
+ $('a[data-rel="prettyPhoto[ask_an_estimate]"]').prettyPhoto({
152
+ hook : 'data-rel',
153
+ social_tools : false,
154
+ theme : 'pp_woocommerce',
155
+ horizontal_padding: 20,
156
+ opacity : 0.8,
157
+ deeplinking : false
158
+ });
159
+ }
160
161
checkboxes.off('change');
162
checkboxes = $( '.wishlist_table tbody input[type="checkbox"]');
163
164
+ if( typeof $.fn.selectBox != 'undefined' ) {
165
+ $('select.selectBox').selectBox();
166
+ }
167
168
handle_wishlist_checkbox();
169
}
234
235
if( yith_wcwl_l10n.multi_wishlist && yith_wcwl_l10n.is_user_logged_in ) {
236
var wishlist_select = $( 'select.wishlist-select' );
237
+ if( typeof $.prettyPhoto != 'undefined' ) {
238
+ $.prettyPhoto.close();
239
+ }
240
241
wishlist_select.each( function( index ){
242
var t = $(this),
320
321
$( '#yith-wcwl-message' ).html( '&nbsp;' );
322
323
+ if( typeof $.fn.block != 'undefined' ) {
324
+ table.fadeTo('400', '0.6').block({message: null,
325
+ overlayCSS : {
326
+ background : 'transparent url(' + yith_wcwl_l10n.ajax_loader_url + ') no-repeat center',
327
+ backgroundSize: '16px 16px',
328
+ opacity : 0.6
329
+ }
330
+ });
331
+ }
332
333
$( '#yith-wcwl-form' ).load( yith_wcwl_l10n.ajax_url + ' #yith-wcwl-form', data, function(){
334
+
335
+ if( typeof $.fn.unblock != 'undefined' ) {
336
+ table.stop(true).css('opacity', '1').unblock();
337
+ }
338
339
init_handling_after_ajax();
340
378
data: data,
379
dataType : 'html',
380
beforeSend: function(){
381
+ if( typeof $.fn.block != 'undefined' ) {
382
+ table.fadeTo('400', '0.6').block({message: null,
383
+ overlayCSS : {
384
+ background : 'transparent url(' + yith_wcwl_l10n.ajax_loader_url + ') no-repeat center',
385
+ backgroundSize: '16px 16px',
386
+ opacity : 0.6
387
+ }
388
+ });
389
+ }
390
},
391
success: function(res) {
392
var obj = $(res),
443
return;
444
}
445
446
+ if( typeof $.fn.block != 'undefined' ) {
447
+ table.fadeTo('400', '0.6').block({message: null,
448
+ overlayCSS : {
449
+ background : 'transparent url(' + yith_wcwl_l10n.ajax_loader_url + ') no-repeat center',
450
+ backgroundSize: '16px 16px',
451
+ opacity : 0.6
452
+ }
453
+ });
454
+ }
455
456
$( '#yith-wcwl-form' ).load( yith_wcwl_l10n.ajax_url + ' #yith-wcwl-form', data, function(){
457
+
458
+ if( typeof $.fn.unblock != 'undefined' ) {
459
+ table.stop(true).css('opacity', '1').unblock();
460
+ }
461
462
init_handling_after_ajax();
463
includes/class.yith-wcwl-admin-init.php CHANGED
@@ -33,7 +33,7 @@ if ( ! class_exists( 'YITH_WCWL_Admin_Init' ) ) {
33
* @var string
34
* @since 1.0.0
35
*/
36
- public $version = '2.0.9';
37
38
/**
39
* Plugin database version
@@ -131,6 +131,7 @@ if ( ! class_exists( 'YITH_WCWL_Admin_Init' ) ) {
131
*/
132
global $woocommerce;
133
$is_woocommerce_2_0 = version_compare( preg_replace( '/-beta-([0-9]+)/', '', $woocommerce->version ), '2.1', '<' );
134
135
$this->options = $this->_plugin_options();
136
@@ -148,7 +149,12 @@ if ( ! class_exists( 'YITH_WCWL_Admin_Init' ) ) {
148
}
149
150
// saves panel options
151
- add_action( 'woocommerce_update_option_yith_wcwl_color_panel', array( $this, 'update_color_options' ) );
152
153
// handles custom wc option type
154
add_action( 'woocommerce_admin_field_yith_wcwl_color_panel', array( $this, 'print_color_panel' ) );
@@ -230,7 +236,7 @@ if ( ! class_exists( 'YITH_WCWL_Admin_Init' ) ) {
230
* @return void
231
* @since 1.0.0
232
*/
233
- public function update_color_options() {
234
global $pagenow;
235
236
$colors_options = array();
@@ -243,6 +249,8 @@ if ( ! class_exists( 'YITH_WCWL_Admin_Init' ) ) {
243
}
244
245
update_option( 'yith_wcwl_frontend_css_colors', maybe_serialize( $colors_options ) );
246
}
247
248
/**
33
* @var string
34
* @since 1.0.0
35
*/
36
+ public $version = '2.0.10';
37
38
/**
39
* Plugin database version
131
*/
132
global $woocommerce;
133
$is_woocommerce_2_0 = version_compare( preg_replace( '/-beta-([0-9]+)/', '', $woocommerce->version ), '2.1', '<' );
134
+ $is_woocommerce_2_4 = version_compare( $woocommerce->version, '2.4.0', '>=' );
135
136
$this->options = $this->_plugin_options();
137
149
}
150
151
// saves panel options
152
+ if( $is_woocommerce_2_4 ){
153
+ add_filter( 'woocommerce_admin_settings_sanitize_option_yith_wcwl_color_panel', array( $this, 'update_color_options' ) );
154
+ }
155
+ else{
156
+ add_action( 'woocommerce_update_option_yith_wcwl_color_panel', array( $this, 'update_color_options' ) );
157
+ }
158
159
// handles custom wc option type
160
add_action( 'woocommerce_admin_field_yith_wcwl_color_panel', array( $this, 'print_color_panel' ) );
236
* @return void
237
* @since 1.0.0
238
*/
239
+ public function update_color_options( $value = false ) {
240
global $pagenow;
241
242
$colors_options = array();
249
}
250
251
update_option( 'yith_wcwl_frontend_css_colors', maybe_serialize( $colors_options ) );
252
+
253
+ return null;
254
}
255
256
/**
includes/functions.yith-wcwl.php CHANGED
@@ -4,7 +4,7 @@
4
*
5
* @author Your Inspiration Themes
6
* @package YITH WooCommerce Wishlist
7
- * @version 2.0.9
8
*/
9
10
if ( !defined( 'YITH_WCWL' ) ) { exit; } // Exit if accessed directly
@@ -123,10 +123,15 @@ if( !function_exists( 'yith_frontend_css_color_picker' ) ) {
123
*/
124
function yith_frontend_css_color_picker( $name, $id, $value, $desc = '' ) {
125
global $woocommerce;
126
-
127
- echo '<div class="color_box"><strong>' . $name . '</strong>
128
- <input name="' . esc_attr( $id ). '" id="' . $id . '" type="text" value="' . esc_attr( $value ) . '" class="colorpick" /> <div id="colorPickerDiv_' . esc_attr( $id ) . '" class="colorpickdiv"></div>
129
- </div>';
130
131
}
132
}
4
*
5
* @author Your Inspiration Themes
6
* @package YITH WooCommerce Wishlist
7
+ * @version 2.0.10
8
*/
9
10
if ( !defined( 'YITH_WCWL' ) ) { exit; } // Exit if accessed directly
123
*/
124
function yith_frontend_css_color_picker( $name, $id, $value, $desc = '' ) {
125
global $woocommerce;
126
+
127
+ $value = ! empty( $value ) ? $value : '#ffffff';
128
+
129
+ echo '<div class="color_box">
130
+ <table><tr><td>
131
+ <strong>' . $name . '</strong>
132
+ <input name="' . esc_attr( $id ). '" id="' . $id . '" type="text" value="' . esc_attr( $value ) . '" class="colorpick colorpickpreview" style="background-color: ' . $value . '" /> <div id="colorPickerDiv_' . esc_attr( $id ) . '" class="colorpickdiv"></div>
133
+ </td></tr></table>
134
+ </div>';
135
136
}
137
}
init.php CHANGED
@@ -3,7 +3,7 @@
3
* Plugin Name: YITH WooCommerce Wishlist
4
* Plugin URI: http://yithemes.com/themes/plugins/yith-woocommerce-wishlist/
5
* Description: YITH WooCommerce Wishlist allows you to add Wishlist functionality to your e-commerce.
6
- * Version: 2.0.9
7
* Author: Yithemes
8
* Author URI: http://yithemes.com/
9
* Text Domain: yit
3
* Plugin Name: YITH WooCommerce Wishlist
4
* Plugin URI: http://yithemes.com/themes/plugins/yith-woocommerce-wishlist/
5
* Description: YITH WooCommerce Wishlist allows you to add Wishlist functionality to your e-commerce.
6
+ * Version: 2.0.10
7
* Author: Yithemes
8
* Author URI: http://yithemes.com/
9
* Text Domain: yit
plugin-fw/assets/css/yit-plugin-panel.css CHANGED
@@ -626,6 +626,11 @@
626
color: #45bbe6;
627
}
628
629
/* === Responsive === */
630
631
@media (max-width: 767px) {}
626
color: #45bbe6;
627
}
628
629
+ /* WooCommerce 2.4 Support */
630
+ .woocommerce table.form-table .colorpick{
631
+ width: 6em;
632
+ }
633
+
634
/* === Responsive === */
635
636
@media (max-width: 767px) {}
plugin-fw/languages/yith-plugin-fw-it_IT.mo CHANGED
Binary file
plugin-fw/languages/yith-plugin-fw-it_IT.po CHANGED
@@ -5,14 +5,14 @@ msgstr ""
5
"Project-Id-Version: YITH Plugin Starter 1.0.0 Plugin FW\n"
6
"Report-Msgid-Bugs-To: Your Inspiration Themes <plugins@yithemes.com>\n"
7
"POT-Creation-Date: 2015-05-11 17:13+0100\n"
8
- "PO-Revision-Date: 2015-05-11 17:15+0100\n"
9
"Last-Translator: \n"
10
"Language-Team: Your Inspiration Themes <info@yithemes.com>\n"
11
"Language: en\n"
12
"MIME-Version: 1.0\n"
13
"Content-Type: text/plain; charset=utf-8\n"
14
"Content-Transfer-Encoding: 8bit\n"
15
- "X-Generator: Poedit 1.7.3\n"
16
"X-Poedit-KeywordsList: __;_e;_x:1,2c;_ex:1,2c;_n:1,2;_nx:1,2,4c;_n_noop:1,2;"
17
"_nx_noop:1,2,3c;esc_attr__;esc_html__;esc_attr_e;esc_html_e;esc_attr_x:1,2c;"
18
"esc_html_x:1,2c\n"
@@ -233,7 +233,7 @@ msgstr "Impostazioni plugin"
233
234
#: lib/yit-plugin-panel.php:95 lib/yit-plugin-subpanel.php:101
235
msgid "YIT Plugins"
236
- msgstr "Plugin YIT"
237
238
#: lib/yit-plugin-panel.php:292 lib/yit-plugin-subpanel.php:142
239
#: templates/panel/woocommerce/woocommerce-form.php:5
5
"Project-Id-Version: YITH Plugin Starter 1.0.0 Plugin FW\n"
6
"Report-Msgid-Bugs-To: Your Inspiration Themes <plugins@yithemes.com>\n"
7
"POT-Creation-Date: 2015-05-11 17:13+0100\n"
8
+ "PO-Revision-Date: 2015-07-24 16:13+0100\n"
9
"Last-Translator: \n"
10
"Language-Team: Your Inspiration Themes <info@yithemes.com>\n"
11
"Language: en\n"
12
"MIME-Version: 1.0\n"
13
"Content-Type: text/plain; charset=utf-8\n"
14
"Content-Transfer-Encoding: 8bit\n"
15
+ "X-Generator: Poedit 1.8\n"
16
"X-Poedit-KeywordsList: __;_e;_x:1,2c;_ex:1,2c;_n:1,2;_nx:1,2,4c;_n_noop:1,2;"
17
"_nx_noop:1,2,3c;esc_attr__;esc_html__;esc_attr_e;esc_html_e;esc_attr_x:1,2c;"
18
"esc_html_x:1,2c\n"
233
234
#: lib/yit-plugin-panel.php:95 lib/yit-plugin-subpanel.php:101
235
msgid "YIT Plugins"
236
+ msgstr "YIT Plugins"
237
238
#: lib/yit-plugin-panel.php:292 lib/yit-plugin-subpanel.php:142
239
#: templates/panel/woocommerce/woocommerce-form.php:5
plugin-fw/lib/yit-plugin-panel-wc.php CHANGED
@@ -37,6 +37,11 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
37
*/
38
public $settings = array();
39
40
/**
41
* @var array
42
*/
@@ -51,6 +56,14 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
51
*/
52
public function __construct( $args = array() ) {
53
54
if ( ! empty( $args ) ) {
55
$this->settings = $args;
56
$this->_tabs_path_files = $this->get_tabs_path_files();
@@ -64,10 +77,14 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
64
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
65
add_action( 'admin_init', array( $this, 'woocommerce_update_options' ) );
66
add_filter( 'woocommerce_screen_ids', array( $this, 'add_allowed_screen_id' ) );
67
68
/* Add VideoBox and InfoBox */
69
add_action( 'woocommerce_admin_field_boxinfo', array( $this, 'add_infobox' ), 10, 1 );
70
add_action( 'woocommerce_admin_field_videobox', array( $this, 'add_videobox' ), 10, 1 );
71
}
72
}
73
@@ -251,6 +268,16 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
251
$yit_options = $this->get_main_array_options();
252
$current_tab = $this->get_current_tab();
253
254
woocommerce_update_options( $yit_options[ $current_tab ] );
255
256
do_action( 'yit_panel_wc_after_update' );
@@ -320,7 +347,6 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
320
} else {
321
add_option($value['id'], $default_value);
322
}
323
-
324
}
325
326
}
@@ -328,6 +354,51 @@ if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
328
329
}
330
331
332
}
333
}
37
*/
38
public $settings = array();
39
40
+ /**
41
+ * @var array a setting list of parameters
42
+ */
43
+ public $wc_type = array();
44
+
45
/**
46
* @var array
47
*/
56
*/
57
public function __construct( $args = array() ) {
58
59
+ $this->wc_type = array(
60
+ 'checkbox',
61
+ 'textarea',
62
+ 'multiselect',
63
+ 'multi_select_countries',
64
+ 'image_width'
65
+ );
66
+
67
if ( ! empty( $args ) ) {
68
$this->settings = $args;
69
$this->_tabs_path_files = $this->get_tabs_path_files();
77
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
78
add_action( 'admin_init', array( $this, 'woocommerce_update_options' ) );
79
add_filter( 'woocommerce_screen_ids', array( $this, 'add_allowed_screen_id' ) );
80
+ add_filter( 'woocommerce_admin_settings_sanitize_option', array( $this, 'maybe_unserialize_panel_data' ), 10, 3 );
81
82
/* Add VideoBox and InfoBox */
83
add_action( 'woocommerce_admin_field_boxinfo', array( $this, 'add_infobox' ), 10, 1 );
84
add_action( 'woocommerce_admin_field_videobox', array( $this, 'add_videobox' ), 10, 1 );
85
+
86
+ /* WooCommerce 2.4 Support */
87
+ add_filter( 'admin_body_class', array( $this, 'admin_body_class' ) );
88
}
89
}
90
268
$yit_options = $this->get_main_array_options();
269
$current_tab = $this->get_current_tab();
270
271
+ if( version_compare( WC()->version, '2.4.0', '>=' ) ) {
272
+ if ( ! empty( $yit_options[ $current_tab ] ) ) {
273
+ foreach ( $yit_options[ $current_tab ] as $option ) {
274
+ if ( isset( $option['id'] ) && isset( $_POST[ $option['id'] ] ) && isset( $option['type' ] ) && ! in_array( $option['type'], $this->wc_type ) ) {
275
+ $_POST[ $option['id'] ] = maybe_serialize( $_POST[ $option['id'] ] );
276
+ }
277
+ }
278
+ }
279
+ }
280
+
281
woocommerce_update_options( $yit_options[ $current_tab ] );
282
283
do_action( 'yit_panel_wc_after_update' );
347
} else {
348
add_option($value['id'], $default_value);
349
}
350
}
351
352
}
354
355
}
356
357
+ /**
358
+ * Add the woocommerce body class in plugin panel page
359
+ *
360
+ * @author Andrea Grillo <andrea.grillo@yithemes.com>
361
+ * @since 2.0
362
+ * @param $classes The body classes
363
+ *
364
+ * @return array Filtered body classes
365
+ */
366
+ public function admin_body_class( $admin_body_classes ){
367
+ $admin_body_classes .= ' woocommerce ';
368
+ return $admin_body_classes;
369
+ }
370
+
371
+ /**
372
+ * Maybe unserialize panel data
373
+ *
374
+ * @param $value mixed Option value
375
+ * @param $option mixed Option settings array
376
+ * @param $raw_value string Raw option value
377
+ *
378
+ * @return mixed Filtered return value
379
+ * @author Antonio La Rocca <antonio.larocca@yithemes.com>
380
+ * @since 2.0
381
+ */
382
+ public function maybe_unserialize_panel_data( $value, $option, $raw_value ) {
383
+
384
+
385
+ if( ! version_compare( WC()->version, '2.4.0', '>=' ) || ! isset( $option['type' ] ) || in_array( $option['type'], $this->wc_type ) ) {
386
+ return $value;
387
+ }
388
+
389
+ $yit_options = $this->get_main_array_options();
390
+ $current_tab = $this->get_current_tab();
391
+
392
+ if( ! empty( $yit_options[ $current_tab ] ) ){
393
+ foreach( $yit_options[ $current_tab ] as $option_array ){
394
+ if( isset( $option_array['id'] ) && isset( $option['id'] ) && $option_array['id'] == $option['id'] ){
395
+ return maybe_unserialize( $value );
396
+ }
397
+ }
398
+ }
399
+
400
+ return $value;
401
+ }
402
403
}
404
}
plugin-fw/yit-functions.php CHANGED
@@ -818,4 +818,66 @@ if ( ! function_exists( 'yit_load_js_file' ) ) {
818
819
return $filename;
820
}
821
}
818
819
return $filename;
820
}
821
+ }
822
+
823
+ if ( ! function_exists( 'yit_wpml_register_string' ) ) {
824
+ /**
825
+ * Register a string in wpml trnslation
826
+ *
827
+ * @param $contenxt context name
828
+ * @param $name string name
829
+ * @param $value value to translate
830
+ *
831
+ * @since 2.0.0
832
+ * @author Andrea Frascaspata <andrea.frascaspata@yithemes.com>
833
+ */
834
+ function yit_wpml_register_string( $contenxt , $name , $value ) {
835
+ // wpml string translation
836
+ do_action( 'wpml_register_single_string', $contenxt, $name, $value );
837
+ }
838
+ }
839
+
840
+ if ( ! function_exists( 'yit_wpml_string_translate' ) ) {
841
+ /**
842
+ * Get a string translation
843
+ *
844
+ * @param $contenxt context name
845
+ * @param $name string name
846
+ * @param $default_value value to translate
847
+ *
848
+ * @return string the string translated
849
+ * @since 2.0.0
850
+ * @author Andrea Frascaspata <andrea.frascaspata@yithemes.com>
851
+ */
852
+ function yit_wpml_string_translate( $contenxt, $name, $default_value ) {
853
+ return apply_filters( 'wpml_translate_single_string', $default_value, $contenxt, $name );
854
+ }
855
+
856
+ }
857
+
858
+ if ( ! function_exists( 'yit_wpml_object_id' ) ) {
859
+ /**
860
+ * Get id of post translation in current language
861
+ *
862
+ * @param int $element_id
863
+ * @param string $element_type
864
+ * @param bool $return_original_if_missing
865
+ * @param null|string $ulanguage_code
866
+ *
867
+ * @return int the translation id
868
+ * @since 2.0.0
869
+ * @author Antonio La Rocca <antonio.larocca@yithemes.com>
870
+ */
871
+ function yit_wpml_object_id( $element_id, $element_type = 'post', $return_original_if_missing = false, $ulanguage_code = null ) {
872
+ if( function_exists( 'wpml_object_id' ) ){
873
+ return wpml_object_id( $element_id, $element_type, $return_original_if_missing, $ulanguage_code );
874
+ }
875
+ elseif( function_exists( 'icl_object_id' ) ){
876
+ return icl_object_id( $element_id, $element_type, $return_original_if_missing, $ulanguage_code );
877
+ }
878
+ else{
879
+ return $element_id;
880
+ }
881
+ }
882
+
883
}
templates/wishlist-view.php CHANGED
@@ -12,6 +12,8 @@
12
13
<form id="yith-wcwl-form" action="<?php echo esc_url( YITH_WCWL()->get_wishlist_url( 'view' . ( $wishlist_meta['is_default'] != 1 ? '/' . $wishlist_meta['wishlist_token'] : '' ) ) ) ?>" method="post" class="woocommerce">
14
15
<!-- TITLE -->
16
<?php
17
do_action( 'yith_wcwl_before_wishlist_title' );
@@ -272,7 +274,7 @@
272
<td colspan="<?php echo esc_attr( $column_count ) ?>">
273
<?php if( $show_cb ) : ?>
274
<div class="custom-add-to-cart-button-cotaniner">
275
- <a href="<?php echo esc_url( add_query_arg( array( 'wishlist_products_to_add_to_cart' => '', 'wishlist_token' => $wishlist_meta['wishlist_token'] ) ) ) ?>" class="button alt" id="custom_add_to_cart"><?php _e( 'Add the selected products to the cart', 'yit' ) ?></a>
276
</div>
277
<?php endif; ?>
278
@@ -280,7 +282,7 @@
280
<div class="ask-an-estimate-button-container">
281
<a href="<?php echo ( $additional_info ) ? '#ask_an_estimate_popup' : $ask_estimate_url ?>" class="btn button ask-an-estimate-button" <?php echo ( $additional_info ) ? 'data-rel="prettyPhoto[ask_an_estimate]"' : '' ?> >
282
<?php echo apply_filters( 'yith_wcwl_ask_an_estimate_icon', '<i class="fa fa-shopping-cart"></i>' )?>
283
- <?php _e( 'Ask for an estimate', 'yit' ) ?>
284
</a>
285
</div>
286
<?php endif; ?>
12
13
<form id="yith-wcwl-form" action="<?php echo esc_url( YITH_WCWL()->get_wishlist_url( 'view' . ( $wishlist_meta['is_default'] != 1 ? '/' . $wishlist_meta['wishlist_token'] : '' ) ) ) ?>" method="post" class="woocommerce">
14
15
+ <?php wp_nonce_field( 'yith-wcwl-form', 'yith_wcwl_form_nonce' ) ?>
16
+
17
<!-- TITLE -->
18
<?php
19
do_action( 'yith_wcwl_before_wishlist_title' );
274
<td colspan="<?php echo esc_attr( $column_count ) ?>">
275
<?php if( $show_cb ) : ?>
276
<div class="custom-add-to-cart-button-cotaniner">
277
+ <a href="<?php echo esc_url( add_query_arg( array( 'wishlist_products_to_add_to_cart' => '', 'wishlist_token' => $wishlist_meta['wishlist_token'] ) ) ) ?>" class="button alt" id="custom_add_to_cart"><?php echo apply_filters( 'yith_wcwl_custom_add_to_cart_text', __( 'Add the selected products to the cart', 'yit' ) ) ?></a>
278
</div>
279
<?php endif; ?>
280
282
<div class="ask-an-estimate-button-container">
283
<a href="<?php echo ( $additional_info ) ? '#ask_an_estimate_popup' : $ask_estimate_url ?>" class="btn button ask-an-estimate-button" <?php echo ( $additional_info ) ? 'data-rel="prettyPhoto[ask_an_estimate]"' : '' ?> >
284
<?php echo apply_filters( 'yith_wcwl_ask_an_estimate_icon', '<i class="fa fa-shopping-cart"></i>' )?>
285
+ <?php echo apply_filters( 'yith_wcwl_ask_an_estimate_text', __( 'Ask for an estimate', 'yit' ) ) ?>
286
</a>
287
</div>
288
<?php endif; ?>