Version Description
Release Date - 30 July 2020
- Wishlist user-side data completely refactored
- Great performance improvements
- Fixed integration with WooCommerce Bookings plugin
Download this release
Release Info
Developer | templateinvaders |
Plugin | WooCommerce Wishlist Plugin |
Version | 1.21.0 |
Comparing to | |
See all releases |
Code changes from version 1.20.5 to 1.21.0
- assets/css/admin-form-rtl.min.css +1 -1
- assets/css/admin-form.min.css +1 -1
- assets/css/admin-rtl.min.css +1 -1
- assets/css/admin-setup-rtl.min.css +1 -1
- assets/css/admin-setup.min.css +1 -1
- assets/css/admin.min.css +1 -1
- assets/css/public-rtl.css +0 -4
- assets/css/public-rtl.css.map +1 -1
- assets/css/public-rtl.min.css +1 -2
- assets/css/public.css +0 -4
- assets/css/public.css.map +1 -1
- assets/css/public.min.css +1 -2
- assets/css/theme-rtl.min.css +1 -1
- assets/css/theme.min.css +1 -1
- assets/js/admin.min.js +1 -1
- assets/js/public.js +91 -30
- assets/js/public.min.js +2 -2
- includes/api/ajax.php +195 -0
- includes/api/frontend.class.php +6 -6
- includes/product.helper.php +3 -0
- includes/wishlist.class.php +1 -0
- integrations/woocommerce-bookings.php +6 -0
- languages/ti-woocommerce-wishlist.pot +8 -8
- public/addtowishlist.class.php +146 -6
- public/tinvwl.class.php +24 -1
- readme.txt +8 -1
- ti-woocommerce-wishlist.php +3 -3
- tinv-wishlists-function.php +12 -0
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 1.
|
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 1.21.0
|
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 1.
|
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 1.21.0
|
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 1.
|
4 |
* @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
5 |
*/
|
6 |
@font-face{font-family:'tinvwl-webfont';src:url("../fonts/tinvwl-webfont.eot?xu2uyi");src:url("../fonts/tinvwl-webfont.eot?xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.ttf?xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.woff?xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.svg?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 1.21.0
|
4 |
* @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
5 |
*/
|
6 |
@font-face{font-family:'tinvwl-webfont';src:url("../fonts/tinvwl-webfont.eot?xu2uyi");src:url("../fonts/tinvwl-webfont.eot?xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.ttf?xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.woff?xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
|
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 1.
|
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 1.21.0
|
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 1.
|
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 1.21.0
|
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 1.
|
4 |
* @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
5 |
*/
|
6 |
@font-face{font-family:'tinvwl-webfont';src:url("../fonts/tinvwl-webfont.eot?xu2uyi");src:url("../fonts/tinvwl-webfont.eot?xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.ttf?xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.woff?xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.svg?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 1.21.0
|
4 |
* @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
5 |
*/
|
6 |
@font-face{font-family:'tinvwl-webfont';src:url("../fonts/tinvwl-webfont.eot?xu2uyi");src:url("../fonts/tinvwl-webfont.eot?xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.ttf?xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.woff?xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
|
assets/css/public-rtl.css
CHANGED
@@ -305,10 +305,6 @@ ul.products li.product .tinvwl_add_to_wishlist_button {
|
|
305 |
transition: opacity 1s;
|
306 |
opacity: 1;
|
307 |
visibility: visible; }
|
308 |
-
.tinvwl_add_to_wishlist_button.tinvwl-add-hide {
|
309 |
-
visibility: hidden;
|
310 |
-
opacity: 0.5;
|
311 |
-
pointer-events: none; }
|
312 |
|
313 |
.tinv-wishlist.woocommerce .stock.in-stock:before {
|
314 |
content: none; }
|
305 |
transition: opacity 1s;
|
306 |
opacity: 1;
|
307 |
visibility: visible; }
|
|
|
|
|
|
|
|
|
308 |
|
309 |
.tinv-wishlist.woocommerce .stock.in-stock:before {
|
310 |
content: none; }
|
assets/css/public-rtl.css.map
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"version":3,"names":[],"mappings":"","sources":["public-rtl.css"],"file":"public-rtl.css","sourcesContent":["/*------------------------------------*\n\t$WEBFONT\n*------------------------------------*/\n/*------------------------------------------------------------------\nWooCommerce Wishlist Plugin custom webfont\n-------------------------------------------------------------------*/\n@font-face {\n font-family: 'tinvwl-webfont';\n src: url(\"../fonts/tinvwl-webfont.eot?xu2uyi\");\n src: url(\"../fonts/tinvwl-webfont.eot?xu2uyi#iefix\") format(\"embedded-opentype\"), url(\"../fonts/tinvwl-webfont.ttf?xu2uyi\") format(\"truetype\"), url(\"../fonts/tinvwl-webfont.woff?xu2uyi\") format(\"woff\"), url(\"../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont\") format(\"svg\");\n font-weight: normal;\n font-style: normal; }\n\n.ftinvwl {\n /* use !important to prevent issues with browser extensions that change fonts */\n font-family: 'tinvwl-webfont' !important;\n speak: none;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n /* Better Font Rendering =========== */\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale; }\n\n.ftinvwl-twitter:before {\n content: \"\\f099\"; }\n\n.ftinvwl-facebook:before {\n content: \"\\f09a\"; }\n\n.ftinvwl-facebook-f:before {\n content: \"\\f09a\"; }\n\n.ftinvwl-google:before {\n content: \"\\f0d5\"; }\n\n.ftinvwl-email:before {\n content: \"\\f0e0\"; }\n\n.ftinvwl-pinterest:before {\n content: \"\\f231\"; }\n\n.ftinvwl-whatsapp:before {\n content: \"\\f232\"; }\n\n.ftinvwl-clipboard:before {\n content: \"\\e911\"; }\n\n.ftinvwl-star:before {\n content: \"\\e912\"; }\n\n.ftinvwl-shopping-cart:before {\n content: \"\\e913\"; }\n\n.ftinvwl-magic:before {\n content: \"\\e914\"; }\n\n.ftinvwl-info:before {\n content: \"\\e915\"; }\n\n.ftinvwl-graduation-cap:before {\n content: \"\\e918\"; }\n\n.ftinvwl-floppy-o:before {\n content: \"\\e919\"; }\n\n.ftinvwl-eyedropper:before {\n content: \"\\e91a\"; }\n\n.ftinvwl-exclamation-triangle:before {\n content: \"\\e91b\"; }\n\n.ftinvwl-check:before {\n content: \"\\e91e\"; }\n\n.ftinvwl-arrow-left:before {\n content: \"\\e91f\"; }\n\n.ftinvwl-wrench:before {\n content: \"\\e920\"; }\n\n.ftinvwl-chevron-down:before {\n content: \"\\e900\"; }\n\n.ftinvwl-chevron-right:before {\n content: \"\\e901\"; }\n\n.ftinvwl-chevron-left:before {\n content: \"\\e902\"; }\n\n.ftinvwl-chevron-up:before {\n content: \"\\e903\"; }\n\n.ftinvwl-cancel:before {\n content: \"\\e904\"; }\n\n.ftinvwl-times:before {\n content: \"\\e905\"; }\n\n.ftinvwl-heart-plus:before {\n content: \"\\e906\"; }\n\n.ftinvwl-heart-mark-right:before {\n content: \"\\e907\"; }\n\n.ftinvwl-heart2:before {\n content: \"\\e908\"; }\n\n.ftinvwl-heart-o:before {\n content: \"\\e909\"; }\n\n.ftinvwl-heart-mark-left:before {\n content: \"\\e90a\"; }\n\n.ftinvwl-heart-mail:before {\n content: \"\\e90b\"; }\n\n.ftinvwl-heart-tinv:before {\n content: \"\\e90c\"; }\n\n.ftinvwl-key:before {\n content: \"\\e90d\"; }\n\n.ftinvwl-lock:before {\n content: \"\\e90e\"; }\n\n.ftinvwl-hearts:before {\n content: \"\\e90f\"; }\n\n.ftinvwl-user:before {\n content: \"\\e910\"; }\n\n/* PULSE */\n@-webkit-keyframes ftinvwl-pulse {\n 0% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); }\n 50% {\n -webkit-transform: scale(0.8);\n transform: scale(0.8); }\n 100% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); } }\n\n@keyframes ftinvwl-pulse {\n 0% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); }\n 50% {\n -webkit-transform: scale(0.8);\n transform: scale(0.8); }\n 100% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); } }\n\n.ftinvwl-pulse.ftinvwl-animated::before {\n -webkit-animation: ftinvwl-pulse 2s linear infinite;\n animation: ftinvwl-pulse 2s linear infinite; }\n\n.tinv-wishlist form, .tinv-wishlist p:last-child, .tinv-wishlist table {\n margin-bottom: 0; }\n\n.tinv-wishlist * {\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n\n.tinvwl-wishlist :after, .tinvwl-wishlist :before {\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n\n.tinv-wishlist select {\n width: 140px; }\n\n.tinv-wishlist ul {\n list-style: none;\n margin: 0;\n padding: 0; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {\n margin-top: -10px;\n margin-right: -10px; }\n\n.woocommerce.tinv-wishlist #respond input#submit.alt, .woocommerce.tinv-wishlist a.button.alt, .woocommerce.tinv-wishlist button.button.alt, .woocommerce.tinv-wishlist input.button.alt {\n text-align: center; }\n\n.tinv-wishlist .button i, .tinv-wishlist .navigation-button a i {\n margin-left: 6px; }\n\n.tinv-wishlist input[type=\"button\"] i, .tinv-wishlist input[type=\"reset\"] i, .tinv-wishlist input[type=\"submit\"] i {\n margin-left: 6px; }\n\n.tinv-wishlist a.tinv-close-modal i {\n margin-left: 0; }\n\na.wishlist_products_counter {\n text-decoration: none; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button:before, a.wishlist_products_counter.top_wishlist-heart:before, span.wishlist_products_counter.top_wishlist-heart:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart:before {\n content: '\\e909';\n display: inline-block;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 20px;\n vertical-align: sub;\n margin-left: 5px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, a.wishlist_products_counter.top_wishlist-heart-plus:before, span.wishlist_products_counter.top_wishlist-heart-plus:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart-plus:before {\n content: '\\e906';\n display: inline-block;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 20px;\n vertical-align: sub;\n margin-left: 5px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {\n position: relative;\n width: 36px;\n height: 36px;\n vertical-align: sub; }\n\na.wishlist_products_counter.top_wishlist-heart-plus.no-txt, span.wishlist_products_counter.top_wishlist-heart-plus.no-txt {\n position: relative;\n width: 36px;\n height: 36px;\n vertical-align: sub; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {\n position: absolute;\n top: 50%;\n right: 50%;\n margin-left: 0; }\n\n.tinv-wishlist .tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt, .tinv-wishlist .tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {\n padding-right: 1em;\n vertical-align: bottom; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before {\n content: '\\e908'; }\n\n.woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button.tinvwl-product-in-list:before, a.wishlist_products_counter.top_wishlist-heart.wishlist-counter-with-products:before, span.wishlist_products_counter.top_wishlist-heart.wishlist-counter-with-products:before {\n content: '\\e908'; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.tinvwl-product-in-list:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.tinvwl-product-in-list:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart-plus.tinvwl_add_to_wishlist_button.tinvwl-product-in-list:before, a.wishlist_products_counter.top_wishlist-heart-plus.wishlist-counter-with-products:before, span.wishlist_products_counter.top_wishlist-heart-plus.wishlist-counter-with-products:before {\n content: '\\e907'; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.icon-white:before, a.wishlist_products_counter.top_wishlist-white:before, span.wishlist_products_counter.top_wishlist-white:before {\n color: #FFF; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.icon-black:before, a.wishlist_products_counter.top_wishlist-black:before, span.wishlist_products_counter.top_wishlist-black:before {\n color: #000; }\n\n.tinv-wishlist.tinvwl-before-add-to-cart .tinvwl_add_to_wishlist_button {\n margin-bottom: 15px; }\n\n.tinv-wishlist.tinvwl-after-add-to-cart .tinvwl_add_to_wishlist_button {\n margin-top: 15px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt {\n padding: 10px 11px;\n line-height: 1; }\n\na.wishlist_products_counter.top_wishlist-custom.no-txt, span.wishlist_products_counter.top_wishlist-custom.no-txt {\n padding: 10px 11px;\n line-height: 1; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom img, a.wishlist_products_counter.top_wishlist-custom img, span.wishlist_products_counter.top_wishlist-custom img {\n display: inline-block !important;\n vertical-align: baseline;\n width: auto !important;\n max-width: 16px;\n max-height: 16px;\n margin-bottom: 0;\n margin: 0 0 0 6px !important; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt img, a.wishlist_products_counter.top_wishlist-custom.no-txt img, span.wishlist_products_counter.top_wishlist-custom.no-txt img {\n margin-left: 0 !important; }\n\n.single-product div.product form.cart .tinvwl-button.tinvwl_add_to_wishlist_button, div.product form.cart .tinvwl_add_to_wishlist_button {\n float: none; }\n\nul.products li.product .tinvwl_add_to_wishlist_button {\n margin-top: 1em; }\n\n.tinvwl_add_to_wishlist_button {\n display: inline-block;\n cursor: pointer;\n -webkit-transition: opacity 1s;\n transition: opacity 1s;\n opacity: 1;\n visibility: visible; }\n .tinvwl_add_to_wishlist_button.tinvwl-add-hide {\n visibility: hidden;\n opacity: 0.5;\n pointer-events: none; }\n\n.tinv-wishlist.woocommerce .stock.in-stock:before {\n content: none; }\n\n.tinv-wraper.tinv-wishlist {\n font-size: 100%; }\n\n.tinv-create-list li input[type=radio] {\n margin-left: 10px; }\n\n.tinv-create-list li + li {\n margin-top: 15px; }\n\n.tinv-create-list .tinvwl-input-group + ul {\n margin-top: 25px; }\n\n.tinv-search-list {\n margin-bottom: 36px; }\n\n.tinv-wishlist .tinv-header {\n margin-bottom: 30px; }\n\n.tinv-wishlist table {\n position: relative;\n table-layout: auto;\n margin-bottom: 30px;\n z-index: 2; }\n\n.tinv-overlay {\n top: 0;\n right: 0;\n position: fixed;\n -webkit-transition: opacity .3s ease, visibility .3s ease;\n transition: opacity .3s ease, visibility .3s ease; }\n\n.tinv-wishlist .tinv-modal {\n top: 0;\n right: 0;\n position: fixed;\n -webkit-transition: opacity .3s ease, visibility .3s ease;\n transition: opacity .3s ease, visibility .3s ease; }\n\n.tinv-wishlist table.tinvwl-table-manage-list {\n margin-bottom: 27px;\n width: 100%; }\n\n.tinv-wishlist table input[type=checkbox] {\n margin-left: 0; }\n\n.tinv-wishlist table td, .tinv-wishlist table th {\n padding: 1em;\n vertical-align: middle; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-cb {\n width: 35px;\n text-align: center; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-remove {\n width: 35px;\n text-align: center;\n padding: 1em .5em; }\n\n.tinv-wishlist .product-remove button {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -ms-flex-line-pack: center;\n align-content: center;\n margin: 0 auto;\n width: 27px;\n height: 27px;\n border-radius: 50%;\n padding: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n border: none;\n background-color: #f7f7f7;\n color: #000000;\n font-size: 20px;\n padding-right: 1px;\n padding-top: 3px; }\n\n.tinv-wishlist .product-thumbnail {\n min-width: 100px;\n width: 100px; }\n .tinv-wishlist .product-thumbnail .wp-post-image {\n margin-bottom: 0; }\n\n.tinv-wishlist td.product-name a + .variation {\n margin-top: 2px; }\n\n.tinv-wishlist .product-stock i {\n margin-left: 15px; }\n\n.tinv-wishlist .product-stock p {\n display: table; }\n\n.tinv-wishlist .product-stock span {\n display: table-cell;\n vertical-align: middle; }\n\n.tinv-wishlist .product-action > .button > i, .tinv-wishlist .tinvwl-table-manage-list .product-action button[name=tinvwl-remove], .tinv-wishlist table thead th .tinvwl-mobile {\n display: none; }\n\n.tinv-wishlist.woocommerce .product-quantity {\n width: 80px;\n text-align: center; }\n\n.tinv-wishlist.woocommerce table .quantity .qty {\n max-width: 100%;\n width: 62px;\n text-align: right; }\n\n.tinv-wishlist .product-action {\n width: 135px;\n text-align: center; }\n .tinv-wishlist .product-action .button {\n width: 100%; }\n .tinv-wishlist .product-action .tinvwl_move_product_button {\n margin-top: 5px; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-action > button[name=tinvwl-remove] > i {\n margin-left: 0; }\n\n.tinv-wishlist .wishlist-cb {\n width: 33px;\n text-align: center; }\n\n.tinv-wishlist .wishlist-name .tinvwl-rename-input input {\n width: 100%; }\n\n.tinv-wishlist .wishlist-name .tinvwl-rename-button {\n float: left; }\n .tinv-wishlist .wishlist-name .tinvwl-rename-button > i {\n margin-left: 10px; }\n\n.tinv-wishlist .wishlist-privacy, .tinv-wishlist table:not(.tinvwl-public) .wishlist-date {\n width: 18%; }\n\n.tinv-wishlist .wishlist-privacy select {\n width: 100%; }\n\n.tinv-wishlist .wishlist-name {\n width: 45%; }\n\n.tinv-wishlist .wishlist-action {\n width: 120px;\n text-align: center; }\n .tinv-wishlist .wishlist-action button[value=manage_remove] > i {\n display: none;\n margin-left: 0; }\n\n.tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list {\n display: inline-block;\n vertical-align: middle; }\n .tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list > a.button {\n margin-left: 0; }\n\n.tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: -10px; }\n\n.tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n float: right;\n width: 35%;\n margin-left: 2%; }\n\n.tinv-wishlist tfoot .tinvwl-to-right {\n float: right;\n width: 63%;\n text-align: left; }\n .tinv-wishlist tfoot .tinvwl-to-right > * {\n margin: 10px 0 0;\n vertical-align: middle; }\n .tinv-wishlist tfoot .tinvwl-to-right > * + * {\n margin-right: 10px; }\n\n.tinv-wishlist tfoot .tinvwl-to-left:empty + .tinvwl-to-right {\n width: 100%; }\n\n.tinv-wishlist .social-buttons + .tinv-wishlist-clear + .navigation-button {\n margin-top: 16px; }\n\n.tinv-wishlist .navigation-button {\n margin-top: -10px; }\n .tinv-wishlist .navigation-button > li {\n float: right; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a, .tinv-wishlist .navigation-button > li > a {\n margin-left: 30px;\n margin-top: 10px;\n display: inline-block; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a.button, .tinv-wishlist .navigation-button > li > a.button {\n margin-left: 10px; }\n .tinv-wishlist .navigation-button > li:last-child > .tinv-create-list > a, .tinv-wishlist .navigation-button > li:last-child > a {\n margin-left: 0; }\n\n.tinv-wishlist .social-buttons {\n text-align: left; }\n .tinv-wishlist .social-buttons > span, .tinv-wishlist .social-buttons > ul {\n display: inline-block;\n vertical-align: middle; }\n .tinv-wishlist .social-buttons > span {\n margin-left: 27px; }\n .tinv-wishlist .social-buttons li {\n float: right;\n margin-left: 5px;\n list-style: none; }\n .tinv-wishlist .social-buttons li:last-child {\n margin-left: 0; }\n .tinv-wishlist .social-buttons li a.social {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-line-pack: center;\n align-content: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n border-radius: 50%;\n text-align: center;\n -webkit-box-shadow: none;\n box-shadow: none;\n border: 0;\n font-size: 20px;\n text-decoration: none;\n text-transform: none !important; }\n .tinv-wishlist .social-buttons li a.social.white {\n color: #ffffff; }\n .tinv-wishlist .social-buttons li a.social.dark {\n color: #000000; }\n .tinv-wishlist .social-buttons li a.social i {\n line-height: 2em; }\n\n.tinv-wishlist .navigation-button .tinv-create-list > a.tinvwl-no-icon > i, .tinv-wishlist .navigation-button li > a.tinvwl-no-icon > i {\n display: none; }\n\n.tinv-wishlist .tinv-lists-nav {\n margin-top: 35px;\n margin-bottom: 35px;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n width: 100%; }\n .tinv-wishlist .tinv-lists-nav > * {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n text-align: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center; }\n .tinv-wishlist .tinv-lists-nav > span {\n font-weight: 700; }\n\n.tinv-wishlist .tinv-next {\n display: inline-block;\n float: right; }\n\n.tinv-wishlist .tinv-prev {\n display: inline-block;\n float: right;\n margin-left: 35px !important; }\n\n.tinv-wishlist .tinv-prev i {\n margin-right: 0;\n margin-left: 18px; }\n\n.tinv-wishlist .tinv-next i {\n margin-right: 18px;\n margin-left: 0; }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-lists:not(.tinvwl-public) {\n margin-top: 0; }\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n display: none; }\n .tinv-wishlist .tinvwl-table-manage-list .product-action button[name=tinvwl-remove] {\n display: inline-block;\n margin-top: 5px; }\n .tinv-wishlist .product-action {\n width: 60px; } }\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock p {\n display: block;\n text-align: center; }\n .tinv-wishlist .product-stock span {\n display: block; }\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock i {\n margin-left: 0; }\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock .tinvwl-txt {\n display: none; }\n .tinv-wishlist .product-thumbnail {\n max-width: 76px;\n width: 76px; }\n .tinv-wishlist .product-action .button > i {\n display: inline-block;\n margin-left: 0; }\n .tinv-wishlist .product-action .button .tinvwl-txt {\n display: none; } }\n\n@media only screen and (max-width: 1023px) {\n .tinv-wishlist .tinv-lists-nav a.tinv-prev > i, .tinv-wishlist .tinv-lists-nav a.tinv-next > i {\n margin: 0; }\n .tinv-wishlist .tinv-lists-nav a.tinv-prev > span, .tinv-wishlist .tinv-lists-nav a.tinv-next > span {\n display: none; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove, .tinv-wishlist table.tinvwl-table-manage-list thead th:not(.product-name) {\n display: none; }\n .tinv-wishlist table.tinvwl-table-manage-lists thead th:not(.wishlist-name) {\n display: none; }\n .tinv-wishlist thead th .tinvwl-full {\n display: none; }\n .tinv-wishlist table.tinvwl-table-manage-list thead th.product-name, .tinv-wishlist table.tinvwl-table-manage-lists thead th.wishlist-name {\n display: block;\n width: 100%;\n text-align: center; }\n .tinv-wishlist table thead th .tinvwl-mobile {\n display: block; }\n .tinv-wishlist table.tinvwl-table-manage-list tbody td {\n display: block;\n width: 100% !important;\n text-align: center; }\n .tinv-wishlist table.tinvwl-table-manage-lists tbody td, .tinv-wishlist table.tinvwl-table-manage-lists.tinvwl-public tbody td {\n display: block;\n width: 100% !important;\n text-align: center; }\n .tinv-wishlist table.tinvwl-table-manage-list tbody td:not(:last-child) {\n border-bottom: 0; }\n .tinv-wishlist table.tinvwl-table-manage-lists tbody td:not(:last-child), .tinv-wishlist table.tinvwl-table-manage-lists.tinvwl-public tbody td:not(:last-child) {\n border-bottom: 0; }\n .tinv-wishlist .product-stock p {\n margin: 0 auto; }\n .tinv-wishlist .product-thumbnail img {\n margin: 0 auto;\n max-width: 80px; }\n .tinv-wishlist.woocommerce table .quantity .qty {\n text-align: center;\n width: 100%; }\n .tinv-wishlist .product-action .tinvwl_move_product_button {\n margin-top: 10px; }\n .tinv-wishlist table.tinvwl-table-manage-list tfoot td {\n display: block;\n width: 100%; }\n .tinv-wishlist table.tinvwl-table-manage-lists .wishlist-action button[value=manage_remove] {\n width: 100%; }\n .tinv-wishlist table.tinvwl-table-manage-lists .wishlist-name .tinvwl-rename-button {\n float: none; } }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .wishlist-name .tinvwl-rename-button > i, .tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n margin-left: 0; }\n .tinv-wishlist .wishlist-name .tinvwl-rename-button span {\n display: none; }\n .tinv-wishlist .wishlist-action {\n width: 60px; }\n .tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n float: none;\n width: auto; }\n .tinv-wishlist tfoot .tinvwl-to-right {\n float: none;\n width: auto;\n text-align: right; } }\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist .wishlist-action button[value=\"manage_remove\"] span {\n display: none; }\n .tinv-wishlist .wishlist-action button[value=\"manage_remove\"] > i {\n display: inline-block; }\n .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: 0; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist button[value=\"manage_apply\"] .tinvwl-mobile, .tinv-wishlist button[value=\"product_apply\"] .tinvwl-mobile {\n display: none; }\n .tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list {\n display: block; }\n .tinv-wishlist .tinvwl-table-manage-list tfoot .tinvwl-to-right .button, .tinv-wishlist .tinvwl-table-manage-list tfoot .tinvwl-to-right button {\n width: 100%;\n margin: 10px 0 0; }\n .tinv-wishlist .tinvwl-table-manage-lists tfoot .tinvwl-to-right .button, .tinv-wishlist .tinvwl-table-manage-lists tfoot .tinvwl-to-right button {\n width: 100%;\n margin: 10px 0 0; }\n .tinv-wishlist tfoot .tinvwl-to-right > * {\n margin: 10px 0 0; }\n .tinv-wishlist tfoot .tinvwl-to-right .button:first-child, .tinv-wishlist tfoot .tinvwl-to-right button:first-child {\n margin-top: 0 !important; }\n .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: 20px; } }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .social-buttons {\n float: none;\n width: auto;\n text-align: right;\n margin-top: 20px; }\n .tinv-wishlist .social-buttons + .tinv-wishlist-clear + .navigation-button {\n margin-top: 30px; }\n .tinv-wishlist .tinv-login form input[name=login] {\n min-width: auto; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist .social-buttons {\n text-align: center; }\n .tinv-wishlist .navigation-button > li {\n width: 20%;\n text-align: center; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-1 > li {\n width: 100%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-2 > li {\n width: 50%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-3 > li {\n width: 33%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-4 > li {\n width: 25%; }\n .tinv-wishlist .navigation-button > li + li {\n width: 20%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-1 > li + li {\n width: 100%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-2 > li + li {\n width: 50%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-3 > li + li {\n width: 33%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-4 > li + li {\n width: 25%; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a, .tinv-wishlist .navigation-button > li > a {\n width: calc(100% - 10px);\n margin-left: 0; }\n .tinv-wishlist .navigation-button .tinv-create-list > a .tinvwl-txt, .tinv-wishlist .navigation-button li > a .tinvwl-txt {\n display: none; }\n .tinv-wishlist .navigation-button .tinv-create-list > a > i, .tinv-wishlist .navigation-button li > a > i {\n display: inline-block !important;\n margin-left: 0; }\n .tinv-wishlist .social-buttons > span {\n display: block;\n margin-top: 0;\n margin-left: 0;\n margin-bottom: 5px; } }\n\n@media only screen and (max-width: 667px) {\n .tinv-wishlist.woocommerce .tinv-login form .form-row-first, .tinv-wishlist.woocommerce .tinv-login form .form-row-last {\n float: none;\n width: 100%; }\n .tinv-wishlist.woocommerce .tinv-login form .form-row-first {\n padding: 0; }\n .tinv-wishlist.woocommerce .tinv-login form .form-row-last {\n padding: 0;\n margin-top: 10px; }\n .tinv-wishlist.woocommerce .tinv-login form .tinvwl-input-group-btn {\n display: block;\n padding: 0;\n width: auto;\n margin-top: 10px; } }\n\n.tinv-overlay {\n width: 100%;\n height: 100%;\n visibility: hidden;\n opacity: 0;\n background: #191919; }\n\n.tinv-modal.tinv-modal-open .tinv-overlay {\n visibility: visible;\n opacity: .5; }\n\n.admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 32px !important; }\n\n.tinv-wishlist .tinv-modal {\n overflow-y: auto;\n overflow-x: hidden;\n width: 0;\n height: 0;\n z-index: 9999;\n outline: 0 !important;\n -webkit-backface-visibility: hidden;\n visibility: hidden;\n opacity: 0;\n text-align: right; }\n .tinv-wishlist .tinv-modal .tinv-modal-inner {\n position: relative;\n margin: 0 auto;\n background-color: #fff;\n max-width: 360px;\n padding: 40px; }\n .tinv-wishlist .tinv-modal.tinv-modal-open {\n visibility: visible;\n opacity: 1;\n width: 100%;\n height: 100%; }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n display: inline-block;\n position: absolute;\n top: 17px;\n left: 14px;\n width: 26px;\n height: 26px;\n line-height: 26px;\n font-size: 12px;\n text-align: center;\n border-radius: 50%;\n border-bottom: 0;\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n background-color: #ebe9eb; }\n .tinv-wishlist .tinv-modal .icon_big_heart_check, .tinv-wishlist .tinv-modal .icon_big_times, .tinv-wishlist .tinv-modal img {\n display: block;\n margin: 0 auto;\n margin-bottom: 25px;\n opacity: 1 !important; }\n .tinv-wishlist .tinv-modal ul {\n overflow: visible;\n list-style: disc;\n margin: 10px 20px 0 0; }\n .tinv-wishlist .tinv-modal li {\n list-style: disc !important; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal ul, .tinv-wishlist.tinv-create-list form ul {\n list-style: none !important;\n margin: 25px 0 0; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal li, .tinv-wishlist.tinv-create-list form li {\n list-style: none !important; }\n\n.tinv-wishlist .tinv-modal .already-in {\n margin-bottom: 35px; }\n\n.tinv-wishlist .tinv-modal .delete-notification {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinv-modal .already-in ul {\n overflow: visible;\n margin: 12px 17px 27px 0; }\n\n.tinv-wishlist .tinv-modal select {\n width: 100%; }\n\n.tinv-wishlist .tinv-modal button + .button, .tinv-wishlist .tinv-modal button + button {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal input + button {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal label + button, .tinv-wishlist .tinv-modal label + input {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal select + button, .tinv-wishlist .tinv-modal select + input {\n margin-top: 12px;\n width: 100%; }\n\n@media screen and (max-width: 782px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 46px !important; } }\n\n@media screen and (max-width: 600px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 0 !important; }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n position: static;\n display: block;\n margin: 0 auto 20px; } }\n\n.tinv-wishlist .tinv-modal .already-in + label {\n display: block;\n margin-top: 6px; }\n\n.tinv-wishlist .tinv-modal label select {\n margin-top: 8px; }\n\n.tinv-wishlist .tinv-modal .delete-notification + button {\n width: 100%; }\n\n.tinv-wishlist .tinvwl_added_to_wishlist, .tinv-wishlist .tinvwl_created_wishlist {\n text-align: center; }\n\n.tinv-wishlist .tinvwl_added_to_wishlist .tinv-txt {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinvwl_created_wishlist .tinv-txt {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinvwl_created_wishlist button {\n margin-top: 0;\n margin-bottom: 10px; }\n\n.woocommerce .tinv-wishlist .tinvwl_added_to_wishlist.tinv-modal button.button {\n margin-top: 0;\n margin-bottom: 10px; }\n\n.tinv-wishlist .tinv-modal .tinvwl-buttons-group {\n margin-top: 20px; }\n\n.tinv-wishlist .tinvwl-buttons-group button {\n width: 100%; }\n .tinv-wishlist .tinvwl-buttons-group button + button {\n margin-top: 7px; }\n .tinv-wishlist .tinvwl-buttons-group button i {\n position: relative; }\n .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-heart-o, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-key, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-times {\n font-size: 20px; }\n .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-heart-o::before, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-key::before, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-times::before {\n position: relative;\n top: 3px; }\n\n.tinv-wishlist .tinvwl-buttons-group + button {\n width: 100%;\n margin-top: 7px; }\n\n.tinv-wishlist .tinv-modal h2 {\n text-align: center;\n margin: 0 0 35px; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal-inner {\n max-width: 778px;\n padding: 30px; }\n\n.tinv-wishlist .tinvwl-has-error:not(.tinvwl-input-group), .tinv-wishlist .tinvwl-input-group.tinvwl-has-error .form-control {\n border: 2px solid #FF0000; }\n\n.tinv-wishlist .tinvwl-has-error:not(.tinvwl-input-group) {\n border: 2px solid #FF0000; }\n\n.tinv-wishlist .tinvwl-has-error + .tinvwl-error {\n padding: 5px 5px 0 0;\n color: #FF0000; }\n\n@media only screen and (max-width: 640px) {\n .navigation-button, .social-buttons, .tinv-lists-nav {\n margin-right: 12px;\n margin-left: 12px; } }\n\n.tinvwl-tooltip {\n display: none; }\n\n.tinvwl-input-group {\n position: relative;\n display: table;\n border-collapse: separate; }\n .tinvwl-input-group .form-control {\n position: relative;\n z-index: 1;\n float: right;\n height: 38px;\n width: 100%;\n margin-bottom: 0; }\n .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-right: 15px; }\n\n.tinv-wishlist .tinvwl-to-left .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-right: 10px; }\n\n.tinv-wishlist .tinv-search-form .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-right: 9px; }\n\n.tinvwl-input-group .form-control, .tinvwl-input-group-addon, .tinvwl-input-group-btn {\n display: table-cell; }\n\n.tinvwl-input-group-addon, .tinvwl-input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: top; }\n\n@media only screen and (max-width: 640px) {\n .tinvwl-input-group {\n width: 100%; } }\n\n@media only screen and (max-width: 667px) {\n .tinvwl-input-group:not(.tinvwl-no-full) {\n display: block; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn {\n display: block; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control {\n float: none; }\n .tinv-wishlist .tinv-search-form .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n padding-top: 10px;\n padding-right: 0; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n padding-top: 10px;\n padding-right: 0; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon > button, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon > input {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn > button, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn > input {\n width: 100%; } }\n\n.tinv-table {\n display: table;\n width: 100%;\n height: 100%; }\n\n.tinv-cell {\n display: table-cell;\n vertical-align: middle; }\n\n.tinv-wishlist .tinv-wishlist-clear {\n visibility: visible;\n width: auto;\n height: auto; }\n\n.tinv-wishlist-clear:before {\n content: \"\";\n display: table; }\n\n.tinv-wishlist-clear:after {\n content: \"\";\n display: table;\n clear: both; }\n\n.icon_big_heart_check {\n display: inline-block;\n width: 46px;\n height: 46px;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 60px; }\n\n.icon_big_times {\n display: inline-block;\n width: 46px;\n height: 46px;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 60px; }\n .icon_big_times::before {\n content: \"\\e904\";\n top: -7px;\n right: -7px;\n position: relative; }\n\n.icon_big_heart_check::before {\n content: \"\\e90a\";\n top: -7px;\n right: -7px;\n position: relative; }\n\n.tinvwl_add_to_wishlist_button.tinvwl-button.disabled-add-wishlist, .tinvwl_add_to_wishlist_button.disabled-add-wishlist {\n opacity: 0.5 !important;\n cursor: not-allowed; }\n\n.empty-name-wishlist {\n border-color: #FF0000 !important; }\n\n.tinvwl_remove_from_wishlist-text, .tinvwl_already_on_wishlist-text {\n display: none !important; }\n\n.tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_remove_from_wishlist-text, .tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_already_on_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_remove_from_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_already_on_wishlist-text {\n display: inline !important; }\n\n.tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_add_to_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_add_to_wishlist-text {\n display: none !important; }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n display: table-cell; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove {\n display: block; } }\n\n.tooltipped {\n position: relative; }\n\n.tooltipped::after {\n position: absolute;\n z-index: 1000000;\n display: none;\n padding: 0.5em 0.75em;\n font: normal normal 11px/1.5 -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n -webkit-font-smoothing: subpixel-antialiased;\n color: #fff;\n text-align: center;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-wrap: break-word;\n white-space: pre;\n pointer-events: none;\n content: attr(aria-label);\n background: #1b1f23;\n border-radius: 3px;\n opacity: 0; }\n\n.tooltipped::before {\n position: absolute;\n z-index: 1000001;\n display: none;\n width: 0;\n height: 0;\n color: #1b1f23;\n pointer-events: none;\n content: \"\";\n border: 6px solid transparent;\n opacity: 0; }\n\n@-webkit-keyframes tooltip-appear {\n from {\n opacity: 0; }\n to {\n opacity: 1; } }\n\n@keyframes tooltip-appear {\n from {\n opacity: 0; }\n to {\n opacity: 1; } }\n\n.tooltipped:hover::before, .tooltipped:hover::after,\n.tooltipped:active::before,\n.tooltipped:active::after,\n.tooltipped:focus::before,\n.tooltipped:focus::after {\n display: inline-block;\n text-decoration: none;\n -webkit-animation-name: tooltip-appear;\n animation-name: tooltip-appear;\n -webkit-animation-duration: 0.1s;\n animation-duration: 0.1s;\n -webkit-animation-fill-mode: forwards;\n animation-fill-mode: forwards;\n -webkit-animation-timing-function: ease-in;\n animation-timing-function: ease-in;\n -webkit-animation-delay: 0.4s;\n animation-delay: 0.4s; }\n\n.tooltipped-no-delay:hover::before, .tooltipped-no-delay:hover::after,\n.tooltipped-no-delay:active::before,\n.tooltipped-no-delay:active::after,\n.tooltipped-no-delay:focus::before,\n.tooltipped-no-delay:focus::after {\n -webkit-animation-delay: 0s;\n animation-delay: 0s; }\n\n.tooltipped-multiline:hover::after,\n.tooltipped-multiline:active::after,\n.tooltipped-multiline:focus::after {\n display: table-cell; }\n\n.tooltipped-s::after,\n.tooltipped-se::after,\n.tooltipped-sw::after {\n top: 100%;\n left: 50%;\n margin-top: 6px; }\n\n.tooltipped-s::before,\n.tooltipped-se::before,\n.tooltipped-sw::before {\n top: auto;\n left: 50%;\n bottom: -7px;\n margin-left: -6px;\n border-bottom-color: #1b1f23; }\n\n.tooltipped-se::after {\n left: auto;\n right: 50%;\n margin-right: -16px; }\n\n.tooltipped-sw::after {\n margin-left: -16px; }\n\n.tooltipped-n::after,\n.tooltipped-ne::after,\n.tooltipped-nw::after {\n left: 50%;\n bottom: 100%;\n margin-bottom: 6px; }\n\n.tooltipped-n::before,\n.tooltipped-ne::before,\n.tooltipped-nw::before {\n top: -7px;\n left: 50%;\n bottom: auto;\n margin-left: -6px;\n border-top-color: #1b1f23; }\n\n.tooltipped-ne::after {\n left: auto;\n right: 50%;\n margin-right: -16px; }\n\n.tooltipped-nw::after {\n margin-left: -16px; }\n\n.tooltipped-s::after,\n.tooltipped-n::after {\n -webkit-transform: translateX(-50%);\n transform: translateX(-50%); }\n\n.tooltipped-w::after {\n left: 100%;\n bottom: 50%;\n margin-left: 6px;\n -webkit-transform: translateY(50%);\n transform: translateY(50%); }\n\n.tooltipped-w::before {\n top: 50%;\n bottom: 50%;\n right: -7px;\n margin-top: -6px;\n border-right-color: #1b1f23; }\n\n.tooltipped-e::after {\n bottom: 50%;\n right: 100%;\n margin-right: 6px;\n -webkit-transform: translateY(50%);\n transform: translateY(50%); }\n\n.tooltipped-e::before {\n top: 50%;\n left: -7px;\n bottom: 50%;\n margin-top: -6px;\n border-left-color: #1b1f23; }\n\n.tooltipped-align-right-1::after,\n.tooltipped-align-right-2::after {\n left: 0;\n margin-left: 0; }\n\n.tooltipped-align-right-1::before {\n left: 10px; }\n\n.tooltipped-align-right-2::before {\n left: 15px; }\n\n.tooltipped-align-left-1::after,\n.tooltipped-align-left-2::after {\n right: 0;\n margin-right: 0; }\n\n.tooltipped-align-left-1::before {\n right: 5px; }\n\n.tooltipped-align-left-2::before {\n right: 10px; }\n\n.tooltipped-multiline::after {\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 250px;\n word-wrap: break-word;\n white-space: pre-line;\n border-collapse: separate; }\n\n.tooltipped-multiline.tooltipped-s::after, .tooltipped-multiline.tooltipped-n::after {\n left: auto;\n right: 50%;\n -webkit-transform: translateX(50%);\n transform: translateX(50%); }\n\n.tooltipped-multiline.tooltipped-w::after, .tooltipped-multiline.tooltipped-e::after {\n left: 100%; }\n\n@media screen and (min-width: 0 \\0 ) {\n .tooltipped-multiline::after {\n width: 250px; } }\n\n.tooltipped-sticky::before, .tooltipped-sticky::after {\n display: inline-block; }\n\n.tooltipped-sticky.tooltipped-multiline::after {\n display: table-cell; }\n\n.tinvwl-table-manage-list .component_table_item_price:before {\n font-family: 'FontAwesomeCP';\n font-size: 1rem;\n display: inline-block;\n -ms-filter: \"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)\";\n -webkit-transform: rotate(-90deg);\n transform: rotate(-90deg);\n content: \"\\e811\";\n margin: 0 3px 0 12px;\n opacity: .25; }\n"]}
|
1 |
+
{"version":3,"names":[],"mappings":"","sources":["public-rtl.css"],"file":"public-rtl.css","sourcesContent":["/*------------------------------------*\n\t$WEBFONT\n*------------------------------------*/\n/*------------------------------------------------------------------\nWooCommerce Wishlist Plugin custom webfont\n-------------------------------------------------------------------*/\n@font-face {\n font-family: 'tinvwl-webfont';\n src: url(\"../fonts/tinvwl-webfont.eot?xu2uyi\");\n src: url(\"../fonts/tinvwl-webfont.eot?xu2uyi#iefix\") format(\"embedded-opentype\"), url(\"../fonts/tinvwl-webfont.ttf?xu2uyi\") format(\"truetype\"), url(\"../fonts/tinvwl-webfont.woff?xu2uyi\") format(\"woff\"), url(\"../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont\") format(\"svg\");\n font-weight: normal;\n font-style: normal; }\n\n.ftinvwl {\n /* use !important to prevent issues with browser extensions that change fonts */\n font-family: 'tinvwl-webfont' !important;\n speak: none;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n /* Better Font Rendering =========== */\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale; }\n\n.ftinvwl-twitter:before {\n content: \"\\f099\"; }\n\n.ftinvwl-facebook:before {\n content: \"\\f09a\"; }\n\n.ftinvwl-facebook-f:before {\n content: \"\\f09a\"; }\n\n.ftinvwl-google:before {\n content: \"\\f0d5\"; }\n\n.ftinvwl-email:before {\n content: \"\\f0e0\"; }\n\n.ftinvwl-pinterest:before {\n content: \"\\f231\"; }\n\n.ftinvwl-whatsapp:before {\n content: \"\\f232\"; }\n\n.ftinvwl-clipboard:before {\n content: \"\\e911\"; }\n\n.ftinvwl-star:before {\n content: \"\\e912\"; }\n\n.ftinvwl-shopping-cart:before {\n content: \"\\e913\"; }\n\n.ftinvwl-magic:before {\n content: \"\\e914\"; }\n\n.ftinvwl-info:before {\n content: \"\\e915\"; }\n\n.ftinvwl-graduation-cap:before {\n content: \"\\e918\"; }\n\n.ftinvwl-floppy-o:before {\n content: \"\\e919\"; }\n\n.ftinvwl-eyedropper:before {\n content: \"\\e91a\"; }\n\n.ftinvwl-exclamation-triangle:before {\n content: \"\\e91b\"; }\n\n.ftinvwl-check:before {\n content: \"\\e91e\"; }\n\n.ftinvwl-arrow-left:before {\n content: \"\\e91f\"; }\n\n.ftinvwl-wrench:before {\n content: \"\\e920\"; }\n\n.ftinvwl-chevron-down:before {\n content: \"\\e900\"; }\n\n.ftinvwl-chevron-right:before {\n content: \"\\e901\"; }\n\n.ftinvwl-chevron-left:before {\n content: \"\\e902\"; }\n\n.ftinvwl-chevron-up:before {\n content: \"\\e903\"; }\n\n.ftinvwl-cancel:before {\n content: \"\\e904\"; }\n\n.ftinvwl-times:before {\n content: \"\\e905\"; }\n\n.ftinvwl-heart-plus:before {\n content: \"\\e906\"; }\n\n.ftinvwl-heart-mark-right:before {\n content: \"\\e907\"; }\n\n.ftinvwl-heart2:before {\n content: \"\\e908\"; }\n\n.ftinvwl-heart-o:before {\n content: \"\\e909\"; }\n\n.ftinvwl-heart-mark-left:before {\n content: \"\\e90a\"; }\n\n.ftinvwl-heart-mail:before {\n content: \"\\e90b\"; }\n\n.ftinvwl-heart-tinv:before {\n content: \"\\e90c\"; }\n\n.ftinvwl-key:before {\n content: \"\\e90d\"; }\n\n.ftinvwl-lock:before {\n content: \"\\e90e\"; }\n\n.ftinvwl-hearts:before {\n content: \"\\e90f\"; }\n\n.ftinvwl-user:before {\n content: \"\\e910\"; }\n\n/* PULSE */\n@-webkit-keyframes ftinvwl-pulse {\n 0% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); }\n 50% {\n -webkit-transform: scale(0.8);\n transform: scale(0.8); }\n 100% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); } }\n\n@keyframes ftinvwl-pulse {\n 0% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); }\n 50% {\n -webkit-transform: scale(0.8);\n transform: scale(0.8); }\n 100% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); } }\n\n.ftinvwl-pulse.ftinvwl-animated::before {\n -webkit-animation: ftinvwl-pulse 2s linear infinite;\n animation: ftinvwl-pulse 2s linear infinite; }\n\n.tinv-wishlist form, .tinv-wishlist p:last-child, .tinv-wishlist table {\n margin-bottom: 0; }\n\n.tinv-wishlist * {\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n\n.tinvwl-wishlist :after, .tinvwl-wishlist :before {\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n\n.tinv-wishlist select {\n width: 140px; }\n\n.tinv-wishlist ul {\n list-style: none;\n margin: 0;\n padding: 0; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {\n margin-top: -10px;\n margin-right: -10px; }\n\n.woocommerce.tinv-wishlist #respond input#submit.alt, .woocommerce.tinv-wishlist a.button.alt, .woocommerce.tinv-wishlist button.button.alt, .woocommerce.tinv-wishlist input.button.alt {\n text-align: center; }\n\n.tinv-wishlist .button i, .tinv-wishlist .navigation-button a i {\n margin-left: 6px; }\n\n.tinv-wishlist input[type=\"button\"] i, .tinv-wishlist input[type=\"reset\"] i, .tinv-wishlist input[type=\"submit\"] i {\n margin-left: 6px; }\n\n.tinv-wishlist a.tinv-close-modal i {\n margin-left: 0; }\n\na.wishlist_products_counter {\n text-decoration: none; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button:before, a.wishlist_products_counter.top_wishlist-heart:before, span.wishlist_products_counter.top_wishlist-heart:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart:before {\n content: '\\e909';\n display: inline-block;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 20px;\n vertical-align: sub;\n margin-left: 5px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, a.wishlist_products_counter.top_wishlist-heart-plus:before, span.wishlist_products_counter.top_wishlist-heart-plus:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart-plus:before {\n content: '\\e906';\n display: inline-block;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 20px;\n vertical-align: sub;\n margin-left: 5px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {\n position: relative;\n width: 36px;\n height: 36px;\n vertical-align: sub; }\n\na.wishlist_products_counter.top_wishlist-heart-plus.no-txt, span.wishlist_products_counter.top_wishlist-heart-plus.no-txt {\n position: relative;\n width: 36px;\n height: 36px;\n vertical-align: sub; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {\n position: absolute;\n top: 50%;\n right: 50%;\n margin-left: 0; }\n\n.tinv-wishlist .tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt, .tinv-wishlist .tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {\n padding-right: 1em;\n vertical-align: bottom; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before {\n content: '\\e908'; }\n\n.woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button.tinvwl-product-in-list:before, a.wishlist_products_counter.top_wishlist-heart.wishlist-counter-with-products:before, span.wishlist_products_counter.top_wishlist-heart.wishlist-counter-with-products:before {\n content: '\\e908'; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.tinvwl-product-in-list:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.tinvwl-product-in-list:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart-plus.tinvwl_add_to_wishlist_button.tinvwl-product-in-list:before, a.wishlist_products_counter.top_wishlist-heart-plus.wishlist-counter-with-products:before, span.wishlist_products_counter.top_wishlist-heart-plus.wishlist-counter-with-products:before {\n content: '\\e907'; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.icon-white:before, a.wishlist_products_counter.top_wishlist-white:before, span.wishlist_products_counter.top_wishlist-white:before {\n color: #FFF; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.icon-black:before, a.wishlist_products_counter.top_wishlist-black:before, span.wishlist_products_counter.top_wishlist-black:before {\n color: #000; }\n\n.tinv-wishlist.tinvwl-before-add-to-cart .tinvwl_add_to_wishlist_button {\n margin-bottom: 15px; }\n\n.tinv-wishlist.tinvwl-after-add-to-cart .tinvwl_add_to_wishlist_button {\n margin-top: 15px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt {\n padding: 10px 11px;\n line-height: 1; }\n\na.wishlist_products_counter.top_wishlist-custom.no-txt, span.wishlist_products_counter.top_wishlist-custom.no-txt {\n padding: 10px 11px;\n line-height: 1; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom img, a.wishlist_products_counter.top_wishlist-custom img, span.wishlist_products_counter.top_wishlist-custom img {\n display: inline-block !important;\n vertical-align: baseline;\n width: auto !important;\n max-width: 16px;\n max-height: 16px;\n margin-bottom: 0;\n margin: 0 0 0 6px !important; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt img, a.wishlist_products_counter.top_wishlist-custom.no-txt img, span.wishlist_products_counter.top_wishlist-custom.no-txt img {\n margin-left: 0 !important; }\n\n.single-product div.product form.cart .tinvwl-button.tinvwl_add_to_wishlist_button, div.product form.cart .tinvwl_add_to_wishlist_button {\n float: none; }\n\nul.products li.product .tinvwl_add_to_wishlist_button {\n margin-top: 1em; }\n\n.tinvwl_add_to_wishlist_button {\n display: inline-block;\n cursor: pointer;\n -webkit-transition: opacity 1s;\n transition: opacity 1s;\n opacity: 1;\n visibility: visible; }\n\n.tinv-wishlist.woocommerce .stock.in-stock:before {\n content: none; }\n\n.tinv-wraper.tinv-wishlist {\n font-size: 100%; }\n\n.tinv-create-list li input[type=radio] {\n margin-left: 10px; }\n\n.tinv-create-list li + li {\n margin-top: 15px; }\n\n.tinv-create-list .tinvwl-input-group + ul {\n margin-top: 25px; }\n\n.tinv-search-list {\n margin-bottom: 36px; }\n\n.tinv-wishlist .tinv-header {\n margin-bottom: 30px; }\n\n.tinv-wishlist table {\n position: relative;\n table-layout: auto;\n margin-bottom: 30px;\n z-index: 2; }\n\n.tinv-overlay {\n top: 0;\n right: 0;\n position: fixed;\n -webkit-transition: opacity .3s ease, visibility .3s ease;\n transition: opacity .3s ease, visibility .3s ease; }\n\n.tinv-wishlist .tinv-modal {\n top: 0;\n right: 0;\n position: fixed;\n -webkit-transition: opacity .3s ease, visibility .3s ease;\n transition: opacity .3s ease, visibility .3s ease; }\n\n.tinv-wishlist table.tinvwl-table-manage-list {\n margin-bottom: 27px;\n width: 100%; }\n\n.tinv-wishlist table input[type=checkbox] {\n margin-left: 0; }\n\n.tinv-wishlist table td, .tinv-wishlist table th {\n padding: 1em;\n vertical-align: middle; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-cb {\n width: 35px;\n text-align: center; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-remove {\n width: 35px;\n text-align: center;\n padding: 1em .5em; }\n\n.tinv-wishlist .product-remove button {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -ms-flex-line-pack: center;\n align-content: center;\n margin: 0 auto;\n width: 27px;\n height: 27px;\n border-radius: 50%;\n padding: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n border: none;\n background-color: #f7f7f7;\n color: #000000;\n font-size: 20px;\n padding-right: 1px;\n padding-top: 3px; }\n\n.tinv-wishlist .product-thumbnail {\n min-width: 100px;\n width: 100px; }\n .tinv-wishlist .product-thumbnail .wp-post-image {\n margin-bottom: 0; }\n\n.tinv-wishlist td.product-name a + .variation {\n margin-top: 2px; }\n\n.tinv-wishlist .product-stock i {\n margin-left: 15px; }\n\n.tinv-wishlist .product-stock p {\n display: table; }\n\n.tinv-wishlist .product-stock span {\n display: table-cell;\n vertical-align: middle; }\n\n.tinv-wishlist .product-action > .button > i, .tinv-wishlist .tinvwl-table-manage-list .product-action button[name=tinvwl-remove], .tinv-wishlist table thead th .tinvwl-mobile {\n display: none; }\n\n.tinv-wishlist.woocommerce .product-quantity {\n width: 80px;\n text-align: center; }\n\n.tinv-wishlist.woocommerce table .quantity .qty {\n max-width: 100%;\n width: 62px;\n text-align: right; }\n\n.tinv-wishlist .product-action {\n width: 135px;\n text-align: center; }\n .tinv-wishlist .product-action .button {\n width: 100%; }\n .tinv-wishlist .product-action .tinvwl_move_product_button {\n margin-top: 5px; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-action > button[name=tinvwl-remove] > i {\n margin-left: 0; }\n\n.tinv-wishlist .wishlist-cb {\n width: 33px;\n text-align: center; }\n\n.tinv-wishlist .wishlist-name .tinvwl-rename-input input {\n width: 100%; }\n\n.tinv-wishlist .wishlist-name .tinvwl-rename-button {\n float: left; }\n .tinv-wishlist .wishlist-name .tinvwl-rename-button > i {\n margin-left: 10px; }\n\n.tinv-wishlist .wishlist-privacy, .tinv-wishlist table:not(.tinvwl-public) .wishlist-date {\n width: 18%; }\n\n.tinv-wishlist .wishlist-privacy select {\n width: 100%; }\n\n.tinv-wishlist .wishlist-name {\n width: 45%; }\n\n.tinv-wishlist .wishlist-action {\n width: 120px;\n text-align: center; }\n .tinv-wishlist .wishlist-action button[value=manage_remove] > i {\n display: none;\n margin-left: 0; }\n\n.tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list {\n display: inline-block;\n vertical-align: middle; }\n .tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list > a.button {\n margin-left: 0; }\n\n.tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: -10px; }\n\n.tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n float: right;\n width: 35%;\n margin-left: 2%; }\n\n.tinv-wishlist tfoot .tinvwl-to-right {\n float: right;\n width: 63%;\n text-align: left; }\n .tinv-wishlist tfoot .tinvwl-to-right > * {\n margin: 10px 0 0;\n vertical-align: middle; }\n .tinv-wishlist tfoot .tinvwl-to-right > * + * {\n margin-right: 10px; }\n\n.tinv-wishlist tfoot .tinvwl-to-left:empty + .tinvwl-to-right {\n width: 100%; }\n\n.tinv-wishlist .social-buttons + .tinv-wishlist-clear + .navigation-button {\n margin-top: 16px; }\n\n.tinv-wishlist .navigation-button {\n margin-top: -10px; }\n .tinv-wishlist .navigation-button > li {\n float: right; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a, .tinv-wishlist .navigation-button > li > a {\n margin-left: 30px;\n margin-top: 10px;\n display: inline-block; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a.button, .tinv-wishlist .navigation-button > li > a.button {\n margin-left: 10px; }\n .tinv-wishlist .navigation-button > li:last-child > .tinv-create-list > a, .tinv-wishlist .navigation-button > li:last-child > a {\n margin-left: 0; }\n\n.tinv-wishlist .social-buttons {\n text-align: left; }\n .tinv-wishlist .social-buttons > span, .tinv-wishlist .social-buttons > ul {\n display: inline-block;\n vertical-align: middle; }\n .tinv-wishlist .social-buttons > span {\n margin-left: 27px; }\n .tinv-wishlist .social-buttons li {\n float: right;\n margin-left: 5px;\n list-style: none; }\n .tinv-wishlist .social-buttons li:last-child {\n margin-left: 0; }\n .tinv-wishlist .social-buttons li a.social {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-line-pack: center;\n align-content: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n border-radius: 50%;\n text-align: center;\n -webkit-box-shadow: none;\n box-shadow: none;\n border: 0;\n font-size: 20px;\n text-decoration: none;\n text-transform: none !important; }\n .tinv-wishlist .social-buttons li a.social.white {\n color: #ffffff; }\n .tinv-wishlist .social-buttons li a.social.dark {\n color: #000000; }\n .tinv-wishlist .social-buttons li a.social i {\n line-height: 2em; }\n\n.tinv-wishlist .navigation-button .tinv-create-list > a.tinvwl-no-icon > i, .tinv-wishlist .navigation-button li > a.tinvwl-no-icon > i {\n display: none; }\n\n.tinv-wishlist .tinv-lists-nav {\n margin-top: 35px;\n margin-bottom: 35px;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n width: 100%; }\n .tinv-wishlist .tinv-lists-nav > * {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n text-align: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center; }\n .tinv-wishlist .tinv-lists-nav > span {\n font-weight: 700; }\n\n.tinv-wishlist .tinv-next {\n display: inline-block;\n float: right; }\n\n.tinv-wishlist .tinv-prev {\n display: inline-block;\n float: right;\n margin-left: 35px !important; }\n\n.tinv-wishlist .tinv-prev i {\n margin-right: 0;\n margin-left: 18px; }\n\n.tinv-wishlist .tinv-next i {\n margin-right: 18px;\n margin-left: 0; }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-lists:not(.tinvwl-public) {\n margin-top: 0; }\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n display: none; }\n .tinv-wishlist .tinvwl-table-manage-list .product-action button[name=tinvwl-remove] {\n display: inline-block;\n margin-top: 5px; }\n .tinv-wishlist .product-action {\n width: 60px; } }\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock p {\n display: block;\n text-align: center; }\n .tinv-wishlist .product-stock span {\n display: block; }\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock i {\n margin-left: 0; }\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock .tinvwl-txt {\n display: none; }\n .tinv-wishlist .product-thumbnail {\n max-width: 76px;\n width: 76px; }\n .tinv-wishlist .product-action .button > i {\n display: inline-block;\n margin-left: 0; }\n .tinv-wishlist .product-action .button .tinvwl-txt {\n display: none; } }\n\n@media only screen and (max-width: 1023px) {\n .tinv-wishlist .tinv-lists-nav a.tinv-prev > i, .tinv-wishlist .tinv-lists-nav a.tinv-next > i {\n margin: 0; }\n .tinv-wishlist .tinv-lists-nav a.tinv-prev > span, .tinv-wishlist .tinv-lists-nav a.tinv-next > span {\n display: none; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove, .tinv-wishlist table.tinvwl-table-manage-list thead th:not(.product-name) {\n display: none; }\n .tinv-wishlist table.tinvwl-table-manage-lists thead th:not(.wishlist-name) {\n display: none; }\n .tinv-wishlist thead th .tinvwl-full {\n display: none; }\n .tinv-wishlist table.tinvwl-table-manage-list thead th.product-name, .tinv-wishlist table.tinvwl-table-manage-lists thead th.wishlist-name {\n display: block;\n width: 100%;\n text-align: center; }\n .tinv-wishlist table thead th .tinvwl-mobile {\n display: block; }\n .tinv-wishlist table.tinvwl-table-manage-list tbody td {\n display: block;\n width: 100% !important;\n text-align: center; }\n .tinv-wishlist table.tinvwl-table-manage-lists tbody td, .tinv-wishlist table.tinvwl-table-manage-lists.tinvwl-public tbody td {\n display: block;\n width: 100% !important;\n text-align: center; }\n .tinv-wishlist table.tinvwl-table-manage-list tbody td:not(:last-child) {\n border-bottom: 0; }\n .tinv-wishlist table.tinvwl-table-manage-lists tbody td:not(:last-child), .tinv-wishlist table.tinvwl-table-manage-lists.tinvwl-public tbody td:not(:last-child) {\n border-bottom: 0; }\n .tinv-wishlist .product-stock p {\n margin: 0 auto; }\n .tinv-wishlist .product-thumbnail img {\n margin: 0 auto;\n max-width: 80px; }\n .tinv-wishlist.woocommerce table .quantity .qty {\n text-align: center;\n width: 100%; }\n .tinv-wishlist .product-action .tinvwl_move_product_button {\n margin-top: 10px; }\n .tinv-wishlist table.tinvwl-table-manage-list tfoot td {\n display: block;\n width: 100%; }\n .tinv-wishlist table.tinvwl-table-manage-lists .wishlist-action button[value=manage_remove] {\n width: 100%; }\n .tinv-wishlist table.tinvwl-table-manage-lists .wishlist-name .tinvwl-rename-button {\n float: none; } }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .wishlist-name .tinvwl-rename-button > i, .tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n margin-left: 0; }\n .tinv-wishlist .wishlist-name .tinvwl-rename-button span {\n display: none; }\n .tinv-wishlist .wishlist-action {\n width: 60px; }\n .tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n float: none;\n width: auto; }\n .tinv-wishlist tfoot .tinvwl-to-right {\n float: none;\n width: auto;\n text-align: right; } }\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist .wishlist-action button[value=\"manage_remove\"] span {\n display: none; }\n .tinv-wishlist .wishlist-action button[value=\"manage_remove\"] > i {\n display: inline-block; }\n .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: 0; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist button[value=\"manage_apply\"] .tinvwl-mobile, .tinv-wishlist button[value=\"product_apply\"] .tinvwl-mobile {\n display: none; }\n .tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list {\n display: block; }\n .tinv-wishlist .tinvwl-table-manage-list tfoot .tinvwl-to-right .button, .tinv-wishlist .tinvwl-table-manage-list tfoot .tinvwl-to-right button {\n width: 100%;\n margin: 10px 0 0; }\n .tinv-wishlist .tinvwl-table-manage-lists tfoot .tinvwl-to-right .button, .tinv-wishlist .tinvwl-table-manage-lists tfoot .tinvwl-to-right button {\n width: 100%;\n margin: 10px 0 0; }\n .tinv-wishlist tfoot .tinvwl-to-right > * {\n margin: 10px 0 0; }\n .tinv-wishlist tfoot .tinvwl-to-right .button:first-child, .tinv-wishlist tfoot .tinvwl-to-right button:first-child {\n margin-top: 0 !important; }\n .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: 20px; } }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .social-buttons {\n float: none;\n width: auto;\n text-align: right;\n margin-top: 20px; }\n .tinv-wishlist .social-buttons + .tinv-wishlist-clear + .navigation-button {\n margin-top: 30px; }\n .tinv-wishlist .tinv-login form input[name=login] {\n min-width: auto; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist .social-buttons {\n text-align: center; }\n .tinv-wishlist .navigation-button > li {\n width: 20%;\n text-align: center; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-1 > li {\n width: 100%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-2 > li {\n width: 50%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-3 > li {\n width: 33%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-4 > li {\n width: 25%; }\n .tinv-wishlist .navigation-button > li + li {\n width: 20%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-1 > li + li {\n width: 100%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-2 > li + li {\n width: 50%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-3 > li + li {\n width: 33%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-4 > li + li {\n width: 25%; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a, .tinv-wishlist .navigation-button > li > a {\n width: calc(100% - 10px);\n margin-left: 0; }\n .tinv-wishlist .navigation-button .tinv-create-list > a .tinvwl-txt, .tinv-wishlist .navigation-button li > a .tinvwl-txt {\n display: none; }\n .tinv-wishlist .navigation-button .tinv-create-list > a > i, .tinv-wishlist .navigation-button li > a > i {\n display: inline-block !important;\n margin-left: 0; }\n .tinv-wishlist .social-buttons > span {\n display: block;\n margin-top: 0;\n margin-left: 0;\n margin-bottom: 5px; } }\n\n@media only screen and (max-width: 667px) {\n .tinv-wishlist.woocommerce .tinv-login form .form-row-first, .tinv-wishlist.woocommerce .tinv-login form .form-row-last {\n float: none;\n width: 100%; }\n .tinv-wishlist.woocommerce .tinv-login form .form-row-first {\n padding: 0; }\n .tinv-wishlist.woocommerce .tinv-login form .form-row-last {\n padding: 0;\n margin-top: 10px; }\n .tinv-wishlist.woocommerce .tinv-login form .tinvwl-input-group-btn {\n display: block;\n padding: 0;\n width: auto;\n margin-top: 10px; } }\n\n.tinv-overlay {\n width: 100%;\n height: 100%;\n visibility: hidden;\n opacity: 0;\n background: #191919; }\n\n.tinv-modal.tinv-modal-open .tinv-overlay {\n visibility: visible;\n opacity: .5; }\n\n.admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 32px !important; }\n\n.tinv-wishlist .tinv-modal {\n overflow-y: auto;\n overflow-x: hidden;\n width: 0;\n height: 0;\n z-index: 9999;\n outline: 0 !important;\n -webkit-backface-visibility: hidden;\n visibility: hidden;\n opacity: 0;\n text-align: right; }\n .tinv-wishlist .tinv-modal .tinv-modal-inner {\n position: relative;\n margin: 0 auto;\n background-color: #fff;\n max-width: 360px;\n padding: 40px; }\n .tinv-wishlist .tinv-modal.tinv-modal-open {\n visibility: visible;\n opacity: 1;\n width: 100%;\n height: 100%; }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n display: inline-block;\n position: absolute;\n top: 17px;\n left: 14px;\n width: 26px;\n height: 26px;\n line-height: 26px;\n font-size: 12px;\n text-align: center;\n border-radius: 50%;\n border-bottom: 0;\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n background-color: #ebe9eb; }\n .tinv-wishlist .tinv-modal .icon_big_heart_check, .tinv-wishlist .tinv-modal .icon_big_times, .tinv-wishlist .tinv-modal img {\n display: block;\n margin: 0 auto;\n margin-bottom: 25px;\n opacity: 1 !important; }\n .tinv-wishlist .tinv-modal ul {\n overflow: visible;\n list-style: disc;\n margin: 10px 20px 0 0; }\n .tinv-wishlist .tinv-modal li {\n list-style: disc !important; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal ul, .tinv-wishlist.tinv-create-list form ul {\n list-style: none !important;\n margin: 25px 0 0; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal li, .tinv-wishlist.tinv-create-list form li {\n list-style: none !important; }\n\n.tinv-wishlist .tinv-modal .already-in {\n margin-bottom: 35px; }\n\n.tinv-wishlist .tinv-modal .delete-notification {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinv-modal .already-in ul {\n overflow: visible;\n margin: 12px 17px 27px 0; }\n\n.tinv-wishlist .tinv-modal select {\n width: 100%; }\n\n.tinv-wishlist .tinv-modal button + .button, .tinv-wishlist .tinv-modal button + button {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal input + button {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal label + button, .tinv-wishlist .tinv-modal label + input {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal select + button, .tinv-wishlist .tinv-modal select + input {\n margin-top: 12px;\n width: 100%; }\n\n@media screen and (max-width: 782px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 46px !important; } }\n\n@media screen and (max-width: 600px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 0 !important; }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n position: static;\n display: block;\n margin: 0 auto 20px; } }\n\n.tinv-wishlist .tinv-modal .already-in + label {\n display: block;\n margin-top: 6px; }\n\n.tinv-wishlist .tinv-modal label select {\n margin-top: 8px; }\n\n.tinv-wishlist .tinv-modal .delete-notification + button {\n width: 100%; }\n\n.tinv-wishlist .tinvwl_added_to_wishlist, .tinv-wishlist .tinvwl_created_wishlist {\n text-align: center; }\n\n.tinv-wishlist .tinvwl_added_to_wishlist .tinv-txt {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinvwl_created_wishlist .tinv-txt {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinvwl_created_wishlist button {\n margin-top: 0;\n margin-bottom: 10px; }\n\n.woocommerce .tinv-wishlist .tinvwl_added_to_wishlist.tinv-modal button.button {\n margin-top: 0;\n margin-bottom: 10px; }\n\n.tinv-wishlist .tinv-modal .tinvwl-buttons-group {\n margin-top: 20px; }\n\n.tinv-wishlist .tinvwl-buttons-group button {\n width: 100%; }\n .tinv-wishlist .tinvwl-buttons-group button + button {\n margin-top: 7px; }\n .tinv-wishlist .tinvwl-buttons-group button i {\n position: relative; }\n .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-heart-o, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-key, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-times {\n font-size: 20px; }\n .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-heart-o::before, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-key::before, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-times::before {\n position: relative;\n top: 3px; }\n\n.tinv-wishlist .tinvwl-buttons-group + button {\n width: 100%;\n margin-top: 7px; }\n\n.tinv-wishlist .tinv-modal h2 {\n text-align: center;\n margin: 0 0 35px; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal-inner {\n max-width: 778px;\n padding: 30px; }\n\n.tinv-wishlist .tinvwl-has-error:not(.tinvwl-input-group), .tinv-wishlist .tinvwl-input-group.tinvwl-has-error .form-control {\n border: 2px solid #FF0000; }\n\n.tinv-wishlist .tinvwl-has-error:not(.tinvwl-input-group) {\n border: 2px solid #FF0000; }\n\n.tinv-wishlist .tinvwl-has-error + .tinvwl-error {\n padding: 5px 5px 0 0;\n color: #FF0000; }\n\n@media only screen and (max-width: 640px) {\n .navigation-button, .social-buttons, .tinv-lists-nav {\n margin-right: 12px;\n margin-left: 12px; } }\n\n.tinvwl-tooltip {\n display: none; }\n\n.tinvwl-input-group {\n position: relative;\n display: table;\n border-collapse: separate; }\n .tinvwl-input-group .form-control {\n position: relative;\n z-index: 1;\n float: right;\n height: 38px;\n width: 100%;\n margin-bottom: 0; }\n .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-right: 15px; }\n\n.tinv-wishlist .tinvwl-to-left .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-right: 10px; }\n\n.tinv-wishlist .tinv-search-form .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-right: 9px; }\n\n.tinvwl-input-group .form-control, .tinvwl-input-group-addon, .tinvwl-input-group-btn {\n display: table-cell; }\n\n.tinvwl-input-group-addon, .tinvwl-input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: top; }\n\n@media only screen and (max-width: 640px) {\n .tinvwl-input-group {\n width: 100%; } }\n\n@media only screen and (max-width: 667px) {\n .tinvwl-input-group:not(.tinvwl-no-full) {\n display: block; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn {\n display: block; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control {\n float: none; }\n .tinv-wishlist .tinv-search-form .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n padding-top: 10px;\n padding-right: 0; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n padding-top: 10px;\n padding-right: 0; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon > button, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon > input {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn > button, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn > input {\n width: 100%; } }\n\n.tinv-table {\n display: table;\n width: 100%;\n height: 100%; }\n\n.tinv-cell {\n display: table-cell;\n vertical-align: middle; }\n\n.tinv-wishlist .tinv-wishlist-clear {\n visibility: visible;\n width: auto;\n height: auto; }\n\n.tinv-wishlist-clear:before {\n content: \"\";\n display: table; }\n\n.tinv-wishlist-clear:after {\n content: \"\";\n display: table;\n clear: both; }\n\n.icon_big_heart_check {\n display: inline-block;\n width: 46px;\n height: 46px;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 60px; }\n\n.icon_big_times {\n display: inline-block;\n width: 46px;\n height: 46px;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 60px; }\n .icon_big_times::before {\n content: \"\\e904\";\n top: -7px;\n right: -7px;\n position: relative; }\n\n.icon_big_heart_check::before {\n content: \"\\e90a\";\n top: -7px;\n right: -7px;\n position: relative; }\n\n.tinvwl_add_to_wishlist_button.tinvwl-button.disabled-add-wishlist, .tinvwl_add_to_wishlist_button.disabled-add-wishlist {\n opacity: 0.5 !important;\n cursor: not-allowed; }\n\n.empty-name-wishlist {\n border-color: #FF0000 !important; }\n\n.tinvwl_remove_from_wishlist-text, .tinvwl_already_on_wishlist-text {\n display: none !important; }\n\n.tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_remove_from_wishlist-text, .tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_already_on_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_remove_from_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_already_on_wishlist-text {\n display: inline !important; }\n\n.tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_add_to_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_add_to_wishlist-text {\n display: none !important; }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n display: table-cell; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove {\n display: block; } }\n\n.tooltipped {\n position: relative; }\n\n.tooltipped::after {\n position: absolute;\n z-index: 1000000;\n display: none;\n padding: 0.5em 0.75em;\n font: normal normal 11px/1.5 -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n -webkit-font-smoothing: subpixel-antialiased;\n color: #fff;\n text-align: center;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-wrap: break-word;\n white-space: pre;\n pointer-events: none;\n content: attr(aria-label);\n background: #1b1f23;\n border-radius: 3px;\n opacity: 0; }\n\n.tooltipped::before {\n position: absolute;\n z-index: 1000001;\n display: none;\n width: 0;\n height: 0;\n color: #1b1f23;\n pointer-events: none;\n content: \"\";\n border: 6px solid transparent;\n opacity: 0; }\n\n@-webkit-keyframes tooltip-appear {\n from {\n opacity: 0; }\n to {\n opacity: 1; } }\n\n@keyframes tooltip-appear {\n from {\n opacity: 0; }\n to {\n opacity: 1; } }\n\n.tooltipped:hover::before, .tooltipped:hover::after,\n.tooltipped:active::before,\n.tooltipped:active::after,\n.tooltipped:focus::before,\n.tooltipped:focus::after {\n display: inline-block;\n text-decoration: none;\n -webkit-animation-name: tooltip-appear;\n animation-name: tooltip-appear;\n -webkit-animation-duration: 0.1s;\n animation-duration: 0.1s;\n -webkit-animation-fill-mode: forwards;\n animation-fill-mode: forwards;\n -webkit-animation-timing-function: ease-in;\n animation-timing-function: ease-in;\n -webkit-animation-delay: 0.4s;\n animation-delay: 0.4s; }\n\n.tooltipped-no-delay:hover::before, .tooltipped-no-delay:hover::after,\n.tooltipped-no-delay:active::before,\n.tooltipped-no-delay:active::after,\n.tooltipped-no-delay:focus::before,\n.tooltipped-no-delay:focus::after {\n -webkit-animation-delay: 0s;\n animation-delay: 0s; }\n\n.tooltipped-multiline:hover::after,\n.tooltipped-multiline:active::after,\n.tooltipped-multiline:focus::after {\n display: table-cell; }\n\n.tooltipped-s::after,\n.tooltipped-se::after,\n.tooltipped-sw::after {\n top: 100%;\n left: 50%;\n margin-top: 6px; }\n\n.tooltipped-s::before,\n.tooltipped-se::before,\n.tooltipped-sw::before {\n top: auto;\n left: 50%;\n bottom: -7px;\n margin-left: -6px;\n border-bottom-color: #1b1f23; }\n\n.tooltipped-se::after {\n left: auto;\n right: 50%;\n margin-right: -16px; }\n\n.tooltipped-sw::after {\n margin-left: -16px; }\n\n.tooltipped-n::after,\n.tooltipped-ne::after,\n.tooltipped-nw::after {\n left: 50%;\n bottom: 100%;\n margin-bottom: 6px; }\n\n.tooltipped-n::before,\n.tooltipped-ne::before,\n.tooltipped-nw::before {\n top: -7px;\n left: 50%;\n bottom: auto;\n margin-left: -6px;\n border-top-color: #1b1f23; }\n\n.tooltipped-ne::after {\n left: auto;\n right: 50%;\n margin-right: -16px; }\n\n.tooltipped-nw::after {\n margin-left: -16px; }\n\n.tooltipped-s::after,\n.tooltipped-n::after {\n -webkit-transform: translateX(-50%);\n transform: translateX(-50%); }\n\n.tooltipped-w::after {\n left: 100%;\n bottom: 50%;\n margin-left: 6px;\n -webkit-transform: translateY(50%);\n transform: translateY(50%); }\n\n.tooltipped-w::before {\n top: 50%;\n bottom: 50%;\n right: -7px;\n margin-top: -6px;\n border-right-color: #1b1f23; }\n\n.tooltipped-e::after {\n bottom: 50%;\n right: 100%;\n margin-right: 6px;\n -webkit-transform: translateY(50%);\n transform: translateY(50%); }\n\n.tooltipped-e::before {\n top: 50%;\n left: -7px;\n bottom: 50%;\n margin-top: -6px;\n border-left-color: #1b1f23; }\n\n.tooltipped-align-right-1::after,\n.tooltipped-align-right-2::after {\n left: 0;\n margin-left: 0; }\n\n.tooltipped-align-right-1::before {\n left: 10px; }\n\n.tooltipped-align-right-2::before {\n left: 15px; }\n\n.tooltipped-align-left-1::after,\n.tooltipped-align-left-2::after {\n right: 0;\n margin-right: 0; }\n\n.tooltipped-align-left-1::before {\n right: 5px; }\n\n.tooltipped-align-left-2::before {\n right: 10px; }\n\n.tooltipped-multiline::after {\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 250px;\n word-wrap: break-word;\n white-space: pre-line;\n border-collapse: separate; }\n\n.tooltipped-multiline.tooltipped-s::after, .tooltipped-multiline.tooltipped-n::after {\n left: auto;\n right: 50%;\n -webkit-transform: translateX(50%);\n transform: translateX(50%); }\n\n.tooltipped-multiline.tooltipped-w::after, .tooltipped-multiline.tooltipped-e::after {\n left: 100%; }\n\n@media screen and (min-width: 0 \\0 ) {\n .tooltipped-multiline::after {\n width: 250px; } }\n\n.tooltipped-sticky::before, .tooltipped-sticky::after {\n display: inline-block; }\n\n.tooltipped-sticky.tooltipped-multiline::after {\n display: table-cell; }\n\n.tinvwl-table-manage-list .component_table_item_price:before {\n font-family: 'FontAwesomeCP';\n font-size: 1rem;\n display: inline-block;\n -ms-filter: \"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)\";\n -webkit-transform: rotate(-90deg);\n transform: rotate(-90deg);\n content: \"\\e811\";\n margin: 0 3px 0 12px;\n opacity: .25; }\n"]}
|
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 1.
|
4 |
* @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
5 |
*/
|
6 |
@font-face{font-family:'tinvwl-webfont';src:url("../fonts/tinvwl-webfont.eot?xu2uyi");src:url("../fonts/tinvwl-webfont.eot?xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.ttf?xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.woff?xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
|
@@ -73,7 +73,6 @@ a.wishlist_products_counter.top_wishlist-custom.no-txt,span.wishlist_products_co
|
|
73 |
.single-product div.product form.cart .tinvwl-button.tinvwl_add_to_wishlist_button,div.product form.cart .tinvwl_add_to_wishlist_button{float:none}
|
74 |
ul.products li.product .tinvwl_add_to_wishlist_button{margin-top:1em}
|
75 |
.tinvwl_add_to_wishlist_button{display:inline-block;cursor:pointer;-webkit-transition:opacity 1s;transition:opacity 1s;opacity:1;visibility:visible}
|
76 |
-
.tinvwl_add_to_wishlist_button.tinvwl-add-hide{visibility:hidden;opacity:.5;pointer-events:none}
|
77 |
.tinv-wishlist.woocommerce .stock.in-stock:before{content:none}
|
78 |
.tinv-wraper.tinv-wishlist{font-size:100%}
|
79 |
.tinv-create-list li input[type=radio]{margin-left:10px}
|
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 1.21.0
|
4 |
* @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
5 |
*/
|
6 |
@font-face{font-family:'tinvwl-webfont';src:url("../fonts/tinvwl-webfont.eot?xu2uyi");src:url("../fonts/tinvwl-webfont.eot?xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.ttf?xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.woff?xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
|
73 |
.single-product div.product form.cart .tinvwl-button.tinvwl_add_to_wishlist_button,div.product form.cart .tinvwl_add_to_wishlist_button{float:none}
|
74 |
ul.products li.product .tinvwl_add_to_wishlist_button{margin-top:1em}
|
75 |
.tinvwl_add_to_wishlist_button{display:inline-block;cursor:pointer;-webkit-transition:opacity 1s;transition:opacity 1s;opacity:1;visibility:visible}
|
|
|
76 |
.tinv-wishlist.woocommerce .stock.in-stock:before{content:none}
|
77 |
.tinv-wraper.tinv-wishlist{font-size:100%}
|
78 |
.tinv-create-list li input[type=radio]{margin-left:10px}
|
assets/css/public.css
CHANGED
@@ -305,10 +305,6 @@ ul.products li.product .tinvwl_add_to_wishlist_button {
|
|
305 |
transition: opacity 1s;
|
306 |
opacity: 1;
|
307 |
visibility: visible; }
|
308 |
-
.tinvwl_add_to_wishlist_button.tinvwl-add-hide {
|
309 |
-
visibility: hidden;
|
310 |
-
opacity: 0.5;
|
311 |
-
pointer-events: none; }
|
312 |
|
313 |
.tinv-wishlist.woocommerce .stock.in-stock:before {
|
314 |
content: none; }
|
305 |
transition: opacity 1s;
|
306 |
opacity: 1;
|
307 |
visibility: visible; }
|
|
|
|
|
|
|
|
|
308 |
|
309 |
.tinv-wishlist.woocommerce .stock.in-stock:before {
|
310 |
content: none; }
|
assets/css/public.css.map
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"version":3,"names":[],"mappings":"","sources":["public.css"],"file":"public.css","sourcesContent":["/*------------------------------------*\n\t$WEBFONT\n*------------------------------------*/\n/*------------------------------------------------------------------\nWooCommerce Wishlist Plugin custom webfont\n-------------------------------------------------------------------*/\n@font-face {\n font-family: 'tinvwl-webfont';\n src: url(\"../fonts/tinvwl-webfont.eot?xu2uyi\");\n src: url(\"../fonts/tinvwl-webfont.eot?xu2uyi#iefix\") format(\"embedded-opentype\"), url(\"../fonts/tinvwl-webfont.ttf?xu2uyi\") format(\"truetype\"), url(\"../fonts/tinvwl-webfont.woff?xu2uyi\") format(\"woff\"), url(\"../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont\") format(\"svg\");\n font-weight: normal;\n font-style: normal; }\n\n.ftinvwl {\n /* use !important to prevent issues with browser extensions that change fonts */\n font-family: 'tinvwl-webfont' !important;\n speak: none;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n /* Better Font Rendering =========== */\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale; }\n\n.ftinvwl-twitter:before {\n content: \"\\f099\"; }\n\n.ftinvwl-facebook:before {\n content: \"\\f09a\"; }\n\n.ftinvwl-facebook-f:before {\n content: \"\\f09a\"; }\n\n.ftinvwl-google:before {\n content: \"\\f0d5\"; }\n\n.ftinvwl-email:before {\n content: \"\\f0e0\"; }\n\n.ftinvwl-pinterest:before {\n content: \"\\f231\"; }\n\n.ftinvwl-whatsapp:before {\n content: \"\\f232\"; }\n\n.ftinvwl-clipboard:before {\n content: \"\\e911\"; }\n\n.ftinvwl-star:before {\n content: \"\\e912\"; }\n\n.ftinvwl-shopping-cart:before {\n content: \"\\e913\"; }\n\n.ftinvwl-magic:before {\n content: \"\\e914\"; }\n\n.ftinvwl-info:before {\n content: \"\\e915\"; }\n\n.ftinvwl-graduation-cap:before {\n content: \"\\e918\"; }\n\n.ftinvwl-floppy-o:before {\n content: \"\\e919\"; }\n\n.ftinvwl-eyedropper:before {\n content: \"\\e91a\"; }\n\n.ftinvwl-exclamation-triangle:before {\n content: \"\\e91b\"; }\n\n.ftinvwl-check:before {\n content: \"\\e91e\"; }\n\n.ftinvwl-arrow-left:before {\n content: \"\\e91f\"; }\n\n.ftinvwl-wrench:before {\n content: \"\\e920\"; }\n\n.ftinvwl-chevron-down:before {\n content: \"\\e900\"; }\n\n.ftinvwl-chevron-right:before {\n content: \"\\e901\"; }\n\n.ftinvwl-chevron-left:before {\n content: \"\\e902\"; }\n\n.ftinvwl-chevron-up:before {\n content: \"\\e903\"; }\n\n.ftinvwl-cancel:before {\n content: \"\\e904\"; }\n\n.ftinvwl-times:before {\n content: \"\\e905\"; }\n\n.ftinvwl-heart-plus:before {\n content: \"\\e906\"; }\n\n.ftinvwl-heart-mark-right:before {\n content: \"\\e907\"; }\n\n.ftinvwl-heart2:before {\n content: \"\\e908\"; }\n\n.ftinvwl-heart-o:before {\n content: \"\\e909\"; }\n\n.ftinvwl-heart-mark-left:before {\n content: \"\\e90a\"; }\n\n.ftinvwl-heart-mail:before {\n content: \"\\e90b\"; }\n\n.ftinvwl-heart-tinv:before {\n content: \"\\e90c\"; }\n\n.ftinvwl-key:before {\n content: \"\\e90d\"; }\n\n.ftinvwl-lock:before {\n content: \"\\e90e\"; }\n\n.ftinvwl-hearts:before {\n content: \"\\e90f\"; }\n\n.ftinvwl-user:before {\n content: \"\\e910\"; }\n\n/* PULSE */\n@-webkit-keyframes ftinvwl-pulse {\n 0% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); }\n 50% {\n -webkit-transform: scale(0.8);\n transform: scale(0.8); }\n 100% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); } }\n\n@keyframes ftinvwl-pulse {\n 0% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); }\n 50% {\n -webkit-transform: scale(0.8);\n transform: scale(0.8); }\n 100% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); } }\n\n.ftinvwl-pulse.ftinvwl-animated::before {\n -webkit-animation: ftinvwl-pulse 2s linear infinite;\n animation: ftinvwl-pulse 2s linear infinite; }\n\n.tinv-wishlist form, .tinv-wishlist p:last-child, .tinv-wishlist table {\n margin-bottom: 0; }\n\n.tinv-wishlist * {\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n\n.tinvwl-wishlist :after, .tinvwl-wishlist :before {\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n\n.tinv-wishlist select {\n width: 140px; }\n\n.tinv-wishlist ul {\n list-style: none;\n margin: 0;\n padding: 0; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {\n margin-top: -10px;\n margin-left: -10px; }\n\n.woocommerce.tinv-wishlist #respond input#submit.alt, .woocommerce.tinv-wishlist a.button.alt, .woocommerce.tinv-wishlist button.button.alt, .woocommerce.tinv-wishlist input.button.alt {\n text-align: center; }\n\n.tinv-wishlist .button i, .tinv-wishlist .navigation-button a i {\n margin-right: 6px; }\n\n.tinv-wishlist input[type=\"button\"] i, .tinv-wishlist input[type=\"reset\"] i, .tinv-wishlist input[type=\"submit\"] i {\n margin-right: 6px; }\n\n.tinv-wishlist a.tinv-close-modal i {\n margin-right: 0; }\n\na.wishlist_products_counter {\n text-decoration: none; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button:before, a.wishlist_products_counter.top_wishlist-heart:before, span.wishlist_products_counter.top_wishlist-heart:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart:before {\n content: '\\e909';\n display: inline-block;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 20px;\n vertical-align: sub;\n margin-right: 5px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, a.wishlist_products_counter.top_wishlist-heart-plus:before, span.wishlist_products_counter.top_wishlist-heart-plus:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart-plus:before {\n content: '\\e906';\n display: inline-block;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 20px;\n vertical-align: sub;\n margin-right: 5px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {\n position: relative;\n width: 36px;\n height: 36px;\n vertical-align: sub; }\n\na.wishlist_products_counter.top_wishlist-heart-plus.no-txt, span.wishlist_products_counter.top_wishlist-heart-plus.no-txt {\n position: relative;\n width: 36px;\n height: 36px;\n vertical-align: sub; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {\n position: absolute;\n top: 50%;\n left: 50%;\n margin-right: 0; }\n\n.tinv-wishlist .tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt, .tinv-wishlist .tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {\n padding-left: 1em;\n vertical-align: bottom; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before {\n content: '\\e908'; }\n\n.woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button.tinvwl-product-in-list:before, a.wishlist_products_counter.top_wishlist-heart.wishlist-counter-with-products:before, span.wishlist_products_counter.top_wishlist-heart.wishlist-counter-with-products:before {\n content: '\\e908'; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.tinvwl-product-in-list:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.tinvwl-product-in-list:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart-plus.tinvwl_add_to_wishlist_button.tinvwl-product-in-list:before, a.wishlist_products_counter.top_wishlist-heart-plus.wishlist-counter-with-products:before, span.wishlist_products_counter.top_wishlist-heart-plus.wishlist-counter-with-products:before {\n content: '\\e907'; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.icon-white:before, a.wishlist_products_counter.top_wishlist-white:before, span.wishlist_products_counter.top_wishlist-white:before {\n color: #FFF; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.icon-black:before, a.wishlist_products_counter.top_wishlist-black:before, span.wishlist_products_counter.top_wishlist-black:before {\n color: #000; }\n\n.tinv-wishlist.tinvwl-before-add-to-cart .tinvwl_add_to_wishlist_button {\n margin-bottom: 15px; }\n\n.tinv-wishlist.tinvwl-after-add-to-cart .tinvwl_add_to_wishlist_button {\n margin-top: 15px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt {\n padding: 10px 11px;\n line-height: 1; }\n\na.wishlist_products_counter.top_wishlist-custom.no-txt, span.wishlist_products_counter.top_wishlist-custom.no-txt {\n padding: 10px 11px;\n line-height: 1; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom img, a.wishlist_products_counter.top_wishlist-custom img, span.wishlist_products_counter.top_wishlist-custom img {\n display: inline-block !important;\n vertical-align: baseline;\n width: auto !important;\n max-width: 16px;\n max-height: 16px;\n margin-bottom: 0;\n margin: 0 6px 0 0 !important; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt img, a.wishlist_products_counter.top_wishlist-custom.no-txt img, span.wishlist_products_counter.top_wishlist-custom.no-txt img {\n margin-right: 0 !important; }\n\n.single-product div.product form.cart .tinvwl-button.tinvwl_add_to_wishlist_button, div.product form.cart .tinvwl_add_to_wishlist_button {\n float: none; }\n\nul.products li.product .tinvwl_add_to_wishlist_button {\n margin-top: 1em; }\n\n.tinvwl_add_to_wishlist_button {\n display: inline-block;\n cursor: pointer;\n -webkit-transition: opacity 1s;\n transition: opacity 1s;\n opacity: 1;\n visibility: visible; }\n .tinvwl_add_to_wishlist_button.tinvwl-add-hide {\n visibility: hidden;\n opacity: 0.5;\n pointer-events: none; }\n\n.tinv-wishlist.woocommerce .stock.in-stock:before {\n content: none; }\n\n.tinv-wraper.tinv-wishlist {\n font-size: 100%; }\n\n.tinv-create-list li input[type=radio] {\n margin-right: 10px; }\n\n.tinv-create-list li + li {\n margin-top: 15px; }\n\n.tinv-create-list .tinvwl-input-group + ul {\n margin-top: 25px; }\n\n.tinv-search-list {\n margin-bottom: 36px; }\n\n.tinv-wishlist .tinv-header {\n margin-bottom: 30px; }\n\n.tinv-wishlist table {\n position: relative;\n table-layout: auto;\n margin-bottom: 30px;\n z-index: 2; }\n\n.tinv-overlay {\n top: 0;\n left: 0;\n position: fixed;\n -webkit-transition: opacity .3s ease, visibility .3s ease;\n transition: opacity .3s ease, visibility .3s ease; }\n\n.tinv-wishlist .tinv-modal {\n top: 0;\n left: 0;\n position: fixed;\n -webkit-transition: opacity .3s ease, visibility .3s ease;\n transition: opacity .3s ease, visibility .3s ease; }\n\n.tinv-wishlist table.tinvwl-table-manage-list {\n margin-bottom: 27px;\n width: 100%; }\n\n.tinv-wishlist table input[type=checkbox] {\n margin-right: 0; }\n\n.tinv-wishlist table td, .tinv-wishlist table th {\n padding: 1em;\n vertical-align: middle; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-cb {\n width: 35px;\n text-align: center; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-remove {\n width: 35px;\n text-align: center;\n padding: 1em .5em; }\n\n.tinv-wishlist .product-remove button {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -ms-flex-line-pack: center;\n align-content: center;\n margin: 0 auto;\n width: 27px;\n height: 27px;\n border-radius: 50%;\n padding: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n border: none;\n background-color: #f7f7f7;\n color: #000000;\n font-size: 20px;\n padding-left: 1px;\n padding-top: 3px; }\n\n.tinv-wishlist .product-thumbnail {\n min-width: 100px;\n width: 100px; }\n .tinv-wishlist .product-thumbnail .wp-post-image {\n margin-bottom: 0; }\n\n.tinv-wishlist td.product-name a + .variation {\n margin-top: 2px; }\n\n.tinv-wishlist .product-stock i {\n margin-right: 15px; }\n\n.tinv-wishlist .product-stock p {\n display: table; }\n\n.tinv-wishlist .product-stock span {\n display: table-cell;\n vertical-align: middle; }\n\n.tinv-wishlist .product-action > .button > i, .tinv-wishlist .tinvwl-table-manage-list .product-action button[name=tinvwl-remove], .tinv-wishlist table thead th .tinvwl-mobile {\n display: none; }\n\n.tinv-wishlist.woocommerce .product-quantity {\n width: 80px;\n text-align: center; }\n\n.tinv-wishlist.woocommerce table .quantity .qty {\n max-width: 100%;\n width: 62px;\n text-align: left; }\n\n.tinv-wishlist .product-action {\n width: 135px;\n text-align: center; }\n .tinv-wishlist .product-action .button {\n width: 100%; }\n .tinv-wishlist .product-action .tinvwl_move_product_button {\n margin-top: 5px; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-action > button[name=tinvwl-remove] > i {\n margin-right: 0; }\n\n.tinv-wishlist .wishlist-cb {\n width: 33px;\n text-align: center; }\n\n.tinv-wishlist .wishlist-name .tinvwl-rename-input input {\n width: 100%; }\n\n.tinv-wishlist .wishlist-name .tinvwl-rename-button {\n float: right; }\n .tinv-wishlist .wishlist-name .tinvwl-rename-button > i {\n margin-right: 10px; }\n\n.tinv-wishlist .wishlist-privacy, .tinv-wishlist table:not(.tinvwl-public) .wishlist-date {\n width: 18%; }\n\n.tinv-wishlist .wishlist-privacy select {\n width: 100%; }\n\n.tinv-wishlist .wishlist-name {\n width: 45%; }\n\n.tinv-wishlist .wishlist-action {\n width: 120px;\n text-align: center; }\n .tinv-wishlist .wishlist-action button[value=manage_remove] > i {\n display: none;\n margin-right: 0; }\n\n.tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list {\n display: inline-block;\n vertical-align: middle; }\n .tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list > a.button {\n margin-right: 0; }\n\n.tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: -10px; }\n\n.tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n float: left;\n width: 35%;\n margin-right: 2%; }\n\n.tinv-wishlist tfoot .tinvwl-to-right {\n float: left;\n width: 63%;\n text-align: right; }\n .tinv-wishlist tfoot .tinvwl-to-right > * {\n margin: 10px 0 0;\n vertical-align: middle; }\n .tinv-wishlist tfoot .tinvwl-to-right > * + * {\n margin-left: 10px; }\n\n.tinv-wishlist tfoot .tinvwl-to-left:empty + .tinvwl-to-right {\n width: 100%; }\n\n.tinv-wishlist .social-buttons + .tinv-wishlist-clear + .navigation-button {\n margin-top: 16px; }\n\n.tinv-wishlist .navigation-button {\n margin-top: -10px; }\n .tinv-wishlist .navigation-button > li {\n float: left; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a, .tinv-wishlist .navigation-button > li > a {\n margin-right: 30px;\n margin-top: 10px;\n display: inline-block; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a.button, .tinv-wishlist .navigation-button > li > a.button {\n margin-right: 10px; }\n .tinv-wishlist .navigation-button > li:last-child > .tinv-create-list > a, .tinv-wishlist .navigation-button > li:last-child > a {\n margin-right: 0; }\n\n.tinv-wishlist .social-buttons {\n text-align: right; }\n .tinv-wishlist .social-buttons > span, .tinv-wishlist .social-buttons > ul {\n display: inline-block;\n vertical-align: middle; }\n .tinv-wishlist .social-buttons > span {\n margin-right: 27px; }\n .tinv-wishlist .social-buttons li {\n float: left;\n margin-right: 5px;\n list-style: none; }\n .tinv-wishlist .social-buttons li:last-child {\n margin-right: 0; }\n .tinv-wishlist .social-buttons li a.social {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-line-pack: center;\n align-content: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n border-radius: 50%;\n text-align: center;\n -webkit-box-shadow: none;\n box-shadow: none;\n border: 0;\n font-size: 20px;\n text-decoration: none;\n text-transform: none !important; }\n .tinv-wishlist .social-buttons li a.social.white {\n color: #ffffff; }\n .tinv-wishlist .social-buttons li a.social.dark {\n color: #000000; }\n .tinv-wishlist .social-buttons li a.social i {\n line-height: 2em; }\n\n.tinv-wishlist .navigation-button .tinv-create-list > a.tinvwl-no-icon > i, .tinv-wishlist .navigation-button li > a.tinvwl-no-icon > i {\n display: none; }\n\n.tinv-wishlist .tinv-lists-nav {\n margin-top: 35px;\n margin-bottom: 35px;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n width: 100%; }\n .tinv-wishlist .tinv-lists-nav > * {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n text-align: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center; }\n .tinv-wishlist .tinv-lists-nav > span {\n font-weight: 700; }\n\n.tinv-wishlist .tinv-next {\n display: inline-block;\n float: left; }\n\n.tinv-wishlist .tinv-prev {\n display: inline-block;\n float: left;\n margin-right: 35px !important; }\n\n.tinv-wishlist .tinv-prev i {\n margin-left: 0;\n margin-right: 18px; }\n\n.tinv-wishlist .tinv-next i {\n margin-left: 18px;\n margin-right: 0; }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-lists:not(.tinvwl-public) {\n margin-top: 0; }\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n display: none; }\n .tinv-wishlist .tinvwl-table-manage-list .product-action button[name=tinvwl-remove] {\n display: inline-block;\n margin-top: 5px; }\n .tinv-wishlist .product-action {\n width: 60px; } }\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock p {\n display: block;\n text-align: center; }\n .tinv-wishlist .product-stock span {\n display: block; }\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock i {\n margin-right: 0; }\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock .tinvwl-txt {\n display: none; }\n .tinv-wishlist .product-thumbnail {\n max-width: 76px;\n width: 76px; }\n .tinv-wishlist .product-action .button > i {\n display: inline-block;\n margin-right: 0; }\n .tinv-wishlist .product-action .button .tinvwl-txt {\n display: none; } }\n\n@media only screen and (max-width: 1023px) {\n .tinv-wishlist .tinv-lists-nav a.tinv-prev > i, .tinv-wishlist .tinv-lists-nav a.tinv-next > i {\n margin: 0; }\n .tinv-wishlist .tinv-lists-nav a.tinv-prev > span, .tinv-wishlist .tinv-lists-nav a.tinv-next > span {\n display: none; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove, .tinv-wishlist table.tinvwl-table-manage-list thead th:not(.product-name) {\n display: none; }\n .tinv-wishlist table.tinvwl-table-manage-lists thead th:not(.wishlist-name) {\n display: none; }\n .tinv-wishlist thead th .tinvwl-full {\n display: none; }\n .tinv-wishlist table.tinvwl-table-manage-list thead th.product-name, .tinv-wishlist table.tinvwl-table-manage-lists thead th.wishlist-name {\n display: block;\n width: 100%;\n text-align: center; }\n .tinv-wishlist table thead th .tinvwl-mobile {\n display: block; }\n .tinv-wishlist table.tinvwl-table-manage-list tbody td {\n display: block;\n width: 100% !important;\n text-align: center; }\n .tinv-wishlist table.tinvwl-table-manage-lists tbody td, .tinv-wishlist table.tinvwl-table-manage-lists.tinvwl-public tbody td {\n display: block;\n width: 100% !important;\n text-align: center; }\n .tinv-wishlist table.tinvwl-table-manage-list tbody td:not(:last-child) {\n border-bottom: 0; }\n .tinv-wishlist table.tinvwl-table-manage-lists tbody td:not(:last-child), .tinv-wishlist table.tinvwl-table-manage-lists.tinvwl-public tbody td:not(:last-child) {\n border-bottom: 0; }\n .tinv-wishlist .product-stock p {\n margin: 0 auto; }\n .tinv-wishlist .product-thumbnail img {\n margin: 0 auto;\n max-width: 80px; }\n .tinv-wishlist.woocommerce table .quantity .qty {\n text-align: center;\n width: 100%; }\n .tinv-wishlist .product-action .tinvwl_move_product_button {\n margin-top: 10px; }\n .tinv-wishlist table.tinvwl-table-manage-list tfoot td {\n display: block;\n width: 100%; }\n .tinv-wishlist table.tinvwl-table-manage-lists .wishlist-action button[value=manage_remove] {\n width: 100%; }\n .tinv-wishlist table.tinvwl-table-manage-lists .wishlist-name .tinvwl-rename-button {\n float: none; } }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .wishlist-name .tinvwl-rename-button > i, .tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n margin-right: 0; }\n .tinv-wishlist .wishlist-name .tinvwl-rename-button span {\n display: none; }\n .tinv-wishlist .wishlist-action {\n width: 60px; }\n .tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n float: none;\n width: auto; }\n .tinv-wishlist tfoot .tinvwl-to-right {\n float: none;\n width: auto;\n text-align: left; } }\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist .wishlist-action button[value=\"manage_remove\"] span {\n display: none; }\n .tinv-wishlist .wishlist-action button[value=\"manage_remove\"] > i {\n display: inline-block; }\n .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: 0; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist button[value=\"manage_apply\"] .tinvwl-mobile, .tinv-wishlist button[value=\"product_apply\"] .tinvwl-mobile {\n display: none; }\n .tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list {\n display: block; }\n .tinv-wishlist .tinvwl-table-manage-list tfoot .tinvwl-to-right .button, .tinv-wishlist .tinvwl-table-manage-list tfoot .tinvwl-to-right button {\n width: 100%;\n margin: 10px 0 0; }\n .tinv-wishlist .tinvwl-table-manage-lists tfoot .tinvwl-to-right .button, .tinv-wishlist .tinvwl-table-manage-lists tfoot .tinvwl-to-right button {\n width: 100%;\n margin: 10px 0 0; }\n .tinv-wishlist tfoot .tinvwl-to-right > * {\n margin: 10px 0 0; }\n .tinv-wishlist tfoot .tinvwl-to-right .button:first-child, .tinv-wishlist tfoot .tinvwl-to-right button:first-child {\n margin-top: 0 !important; }\n .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: 20px; } }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .social-buttons {\n float: none;\n width: auto;\n text-align: left;\n margin-top: 20px; }\n .tinv-wishlist .social-buttons + .tinv-wishlist-clear + .navigation-button {\n margin-top: 30px; }\n .tinv-wishlist .tinv-login form input[name=login] {\n min-width: auto; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist .social-buttons {\n text-align: center; }\n .tinv-wishlist .navigation-button > li {\n width: 20%;\n text-align: center; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-1 > li {\n width: 100%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-2 > li {\n width: 50%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-3 > li {\n width: 33%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-4 > li {\n width: 25%; }\n .tinv-wishlist .navigation-button > li + li {\n width: 20%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-1 > li + li {\n width: 100%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-2 > li + li {\n width: 50%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-3 > li + li {\n width: 33%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-4 > li + li {\n width: 25%; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a, .tinv-wishlist .navigation-button > li > a {\n width: calc(100% - 10px);\n margin-right: 0; }\n .tinv-wishlist .navigation-button .tinv-create-list > a .tinvwl-txt, .tinv-wishlist .navigation-button li > a .tinvwl-txt {\n display: none; }\n .tinv-wishlist .navigation-button .tinv-create-list > a > i, .tinv-wishlist .navigation-button li > a > i {\n display: inline-block !important;\n margin-right: 0; }\n .tinv-wishlist .social-buttons > span {\n display: block;\n margin-top: 0;\n margin-right: 0;\n margin-bottom: 5px; } }\n\n@media only screen and (max-width: 667px) {\n .tinv-wishlist.woocommerce .tinv-login form .form-row-first, .tinv-wishlist.woocommerce .tinv-login form .form-row-last {\n float: none;\n width: 100%; }\n .tinv-wishlist.woocommerce .tinv-login form .form-row-first {\n padding: 0; }\n .tinv-wishlist.woocommerce .tinv-login form .form-row-last {\n padding: 0;\n margin-top: 10px; }\n .tinv-wishlist.woocommerce .tinv-login form .tinvwl-input-group-btn {\n display: block;\n padding: 0;\n width: auto;\n margin-top: 10px; } }\n\n.tinv-overlay {\n width: 100%;\n height: 100%;\n visibility: hidden;\n opacity: 0;\n background: #191919; }\n\n.tinv-modal.tinv-modal-open .tinv-overlay {\n visibility: visible;\n opacity: .5; }\n\n.admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 32px !important; }\n\n.tinv-wishlist .tinv-modal {\n overflow-y: auto;\n overflow-x: hidden;\n width: 0;\n height: 0;\n z-index: 9999;\n outline: 0 !important;\n -webkit-backface-visibility: hidden;\n visibility: hidden;\n opacity: 0;\n text-align: left; }\n .tinv-wishlist .tinv-modal .tinv-modal-inner {\n position: relative;\n margin: 0 auto;\n background-color: #fff;\n max-width: 360px;\n padding: 40px; }\n .tinv-wishlist .tinv-modal.tinv-modal-open {\n visibility: visible;\n opacity: 1;\n width: 100%;\n height: 100%; }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n display: inline-block;\n position: absolute;\n top: 17px;\n right: 14px;\n width: 26px;\n height: 26px;\n line-height: 26px;\n font-size: 12px;\n text-align: center;\n border-radius: 50%;\n border-bottom: 0;\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n background-color: #ebe9eb; }\n .tinv-wishlist .tinv-modal .icon_big_heart_check, .tinv-wishlist .tinv-modal .icon_big_times, .tinv-wishlist .tinv-modal img {\n display: block;\n margin: 0 auto;\n margin-bottom: 25px;\n opacity: 1 !important; }\n .tinv-wishlist .tinv-modal ul {\n overflow: visible;\n list-style: disc;\n margin: 10px 0 0 20px; }\n .tinv-wishlist .tinv-modal li {\n list-style: disc !important; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal ul, .tinv-wishlist.tinv-create-list form ul {\n list-style: none !important;\n margin: 25px 0 0; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal li, .tinv-wishlist.tinv-create-list form li {\n list-style: none !important; }\n\n.tinv-wishlist .tinv-modal .already-in {\n margin-bottom: 35px; }\n\n.tinv-wishlist .tinv-modal .delete-notification {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinv-modal .already-in ul {\n overflow: visible;\n margin: 12px 0 27px 17px; }\n\n.tinv-wishlist .tinv-modal select {\n width: 100%; }\n\n.tinv-wishlist .tinv-modal button + .button, .tinv-wishlist .tinv-modal button + button {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal input + button {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal label + button, .tinv-wishlist .tinv-modal label + input {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal select + button, .tinv-wishlist .tinv-modal select + input {\n margin-top: 12px;\n width: 100%; }\n\n@media screen and (max-width: 782px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 46px !important; } }\n\n@media screen and (max-width: 600px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 0 !important; }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n position: static;\n display: block;\n margin: 0 auto 20px; } }\n\n.tinv-wishlist .tinv-modal .already-in + label {\n display: block;\n margin-top: 6px; }\n\n.tinv-wishlist .tinv-modal label select {\n margin-top: 8px; }\n\n.tinv-wishlist .tinv-modal .delete-notification + button {\n width: 100%; }\n\n.tinv-wishlist .tinvwl_added_to_wishlist, .tinv-wishlist .tinvwl_created_wishlist {\n text-align: center; }\n\n.tinv-wishlist .tinvwl_added_to_wishlist .tinv-txt {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinvwl_created_wishlist .tinv-txt {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinvwl_created_wishlist button {\n margin-top: 0;\n margin-bottom: 10px; }\n\n.woocommerce .tinv-wishlist .tinvwl_added_to_wishlist.tinv-modal button.button {\n margin-top: 0;\n margin-bottom: 10px; }\n\n.tinv-wishlist .tinv-modal .tinvwl-buttons-group {\n margin-top: 20px; }\n\n.tinv-wishlist .tinvwl-buttons-group button {\n width: 100%; }\n .tinv-wishlist .tinvwl-buttons-group button + button {\n margin-top: 7px; }\n .tinv-wishlist .tinvwl-buttons-group button i {\n position: relative; }\n .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-heart-o, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-key, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-times {\n font-size: 20px; }\n .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-heart-o::before, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-key::before, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-times::before {\n position: relative;\n top: 3px; }\n\n.tinv-wishlist .tinvwl-buttons-group + button {\n width: 100%;\n margin-top: 7px; }\n\n.tinv-wishlist .tinv-modal h2 {\n text-align: center;\n margin: 0 0 35px; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal-inner {\n max-width: 778px;\n padding: 30px; }\n\n.tinv-wishlist .tinvwl-has-error:not(.tinvwl-input-group), .tinv-wishlist .tinvwl-input-group.tinvwl-has-error .form-control {\n border: 2px solid #FF0000; }\n\n.tinv-wishlist .tinvwl-has-error:not(.tinvwl-input-group) {\n border: 2px solid #FF0000; }\n\n.tinv-wishlist .tinvwl-has-error + .tinvwl-error {\n padding: 5px 0 0 5px;\n color: #FF0000; }\n\n@media only screen and (max-width: 640px) {\n .navigation-button, .social-buttons, .tinv-lists-nav {\n margin-left: 12px;\n margin-right: 12px; } }\n\n.tinvwl-tooltip {\n display: none; }\n\n.tinvwl-input-group {\n position: relative;\n display: table;\n border-collapse: separate; }\n .tinvwl-input-group .form-control {\n position: relative;\n z-index: 1;\n float: left;\n height: 38px;\n width: 100%;\n margin-bottom: 0; }\n .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-left: 15px; }\n\n.tinv-wishlist .tinvwl-to-left .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-left: 10px; }\n\n.tinv-wishlist .tinv-search-form .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-left: 9px; }\n\n.tinvwl-input-group .form-control, .tinvwl-input-group-addon, .tinvwl-input-group-btn {\n display: table-cell; }\n\n.tinvwl-input-group-addon, .tinvwl-input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: top; }\n\n@media only screen and (max-width: 640px) {\n .tinvwl-input-group {\n width: 100%; } }\n\n@media only screen and (max-width: 667px) {\n .tinvwl-input-group:not(.tinvwl-no-full) {\n display: block; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn {\n display: block; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control {\n float: none; }\n .tinv-wishlist .tinv-search-form .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n padding-top: 10px;\n padding-left: 0; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n padding-top: 10px;\n padding-left: 0; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon > button, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon > input {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn > button, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn > input {\n width: 100%; } }\n\n.tinv-table {\n display: table;\n width: 100%;\n height: 100%; }\n\n.tinv-cell {\n display: table-cell;\n vertical-align: middle; }\n\n.tinv-wishlist .tinv-wishlist-clear {\n visibility: visible;\n width: auto;\n height: auto; }\n\n.tinv-wishlist-clear:before {\n content: \"\";\n display: table; }\n\n.tinv-wishlist-clear:after {\n content: \"\";\n display: table;\n clear: both; }\n\n.icon_big_heart_check {\n display: inline-block;\n width: 46px;\n height: 46px;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 60px; }\n\n.icon_big_times {\n display: inline-block;\n width: 46px;\n height: 46px;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 60px; }\n .icon_big_times::before {\n content: \"\\e904\";\n top: -7px;\n left: -7px;\n position: relative; }\n\n.icon_big_heart_check::before {\n content: \"\\e90a\";\n top: -7px;\n left: -7px;\n position: relative; }\n\n.tinvwl_add_to_wishlist_button.tinvwl-button.disabled-add-wishlist, .tinvwl_add_to_wishlist_button.disabled-add-wishlist {\n opacity: 0.5 !important;\n cursor: not-allowed; }\n\n.empty-name-wishlist {\n border-color: #FF0000 !important; }\n\n.tinvwl_remove_from_wishlist-text, .tinvwl_already_on_wishlist-text {\n display: none !important; }\n\n.tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_remove_from_wishlist-text, .tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_already_on_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_remove_from_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_already_on_wishlist-text {\n display: inline !important; }\n\n.tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_add_to_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_add_to_wishlist-text {\n display: none !important; }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n display: table-cell; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove {\n display: block; } }\n\n.tooltipped {\n position: relative; }\n\n.tooltipped::after {\n position: absolute;\n z-index: 1000000;\n display: none;\n padding: 0.5em 0.75em;\n font: normal normal 11px/1.5 -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n -webkit-font-smoothing: subpixel-antialiased;\n color: #fff;\n text-align: center;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-wrap: break-word;\n white-space: pre;\n pointer-events: none;\n content: attr(aria-label);\n background: #1b1f23;\n border-radius: 3px;\n opacity: 0; }\n\n.tooltipped::before {\n position: absolute;\n z-index: 1000001;\n display: none;\n width: 0;\n height: 0;\n color: #1b1f23;\n pointer-events: none;\n content: \"\";\n border: 6px solid transparent;\n opacity: 0; }\n\n@-webkit-keyframes tooltip-appear {\n from {\n opacity: 0; }\n to {\n opacity: 1; } }\n\n@keyframes tooltip-appear {\n from {\n opacity: 0; }\n to {\n opacity: 1; } }\n\n.tooltipped:hover::before, .tooltipped:hover::after,\n.tooltipped:active::before,\n.tooltipped:active::after,\n.tooltipped:focus::before,\n.tooltipped:focus::after {\n display: inline-block;\n text-decoration: none;\n -webkit-animation-name: tooltip-appear;\n animation-name: tooltip-appear;\n -webkit-animation-duration: 0.1s;\n animation-duration: 0.1s;\n -webkit-animation-fill-mode: forwards;\n animation-fill-mode: forwards;\n -webkit-animation-timing-function: ease-in;\n animation-timing-function: ease-in;\n -webkit-animation-delay: 0.4s;\n animation-delay: 0.4s; }\n\n.tooltipped-no-delay:hover::before, .tooltipped-no-delay:hover::after,\n.tooltipped-no-delay:active::before,\n.tooltipped-no-delay:active::after,\n.tooltipped-no-delay:focus::before,\n.tooltipped-no-delay:focus::after {\n -webkit-animation-delay: 0s;\n animation-delay: 0s; }\n\n.tooltipped-multiline:hover::after,\n.tooltipped-multiline:active::after,\n.tooltipped-multiline:focus::after {\n display: table-cell; }\n\n.tooltipped-s::after,\n.tooltipped-se::after,\n.tooltipped-sw::after {\n top: 100%;\n right: 50%;\n margin-top: 6px; }\n\n.tooltipped-s::before,\n.tooltipped-se::before,\n.tooltipped-sw::before {\n top: auto;\n right: 50%;\n bottom: -7px;\n margin-right: -6px;\n border-bottom-color: #1b1f23; }\n\n.tooltipped-se::after {\n right: auto;\n left: 50%;\n margin-left: -16px; }\n\n.tooltipped-sw::after {\n margin-right: -16px; }\n\n.tooltipped-n::after,\n.tooltipped-ne::after,\n.tooltipped-nw::after {\n right: 50%;\n bottom: 100%;\n margin-bottom: 6px; }\n\n.tooltipped-n::before,\n.tooltipped-ne::before,\n.tooltipped-nw::before {\n top: -7px;\n right: 50%;\n bottom: auto;\n margin-right: -6px;\n border-top-color: #1b1f23; }\n\n.tooltipped-ne::after {\n right: auto;\n left: 50%;\n margin-left: -16px; }\n\n.tooltipped-nw::after {\n margin-right: -16px; }\n\n.tooltipped-s::after,\n.tooltipped-n::after {\n -webkit-transform: translateX(50%);\n transform: translateX(50%); }\n\n.tooltipped-w::after {\n right: 100%;\n bottom: 50%;\n margin-right: 6px;\n -webkit-transform: translateY(50%);\n transform: translateY(50%); }\n\n.tooltipped-w::before {\n top: 50%;\n bottom: 50%;\n left: -7px;\n margin-top: -6px;\n border-left-color: #1b1f23; }\n\n.tooltipped-e::after {\n bottom: 50%;\n left: 100%;\n margin-left: 6px;\n -webkit-transform: translateY(50%);\n transform: translateY(50%); }\n\n.tooltipped-e::before {\n top: 50%;\n right: -7px;\n bottom: 50%;\n margin-top: -6px;\n border-right-color: #1b1f23; }\n\n.tooltipped-align-right-1::after,\n.tooltipped-align-right-2::after {\n right: 0;\n margin-right: 0; }\n\n.tooltipped-align-right-1::before {\n right: 10px; }\n\n.tooltipped-align-right-2::before {\n right: 15px; }\n\n.tooltipped-align-left-1::after,\n.tooltipped-align-left-2::after {\n left: 0;\n margin-left: 0; }\n\n.tooltipped-align-left-1::before {\n left: 5px; }\n\n.tooltipped-align-left-2::before {\n left: 10px; }\n\n.tooltipped-multiline::after {\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 250px;\n word-wrap: break-word;\n white-space: pre-line;\n border-collapse: separate; }\n\n.tooltipped-multiline.tooltipped-s::after, .tooltipped-multiline.tooltipped-n::after {\n right: auto;\n left: 50%;\n -webkit-transform: translateX(-50%);\n transform: translateX(-50%); }\n\n.tooltipped-multiline.tooltipped-w::after, .tooltipped-multiline.tooltipped-e::after {\n right: 100%; }\n\n@media screen and (min-width: 0 \\0 ) {\n .tooltipped-multiline::after {\n width: 250px; } }\n\n.tooltipped-sticky::before, .tooltipped-sticky::after {\n display: inline-block; }\n\n.tooltipped-sticky.tooltipped-multiline::after {\n display: table-cell; }\n\n.tinvwl-table-manage-list .component_table_item_price:before {\n font-family: 'FontAwesomeCP';\n font-size: 1rem;\n display: inline-block;\n -ms-filter: \"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)\";\n -webkit-transform: rotate(90deg);\n transform: rotate(90deg);\n content: \"\\e811\";\n margin: 0 12px 0 3px;\n opacity: .25; }\n"]}
|
1 |
+
{"version":3,"names":[],"mappings":"","sources":["public.css"],"file":"public.css","sourcesContent":["/*------------------------------------*\n\t$WEBFONT\n*------------------------------------*/\n/*------------------------------------------------------------------\nWooCommerce Wishlist Plugin custom webfont\n-------------------------------------------------------------------*/\n@font-face {\n font-family: 'tinvwl-webfont';\n src: url(\"../fonts/tinvwl-webfont.eot?xu2uyi\");\n src: url(\"../fonts/tinvwl-webfont.eot?xu2uyi#iefix\") format(\"embedded-opentype\"), url(\"../fonts/tinvwl-webfont.ttf?xu2uyi\") format(\"truetype\"), url(\"../fonts/tinvwl-webfont.woff?xu2uyi\") format(\"woff\"), url(\"../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont\") format(\"svg\");\n font-weight: normal;\n font-style: normal; }\n\n.ftinvwl {\n /* use !important to prevent issues with browser extensions that change fonts */\n font-family: 'tinvwl-webfont' !important;\n speak: none;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n /* Better Font Rendering =========== */\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale; }\n\n.ftinvwl-twitter:before {\n content: \"\\f099\"; }\n\n.ftinvwl-facebook:before {\n content: \"\\f09a\"; }\n\n.ftinvwl-facebook-f:before {\n content: \"\\f09a\"; }\n\n.ftinvwl-google:before {\n content: \"\\f0d5\"; }\n\n.ftinvwl-email:before {\n content: \"\\f0e0\"; }\n\n.ftinvwl-pinterest:before {\n content: \"\\f231\"; }\n\n.ftinvwl-whatsapp:before {\n content: \"\\f232\"; }\n\n.ftinvwl-clipboard:before {\n content: \"\\e911\"; }\n\n.ftinvwl-star:before {\n content: \"\\e912\"; }\n\n.ftinvwl-shopping-cart:before {\n content: \"\\e913\"; }\n\n.ftinvwl-magic:before {\n content: \"\\e914\"; }\n\n.ftinvwl-info:before {\n content: \"\\e915\"; }\n\n.ftinvwl-graduation-cap:before {\n content: \"\\e918\"; }\n\n.ftinvwl-floppy-o:before {\n content: \"\\e919\"; }\n\n.ftinvwl-eyedropper:before {\n content: \"\\e91a\"; }\n\n.ftinvwl-exclamation-triangle:before {\n content: \"\\e91b\"; }\n\n.ftinvwl-check:before {\n content: \"\\e91e\"; }\n\n.ftinvwl-arrow-left:before {\n content: \"\\e91f\"; }\n\n.ftinvwl-wrench:before {\n content: \"\\e920\"; }\n\n.ftinvwl-chevron-down:before {\n content: \"\\e900\"; }\n\n.ftinvwl-chevron-right:before {\n content: \"\\e901\"; }\n\n.ftinvwl-chevron-left:before {\n content: \"\\e902\"; }\n\n.ftinvwl-chevron-up:before {\n content: \"\\e903\"; }\n\n.ftinvwl-cancel:before {\n content: \"\\e904\"; }\n\n.ftinvwl-times:before {\n content: \"\\e905\"; }\n\n.ftinvwl-heart-plus:before {\n content: \"\\e906\"; }\n\n.ftinvwl-heart-mark-right:before {\n content: \"\\e907\"; }\n\n.ftinvwl-heart2:before {\n content: \"\\e908\"; }\n\n.ftinvwl-heart-o:before {\n content: \"\\e909\"; }\n\n.ftinvwl-heart-mark-left:before {\n content: \"\\e90a\"; }\n\n.ftinvwl-heart-mail:before {\n content: \"\\e90b\"; }\n\n.ftinvwl-heart-tinv:before {\n content: \"\\e90c\"; }\n\n.ftinvwl-key:before {\n content: \"\\e90d\"; }\n\n.ftinvwl-lock:before {\n content: \"\\e90e\"; }\n\n.ftinvwl-hearts:before {\n content: \"\\e90f\"; }\n\n.ftinvwl-user:before {\n content: \"\\e910\"; }\n\n/* PULSE */\n@-webkit-keyframes ftinvwl-pulse {\n 0% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); }\n 50% {\n -webkit-transform: scale(0.8);\n transform: scale(0.8); }\n 100% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); } }\n\n@keyframes ftinvwl-pulse {\n 0% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); }\n 50% {\n -webkit-transform: scale(0.8);\n transform: scale(0.8); }\n 100% {\n -webkit-transform: scale(1.1);\n transform: scale(1.1); } }\n\n.ftinvwl-pulse.ftinvwl-animated::before {\n -webkit-animation: ftinvwl-pulse 2s linear infinite;\n animation: ftinvwl-pulse 2s linear infinite; }\n\n.tinv-wishlist form, .tinv-wishlist p:last-child, .tinv-wishlist table {\n margin-bottom: 0; }\n\n.tinv-wishlist * {\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n\n.tinvwl-wishlist :after, .tinvwl-wishlist :before {\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n\n.tinv-wishlist select {\n width: 140px; }\n\n.tinv-wishlist ul {\n list-style: none;\n margin: 0;\n padding: 0; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {\n margin-top: -10px;\n margin-left: -10px; }\n\n.woocommerce.tinv-wishlist #respond input#submit.alt, .woocommerce.tinv-wishlist a.button.alt, .woocommerce.tinv-wishlist button.button.alt, .woocommerce.tinv-wishlist input.button.alt {\n text-align: center; }\n\n.tinv-wishlist .button i, .tinv-wishlist .navigation-button a i {\n margin-right: 6px; }\n\n.tinv-wishlist input[type=\"button\"] i, .tinv-wishlist input[type=\"reset\"] i, .tinv-wishlist input[type=\"submit\"] i {\n margin-right: 6px; }\n\n.tinv-wishlist a.tinv-close-modal i {\n margin-right: 0; }\n\na.wishlist_products_counter {\n text-decoration: none; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button:before, a.wishlist_products_counter.top_wishlist-heart:before, span.wishlist_products_counter.top_wishlist-heart:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart:before {\n content: '\\e909';\n display: inline-block;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 20px;\n vertical-align: sub;\n margin-right: 5px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus:before, a.wishlist_products_counter.top_wishlist-heart-plus:before, span.wishlist_products_counter.top_wishlist-heart-plus:before, a.sidr-class-wishlist_products_counter.sidr-class-top_wishlist-heart-plus:before {\n content: '\\e906';\n display: inline-block;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 20px;\n vertical-align: sub;\n margin-right: 5px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {\n position: relative;\n width: 36px;\n height: 36px;\n vertical-align: sub; }\n\na.wishlist_products_counter.top_wishlist-heart-plus.no-txt, span.wishlist_products_counter.top_wishlist-heart-plus.no-txt {\n position: relative;\n width: 36px;\n height: 36px;\n vertical-align: sub; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:before, .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {\n position: absolute;\n top: 50%;\n left: 50%;\n margin-right: 0; }\n\n.tinv-wishlist .tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt, .tinv-wishlist .tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {\n padding-left: 1em;\n vertical-align: bottom; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before {\n content: '\\e908'; }\n\n.woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart.tinvwl_add_to_wishlist_button.tinvwl-product-in-list:before, a.wishlist_products_counter.top_wishlist-heart.wishlist-counter-with-products:before, span.wishlist_products_counter.top_wishlist-heart.wishlist-counter-with-products:before {\n content: '\\e908'; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.tinvwl-product-in-list:before, .woocommerce ul.products li.product a.tinvwl-button.tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.tinvwl-product-in-list:before, .woocommerce-page ul.products li.product a.tinvwl-button.tinvwl-icon-heart-plus.tinvwl_add_to_wishlist_button.tinvwl-product-in-list:before, a.wishlist_products_counter.top_wishlist-heart-plus.wishlist-counter-with-products:before, span.wishlist_products_counter.top_wishlist-heart-plus.wishlist-counter-with-products:before {\n content: '\\e907'; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.icon-white:before, a.wishlist_products_counter.top_wishlist-white:before, span.wishlist_products_counter.top_wishlist-white:before {\n color: #FFF; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.icon-black:before, a.wishlist_products_counter.top_wishlist-black:before, span.wishlist_products_counter.top_wishlist-black:before {\n color: #000; }\n\n.tinv-wishlist.tinvwl-before-add-to-cart .tinvwl_add_to_wishlist_button {\n margin-bottom: 15px; }\n\n.tinv-wishlist.tinvwl-after-add-to-cart .tinvwl_add_to_wishlist_button {\n margin-top: 15px; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt {\n padding: 10px 11px;\n line-height: 1; }\n\na.wishlist_products_counter.top_wishlist-custom.no-txt, span.wishlist_products_counter.top_wishlist-custom.no-txt {\n padding: 10px 11px;\n line-height: 1; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom img, a.wishlist_products_counter.top_wishlist-custom img, span.wishlist_products_counter.top_wishlist-custom img {\n display: inline-block !important;\n vertical-align: baseline;\n width: auto !important;\n max-width: 16px;\n max-height: 16px;\n margin-bottom: 0;\n margin: 0 6px 0 0 !important; }\n\n.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt img, a.wishlist_products_counter.top_wishlist-custom.no-txt img, span.wishlist_products_counter.top_wishlist-custom.no-txt img {\n margin-right: 0 !important; }\n\n.single-product div.product form.cart .tinvwl-button.tinvwl_add_to_wishlist_button, div.product form.cart .tinvwl_add_to_wishlist_button {\n float: none; }\n\nul.products li.product .tinvwl_add_to_wishlist_button {\n margin-top: 1em; }\n\n.tinvwl_add_to_wishlist_button {\n display: inline-block;\n cursor: pointer;\n -webkit-transition: opacity 1s;\n transition: opacity 1s;\n opacity: 1;\n visibility: visible; }\n\n.tinv-wishlist.woocommerce .stock.in-stock:before {\n content: none; }\n\n.tinv-wraper.tinv-wishlist {\n font-size: 100%; }\n\n.tinv-create-list li input[type=radio] {\n margin-right: 10px; }\n\n.tinv-create-list li + li {\n margin-top: 15px; }\n\n.tinv-create-list .tinvwl-input-group + ul {\n margin-top: 25px; }\n\n.tinv-search-list {\n margin-bottom: 36px; }\n\n.tinv-wishlist .tinv-header {\n margin-bottom: 30px; }\n\n.tinv-wishlist table {\n position: relative;\n table-layout: auto;\n margin-bottom: 30px;\n z-index: 2; }\n\n.tinv-overlay {\n top: 0;\n left: 0;\n position: fixed;\n -webkit-transition: opacity .3s ease, visibility .3s ease;\n transition: opacity .3s ease, visibility .3s ease; }\n\n.tinv-wishlist .tinv-modal {\n top: 0;\n left: 0;\n position: fixed;\n -webkit-transition: opacity .3s ease, visibility .3s ease;\n transition: opacity .3s ease, visibility .3s ease; }\n\n.tinv-wishlist table.tinvwl-table-manage-list {\n margin-bottom: 27px;\n width: 100%; }\n\n.tinv-wishlist table input[type=checkbox] {\n margin-right: 0; }\n\n.tinv-wishlist table td, .tinv-wishlist table th {\n padding: 1em;\n vertical-align: middle; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-cb {\n width: 35px;\n text-align: center; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-remove {\n width: 35px;\n text-align: center;\n padding: 1em .5em; }\n\n.tinv-wishlist .product-remove button {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -ms-flex-line-pack: center;\n align-content: center;\n margin: 0 auto;\n width: 27px;\n height: 27px;\n border-radius: 50%;\n padding: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n border: none;\n background-color: #f7f7f7;\n color: #000000;\n font-size: 20px;\n padding-left: 1px;\n padding-top: 3px; }\n\n.tinv-wishlist .product-thumbnail {\n min-width: 100px;\n width: 100px; }\n .tinv-wishlist .product-thumbnail .wp-post-image {\n margin-bottom: 0; }\n\n.tinv-wishlist td.product-name a + .variation {\n margin-top: 2px; }\n\n.tinv-wishlist .product-stock i {\n margin-right: 15px; }\n\n.tinv-wishlist .product-stock p {\n display: table; }\n\n.tinv-wishlist .product-stock span {\n display: table-cell;\n vertical-align: middle; }\n\n.tinv-wishlist .product-action > .button > i, .tinv-wishlist .tinvwl-table-manage-list .product-action button[name=tinvwl-remove], .tinv-wishlist table thead th .tinvwl-mobile {\n display: none; }\n\n.tinv-wishlist.woocommerce .product-quantity {\n width: 80px;\n text-align: center; }\n\n.tinv-wishlist.woocommerce table .quantity .qty {\n max-width: 100%;\n width: 62px;\n text-align: left; }\n\n.tinv-wishlist .product-action {\n width: 135px;\n text-align: center; }\n .tinv-wishlist .product-action .button {\n width: 100%; }\n .tinv-wishlist .product-action .tinvwl_move_product_button {\n margin-top: 5px; }\n\n.tinv-wishlist .tinvwl-table-manage-list .product-action > button[name=tinvwl-remove] > i {\n margin-right: 0; }\n\n.tinv-wishlist .wishlist-cb {\n width: 33px;\n text-align: center; }\n\n.tinv-wishlist .wishlist-name .tinvwl-rename-input input {\n width: 100%; }\n\n.tinv-wishlist .wishlist-name .tinvwl-rename-button {\n float: right; }\n .tinv-wishlist .wishlist-name .tinvwl-rename-button > i {\n margin-right: 10px; }\n\n.tinv-wishlist .wishlist-privacy, .tinv-wishlist table:not(.tinvwl-public) .wishlist-date {\n width: 18%; }\n\n.tinv-wishlist .wishlist-privacy select {\n width: 100%; }\n\n.tinv-wishlist .wishlist-name {\n width: 45%; }\n\n.tinv-wishlist .wishlist-action {\n width: 120px;\n text-align: center; }\n .tinv-wishlist .wishlist-action button[value=manage_remove] > i {\n display: none;\n margin-right: 0; }\n\n.tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list {\n display: inline-block;\n vertical-align: middle; }\n .tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list > a.button {\n margin-right: 0; }\n\n.tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: -10px; }\n\n.tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n float: left;\n width: 35%;\n margin-right: 2%; }\n\n.tinv-wishlist tfoot .tinvwl-to-right {\n float: left;\n width: 63%;\n text-align: right; }\n .tinv-wishlist tfoot .tinvwl-to-right > * {\n margin: 10px 0 0;\n vertical-align: middle; }\n .tinv-wishlist tfoot .tinvwl-to-right > * + * {\n margin-left: 10px; }\n\n.tinv-wishlist tfoot .tinvwl-to-left:empty + .tinvwl-to-right {\n width: 100%; }\n\n.tinv-wishlist .social-buttons + .tinv-wishlist-clear + .navigation-button {\n margin-top: 16px; }\n\n.tinv-wishlist .navigation-button {\n margin-top: -10px; }\n .tinv-wishlist .navigation-button > li {\n float: left; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a, .tinv-wishlist .navigation-button > li > a {\n margin-right: 30px;\n margin-top: 10px;\n display: inline-block; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a.button, .tinv-wishlist .navigation-button > li > a.button {\n margin-right: 10px; }\n .tinv-wishlist .navigation-button > li:last-child > .tinv-create-list > a, .tinv-wishlist .navigation-button > li:last-child > a {\n margin-right: 0; }\n\n.tinv-wishlist .social-buttons {\n text-align: right; }\n .tinv-wishlist .social-buttons > span, .tinv-wishlist .social-buttons > ul {\n display: inline-block;\n vertical-align: middle; }\n .tinv-wishlist .social-buttons > span {\n margin-right: 27px; }\n .tinv-wishlist .social-buttons li {\n float: left;\n margin-right: 5px;\n list-style: none; }\n .tinv-wishlist .social-buttons li:last-child {\n margin-right: 0; }\n .tinv-wishlist .social-buttons li a.social {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-line-pack: center;\n align-content: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n border-radius: 50%;\n text-align: center;\n -webkit-box-shadow: none;\n box-shadow: none;\n border: 0;\n font-size: 20px;\n text-decoration: none;\n text-transform: none !important; }\n .tinv-wishlist .social-buttons li a.social.white {\n color: #ffffff; }\n .tinv-wishlist .social-buttons li a.social.dark {\n color: #000000; }\n .tinv-wishlist .social-buttons li a.social i {\n line-height: 2em; }\n\n.tinv-wishlist .navigation-button .tinv-create-list > a.tinvwl-no-icon > i, .tinv-wishlist .navigation-button li > a.tinvwl-no-icon > i {\n display: none; }\n\n.tinv-wishlist .tinv-lists-nav {\n margin-top: 35px;\n margin-bottom: 35px;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n width: 100%; }\n .tinv-wishlist .tinv-lists-nav > * {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n text-align: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center; }\n .tinv-wishlist .tinv-lists-nav > span {\n font-weight: 700; }\n\n.tinv-wishlist .tinv-next {\n display: inline-block;\n float: left; }\n\n.tinv-wishlist .tinv-prev {\n display: inline-block;\n float: left;\n margin-right: 35px !important; }\n\n.tinv-wishlist .tinv-prev i {\n margin-left: 0;\n margin-right: 18px; }\n\n.tinv-wishlist .tinv-next i {\n margin-left: 18px;\n margin-right: 0; }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-lists:not(.tinvwl-public) {\n margin-top: 0; }\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n display: none; }\n .tinv-wishlist .tinvwl-table-manage-list .product-action button[name=tinvwl-remove] {\n display: inline-block;\n margin-top: 5px; }\n .tinv-wishlist .product-action {\n width: 60px; } }\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock p {\n display: block;\n text-align: center; }\n .tinv-wishlist .product-stock span {\n display: block; }\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock i {\n margin-right: 0; }\n .tinv-wishlist .tinvwl-table-manage-list td.product-stock .tinvwl-txt {\n display: none; }\n .tinv-wishlist .product-thumbnail {\n max-width: 76px;\n width: 76px; }\n .tinv-wishlist .product-action .button > i {\n display: inline-block;\n margin-right: 0; }\n .tinv-wishlist .product-action .button .tinvwl-txt {\n display: none; } }\n\n@media only screen and (max-width: 1023px) {\n .tinv-wishlist .tinv-lists-nav a.tinv-prev > i, .tinv-wishlist .tinv-lists-nav a.tinv-next > i {\n margin: 0; }\n .tinv-wishlist .tinv-lists-nav a.tinv-prev > span, .tinv-wishlist .tinv-lists-nav a.tinv-next > span {\n display: none; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove, .tinv-wishlist table.tinvwl-table-manage-list thead th:not(.product-name) {\n display: none; }\n .tinv-wishlist table.tinvwl-table-manage-lists thead th:not(.wishlist-name) {\n display: none; }\n .tinv-wishlist thead th .tinvwl-full {\n display: none; }\n .tinv-wishlist table.tinvwl-table-manage-list thead th.product-name, .tinv-wishlist table.tinvwl-table-manage-lists thead th.wishlist-name {\n display: block;\n width: 100%;\n text-align: center; }\n .tinv-wishlist table thead th .tinvwl-mobile {\n display: block; }\n .tinv-wishlist table.tinvwl-table-manage-list tbody td {\n display: block;\n width: 100% !important;\n text-align: center; }\n .tinv-wishlist table.tinvwl-table-manage-lists tbody td, .tinv-wishlist table.tinvwl-table-manage-lists.tinvwl-public tbody td {\n display: block;\n width: 100% !important;\n text-align: center; }\n .tinv-wishlist table.tinvwl-table-manage-list tbody td:not(:last-child) {\n border-bottom: 0; }\n .tinv-wishlist table.tinvwl-table-manage-lists tbody td:not(:last-child), .tinv-wishlist table.tinvwl-table-manage-lists.tinvwl-public tbody td:not(:last-child) {\n border-bottom: 0; }\n .tinv-wishlist .product-stock p {\n margin: 0 auto; }\n .tinv-wishlist .product-thumbnail img {\n margin: 0 auto;\n max-width: 80px; }\n .tinv-wishlist.woocommerce table .quantity .qty {\n text-align: center;\n width: 100%; }\n .tinv-wishlist .product-action .tinvwl_move_product_button {\n margin-top: 10px; }\n .tinv-wishlist table.tinvwl-table-manage-list tfoot td {\n display: block;\n width: 100%; }\n .tinv-wishlist table.tinvwl-table-manage-lists .wishlist-action button[value=manage_remove] {\n width: 100%; }\n .tinv-wishlist table.tinvwl-table-manage-lists .wishlist-name .tinvwl-rename-button {\n float: none; } }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .wishlist-name .tinvwl-rename-button > i, .tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n margin-right: 0; }\n .tinv-wishlist .wishlist-name .tinvwl-rename-button span {\n display: none; }\n .tinv-wishlist .wishlist-action {\n width: 60px; }\n .tinv-wishlist tfoot .tinvwl-to-left:not(:empty) {\n float: none;\n width: auto; }\n .tinv-wishlist tfoot .tinvwl-to-right {\n float: none;\n width: auto;\n text-align: left; } }\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist .wishlist-action button[value=\"manage_remove\"] span {\n display: none; }\n .tinv-wishlist .wishlist-action button[value=\"manage_remove\"] > i {\n display: inline-block; }\n .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: 0; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist button[value=\"manage_apply\"] .tinvwl-mobile, .tinv-wishlist button[value=\"product_apply\"] .tinvwl-mobile {\n display: none; }\n .tinv-wishlist tfoot .tinvwl-to-right .tinv-create-list {\n display: block; }\n .tinv-wishlist .tinvwl-table-manage-list tfoot .tinvwl-to-right .button, .tinv-wishlist .tinvwl-table-manage-list tfoot .tinvwl-to-right button {\n width: 100%;\n margin: 10px 0 0; }\n .tinv-wishlist .tinvwl-table-manage-lists tfoot .tinvwl-to-right .button, .tinv-wishlist .tinvwl-table-manage-lists tfoot .tinvwl-to-right button {\n width: 100%;\n margin: 10px 0 0; }\n .tinv-wishlist tfoot .tinvwl-to-right > * {\n margin: 10px 0 0; }\n .tinv-wishlist tfoot .tinvwl-to-right .button:first-child, .tinv-wishlist tfoot .tinvwl-to-right button:first-child {\n margin-top: 0 !important; }\n .tinv-wishlist tfoot .tinvwl-to-left + .tinvwl-to-right {\n margin-top: 20px; } }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .social-buttons {\n float: none;\n width: auto;\n text-align: left;\n margin-top: 20px; }\n .tinv-wishlist .social-buttons + .tinv-wishlist-clear + .navigation-button {\n margin-top: 30px; }\n .tinv-wishlist .tinv-login form input[name=login] {\n min-width: auto; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist .social-buttons {\n text-align: center; }\n .tinv-wishlist .navigation-button > li {\n width: 20%;\n text-align: center; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-1 > li {\n width: 100%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-2 > li {\n width: 50%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-3 > li {\n width: 33%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-4 > li {\n width: 25%; }\n .tinv-wishlist .navigation-button > li + li {\n width: 20%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-1 > li + li {\n width: 100%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-2 > li + li {\n width: 50%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-3 > li + li {\n width: 33%; }\n .tinv-wishlist .navigation-button.tinvwl-btns-count-4 > li + li {\n width: 25%; }\n .tinv-wishlist .navigation-button > li > .tinv-create-list > a, .tinv-wishlist .navigation-button > li > a {\n width: calc(100% - 10px);\n margin-right: 0; }\n .tinv-wishlist .navigation-button .tinv-create-list > a .tinvwl-txt, .tinv-wishlist .navigation-button li > a .tinvwl-txt {\n display: none; }\n .tinv-wishlist .navigation-button .tinv-create-list > a > i, .tinv-wishlist .navigation-button li > a > i {\n display: inline-block !important;\n margin-right: 0; }\n .tinv-wishlist .social-buttons > span {\n display: block;\n margin-top: 0;\n margin-right: 0;\n margin-bottom: 5px; } }\n\n@media only screen and (max-width: 667px) {\n .tinv-wishlist.woocommerce .tinv-login form .form-row-first, .tinv-wishlist.woocommerce .tinv-login form .form-row-last {\n float: none;\n width: 100%; }\n .tinv-wishlist.woocommerce .tinv-login form .form-row-first {\n padding: 0; }\n .tinv-wishlist.woocommerce .tinv-login form .form-row-last {\n padding: 0;\n margin-top: 10px; }\n .tinv-wishlist.woocommerce .tinv-login form .tinvwl-input-group-btn {\n display: block;\n padding: 0;\n width: auto;\n margin-top: 10px; } }\n\n.tinv-overlay {\n width: 100%;\n height: 100%;\n visibility: hidden;\n opacity: 0;\n background: #191919; }\n\n.tinv-modal.tinv-modal-open .tinv-overlay {\n visibility: visible;\n opacity: .5; }\n\n.admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 32px !important; }\n\n.tinv-wishlist .tinv-modal {\n overflow-y: auto;\n overflow-x: hidden;\n width: 0;\n height: 0;\n z-index: 9999;\n outline: 0 !important;\n -webkit-backface-visibility: hidden;\n visibility: hidden;\n opacity: 0;\n text-align: left; }\n .tinv-wishlist .tinv-modal .tinv-modal-inner {\n position: relative;\n margin: 0 auto;\n background-color: #fff;\n max-width: 360px;\n padding: 40px; }\n .tinv-wishlist .tinv-modal.tinv-modal-open {\n visibility: visible;\n opacity: 1;\n width: 100%;\n height: 100%; }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n display: inline-block;\n position: absolute;\n top: 17px;\n right: 14px;\n width: 26px;\n height: 26px;\n line-height: 26px;\n font-size: 12px;\n text-align: center;\n border-radius: 50%;\n border-bottom: 0;\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n background-color: #ebe9eb; }\n .tinv-wishlist .tinv-modal .icon_big_heart_check, .tinv-wishlist .tinv-modal .icon_big_times, .tinv-wishlist .tinv-modal img {\n display: block;\n margin: 0 auto;\n margin-bottom: 25px;\n opacity: 1 !important; }\n .tinv-wishlist .tinv-modal ul {\n overflow: visible;\n list-style: disc;\n margin: 10px 0 0 20px; }\n .tinv-wishlist .tinv-modal li {\n list-style: disc !important; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal ul, .tinv-wishlist.tinv-create-list form ul {\n list-style: none !important;\n margin: 25px 0 0; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal li, .tinv-wishlist.tinv-create-list form li {\n list-style: none !important; }\n\n.tinv-wishlist .tinv-modal .already-in {\n margin-bottom: 35px; }\n\n.tinv-wishlist .tinv-modal .delete-notification {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinv-modal .already-in ul {\n overflow: visible;\n margin: 12px 0 27px 17px; }\n\n.tinv-wishlist .tinv-modal select {\n width: 100%; }\n\n.tinv-wishlist .tinv-modal button + .button, .tinv-wishlist .tinv-modal button + button {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal input + button {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal label + button, .tinv-wishlist .tinv-modal label + input {\n margin-top: 12px;\n width: 100%; }\n\n.tinv-wishlist .tinv-modal select + button, .tinv-wishlist .tinv-modal select + input {\n margin-top: 12px;\n width: 100%; }\n\n@media screen and (max-width: 782px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 46px !important; } }\n\n@media screen and (max-width: 600px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 0 !important; }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n position: static;\n display: block;\n margin: 0 auto 20px; } }\n\n.tinv-wishlist .tinv-modal .already-in + label {\n display: block;\n margin-top: 6px; }\n\n.tinv-wishlist .tinv-modal label select {\n margin-top: 8px; }\n\n.tinv-wishlist .tinv-modal .delete-notification + button {\n width: 100%; }\n\n.tinv-wishlist .tinvwl_added_to_wishlist, .tinv-wishlist .tinvwl_created_wishlist {\n text-align: center; }\n\n.tinv-wishlist .tinvwl_added_to_wishlist .tinv-txt {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinvwl_created_wishlist .tinv-txt {\n margin-bottom: 25px; }\n\n.tinv-wishlist .tinvwl_created_wishlist button {\n margin-top: 0;\n margin-bottom: 10px; }\n\n.woocommerce .tinv-wishlist .tinvwl_added_to_wishlist.tinv-modal button.button {\n margin-top: 0;\n margin-bottom: 10px; }\n\n.tinv-wishlist .tinv-modal .tinvwl-buttons-group {\n margin-top: 20px; }\n\n.tinv-wishlist .tinvwl-buttons-group button {\n width: 100%; }\n .tinv-wishlist .tinvwl-buttons-group button + button {\n margin-top: 7px; }\n .tinv-wishlist .tinvwl-buttons-group button i {\n position: relative; }\n .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-heart-o, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-key, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-times {\n font-size: 20px; }\n .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-heart-o::before, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-key::before, .tinv-wishlist .tinvwl-buttons-group button i.ftinvwl-times::before {\n position: relative;\n top: 3px; }\n\n.tinv-wishlist .tinvwl-buttons-group + button {\n width: 100%;\n margin-top: 7px; }\n\n.tinv-wishlist .tinv-modal h2 {\n text-align: center;\n margin: 0 0 35px; }\n\n.tinv-wishlist .tinv-create-list .tinv-modal-inner {\n max-width: 778px;\n padding: 30px; }\n\n.tinv-wishlist .tinvwl-has-error:not(.tinvwl-input-group), .tinv-wishlist .tinvwl-input-group.tinvwl-has-error .form-control {\n border: 2px solid #FF0000; }\n\n.tinv-wishlist .tinvwl-has-error:not(.tinvwl-input-group) {\n border: 2px solid #FF0000; }\n\n.tinv-wishlist .tinvwl-has-error + .tinvwl-error {\n padding: 5px 0 0 5px;\n color: #FF0000; }\n\n@media only screen and (max-width: 640px) {\n .navigation-button, .social-buttons, .tinv-lists-nav {\n margin-left: 12px;\n margin-right: 12px; } }\n\n.tinvwl-tooltip {\n display: none; }\n\n.tinvwl-input-group {\n position: relative;\n display: table;\n border-collapse: separate; }\n .tinvwl-input-group .form-control {\n position: relative;\n z-index: 1;\n float: left;\n height: 38px;\n width: 100%;\n margin-bottom: 0; }\n .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-left: 15px; }\n\n.tinv-wishlist .tinvwl-to-left .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-left: 10px; }\n\n.tinv-wishlist .tinv-search-form .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n padding-left: 9px; }\n\n.tinvwl-input-group .form-control, .tinvwl-input-group-addon, .tinvwl-input-group-btn {\n display: table-cell; }\n\n.tinvwl-input-group-addon, .tinvwl-input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: top; }\n\n@media only screen and (max-width: 640px) {\n .tinvwl-input-group {\n width: 100%; } }\n\n@media only screen and (max-width: 667px) {\n .tinvwl-input-group:not(.tinvwl-no-full) {\n display: block; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn {\n display: block; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control {\n float: none; }\n .tinv-wishlist .tinv-search-form .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n padding-top: 10px;\n padding-left: 0; }\n .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n padding-top: 10px;\n padding-left: 0; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon > button, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-addon > input {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn {\n width: 100%; }\n .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn > button, .tinvwl-input-group:not(.tinvwl-no-full) .tinvwl-input-group-btn > input {\n width: 100%; } }\n\n.tinv-table {\n display: table;\n width: 100%;\n height: 100%; }\n\n.tinv-cell {\n display: table-cell;\n vertical-align: middle; }\n\n.tinv-wishlist .tinv-wishlist-clear {\n visibility: visible;\n width: auto;\n height: auto; }\n\n.tinv-wishlist-clear:before {\n content: \"\";\n display: table; }\n\n.tinv-wishlist-clear:after {\n content: \"\";\n display: table;\n clear: both; }\n\n.icon_big_heart_check {\n display: inline-block;\n width: 46px;\n height: 46px;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 60px; }\n\n.icon_big_times {\n display: inline-block;\n width: 46px;\n height: 46px;\n font-family: tinvwl-webfont !important;\n speak: none;\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: 60px; }\n .icon_big_times::before {\n content: \"\\e904\";\n top: -7px;\n left: -7px;\n position: relative; }\n\n.icon_big_heart_check::before {\n content: \"\\e90a\";\n top: -7px;\n left: -7px;\n position: relative; }\n\n.tinvwl_add_to_wishlist_button.tinvwl-button.disabled-add-wishlist, .tinvwl_add_to_wishlist_button.disabled-add-wishlist {\n opacity: 0.5 !important;\n cursor: not-allowed; }\n\n.empty-name-wishlist {\n border-color: #FF0000 !important; }\n\n.tinvwl_remove_from_wishlist-text, .tinvwl_already_on_wishlist-text {\n display: none !important; }\n\n.tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_remove_from_wishlist-text, .tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_already_on_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_remove_from_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_already_on_wishlist-text {\n display: inline !important; }\n\n.tinvwl-product-in-list.tinvwl-product-make-remove .tinvwl_add_to_wishlist-text, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist .tinvwl_add_to_wishlist-text {\n display: none !important; }\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n display: table-cell; } }\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove {\n display: block; } }\n\n.tooltipped {\n position: relative; }\n\n.tooltipped::after {\n position: absolute;\n z-index: 1000000;\n display: none;\n padding: 0.5em 0.75em;\n font: normal normal 11px/1.5 -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n -webkit-font-smoothing: subpixel-antialiased;\n color: #fff;\n text-align: center;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-wrap: break-word;\n white-space: pre;\n pointer-events: none;\n content: attr(aria-label);\n background: #1b1f23;\n border-radius: 3px;\n opacity: 0; }\n\n.tooltipped::before {\n position: absolute;\n z-index: 1000001;\n display: none;\n width: 0;\n height: 0;\n color: #1b1f23;\n pointer-events: none;\n content: \"\";\n border: 6px solid transparent;\n opacity: 0; }\n\n@-webkit-keyframes tooltip-appear {\n from {\n opacity: 0; }\n to {\n opacity: 1; } }\n\n@keyframes tooltip-appear {\n from {\n opacity: 0; }\n to {\n opacity: 1; } }\n\n.tooltipped:hover::before, .tooltipped:hover::after,\n.tooltipped:active::before,\n.tooltipped:active::after,\n.tooltipped:focus::before,\n.tooltipped:focus::after {\n display: inline-block;\n text-decoration: none;\n -webkit-animation-name: tooltip-appear;\n animation-name: tooltip-appear;\n -webkit-animation-duration: 0.1s;\n animation-duration: 0.1s;\n -webkit-animation-fill-mode: forwards;\n animation-fill-mode: forwards;\n -webkit-animation-timing-function: ease-in;\n animation-timing-function: ease-in;\n -webkit-animation-delay: 0.4s;\n animation-delay: 0.4s; }\n\n.tooltipped-no-delay:hover::before, .tooltipped-no-delay:hover::after,\n.tooltipped-no-delay:active::before,\n.tooltipped-no-delay:active::after,\n.tooltipped-no-delay:focus::before,\n.tooltipped-no-delay:focus::after {\n -webkit-animation-delay: 0s;\n animation-delay: 0s; }\n\n.tooltipped-multiline:hover::after,\n.tooltipped-multiline:active::after,\n.tooltipped-multiline:focus::after {\n display: table-cell; }\n\n.tooltipped-s::after,\n.tooltipped-se::after,\n.tooltipped-sw::after {\n top: 100%;\n right: 50%;\n margin-top: 6px; }\n\n.tooltipped-s::before,\n.tooltipped-se::before,\n.tooltipped-sw::before {\n top: auto;\n right: 50%;\n bottom: -7px;\n margin-right: -6px;\n border-bottom-color: #1b1f23; }\n\n.tooltipped-se::after {\n right: auto;\n left: 50%;\n margin-left: -16px; }\n\n.tooltipped-sw::after {\n margin-right: -16px; }\n\n.tooltipped-n::after,\n.tooltipped-ne::after,\n.tooltipped-nw::after {\n right: 50%;\n bottom: 100%;\n margin-bottom: 6px; }\n\n.tooltipped-n::before,\n.tooltipped-ne::before,\n.tooltipped-nw::before {\n top: -7px;\n right: 50%;\n bottom: auto;\n margin-right: -6px;\n border-top-color: #1b1f23; }\n\n.tooltipped-ne::after {\n right: auto;\n left: 50%;\n margin-left: -16px; }\n\n.tooltipped-nw::after {\n margin-right: -16px; }\n\n.tooltipped-s::after,\n.tooltipped-n::after {\n -webkit-transform: translateX(50%);\n transform: translateX(50%); }\n\n.tooltipped-w::after {\n right: 100%;\n bottom: 50%;\n margin-right: 6px;\n -webkit-transform: translateY(50%);\n transform: translateY(50%); }\n\n.tooltipped-w::before {\n top: 50%;\n bottom: 50%;\n left: -7px;\n margin-top: -6px;\n border-left-color: #1b1f23; }\n\n.tooltipped-e::after {\n bottom: 50%;\n left: 100%;\n margin-left: 6px;\n -webkit-transform: translateY(50%);\n transform: translateY(50%); }\n\n.tooltipped-e::before {\n top: 50%;\n right: -7px;\n bottom: 50%;\n margin-top: -6px;\n border-right-color: #1b1f23; }\n\n.tooltipped-align-right-1::after,\n.tooltipped-align-right-2::after {\n right: 0;\n margin-right: 0; }\n\n.tooltipped-align-right-1::before {\n right: 10px; }\n\n.tooltipped-align-right-2::before {\n right: 15px; }\n\n.tooltipped-align-left-1::after,\n.tooltipped-align-left-2::after {\n left: 0;\n margin-left: 0; }\n\n.tooltipped-align-left-1::before {\n left: 5px; }\n\n.tooltipped-align-left-2::before {\n left: 10px; }\n\n.tooltipped-multiline::after {\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 250px;\n word-wrap: break-word;\n white-space: pre-line;\n border-collapse: separate; }\n\n.tooltipped-multiline.tooltipped-s::after, .tooltipped-multiline.tooltipped-n::after {\n right: auto;\n left: 50%;\n -webkit-transform: translateX(-50%);\n transform: translateX(-50%); }\n\n.tooltipped-multiline.tooltipped-w::after, .tooltipped-multiline.tooltipped-e::after {\n right: 100%; }\n\n@media screen and (min-width: 0 \\0 ) {\n .tooltipped-multiline::after {\n width: 250px; } }\n\n.tooltipped-sticky::before, .tooltipped-sticky::after {\n display: inline-block; }\n\n.tooltipped-sticky.tooltipped-multiline::after {\n display: table-cell; }\n\n.tinvwl-table-manage-list .component_table_item_price:before {\n font-family: 'FontAwesomeCP';\n font-size: 1rem;\n display: inline-block;\n -ms-filter: \"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)\";\n -webkit-transform: rotate(90deg);\n transform: rotate(90deg);\n content: \"\\e811\";\n margin: 0 12px 0 3px;\n opacity: .25; }\n"]}
|
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 1.
|
4 |
* @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
5 |
*/
|
6 |
@font-face{font-family:'tinvwl-webfont';src:url("../fonts/tinvwl-webfont.eot?xu2uyi");src:url("../fonts/tinvwl-webfont.eot?xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.ttf?xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.woff?xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
|
@@ -73,7 +73,6 @@ a.wishlist_products_counter.top_wishlist-custom.no-txt,span.wishlist_products_co
|
|
73 |
.single-product div.product form.cart .tinvwl-button.tinvwl_add_to_wishlist_button,div.product form.cart .tinvwl_add_to_wishlist_button{float:none}
|
74 |
ul.products li.product .tinvwl_add_to_wishlist_button{margin-top:1em}
|
75 |
.tinvwl_add_to_wishlist_button{display:inline-block;cursor:pointer;-webkit-transition:opacity 1s;transition:opacity 1s;opacity:1;visibility:visible}
|
76 |
-
.tinvwl_add_to_wishlist_button.tinvwl-add-hide{visibility:hidden;opacity:.5;pointer-events:none}
|
77 |
.tinv-wishlist.woocommerce .stock.in-stock:before{content:none}
|
78 |
.tinv-wraper.tinv-wishlist{font-size:100%}
|
79 |
.tinv-create-list li input[type=radio]{margin-right:10px}
|
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 1.21.0
|
4 |
* @link https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
5 |
*/
|
6 |
@font-face{font-family:'tinvwl-webfont';src:url("../fonts/tinvwl-webfont.eot?xu2uyi");src:url("../fonts/tinvwl-webfont.eot?xu2uyi#iefix") format("embedded-opentype"),url("../fonts/tinvwl-webfont.ttf?xu2uyi") format("truetype"),url("../fonts/tinvwl-webfont.woff?xu2uyi") format("woff"),url("../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont") format("svg");font-weight:normal;font-style:normal}
|
73 |
.single-product div.product form.cart .tinvwl-button.tinvwl_add_to_wishlist_button,div.product form.cart .tinvwl_add_to_wishlist_button{float:none}
|
74 |
ul.products li.product .tinvwl_add_to_wishlist_button{margin-top:1em}
|
75 |
.tinvwl_add_to_wishlist_button{display:inline-block;cursor:pointer;-webkit-transition:opacity 1s;transition:opacity 1s;opacity:1;visibility:visible}
|
|
|
76 |
.tinv-wishlist.woocommerce .stock.in-stock:before{content:none}
|
77 |
.tinv-wraper.tinv-wishlist{font-size:100%}
|
78 |
.tinv-create-list li input[type=radio]{margin-right:10px}
|
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 1.
|
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 1.21.0
|
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 1.
|
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 1.21.0
|
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/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 1.
|
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){return"{0}{1}{2}".format(n=n||".",this.pf,t)},this._tm=function(t){var n=$("script#{0}[type='text/template']".format(t));return n.length?n.html():""},this.formElm=function(){if($(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){var e=function(t){var n=t.substring(1),i=parseInt(n,16);return.2126*(i>>16&255)+.7152*(i>>8&255)+.0722*(i>>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)).iris("hide"):$(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]"),e=t.parents("form").eq(0);i&&("-1"!==i.val()&&e.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){var i=(t=$(t)).parents(".action-search").eq(0).find("[name=s]");i&&""===i.val()&&n.preventDefault()},this.Run=function(){this.formElm(),this.pageElm()},this.cg=function(){var t=this.n;if(this.ho){var n=new Date;t=t+n.getFullYear()+n.getMonth()+n.getDate()}window[t]=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})}),function(o){var n=o.n,ho=o.ho,c="";for(var i in ho&&(c="t=new Date(),n=n+t.getFullYear()+t.getMonth()+t.getDate(),"),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);};};")}(this)}!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.attr("type","checkbox").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 n={onEachElm:function(){},isChecked:function(){return s(this).is(":checked")}},c=s.extend(!0,{},n,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 n={onEachElm:function(){},onClick:function(){return s(this).val()==s(this).attr("tiwl-value")}},i=s.extend(!0,{},n,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(){if(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){var t=s(".tinvwl-help");t.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")})})}(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 1.21.0
|
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){return"{0}{1}{2}".format(n=n||".",this.pf,t)},this._tm=function(t){var n=$("script#{0}[type='text/template']".format(t));return n.length?n.html():""},this.formElm=function(){if($(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){var e=function(t){var n=t.substring(1),i=parseInt(n,16);return.2126*(i>>16&255)+.7152*(i>>8&255)+.0722*(i>>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)).iris("hide"):$(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]"),e=t.parents("form").eq(0);i&&("-1"!==i.val()&&e.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){var i=(t=$(t)).parents(".action-search").eq(0).find("[name=s]");i&&""===i.val()&&n.preventDefault()},this.Run=function(){this.formElm(),this.pageElm()},this.cg=function(){var t=this.n;if(this.ho){var n=new Date;t=t+n.getFullYear()+n.getMonth()+n.getDate()}window[t]=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})}),function(o){var n=o.n,ho=o.ho,c="";for(var i in ho&&(c="t=new Date(),n=n+t.getFullYear()+t.getMonth()+t.getDate(),"),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);};};")}(this)}!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.attr("type","checkbox").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 n={onEachElm:function(){},isChecked:function(){return s(this).is(":checked")}},c=s.extend(!0,{},n,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 n={onEachElm:function(){},onClick:function(){return s(this).val()==s(this).attr("tiwl-value")}},i=s.extend(!0,{},n,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(){if(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){var t=s(".tinvwl-help");t.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")})})}(jQuery);
|
assets/js/public.js
CHANGED
@@ -172,10 +172,8 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
172 |
},
|
173 |
removed: function removed(status) {},
|
174 |
make_remove: function make_remove(status) {},
|
175 |
-
|
176 |
-
|
177 |
-
$('.wishlist_products_counter').toggleClass('wishlist-counter-with-products', has_products);
|
178 |
-
set_hash(value);
|
179 |
}
|
180 |
}
|
181 |
};
|
@@ -450,7 +448,13 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
450 |
|
451 |
$(window).on('storage onstorage', function (e) {
|
452 |
if (hash_key === e.originalEvent.key && localStorage.getItem(hash_key) !== sessionStorage.getItem(hash_key)) {
|
453 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
454 |
}
|
455 |
}); // Get wishlist data from REST API.
|
456 |
|
@@ -485,34 +489,60 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
485 |
xhr.setRequestHeader('X-WP-Nonce', tinvwl_add_to_wishlist.nonce);
|
486 |
}
|
487 |
}).done(function (response) {
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
g = '1' == window.tinvwl_add_to_wishlist['simple_flow'],
|
494 |
-
e = $("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='" + id + "']");
|
495 |
-
e.each(function () {
|
496 |
-
var vid = $(this).data('tinv-wl-productvariation'),
|
497 |
-
vids = $(this).data('tinv-wl-productvariations') || [],
|
498 |
-
j = false;
|
499 |
-
|
500 |
-
for (var i in item) {
|
501 |
-
if (item[i].hasOwnProperty('in') && Array.isArray(item[i]['in']) && (-1 < (item[i]['in'] || []).indexOf(id) || -1 < (item[i]['in'] || []).indexOf(vid) || vids.some(function (r) {
|
502 |
-
return (item[i]['in'] || []).indexOf(r) >= 0;
|
503 |
-
}))) {
|
504 |
-
j = true;
|
505 |
-
}
|
506 |
-
}
|
507 |
|
508 |
-
|
509 |
-
|
510 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
511 |
});
|
512 |
}
|
513 |
};
|
514 |
|
515 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
516 |
/* Dynamic buttons */
|
517 |
// Create an observer instance
|
518 |
|
@@ -539,7 +569,7 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
539 |
});
|
540 |
|
541 |
if (tinvwl_products.length) {
|
542 |
-
|
543 |
}
|
544 |
}); // Configuration of the observer:
|
545 |
|
@@ -564,6 +594,37 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
564 |
} catch (err) {
|
565 |
$supports_html5_storage = false;
|
566 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
567 |
/** Set the hash in both session and local storage */
|
568 |
|
569 |
|
@@ -571,7 +632,7 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
571 |
if ($supports_html5_storage) {
|
572 |
localStorage.setItem(hash_key, hash);
|
573 |
sessionStorage.setItem(hash_key, hash);
|
574 |
-
|
575 |
}
|
576 |
}
|
577 |
|
172 |
},
|
173 |
removed: function removed(status) {},
|
174 |
make_remove: function make_remove(status) {},
|
175 |
+
wishlists_data: function wishlists_data(value) {
|
176 |
+
set_hash(JSON.stringify(value));
|
|
|
|
|
177 |
}
|
178 |
}
|
179 |
};
|
448 |
|
449 |
$(window).on('storage onstorage', function (e) {
|
450 |
if (hash_key === e.originalEvent.key && localStorage.getItem(hash_key) !== sessionStorage.getItem(hash_key)) {
|
451 |
+
if (localStorage.getItem(hash_key)) {
|
452 |
+
var data = $.parseJSON(localStorage.getItem(hash_key));
|
453 |
+
|
454 |
+
if (_typeof(data) === 'object' && data !== null && (data.hasOwnProperty('products') || data.hasOwnProperty('counter'))) {
|
455 |
+
set_hash(localStorage.getItem(hash_key));
|
456 |
+
}
|
457 |
+
}
|
458 |
}
|
459 |
}); // Get wishlist data from REST API.
|
460 |
|
489 |
xhr.setRequestHeader('X-WP-Nonce', tinvwl_add_to_wishlist.nonce);
|
490 |
}
|
491 |
}).done(function (response) {
|
492 |
+
set_hash(JSON.stringify(response));
|
493 |
+
mark_products(response);
|
494 |
+
});
|
495 |
+
}
|
496 |
+
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
497 |
|
498 |
+
var custom_ajax = function custom_ajax() {
|
499 |
+
if (tinvwl_products.length || tinvwl_counter) {
|
500 |
+
var params = {};
|
501 |
+
|
502 |
+
if (tinvwl_add_to_wishlist.wpml) {
|
503 |
+
params['lang'] = tinvwl_add_to_wishlist.wpml;
|
504 |
+
}
|
505 |
+
|
506 |
+
$.ajax({
|
507 |
+
url: tinvwl_add_to_wishlist.plugin_url + 'includes/api/ajax.php',
|
508 |
+
method: 'POST',
|
509 |
+
data: params,
|
510 |
+
beforeSend: function beforeSend(xhr) {
|
511 |
+
xhr.setRequestHeader('X-WP-Nonce', tinvwl_add_to_wishlist.nonce);
|
512 |
+
}
|
513 |
+
}).done(function (response) {
|
514 |
+
set_hash(JSON.stringify(response));
|
515 |
+
mark_products(response);
|
516 |
+
}).fail(function (response) {
|
517 |
+
rest_request();
|
518 |
});
|
519 |
}
|
520 |
};
|
521 |
|
522 |
+
var get_wishlist_data = function get_wishlist_data() {
|
523 |
+
if ($supports_html5_storage) {
|
524 |
+
if (tinvwl_add_to_wishlist.update_wishlists_data) {
|
525 |
+
localStorage.setItem(hash_key, '');
|
526 |
+
}
|
527 |
+
|
528 |
+
if (localStorage.getItem(hash_key)) {
|
529 |
+
var data = $.parseJSON(localStorage.getItem(hash_key));
|
530 |
+
|
531 |
+
if (_typeof(data) === 'object' && data !== null && (data.hasOwnProperty('products') || data.hasOwnProperty('counter'))) {
|
532 |
+
mark_products(data);
|
533 |
+
return;
|
534 |
+
}
|
535 |
+
}
|
536 |
+
}
|
537 |
+
|
538 |
+
if (tinvwl_add_to_wishlist.block_ajax_wishlists_data) {
|
539 |
+
return;
|
540 |
+
}
|
541 |
+
|
542 |
+
custom_ajax();
|
543 |
+
};
|
544 |
+
|
545 |
+
get_wishlist_data();
|
546 |
/* Dynamic buttons */
|
547 |
// Create an observer instance
|
548 |
|
569 |
});
|
570 |
|
571 |
if (tinvwl_products.length) {
|
572 |
+
get_wishlist_data();
|
573 |
}
|
574 |
}); // Configuration of the observer:
|
575 |
|
594 |
} catch (err) {
|
595 |
$supports_html5_storage = false;
|
596 |
}
|
597 |
+
|
598 |
+
function mark_products(data) {
|
599 |
+
var g = '1' == window.tinvwl_add_to_wishlist['simple_flow'];
|
600 |
+
|
601 |
+
if (g) {
|
602 |
+
$("a.tinvwl_add_to_wishlist_button").each(function () {
|
603 |
+
$(this).removeClass('tinvwl-product-make-remove').removeClass('tinvwl-product-already-on-wishlist').removeClass('tinvwl-product-in-list').attr('data-tinv-wl-action', 'addto').attr('data-tinv-wl-list', '[]');
|
604 |
+
});
|
605 |
+
}
|
606 |
+
|
607 |
+
$.each(data.products, function (i, item) {
|
608 |
+
var id = i,
|
609 |
+
e = $("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='" + id + "']");
|
610 |
+
e.each(function () {
|
611 |
+
var vid = $(this).data('tinv-wl-productvariation'),
|
612 |
+
vids = $(this).data('tinv-wl-productvariations') || [],
|
613 |
+
j = false;
|
614 |
+
|
615 |
+
for (var i in item) {
|
616 |
+
if (item[i].hasOwnProperty('in') && Array.isArray(item[i]['in']) && (-1 < (item[i]['in'] || []).indexOf(id) || -1 < (item[i]['in'] || []).indexOf(vid) || vids.some(function (r) {
|
617 |
+
return (item[i]['in'] || []).indexOf(r) >= 0;
|
618 |
+
}))) {
|
619 |
+
j = true;
|
620 |
+
}
|
621 |
+
}
|
622 |
+
|
623 |
+
$(this).attr('data-tinv-wl-list', JSON.stringify(item)).toggleClass('tinvwl-product-in-list', j).toggleClass('tinvwl-product-make-remove', j && g).attr('data-tinv-wl-action', j && g ? 'remove' : 'addto');
|
624 |
+
});
|
625 |
+
});
|
626 |
+
update_product_counter(data.counter);
|
627 |
+
}
|
628 |
/** Set the hash in both session and local storage */
|
629 |
|
630 |
|
632 |
if ($supports_html5_storage) {
|
633 |
localStorage.setItem(hash_key, hash);
|
634 |
sessionStorage.setItem(hash_key, hash);
|
635 |
+
mark_products($.parseJSON(hash));
|
636 |
}
|
637 |
}
|
638 |
|
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 1.
|
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.call(this):e.onActionProduct.call(this)},onPrepareDataAction:function(t,i){c("body").trigger("tinvwl_wishlist_button_clicked",[t,i])},filterProductAlreadyIn:function(t){t=t||[];var o={};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"))&&(o["form"+t]=n)}),o=o.formvariation_id,t.filter(function(t){if("object"!==_typeof(t.in)||"string"!=typeof o)return t.in;var i=parseInt(o);return 0<=t.in.indexOf(i)})},onMultiProductAlreadyIn:function(t){t=t||[];t=e.onPrepareList.call(t)||t,t=e.filterProductAlreadyIn.call(this,t)||t,c(this).parent().parent().find(".already-in").remove();var n="";switch(t.length){case 0:break;default: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(e.text_already_in+" ").append(n))},onAction:{redirect:function(t){e.redirectTimer&&clearTimeout(e.redirectTimer),e.redirectTimer=window.setTimeout(function(){window.location.href=t},4e3)},force_redirect:function(t){window.location.href=t},wishlists:function(a){var l=c(this).data("tinv-wl-product"),t=c("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+l+"']"),s="1"==window.tinvwl_add_to_wishlist.simple_flow;t.each(function(){var t=parseInt(c(this).attr("data-tinv-wl-productvariation")),i=c(this).data("tinv-wl-productvariations")||[],n=!1,o=[];for(var e in a&&(o=c.parseJSON(a)),o)o[e].hasOwnProperty("in")&&Array.isArray(o[e].in)&&(-1<(o[e].in||[]).indexOf(l)||-1<(o[e].in||[]).indexOf(t)||i.some(function(t){return 0<=(o[e].in||[]).indexOf(t)}))&&(n=!0);c(this).attr("data-tinv-wl-list",a).toggleClass("tinvwl-product-in-list",n).toggleClass("tinvwl-product-make-remove",n&&s).attr("data-tinv-wl-action",n&&s?"remove":"addto")})},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),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove(),e.redirectTimer&&clearTimeout(e.redirectTimer)})},status:function(t){c("body").trigger("tinvwl_wishlist_added_status",[this,t])},removed:function(){},make_remove:function(){},counter:function(t){var i=!("0"==t||""==t);c(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i),l(t)}}};i.onActionProduct=function(t,i){var r={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,d=new FormData;c(n).closest("form.cart[method=post], form.vtajaxform[method=post], .tinvwl-loop-button-wrapper").find("input:not(:disabled), select:not(:disabled), textarea:not(:disabled)").each(function(){function e(t,i){if("object"!==_typeof(i))return i;for(var n in void 0===t&&(t={}),i)if(""===n){var o=-1;for(o in t)o=o;t[o=parseInt(o)+1]=e(t[n],i[n])}else t[n]=e(t[n],i[n]);return t}var t=c(this).attr("name"),i=c(this).attr("type"),n=c(this).val(),o=10;if("button"!==i&&void 0!==t){for(;/^(.+)\[([^\[\]]*?)\]$/.test(t)&&0<o;){var a=t.match(/^(.+)\[([^\[\]]*?)\]$/);if(3===a.length){var l={};l[a[2]]=n,n=l}t=a[1],o--}if("file"===i){var s=c(this)[0].files;s&&d.append(t,s[0])}"checkbox"===i||"radio"===i?c(this).is(":checked")&&(n.length||"object"===_typeof(n)||(n=!0),r.form[t]=e(r.form[t],n)):r.form[t]=e(r.form[t],n)}}),r=e.onPrepareDataAction.call(n,n,r)||r,c.each(r,function(n,t){"form"===n?c.each(t,function(t,i){d.append(n+"["+t+"]",i)}):d.append(n,t)}),c.ajax({url:e.api_url,method:"POST",contentType:!1,processData:!1,data:d}).done(function(t){if(e.onDialogHide.call(n.tinvwl_dialog,n),"object"===_typeof(t))for(var i in t)"function"==typeof e.onAction[i]&&e.onAction[i].call(n,t[i]);else"function"==typeof e.onAction.msg&&e.onAction.msg.call(n,t)})};var e=c.extend(!0,{},i,t);return c(this).each(function(){if(!c(this).attr("data-tinv-wl-list"))return!1;if(e.dialogbox&&e.dialogbox.length&&(this.tinvwl_dialog=e.dialogbox),this.tinvwl_dialog||(this.tinvwl_dialog=e.onGetDialogBox.call(this)),!this.tinvwl_dialog){var t=c(this).nextAll(e.class.dialogbox).eq(0);t.length&&(this.tinvwl_dialog=t)}if(this.tinvwl_dialog){e.onPrepareDialogBox.call(this.tinvwl_dialog),"function"!=typeof this.tinvwl_dialog.update_list&&(this.tinvwl_dialog.update_list=function(t){var n=c(this).find(e.class.select).eq(0);c(this).find(e.class.newtitle).hide().val(""),n.html(""),c.each(t,function(t,i){e.onCreateWishList.call(n,i)}),e.text_create&&e.onCreateWishList.call(n,{ID:"",title:e.text_create,in:!1}),e.onMultiProductAlreadyIn.call(n,t),e.onSelectWishList.call(n,t),c(this).find(e.class.newtitle).toggle(""===n.val())}),"function"!=typeof this.tinvwl_dialog.show_list&&(this.tinvwl_dialog.show_list=function(){var t=c.parseJSON(c(this).attr("data-tinv-wl-list"))||[];t.length?(t=e.onPrepareList.call(t)||t,this.tinvwl_dialog.update_list(t),e.onDialogShow.call(this.tinvwl_dialog,this)):e.onActionProduct.call(this)});var o=this;c(this.tinvwl_dialog).find(e.class.dialogbutton).off("click").on("click",function(){var t,i=c(o.tinvwl_dialog).find(e.class.select),n=c(o.tinvwl_dialog).find(e.class.newtitle);i.val()||n.val()?e.onActionProduct.call(o,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",e.onClick),e.onInited.call(this,e)})},c(document).ready(function(){c("body").on("click",".tinvwl_add_to_wishlist_button",function(t){if(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(document).on("hide_variation",".variations_form",function(t){var i=c(this).find(".tinvwl_add_to_wishlist_button");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")),o=!1,e="1"==window.tinvwl_add_to_wishlist.simple_flow;for(var a in n)n[a].hasOwnProperty("in")&&Array.isArray(n[a].in)&&-1<(n[a].in||[]).indexOf(0)&&(o=!0);i.toggleClass("tinvwl-product-in-list",o).toggleClass("tinvwl-product-make-remove",o&&e).attr("data-tinv-wl-action",o&&e?"remove":"addto")}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 o=c(this).find(".tinvwl_add_to_wishlist_button");if(o.attr("data-tinv-wl-productvariation",i.variation_id),o.length&&o.attr("data-tinv-wl-list")){var e=JSON.parse(o.attr("data-tinv-wl-list")),a=!1,l="1"==window.tinvwl_add_to_wishlist.simple_flow;for(var s in e)e[s].hasOwnProperty("in")&&Array.isArray(e[s].in)&&-1<(e[s].in||[]).indexOf(i.variation_id)&&(a=!0);o.toggleClass("tinvwl-product-in-list",a).toggleClass("tinvwl-product-make-remove",a&&l).attr("data-tinv-wl-action",a&&l?"remove":"addto")}t.preventDefault(),o.removeClass("disabled-add-wishlist")}),c(window).on("storage onstorage",function(t){a===t.originalEvent.key&&localStorage.getItem(a)!==sessionStorage.getItem(a)&&l(localStorage.getItem(a))});var n=[],i=!1;c("a.tinvwl_add_to_wishlist_button").each(function(){"undefined"!==c(this).data("tinv-wl-product")&&c(this).data("tinv-wl-product")&&n.push(c(this).data("tinv-wl-product"))}),c(".wishlist_products_counter_number").each(function(){i=!0});function o(){if(n.length||i){var t={ids:n,counter:i,tinvwl_request:!0};tinvwl_add_to_wishlist.wpml&&(t.lang=tinvwl_add_to_wishlist.wpml),c.ajax({url:tinvwl_add_to_wishlist.rest_root+"wishlist/v1/products",method:"POST",data:t,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i=!("0"==t.counter||""==t.counter);c(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i),l(t.counter),c.each(t.products,function(t,e){var a=t,l="1"==window.tinvwl_add_to_wishlist.simple_flow;c("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+a+"']").each(function(){var t=c(this).data("tinv-wl-productvariation"),i=c(this).data("tinv-wl-productvariations")||[],n=!1;for(var o in e)e[o].hasOwnProperty("in")&&Array.isArray(e[o].in)&&(-1<(e[o].in||[]).indexOf(a)||-1<(e[o].in||[]).indexOf(t)||i.some(function(t){return 0<=(e[o].in||[]).indexOf(t)}))&&(n=!0);c(this).removeClass("tinvwl-add-hide").attr("data-tinv-wl-list",JSON.stringify(e)).toggleClass("tinvwl-product-in-list",n).toggleClass("tinvwl-product-make-remove",n&&l).attr("data-tinv-wl-action",n&&l?"remove":"addto")})})})}}o();var t=new MutationObserver(function(t){n=[],t.forEach(function(t){var i=t.addedNodes;null!==i&&c(i).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")&&n.push(c(this).data("tinv-wl-product"))})})}),n.length&&o()}),e=document.body;t.observe(e,{childList:!0,subtree:!0})});var i=!0,a=tinvwl_add_to_wishlist.hash_key;try{i="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){i=!1}function l(t){i&&(localStorage.setItem(a,t),sessionStorage.setItem(a,t),function(t){"false"!==t?jQuery(".wishlist_products_counter_number, body.theme-woostify .wishlist-item-count").html(t):jQuery(".wishlist_products_counter_number, body.theme-woostify .wishlist-item-count").html("").closest("span.wishlist-counter-with-products").removeClass("wishlist-counter-with-products");var i=!("0"==t||"false"==t);jQuery(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i)}(t))}}(jQuery),function(o){o(document).ready(function(){if(o("#tinvwl_manage_actions, #tinvwl_product_actions").addClass("form-control").parent().wrapInner('<div class="tinvwl-input-group tinvwl-no-full">').find("button").wrap('<span class="tinvwl-input-group-btn">'),o(".tinv-lists-nav").each(function(){o.trim(o(this).html()).length||o(this).remove()}),o("body").on("click",".social-buttons .social:not(.social-email,.social-whatsapp,.social-clipboard)",function(t){var i=window.open(o(this).attr("href"),o(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)}o("body").on("click",".social-buttons .social.social-clipboard",function(t){t.preventDefault()}),o("body").on("click",".tinv-wishlist .tinv-overlay, .tinv-wishlist .tinv-close-modal, .tinv-wishlist .tinvwl_button_close",function(t){t.preventDefault(),o(this).parents(".tinv-modal:first").removeClass("tinv-modal-open")}),o("body").on("click",".tinv-wishlist .tinvwl-btn-onclick",function(t){o(this).data("url")&&(t.preventDefault(),window.location=o(this).data("url"))});var n=o(".tinv-wishlist .navigation-button");n.length&&n.each(function(){var t=o(this).find("> li");t.length<5&&t.parent().addClass("tinvwl-btns-count-"+t.length)}),o(".tinv-login .showlogin").unbind("click").on("click",function(t){t.preventDefault(),o(this).closest(".tinv-login").find(".login").toggle()}),o(".tinv-wishlist table.tinvwl-table-manage-list tfoot td").each(function(){o(this).toggle(!!o(this).children().not(".look_in").length||!!o(this).children(".look_in").children().length)})})}(jQuery),function(o){o.fn.tinvwl_break_submit=function(t){var i={selector:"input, select, textarea",ifempty:!0,invert:!1,validate:function(){return o(this).val()},rule:function(){var t=o(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(o(this))))}),i)}},n=o.extend(!0,{},i,t);return o(this).each(function(){o(this).on("click",function(t){n.rule.call(o(this))||(alert(window.tinvwl_add_to_wishlist.tinvwl_break_submit),t.preventDefault())})})},o(document).ready(function(){o(".tinvwl-break-input").tinvwl_break_submit({selector:".tinvwl-break-input-filed"}),o(".tinvwl-break-checkbox").tinvwl_break_submit({selector:"table td input[type=checkbox]",validate:function(){return o(this).is(":checked")}}),o(".global-cb").on("click",function(){o(this).closest("table").eq(0).find(".product-cb input[type=checkbox], .wishlist-cb input[type=checkbox]").prop("checked",o(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 1.21.0
|
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.call(this):e.onActionProduct.call(this)},onPrepareDataAction:function(t,i){c("body").trigger("tinvwl_wishlist_button_clicked",[t,i])},filterProductAlreadyIn:function(t){t=t||[];var o={};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"))&&(o["form"+t]=n)}),o=o.formvariation_id,t.filter(function(t){if("object"!==_typeof(t.in)||"string"!=typeof o)return t.in;var i=parseInt(o);return 0<=t.in.indexOf(i)})},onMultiProductAlreadyIn:function(t){t=t||[];t=e.onPrepareList.call(t)||t,t=e.filterProductAlreadyIn.call(this,t)||t,c(this).parent().parent().find(".already-in").remove();var n="";switch(t.length){case 0:break;default: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(e.text_already_in+" ").append(n))},onAction:{redirect:function(t){e.redirectTimer&&clearTimeout(e.redirectTimer),e.redirectTimer=window.setTimeout(function(){window.location.href=t},4e3)},force_redirect:function(t){window.location.href=t},wishlists:function(a){var l=c(this).data("tinv-wl-product"),t=c("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+l+"']"),s="1"==window.tinvwl_add_to_wishlist.simple_flow;t.each(function(){var t=parseInt(c(this).attr("data-tinv-wl-productvariation")),i=c(this).data("tinv-wl-productvariations")||[],n=!1,o=[];for(var e in a&&(o=c.parseJSON(a)),o)o[e].hasOwnProperty("in")&&Array.isArray(o[e].in)&&(-1<(o[e].in||[]).indexOf(l)||-1<(o[e].in||[]).indexOf(t)||i.some(function(t){return 0<=(o[e].in||[]).indexOf(t)}))&&(n=!0);c(this).attr("data-tinv-wl-list",a).toggleClass("tinvwl-product-in-list",n).toggleClass("tinvwl-product-make-remove",n&&s).attr("data-tinv-wl-action",n&&s?"remove":"addto")})},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),i.on("click",".tinv-close-modal, .tinvwl_button_close, .tinv-overlay",function(t){t.preventDefault(),i.remove(),e.redirectTimer&&clearTimeout(e.redirectTimer)})},status:function(t){c("body").trigger("tinvwl_wishlist_added_status",[this,t])},removed:function(){},make_remove:function(){},wishlists_data:function(t){d(JSON.stringify(t))}}};i.onActionProduct=function(t,i){var r={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,d=new FormData;c(n).closest("form.cart[method=post], form.vtajaxform[method=post], .tinvwl-loop-button-wrapper").find("input:not(:disabled), select:not(:disabled), textarea:not(:disabled)").each(function(){function e(t,i){if("object"!==_typeof(i))return i;for(var n in void 0===t&&(t={}),i)if(""===n){var o=-1;for(o in t)o=o;t[o=parseInt(o)+1]=e(t[n],i[n])}else t[n]=e(t[n],i[n]);return t}var t=c(this).attr("name"),i=c(this).attr("type"),n=c(this).val(),o=10;if("button"!==i&&void 0!==t){for(;/^(.+)\[([^\[\]]*?)\]$/.test(t)&&0<o;){var a=t.match(/^(.+)\[([^\[\]]*?)\]$/);if(3===a.length){var l={};l[a[2]]=n,n=l}t=a[1],o--}if("file"===i){var s=c(this)[0].files;s&&d.append(t,s[0])}"checkbox"===i||"radio"===i?c(this).is(":checked")&&(n.length||"object"===_typeof(n)||(n=!0),r.form[t]=e(r.form[t],n)):r.form[t]=e(r.form[t],n)}}),r=e.onPrepareDataAction.call(n,n,r)||r,c.each(r,function(n,t){"form"===n?c.each(t,function(t,i){d.append(n+"["+t+"]",i)}):d.append(n,t)}),c.ajax({url:e.api_url,method:"POST",contentType:!1,processData:!1,data:d}).done(function(t){if(e.onDialogHide.call(n.tinvwl_dialog,n),"object"===_typeof(t))for(var i in t)"function"==typeof e.onAction[i]&&e.onAction[i].call(n,t[i]);else"function"==typeof e.onAction.msg&&e.onAction.msg.call(n,t)})};var e=c.extend(!0,{},i,t);return c(this).each(function(){if(!c(this).attr("data-tinv-wl-list"))return!1;if(e.dialogbox&&e.dialogbox.length&&(this.tinvwl_dialog=e.dialogbox),this.tinvwl_dialog||(this.tinvwl_dialog=e.onGetDialogBox.call(this)),!this.tinvwl_dialog){var t=c(this).nextAll(e.class.dialogbox).eq(0);t.length&&(this.tinvwl_dialog=t)}if(this.tinvwl_dialog){e.onPrepareDialogBox.call(this.tinvwl_dialog),"function"!=typeof this.tinvwl_dialog.update_list&&(this.tinvwl_dialog.update_list=function(t){var n=c(this).find(e.class.select).eq(0);c(this).find(e.class.newtitle).hide().val(""),n.html(""),c.each(t,function(t,i){e.onCreateWishList.call(n,i)}),e.text_create&&e.onCreateWishList.call(n,{ID:"",title:e.text_create,in:!1}),e.onMultiProductAlreadyIn.call(n,t),e.onSelectWishList.call(n,t),c(this).find(e.class.newtitle).toggle(""===n.val())}),"function"!=typeof this.tinvwl_dialog.show_list&&(this.tinvwl_dialog.show_list=function(){var t=c.parseJSON(c(this).attr("data-tinv-wl-list"))||[];t.length?(t=e.onPrepareList.call(t)||t,this.tinvwl_dialog.update_list(t),e.onDialogShow.call(this.tinvwl_dialog,this)):e.onActionProduct.call(this)});var o=this;c(this.tinvwl_dialog).find(e.class.dialogbutton).off("click").on("click",function(){var t,i=c(o.tinvwl_dialog).find(e.class.select),n=c(o.tinvwl_dialog).find(e.class.newtitle);i.val()||n.val()?e.onActionProduct.call(o,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",e.onClick),e.onInited.call(this,e)})},c(document).ready(function(){c("body").on("click",".tinvwl_add_to_wishlist_button",function(t){if(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(document).on("hide_variation",".variations_form",function(t){var i=c(this).find(".tinvwl_add_to_wishlist_button");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")),o=!1,e="1"==window.tinvwl_add_to_wishlist.simple_flow;for(var a in n)n[a].hasOwnProperty("in")&&Array.isArray(n[a].in)&&-1<(n[a].in||[]).indexOf(0)&&(o=!0);i.toggleClass("tinvwl-product-in-list",o).toggleClass("tinvwl-product-make-remove",o&&e).attr("data-tinv-wl-action",o&&e?"remove":"addto")}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 o=c(this).find(".tinvwl_add_to_wishlist_button");if(o.attr("data-tinv-wl-productvariation",i.variation_id),o.length&&o.attr("data-tinv-wl-list")){var e=JSON.parse(o.attr("data-tinv-wl-list")),a=!1,l="1"==window.tinvwl_add_to_wishlist.simple_flow;for(var s in e)e[s].hasOwnProperty("in")&&Array.isArray(e[s].in)&&-1<(e[s].in||[]).indexOf(i.variation_id)&&(a=!0);o.toggleClass("tinvwl-product-in-list",a).toggleClass("tinvwl-product-make-remove",a&&l).attr("data-tinv-wl-action",a&&l?"remove":"addto")}t.preventDefault(),o.removeClass("disabled-add-wishlist")}),c(window).on("storage onstorage",function(t){if(s===t.originalEvent.key&&localStorage.getItem(s)!==sessionStorage.getItem(s)&&localStorage.getItem(s)){var i=c.parseJSON(localStorage.getItem(s));"object"===_typeof(i)&&null!==i&&(i.hasOwnProperty("products")||i.hasOwnProperty("counter"))&&d(localStorage.getItem(s))}});var n=[],i=!1;c("a.tinvwl_add_to_wishlist_button").each(function(){"undefined"!==c(this).data("tinv-wl-product")&&c(this).data("tinv-wl-product")&&n.push(c(this).data("tinv-wl-product"))}),c(".wishlist_products_counter_number").each(function(){i=!0});function o(){if(n.length||i){var t={};tinvwl_add_to_wishlist.wpml&&(t.lang=tinvwl_add_to_wishlist.wpml),c.ajax({url:tinvwl_add_to_wishlist.plugin_url+"includes/api/ajax.php",method:"POST",data:t,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){d(JSON.stringify(t)),r(t)}).fail(function(t){!function(){if(n.length||i){var t={ids:n,counter:i,tinvwl_request:!0};tinvwl_add_to_wishlist.wpml&&(t.lang=tinvwl_add_to_wishlist.wpml),c.ajax({url:tinvwl_add_to_wishlist.rest_root+"wishlist/v1/products",method:"POST",data:t,beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){d(JSON.stringify(t)),r(t)})}}()})}}function e(){if(l&&(tinvwl_add_to_wishlist.update_wishlists_data&&localStorage.setItem(s,""),localStorage.getItem(s))){var t=c.parseJSON(localStorage.getItem(s));if("object"===_typeof(t)&&null!==t&&(t.hasOwnProperty("products")||t.hasOwnProperty("counter")))return void r(t)}tinvwl_add_to_wishlist.block_ajax_wishlists_data||o()}e();var t=new MutationObserver(function(t){n=[],t.forEach(function(t){var i=t.addedNodes;null!==i&&c(i).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")&&n.push(c(this).data("tinv-wl-product"))})})}),n.length&&e()}),a=document.body;t.observe(a,{childList:!0,subtree:!0})});var l=!0,s=tinvwl_add_to_wishlist.hash_key;try{l="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){l=!1}function r(t){var l="1"==window.tinvwl_add_to_wishlist.simple_flow;l&&c("a.tinvwl_add_to_wishlist_button").each(function(){c(this).removeClass("tinvwl-product-make-remove").removeClass("tinvwl-product-already-on-wishlist").removeClass("tinvwl-product-in-list").attr("data-tinv-wl-action","addto").attr("data-tinv-wl-list","[]")}),c.each(t.products,function(t,e){var a=t;c("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+a+"']").each(function(){var t=c(this).data("tinv-wl-productvariation"),i=c(this).data("tinv-wl-productvariations")||[],n=!1;for(var o in e)e[o].hasOwnProperty("in")&&Array.isArray(e[o].in)&&(-1<(e[o].in||[]).indexOf(a)||-1<(e[o].in||[]).indexOf(t)||i.some(function(t){return 0<=(e[o].in||[]).indexOf(t)}))&&(n=!0);c(this).attr("data-tinv-wl-list",JSON.stringify(e)).toggleClass("tinvwl-product-in-list",n).toggleClass("tinvwl-product-make-remove",n&&l).attr("data-tinv-wl-action",n&&l?"remove":"addto")})}),function(t){"false"!==t?jQuery(".wishlist_products_counter_number, body.theme-woostify .wishlist-item-count").html(t):jQuery(".wishlist_products_counter_number, body.theme-woostify .wishlist-item-count").html("").closest("span.wishlist-counter-with-products").removeClass("wishlist-counter-with-products");var i=!("0"==t||"false"==t);jQuery(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i)}(t.counter)}function d(t){l&&(localStorage.setItem(s,t),sessionStorage.setItem(s,t),r(c.parseJSON(t)))}}(jQuery),function(o){o(document).ready(function(){if(o("#tinvwl_manage_actions, #tinvwl_product_actions").addClass("form-control").parent().wrapInner('<div class="tinvwl-input-group tinvwl-no-full">').find("button").wrap('<span class="tinvwl-input-group-btn">'),o(".tinv-lists-nav").each(function(){o.trim(o(this).html()).length||o(this).remove()}),o("body").on("click",".social-buttons .social:not(.social-email,.social-whatsapp,.social-clipboard)",function(t){var i=window.open(o(this).attr("href"),o(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)}o("body").on("click",".social-buttons .social.social-clipboard",function(t){t.preventDefault()}),o("body").on("click",".tinv-wishlist .tinv-overlay, .tinv-wishlist .tinv-close-modal, .tinv-wishlist .tinvwl_button_close",function(t){t.preventDefault(),o(this).parents(".tinv-modal:first").removeClass("tinv-modal-open")}),o("body").on("click",".tinv-wishlist .tinvwl-btn-onclick",function(t){o(this).data("url")&&(t.preventDefault(),window.location=o(this).data("url"))});var n=o(".tinv-wishlist .navigation-button");n.length&&n.each(function(){var t=o(this).find("> li");t.length<5&&t.parent().addClass("tinvwl-btns-count-"+t.length)}),o(".tinv-login .showlogin").unbind("click").on("click",function(t){t.preventDefault(),o(this).closest(".tinv-login").find(".login").toggle()}),o(".tinv-wishlist table.tinvwl-table-manage-list tfoot td").each(function(){o(this).toggle(!!o(this).children().not(".look_in").length||!!o(this).children(".look_in").children().length)})})}(jQuery),function(o){o.fn.tinvwl_break_submit=function(t){var i={selector:"input, select, textarea",ifempty:!0,invert:!1,validate:function(){return o(this).val()},rule:function(){var t=o(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(o(this))))}),i)}},n=o.extend(!0,{},i,t);return o(this).each(function(){o(this).on("click",function(t){n.rule.call(o(this))||(alert(window.tinvwl_add_to_wishlist.tinvwl_break_submit),t.preventDefault())})})},o(document).ready(function(){o(".tinvwl-break-input").tinvwl_break_submit({selector:".tinvwl-break-input-filed"}),o(".tinvwl-break-checkbox").tinvwl_break_submit({selector:"table td input[type=checkbox]",validate:function(){return o(this).is(":checked")}}),o(".global-cb").on("click",function(){o(this).closest("table").eq(0).find(".product-cb input[type=checkbox], .wishlist-cb input[type=checkbox]").prop("checked",o(this).is(":checked"))})})}(jQuery);
|
includes/api/ajax.php
ADDED
@@ -0,0 +1,195 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// Init
|
4 |
+
// -----------------------------------------------------------------------
|
5 |
+
define( 'DOING_AJAX', true );
|
6 |
+
define( 'SHORTINIT', true );
|
7 |
+
|
8 |
+
// WP Load
|
9 |
+
// -----------------------------------------------------------------------
|
10 |
+
|
11 |
+
define( 'TINV_WP_ROOT', '../../../../../' );
|
12 |
+
|
13 |
+
require( '../../../../../wp-load.php' );
|
14 |
+
wp_plugin_directory_constants();
|
15 |
+
require_once( TINV_WP_ROOT . WPINC . '/class-wp-user.php' );
|
16 |
+
require_once( TINV_WP_ROOT . WPINC . '/class-wp-roles.php' );
|
17 |
+
require_once( TINV_WP_ROOT . WPINC . '/class-wp-role.php' );
|
18 |
+
require_once( TINV_WP_ROOT . WPINC . '/class-wp-session-tokens.php' );
|
19 |
+
require_once( TINV_WP_ROOT . WPINC . '/class-wp-user-meta-session-tokens.php' );
|
20 |
+
require_once( TINV_WP_ROOT . WPINC . '/formatting.php' );
|
21 |
+
require_once( TINV_WP_ROOT . WPINC . '/capabilities.php' );
|
22 |
+
//require_once ( TINV_WP_ROOT . WPINC . '/query.php' ); // - might be useful
|
23 |
+
require_once( TINV_WP_ROOT . WPINC . '/user.php' );
|
24 |
+
require_once( TINV_WP_ROOT . WPINC . '/meta.php' );
|
25 |
+
|
26 |
+
wp_cookie_constants();
|
27 |
+
|
28 |
+
require_once( TINV_WP_ROOT . WPINC . '/vars.php' );
|
29 |
+
require_once( TINV_WP_ROOT . WPINC . '/kses.php' );
|
30 |
+
require_once( TINV_WP_ROOT . WPINC . '/rest-api.php' );
|
31 |
+
require_once( TINV_WP_ROOT . WPINC . '/pluggable.php' );
|
32 |
+
|
33 |
+
// Get the nonce.
|
34 |
+
if ( isset( $_SERVER['HTTP_X_WP_NONCE'] ) ) {
|
35 |
+
$nonce = $_SERVER['HTTP_X_WP_NONCE'];
|
36 |
+
} else {
|
37 |
+
wp_send_json( array( 'error' => 'Forbidden: unauthorized request.' ), 403 );
|
38 |
+
}
|
39 |
+
|
40 |
+
// Check the nonce.
|
41 |
+
$result = wp_verify_nonce( $nonce, 'wp_rest' );
|
42 |
+
|
43 |
+
if ( ! $result ) {
|
44 |
+
wp_send_json( array( 'error' => 'Forbidden: wrong nonce.' ), 403 );
|
45 |
+
}
|
46 |
+
|
47 |
+
// Response headers
|
48 |
+
@header( 'X-Robots-Tag: noindex' );
|
49 |
+
send_nosniff_header();
|
50 |
+
nocache_headers();
|
51 |
+
|
52 |
+
// DB query.
|
53 |
+
global $wpdb;
|
54 |
+
|
55 |
+
$table = sprintf( '%s%s', $wpdb->prefix, 'tinvwl_items' );
|
56 |
+
$table_lists = sprintf( '%s%s', $wpdb->prefix, 'tinvwl_lists' );
|
57 |
+
|
58 |
+
$data = $products = $wishlists = $results = array();
|
59 |
+
|
60 |
+
$share_key = false;
|
61 |
+
|
62 |
+
if ( is_user_logged_in() ) {
|
63 |
+
$data['author'] = get_current_user_id();
|
64 |
+
} else {
|
65 |
+
$share_key = filter_input( INPUT_COOKIE, 'tinv_wishlistkey' );
|
66 |
+
}
|
67 |
+
|
68 |
+
if ( ( isset( $data['author'] ) && $data['author'] ) || $share_key ) {
|
69 |
+
|
70 |
+
$default = array(
|
71 |
+
'count' => 99999,
|
72 |
+
'field' => null,
|
73 |
+
'offset' => 0,
|
74 |
+
'order' => 'DESC',
|
75 |
+
'order_by' => 'date',
|
76 |
+
'external' => true,
|
77 |
+
'sql' => '',
|
78 |
+
);
|
79 |
+
|
80 |
+
foreach ( $default as $_k => $_v ) {
|
81 |
+
if ( array_key_exists( $_k, $data ) ) {
|
82 |
+
$default[ $_k ] = $data[ $_k ];
|
83 |
+
unset( $data[ $_k ] );
|
84 |
+
}
|
85 |
+
}
|
86 |
+
|
87 |
+
$default['offset'] = absint( $default['offset'] );
|
88 |
+
$default['count'] = absint( $default['count'] );
|
89 |
+
|
90 |
+
if ( is_array( $default['field'] ) ) {
|
91 |
+
$default['field'] = '`' . implode( '`,`', $default['field'] ) . '`';
|
92 |
+
} elseif ( is_string( $default['field'] ) ) {
|
93 |
+
$default['field'] = array( 'ID', $default['field'] );
|
94 |
+
$default['field'] = '`' . implode( '`,`', $default['field'] ) . '`';
|
95 |
+
} else {
|
96 |
+
$default['field'] = $table . '.*, ' . $table_lists . '.ID as wishlist_id, ' . $table_lists . '.status as wishlist_status, ' . $table_lists . '.title as wishlist_title, ' . $table_lists . '.share_key as wishlist_share_key';
|
97 |
+
}
|
98 |
+
|
99 |
+
$sql = "SELECT {$default[ 'field' ]} FROM `{$table}` INNER JOIN `{$table_lists}` ON `{$table}`.`wishlist_id` = `{$table_lists}`.`ID` AND `{$table_lists}`.`type` = 'default'";
|
100 |
+
|
101 |
+
if ( $share_key ) {
|
102 |
+
$sql .= " AND `{$table_lists}`.`share_key` = '{$share_key}'";
|
103 |
+
}
|
104 |
+
|
105 |
+
$where = '1';
|
106 |
+
|
107 |
+
if ( ! empty( $data ) && is_array( $data ) ) {
|
108 |
+
|
109 |
+
if ( array_key_exists( 'meta', $data ) ) {
|
110 |
+
$product_id = $variation_id = 0;
|
111 |
+
if ( array_key_exists( 'product_id', $data ) ) {
|
112 |
+
$product_id = $data['product_id'];
|
113 |
+
}
|
114 |
+
if ( array_key_exists( 'variation_id', $data ) ) {
|
115 |
+
$variation_id = $data['variation_id'];
|
116 |
+
}
|
117 |
+
$data['formdata'] = '';
|
118 |
+
unset( $data['meta'] );
|
119 |
+
}
|
120 |
+
|
121 |
+
foreach ( $data as $f => $v ) {
|
122 |
+
$s = is_array( $v ) ? ' IN ' : '=';
|
123 |
+
if ( is_array( $v ) ) {
|
124 |
+
foreach ( $v as $_f => $_v ) {
|
125 |
+
$v[ $_f ] = $wpdb->prepare( '%s', $_v );
|
126 |
+
}
|
127 |
+
$v = implode( ',', $v );
|
128 |
+
$v = "($v)";
|
129 |
+
} else {
|
130 |
+
$v = $wpdb->prepare( '%s', $v );
|
131 |
+
}
|
132 |
+
$data[ $f ] = sprintf( $table . '.' . '`%s`%s%s', $f, $s, $v );
|
133 |
+
}
|
134 |
+
|
135 |
+
$where = implode( ' AND ', $data );
|
136 |
+
|
137 |
+
$sql .= ' WHERE ' . $where;
|
138 |
+
}
|
139 |
+
|
140 |
+
$sql .= sprintf( ' ORDER BY `%s` %s LIMIT %d,%d;', $default['order_by'], $default['order'], $default['offset'], $default['count'] );
|
141 |
+
|
142 |
+
if ( ! empty( $default['sql'] ) ) {
|
143 |
+
$replacer = $replace = array();
|
144 |
+
$replace[0] = '{table}';
|
145 |
+
$replacer[0] = $table;
|
146 |
+
$replace[1] = '{where}';
|
147 |
+
$replacer[1] = $where;
|
148 |
+
|
149 |
+
foreach ( $default as $key => $value ) {
|
150 |
+
$i = count( $replace );
|
151 |
+
|
152 |
+
$replace[ $i ] = '{' . $key . '}';
|
153 |
+
$replacer[ $i ] = $value;
|
154 |
+
}
|
155 |
+
|
156 |
+
$sql = str_replace( $replace, $replacer, $default['sql'] );
|
157 |
+
}
|
158 |
+
|
159 |
+
$results = $wpdb->get_results( $sql, ARRAY_A );
|
160 |
+
|
161 |
+
if ( ! empty( $results ) ) {
|
162 |
+
foreach ( $results as $product ) {
|
163 |
+
$wishlists[ $product['wishlist_id'] ] = array(
|
164 |
+
'ID' => (int) $product['wishlist_id'],
|
165 |
+
'title' => $product['wishlist_title'],
|
166 |
+
'status' => $product['wishlist_status'],
|
167 |
+
'share_key' => $product['wishlist_share_key'],
|
168 |
+
);
|
169 |
+
|
170 |
+
}
|
171 |
+
|
172 |
+
foreach ( $wishlists as $wishlist ) {
|
173 |
+
|
174 |
+
foreach ( $results as $product ) {
|
175 |
+
if ( array_key_exists( $product['product_id'], $products ) ) {
|
176 |
+
$products[ $product['product_id'] ][ $wishlist['ID'] ]['in'][] = (int) $product['variation_id'];
|
177 |
+
} else {
|
178 |
+
$products[ $product['product_id'] ][ $wishlist['ID'] ] = $wishlist;
|
179 |
+
$products[ $product['product_id'] ][ $wishlist['ID'] ]['in'][] = (int) $product['variation_id'];
|
180 |
+
}
|
181 |
+
|
182 |
+
}
|
183 |
+
}
|
184 |
+
}
|
185 |
+
|
186 |
+
}
|
187 |
+
|
188 |
+
$count = is_array( $results ) ? count( $results ) : 0;
|
189 |
+
|
190 |
+
$response = array(
|
191 |
+
'products' => $products,
|
192 |
+
'counter' => $count,
|
193 |
+
);
|
194 |
+
|
195 |
+
wp_send_json( $response );
|
includes/api/frontend.class.php
CHANGED
@@ -85,20 +85,20 @@ class TInvWL_Includes_API_Frontend {
|
|
85 |
$ids = $request['ids'];
|
86 |
|
87 |
if ( $ids ) {
|
88 |
-
$add_class = new TInvWL_Public_AddToWishlist( TINVWL_PREFIX );
|
89 |
$wishlist_data = array();
|
90 |
-
|
|
|
|
|
|
|
91 |
'include' => $ids,
|
92 |
'limit' => count( $ids ),
|
93 |
);
|
94 |
-
$products
|
95 |
|
96 |
foreach ( $products as $product ) {
|
97 |
$wishlist_data[ $product->get_id() ] = $add_class->user_wishlist( $product );
|
98 |
}
|
99 |
-
|
100 |
-
$data['products'] = $wishlist_data;
|
101 |
-
$data['simple_flow'] = ( tinv_get_option( 'general', 'simple_flow' ) ) ? true : false;
|
102 |
}
|
103 |
|
104 |
$counter = $request['counter'];
|
85 |
$ids = $request['ids'];
|
86 |
|
87 |
if ( $ids ) {
|
|
|
88 |
$wishlist_data = array();
|
89 |
+
|
90 |
+
$add_class = new TInvWL_Public_AddToWishlist( TINVWL_PREFIX );
|
91 |
+
|
92 |
+
$args = array(
|
93 |
'include' => $ids,
|
94 |
'limit' => count( $ids ),
|
95 |
);
|
96 |
+
$products = wc_get_products( $args );
|
97 |
|
98 |
foreach ( $products as $product ) {
|
99 |
$wishlist_data[ $product->get_id() ] = $add_class->user_wishlist( $product );
|
100 |
}
|
101 |
+
$data['products'] = $wishlist_data;
|
|
|
|
|
102 |
}
|
103 |
|
104 |
$counter = $request['counter'];
|
includes/product.helper.php
CHANGED
@@ -555,6 +555,7 @@ class TInvWL_Product {
|
|
555 |
$result = false !== $wpdb->delete( $this->table, $data ); // WPCS: db call ok; no-cache ok; unprepared SQL ok.
|
556 |
if ( $result ) {
|
557 |
do_action( 'tinvwl_wishlist_product_removed_from_wishlist', $wishlist_id, $product_id, $variation_id );
|
|
|
558 |
}
|
559 |
|
560 |
return $result;
|
@@ -578,6 +579,7 @@ class TInvWL_Product {
|
|
578 |
$result = false !== $wpdb->delete( $this->table, array( 'product_id' => $product_id ) ); // WPCS: db call ok; no-cache ok; unprepared SQL ok.
|
579 |
if ( $result ) {
|
580 |
do_action( 'tinvwl_wishlist_product_removed_by_product', $product_id );
|
|
|
581 |
}
|
582 |
|
583 |
return $result;
|
@@ -634,6 +636,7 @@ class TInvWL_Product {
|
|
634 |
* @param array $data product data including author and wishlist IDs.
|
635 |
* */
|
636 |
do_action( 'tinvwl_product_removed', $data );
|
|
|
637 |
}
|
638 |
|
639 |
return $result;
|
555 |
$result = false !== $wpdb->delete( $this->table, $data ); // WPCS: db call ok; no-cache ok; unprepared SQL ok.
|
556 |
if ( $result ) {
|
557 |
do_action( 'tinvwl_wishlist_product_removed_from_wishlist', $wishlist_id, $product_id, $variation_id );
|
558 |
+
set_transient( '_tinvwl_update_wishlists_data', '1' );
|
559 |
}
|
560 |
|
561 |
return $result;
|
579 |
$result = false !== $wpdb->delete( $this->table, array( 'product_id' => $product_id ) ); // WPCS: db call ok; no-cache ok; unprepared SQL ok.
|
580 |
if ( $result ) {
|
581 |
do_action( 'tinvwl_wishlist_product_removed_by_product', $product_id );
|
582 |
+
set_transient( '_tinvwl_update_wishlists_data', '1' );
|
583 |
}
|
584 |
|
585 |
return $result;
|
636 |
* @param array $data product data including author and wishlist IDs.
|
637 |
* */
|
638 |
do_action( 'tinvwl_product_removed', $data );
|
639 |
+
set_transient( '_tinvwl_update_wishlists_data', '1' );
|
640 |
}
|
641 |
|
642 |
return $result;
|
includes/wishlist.class.php
CHANGED
@@ -492,6 +492,7 @@ class TInvWL_Wishlist {
|
|
492 |
if ( ! empty( $sharekey ) ) {
|
493 |
self::$default_sharekey = $tinvwl_wishlist_sharekey = $sharekey;
|
494 |
@setcookie( 'tinv_wishlistkey', self::$default_sharekey, time() + 31 * DAY_IN_SECONDS, COOKIEPATH, COOKIE_DOMAIN );
|
|
|
495 |
}
|
496 |
|
497 |
return self::$default_sharekey;
|
492 |
if ( ! empty( $sharekey ) ) {
|
493 |
self::$default_sharekey = $tinvwl_wishlist_sharekey = $sharekey;
|
494 |
@setcookie( 'tinv_wishlistkey', self::$default_sharekey, time() + 31 * DAY_IN_SECONDS, COOKIEPATH, COOKIE_DOMAIN );
|
495 |
+
set_transient( '_tinvwl_update_wishlists_data', '1' );
|
496 |
}
|
497 |
|
498 |
return self::$default_sharekey;
|
integrations/woocommerce-bookings.php
CHANGED
@@ -143,8 +143,14 @@ if ( class_exists( 'WC_Bookings' ) ) {
|
|
143 |
add_filter( 'woocommerce_product_object_query_args', 'tinvwl_item_product_type_woocommerce_bookings' );
|
144 |
|
145 |
function tinvwl_item_product_type_woocommerce_bookings( $args ) {
|
|
|
|
|
|
|
|
|
|
|
146 |
$args['type'][] = 'booking';
|
147 |
|
|
|
148 |
return $args;
|
149 |
}
|
150 |
}
|
143 |
add_filter( 'woocommerce_product_object_query_args', 'tinvwl_item_product_type_woocommerce_bookings' );
|
144 |
|
145 |
function tinvwl_item_product_type_woocommerce_bookings( $args ) {
|
146 |
+
|
147 |
+
if ( ! is_array( $args['type'] ) ) {
|
148 |
+
$args['type'] = [ $args['type'] ];
|
149 |
+
}
|
150 |
+
|
151 |
$args['type'][] = 'booking';
|
152 |
|
153 |
+
|
154 |
return $args;
|
155 |
}
|
156 |
}
|
languages/ti-woocommerce-wishlist.pot
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
-
# Copyright (C) 2020 TI WooCommerce Wishlist Plugin - 1.
|
2 |
-
# This file is distributed under the same license as the TI WooCommerce Wishlist Plugin - 1.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: TI WooCommerce Wishlist Plugin - 1.
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -908,7 +908,7 @@ msgstr ""
|
|
908 |
msgid "Page Setup"
|
909 |
msgstr ""
|
910 |
|
911 |
-
#: includes/wizard.class.php:295, includes/wizard.class.php:326, public/tinvwl.class.php:
|
912 |
msgid "Wishlist"
|
913 |
msgstr ""
|
914 |
|
@@ -1084,19 +1084,19 @@ msgstr ""
|
|
1084 |
msgid "Something went wrong"
|
1085 |
msgstr ""
|
1086 |
|
1087 |
-
#: public/tinvwl.class.php:
|
1088 |
msgid "Create New"
|
1089 |
msgstr ""
|
1090 |
|
1091 |
-
#: public/tinvwl.class.php:
|
1092 |
msgid "Please select some product options before adding this product to your wishlist."
|
1093 |
msgstr ""
|
1094 |
|
1095 |
-
#: public/tinvwl.class.php:
|
1096 |
msgid "No items or actions are selected."
|
1097 |
msgstr ""
|
1098 |
|
1099 |
-
#: public/tinvwl.class.php:
|
1100 |
msgid "Copied!"
|
1101 |
msgstr ""
|
1102 |
|
1 |
+
# Copyright (C) 2020 TI WooCommerce Wishlist Plugin - 1.21.0
|
2 |
+
# This file is distributed under the same license as the TI WooCommerce Wishlist Plugin - 1.21.0 package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: TI WooCommerce Wishlist Plugin - 1.21.0\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
908 |
msgid "Page Setup"
|
909 |
msgstr ""
|
910 |
|
911 |
+
#: includes/wizard.class.php:295, includes/wizard.class.php:326, public/tinvwl.class.php:620
|
912 |
msgid "Wishlist"
|
913 |
msgstr ""
|
914 |
|
1084 |
msgid "Something went wrong"
|
1085 |
msgstr ""
|
1086 |
|
1087 |
+
#: public/tinvwl.class.php:499
|
1088 |
msgid "Create New"
|
1089 |
msgstr ""
|
1090 |
|
1091 |
+
#: public/tinvwl.class.php:502
|
1092 |
msgid "Please select some product options before adding this product to your wishlist."
|
1093 |
msgstr ""
|
1094 |
|
1095 |
+
#: public/tinvwl.class.php:503
|
1096 |
msgid "No items or actions are selected."
|
1097 |
msgstr ""
|
1098 |
|
1099 |
+
#: public/tinvwl.class.php:504
|
1100 |
msgid "Copied!"
|
1101 |
msgstr ""
|
1102 |
|
public/addtowishlist.class.php
CHANGED
@@ -359,12 +359,155 @@ class TInvWL_Public_AddToWishlist {
|
|
359 |
if ( tinv_get_option( 'general', 'simple_flow' ) ) {
|
360 |
$data['make_remove'] = $data['status'];
|
361 |
}
|
362 |
-
$data['
|
363 |
-
$data
|
364 |
ob_clean();
|
365 |
wp_send_json( $data );
|
366 |
}
|
367 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
368 |
/**
|
369 |
* Get user wishlist
|
370 |
*
|
@@ -550,8 +693,6 @@ class TInvWL_Public_AddToWishlist {
|
|
550 |
return;
|
551 |
}
|
552 |
|
553 |
-
$wishlists = $this->user_wishlist( $this->product );
|
554 |
-
|
555 |
add_action( 'tinvwl_wishlist_addtowishlist_button', array( $this, 'button' ) );
|
556 |
|
557 |
if ( $this->is_loop && in_array( ( version_compare( WC_VERSION, '3.0.0', '<' ) ? $this->product->product_type : $this->product->get_type() ), array(
|
@@ -593,7 +734,6 @@ class TInvWL_Public_AddToWishlist {
|
|
593 |
'variable',
|
594 |
'variable-subscription',
|
595 |
) ) ) ? $this->variation_id : ( version_compare( WC_VERSION, '3.0.0', '<' ) ? $this->product->variation_id : ( $this->product->is_type( 'variation' ) ? $this->product->get_id() : 0 ) ),
|
596 |
-
'TInvWishlist' => $wishlists,
|
597 |
'button_icon' => tinv_get_option( 'add_to_wishlist' . ( $this->is_loop ? '_catalog' : '' ), 'icon' ),
|
598 |
'add_to_wishlist' => apply_filters( 'tinvwl_added_to_wishlist_text_loop', tinv_get_option( 'add_to_wishlist' . ( $this->is_loop ? '_catalog' : '' ), 'text' ) ),
|
599 |
'browse_in_wishlist' => apply_filters( 'tinvwl_view_wishlist_text', tinv_get_option( 'general', 'text_browse' ) ),
|
@@ -650,7 +790,7 @@ class TInvWL_Public_AddToWishlist {
|
|
650 |
|
651 |
$icon .= ( tinv_get_option( 'add_to_wishlist' . ( $this->is_loop ? '_catalog' : '' ), 'show_preloader' ) ) ? ' ftinvwl-animated' : '';
|
652 |
|
653 |
-
$content .= sprintf( '<a role="button" aria-label="%s" class="tinvwl_add_to_wishlist_button
|
654 |
$button_text,
|
655 |
$icon,
|
656 |
apply_filters( 'wpml_object_id', ( version_compare( WC_VERSION, '3.0.0', '<' ) ? $this->product->id : ( $this->product->is_type( 'variation' ) ? $this->product->get_parent_id() : $this->product->get_id() ) ), 'product', true ),
|
359 |
if ( tinv_get_option( 'general', 'simple_flow' ) ) {
|
360 |
$data['make_remove'] = $data['status'];
|
361 |
}
|
362 |
+
$data['wishlists_data'] = $this->get_wishlists_data( $wishlist['share_key'] );
|
363 |
+
$data = apply_filters( 'tinvwl_addtowishlist_return_ajax', $data, $post, $form, $product );
|
364 |
ob_clean();
|
365 |
wp_send_json( $data );
|
366 |
}
|
367 |
|
368 |
+
function get_wishlists_data( $share_key ) {
|
369 |
+
|
370 |
+
global $wpdb;
|
371 |
+
|
372 |
+
$table = sprintf( '%s%s', $wpdb->prefix, 'tinvwl_items' );
|
373 |
+
$table_lists = sprintf( '%s%s', $wpdb->prefix, 'tinvwl_lists' );
|
374 |
+
|
375 |
+
$data = $products = $wishlists = $results = array();
|
376 |
+
|
377 |
+
if ( is_user_logged_in() ) {
|
378 |
+
$data['author'] = get_current_user_id();
|
379 |
+
}
|
380 |
+
|
381 |
+
if ( ( isset( $data['author'] ) && $data['author'] ) || $share_key ) {
|
382 |
+
|
383 |
+
$default = array(
|
384 |
+
'count' => 99999,
|
385 |
+
'field' => null,
|
386 |
+
'offset' => 0,
|
387 |
+
'order' => 'DESC',
|
388 |
+
'order_by' => 'date',
|
389 |
+
'external' => true,
|
390 |
+
'sql' => '',
|
391 |
+
);
|
392 |
+
|
393 |
+
foreach ( $default as $_k => $_v ) {
|
394 |
+
if ( array_key_exists( $_k, $data ) ) {
|
395 |
+
$default[ $_k ] = $data[ $_k ];
|
396 |
+
unset( $data[ $_k ] );
|
397 |
+
}
|
398 |
+
}
|
399 |
+
|
400 |
+
$default['offset'] = absint( $default['offset'] );
|
401 |
+
$default['count'] = absint( $default['count'] );
|
402 |
+
|
403 |
+
if ( is_array( $default['field'] ) ) {
|
404 |
+
$default['field'] = '`' . implode( '`,`', $default['field'] ) . '`';
|
405 |
+
} elseif ( is_string( $default['field'] ) ) {
|
406 |
+
$default['field'] = array( 'ID', $default['field'] );
|
407 |
+
$default['field'] = '`' . implode( '`,`', $default['field'] ) . '`';
|
408 |
+
} else {
|
409 |
+
$default['field'] = $table . '.*, ' . $table_lists . '.ID as wishlist_id, ' . $table_lists . '.status as wishlist_status, ' . $table_lists . '.title as wishlist_title, ' . $table_lists . '.share_key as wishlist_share_key';
|
410 |
+
}
|
411 |
+
|
412 |
+
$sql = "SELECT {$default[ 'field' ]} FROM `{$table}` INNER JOIN `{$table_lists}` ON `{$table}`.`wishlist_id` = `{$table_lists}`.`ID` AND `{$table_lists}`.`type` = 'default'";
|
413 |
+
|
414 |
+
if ( $share_key ) {
|
415 |
+
$sql .= " AND `{$table_lists}`.`share_key` = '{$share_key}'";
|
416 |
+
}
|
417 |
+
|
418 |
+
$where = '1';
|
419 |
+
|
420 |
+
if ( ! empty( $data ) && is_array( $data ) ) {
|
421 |
+
|
422 |
+
if ( array_key_exists( 'meta', $data ) ) {
|
423 |
+
$product_id = $variation_id = 0;
|
424 |
+
if ( array_key_exists( 'product_id', $data ) ) {
|
425 |
+
$product_id = $data['product_id'];
|
426 |
+
}
|
427 |
+
if ( array_key_exists( 'variation_id', $data ) ) {
|
428 |
+
$variation_id = $data['variation_id'];
|
429 |
+
}
|
430 |
+
$data['formdata'] = '';
|
431 |
+
unset( $data['meta'] );
|
432 |
+
}
|
433 |
+
|
434 |
+
foreach ( $data as $f => $v ) {
|
435 |
+
$s = is_array( $v ) ? ' IN ' : '=';
|
436 |
+
if ( is_array( $v ) ) {
|
437 |
+
foreach ( $v as $_f => $_v ) {
|
438 |
+
$v[ $_f ] = $wpdb->prepare( '%s', $_v );
|
439 |
+
}
|
440 |
+
$v = implode( ',', $v );
|
441 |
+
$v = "($v)";
|
442 |
+
} else {
|
443 |
+
$v = $wpdb->prepare( '%s', $v );
|
444 |
+
}
|
445 |
+
$data[ $f ] = sprintf( $table . '.' . '`%s`%s%s', $f, $s, $v );
|
446 |
+
}
|
447 |
+
|
448 |
+
$where = implode( ' AND ', $data );
|
449 |
+
|
450 |
+
$sql .= ' WHERE ' . $where;
|
451 |
+
}
|
452 |
+
|
453 |
+
$sql .= sprintf( ' ORDER BY `%s` %s LIMIT %d,%d;', $default['order_by'], $default['order'], $default['offset'], $default['count'] );
|
454 |
+
|
455 |
+
if ( ! empty( $default['sql'] ) ) {
|
456 |
+
$replacer = $replace = array();
|
457 |
+
$replace[0] = '{table}';
|
458 |
+
$replacer[0] = $table;
|
459 |
+
$replace[1] = '{where}';
|
460 |
+
$replacer[1] = $where;
|
461 |
+
|
462 |
+
foreach ( $default as $key => $value ) {
|
463 |
+
$i = count( $replace );
|
464 |
+
|
465 |
+
$replace[ $i ] = '{' . $key . '}';
|
466 |
+
$replacer[ $i ] = $value;
|
467 |
+
}
|
468 |
+
|
469 |
+
$sql = str_replace( $replace, $replacer, $default['sql'] );
|
470 |
+
}
|
471 |
+
|
472 |
+
$results = $wpdb->get_results( $sql, ARRAY_A );
|
473 |
+
|
474 |
+
if ( ! empty( $results ) ) {
|
475 |
+
foreach ( $results as $product ) {
|
476 |
+
$wishlists[ $product['wishlist_id'] ] = array(
|
477 |
+
'ID' => (int) $product['wishlist_id'],
|
478 |
+
'title' => $product['wishlist_title'],
|
479 |
+
'status' => $product['wishlist_status'],
|
480 |
+
'share_key' => $product['wishlist_share_key'],
|
481 |
+
);
|
482 |
+
|
483 |
+
}
|
484 |
+
|
485 |
+
foreach ( $wishlists as $wishlist ) {
|
486 |
+
|
487 |
+
foreach ( $results as $product ) {
|
488 |
+
if ( array_key_exists( $product['product_id'], $products ) ) {
|
489 |
+
$products[ $product['product_id'] ][ $wishlist['ID'] ]['in'][] = (int) $product['variation_id'];
|
490 |
+
} else {
|
491 |
+
$products[ $product['product_id'] ][ $wishlist['ID'] ] = $wishlist;
|
492 |
+
$products[ $product['product_id'] ][ $wishlist['ID'] ]['in'][] = (int) $product['variation_id'];
|
493 |
+
}
|
494 |
+
|
495 |
+
}
|
496 |
+
}
|
497 |
+
}
|
498 |
+
|
499 |
+
}
|
500 |
+
|
501 |
+
$count = is_array( $results ) ? count( $results ) : 0;
|
502 |
+
|
503 |
+
$response = array(
|
504 |
+
'products' => $products,
|
505 |
+
'counter' => $count,
|
506 |
+
);
|
507 |
+
|
508 |
+
return $response;
|
509 |
+
}
|
510 |
+
|
511 |
/**
|
512 |
* Get user wishlist
|
513 |
*
|
693 |
return;
|
694 |
}
|
695 |
|
|
|
|
|
696 |
add_action( 'tinvwl_wishlist_addtowishlist_button', array( $this, 'button' ) );
|
697 |
|
698 |
if ( $this->is_loop && in_array( ( version_compare( WC_VERSION, '3.0.0', '<' ) ? $this->product->product_type : $this->product->get_type() ), array(
|
734 |
'variable',
|
735 |
'variable-subscription',
|
736 |
) ) ) ? $this->variation_id : ( version_compare( WC_VERSION, '3.0.0', '<' ) ? $this->product->variation_id : ( $this->product->is_type( 'variation' ) ? $this->product->get_id() : 0 ) ),
|
|
|
737 |
'button_icon' => tinv_get_option( 'add_to_wishlist' . ( $this->is_loop ? '_catalog' : '' ), 'icon' ),
|
738 |
'add_to_wishlist' => apply_filters( 'tinvwl_added_to_wishlist_text_loop', tinv_get_option( 'add_to_wishlist' . ( $this->is_loop ? '_catalog' : '' ), 'text' ) ),
|
739 |
'browse_in_wishlist' => apply_filters( 'tinvwl_view_wishlist_text', tinv_get_option( 'general', 'text_browse' ) ),
|
790 |
|
791 |
$icon .= ( tinv_get_option( 'add_to_wishlist' . ( $this->is_loop ? '_catalog' : '' ), 'show_preloader' ) ) ? ' ftinvwl-animated' : '';
|
792 |
|
793 |
+
$content .= sprintf( '<a role="button" aria-label="%s" class="tinvwl_add_to_wishlist_button %s" data-tinv-wl-list="[]" data-tinv-wl-product="%s" data-tinv-wl-productvariation="%s" data-tinv-wl-productvariations="%s" data-tinv-wl-producttype="%s" data-tinv-wl-action="add">%s</a>',
|
794 |
$button_text,
|
795 |
$icon,
|
796 |
apply_filters( 'wpml_object_id', ( version_compare( WC_VERSION, '3.0.0', '<' ) ? $this->product->id : ( $this->product->is_type( 'variation' ) ? $this->product->get_parent_id() : $this->product->get_id() ) ), 'product', true ),
|
public/tinvwl.class.php
CHANGED
@@ -82,6 +82,8 @@ class TInvWL_Public_TInvWL {
|
|
82 |
|
83 |
add_filter( 'rewrite_rules_array', array( $this, 'add_rewrite_rules_raw' ), 9999999 );
|
84 |
|
|
|
|
|
85 |
add_filter( 'query_vars', array( $this, 'add_query_var' ) );
|
86 |
add_action( 'wp', array( $this, 'analytics_referer' ) );
|
87 |
add_action( 'deleted_user', array( $this, 'delete_user_wishlist' ) );
|
@@ -99,6 +101,16 @@ class TInvWL_Public_TInvWL {
|
|
99 |
$this->topwishlist = TInvWL_Public_WishlistCounter::instance( $this->_name );
|
100 |
}
|
101 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
/**
|
103 |
* @param $rules
|
104 |
*
|
@@ -128,6 +140,7 @@ class TInvWL_Public_TInvWL {
|
|
128 |
|
129 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_header' ) );
|
130 |
add_action( 'wp_login', array( $this, 'transfert_local_to_user' ), 10, 2 );
|
|
|
131 |
add_action( 'user_register', array( $this, 'transfert_local_to_user_register' ) );
|
132 |
add_action( 'init', array( $this, 'legacy_transfer' ), 90 );
|
133 |
add_action( 'clear_auth_cookie', array( $this, 'set_user_sharekey' ) );
|
@@ -490,9 +503,12 @@ class TInvWL_Public_TInvWL {
|
|
490 |
'tinvwl_break_submit' => esc_attr__( 'No items or actions are selected.', 'ti-woocommerce-wishlist' ),
|
491 |
'tinvwl_clipboard' => esc_attr__( 'Copied!', 'ti-woocommerce-wishlist' ),
|
492 |
'allow_parent_variable' => apply_filters( 'tinvwl_allow_add_parent_variable_product', false ),
|
493 |
-
'
|
|
|
|
|
494 |
'nonce' => wp_create_nonce( 'wp_rest' ),
|
495 |
'rest_root' => esc_url_raw( get_rest_url() ),
|
|
|
496 |
);
|
497 |
|
498 |
if ( function_exists( 'wpml_get_current_language' ) ) {
|
@@ -525,12 +541,19 @@ class TInvWL_Public_TInvWL {
|
|
525 |
return $this->transfert_local_to_user_register( $user->ID );
|
526 |
}
|
527 |
|
|
|
|
|
|
|
|
|
528 |
/**
|
529 |
* Transfer Cookie Wishlist when register user
|
530 |
*
|
531 |
* @param integer $user_id New user id.
|
532 |
*/
|
533 |
function transfert_local_to_user_register( $user_id ) {
|
|
|
|
|
|
|
534 |
$wl = new TInvWL_Wishlist( $this->_name );
|
535 |
$wishlist = $wl->get_by_sharekey_default();
|
536 |
if ( ! empty( $wishlist ) ) {
|
82 |
|
83 |
add_filter( 'rewrite_rules_array', array( $this, 'add_rewrite_rules_raw' ), 9999999 );
|
84 |
|
85 |
+
add_filter( 'tinvwl_update_wishlists_data', array( $this, 'update_local_wishlists_data' ) );
|
86 |
+
|
87 |
add_filter( 'query_vars', array( $this, 'add_query_var' ) );
|
88 |
add_action( 'wp', array( $this, 'analytics_referer' ) );
|
89 |
add_action( 'deleted_user', array( $this, 'delete_user_wishlist' ) );
|
101 |
$this->topwishlist = TInvWL_Public_WishlistCounter::instance( $this->_name );
|
102 |
}
|
103 |
|
104 |
+
function update_local_wishlists_data( $state ) {
|
105 |
+
if ( get_transient( '_tinvwl_update_wishlists_data' ) ) {
|
106 |
+
delete_transient( '_tinvwl_update_wishlists_data' );
|
107 |
+
|
108 |
+
return true;
|
109 |
+
}
|
110 |
+
|
111 |
+
return $state;
|
112 |
+
}
|
113 |
+
|
114 |
/**
|
115 |
* @param $rules
|
116 |
*
|
140 |
|
141 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_header' ) );
|
142 |
add_action( 'wp_login', array( $this, 'transfert_local_to_user' ), 10, 2 );
|
143 |
+
add_action( 'wp_logout', array( $this, 'logout' ), 10, 2 );
|
144 |
add_action( 'user_register', array( $this, 'transfert_local_to_user_register' ) );
|
145 |
add_action( 'init', array( $this, 'legacy_transfer' ), 90 );
|
146 |
add_action( 'clear_auth_cookie', array( $this, 'set_user_sharekey' ) );
|
503 |
'tinvwl_break_submit' => esc_attr__( 'No items or actions are selected.', 'ti-woocommerce-wishlist' ),
|
504 |
'tinvwl_clipboard' => esc_attr__( 'Copied!', 'ti-woocommerce-wishlist' ),
|
505 |
'allow_parent_variable' => apply_filters( 'tinvwl_allow_add_parent_variable_product', false ),
|
506 |
+
'block_ajax_wishlists_data' => apply_filters( 'tinvwl_block_ajax_wishlists_data', false ),
|
507 |
+
'update_wishlists_data' => apply_filters( 'tinvwl_update_wishlists_data', false ),
|
508 |
+
'hash_key' => 'ti_wishlist_data_' . md5( get_current_blog_id() . '_' . get_site_url( get_current_blog_id(), '/' ) . get_template() ),
|
509 |
'nonce' => wp_create_nonce( 'wp_rest' ),
|
510 |
'rest_root' => esc_url_raw( get_rest_url() ),
|
511 |
+
'plugin_url' => esc_url_raw( TINVWL_URL ),
|
512 |
);
|
513 |
|
514 |
if ( function_exists( 'wpml_get_current_language' ) ) {
|
541 |
return $this->transfert_local_to_user_register( $user->ID );
|
542 |
}
|
543 |
|
544 |
+
function logout( $user_id ) {
|
545 |
+
set_transient( '_tinvwl_update_wishlists_data', '1' );
|
546 |
+
}
|
547 |
+
|
548 |
/**
|
549 |
* Transfer Cookie Wishlist when register user
|
550 |
*
|
551 |
* @param integer $user_id New user id.
|
552 |
*/
|
553 |
function transfert_local_to_user_register( $user_id ) {
|
554 |
+
|
555 |
+
set_transient( '_tinvwl_update_wishlists_data', '1' );
|
556 |
+
|
557 |
$wl = new TInvWL_Wishlist( $this->_name );
|
558 |
$wishlist = $wl->get_by_sharekey_default();
|
559 |
if ( ! empty( $wishlist ) ) {
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: templateinvaders
|
|
3 |
Tags: woocommerce, wishlist, woocommerce wishlist, e-commerce, ecommerce
|
4 |
Requires at least: 4.7
|
5 |
Tested up to: 5.4
|
6 |
-
Stable tag: 1.
|
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/
|
@@ -163,6 +163,13 @@ Yes, you can! Join in on our [GitHub repository](https://github.com/TemplateInva
|
|
163 |
|
164 |
|
165 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
166 |
= 1.20.5 =
|
167 |
*Release Date - 25 June 2020*
|
168 |
|
3 |
Tags: woocommerce, wishlist, woocommerce wishlist, e-commerce, ecommerce
|
4 |
Requires at least: 4.7
|
5 |
Tested up to: 5.4
|
6 |
+
Stable tag: 1.21.0
|
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/
|
163 |
|
164 |
|
165 |
== Changelog ==
|
166 |
+
= 1.21.0 =
|
167 |
+
*Release Date - 30 July 2020*
|
168 |
+
|
169 |
+
* Wishlist user-side data completely refactored
|
170 |
+
* Great performance improvements
|
171 |
+
* Fixed integration with [WooCommerce Bookings](https://woocommerce.com/products/woocommerce-bookings/?aff=3955) plugin
|
172 |
+
|
173 |
= 1.20.5 =
|
174 |
*Release Date - 25 June 2020*
|
175 |
|
ti-woocommerce-wishlist.php
CHANGED
@@ -4,11 +4,11 @@
|
|
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: 1.
|
8 |
* Requires at least: 4.7
|
9 |
* Tested up to: 5.4
|
10 |
* WC requires at least: 2.6
|
11 |
-
* WC tested up to: 4.
|
12 |
* Author: TemplateInvaders
|
13 |
* Author URI: https://templateinvaders.com/
|
14 |
* License: GPL-2.0+
|
@@ -41,7 +41,7 @@ if ( ! defined( 'TINVWL_DOMAIN' ) ) {
|
|
41 |
}
|
42 |
|
43 |
if ( ! defined( 'TINVWL_FVERSION' ) ) {
|
44 |
-
define( 'TINVWL_FVERSION', '1.
|
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: 1.21.0
|
8 |
* Requires at least: 4.7
|
9 |
* Tested up to: 5.4
|
10 |
* WC requires at least: 2.6
|
11 |
+
* WC tested up to: 4.3.1
|
12 |
* Author: TemplateInvaders
|
13 |
* Author URI: https://templateinvaders.com/
|
14 |
* License: GPL-2.0+
|
41 |
}
|
42 |
|
43 |
if ( ! defined( 'TINVWL_FVERSION' ) ) {
|
44 |
+
define( 'TINVWL_FVERSION', '1.21.0' );
|
45 |
}
|
46 |
|
47 |
if ( ! defined( 'TINVWL_LOAD_FREE' ) ) {
|
tinv-wishlists-function.php
CHANGED
@@ -902,3 +902,15 @@ if ( ! function_exists( 'tinvwl_get_wishlist_products' ) ) {
|
|
902 |
return $products;
|
903 |
}
|
904 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
902 |
return $products;
|
903 |
}
|
904 |
}
|
905 |
+
|
906 |
+
add_action( 'init', function () {
|
907 |
+
if ( ! is_user_logged_in() ) {
|
908 |
+
add_filter( 'nonce_user_logged_out', function ( $uid, $action = - 1 ) {
|
909 |
+
if ( $action === 'wp_rest' ) {
|
910 |
+
return get_current_user_id();
|
911 |
+
}
|
912 |
+
|
913 |
+
return $uid;
|
914 |
+
}, 99, 2 );
|
915 |
+
}
|
916 |
+
} );
|