Version Description
Release Date - 24 April 2020
- Added integration with Product Options and Price Calculation Formulas for WooCommerce Uni CPO plugin
- Added integration with Hide Price and Add to Cart Button plugin
- Added integration with Advanced Product Fields (Product Options) for WooCommerce plugin
- Added integration with WooCommerce Product Add-Ons Ultimate plugin
- Added compatibility for wishlist products counter in Woostify theme
- Fixed integration with WooCommerce Rental & Bookings System plugin
- Fixed integration with Improved Product Options for WooCommerce plugin
- Improved integration with WooCommerce Composite Products plugin
- Fixed multiple REST API queries for dynamic buttons
- Fixed wishlist product counter "hide zero value" issue
Download this release
Release Info
Developer | templateinvaders |
Plugin | WooCommerce Wishlist Plugin |
Version | 1.19.0 |
Comparing to | |
See all releases |
Code changes from version 1.18.4 to 1.19.0
- assets/css/admin-form.min.css +1 -1
- assets/css/admin-setup.min.css +1 -1
- assets/css/admin.min.css +1 -1
- assets/css/public.css +12 -1
- assets/css/public.css.map +1 -1
- assets/css/public.min.css +2 -1
- assets/css/theme.min.css +1 -1
- assets/js/admin.min.js +1 -1
- assets/js/public.js +24 -13
- assets/js/public.min.js +2 -2
- integrations/advanced-product-fields-for-woocommerce.php +146 -0
- integrations/hide-price-add-to-cart-button.php +429 -0
- integrations/improved-variable-product-attributes.php +12 -5
- integrations/product-extras-for-woocommerce.php +319 -0
- integrations/uni-woo-custom-product-options.php +186 -0
- integrations/woocommerce-composite-products.php +12 -7
- integrations/woocommerce-rental-and-booking.php +5 -5
- languages/ti-woocommerce-wishlist.pot +7 -3
- readme.txt +15 -1
- ti-woocommerce-wishlist.php +2 -2
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.19.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-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.19.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.19.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.css
CHANGED
@@ -1316,6 +1316,17 @@ ul.products li.product .tinvwl_add_to_wishlist_button {
|
|
1316 |
.tooltipped-sticky.tooltipped-multiline::after {
|
1317 |
display: table-cell; }
|
1318 |
|
1319 |
-
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLmNzcyIsInNvdXJjZXMiOlsicHVibGljLnNjc3MiLCJ3ZWJmb250LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O3VDQUV1QztBQ0Z2Qzs7cUVBRXFFO0FBQ3JFLFVBQVU7RUFDVCxXQUFXLEVBQUUsZ0JBQWdCO0VBQzdCLEdBQUcsRUFBRSx5Q0FBeUM7RUFDOUMsR0FBRyxFQUFFLCtDQUErQyxDQUFDLDJCQUEyQixFQUNoRix5Q0FBeUMsQ0FBQyxrQkFBa0IsRUFDNUQsMENBQTBDLENBQUMsY0FBYyxFQUN6RCx3REFBd0QsQ0FBQyxhQUFhO0VBQ3RFLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxNQUFNOztBQUduQixBQUFBLFFBQVEsQ0FBQztFQUNSLGdGQUFnRjtFQUNoRixXQUFXLEVBQUUsMkJBQTJCO0VBQ3hDLEtBQUssRUFBRSxJQUFJO0VBQ1gsVUFBVSxFQUFFLE1BQU07RUFDbEIsV0FBVyxFQUFFLE1BQU07RUFDbkIsWUFBWSxFQUFFLE1BQU07RUFDcEIsY0FBYyxFQUFFLElBQUk7RUFDcEIsV0FBVyxFQUFFLENBQUM7RUFFZCx1Q0FBdUM7RUFDdkMsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTLEdBQ2xDOztBQUVELEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFDO0VBQ3ZCLE9BQU8sRUFBRSxPQUFPLEdBQ2hCOztBQUVELEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFDO0VBQ3hCLE9BQU8sRUFBRSxPQUFPLEdBQ2hCOztBQUVELEFBQUEsbUJBQW1CLEFBQUEsT0FBTyxDQUFDO0VBQzFCLE9BQU8sRUFBRSxPQUFPLEdBQ2hCOztBQUVELEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBQztFQUN0QixPQUFPLEVBQUUsT0FBTyxHQUNoQjs7QUFFRCxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQUM7RUFDckIsT0FBTyxFQUFFLE9BQU8sR0FDaEI7O0FBRUQsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENB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 */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1320 |
|
1321 |
/*# sourceMappingURL=public.css.map */
|
1316 |
.tooltipped-sticky.tooltipped-multiline::after {
|
1317 |
display: table-cell; }
|
1318 |
|
1319 |
+
.tinvwl-table-manage-list .component_table_item_price:before {
|
1320 |
+
font-family: 'FontAwesomeCP';
|
1321 |
+
font-size: 1rem;
|
1322 |
+
display: inline-block;
|
1323 |
+
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
|
1324 |
+
-webkit-transform: rotate(90deg);
|
1325 |
+
transform: rotate(90deg);
|
1326 |
+
content: "\e811";
|
1327 |
+
margin: 0 12px 0 3px;
|
1328 |
+
opacity: .25; }
|
1329 |
+
|
1330 |
+
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLmNzcyIsInNvdXJjZXMiOlsicHVibGljLnNjc3MiLCJ3ZWJmb250LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O3VDQUV1QztBQ0Z2Qzs7cUVBRXFFO0FBQ3JFLFVBQVU7RUFDVCxXQUFXLEVBQUUsZ0JBQWdCO0VBQzdCLEdBQUcsRUFBRSx5Q0FBeUM7RUFDOUMsR0FBRyxFQUFFLCtDQUErQyxDQUFDLDJCQUEyQixFQUNoRix5Q0FBeUMsQ0FBQyxrQkFBa0IsRUFDNUQsMENBQTBDLENBQUMsY0FBYyxFQUN6RCx3REFBd0QsQ0FBQyxhQUFhO0VBQ3RFLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxNQUFNOztBQUduQixBQUFBLFFBQVEsQ0FBQztFQUNSLGdGQUFnRjtFQUNoRixXQUFXLEVBQUUsMkJBQTJCO0VBQ3hDLEtBQUssRUFBRSxJQUFJO0VBQ1gsVUFBVSxFQUFFLE1BQU07RUFDbEIsV0FBVyxFQUFFLE1BQU07RUFDbkIsWUFBWSxFQUFFLE1BQU07RUFDcEIsY0FBYyxFQUFFLElBQUk7RUFDcEIsV0FBVyxFQUFFLENBQUM7RUFFZCx1Q0FBdUM7RUFDdkMsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTLEdBQ2xDOztBQUVELEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFDO0VBQ3ZCLE9BQU8sRUFBRSxPQUFPLEdBQ2hCOztBQUVELEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFDO0VBQ3hCLE9BQU8sRUFBRSxPQUFPLEdBQ2hCOztBQUVELEFBQUEsbUJBQW1CLEFBQUEsT0FBTyxDQUFDO0VBQzFCLE9BQU8sRUFBRSxPQUFPLEdBQ2hCOztBQUVELEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBQztFQUN0QixPQUFPLEVBQUUsT0FBTyxHQUNoQjs7QUFFRCxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQUM7RUFDckIsT0FBTyxFQUFFLE9BQU8sR0FDaEI7O0FBRUQsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENB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 */
|
1331 |
|
1332 |
/*# sourceMappingURL=public.css.map */
|
assets/css/public.css.map
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"version":3,"sources":["public.scss","public.css","webfont.scss"],"names":[],"mappings":"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EAAA;ICpOF;MA4PE,oBD5PF;MC4PE,oBD5PF;MC4PE,aD5PF;MC6PE,0BDLe;UCKf,qBDLe;MCMf,wBD1BA;UC0BA,qBD1BA;cC0BA,uBD1BA;MC2BA,UDHA;MCIA,WDHA;MCIA,kBDHA;MCIA,kBDHU;MCIV,wBDHW;cCGX,gBDHW;MCIX,SDHA;MCIA,eDHU;MCIV,qBDHgB;MCIhB,+BDHS,EAAA;MCpQX;QA0QI,cDHF,EAAA;MCvQF;QA8QI,cDAO,EAAA;MC9QX;QDAA,gBAwRE,EAAA;;ACxRF;EDmSC,aAAW,EAAA;;ACnSZ;EA+RC,gBDUc;ECTd,mBDUS;ECTT,oBDUY;ECVZ,oBDUY;ECVZ,aDUY;ECTZ,8BDUiB;ECVjB,6BDUiB;MCVjB,uBDUiB;UCVjB,mBDUiB;ECTjB,mBDnSa;MCmSb,eDnSa;ECoSb,WDYE,EAAA;EChTH;IDqTC,oBAAS;IAAT,oBAAS;IAAT,aAAS;IACT,4BACE;IADF,6BACE;QADF,0BACE;YADF,sBACE;ICdA,6BAAgB;QAAhB,gBAAgB;IDzSnB,mBAAA;QAAA,WAAA;YAAA,OAAA;IA0TC,kBAAS;IACT,wBAAW;QAAX,qBAAW;YAAX,uBAAW,EAAA;EC3TZ;IDgUC,gBAAc,EAAA;;AChUf;EAqTC,qBDkBE;ECjBF,WAAW,EAAA;;AAtTZ;EA0TC,qBDsBA;ECrBA,WDuBQ;ECtBR,6BDoBA,EAAA;;AChVD;EAgUC,cD4Ba;EC3Bb,kBAAkB,EAAA;;AAjUnB;EAqUC,iBDgCc;EC/Bd,eD4Be,EAAA;;ACxBhB;EACE;IAEC,aD0CW,EAAA;EC5CZ;IDuBA,aAAA,EAAA;ECvBA;ID8DA,qBAAe;IClDf,eDqDA,EAAA;ECjEA;ID0EA,WAAA,EAAA,ECxDA;;AAIF;EDoDE;ICjDC,cDqEU;ICpEV,kBDqEW,EAAA;EArBZ;IC5CC,cDyEQ,EAAA;EA7BT;ICvCA,eD4ES,EAAA;EArCT;IAAA,aAAA,EAAA;EAAA;IC9BC,eDwFc;ICvFd,WDwFS,EAAA;EA3DV;ICxBA,qBD6FA;IArEA,eAuED,EAAA;EAvEC;ICnBA,aDkGa,EAAA,EA/Eb;;ACbF;EDwGE;IAAA,SAAA,EAAA;EAAA;ICjGC,aDiHU,EAAA,EAhBX;;AC5FF;EDwHA;IAQE,aAAS,EAAA;EARX;IAmBE,aAAA,EAAA;EAnBF;ICzGG,aDyIU,EAAA;EAhCb;IAmBE,cAAc;ICtHd,WDkJU;IA5BV,kBAyBD,EAAA;EA5CD;IC9FE,cAAc,EAAA;ED8FhB;IC1FE,cDgKY;IC/JZ,sBDgKiB;IC/JjB,kBDgKiB,EAAA;EAxEnB;ICnFI,cAAc;IDoKlB,sBAAwB;IACtB,kBACD,EAAA;EAnFD;IAkFE,gBAKD,EAAA;EAvFD;IAsGE,gBACE,EAAA;EAvGJ;ICjEG,cDmLU,EAAA;EAlHb;IC7DG,cDwLC;IAzCF,eAKD,EAAA;EAvFD;ICxDG,kBD4LgB;IAlDjB,WAAA,EAAA;EAlFF;ICnDG,gBDiMc,EAAA;EA9IjB;IC9CE,cDoMC;ICnMD,WAAW,EAAA;ED6Cb;IA4JE,WAAA,EAAA;EA5JF;IAwKG,WAAU,EAAA,EAZX;;AAwBF;EACE;IAEA,eAAY,EAAA;EAFZ;IAOF,aAAW,EAAA;EAPT;IAYF,WAAW,EAAA;EAZT;IAmBD,WAAU;IACV,WAAQ,EAAA;EApBP;IAwBD,WAAA;IACA,WAAU;IACV,gBAAU,EAAA,EACV;;AChND;EACE;IAGA,aDwNW,EAAA;EC3NX;IAOA,qBD0NU,EAAA;ECjOV;IAYC,aD0NY,EAAA,ECzNb;;AAIF;EACE;IAGA,aD4NU,EAAA;EC/NV;IAQC,cD8NU,EAAA;ECtOX;IAaA,WAAW;IDqKb,gBA8DE,EAAA;EChPA;IAoBA,WAAW;ID8Jb,gBAuEE,EAAA;ECzPA;IDmQC,gBAAiB,EAAA;ECnQlB;IDwQC,wBACD,EAAA;ECzQA;IAqCA,gBAAgB,EAAA,ED6IlB;;ACvIA;ED+OE;IAaF,WAAa;IACX,WAAW;ICpPV,gBDqPW;ICpPX,gBAAgB,EAAA;IDqOjB;MAMA,gBAAgB,EAAA;EANhB;IAuBA,eAAe,EAAA,ECvPf;;AD8PF;EAGG;IC1PA,kBAAkB,EAAA;ED0PlB;IASA,UAAO;IC7PR,kBAAkB,EAAA;EDoPjB;IAHH,WAAA,EAAA;EAGG;IAuBA,UAAA,EAAA;EAvBA;IA4BA,UAAA,EAAA;EA5BA;IAmCD,UAAA,EAAA;EAnCC;IChOD,UAAU,EAAA;EDgOT;IC5ND,WD8QA,EAAA;EAlDC;ICxND,UDiRE,EAAA;EAzDD;ICpND,UAAU,EAAA;EDoNT;IChND,UAAU,EAAA;EDgNT;IAsCH,wBAwCE;IACD,eAAgB,EAAA;EA/Ed;ICrMD,aAAa,EAAA;EDqMZ;IAsCH,gCAiDmB;IAMhB,eAAS,EAAA;EA7FT;IC3LA,cDgSW;IC/RX,aDgSU;IC/RV,eAAe;IDmSlB,kBAAgB,EAAA,EACd;;AC9RF;EDoSE;ICjSC,WDoSQ;ICnSR,WDoSQ,EAAA;EAJT;IC5RC,UDoSF,EAAA;EARC;IAgBF,UAAA;IAEC,gBAAc,EAAA;EAlBb;ICnRC,cAAc;ID6SjB,UAAA;IACE,WAAS;IC3SR,gBAAgB,EAAA,ED8SnB;;ACzSA;ED+SA,WAAY;EACV,YAAA;EC7SA,kBD+SC;EC9SD,UAAU;EDiTZ,mBAAkB,EAAA;;AC7SlB;EACE,mBDiTe;EChTf,WD4SA,EAAA;;ACzSF;EACE,4BDsTC,EAAA;;ACnTH;EAEC,gBDyTa;ECxTb,kBDiTC;EChTD,QD2TG;EC1TH,SD+SC;EC9SD,aD+TS;EC9TT,qBD6SC;EC5SD,mCDkUE;ECjUF,kBAAkB;EDuUnB,UAAW;ECrUV,gBDsUe,EAAA;ECjVhB;IAcG,kBAAkB;IDwUrB,cAAW;IACT,sBAAmB;IACnB,gBAAgB;ICtUf,aAAa,EAAA;EAlBhB;ID8VE,mBACD;ICxUE,UAAU;ID0Ub,WAAA;IAEC,YAAW,EAAA;ECnWZ;IDwWC,qBAAW;IACX,kBAAc;IACd,SAAO;IC1UL,WAAW;ID8Ud,WAAA;IACE,YAAS;IACT,iBAAW;IACX,eAAY;IACZ,kBAAa;IACb,kBAAW;IACX,gBAAY;IACZ,mCAAgB;YAAhB,2BAAgB;IAChB,yBAAoB,EAAA;ECtXtB;ID0XE,cAAA;IACA,cAAe;IC5Ud,mBAAmB;ID+UtB,qBAAgB,EAAA;EC9XhB;IDkYE,iBAAa;IACb,gBAAW;IACX,qBAAkB,EAAA;ECpYpB;IDwYE,2BAAc,EAAA;;ACxYhB;EA+DC,2BD+UgB;EC9UhB,gBD+US,EAAA;;AC/YV;EDqZA,2BAAqB,EAAA;;ACrZrB;EAyEG,mBAAmB,EAAA;;AAzEtB;EA6EG,mBAAmB,EAAA;;AA7EtB;EDuaA,iBAAA;EACE,wBAAwB,EAAA;;ACxa1B;EAsFG,WAAW,EAAA;;AAtFd;EDsbE,gBAAe;EC1Vf,WD2VQ,EAAA;;ACvbV;EAiGG,gBAAgB;EDkhBnB,WAAY,EAAA;;ACnnBZ;ED0nBE,gBAAgB;EAChB,WAAS,EAAA;;AC3nBX;EDioBE,gBAAe;EACf,WAAW,EAAA;;AC7gBb;EDohBE;IClhBD,4BD0fkB,EAAA,EA0BjB;;AChhBF;EDshBE;ICphBD,yBDqhBc,EAAA;EAEb;ICphBD,gBDsbc;ICrbd,cDqhBC;ICphBD,mBDqhBY,EAAA,EACX;;AAKF;EAKE,cAAE;ECxhBD,eDyhBQ,EAAA;;AANX;EAYA,eAAkB,EAAA;;AAZlB;EAiBC,WAAA,EAAA;;AAjBD;ECtgBC,kBDmde,EAAA;;AAmDhB;EA2BA,mBAAoB,EAAA;;AA3BpB;EAmCA,mBAAqB,EAAA;;AAnCrB;ECzfG,aAAa;EDqiBhB,mBAGU,EAAA;;ACliBV;EACE,aAAa;ED8hBf,mBASW,EAAA;;ACniBX;EDuiBC,gBAAc,EAAA;;ACviBf;EDgjBC,WAAW,EAAA;EChjBZ;IDqjBE,eA3RA,EAAA;EC1RF;ID2jBA,kBAAc,EAAA;IC3jBd;MD+jBC,eAAe,EAAA;MC/jBhB;QD0jBA,kBAAc;QACd,QAAA,EAAA;;AC3jBA;ED2kBA,WAAc;EAEb,eAAW,EAAA;;AC7kBZ;EAoCC,kBDsPC;ECrPD,gBAAgB,EAAA;;AArCjB;EAyCC,gBAAgB;EDqjBjB,aAAa,EAAA;;AC9lBb;EA8CC,yBDqjBW,EAAA;;ACnmBZ;EDymBC,yBAAU,EAAA;;ACzmBX;EDgnBA,oBACW;EACV,cAAW,EAAA;;AAFZ;EASC;IC1jBA,iBD2jBW;IC1jBX,kBD2jBW,EAAA,EACX;;AAMD;EACA,aAAA,EAAA;;AC3jBA;EDkkBA,kBAAA;EAEC,cACE;EClkBD,yBAAyB,EAAA;EAH3B;IAMC,kBAAkB;IDwkBnB,UAAA;IACA,WAAA;ICtkBC,YDwkBO;ICvkBP,WDwkBA;ICvkBA,gBAAgB,EAAA;IAXjB;MAcG,kBAAkB,EAAA;;AAKrB;EAEC,kBDslBW,EAAA;;ACxlBZ;EDolBA,iBAAA,EAAA;;AC1kBA;ED0kBA,mBAAqB,EAAA;;AAsBrB;EAGE,SAAA;EC7lBA,mBD+lBC;EC9lBD,mBAAmB,EAAA;;AAGrB;EDimBA;IC/lBC,WDumBW,EAAA,ECtmBT;;AAGH;EACE;IACD,cAAc,EAAA;IADb;MAIC,cAAc,EAAA;IAJf;MAQC,WAAW,EAAA;EAGZ;IACD,iBAAiB;IACjB,eAAe,EAAA;EAEd;IAEC,iBAAiB;IACjB,eAAe,EAAA;EAHhB;IAOC,WAAW,EAAA;IAPZ;MAWE,WAAW,EAAA;EAXb;IAiBC,WAAW,EAAA;IAjBZ;MAqBE,WAAW,EAAA,EACZ;;AAMH;EACE,cAAc;EACd,WAAW;EACX,YAAY,EAAA;;AAGd;EACE,mBAAmB;EACnB,sBAAsB,EAAA;;AAGxB;EACE,mBAAmB;EACnB,WAAW;EACX,YAAY,EAAA;;AAGd;EAEC,WAAW;EACX,cAAc,EAAA;;AAHf;EAOC,WAAW;EACX,cAAc;EACd,WAAW,EAAA;;AAIZ;EACE,qBAAqB;EACrB,WAAW;EACX,YAAY;EACZ,sCAAsC;EACtC,WAAW;EACX,kBAAkB;EAClB,gBAAgB;EAChB,oBAAoB;EACpB,oBAAoB;EACpB,cAAc;EACd,mCAAmC;EACnC,kCAAkC;EAClC,eAAe,EAAA;;AAGjB;EACE,qBAAqB;EACrB,WAAW;EACX,YAAY;EACZ,sCAAsC;EACtC,WAAW;EACX,kBAAkB;EAClB,gBAAgB;EAChB,oBAAoB;EACpB,oBAAoB;EACpB,cAAc;EACd,mCAAmC;EACnC,kCAAkC;EAClC,eAAe,EAAA;EAbjB;IAgBC,gBAAgB;IAChB,SAAS;IACT,UAAU;IACV,kBAAkB,EAAA;;AAInB;EACE,gBAAgB;EAChB,SAAS;EACT,UAAU;EACV,kBAAkB,EAAA;;AAGpB;EAEC,uBAAuB;EACvB,mBAAmB,EAAA;;AAIpB;EACE,gCAAgC,EAAA;;AAGlC;EACE,wBAAwB,EAAA;;AAG1B;EAEC,0BAA0B,EAAA;;AAF3B;EAMC,wBAAwB,EAAA;;AAIzB;EACE;IACD,mBAAmB,EAAA,EACjB;;AAGH;EACE;IACD,cAAc,EAAA,EACZ;;AAqLH;EACE,kBAAkB,EAAA;;AAIpB;EACE,kBAAkB;EAClB,gBAAgB;EAChB,aAAa;EACb,qBAjKkB;EAkKlB,kKAhK+I;EAiK/I,4CAA4C;EAC5C,WAxEU;EAyEV,kBAAkB;EAClB,qBAAqB;EACrB,iBAAiB;EACjB,oBAAoB;EACpB,sBAAsB;EACtB,qBAAqB;EACrB,gBAAgB;EAChB,oBAAoB;EACpB,yBAAyB;EACzB,mBAnFa;EAoFb,kBAzBiB;EA0BjB,UAAU,EAAA;;AAIZ;EACE,kBAAkB;EAClB,gBAAgB;EAChB,aAAa;EACb,QAAQ;EACR,SAAS;EACT,cA/Fa;EAgGb,oBAAoB;EACpB,WAAW;EACX,6BAAqC;EACrC,UAAU,EAAA;;AAIZ;EACE;IACD,UAAU,EAAA;EAGT;IACD,UAAU,EAAA,EAAA;;AANX;EACE;IACD,UAAU,EAAA;EAGT;IACD,UAAU,EAAA,EAAA;;AAKX;;;;;EAKC,qBAAqB;EACrB,qBAAqB;EACrB,sCAA8B;UAA9B,8BAA8B;EAC9B,gCArEsB;UAqEtB,wBArEsB;EAsEtB,qCAA6B;UAA7B,6BAA6B;EAC7B,0CAAkC;UAAlC,kCAAkC;EAClC,6BAzEmB;UAyEnB,qBAzEmB,EAAA;;AA6EpB;;;;;EAKC,2BAAmB;UAAnB,mBAAmB,EAAA;;AAIpB;;;EAIC,mBAAmB,EAAA;;AAKpB;;;EAIC,SAAS;EACT,UAAU;EACV,eAAe,EAAA;;AANhB;;;EAUC,SAAS;EACT,UAAU;EACV,YAAY;EACZ,kBAAkB;EAClB,4BAjKc,EAAA;;AAqKf;EAEC,WAAW;EACX,SAAS;EACT,kBAtRY,EAAA;;AA0Rb;EACE,mBA3RW,EAAA;;AA+Rb;;;EAIC,UAAU;EACV,YAAY;EACZ,kBAAkB,EAAA;;AANnB;;;EAUC,SAAS;EACT,UAAU;EACV,YAAY;EACZ,kBAAkB;EAClB,yBAhMc,EAAA;;AAoMf;EAEC,WAAW;EACX,SAAS;EACT,kBArTY,EAAA;;AAyTb;EACE,mBA1TW,EAAA;;AA8Tb;;EAEE,kCAA0B;UAA1B,0BAA0B,EAAA;;AAI5B;EAEC,WAAW;EACX,WAAW;EACX,iBAAiB;EACjB,kCAA0B;UAA1B,0BAA0B,EAAA;;AAL3B;EASC,QAAQ;EACR,WAAW;EACX,UAAU;EACV,gBAAgB;EAChB,0BApOc,EAAA;;AAyOf;EAEC,WAAW;EACX,UAAU;EACV,gBAAgB;EAChB,kCAA0B;UAA1B,0BAA0B,EAAA;;AAL3B;EASC,QAAQ;EACR,WAAW;EACX,WAAW;EACX,gBAAgB;EAChB,2BAtPc,EAAA;;AA2Pf;;EAGC,QAAQ;EACR,eAAe,EAAA;;AAIhB;EAEC,WAAW,EAAA;;AAIZ;EAEC,WAAW,EAAA;;AAIZ;;EAGC,OAAO;EACP,cAAc,EAAA;;AAIf;EAEC,SAAS,EAAA;;AAIV;EAEC,UAAU,EAAA;;AASX;EAEC,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;EAClB,gBA1PwB;EA2PxB,qBAAqB;EACrB,qBAAqB;EACrB,yBAAyB,EAAA;;AAN1B;EAWC,WAAW;EACX,SAAS;EACT,mCAA2B;UAA3B,2BAA2B,EAAA;;AAb5B;EAkBC,WAAW,EAAA;;AAIZ;EAGE;IACD,YAjRwB,EAAA,EAkRtB;;AAMH;EAGC,qBAAqB,EAAA;;AAHtB;EAQG,mBAAmB,EAAA;;AArmBtB,y0iDAAy0iD","file":"public.css","sourcesContent":["/*------------------------------------*\n\t$WEBFONT\n*------------------------------------*/\n@import \"webfont\";\n\n.tinv-wishlist {\n form, p:last-child, table {\n\tmargin-bottom: 0;\n }\n}\n\n.tinv-wishlist * {\n box-sizing: border-box;\n}\n\n.tinvwl-wishlist {\n :after, :before {\n\tbox-sizing: border-box;\n }\n}\n\n.tinv-wishlist {\n select {\n\twidth: 140px;\n }\n\n ul {\n\tlist-style: none;\n\tmargin: 0;\n\tpadding: 0;\n }\n\n .tinvwl_add_to_wishlist_button {\n\t&.tinvwl-icon-heart-plus.no-txt:before, &.tinvwl-icon-heart.no-txt:before {\n\t margin-top: -10px;\n\t margin-left: -10px;\n\t}\n }\n}\n\n.woocommerce.tinv-wishlist {\n #respond input#submit.alt, a.button.alt, button.button.alt, input.button.alt {\n\ttext-align: center;\n }\n}\n\n.tinv-wishlist {\n .button i, .navigation-button a i {\n\tmargin-right: 6px;\n }\n\n input {\n\t&[type=\"button\"] i, &[type=\"reset\"] i, &[type=\"submit\"] i {\n\t margin-right: 6px;\n\t}\n }\n\n a.tinv-close-modal i {\n\tmargin-right: 0;\n }\n}\n\na.wishlist_products_counter {\n text-decoration: none;\n}\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\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\n.tinv-wishlist .tinvwl_add_to_wishlist_button {\n &.tinvwl-icon-heart-plus.no-txt, &.tinvwl-icon-heart.no-txt {\n\tposition: relative;\n\twidth: 36px;\n\theight: 36px;\n\tvertical-align: sub;\n }\n}\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\n.tinv-wishlist {\n .tinvwl_add_to_wishlist_button {\n\t&.tinvwl-icon-heart-plus.no-txt:before, &.tinvwl-icon-heart.no-txt:before {\n\t position: absolute;\n\t top: 50%;\n\t left: 50%;\n\t margin-right: 0;\n\t}\n }\n\n .tinvwl-button.tinvwl_add_to_wishlist_button {\n\t&.tinvwl-icon-heart-plus.no-txt, &.tinvwl-icon-heart.no-txt {\n\t padding-left: 1em;\n\t vertical-align: bottom;\n\t}\n }\n\n .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before {\n\tcontent: '\\e908';\n }\n}\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\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\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\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\n.tinv-wishlist {\n &.tinvwl-before-add-to-cart .tinvwl_add_to_wishlist_button {\n\tmargin-bottom: 15px;\n }\n\n &.tinvwl-after-add-to-cart .tinvwl_add_to_wishlist_button {\n\tmargin-top: 15px;\n }\n\n .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt {\n\tpadding: 10px 11px;\n\tline-height: 1;\n }\n}\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\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\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\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}\n\nul.products li.product .tinvwl_add_to_wishlist_button {\n margin-top: 1em;\n}\n\n.tinvwl_add_to_wishlist_button {\n display: inline-block;\n cursor: pointer;\n transition: opacity 1s;\n opacity: 1;\n visibility: visible;\n\n &.tinvwl-add-hide {\n\tvisibility: hidden;\n\topacity: 0.5;\n\tpointer-events: none;\n }\n}\n\n.tinv-wishlist.woocommerce .stock.in-stock:before {\n content: none;\n}\n\n.tinv-wraper.tinv-wishlist {\n font-size: 100%;\n}\n\n.tinv-create-list {\n li {\n\tinput[type=radio] {\n\t margin-right: 10px;\n\t}\n\n\t+ li {\n\t margin-top: 15px;\n\t}\n }\n\n .tinvwl-input-group + ul {\n\tmargin-top: 25px;\n }\n}\n\n.tinv-search-list {\n margin-bottom: 36px;\n}\n\n.tinv-wishlist {\n .tinv-header {\n\tmargin-bottom: 30px;\n }\n\n table {\n\tposition: relative;\n\ttable-layout: auto;\n\tmargin-bottom: 30px;\n\tz-index: 2;\n }\n}\n\n.tinv-overlay {\n top: 0;\n left: 0;\n position: fixed;\n transition: opacity .3s ease, visibility .3s ease;\n}\n\n.tinv-wishlist {\n .tinv-modal {\n\ttop: 0;\n\tleft: 0;\n\tposition: fixed;\n\ttransition: opacity .3s ease, visibility .3s ease;\n }\n\n table {\n\t&.tinvwl-table-manage-list {\n\t margin-bottom: 27px;\n\t width: 100%;\n\t}\n\n\tinput[type=checkbox] {\n\t margin-right: 0;\n\t}\n\n\ttd, th {\n\t padding: 1em;\n\t vertical-align: middle;\n\t}\n }\n\n .tinvwl-table-manage-list {\n\t.product-cb {\n\t width: 35px;\n\t text-align: center;\n\t}\n\n\t.product-remove {\n\t width: 46px;\n\t text-align: center;\n\t}\n }\n\n .product-remove button {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-content: center;\n\tmargin: 0 auto;\n\twidth: 27px;\n\theight: 27px;\n\tborder-radius: 50%;\n\tpadding: 0;\n\tbox-shadow: none;\n\tborder: none;\n\tbackground-color: #f7f7f7;\n\tcolor: #000000;\n\tfont-size: 20px;\n\tpadding-left: 3px;\n }\n\n .product-thumbnail {\n\tmin-width: 100px;\n\twidth: 100px;\n\n\t.wp-post-image {\n\t margin-bottom: 0;\n\t}\n }\n\n td.product-name a + .variation {\n\tmargin-top: 2px;\n }\n\n .product-stock {\n\ti {\n\t margin-right: 15px;\n\t}\n\n\tp {\n\t display: table;\n\t}\n\n\tspan {\n\t display: table-cell;\n\t vertical-align: middle;\n\t}\n }\n\n .product-action > .button > i, .tinvwl-table-manage-list .product-action button[name=tinvwl-remove], table thead th .tinvwl-mobile {\n\tdisplay: none;\n }\n\n &.woocommerce {\n\t.product-quantity {\n\t width: 80px;\n\t text-align: center;\n\t}\n\n\ttable .quantity .qty {\n\t max-width: 100%;\n\t width: 62px;\n\t text-align: left;\n\t}\n }\n\n .product-action {\n\twidth: 135px;\n\ttext-align: center;\n\n\t.button {\n\t width: 100%;\n\t}\n\n\t.tinvwl_move_product_button {\n\t margin-top: 5px;\n\t}\n }\n\n .tinvwl-table-manage-list .product-action > button[name=tinvwl-remove] > i {\n\tmargin-right: 0;\n }\n\n .wishlist-cb {\n\twidth: 33px;\n\ttext-align: center;\n }\n\n .wishlist-name {\n\t.tinvwl-rename-input input {\n\t width: 100%;\n\t}\n\n\t.tinvwl-rename-button {\n\t float: right;\n\n\t > i {\n\t\tmargin-right: 10px;\n\t }\n\t}\n }\n\n .wishlist-privacy, table:not(.tinvwl-public) .wishlist-date {\n\twidth: 18%;\n }\n\n .wishlist-privacy select {\n\twidth: 100%;\n }\n\n .wishlist-name {\n\twidth: 45%;\n }\n\n .wishlist-action {\n\twidth: 120px;\n\ttext-align: center;\n\n\tbutton[value=manage_remove] > i {\n\t display: none;\n\t margin-right: 0;\n\t}\n }\n\n tfoot {\n\t.tinvwl-to-right .tinv-create-list {\n\t display: inline-block;\n\t vertical-align: middle;\n\n\t > a.button {\n\t\tmargin-right: 0;\n\t }\n\t}\n\n\t.tinvwl-to-left {\n\t + .tinvwl-to-right {\n\t\tmargin-top: -10px;\n\t }\n\n\t &:not(:empty) {\n\t\tfloat: left;\n\t\twidth: 35%;\n\t\tmargin-right: 2%;\n\t }\n\t}\n\n\t.tinvwl-to-right {\n\t float: left;\n\t width: 63%;\n\t text-align: right;\n\n\t > * {\n\t\tmargin: 10px 0 0;\n\t\tvertical-align: middle;\n\n\t\t+ * {\n\t\t margin-left: 10px;\n\t\t}\n\t }\n\t}\n\n\t.tinvwl-to-left:empty + .tinvwl-to-right {\n\t width: 100%;\n\t}\n }\n\n .social-buttons + .tinv-wishlist-clear + .navigation-button {\n\tmargin-top: 16px;\n }\n\n .navigation-button {\n\tmargin-top: -10px;\n\n\t> li {\n\t float: left;\n\n\t > {\n\t\t.tinv-create-list > a, a {\n\t\t margin-right: 30px;\n\t\t margin-top: 10px;\n\t\t display: inline-block;\n\t\t}\n\n\t\t.tinv-create-list > a.button, a.button {\n\t\t margin-right: 10px;\n\t\t}\n\t }\n\n\t &:last-child > {\n\t\t.tinv-create-list > a, a {\n\t\t margin-right: 0;\n\t\t}\n\t }\n\t}\n }\n\n .social-buttons {\n\ttext-align: right;\n\n\t> {\n\t span, ul {\n\t\tdisplay: inline-block;\n\t\tvertical-align: middle;\n\t }\n\n\t span {\n\t\tmargin-right: 27px;\n\t }\n\t}\n\n\tli {\n\t float: left;\n\t margin-right: 5px;\n\t list-style: none;\n\n\t &:last-child {\n\t\tmargin-right: 0;\n\t }\n\n\t a.social {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\tjustify-content: center;\n\t\twidth: 2em;\n\t\theight: 2em;\n\t\tborder-radius: 50%;\n\t\ttext-align: center;\n\t\tbox-shadow: none;\n\t\tborder: 0;\n\t\tfont-size: 20px;\n\t\ttext-decoration: none;\n\t\ttext-transform: none !important;\n\n\t\t&.white {\n\t\t color: #ffffff;\n\t\t}\n\n\t\t&.dark {\n\t\t color: #000000;\n\t\t}\n\n\t\ti {\n\t\t line-height: 2em;\n\t\t}\n\t }\n\t}\n }\n\n .navigation-button {\n\t.tinv-create-list > a.tinvwl-no-icon > i, li > a.tinvwl-no-icon > i {\n\t display: none;\n\t}\n }\n\n .tinv-lists-nav {\n\tmargin-top: 35px;\n\tmargin-bottom: 35px;\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: wrap;\n\twidth: 100%;\n\n\t> * {\n\t display: flex;\n\t flex-direction: column;\n\t flex-basis: 100%;\n\t flex: 1;\n\t text-align: center;\n\t justify-content: center;\n\t}\n\n\t> span {\n\t font-weight: 700;\n\t}\n }\n\n .tinv-next {\n\tdisplay: inline-block;\n\tfloat: left;\n }\n\n .tinv-prev {\n\tdisplay: inline-block;\n\tfloat: left;\n\tmargin-right: 35px !important;\n }\n\n .tinv-prev i {\n\tmargin-left: 0;\n\tmargin-right: 18px;\n }\n\n .tinv-next i {\n\tmargin-left: 18px;\n\tmargin-right: 0;\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist {\n\t.tinvwl-table-manage-lists:not(.tinvwl-public) {\n\t margin-top: 0;\n\t}\n\n\t.tinvwl-table-manage-list {\n\t .product-remove {\n\t\tdisplay: none;\n\t }\n\n\t .product-action button[name=tinvwl-remove] {\n\t\tdisplay: inline-block;\n\t\tmargin-top: 5px;\n\t }\n\t}\n\n\t.product-action {\n\t width: 60px;\n\t}\n }\n}\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist {\n\t.tinvwl-table-manage-list td.product-stock p {\n\t display: block;\n\t text-align: center;\n\t}\n\n\t.product-stock span {\n\t display: block;\n\t}\n\n\t.tinvwl-table-manage-list td.product-stock {\n\t i {\n\t\tmargin-right: 0;\n\t }\n\n\t .tinvwl-txt {\n\t\tdisplay: none;\n\t }\n\t}\n\n\t.product-thumbnail {\n\t max-width: 76px;\n\t width: 76px;\n\t}\n\n\t.product-action .button {\n\t > i {\n\t\tdisplay: inline-block;\n\t\tmargin-right: 0;\n\t }\n\n\t .tinvwl-txt {\n\t\tdisplay: none;\n\t }\n\t}\n }\n}\n\n@media only screen and (max-width: 1023px) {\n .tinv-wishlist .tinv-lists-nav a.tinv-prev, .tinv-wishlist .tinv-lists-nav a.tinv-next {\n\t> i {\n\t margin: 0;\n\t}\n\n\t> span {\n\t display: none;\n\t}\n }\n}\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist {\n\ttable {\n\t &.tinvwl-table-manage-list {\n\t\ttbody td.product-remove, thead th:not(.product-name) {\n\t\t display: none;\n\t\t}\n\t }\n\n\t &.tinvwl-table-manage-lists thead th:not(.wishlist-name) {\n\t\tdisplay: none;\n\t }\n\t}\n\n\tthead th .tinvwl-full {\n\t display: none;\n\t}\n\n\ttable {\n\t &.tinvwl-table-manage-list thead th.product-name, &.tinvwl-table-manage-lists thead th.wishlist-name {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\ttext-align: center;\n\t }\n\n\t thead th .tinvwl-mobile {\n\t\tdisplay: block;\n\t }\n\n\t &.tinvwl-table-manage-list tbody td {\n\t\tdisplay: block;\n\t\twidth: 100% !important;\n\t\ttext-align: center;\n\t }\n\n\t &.tinvwl-table-manage-lists {\n\t\ttbody td, &.tinvwl-public tbody td {\n\t\t display: block;\n\t\t width: 100% !important;\n\t\t text-align: center;\n\t\t}\n\t }\n\n\t &.tinvwl-table-manage-list tbody td:not(:last-child) {\n\t\tborder-bottom: 0;\n\t }\n\n\t &.tinvwl-table-manage-lists {\n\t\ttbody td:not(:last-child), &.tinvwl-public tbody td:not(:last-child) {\n\t\t border-bottom: 0;\n\t\t}\n\t }\n\t}\n\n\t.product-stock p {\n\t margin: 0 auto;\n\t}\n\n\t.product-thumbnail img {\n\t margin: 0 auto;\n\t max-width: 80px;\n\t}\n\n\t&.woocommerce table .quantity .qty {\n\t text-align: center;\n\t width: 100%;\n\t}\n\n\t.product-action .tinvwl_move_product_button {\n\t margin-top: 10px;\n\t}\n\n\ttable {\n\t &.tinvwl-table-manage-list tfoot td {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t }\n\n\t &.tinvwl-table-manage-lists {\n\t\t.wishlist-action button[value=manage_remove] {\n\t\t width: 100%;\n\t\t}\n\n\t\t.wishlist-name .tinvwl-rename-button {\n\t\t float: none;\n\t\t}\n\t }\n\t}\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist {\n\t.wishlist-name .tinvwl-rename-button > i, tfoot .tinvwl-to-left:not(:empty) {\n\t margin-right: 0;\n\t}\n\n\t.wishlist-name .tinvwl-rename-button span {\n\t display: none;\n\t}\n\n\t.wishlist-action {\n\t width: 60px;\n\t}\n\n\ttfoot {\n\t .tinvwl-to-left:not(:empty) {\n\t\tfloat: none;\n\t\twidth: auto;\n\t }\n\n\t .tinvwl-to-right {\n\t\tfloat: none;\n\t\twidth: auto;\n\t\ttext-align: left;\n\t }\n\t}\n }\n}\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist {\n\t.wishlist-action button[value=\"manage_remove\"] {\n\t span {\n\t\tdisplay: none;\n\t }\n\n\t > i {\n\t\tdisplay: inline-block;\n\t }\n\t}\n\n\ttfoot .tinvwl-to-left + .tinvwl-to-right {\n\t margin-top: 0;\n\t}\n }\n}\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist {\n\tbutton {\n\t &[value=\"manage_apply\"] .tinvwl-mobile, &[value=\"product_apply\"] .tinvwl-mobile {\n\t\tdisplay: none;\n\t }\n\t}\n\n\ttfoot .tinvwl-to-right .tinv-create-list {\n\t display: block;\n\t}\n\n\t.tinvwl-table-manage-list tfoot .tinvwl-to-right {\n\t .button, button {\n\t\twidth: 100%;\n\t\tmargin: 10px 0 0;\n\t }\n\t}\n\n\t.tinvwl-table-manage-lists tfoot .tinvwl-to-right {\n\t .button, button {\n\t\twidth: 100%;\n\t\tmargin: 10px 0 0;\n\t }\n\t}\n\n\ttfoot {\n\t .tinvwl-to-right {\n\t\t> * {\n\t\t margin: 10px 0 0;\n\t\t}\n\n\t\t.button:first-child, button:first-child {\n\t\t margin-top: 0 !important;\n\t\t}\n\t }\n\n\t .tinvwl-to-left + .tinvwl-to-right {\n\t\tmargin-top: 20px;\n\t }\n\t}\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist {\n\t.social-buttons {\n\t + .tinv-wishlist-clear + .navigation-button {\n\t\tmargin-top: 30px;\n\t }\n\n\t float: none;\n\t width: auto;\n\t text-align: left;\n\t margin-top: 20px;\n\t}\n\n\t.tinv-login form input[name=login] {\n\t min-width: auto;\n\t}\n }\n}\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist {\n\t.social-buttons {\n\t text-align: center;\n\t}\n\n\t.navigation-button {\n\t > li {\n\t\twidth: 20%;\n\t\ttext-align: center;\n\t }\n\n\t &.tinvwl-btns-count-1 > li {\n\t\twidth: 100%;\n\t }\n\n\t &.tinvwl-btns-count-2 > li {\n\t\twidth: 50%;\n\t }\n\n\t &.tinvwl-btns-count-3 > li {\n\t\twidth: 33%;\n\t }\n\n\t &.tinvwl-btns-count-4 > li {\n\t\twidth: 25%;\n\t }\n\n\t > li + li {\n\t\twidth: 20%;\n\t }\n\n\t &.tinvwl-btns-count-1 > li + li {\n\t\twidth: 100%;\n\t }\n\n\t &.tinvwl-btns-count-2 > li + li {\n\t\twidth: 50%;\n\t }\n\n\t &.tinvwl-btns-count-3 > li + li {\n\t\twidth: 33%;\n\t }\n\n\t &.tinvwl-btns-count-4 > li + li {\n\t\twidth: 25%;\n\t }\n\n\t > li > {\n\t\t.tinv-create-list > a, a {\n\t\t width: calc(100% - 10px);\n\t\t margin-right: 0;\n\t\t}\n\t }\n\n\t .tinv-create-list > a .tinvwl-txt, li > a .tinvwl-txt {\n\t\tdisplay: none;\n\t }\n\n\t .tinv-create-list > a > i, li > a > i {\n\t\tdisplay: inline-block !important;\n\t\tmargin-right: 0;\n\t }\n\t}\n\n\t.social-buttons > span {\n\t display: block;\n\t margin-top: 0;\n\t margin-right: 0;\n\t margin-bottom: 5px;\n\t}\n }\n}\n\n@media only screen and (max-width: 667px) {\n .tinv-wishlist.woocommerce .tinv-login form {\n\t.form-row-first, .form-row-last {\n\t float: none;\n\t width: 100%;\n\t}\n\n\t.form-row-first {\n\t padding: 0;\n\t}\n\n\t.form-row-last {\n\t padding: 0;\n\t margin-top: 10px;\n\t}\n\n\t.tinvwl-input-group-btn {\n\t display: block;\n\t padding: 0;\n\t width: auto;\n\t margin-top: 10px;\n\t}\n }\n}\n\n.tinv-overlay {\n width: 100%;\n height: 100%;\n visibility: hidden;\n opacity: 0;\n background: #191919;\n}\n\n.tinv-modal.tinv-modal-open .tinv-overlay {\n visibility: visible;\n opacity: .5;\n}\n\n.admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 32px !important;\n}\n\n.tinv-wishlist {\n .tinv-modal {\n\toverflow-y: auto;\n\toverflow-x: hidden;\n\twidth: 0;\n\theight: 0;\n\tz-index: 9999;\n\toutline: 0 !important;\n\t-webkit-backface-visibility: hidden;\n\tvisibility: hidden;\n\topacity: 0;\n\ttext-align: left;\n\n\t.tinv-modal-inner {\n\t position: relative;\n\t margin: 0 auto;\n\t background-color: #fff;\n\t max-width: 360px;\n\t padding: 40px;\n\t}\n\n\t&.tinv-modal-open {\n\t visibility: visible;\n\t opacity: 1;\n\t width: 100%;\n\t height: 100%;\n\t}\n\n\t.tinv-close-modal {\n\t display: inline-block;\n\t position: absolute;\n\t top: 17px;\n\t right: 14px;\n\t width: 26px;\n\t height: 26px;\n\t line-height: 26px;\n\t font-size: 12px;\n\t text-align: center;\n\t border-radius: 50%;\n\t border-bottom: 0;\n\t box-shadow: none !important;\n\t background-color: #ebe9eb;\n\t}\n\n\t.icon_big_heart_check, .icon_big_times, img {\n\t display: block;\n\t margin: 0 auto;\n\t margin-bottom: 25px;\n\t opacity: 1 !important;\n\t}\n\n\tul {\n\t overflow: visible;\n\t list-style: disc;\n\t margin: 10px 0 0 20px;\n\t}\n\n\tli {\n\t list-style: disc !important;\n\t}\n }\n\n .tinv-create-list .tinv-modal ul, &.tinv-create-list form ul {\n\tlist-style: none !important;\n\tmargin: 25px 0 0;\n }\n\n .tinv-create-list .tinv-modal li, &.tinv-create-list form li {\n\tlist-style: none !important;\n }\n\n .tinv-modal {\n\t.already-in {\n\t margin-bottom: 35px;\n\t}\n\n\t.delete-notification {\n\t margin-bottom: 25px;\n\t}\n\n\t.already-in ul {\n\t overflow: visible;\n\t margin: 12px 0 27px 17px;\n\t}\n\n\tselect {\n\t width: 100%;\n\t}\n\n\tbutton + {\n\t .button, button {\n\t\tmargin-top: 12px;\n\t\twidth: 100%;\n\t }\n\t}\n\n\tinput + button {\n\t margin-top: 12px;\n\t width: 100%;\n\t}\n\n\tlabel + {\n\t button, input {\n\t\tmargin-top: 12px;\n\t\twidth: 100%;\n\t }\n\t}\n\n\tselect + {\n\t button, input {\n\t\tmargin-top: 12px;\n\t\twidth: 100%;\n\t }\n\t}\n }\n}\n\n@media screen and (max-width: 782px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n\tpadding-top: 46px !important;\n }\n}\n\n@media screen and (max-width: 600px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n\tpadding-top: 0 !important;\n }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n\tposition: static;\n\tdisplay: block;\n\tmargin: 0 auto 20px;\n }\n}\n\n.tinv-wishlist {\n .tinv-modal {\n\t.already-in + label {\n\t display: block;\n\t margin-top: 6px;\n\t}\n\n\tlabel select {\n\t margin-top: 8px;\n\t}\n\n\t.delete-notification + button {\n\t width: 100%;\n\t}\n }\n\n .tinvwl_added_to_wishlist, .tinvwl_created_wishlist {\n\ttext-align: center;\n }\n\n .tinvwl_added_to_wishlist .tinv-txt {\n\tmargin-bottom: 25px;\n }\n\n .tinvwl_created_wishlist {\n\t.tinv-txt {\n\t margin-bottom: 25px;\n\t}\n\n\tbutton {\n\t margin-top: 0;\n\t margin-bottom: 10px;\n\t}\n }\n}\n\n.woocommerce .tinv-wishlist .tinvwl_added_to_wishlist.tinv-modal button.button {\n margin-top: 0;\n margin-bottom: 10px;\n}\n\n.tinv-wishlist {\n .tinv-modal {\n\t.tinvwl-buttons-group {\n\t margin-top: 20px;\n\t}\n }\n\n .tinvwl-buttons-group {\n\tbutton {\n\t width: 100%;\n\n\t + button {\n\t\tmargin-top: 7px;\n\t }\n\n\t i {\n\t\tposition: relative;\n\n\t\t&.ftinvwl-heart-o, &.ftinvwl-key, &.ftinvwl-times {\n\t\t font-size: 20px;\n\n\t\t &::before {\n\t\t\tposition: relative;\n\t\t\ttop: 3px;\n\t\t }\n\t\t}\n\t }\n\t}\n\n\t+ button {\n\t width: 100%;\n\t margin-top: 7px;\n\t}\n }\n\n .tinv-modal h2 {\n\ttext-align: center;\n\tmargin: 0 0 35px;\n }\n\n .tinv-create-list .tinv-modal-inner {\n\tmax-width: 778px;\n\tpadding: 30px;\n }\n\n .tinvwl-has-error:not(.tinvwl-input-group), .tinvwl-input-group.tinvwl-has-error .form-control {\n\tborder: 2px solid #FF0000;\n }\n\n .tinvwl-has-error {\n\t&:not(.tinvwl-input-group) {\n\t border: 2px solid #FF0000;\n\t}\n\n\t+ .tinvwl-error {\n\t padding: 5px 0 0 5px;\n\t color: #FF0000;\n\t}\n }\n}\n\n@media only screen and (max-width: 640px) {\n .navigation-button, .social-buttons, .tinv-lists-nav {\n\tmargin-left: 12px;\n\tmargin-right: 12px;\n }\n}\n\n.tinvwl-tooltip {\n display: none;\n}\n\n.tinvwl-input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n\n .form-control {\n\tposition: relative;\n\tz-index: 1;\n\tfloat: left;\n\theight: 38px;\n\twidth: 100%;\n\tmargin-bottom: 0;\n\n\t+ .tinvwl-input-group-btn {\n\t padding-left: 15px;\n\t}\n }\n}\n\n.tinv-wishlist {\n .tinvwl-to-left .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n\tpadding-left: 10px;\n }\n\n .tinv-search-form .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n\tpadding-left: 9px;\n }\n}\n\n.tinvwl-input-group .form-control, .tinvwl-input-group-addon, .tinvwl-input-group-btn {\n display: table-cell;\n}\n\n.tinvwl-input-group-addon, .tinvwl-input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: top;\n}\n\n@media only screen and (max-width: 640px) {\n .tinvwl-input-group {\n\twidth: 100%;\n }\n}\n\n@media only screen and (max-width: 667px) {\n .tinvwl-input-group:not(.tinvwl-no-full) {\n\tdisplay: block;\n\n\t.form-control, .tinvwl-input-group-addon, .tinvwl-input-group-btn {\n\t display: block;\n\t}\n\n\t.form-control {\n\t float: none;\n\t}\n }\n .tinv-wishlist .tinv-search-form .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n\tpadding-top: 10px;\n\tpadding-left: 0;\n }\n .tinvwl-input-group:not(.tinvwl-no-full) {\n\t.form-control + .tinvwl-input-group-btn {\n\t padding-top: 10px;\n\t padding-left: 0;\n\t}\n\n\t.tinvwl-input-group-addon {\n\t width: 100%;\n\n\t > {\n\t\tbutton, input {\n\t\t width: 100%;\n\t\t}\n\t }\n\t}\n\n\t.tinvwl-input-group-btn {\n\t width: 100%;\n\n\t > {\n\t\tbutton, input {\n\t\t width: 100%;\n\t\t}\n\t }\n\t}\n }\n}\n\n.tinv-table {\n display: table;\n width: 100%;\n height: 100%;\n}\n\n.tinv-cell {\n display: table-cell;\n vertical-align: middle;\n}\n\n.tinv-wishlist .tinv-wishlist-clear {\n visibility: visible;\n width: auto;\n height: auto;\n}\n\n.tinv-wishlist-clear {\n &:before {\n\tcontent: \"\";\n\tdisplay: table;\n }\n\n &:after {\n\tcontent: \"\";\n\tdisplay: table;\n\tclear: both;\n }\n}\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\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\n &::before {\n\tcontent: \"\\e904\";\n\ttop: -7px;\n\tleft: -7px;\n\tposition: relative;\n }\n}\n\n.icon_big_heart_check::before {\n content: \"\\e90a\";\n top: -7px;\n left: -7px;\n position: relative;\n}\n\n.tinvwl_add_to_wishlist_button {\n &.tinvwl-button.disabled-add-wishlist, &.disabled-add-wishlist {\n\topacity: 0.5 !important;\n\tcursor: not-allowed;\n }\n}\n\n.empty-name-wishlist {\n border-color: #FF0000 !important;\n}\n\n.tinvwl_remove_from_wishlist-text, .tinvwl_already_on_wishlist-text {\n display: none !important;\n}\n\n.tinvwl-product-in-list.tinvwl-product-make-remove, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist {\n .tinvwl_remove_from_wishlist-text, .tinvwl_already_on_wishlist-text {\n\tdisplay: inline !important;\n }\n\n .tinvwl_add_to_wishlist-text {\n\tdisplay: none !important;\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n\tdisplay: table-cell;\n }\n}\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove {\n\tdisplay: block;\n }\n}\n\n\n// Tooltips\n// Aliases for easy use\n$spacer: 8px !default;\n$spacers: (\n\t\t0,\n\t\tround($spacer / 2),\n\t\t$spacer,\n\t\t$spacer * 2,\n\t\t$spacer * 3,\n\t\t$spacer * 4,\n\t\t$spacer * 5\n) !default;\n$spacer-0: nth($spacers, 1) !default; // 0\n$spacer-1: nth($spacers, 2) !default; // 4px\n$spacer-2: nth($spacers, 3) !default; // 8px\n$spacer-3: nth($spacers, 4) !default; // 16px\n$spacer-4: nth($spacers, 5) !default; // 24px\n$spacer-5: nth($spacers, 6) !default; // 32px\n$spacer-6: nth($spacers, 7) !default; // 40px\n// Em spacer variables\n$em-spacer-1: 0.0625em !default; // 1/16\n$em-spacer-2: 0.125em !default; // 1/8\n$em-spacer-3: 0.25em !default; // 1/4\n$em-spacer-4: 0.375em !default; // 3/8\n$em-spacer-5: 0.5em !default; // 1/2\n$em-spacer-6: 0.75em !default; // 3/4\n// Font stacks\n$body-font: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !default;\n//\n//\n// -------- Grays --------\n$gray-000: #fafbfc !default;\n$gray-100: #f6f8fa !default;\n$gray-200: #e1e4e8 !default;\n$gray-300: #d1d5da !default;\n$gray-400: #959da5 !default;\n$gray-500: #6a737d !default;\n$gray-600: #586069 !default;\n$gray-700: #444d56 !default;\n$gray-800: #2f363d !default;\n$gray-900: #24292e !default; // body font color\n\n// -------- Blue --------\n$blue-000: #f1f8ff !default;\n$blue-100: #dbedff !default;\n$blue-200: #c8e1ff !default;\n$blue-300: #79b8ff !default;\n$blue-400: #2188ff !default;\n$blue-500: #0366d6 !default; // Default: Passes AA with #fff\n$blue-600: #005cc5 !default;\n$blue-700: #044289 !default;\n$blue-800: #032f62 !default;\n$blue-900: #05264c !default; // Passes with 1/2/300 blues\n\n// -------- Green --------\n$green-000: #f0fff4 !default;\n$green-100: #dcffe4 !default;\n$green-200: #bef5cb !default;\n$green-300: #85e89d !default;\n$green-400: #34d058 !default;\n$green-500: #28a745 !default; // Default. passes AA Large\n$green-600: #22863a !default; // Text green, passes AA on #fff\n$green-700: #176f2c !default;\n$green-800: #165c26 !default;\n$green-900: #144620 !default;\n\n// -------- Yellow --------\n$yellow-000: #fffdef !default;\n$yellow-100: #fffbdd !default;\n$yellow-200: #fff5b1 !default;\n$yellow-300: #ffea7f !default;\n$yellow-400: #ffdf5d !default;\n$yellow-500: #ffd33d !default;\n$yellow-600: #f9c513 !default;\n$yellow-700: #dbab09 !default;\n$yellow-800: #b08800 !default;\n$yellow-900: #735c0f !default;\n\n// -------- Orange --------\n$orange-000: #fff8f2 !default;\n$orange-100: #ffebda !default;\n$orange-200: #ffd1ac !default;\n$orange-300: #ffab70 !default;\n$orange-400: #fb8532 !default;\n$orange-500: #f66a0a !default; // Default. passes AA Large with #fff\n$orange-600: #e36209 !default;\n$orange-700: #d15704 !default;\n$orange-800: #c24e00 !default;\n$orange-900: #a04100 !default;\n\n// -------- Red --------\n$red-000: #ffeef0 !default;\n$red-100: #ffdce0 !default;\n$red-200: #fdaeb7 !default;\n$red-300: #f97583 !default;\n$red-400: #ea4a5a !default;\n$red-500: #d73a49 !default; // Default. passes AA\n$red-600: #cb2431 !default;\n$red-700: #b31d28 !default;\n$red-800: #9e1c23 !default;\n$red-900: #86181d !default;\n\n// -------- Purple --------\n$purple-000: #f5f0ff !default;\n$purple-100: #e6dcfd !default;\n$purple-200: #d1bcf9 !default;\n$purple-300: #b392f0 !default;\n$purple-400: #8a63d2 !default;\n$purple-500: #6f42c1 !default; // passes AA with #fff\n$purple-600: #5a32a3 !default;\n$purple-700: #4c2889 !default;\n$purple-800: #3a1d6e !default;\n$purple-900: #29134e !default;\n\n// -------- Fades --------\n// Black based on same hue as $gray-900\n$black: #1b1f23 !default;\n$white: #fff !default;\n\n$black-fade-15: rgba($black, 0.15) !default;\n$black-fade-30: rgba($black, 0.3) !default;\n$black-fade-50: rgba($black, 0.5) !default;\n$black-fade-70: rgba($black, 0.7) !default;\n$black-fade-85: rgba($black, 0.85) !default;\n\n$white-fade-15: rgba($white, 0.15) !default;\n$white-fade-30: rgba($white, 0.3) !default;\n$white-fade-50: rgba($white, 0.5) !default;\n$white-fade-70: rgba($white, 0.7) !default;\n$white-fade-85: rgba($white, 0.85) !default;\n\n// -------- Color defaults --------\n$red: $red-500 !default;\n$purple: $purple-500 !default;\n$blue: $blue-500 !default;\n$green: $green-500 !default;\n$yellow: $yellow-500 !default;\n$orange: $orange-500 !default;\n\n$gray-dark: $gray-900 !default;\n$gray-light: $gray-400 !default;\n$gray: $gray-500 !default;\n// Border colors\n$border-black-fade: $black-fade-15 !default;\n\n$border-blue: $blue-500 !default;\n$border-blue-light: $blue-200 !default;\n\n$border-green: $green-400 !default;\n$border-green-light: desaturate($green-300, 40%) !default;\n\n$border-purple: $purple !default;\n\n$border-red: $red !default;\n$border-red-light: desaturate($red-300, 60%) !default;\n\n$border-purple: $purple !default;\n\n$border-yellow: desaturate($yellow-300, 60%) !default;\n\n$border-gray-dark: $gray-300 !default;\n$border-gray-darker: $gray-700 !default;\n$border-gray-light: lighten($gray-200, 3%) !default;\n$border-gray: $gray-200 !default;\n\n$tooltip-max-width: 250px !default;\n$tooltip-background-color: $black;\n$tooltip-text-color: $white !default;\n$tooltip-delay: 0.4s !default;\n$tooltip-duration: 0.1s !default;\n// Border size\n$border-width: 1px !default;\n$border-color: $border-gray !default;\n$border-style: solid !default;\n$border: $border-width $border-color $border-style !default;\n$border-radius: 3px !default;\n\n.tooltipped {\n position: relative;\n}\n\n// This is the tooltip bubble\n.tooltipped::after {\n position: absolute;\n z-index: 1000000;\n display: none;\n padding: $em-spacer-5 $em-spacer-6;\n font: normal normal 11px/1.5 $body-font;\n -webkit-font-smoothing: subpixel-antialiased;\n color: $tooltip-text-color;\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: $tooltip-background-color;\n border-radius: $border-radius;\n opacity: 0;\n}\n\n// This is the tooltip arrow\n.tooltipped::before {\n position: absolute;\n z-index: 1000001;\n display: none;\n width: 0;\n height: 0;\n color: $tooltip-background-color;\n pointer-events: none;\n content: \"\";\n border: 6px $border-style transparent;\n opacity: 0;\n}\n\n// delay animation for tooltip\n@keyframes tooltip-appear {\n from {\n\topacity: 0;\n }\n\n to {\n\topacity: 1;\n }\n}\n\n// This will indicate when we'll activate the tooltip\n.tooltipped:hover,\n.tooltipped:active,\n.tooltipped:focus {\n &::before,\n &::after {\n\tdisplay: inline-block;\n\ttext-decoration: none;\n\tanimation-name: tooltip-appear;\n\tanimation-duration: $tooltip-duration;\n\tanimation-fill-mode: forwards;\n\tanimation-timing-function: ease-in;\n\tanimation-delay: $tooltip-delay;\n }\n}\n\n.tooltipped-no-delay:hover,\n.tooltipped-no-delay:active,\n.tooltipped-no-delay:focus {\n &::before,\n &::after {\n\tanimation-delay: 0s;\n }\n}\n\n.tooltipped-multiline:hover,\n.tooltipped-multiline:active,\n.tooltipped-multiline:focus {\n &::after {\n\tdisplay: table-cell;\n }\n}\n\n// Tooltipped south\n.tooltipped-s,\n.tooltipped-se,\n.tooltipped-sw {\n &::after {\n\ttop: 100%;\n\tright: 50%;\n\tmargin-top: 6px;\n }\n\n &::before {\n\ttop: auto;\n\tright: 50%;\n\tbottom: -7px;\n\tmargin-right: -6px;\n\tborder-bottom-color: $tooltip-background-color;\n }\n}\n\n.tooltipped-se {\n &::after {\n\tright: auto;\n\tleft: 50%;\n\tmargin-left: -$spacer-3;\n }\n}\n\n.tooltipped-sw::after {\n margin-right: -$spacer-3;\n}\n\n// Tooltips above the object\n.tooltipped-n,\n.tooltipped-ne,\n.tooltipped-nw {\n &::after {\n\tright: 50%;\n\tbottom: 100%;\n\tmargin-bottom: 6px;\n }\n\n &::before {\n\ttop: -7px;\n\tright: 50%;\n\tbottom: auto;\n\tmargin-right: -6px;\n\tborder-top-color: $tooltip-background-color;\n }\n}\n\n.tooltipped-ne {\n &::after {\n\tright: auto;\n\tleft: 50%;\n\tmargin-left: -$spacer-3;\n }\n}\n\n.tooltipped-nw::after {\n margin-right: -$spacer-3;\n}\n\n// Move the tooltip body to the center of the object.\n.tooltipped-s::after,\n.tooltipped-n::after {\n transform: translateX(50%);\n}\n\n// Tooltipped to the left\n.tooltipped-w {\n &::after {\n\tright: 100%;\n\tbottom: 50%;\n\tmargin-right: 6px;\n\ttransform: translateY(50%);\n }\n\n &::before {\n\ttop: 50%;\n\tbottom: 50%;\n\tleft: -7px;\n\tmargin-top: -6px;\n\tborder-left-color: $tooltip-background-color;\n }\n}\n\n// tooltipped to the right\n.tooltipped-e {\n &::after {\n\tbottom: 50%;\n\tleft: 100%;\n\tmargin-left: 6px;\n\ttransform: translateY(50%);\n }\n\n &::before {\n\ttop: 50%;\n\tright: -7px;\n\tbottom: 50%;\n\tmargin-top: -6px;\n\tborder-right-color: $tooltip-background-color;\n }\n}\n\n// Tooltip align right and left\n.tooltipped-align-right-1,\n.tooltipped-align-right-2 {\n &::after {\n\tright: 0;\n\tmargin-right: 0;\n }\n}\n\n.tooltipped-align-right-1 {\n &::before {\n\tright: 10px;\n }\n}\n\n.tooltipped-align-right-2 {\n &::before {\n\tright: 15px;\n }\n}\n\n.tooltipped-align-left-1,\n.tooltipped-align-left-2 {\n &::after {\n\tleft: 0;\n\tmargin-left: 0;\n }\n}\n\n.tooltipped-align-left-1 {\n &::before {\n\tleft: 5px;\n }\n}\n\n.tooltipped-align-left-2 {\n &::before {\n\tleft: 10px;\n }\n}\n\n// Multiline tooltips\n//\n// `.tooltipped-multiline` Add this class when you have long content.\n// The downside is you cannot preformat the text with newlines and `[w,e]`\n// are always `$tooltip-max-width` wide.\n.tooltipped-multiline {\n &::after {\n\twidth: max-content;\n\tmax-width: $tooltip-max-width;\n\tword-wrap: break-word;\n\twhite-space: pre-line;\n\tborder-collapse: separate;\n }\n\n &.tooltipped-s::after,\n &.tooltipped-n::after {\n\tright: auto;\n\tleft: 50%;\n\ttransform: translateX(-50%);\n }\n\n &.tooltipped-w::after,\n &.tooltipped-e::after {\n\tright: 100%;\n }\n}\n\n@media screen and (min-width: 0 \\0\n) {\n // IE11\n .tooltipped-multiline::after {\n\twidth: $tooltip-max-width;\n }\n}\n\n// Sticky tooltips\n//\n// Always show the tooltip.\n.tooltipped-sticky {\n &::before,\n &::after {\n\tdisplay: inline-block;\n }\n\n &.tooltipped-multiline {\n\t&::after {\n\t display: table-cell;\n\t}\n }\n}\n\n// Alert tooltips\n//\n// Colors for different alert states.\n@mixin colorizeTooltip($text-color, $background-color) {\n &::after {\n\tcolor: $text-color;\n\tbackground: $background-color;\n }\n\n &.tooltipped-s,\n &.tooltipped-se,\n &.tooltipped-sw {\n\t&::before {\n\t border-bottom-color: $background-color;\n\t}\n }\n\n &.tooltipped-n,\n &.tooltipped-ne,\n &.tooltipped-nw {\n\t&::before {\n\t border-top-color: $background-color;\n\t}\n }\n\n &.tooltipped-e::before {\n\tborder-right-color: $background-color;\n }\n\n &.tooltipped-w::before {\n\tborder-left-color: $background-color;\n }\n}\n",null,"/*------------------------------------------------------------------\r\nWooCommerce Wishlist Plugin custom webfont\r\n-------------------------------------------------------------------*/\r\n@font-face {\r\n\tfont-family: 'tinvwl-webfont';\r\n\tsrc: url('../fonts/tinvwl-webfont.eot?xu2uyi');\r\n\tsrc: url('../fonts/tinvwl-webfont.eot?xu2uyi#iefix') format('embedded-opentype'),\r\n\turl('../fonts/tinvwl-webfont.ttf?xu2uyi') format('truetype'),\r\n\turl('../fonts/tinvwl-webfont.woff?xu2uyi') format('woff'),\r\n\turl('../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont') format('svg');\r\n\tfont-weight: normal;\r\n\tfont-style: normal;\r\n}\r\n\r\n.ftinvwl {\r\n\t/* use !important to prevent issues with browser extensions that change fonts */\r\n\tfont-family: 'tinvwl-webfont' !important;\r\n\tspeak: none;\r\n\tfont-style: normal;\r\n\tfont-weight: normal;\r\n\tfont-variant: normal;\r\n\ttext-transform: none;\r\n\tline-height: 1;\r\n\r\n\t/* Better Font Rendering =========== */\r\n\t-webkit-font-smoothing: antialiased;\r\n\t-moz-osx-font-smoothing: grayscale;\r\n}\r\n\r\n.ftinvwl-twitter:before {\r\n\tcontent: \"\\f099\";\r\n}\r\n\r\n.ftinvwl-facebook:before {\r\n\tcontent: \"\\f09a\";\r\n}\r\n\r\n.ftinvwl-facebook-f:before {\r\n\tcontent: \"\\f09a\";\r\n}\r\n\r\n.ftinvwl-google:before {\r\n\tcontent: \"\\f0d5\";\r\n}\r\n\r\n.ftinvwl-email:before {\r\n\tcontent: \"\\f0e0\";\r\n}\r\n\r\n.ftinvwl-pinterest:before {\r\n\tcontent: \"\\f231\";\r\n}\r\n\r\n.ftinvwl-whatsapp:before {\r\n\tcontent: \"\\f232\";\r\n}\r\n\r\n.ftinvwl-clipboard:before {\r\n\tcontent: \"\\e911\";\r\n}\r\n\r\n.ftinvwl-star:before {\r\n\tcontent: \"\\e912\";\r\n}\r\n\r\n.ftinvwl-shopping-cart:before {\r\n\tcontent: \"\\e913\";\r\n}\r\n\r\n.ftinvwl-magic:before {\r\n\tcontent: \"\\e914\";\r\n}\r\n\r\n.ftinvwl-info:before {\r\n\tcontent: \"\\e915\";\r\n}\r\n\r\n.ftinvwl-graduation-cap:before {\r\n\tcontent: \"\\e918\";\r\n}\r\n\r\n.ftinvwl-floppy-o:before {\r\n\tcontent: \"\\e919\";\r\n}\r\n\r\n.ftinvwl-eyedropper:before {\r\n\tcontent: \"\\e91a\";\r\n}\r\n\r\n.ftinvwl-exclamation-triangle:before {\r\n\tcontent: \"\\e91b\";\r\n}\r\n\r\n.ftinvwl-check:before {\r\n\tcontent: \"\\e91e\";\r\n}\r\n\r\n.ftinvwl-arrow-left:before {\r\n\tcontent: \"\\e91f\";\r\n}\r\n\r\n.ftinvwl-wrench:before {\r\n\tcontent: \"\\e920\";\r\n}\r\n\r\n.ftinvwl-chevron-down:before {\r\n\tcontent: \"\\e900\";\r\n\r\n}\r\n\r\n.ftinvwl-chevron-right:before {\r\n\tcontent: \"\\e901\";\r\n\r\n}\r\n\r\n.ftinvwl-chevron-left:before {\r\n\tcontent: \"\\e902\";\r\n\r\n}\r\n\r\n.ftinvwl-chevron-up:before {\r\n\tcontent: \"\\e903\";\r\n\r\n}\r\n\r\n.ftinvwl-cancel:before {\r\n\tcontent: \"\\e904\";\r\n\r\n}\r\n\r\n.ftinvwl-times:before {\r\n\tcontent: \"\\e905\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-plus:before {\r\n\tcontent: \"\\e906\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-mark-right:before {\r\n\tcontent: \"\\e907\";\r\n\r\n}\r\n\r\n.ftinvwl-heart2:before {\r\n\tcontent: \"\\e908\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-o:before {\r\n\tcontent: \"\\e909\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-mark-left:before {\r\n\tcontent: \"\\e90a\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-mail:before {\r\n\tcontent: \"\\e90b\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-tinv:before {\r\n\tcontent: \"\\e90c\";\r\n\r\n}\r\n\r\n.ftinvwl-key:before {\r\n\tcontent: \"\\e90d\";\r\n\r\n}\r\n\r\n.ftinvwl-lock:before {\r\n\tcontent: \"\\e90e\";\r\n\r\n}\r\n\r\n.ftinvwl-hearts:before {\r\n\tcontent: \"\\e90f\";\r\n\r\n}\r\n\r\n.ftinvwl-user:before {\r\n\tcontent: \"\\e910\";\r\n\r\n}\r\n\r\n/* PULSE */\r\n\r\n@-webkit-keyframes ftinvwl-pulse {\r\n\t0% {\r\n\t\t-webkit-transform: scale(1.1);\r\n\t\ttransform: scale(1.1);\r\n\t}\r\n\r\n\t50% {\r\n\t\t-webkit-transform: scale(0.8);\r\n\t\ttransform: scale(0.8);\r\n\t}\r\n\r\n\t100% {\r\n\t\t-webkit-transform: scale(1.1);\r\n\t\ttransform: scale(1.1);\r\n\t}\r\n}\r\n\r\n@keyframes ftinvwl-pulse {\r\n\t0% {\r\n\t\t-webkit-transform: scale(1.1);\r\n\t\t-ms-transform: scale(1.1);\r\n\t\ttransform: scale(1.1);\r\n\t}\r\n\r\n\t50% {\r\n\t\t-webkit-transform: scale(0.8);\r\n\t\t-ms-transform: scale(0.8);\r\n\t\ttransform: scale(0.8);\r\n\t}\r\n\r\n\t100% {\r\n\t\t-webkit-transform: scale(1.1);\r\n\t\t-ms-transform: scale(1.1);\r\n\t\ttransform: scale(1.1);\r\n\t}\r\n}\r\n\r\n.ftinvwl-pulse.ftinvwl-animated::before {\r\n\t-webkit-animation: ftinvwl-pulse 2s linear infinite;\r\n\tanimation: ftinvwl-pulse 2s linear infinite;\r\n}\r\n"]}
|
1 |
+
{"version":3,"sources":["public.scss","public.css","webfont.scss"],"names":[],"mappings":"AAAA;;sCCEsC;ADFtC;;oECKoE;ACLpE;EDIC,6BAA6B;EAC7B,8CAA8C;ECF/C,iRAGsD;EDIrD,mBCAa;EDCb,kBCAY,EAAA;;ADGb;EACC,+EAAA;EACA,wCCCW;EDAX,WCCU;EDAV,kBCCa;EDAb,mBCCc;EDAd,oBCCgB;EDAhB,oBCCc;EDAd,cCEA;EDAA,sCAAA;EACA,mCAAmC;ECIpC,kCAAwB,EAAA;;AAIxB;EDHC,gBCIS,EAAA;;ADDV;EACC,gBAAgB,EAAA;;AAGjB;ECQA,gBAAc,EAAA;;AAId;EDPC,gBCQS,EAAA;;ADLV;EACC,gBAAgB,EAAA;;AAGjB;ECYA,gBAAa,EAAA;;AAIb;EDXC,gBCYS,EAAA;;ADTV;EACC,gBAAgB,EAAA;;AAGjB;ECgBA,gBAAA,EAAA;;AAIA;EDfC,gBCgBS,EAAA;;ADbV;EACC,gBAAgB,EAAA;;AAGjB;ECoBA,gBAAc,EAAA;;AAId;EDnBC,gBCoBS,EAAA;;ADjBV;EACC,gBAAgB,EAAA;;AAGjB;ECyBA,gBAAA,EAAA;;AAKA;EDzBC,gBC0BS,EAAA;;ADvBV;EACC,gBAAgB,EAAA;;AAGjB;ECiCA,gBAAc,EAAA;;AAKd;EDjCC,gBCkCS,EAAA;;AD/BV;EACC,gBAAgB,EAAA;;AC4CjB;EDvCC,gBCwCS,EAAA;;ADpCV;EC6CA,gBAAA,EAAA;;ADxCA;EACC,gBAAgB,EAAA;;ACsDjB;EDjDC,gBCkDS,EAAA;;AD9CV;ECuDA,gBAAa,EAAA;;AAOb;EDxDC,gBCyDE,EAAA;;ADrDH;EACC,gBC2DY,EAAA;;ADvDb;ECgEA,gBAAA,EAAA;;AD3DA;EACC,gBCiEG,EAAA;;AD7DJ;EACC,gBCmEC,EAAA;;AAMF;EDpEC,gBCqEA,EAAA;;ADjED;EACC,gBAAgB,EAAA;;ADvJjB;EC4JC,gBD1JY,EAAA;;AC8Jb;ED1JA,gBAKI,EAAA;;AC0JJ;ED/JA,gBAWE,EAAA;;AAQF;ECkJC,gBDhJY,EAAA;;ACoJb,UAAA;AAEA;EACC;IDnJD,6BAWG;IACF,qBACE,EAAA;EC2IF;IACC,6BAA6B;IDrI/B,qBAAe,EAAA;ECyId;IDrIC,6BAAW;IACX,qBAAkB,EAAA,EAAA;;AC0IpB;EACC;IDrIC,6BAAyB;IAEzB,qBAAmB,EAAA;EAIrB;IACE,6BAAgB;IAEhB,qBAAa,EAAA;ECwId;IDpIC,6BAAoB;IAEpB,qBAAc,EAAA,EAAA;;ACyIhB;EACC,mDDpIA;ECqIA,2CAA2C,EAAA;;AAlO5C;EAEC,gBCHa,EAAA;;ADOd;EACE,8BAAsB;UAAtB,sBAAsB,EAAA;;AAGxB;EAEC,8BCCkB;UDDlB,sBCCkB,EAAA;;ADGnB;EAEC,YCEA,EAAA;;ADJD;EAMC,gBCGS;EDFT,SAAS;ECKV,UAAA,EAAA;;ADZA;EAaG,iBAAiB;ECOpB,kBAAe,EAAA;;ADDf;EAEC,kBCQgB,EAAA;;ADJjB;EAEC,iBCUgB,EAAA;;ADZjB;ECmBA,iBAAA,EAAA;;ADnBA;EAYC,eAAe,EAAA;;ACmBhB;EACC,qBACA,EAAA;;ADbD;EACE,gBAAgB;ECkBlB,qBAAmB;EAClB,sCACA;EDjBC,WAAW;ECmBb,kBAAA;EACC,gBAAgB;EDjBf,oBAAoB;ECoBtB,oBAAsB;EACrB,cAAS;EDlBR,mCAAmC;ECqBrC,kCAA2B;EAC1B,eAAS;EDnBR,mBAAmB;ECsBrB,iBAAe,EAAA;;AAIf;EACC,gBAAgB;EDrBf,qBAAqB;ECyBvB,sCAA8B;EAC7B,WAAS;EDvBR,kBAAkB;EC2BpB,gBAAA;EACC,oBAEA;ED3BC,oBAAoB;EC6BtB,cAAA;EACC,mCAEA;ED7BC,kCAAkC;EC+BpC,eAAe;EACd,mBAEA;ED/BC,iBAAiB,EAAA;;AAGnB;EAEC,kBCkCgB;EDjChB,WAAW;ECqCZ,YAAA;EDnCC,mBCoCgB,EAAA;;ADhCjB;ECyCA,kBAAgB;EACf,WAAS;EDvCR,YAAY;EC2Cd,mBAAA,EAAA;;AAKA;EAKA,kBAAmB;EAClB,QAAS;ED7CP,SAAS;ECiDZ,eAAY,EAAA;;AAVZ;EAoBA,iBAAe;EACd,sBAEA,EAAA;;AAvBD;EA8BA,gBAAW,EAAA;;ADpDX;EC4DC,gBAAG,EAAA;;ADxDJ;EACE,gBC6DA,EAAA;;AAKF;EACC,WAAE,EAAA;;AD5DH;ECkEC,WAAG,EAAA;;AD9DJ;EAEC,mBCmEC,EAAA;;ADrEF;EC2EA,gBAAc,EAAA;;AD3Ed;EDrJA,kBACM;EC+JL,cD9Ja,EAAA;;ACkKd;ED1JA,kBACE;EACD,cAAY,EAAA;;AC6Jb;EACE,gCAAgC;ED1JlC,wBAKK;EACJ,sBAAgB;EAChB,eAAS;EACT,gBACE;ECsJD,gBAAgB;ED/JlB,4BAWE,EAAA;;ACwJF;EDhJA,0BACE,EAAA;;AAKF;EAEC,WAAA,EAAA;;ACgJD;EACE,eAAe,EAAA;;AAGjB;EDtIC,qBAAA;EACC,eAAe;ECwIf,8BAAsB;EAAtB,sBAAsB;EDrIxB,UAAA;EACE,mBAAgB,EAAA;ECiIlB;IAQC,kBDtIY;ICuIZ,YDtIW;ICuIX,oBDtIiB,EAAA;;AC0IlB;EDrIE,aAAA,EAAA;;ACyIF;EACE,eAAe,EAAA;;AAGjB;EDlIE,kBAAkB,EAAA;;ACkIpB;ED9HE,gBAAc,EAAA;;AC8HhB;EAYC,gBDrIe,EAAA;;ACyIhB;EDlIC,mBAAY,EAAA;;AAKb;ECmIC,mBDjIY,EAAA;;AAFb;EAOA,kBACE;ECgID,kBD9HY;EC+HZ,mBD9HU;EC+HV,UD9HW,EAAA;;ACkIZ;ED1HG,MAAA;EC4HD,OAAO;EDzIT,eAiBE;EACD,yDACE;EADF,iDACE,EAAA;;AC2HH;EDpHA,MAAA;ECuHC,ODtHC;ECuHD,eAAe;EDpHhB,yDAA6C;EAA7C,iDAA6C,EAAA;;ACgH7C;EAUG,mBAAmB;EDlHtB,WAAc,EAAA;;ACwGd;EDlGC,eAAgB,EAAA;;ACkGjB;ED7FC,YAAa;ECiHX,sBAAsB,EAAA;;AApBzB;EDnFE,WAAS;EACT,kBAAgB,EAAA;;ACkFlB;ED9EE,WAAA;EACA,kBAAQ,EAAA;;AC6EV;EDtEA,oBAAA;EAAA,oBAAA;EAAA,aAAA;EC4GC,wBD1GA;MC0GA,qBD1GA;UC0GA,uBD1GA;EC2GA,0BAAqB;MAArB,qBAAqB;EDzGtB,cAAc;EC2Gb,WD1GW;EC2GX,YAAY;EDxGb,kBAAA;EC0GC,UDzGU;EC0GV,wBDzGgB;UCyGhB,gBDzGgB;EC0GhB,YDzGW;EC0GX,yBDzGW;EC0GX,cDzGa;EC0Gb,eD/GD;ECgHC,iBDxGY,EAAA;;ACsDb;EDhDA,gBAAc;ECuGb,YDtGU,EAAA;EC+CX;ID3CE,gBAAe,EAAA;;AC2CjB;EDxCA,eAAA,EAAA;;ACwCA;EAoEG,kBAAkB,EAAA;;AApErB;EDpBA,cACE,EAAA;;ACmBF;EDdC,mBAAkB;EAClB,sBAAkB,EAAA;;ACanB;EAkFC,aDxFO,EAAA;;ACMR;EDAA,WAAc;EAEb,kBAAM,EAAA;;ACFP;EA4FG,eAAe;ED5FlB,WAAc;EAUX,gBAAe,EAAA;;ACVlB;EAmGC,YAAY;EDnGb,kBAQE,EAAA;ECRF;IAuGG,WAAW,EAAA;EAvGd;IA2GG,eAAe,EAAA;;AA3GlB;EDAA,eAoCE,EAAA;;ACpCF;EAoHC,WD5EQ;EC6ER,kBD5EW,EAAA;;ACzCZ;ED8CC,WAAY,EAAA;;AC9Cb;EDkDC,YAAY,EAAA;EClDb;IDsDC,kBAAgB,EAAA;;ACtDjB;EAuIC,UDxEA,EAAA;;AC/DD;EA2IC,WAAW,EAAA;;AA3IZ;EDAA,UAAA,EAAA;;ACAA;EDAA,YAAA;ECoJC,kBDjEE,EAAA;ECnFH;IDuFG,aAAW;IACX,eAAY,EAAA;;ACxFf;EA8JG,qBAAqB;ED9JxB,sBAkGE,EAAA;EClGF;IDAA,eAkGE,EAAA;;AClGF;EDgHC,iBAAe,EAAA;;AChHhB;EDqHC,WAAU;ECwDT,UAAU;ED7KZ,gBAwHE,EAAA;;ACxHF;EDAA,WAAA;ECoLG,UDnDD;ECoDC,iBAAiB,EAAA;EArLpB;IAwLE,gBAAgB;IDxLlB,sBA0IE,EAAA;IC1IF;MDAA,iBA8IE,EAAA;;AC9IF;EDAA,WAAA,EAAA;;ACAA;EAuMC,gBDzCW,EAAA;;AC9JZ;EA2MC,iBAAiB,EAAA;EA3MlB;IA8MG,WAAW,EAAA;IA9Md;MD8KE,kBACE;MCoCA,gBAAgB;MDnNpB,qBAkLC,EAAA;IClLD;MDAA,kBA4JO,EAAA;IC5JP;MDAA,eA4JE,EAAA;;AC5JF;EAqOC,iBD1BY,EAAA;EC3Mb;IAyOE,qBDvBgB;ICwBhB,sBDvBkB,EAAA;ECnNpB;IA8OE,kBDpCA,EAAA;EC1MF;IDAA,WAAA;ICoPG,iBDXQ;ICYR,gBDXa,EAAA;IC1OhB;MDAA,eAoOE,EAAA;ICpOF;MA4PE,oBD5PF;MC4PE,oBD5PF;MC4PE,aD5PF;MC6PE,0BDLe;UCKf,qBDLe;MCMf,wBD1BA;UC0BA,qBD1BA;cC0BA,uBD1BA;MC2BA,UDHA;MCIA,WDHA;MCIA,kBDHA;MCIA,kBDHU;MCIV,wBDHW;cCGX,gBDHW;MCIX,SDHA;MCIA,eDHU;MCIV,qBDHgB;MCIhB,+BDHS,EAAA;MCpQX;QA0QI,cDHF,EAAA;MCvQF;QA8QI,cDAO,EAAA;MC9QX;QDAA,gBAwRE,EAAA;;ACxRF;EDmSC,aAAW,EAAA;;ACnSZ;EA+RC,gBDUc;ECTd,mBDUS;ECTT,oBDUY;ECVZ,oBDUY;ECVZ,aDUY;ECTZ,8BDUiB;ECVjB,6BDUiB;MCVjB,uBDUiB;UCVjB,mBDUiB;ECTjB,mBDnSa;MCmSb,eDnSa;ECoSb,WDYE,EAAA;EChTH;IDqTC,oBAAS;IAAT,oBAAS;IAAT,aAAS;IACT,4BACE;IADF,6BACE;QADF,0BACE;YADF,sBACE;ICdA,6BAAgB;QAAhB,gBAAgB;IDzSnB,mBAAA;QAAA,WAAA;YAAA,OAAA;IA0TC,kBAAS;IACT,wBAAW;QAAX,qBAAW;YAAX,uBAAW,EAAA;EC3TZ;IDgUC,gBAAc,EAAA;;AChUf;EAqTC,qBDkBE;ECjBF,WAAW,EAAA;;AAtTZ;EA0TC,qBDsBA;ECrBA,WDuBQ;ECtBR,6BDoBA,EAAA;;AChVD;EAgUC,cD4Ba;EC3Bb,kBAAkB,EAAA;;AAjUnB;EAqUC,iBDgCc;EC/Bd,eD4Be,EAAA;;ACxBhB;EACE;IAEC,aD0CW,EAAA;EC5CZ;IDuBA,aAAA,EAAA;ECvBA;ID8DA,qBAAe;IClDf,eDqDA,EAAA;ECjEA;ID0EA,WAAA,EAAA,ECxDA;;AAIF;EDoDE;ICjDC,cDqEU;ICpEV,kBDqEW,EAAA;EArBZ;IC5CC,cDyEQ,EAAA;EA7BT;ICvCA,eD4ES,EAAA;EArCT;IAAA,aAAA,EAAA;EAAA;IC9BC,eDwFc;ICvFd,WDwFS,EAAA;EA3DV;ICxBA,qBD6FA;IArEA,eAuED,EAAA;EAvEC;ICnBA,aDkGa,EAAA,EA/Eb;;ACbF;EDwGE;IAAA,SAAA,EAAA;EAAA;ICj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","file":"public.css","sourcesContent":["/*------------------------------------*\n\t$WEBFONT\n*------------------------------------*/\n@import \"webfont\";\n\n.tinv-wishlist {\n form, p:last-child, table {\n\tmargin-bottom: 0;\n }\n}\n\n.tinv-wishlist * {\n box-sizing: border-box;\n}\n\n.tinvwl-wishlist {\n :after, :before {\n\tbox-sizing: border-box;\n }\n}\n\n.tinv-wishlist {\n select {\n\twidth: 140px;\n }\n\n ul {\n\tlist-style: none;\n\tmargin: 0;\n\tpadding: 0;\n }\n\n .tinvwl_add_to_wishlist_button {\n\t&.tinvwl-icon-heart-plus.no-txt:before, &.tinvwl-icon-heart.no-txt:before {\n\t margin-top: -10px;\n\t margin-left: -10px;\n\t}\n }\n}\n\n.woocommerce.tinv-wishlist {\n #respond input#submit.alt, a.button.alt, button.button.alt, input.button.alt {\n\ttext-align: center;\n }\n}\n\n.tinv-wishlist {\n .button i, .navigation-button a i {\n\tmargin-right: 6px;\n }\n\n input {\n\t&[type=\"button\"] i, &[type=\"reset\"] i, &[type=\"submit\"] i {\n\t margin-right: 6px;\n\t}\n }\n\n a.tinv-close-modal i {\n\tmargin-right: 0;\n }\n}\n\na.wishlist_products_counter {\n text-decoration: none;\n}\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\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\n.tinv-wishlist .tinvwl_add_to_wishlist_button {\n &.tinvwl-icon-heart-plus.no-txt, &.tinvwl-icon-heart.no-txt {\n\tposition: relative;\n\twidth: 36px;\n\theight: 36px;\n\tvertical-align: sub;\n }\n}\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\n.tinv-wishlist {\n .tinvwl_add_to_wishlist_button {\n\t&.tinvwl-icon-heart-plus.no-txt:before, &.tinvwl-icon-heart.no-txt:before {\n\t position: absolute;\n\t top: 50%;\n\t left: 50%;\n\t margin-right: 0;\n\t}\n }\n\n .tinvwl-button.tinvwl_add_to_wishlist_button {\n\t&.tinvwl-icon-heart-plus.no-txt, &.tinvwl-icon-heart.no-txt {\n\t padding-left: 1em;\n\t vertical-align: bottom;\n\t}\n }\n\n .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before {\n\tcontent: '\\e908';\n }\n}\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\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\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\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\n.tinv-wishlist {\n &.tinvwl-before-add-to-cart .tinvwl_add_to_wishlist_button {\n\tmargin-bottom: 15px;\n }\n\n &.tinvwl-after-add-to-cart .tinvwl_add_to_wishlist_button {\n\tmargin-top: 15px;\n }\n\n .tinvwl_add_to_wishlist_button.tinvwl-icon-custom.no-txt {\n\tpadding: 10px 11px;\n\tline-height: 1;\n }\n}\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\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\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\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}\n\nul.products li.product .tinvwl_add_to_wishlist_button {\n margin-top: 1em;\n}\n\n.tinvwl_add_to_wishlist_button {\n display: inline-block;\n cursor: pointer;\n transition: opacity 1s;\n opacity: 1;\n visibility: visible;\n\n &.tinvwl-add-hide {\n\tvisibility: hidden;\n\topacity: 0.5;\n\tpointer-events: none;\n }\n}\n\n.tinv-wishlist.woocommerce .stock.in-stock:before {\n content: none;\n}\n\n.tinv-wraper.tinv-wishlist {\n font-size: 100%;\n}\n\n.tinv-create-list {\n li {\n\tinput[type=radio] {\n\t margin-right: 10px;\n\t}\n\n\t+ li {\n\t margin-top: 15px;\n\t}\n }\n\n .tinvwl-input-group + ul {\n\tmargin-top: 25px;\n }\n}\n\n.tinv-search-list {\n margin-bottom: 36px;\n}\n\n.tinv-wishlist {\n .tinv-header {\n\tmargin-bottom: 30px;\n }\n\n table {\n\tposition: relative;\n\ttable-layout: auto;\n\tmargin-bottom: 30px;\n\tz-index: 2;\n }\n}\n\n.tinv-overlay {\n top: 0;\n left: 0;\n position: fixed;\n transition: opacity .3s ease, visibility .3s ease;\n}\n\n.tinv-wishlist {\n .tinv-modal {\n\ttop: 0;\n\tleft: 0;\n\tposition: fixed;\n\ttransition: opacity .3s ease, visibility .3s ease;\n }\n\n table {\n\t&.tinvwl-table-manage-list {\n\t margin-bottom: 27px;\n\t width: 100%;\n\t}\n\n\tinput[type=checkbox] {\n\t margin-right: 0;\n\t}\n\n\ttd, th {\n\t padding: 1em;\n\t vertical-align: middle;\n\t}\n }\n\n .tinvwl-table-manage-list {\n\t.product-cb {\n\t width: 35px;\n\t text-align: center;\n\t}\n\n\t.product-remove {\n\t width: 46px;\n\t text-align: center;\n\t}\n }\n\n .product-remove button {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-content: center;\n\tmargin: 0 auto;\n\twidth: 27px;\n\theight: 27px;\n\tborder-radius: 50%;\n\tpadding: 0;\n\tbox-shadow: none;\n\tborder: none;\n\tbackground-color: #f7f7f7;\n\tcolor: #000000;\n\tfont-size: 20px;\n\tpadding-left: 3px;\n }\n\n .product-thumbnail {\n\tmin-width: 100px;\n\twidth: 100px;\n\n\t.wp-post-image {\n\t margin-bottom: 0;\n\t}\n }\n\n td.product-name a + .variation {\n\tmargin-top: 2px;\n }\n\n .product-stock {\n\ti {\n\t margin-right: 15px;\n\t}\n\n\tp {\n\t display: table;\n\t}\n\n\tspan {\n\t display: table-cell;\n\t vertical-align: middle;\n\t}\n }\n\n .product-action > .button > i, .tinvwl-table-manage-list .product-action button[name=tinvwl-remove], table thead th .tinvwl-mobile {\n\tdisplay: none;\n }\n\n &.woocommerce {\n\t.product-quantity {\n\t width: 80px;\n\t text-align: center;\n\t}\n\n\ttable .quantity .qty {\n\t max-width: 100%;\n\t width: 62px;\n\t text-align: left;\n\t}\n }\n\n .product-action {\n\twidth: 135px;\n\ttext-align: center;\n\n\t.button {\n\t width: 100%;\n\t}\n\n\t.tinvwl_move_product_button {\n\t margin-top: 5px;\n\t}\n }\n\n .tinvwl-table-manage-list .product-action > button[name=tinvwl-remove] > i {\n\tmargin-right: 0;\n }\n\n .wishlist-cb {\n\twidth: 33px;\n\ttext-align: center;\n }\n\n .wishlist-name {\n\t.tinvwl-rename-input input {\n\t width: 100%;\n\t}\n\n\t.tinvwl-rename-button {\n\t float: right;\n\n\t > i {\n\t\tmargin-right: 10px;\n\t }\n\t}\n }\n\n .wishlist-privacy, table:not(.tinvwl-public) .wishlist-date {\n\twidth: 18%;\n }\n\n .wishlist-privacy select {\n\twidth: 100%;\n }\n\n .wishlist-name {\n\twidth: 45%;\n }\n\n .wishlist-action {\n\twidth: 120px;\n\ttext-align: center;\n\n\tbutton[value=manage_remove] > i {\n\t display: none;\n\t margin-right: 0;\n\t}\n }\n\n tfoot {\n\t.tinvwl-to-right .tinv-create-list {\n\t display: inline-block;\n\t vertical-align: middle;\n\n\t > a.button {\n\t\tmargin-right: 0;\n\t }\n\t}\n\n\t.tinvwl-to-left {\n\t + .tinvwl-to-right {\n\t\tmargin-top: -10px;\n\t }\n\n\t &:not(:empty) {\n\t\tfloat: left;\n\t\twidth: 35%;\n\t\tmargin-right: 2%;\n\t }\n\t}\n\n\t.tinvwl-to-right {\n\t float: left;\n\t width: 63%;\n\t text-align: right;\n\n\t > * {\n\t\tmargin: 10px 0 0;\n\t\tvertical-align: middle;\n\n\t\t+ * {\n\t\t margin-left: 10px;\n\t\t}\n\t }\n\t}\n\n\t.tinvwl-to-left:empty + .tinvwl-to-right {\n\t width: 100%;\n\t}\n }\n\n .social-buttons + .tinv-wishlist-clear + .navigation-button {\n\tmargin-top: 16px;\n }\n\n .navigation-button {\n\tmargin-top: -10px;\n\n\t> li {\n\t float: left;\n\n\t > {\n\t\t.tinv-create-list > a, a {\n\t\t margin-right: 30px;\n\t\t margin-top: 10px;\n\t\t display: inline-block;\n\t\t}\n\n\t\t.tinv-create-list > a.button, a.button {\n\t\t margin-right: 10px;\n\t\t}\n\t }\n\n\t &:last-child > {\n\t\t.tinv-create-list > a, a {\n\t\t margin-right: 0;\n\t\t}\n\t }\n\t}\n }\n\n .social-buttons {\n\ttext-align: right;\n\n\t> {\n\t span, ul {\n\t\tdisplay: inline-block;\n\t\tvertical-align: middle;\n\t }\n\n\t span {\n\t\tmargin-right: 27px;\n\t }\n\t}\n\n\tli {\n\t float: left;\n\t margin-right: 5px;\n\t list-style: none;\n\n\t &:last-child {\n\t\tmargin-right: 0;\n\t }\n\n\t a.social {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\tjustify-content: center;\n\t\twidth: 2em;\n\t\theight: 2em;\n\t\tborder-radius: 50%;\n\t\ttext-align: center;\n\t\tbox-shadow: none;\n\t\tborder: 0;\n\t\tfont-size: 20px;\n\t\ttext-decoration: none;\n\t\ttext-transform: none !important;\n\n\t\t&.white {\n\t\t color: #ffffff;\n\t\t}\n\n\t\t&.dark {\n\t\t color: #000000;\n\t\t}\n\n\t\ti {\n\t\t line-height: 2em;\n\t\t}\n\t }\n\t}\n }\n\n .navigation-button {\n\t.tinv-create-list > a.tinvwl-no-icon > i, li > a.tinvwl-no-icon > i {\n\t display: none;\n\t}\n }\n\n .tinv-lists-nav {\n\tmargin-top: 35px;\n\tmargin-bottom: 35px;\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: wrap;\n\twidth: 100%;\n\n\t> * {\n\t display: flex;\n\t flex-direction: column;\n\t flex-basis: 100%;\n\t flex: 1;\n\t text-align: center;\n\t justify-content: center;\n\t}\n\n\t> span {\n\t font-weight: 700;\n\t}\n }\n\n .tinv-next {\n\tdisplay: inline-block;\n\tfloat: left;\n }\n\n .tinv-prev {\n\tdisplay: inline-block;\n\tfloat: left;\n\tmargin-right: 35px !important;\n }\n\n .tinv-prev i {\n\tmargin-left: 0;\n\tmargin-right: 18px;\n }\n\n .tinv-next i {\n\tmargin-left: 18px;\n\tmargin-right: 0;\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist {\n\t.tinvwl-table-manage-lists:not(.tinvwl-public) {\n\t margin-top: 0;\n\t}\n\n\t.tinvwl-table-manage-list {\n\t .product-remove {\n\t\tdisplay: none;\n\t }\n\n\t .product-action button[name=tinvwl-remove] {\n\t\tdisplay: inline-block;\n\t\tmargin-top: 5px;\n\t }\n\t}\n\n\t.product-action {\n\t width: 60px;\n\t}\n }\n}\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist {\n\t.tinvwl-table-manage-list td.product-stock p {\n\t display: block;\n\t text-align: center;\n\t}\n\n\t.product-stock span {\n\t display: block;\n\t}\n\n\t.tinvwl-table-manage-list td.product-stock {\n\t i {\n\t\tmargin-right: 0;\n\t }\n\n\t .tinvwl-txt {\n\t\tdisplay: none;\n\t }\n\t}\n\n\t.product-thumbnail {\n\t max-width: 76px;\n\t width: 76px;\n\t}\n\n\t.product-action .button {\n\t > i {\n\t\tdisplay: inline-block;\n\t\tmargin-right: 0;\n\t }\n\n\t .tinvwl-txt {\n\t\tdisplay: none;\n\t }\n\t}\n }\n}\n\n@media only screen and (max-width: 1023px) {\n .tinv-wishlist .tinv-lists-nav a.tinv-prev, .tinv-wishlist .tinv-lists-nav a.tinv-next {\n\t> i {\n\t margin: 0;\n\t}\n\n\t> span {\n\t display: none;\n\t}\n }\n}\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist {\n\ttable {\n\t &.tinvwl-table-manage-list {\n\t\ttbody td.product-remove, thead th:not(.product-name) {\n\t\t display: none;\n\t\t}\n\t }\n\n\t &.tinvwl-table-manage-lists thead th:not(.wishlist-name) {\n\t\tdisplay: none;\n\t }\n\t}\n\n\tthead th .tinvwl-full {\n\t display: none;\n\t}\n\n\ttable {\n\t &.tinvwl-table-manage-list thead th.product-name, &.tinvwl-table-manage-lists thead th.wishlist-name {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\ttext-align: center;\n\t }\n\n\t thead th .tinvwl-mobile {\n\t\tdisplay: block;\n\t }\n\n\t &.tinvwl-table-manage-list tbody td {\n\t\tdisplay: block;\n\t\twidth: 100% !important;\n\t\ttext-align: center;\n\t }\n\n\t &.tinvwl-table-manage-lists {\n\t\ttbody td, &.tinvwl-public tbody td {\n\t\t display: block;\n\t\t width: 100% !important;\n\t\t text-align: center;\n\t\t}\n\t }\n\n\t &.tinvwl-table-manage-list tbody td:not(:last-child) {\n\t\tborder-bottom: 0;\n\t }\n\n\t &.tinvwl-table-manage-lists {\n\t\ttbody td:not(:last-child), &.tinvwl-public tbody td:not(:last-child) {\n\t\t border-bottom: 0;\n\t\t}\n\t }\n\t}\n\n\t.product-stock p {\n\t margin: 0 auto;\n\t}\n\n\t.product-thumbnail img {\n\t margin: 0 auto;\n\t max-width: 80px;\n\t}\n\n\t&.woocommerce table .quantity .qty {\n\t text-align: center;\n\t width: 100%;\n\t}\n\n\t.product-action .tinvwl_move_product_button {\n\t margin-top: 10px;\n\t}\n\n\ttable {\n\t &.tinvwl-table-manage-list tfoot td {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t }\n\n\t &.tinvwl-table-manage-lists {\n\t\t.wishlist-action button[value=manage_remove] {\n\t\t width: 100%;\n\t\t}\n\n\t\t.wishlist-name .tinvwl-rename-button {\n\t\t float: none;\n\t\t}\n\t }\n\t}\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist {\n\t.wishlist-name .tinvwl-rename-button > i, tfoot .tinvwl-to-left:not(:empty) {\n\t margin-right: 0;\n\t}\n\n\t.wishlist-name .tinvwl-rename-button span {\n\t display: none;\n\t}\n\n\t.wishlist-action {\n\t width: 60px;\n\t}\n\n\ttfoot {\n\t .tinvwl-to-left:not(:empty) {\n\t\tfloat: none;\n\t\twidth: auto;\n\t }\n\n\t .tinvwl-to-right {\n\t\tfloat: none;\n\t\twidth: auto;\n\t\ttext-align: left;\n\t }\n\t}\n }\n}\n\n@media only screen and (max-width: 1024px) and (min-width: 641px) {\n .tinv-wishlist {\n\t.wishlist-action button[value=\"manage_remove\"] {\n\t span {\n\t\tdisplay: none;\n\t }\n\n\t > i {\n\t\tdisplay: inline-block;\n\t }\n\t}\n\n\ttfoot .tinvwl-to-left + .tinvwl-to-right {\n\t margin-top: 0;\n\t}\n }\n}\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist {\n\tbutton {\n\t &[value=\"manage_apply\"] .tinvwl-mobile, &[value=\"product_apply\"] .tinvwl-mobile {\n\t\tdisplay: none;\n\t }\n\t}\n\n\ttfoot .tinvwl-to-right .tinv-create-list {\n\t display: block;\n\t}\n\n\t.tinvwl-table-manage-list tfoot .tinvwl-to-right {\n\t .button, button {\n\t\twidth: 100%;\n\t\tmargin: 10px 0 0;\n\t }\n\t}\n\n\t.tinvwl-table-manage-lists tfoot .tinvwl-to-right {\n\t .button, button {\n\t\twidth: 100%;\n\t\tmargin: 10px 0 0;\n\t }\n\t}\n\n\ttfoot {\n\t .tinvwl-to-right {\n\t\t> * {\n\t\t margin: 10px 0 0;\n\t\t}\n\n\t\t.button:first-child, button:first-child {\n\t\t margin-top: 0 !important;\n\t\t}\n\t }\n\n\t .tinvwl-to-left + .tinvwl-to-right {\n\t\tmargin-top: 20px;\n\t }\n\t}\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist {\n\t.social-buttons {\n\t + .tinv-wishlist-clear + .navigation-button {\n\t\tmargin-top: 30px;\n\t }\n\n\t float: none;\n\t width: auto;\n\t text-align: left;\n\t margin-top: 20px;\n\t}\n\n\t.tinv-login form input[name=login] {\n\t min-width: auto;\n\t}\n }\n}\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist {\n\t.social-buttons {\n\t text-align: center;\n\t}\n\n\t.navigation-button {\n\t > li {\n\t\twidth: 20%;\n\t\ttext-align: center;\n\t }\n\n\t &.tinvwl-btns-count-1 > li {\n\t\twidth: 100%;\n\t }\n\n\t &.tinvwl-btns-count-2 > li {\n\t\twidth: 50%;\n\t }\n\n\t &.tinvwl-btns-count-3 > li {\n\t\twidth: 33%;\n\t }\n\n\t &.tinvwl-btns-count-4 > li {\n\t\twidth: 25%;\n\t }\n\n\t > li + li {\n\t\twidth: 20%;\n\t }\n\n\t &.tinvwl-btns-count-1 > li + li {\n\t\twidth: 100%;\n\t }\n\n\t &.tinvwl-btns-count-2 > li + li {\n\t\twidth: 50%;\n\t }\n\n\t &.tinvwl-btns-count-3 > li + li {\n\t\twidth: 33%;\n\t }\n\n\t &.tinvwl-btns-count-4 > li + li {\n\t\twidth: 25%;\n\t }\n\n\t > li > {\n\t\t.tinv-create-list > a, a {\n\t\t width: calc(100% - 10px);\n\t\t margin-right: 0;\n\t\t}\n\t }\n\n\t .tinv-create-list > a .tinvwl-txt, li > a .tinvwl-txt {\n\t\tdisplay: none;\n\t }\n\n\t .tinv-create-list > a > i, li > a > i {\n\t\tdisplay: inline-block !important;\n\t\tmargin-right: 0;\n\t }\n\t}\n\n\t.social-buttons > span {\n\t display: block;\n\t margin-top: 0;\n\t margin-right: 0;\n\t margin-bottom: 5px;\n\t}\n }\n}\n\n@media only screen and (max-width: 667px) {\n .tinv-wishlist.woocommerce .tinv-login form {\n\t.form-row-first, .form-row-last {\n\t float: none;\n\t width: 100%;\n\t}\n\n\t.form-row-first {\n\t padding: 0;\n\t}\n\n\t.form-row-last {\n\t padding: 0;\n\t margin-top: 10px;\n\t}\n\n\t.tinvwl-input-group-btn {\n\t display: block;\n\t padding: 0;\n\t width: auto;\n\t margin-top: 10px;\n\t}\n }\n}\n\n.tinv-overlay {\n width: 100%;\n height: 100%;\n visibility: hidden;\n opacity: 0;\n background: #191919;\n}\n\n.tinv-modal.tinv-modal-open .tinv-overlay {\n visibility: visible;\n opacity: .5;\n}\n\n.admin-bar .tinv-wishlist .tinv-modal {\n padding-top: 32px !important;\n}\n\n.tinv-wishlist {\n .tinv-modal {\n\toverflow-y: auto;\n\toverflow-x: hidden;\n\twidth: 0;\n\theight: 0;\n\tz-index: 9999;\n\toutline: 0 !important;\n\t-webkit-backface-visibility: hidden;\n\tvisibility: hidden;\n\topacity: 0;\n\ttext-align: left;\n\n\t.tinv-modal-inner {\n\t position: relative;\n\t margin: 0 auto;\n\t background-color: #fff;\n\t max-width: 360px;\n\t padding: 40px;\n\t}\n\n\t&.tinv-modal-open {\n\t visibility: visible;\n\t opacity: 1;\n\t width: 100%;\n\t height: 100%;\n\t}\n\n\t.tinv-close-modal {\n\t display: inline-block;\n\t position: absolute;\n\t top: 17px;\n\t right: 14px;\n\t width: 26px;\n\t height: 26px;\n\t line-height: 26px;\n\t font-size: 12px;\n\t text-align: center;\n\t border-radius: 50%;\n\t border-bottom: 0;\n\t box-shadow: none !important;\n\t background-color: #ebe9eb;\n\t}\n\n\t.icon_big_heart_check, .icon_big_times, img {\n\t display: block;\n\t margin: 0 auto;\n\t margin-bottom: 25px;\n\t opacity: 1 !important;\n\t}\n\n\tul {\n\t overflow: visible;\n\t list-style: disc;\n\t margin: 10px 0 0 20px;\n\t}\n\n\tli {\n\t list-style: disc !important;\n\t}\n }\n\n .tinv-create-list .tinv-modal ul, &.tinv-create-list form ul {\n\tlist-style: none !important;\n\tmargin: 25px 0 0;\n }\n\n .tinv-create-list .tinv-modal li, &.tinv-create-list form li {\n\tlist-style: none !important;\n }\n\n .tinv-modal {\n\t.already-in {\n\t margin-bottom: 35px;\n\t}\n\n\t.delete-notification {\n\t margin-bottom: 25px;\n\t}\n\n\t.already-in ul {\n\t overflow: visible;\n\t margin: 12px 0 27px 17px;\n\t}\n\n\tselect {\n\t width: 100%;\n\t}\n\n\tbutton + {\n\t .button, button {\n\t\tmargin-top: 12px;\n\t\twidth: 100%;\n\t }\n\t}\n\n\tinput + button {\n\t margin-top: 12px;\n\t width: 100%;\n\t}\n\n\tlabel + {\n\t button, input {\n\t\tmargin-top: 12px;\n\t\twidth: 100%;\n\t }\n\t}\n\n\tselect + {\n\t button, input {\n\t\tmargin-top: 12px;\n\t\twidth: 100%;\n\t }\n\t}\n }\n}\n\n@media screen and (max-width: 782px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n\tpadding-top: 46px !important;\n }\n}\n\n@media screen and (max-width: 600px) {\n .admin-bar .tinv-wishlist .tinv-modal {\n\tpadding-top: 0 !important;\n }\n .tinv-wishlist .tinv-modal .tinv-close-modal {\n\tposition: static;\n\tdisplay: block;\n\tmargin: 0 auto 20px;\n }\n}\n\n.tinv-wishlist {\n .tinv-modal {\n\t.already-in + label {\n\t display: block;\n\t margin-top: 6px;\n\t}\n\n\tlabel select {\n\t margin-top: 8px;\n\t}\n\n\t.delete-notification + button {\n\t width: 100%;\n\t}\n }\n\n .tinvwl_added_to_wishlist, .tinvwl_created_wishlist {\n\ttext-align: center;\n }\n\n .tinvwl_added_to_wishlist .tinv-txt {\n\tmargin-bottom: 25px;\n }\n\n .tinvwl_created_wishlist {\n\t.tinv-txt {\n\t margin-bottom: 25px;\n\t}\n\n\tbutton {\n\t margin-top: 0;\n\t margin-bottom: 10px;\n\t}\n }\n}\n\n.woocommerce .tinv-wishlist .tinvwl_added_to_wishlist.tinv-modal button.button {\n margin-top: 0;\n margin-bottom: 10px;\n}\n\n.tinv-wishlist {\n .tinv-modal {\n\t.tinvwl-buttons-group {\n\t margin-top: 20px;\n\t}\n }\n\n .tinvwl-buttons-group {\n\tbutton {\n\t width: 100%;\n\n\t + button {\n\t\tmargin-top: 7px;\n\t }\n\n\t i {\n\t\tposition: relative;\n\n\t\t&.ftinvwl-heart-o, &.ftinvwl-key, &.ftinvwl-times {\n\t\t font-size: 20px;\n\n\t\t &::before {\n\t\t\tposition: relative;\n\t\t\ttop: 3px;\n\t\t }\n\t\t}\n\t }\n\t}\n\n\t+ button {\n\t width: 100%;\n\t margin-top: 7px;\n\t}\n }\n\n .tinv-modal h2 {\n\ttext-align: center;\n\tmargin: 0 0 35px;\n }\n\n .tinv-create-list .tinv-modal-inner {\n\tmax-width: 778px;\n\tpadding: 30px;\n }\n\n .tinvwl-has-error:not(.tinvwl-input-group), .tinvwl-input-group.tinvwl-has-error .form-control {\n\tborder: 2px solid #FF0000;\n }\n\n .tinvwl-has-error {\n\t&:not(.tinvwl-input-group) {\n\t border: 2px solid #FF0000;\n\t}\n\n\t+ .tinvwl-error {\n\t padding: 5px 0 0 5px;\n\t color: #FF0000;\n\t}\n }\n}\n\n@media only screen and (max-width: 640px) {\n .navigation-button, .social-buttons, .tinv-lists-nav {\n\tmargin-left: 12px;\n\tmargin-right: 12px;\n }\n}\n\n.tinvwl-tooltip {\n display: none;\n}\n\n.tinvwl-input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n\n .form-control {\n\tposition: relative;\n\tz-index: 1;\n\tfloat: left;\n\theight: 38px;\n\twidth: 100%;\n\tmargin-bottom: 0;\n\n\t+ .tinvwl-input-group-btn {\n\t padding-left: 15px;\n\t}\n }\n}\n\n.tinv-wishlist {\n .tinvwl-to-left .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n\tpadding-left: 10px;\n }\n\n .tinv-search-form .tinvwl-input-group .form-control + .tinvwl-input-group-btn {\n\tpadding-left: 9px;\n }\n}\n\n.tinvwl-input-group .form-control, .tinvwl-input-group-addon, .tinvwl-input-group-btn {\n display: table-cell;\n}\n\n.tinvwl-input-group-addon, .tinvwl-input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: top;\n}\n\n@media only screen and (max-width: 640px) {\n .tinvwl-input-group {\n\twidth: 100%;\n }\n}\n\n@media only screen and (max-width: 667px) {\n .tinvwl-input-group:not(.tinvwl-no-full) {\n\tdisplay: block;\n\n\t.form-control, .tinvwl-input-group-addon, .tinvwl-input-group-btn {\n\t display: block;\n\t}\n\n\t.form-control {\n\t float: none;\n\t}\n }\n .tinv-wishlist .tinv-search-form .tinvwl-input-group:not(.tinvwl-no-full) .form-control + .tinvwl-input-group-btn {\n\tpadding-top: 10px;\n\tpadding-left: 0;\n }\n .tinvwl-input-group:not(.tinvwl-no-full) {\n\t.form-control + .tinvwl-input-group-btn {\n\t padding-top: 10px;\n\t padding-left: 0;\n\t}\n\n\t.tinvwl-input-group-addon {\n\t width: 100%;\n\n\t > {\n\t\tbutton, input {\n\t\t width: 100%;\n\t\t}\n\t }\n\t}\n\n\t.tinvwl-input-group-btn {\n\t width: 100%;\n\n\t > {\n\t\tbutton, input {\n\t\t width: 100%;\n\t\t}\n\t }\n\t}\n }\n}\n\n.tinv-table {\n display: table;\n width: 100%;\n height: 100%;\n}\n\n.tinv-cell {\n display: table-cell;\n vertical-align: middle;\n}\n\n.tinv-wishlist .tinv-wishlist-clear {\n visibility: visible;\n width: auto;\n height: auto;\n}\n\n.tinv-wishlist-clear {\n &:before {\n\tcontent: \"\";\n\tdisplay: table;\n }\n\n &:after {\n\tcontent: \"\";\n\tdisplay: table;\n\tclear: both;\n }\n}\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\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\n &::before {\n\tcontent: \"\\e904\";\n\ttop: -7px;\n\tleft: -7px;\n\tposition: relative;\n }\n}\n\n.icon_big_heart_check::before {\n content: \"\\e90a\";\n top: -7px;\n left: -7px;\n position: relative;\n}\n\n.tinvwl_add_to_wishlist_button {\n &.tinvwl-button.disabled-add-wishlist, &.disabled-add-wishlist {\n\topacity: 0.5 !important;\n\tcursor: not-allowed;\n }\n}\n\n.empty-name-wishlist {\n border-color: #FF0000 !important;\n}\n\n.tinvwl_remove_from_wishlist-text, .tinvwl_already_on_wishlist-text {\n display: none !important;\n}\n\n.tinvwl-product-in-list.tinvwl-product-make-remove, .tinvwl-product-in-list.tinvwl-product-already-on-wishlist {\n .tinvwl_remove_from_wishlist-text, .tinvwl_already_on_wishlist-text {\n\tdisplay: inline !important;\n }\n\n .tinvwl_add_to_wishlist-text {\n\tdisplay: none !important;\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .tinv-wishlist .tinvwl-table-manage-list .product-remove {\n\tdisplay: table-cell;\n }\n}\n\n@media only screen and (max-width: 640px) {\n .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove {\n\tdisplay: block;\n }\n}\n\n\n// Tooltips\n// Aliases for easy use\n$spacer: 8px !default;\n$spacers: (\n\t\t0,\n\t\tround($spacer / 2),\n\t\t$spacer,\n\t\t$spacer * 2,\n\t\t$spacer * 3,\n\t\t$spacer * 4,\n\t\t$spacer * 5\n) !default;\n$spacer-0: nth($spacers, 1) !default; // 0\n$spacer-1: nth($spacers, 2) !default; // 4px\n$spacer-2: nth($spacers, 3) !default; // 8px\n$spacer-3: nth($spacers, 4) !default; // 16px\n$spacer-4: nth($spacers, 5) !default; // 24px\n$spacer-5: nth($spacers, 6) !default; // 32px\n$spacer-6: nth($spacers, 7) !default; // 40px\n// Em spacer variables\n$em-spacer-1: 0.0625em !default; // 1/16\n$em-spacer-2: 0.125em !default; // 1/8\n$em-spacer-3: 0.25em !default; // 1/4\n$em-spacer-4: 0.375em !default; // 3/8\n$em-spacer-5: 0.5em !default; // 1/2\n$em-spacer-6: 0.75em !default; // 3/4\n// Font stacks\n$body-font: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !default;\n//\n//\n// -------- Grays --------\n$gray-000: #fafbfc !default;\n$gray-100: #f6f8fa !default;\n$gray-200: #e1e4e8 !default;\n$gray-300: #d1d5da !default;\n$gray-400: #959da5 !default;\n$gray-500: #6a737d !default;\n$gray-600: #586069 !default;\n$gray-700: #444d56 !default;\n$gray-800: #2f363d !default;\n$gray-900: #24292e !default; // body font color\n\n// -------- Blue --------\n$blue-000: #f1f8ff !default;\n$blue-100: #dbedff !default;\n$blue-200: #c8e1ff !default;\n$blue-300: #79b8ff !default;\n$blue-400: #2188ff !default;\n$blue-500: #0366d6 !default; // Default: Passes AA with #fff\n$blue-600: #005cc5 !default;\n$blue-700: #044289 !default;\n$blue-800: #032f62 !default;\n$blue-900: #05264c !default; // Passes with 1/2/300 blues\n\n// -------- Green --------\n$green-000: #f0fff4 !default;\n$green-100: #dcffe4 !default;\n$green-200: #bef5cb !default;\n$green-300: #85e89d !default;\n$green-400: #34d058 !default;\n$green-500: #28a745 !default; // Default. passes AA Large\n$green-600: #22863a !default; // Text green, passes AA on #fff\n$green-700: #176f2c !default;\n$green-800: #165c26 !default;\n$green-900: #144620 !default;\n\n// -------- Yellow --------\n$yellow-000: #fffdef !default;\n$yellow-100: #fffbdd !default;\n$yellow-200: #fff5b1 !default;\n$yellow-300: #ffea7f !default;\n$yellow-400: #ffdf5d !default;\n$yellow-500: #ffd33d !default;\n$yellow-600: #f9c513 !default;\n$yellow-700: #dbab09 !default;\n$yellow-800: #b08800 !default;\n$yellow-900: #735c0f !default;\n\n// -------- Orange --------\n$orange-000: #fff8f2 !default;\n$orange-100: #ffebda !default;\n$orange-200: #ffd1ac !default;\n$orange-300: #ffab70 !default;\n$orange-400: #fb8532 !default;\n$orange-500: #f66a0a !default; // Default. passes AA Large with #fff\n$orange-600: #e36209 !default;\n$orange-700: #d15704 !default;\n$orange-800: #c24e00 !default;\n$orange-900: #a04100 !default;\n\n// -------- Red --------\n$red-000: #ffeef0 !default;\n$red-100: #ffdce0 !default;\n$red-200: #fdaeb7 !default;\n$red-300: #f97583 !default;\n$red-400: #ea4a5a !default;\n$red-500: #d73a49 !default; // Default. passes AA\n$red-600: #cb2431 !default;\n$red-700: #b31d28 !default;\n$red-800: #9e1c23 !default;\n$red-900: #86181d !default;\n\n// -------- Purple --------\n$purple-000: #f5f0ff !default;\n$purple-100: #e6dcfd !default;\n$purple-200: #d1bcf9 !default;\n$purple-300: #b392f0 !default;\n$purple-400: #8a63d2 !default;\n$purple-500: #6f42c1 !default; // passes AA with #fff\n$purple-600: #5a32a3 !default;\n$purple-700: #4c2889 !default;\n$purple-800: #3a1d6e !default;\n$purple-900: #29134e !default;\n\n// -------- Fades --------\n// Black based on same hue as $gray-900\n$black: #1b1f23 !default;\n$white: #fff !default;\n\n$black-fade-15: rgba($black, 0.15) !default;\n$black-fade-30: rgba($black, 0.3) !default;\n$black-fade-50: rgba($black, 0.5) !default;\n$black-fade-70: rgba($black, 0.7) !default;\n$black-fade-85: rgba($black, 0.85) !default;\n\n$white-fade-15: rgba($white, 0.15) !default;\n$white-fade-30: rgba($white, 0.3) !default;\n$white-fade-50: rgba($white, 0.5) !default;\n$white-fade-70: rgba($white, 0.7) !default;\n$white-fade-85: rgba($white, 0.85) !default;\n\n// -------- Color defaults --------\n$red: $red-500 !default;\n$purple: $purple-500 !default;\n$blue: $blue-500 !default;\n$green: $green-500 !default;\n$yellow: $yellow-500 !default;\n$orange: $orange-500 !default;\n\n$gray-dark: $gray-900 !default;\n$gray-light: $gray-400 !default;\n$gray: $gray-500 !default;\n// Border colors\n$border-black-fade: $black-fade-15 !default;\n\n$border-blue: $blue-500 !default;\n$border-blue-light: $blue-200 !default;\n\n$border-green: $green-400 !default;\n$border-green-light: desaturate($green-300, 40%) !default;\n\n$border-purple: $purple !default;\n\n$border-red: $red !default;\n$border-red-light: desaturate($red-300, 60%) !default;\n\n$border-purple: $purple !default;\n\n$border-yellow: desaturate($yellow-300, 60%) !default;\n\n$border-gray-dark: $gray-300 !default;\n$border-gray-darker: $gray-700 !default;\n$border-gray-light: lighten($gray-200, 3%) !default;\n$border-gray: $gray-200 !default;\n\n$tooltip-max-width: 250px !default;\n$tooltip-background-color: $black;\n$tooltip-text-color: $white !default;\n$tooltip-delay: 0.4s !default;\n$tooltip-duration: 0.1s !default;\n// Border size\n$border-width: 1px !default;\n$border-color: $border-gray !default;\n$border-style: solid !default;\n$border: $border-width $border-color $border-style !default;\n$border-radius: 3px !default;\n\n.tooltipped {\n position: relative;\n}\n\n// This is the tooltip bubble\n.tooltipped::after {\n position: absolute;\n z-index: 1000000;\n display: none;\n padding: $em-spacer-5 $em-spacer-6;\n font: normal normal 11px/1.5 $body-font;\n -webkit-font-smoothing: subpixel-antialiased;\n color: $tooltip-text-color;\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: $tooltip-background-color;\n border-radius: $border-radius;\n opacity: 0;\n}\n\n// This is the tooltip arrow\n.tooltipped::before {\n position: absolute;\n z-index: 1000001;\n display: none;\n width: 0;\n height: 0;\n color: $tooltip-background-color;\n pointer-events: none;\n content: \"\";\n border: 6px $border-style transparent;\n opacity: 0;\n}\n\n// delay animation for tooltip\n@keyframes tooltip-appear {\n from {\n\topacity: 0;\n }\n\n to {\n\topacity: 1;\n }\n}\n\n// This will indicate when we'll activate the tooltip\n.tooltipped:hover,\n.tooltipped:active,\n.tooltipped:focus {\n &::before,\n &::after {\n\tdisplay: inline-block;\n\ttext-decoration: none;\n\tanimation-name: tooltip-appear;\n\tanimation-duration: $tooltip-duration;\n\tanimation-fill-mode: forwards;\n\tanimation-timing-function: ease-in;\n\tanimation-delay: $tooltip-delay;\n }\n}\n\n.tooltipped-no-delay:hover,\n.tooltipped-no-delay:active,\n.tooltipped-no-delay:focus {\n &::before,\n &::after {\n\tanimation-delay: 0s;\n }\n}\n\n.tooltipped-multiline:hover,\n.tooltipped-multiline:active,\n.tooltipped-multiline:focus {\n &::after {\n\tdisplay: table-cell;\n }\n}\n\n// Tooltipped south\n.tooltipped-s,\n.tooltipped-se,\n.tooltipped-sw {\n &::after {\n\ttop: 100%;\n\tright: 50%;\n\tmargin-top: 6px;\n }\n\n &::before {\n\ttop: auto;\n\tright: 50%;\n\tbottom: -7px;\n\tmargin-right: -6px;\n\tborder-bottom-color: $tooltip-background-color;\n }\n}\n\n.tooltipped-se {\n &::after {\n\tright: auto;\n\tleft: 50%;\n\tmargin-left: -$spacer-3;\n }\n}\n\n.tooltipped-sw::after {\n margin-right: -$spacer-3;\n}\n\n// Tooltips above the object\n.tooltipped-n,\n.tooltipped-ne,\n.tooltipped-nw {\n &::after {\n\tright: 50%;\n\tbottom: 100%;\n\tmargin-bottom: 6px;\n }\n\n &::before {\n\ttop: -7px;\n\tright: 50%;\n\tbottom: auto;\n\tmargin-right: -6px;\n\tborder-top-color: $tooltip-background-color;\n }\n}\n\n.tooltipped-ne {\n &::after {\n\tright: auto;\n\tleft: 50%;\n\tmargin-left: -$spacer-3;\n }\n}\n\n.tooltipped-nw::after {\n margin-right: -$spacer-3;\n}\n\n// Move the tooltip body to the center of the object.\n.tooltipped-s::after,\n.tooltipped-n::after {\n transform: translateX(50%);\n}\n\n// Tooltipped to the left\n.tooltipped-w {\n &::after {\n\tright: 100%;\n\tbottom: 50%;\n\tmargin-right: 6px;\n\ttransform: translateY(50%);\n }\n\n &::before {\n\ttop: 50%;\n\tbottom: 50%;\n\tleft: -7px;\n\tmargin-top: -6px;\n\tborder-left-color: $tooltip-background-color;\n }\n}\n\n// tooltipped to the right\n.tooltipped-e {\n &::after {\n\tbottom: 50%;\n\tleft: 100%;\n\tmargin-left: 6px;\n\ttransform: translateY(50%);\n }\n\n &::before {\n\ttop: 50%;\n\tright: -7px;\n\tbottom: 50%;\n\tmargin-top: -6px;\n\tborder-right-color: $tooltip-background-color;\n }\n}\n\n// Tooltip align right and left\n.tooltipped-align-right-1,\n.tooltipped-align-right-2 {\n &::after {\n\tright: 0;\n\tmargin-right: 0;\n }\n}\n\n.tooltipped-align-right-1 {\n &::before {\n\tright: 10px;\n }\n}\n\n.tooltipped-align-right-2 {\n &::before {\n\tright: 15px;\n }\n}\n\n.tooltipped-align-left-1,\n.tooltipped-align-left-2 {\n &::after {\n\tleft: 0;\n\tmargin-left: 0;\n }\n}\n\n.tooltipped-align-left-1 {\n &::before {\n\tleft: 5px;\n }\n}\n\n.tooltipped-align-left-2 {\n &::before {\n\tleft: 10px;\n }\n}\n\n// Multiline tooltips\n//\n// `.tooltipped-multiline` Add this class when you have long content.\n// The downside is you cannot preformat the text with newlines and `[w,e]`\n// are always `$tooltip-max-width` wide.\n.tooltipped-multiline {\n &::after {\n\twidth: max-content;\n\tmax-width: $tooltip-max-width;\n\tword-wrap: break-word;\n\twhite-space: pre-line;\n\tborder-collapse: separate;\n }\n\n &.tooltipped-s::after,\n &.tooltipped-n::after {\n\tright: auto;\n\tleft: 50%;\n\ttransform: translateX(-50%);\n }\n\n &.tooltipped-w::after,\n &.tooltipped-e::after {\n\tright: 100%;\n }\n}\n\n@media screen and (min-width: 0 \\0\n) {\n // IE11\n .tooltipped-multiline::after {\n\twidth: $tooltip-max-width;\n }\n}\n\n// Sticky tooltips\n//\n// Always show the tooltip.\n.tooltipped-sticky {\n &::before,\n &::after {\n\tdisplay: inline-block;\n }\n\n &.tooltipped-multiline {\n\t&::after {\n\t display: table-cell;\n\t}\n }\n}\n\n// Alert tooltips\n//\n// Colors for different alert states.\n@mixin colorizeTooltip($text-color, $background-color) {\n &::after {\n\tcolor: $text-color;\n\tbackground: $background-color;\n }\n\n &.tooltipped-s,\n &.tooltipped-se,\n &.tooltipped-sw {\n\t&::before {\n\t border-bottom-color: $background-color;\n\t}\n }\n\n &.tooltipped-n,\n &.tooltipped-ne,\n &.tooltipped-nw {\n\t&::before {\n\t border-top-color: $background-color;\n\t}\n }\n\n &.tooltipped-e::before {\n\tborder-right-color: $background-color;\n }\n\n &.tooltipped-w::before {\n\tborder-left-color: $background-color;\n }\n}\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 -ms-transform: rotate(90deg);\n transform: rotate(90deg);\n content: \"\\e811\";\n margin: 0 12px 0 3px;\n opacity: .25\n}\n",null,"/*------------------------------------------------------------------\r\nWooCommerce Wishlist Plugin custom webfont\r\n-------------------------------------------------------------------*/\r\n@font-face {\r\n\tfont-family: 'tinvwl-webfont';\r\n\tsrc: url('../fonts/tinvwl-webfont.eot?xu2uyi');\r\n\tsrc: url('../fonts/tinvwl-webfont.eot?xu2uyi#iefix') format('embedded-opentype'),\r\n\turl('../fonts/tinvwl-webfont.ttf?xu2uyi') format('truetype'),\r\n\turl('../fonts/tinvwl-webfont.woff?xu2uyi') format('woff'),\r\n\turl('../fonts/tinvwl-webfont.svg?xu2uyi#tinvwl-webfont') format('svg');\r\n\tfont-weight: normal;\r\n\tfont-style: normal;\r\n}\r\n\r\n.ftinvwl {\r\n\t/* use !important to prevent issues with browser extensions that change fonts */\r\n\tfont-family: 'tinvwl-webfont' !important;\r\n\tspeak: none;\r\n\tfont-style: normal;\r\n\tfont-weight: normal;\r\n\tfont-variant: normal;\r\n\ttext-transform: none;\r\n\tline-height: 1;\r\n\r\n\t/* Better Font Rendering =========== */\r\n\t-webkit-font-smoothing: antialiased;\r\n\t-moz-osx-font-smoothing: grayscale;\r\n}\r\n\r\n.ftinvwl-twitter:before {\r\n\tcontent: \"\\f099\";\r\n}\r\n\r\n.ftinvwl-facebook:before {\r\n\tcontent: \"\\f09a\";\r\n}\r\n\r\n.ftinvwl-facebook-f:before {\r\n\tcontent: \"\\f09a\";\r\n}\r\n\r\n.ftinvwl-google:before {\r\n\tcontent: \"\\f0d5\";\r\n}\r\n\r\n.ftinvwl-email:before {\r\n\tcontent: \"\\f0e0\";\r\n}\r\n\r\n.ftinvwl-pinterest:before {\r\n\tcontent: \"\\f231\";\r\n}\r\n\r\n.ftinvwl-whatsapp:before {\r\n\tcontent: \"\\f232\";\r\n}\r\n\r\n.ftinvwl-clipboard:before {\r\n\tcontent: \"\\e911\";\r\n}\r\n\r\n.ftinvwl-star:before {\r\n\tcontent: \"\\e912\";\r\n}\r\n\r\n.ftinvwl-shopping-cart:before {\r\n\tcontent: \"\\e913\";\r\n}\r\n\r\n.ftinvwl-magic:before {\r\n\tcontent: \"\\e914\";\r\n}\r\n\r\n.ftinvwl-info:before {\r\n\tcontent: \"\\e915\";\r\n}\r\n\r\n.ftinvwl-graduation-cap:before {\r\n\tcontent: \"\\e918\";\r\n}\r\n\r\n.ftinvwl-floppy-o:before {\r\n\tcontent: \"\\e919\";\r\n}\r\n\r\n.ftinvwl-eyedropper:before {\r\n\tcontent: \"\\e91a\";\r\n}\r\n\r\n.ftinvwl-exclamation-triangle:before {\r\n\tcontent: \"\\e91b\";\r\n}\r\n\r\n.ftinvwl-check:before {\r\n\tcontent: \"\\e91e\";\r\n}\r\n\r\n.ftinvwl-arrow-left:before {\r\n\tcontent: \"\\e91f\";\r\n}\r\n\r\n.ftinvwl-wrench:before {\r\n\tcontent: \"\\e920\";\r\n}\r\n\r\n.ftinvwl-chevron-down:before {\r\n\tcontent: \"\\e900\";\r\n\r\n}\r\n\r\n.ftinvwl-chevron-right:before {\r\n\tcontent: \"\\e901\";\r\n\r\n}\r\n\r\n.ftinvwl-chevron-left:before {\r\n\tcontent: \"\\e902\";\r\n\r\n}\r\n\r\n.ftinvwl-chevron-up:before {\r\n\tcontent: \"\\e903\";\r\n\r\n}\r\n\r\n.ftinvwl-cancel:before {\r\n\tcontent: \"\\e904\";\r\n\r\n}\r\n\r\n.ftinvwl-times:before {\r\n\tcontent: \"\\e905\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-plus:before {\r\n\tcontent: \"\\e906\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-mark-right:before {\r\n\tcontent: \"\\e907\";\r\n\r\n}\r\n\r\n.ftinvwl-heart2:before {\r\n\tcontent: \"\\e908\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-o:before {\r\n\tcontent: \"\\e909\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-mark-left:before {\r\n\tcontent: \"\\e90a\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-mail:before {\r\n\tcontent: \"\\e90b\";\r\n\r\n}\r\n\r\n.ftinvwl-heart-tinv:before {\r\n\tcontent: \"\\e90c\";\r\n\r\n}\r\n\r\n.ftinvwl-key:before {\r\n\tcontent: \"\\e90d\";\r\n\r\n}\r\n\r\n.ftinvwl-lock:before {\r\n\tcontent: \"\\e90e\";\r\n\r\n}\r\n\r\n.ftinvwl-hearts:before {\r\n\tcontent: \"\\e90f\";\r\n\r\n}\r\n\r\n.ftinvwl-user:before {\r\n\tcontent: \"\\e910\";\r\n\r\n}\r\n\r\n/* PULSE */\r\n\r\n@-webkit-keyframes ftinvwl-pulse {\r\n\t0% {\r\n\t\t-webkit-transform: scale(1.1);\r\n\t\ttransform: scale(1.1);\r\n\t}\r\n\r\n\t50% {\r\n\t\t-webkit-transform: scale(0.8);\r\n\t\ttransform: scale(0.8);\r\n\t}\r\n\r\n\t100% {\r\n\t\t-webkit-transform: scale(1.1);\r\n\t\ttransform: scale(1.1);\r\n\t}\r\n}\r\n\r\n@keyframes ftinvwl-pulse {\r\n\t0% {\r\n\t\t-webkit-transform: scale(1.1);\r\n\t\t-ms-transform: scale(1.1);\r\n\t\ttransform: scale(1.1);\r\n\t}\r\n\r\n\t50% {\r\n\t\t-webkit-transform: scale(0.8);\r\n\t\t-ms-transform: scale(0.8);\r\n\t\ttransform: scale(0.8);\r\n\t}\r\n\r\n\t100% {\r\n\t\t-webkit-transform: scale(1.1);\r\n\t\t-ms-transform: scale(1.1);\r\n\t\ttransform: scale(1.1);\r\n\t}\r\n}\r\n\r\n.ftinvwl-pulse.ftinvwl-animated::before {\r\n\t-webkit-animation: ftinvwl-pulse 2s linear infinite;\r\n\tanimation: ftinvwl-pulse 2s linear infinite;\r\n}\r\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}
|
@@ -235,6 +235,7 @@ ul.products li.product .tinvwl_add_to_wishlist_button{margin-top:1em}
|
|
235 |
.tooltipped-multiline.tooltipped-w::after,.tooltipped-multiline.tooltipped-e::after{right:100%}
|
236 |
.tooltipped-sticky::before,.tooltipped-sticky::after{display:inline-block}
|
237 |
.tooltipped-sticky.tooltipped-multiline::after{display:table-cell}
|
|
|
238 |
@media screen and (min-width:0 \0){.tooltipped-multiline::after{width:250px}
|
239 |
}@media only screen and (max-width:1024px) and (min-width:641px){.tinv-wishlist .tinvwl-table-manage-list td.product-stock p{display:block;text-align:center}
|
240 |
.tinv-wishlist .product-stock span{display:block}
|
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.19.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}
|
235 |
.tooltipped-multiline.tooltipped-w::after,.tooltipped-multiline.tooltipped-e::after{right:100%}
|
236 |
.tooltipped-sticky::before,.tooltipped-sticky::after{display:inline-block}
|
237 |
.tooltipped-sticky.tooltipped-multiline::after{display:table-cell}
|
238 |
+
.tinvwl-table-manage-list .component_table_item_price:before{font-family:'FontAwesomeCP';font-size:1rem;display:inline-block;-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg);content:"\e811";margin:0 12px 0 3px;opacity:.25}
|
239 |
@media screen and (min-width:0 \0){.tooltipped-multiline::after{width:250px}
|
240 |
}@media only screen and (max-width:1024px) and (min-width:641px){.tinv-wishlist .tinvwl-table-manage-list td.product-stock p{display:block;text-align:center}
|
241 |
.tinv-wishlist .product-stock span{display:block}
|
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.19.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.19.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
@@ -408,9 +408,10 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
408 |
}
|
409 |
|
410 |
e.toggleClass('tinvwl-product-in-list', j).toggleClass('tinvwl-product-make-remove', j && g).attr('data-tinv-wl-action', j && g ? 'remove' : 'addto');
|
411 |
-
a.preventDefault();
|
412 |
-
e.removeClass('disabled-add-wishlist');
|
413 |
}
|
|
|
|
|
|
|
414 |
}); // Refresh when storage changes in another tab
|
415 |
|
416 |
$(window).on('storage onstorage', function (e) {
|
@@ -431,7 +432,9 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
431 |
var tinvwl_products = [],
|
432 |
tinvwl_counter = false;
|
433 |
$('a.tinvwl_add_to_wishlist_button').each(function () {
|
434 |
-
|
|
|
|
|
435 |
});
|
436 |
$('.wishlist_products_counter_number').each(function () {
|
437 |
tinvwl_counter = true;
|
@@ -478,11 +481,11 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
478 |
// Create an observer instance
|
479 |
|
480 |
var observer = new MutationObserver(function (mutations) {
|
|
|
481 |
mutations.forEach(function (mutation) {
|
482 |
var newNodes = mutation.addedNodes; // If there are new nodes added
|
483 |
|
484 |
if (newNodes !== null) {
|
485 |
-
tinvwl_products = [];
|
486 |
var $nodes = $(newNodes);
|
487 |
$nodes.each(function () {
|
488 |
var $node = $(this),
|
@@ -490,23 +493,23 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
490 |
|
491 |
if (els.length) {
|
492 |
els.each(function () {
|
493 |
-
|
|
|
|
|
494 |
});
|
495 |
}
|
496 |
});
|
497 |
-
|
498 |
-
if (tinvwl_products.length) {
|
499 |
-
rest_request();
|
500 |
-
}
|
501 |
}
|
502 |
});
|
|
|
|
|
|
|
|
|
503 |
}); // Configuration of the observer:
|
504 |
|
505 |
var config = {
|
506 |
childList: true,
|
507 |
-
|
508 |
-
subtree: true,
|
509 |
-
characterData: true
|
510 |
};
|
511 |
var targetNode = document.body;
|
512 |
observer.observe(targetNode, config);
|
@@ -532,7 +535,15 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
532 |
if ($supports_html5_storage) {
|
533 |
localStorage.setItem(hash_key, hash);
|
534 |
sessionStorage.setItem(hash_key, hash);
|
535 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
536 |
}
|
537 |
}
|
538 |
})(jQuery);
|
408 |
}
|
409 |
|
410 |
e.toggleClass('tinvwl-product-in-list', j).toggleClass('tinvwl-product-make-remove', j && g).attr('data-tinv-wl-action', j && g ? 'remove' : 'addto');
|
|
|
|
|
411 |
}
|
412 |
+
|
413 |
+
a.preventDefault();
|
414 |
+
e.removeClass('disabled-add-wishlist');
|
415 |
}); // Refresh when storage changes in another tab
|
416 |
|
417 |
$(window).on('storage onstorage', function (e) {
|
432 |
var tinvwl_products = [],
|
433 |
tinvwl_counter = false;
|
434 |
$('a.tinvwl_add_to_wishlist_button').each(function () {
|
435 |
+
if ($(this).data('tinv-wl-product') !== 'undefined' && $(this).data('tinv-wl-product')) {
|
436 |
+
tinvwl_products.push($(this).data('tinv-wl-product'));
|
437 |
+
}
|
438 |
});
|
439 |
$('.wishlist_products_counter_number').each(function () {
|
440 |
tinvwl_counter = true;
|
481 |
// Create an observer instance
|
482 |
|
483 |
var observer = new MutationObserver(function (mutations) {
|
484 |
+
tinvwl_products = [];
|
485 |
mutations.forEach(function (mutation) {
|
486 |
var newNodes = mutation.addedNodes; // If there are new nodes added
|
487 |
|
488 |
if (newNodes !== null) {
|
|
|
489 |
var $nodes = $(newNodes);
|
490 |
$nodes.each(function () {
|
491 |
var $node = $(this),
|
493 |
|
494 |
if (els.length) {
|
495 |
els.each(function () {
|
496 |
+
if ($(this).data('tinv-wl-product') !== 'undefined' && $(this).data('tinv-wl-product')) {
|
497 |
+
tinvwl_products.push($(this).data('tinv-wl-product'));
|
498 |
+
}
|
499 |
});
|
500 |
}
|
501 |
});
|
|
|
|
|
|
|
|
|
502 |
}
|
503 |
});
|
504 |
+
|
505 |
+
if (tinvwl_products.length) {
|
506 |
+
rest_request();
|
507 |
+
}
|
508 |
}); // Configuration of the observer:
|
509 |
|
510 |
var config = {
|
511 |
childList: true,
|
512 |
+
subtree: true
|
|
|
|
|
513 |
};
|
514 |
var targetNode = document.body;
|
515 |
observer.observe(targetNode, config);
|
535 |
if ($supports_html5_storage) {
|
536 |
localStorage.setItem(hash_key, hash);
|
537 |
sessionStorage.setItem(hash_key, hash);
|
538 |
+
|
539 |
+
if ('false' !== hash) {
|
540 |
+
jQuery('.wishlist_products_counter_number, body.theme-woostify .wishlist-item-count').html(hash);
|
541 |
+
} else {
|
542 |
+
jQuery('.wishlist_products_counter_number, body.theme-woostify .wishlist-item-count').html('').closest('span.wishlist-counter-with-products').removeClass('wishlist-counter-with-products');
|
543 |
+
}
|
544 |
+
|
545 |
+
var has_products = !('0' == hash || 'false' == hash);
|
546 |
+
jQuery('.wishlist_products_counter').toggleClass('wishlist-counter-with-products', has_products);
|
547 |
}
|
548 |
}
|
549 |
})(jQuery);
|
assets/js/public.min.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
/**
|
2 |
* TI WooCommerce Wishlist Plugin - Allow your store guests and customers to add products to Wishlist. Add Wishlist functionality to your store for free.
|
3 |
-
* @version 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(r){r.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(){r("body > .tinv-wishlist").length||r("body").append(r("<div>").addClass("tinv-wishlist")),r(this).appendTo("body > .tinv-wishlist")},onCreateWishList:function(t){r(this).append(r("<option>").html(t.title).val(t.ID).toggleClass("tinv_in_wishlist",t.in))},onSelectWishList:function(){},onDialogShow:function(t){r(t).addClass("tinv-modal-open"),r(t).removeClass("ftinvwl-pulse")},onDialogHide:function(t){r(t).removeClass("tinv-modal-open"),r(t).removeClass("ftinvwl-pulse")},onInited:function(){},onClick:function(){if(r(this).is(".disabled-add-wishlist"))return!1;r(this).is(".ftinvwl-animated")&&r(this).addClass("ftinvwl-pulse"),this.tinvwl_dialog?this.tinvwl_dialog.show_list.call(this):e.onActionProduct.call(this)},onPrepareDataAction:function(t,i){r("body").trigger("tinvwl_wishlist_button_clicked",[t,i])},filterProductAlreadyIn:function(t){t=t||[];var o={};return r("form.cart[method=post], .woocommerce-variation-add-to-cart, form.vtajaxform[method=post]").find("input, select").each(function(){var t=r(this).attr("name"),i=r(this).attr("type"),n=r(this).val();("checkbox"!==i&&"radio"!==i||r(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,r(this).parent().parent().find(".already-in").remove();var n="";switch(t.length){case 0:break;default:n=r("<ul>");r.each(t,function(t,i){n.append(r("<li>").html(r("<a>").html(i.title).attr({href:i.url})).val(i.ID))})}n.length&&r(this).closest(".tinv-modal-inner").find("img").after(r("<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(t){var i=r(this).data("tinv-wl-product");r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+i+"']").each(function(){r(this).attr("data-tinv-wl-list",t)})},msg:function(t){if(!t)return!1;var i=r(t).eq(0);r("body > .tinv-wishlist").length||r("body").append(r("<div>").addClass("tinv-wishlist")),r("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){if(r("body").trigger("tinvwl_wishlist_added_status",[this,t]),t){var i=r(this).data("tinv-wl-product");r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+i+"']").each(function(){r(this).addClass("tinvwl-product-in-list")})}},removed:function(t){if(t){var i=r(this).data("tinv-wl-product");r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+i+"']").each(function(){r(this).removeClass("tinvwl-product-in-list").removeClass("tinvwl-product-make-remove").attr("data-tinv-wl-action","addto")})}},make_remove:function(t){if(t){var i=r(this).data("tinv-wl-product");r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+i+"']").each(function(){r(this).toggleClass("tinvwl-product-make-remove",t).attr("data-tinv-wl-action",t?"remove":"addto")})}},counter:function(t){var i=!("0"==t||""==t);r(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i),l(t)}}};i.onActionProduct=function(t,i){var s={form:{},tinv_wishlist_id:t||"",tinv_wishlist_name:i||"",product_type:r(this).attr("data-tinv-wl-producttype"),product_id:r(this).attr("data-tinv-wl-product")||0,product_variation:r(this).attr("data-tinv-wl-productvariation")||0,product_action:r(this).attr("data-tinv-wl-action")||"addto",redirect:window.location.href},n=this;r(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=r(this).attr("name"),i=r(this).attr("type"),n=r(this).val(),o=10;if("button"!==i&&void 0!==t&&"attribute_"!=t.substr(0,10)){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--}"checkbox"===i||"radio"===i?r(this).is(":checked")&&(n.length||"object"===_typeof(n)||(n=!0),s.form[t]=e(s.form[t],n)):s.form[t]=e(s.form[t],n)}}),s=e.onPrepareDataAction.call(n,n,s)||s,r.post(e.api_url,s,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=r.extend(!0,{},i,t);return r(this).each(function(){if(!r(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=r(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=r(this).find(e.class.select).eq(0);r(this).find(e.class.newtitle).hide().val(""),n.html(""),r.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),r(this).find(e.class.newtitle).toggle(""===n.val())}),"function"!=typeof this.tinvwl_dialog.show_list&&(this.tinvwl_dialog.show_list=function(){var t=r.parseJSON(r(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;r(this.tinvwl_dialog).find(e.class.dialogbutton).off("click").on("click",function(){var t,i=r(o.tinvwl_dialog).find(e.class.select),n=r(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))})}r(this).off("click").on("click",e.onClick),e.onInited.call(this,e)})},r(document).ready(function(){r("body").on("click",".tinvwl_add_to_wishlist_button",function(t){if(r(this).is(".disabled-add-wishlist"))return t.preventDefault(),void window.alert(tinvwl_add_to_wishlist.i18n_make_a_selection_text);r(this).is(".inited-add-wishlist")||r(this).tinvwl_to_wishlist({onInited:function(t){r(this).addClass("inited-add-wishlist"),t.onClick.call(this)}})}),r(document).on("hide_variation",".variations_form",function(t){var i=r(this).find(".tinvwl_add_to_wishlist_button");i.length&&!tinvwl_add_to_wishlist.allow_parent_variable&&(t.preventDefault(),i.addClass("disabled-add-wishlist"))}),r(document).on("show_variation",".variations_form",function(t,i,n){var o=r(this).find(".tinvwl_add_to_wishlist_button");if(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")}}),r(window).on("storage onstorage",function(t){o===t.originalEvent.key&&localStorage.getItem(o)!==sessionStorage.getItem(o)&&l(localStorage.getItem(o))});var e=[],a=!1;r("a.tinvwl_add_to_wishlist_button").each(function(){e.push(r(this).data("tinv-wl-product"))}),r(".wishlist_products_counter_number").each(function(){a=!0});function n(){if(e.length||a){var t={ids:e,counter:a},i=(n=tinvwl_add_to_wishlist.rest_root+"wishlist/v1/products",o=t,r.isEmptyObject(o)||(n+=(0<=n.indexOf("?")?"&":"?")+r.param(o)),n);r.ajax({url:i,method:"GET",beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i=!("0"==t.counter||""==t.counter);r(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i),l(t.counter),r.each(t.products,function(t,i){var n=!1,o="1"==window.tinvwl_add_to_wishlist.simple_flow,e=r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+t+"']");for(var t in i)i[t].hasOwnProperty("in")&&Array.isArray(i[t].in)&&(n=!0);e.each(function(){r(this).removeClass("tinvwl-add-hide").attr("data-tinv-wl-list",JSON.stringify(i)).toggleClass("tinvwl-product-in-list",n).toggleClass("tinvwl-product-make-remove",n&&o).attr("data-tinv-wl-action",n&&o?"remove":"addto")})})})}var n,o}n();var t=new MutationObserver(function(t){t.forEach(function(t){var i=t.addedNodes;null!==i&&(e=[],r(i).each(function(){var t=r(this).find(".tinvwl_add_to_wishlist_button");t.length&&t.each(function(){e.push(r(this).data("tinv-wl-product"))})}),e.length&&n())})}),i=document.body;t.observe(i,{childList:!0,attributes:!0,subtree:!0,characterData:!0})});var i=!0,o=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(o,t),sessionStorage.setItem(o,t),jQuery(".wishlist_products_counter_number").html(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.19.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(r){r.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(){r("body > .tinv-wishlist").length||r("body").append(r("<div>").addClass("tinv-wishlist")),r(this).appendTo("body > .tinv-wishlist")},onCreateWishList:function(t){r(this).append(r("<option>").html(t.title).val(t.ID).toggleClass("tinv_in_wishlist",t.in))},onSelectWishList:function(){},onDialogShow:function(t){r(t).addClass("tinv-modal-open"),r(t).removeClass("ftinvwl-pulse")},onDialogHide:function(t){r(t).removeClass("tinv-modal-open"),r(t).removeClass("ftinvwl-pulse")},onInited:function(){},onClick:function(){if(r(this).is(".disabled-add-wishlist"))return!1;r(this).is(".ftinvwl-animated")&&r(this).addClass("ftinvwl-pulse"),this.tinvwl_dialog?this.tinvwl_dialog.show_list.call(this):e.onActionProduct.call(this)},onPrepareDataAction:function(t,i){r("body").trigger("tinvwl_wishlist_button_clicked",[t,i])},filterProductAlreadyIn:function(t){t=t||[];var o={};return r("form.cart[method=post], .woocommerce-variation-add-to-cart, form.vtajaxform[method=post]").find("input, select").each(function(){var t=r(this).attr("name"),i=r(this).attr("type"),n=r(this).val();("checkbox"!==i&&"radio"!==i||r(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,r(this).parent().parent().find(".already-in").remove();var n="";switch(t.length){case 0:break;default:n=r("<ul>");r.each(t,function(t,i){n.append(r("<li>").html(r("<a>").html(i.title).attr({href:i.url})).val(i.ID))})}n.length&&r(this).closest(".tinv-modal-inner").find("img").after(r("<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(t){var i=r(this).data("tinv-wl-product");r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+i+"']").each(function(){r(this).attr("data-tinv-wl-list",t)})},msg:function(t){if(!t)return!1;var i=r(t).eq(0);r("body > .tinv-wishlist").length||r("body").append(r("<div>").addClass("tinv-wishlist")),r("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){if(r("body").trigger("tinvwl_wishlist_added_status",[this,t]),t){var i=r(this).data("tinv-wl-product");r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+i+"']").each(function(){r(this).addClass("tinvwl-product-in-list")})}},removed:function(t){if(t){var i=r(this).data("tinv-wl-product");r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+i+"']").each(function(){r(this).removeClass("tinvwl-product-in-list").removeClass("tinvwl-product-make-remove").attr("data-tinv-wl-action","addto")})}},make_remove:function(t){if(t){var i=r(this).data("tinv-wl-product");r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+i+"']").each(function(){r(this).toggleClass("tinvwl-product-make-remove",t).attr("data-tinv-wl-action",t?"remove":"addto")})}},counter:function(t){var i=!("0"==t||""==t);r(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i),a(t)}}};i.onActionProduct=function(t,i){var s={form:{},tinv_wishlist_id:t||"",tinv_wishlist_name:i||"",product_type:r(this).attr("data-tinv-wl-producttype"),product_id:r(this).attr("data-tinv-wl-product")||0,product_variation:r(this).attr("data-tinv-wl-productvariation")||0,product_action:r(this).attr("data-tinv-wl-action")||"addto",redirect:window.location.href},n=this;r(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=r(this).attr("name"),i=r(this).attr("type"),n=r(this).val(),o=10;if("button"!==i&&void 0!==t&&"attribute_"!=t.substr(0,10)){for(;/^(.+)\[([^\[\]]*?)\]$/.test(t)&&0<o;){var l=t.match(/^(.+)\[([^\[\]]*?)\]$/);if(3===l.length){var a={};a[l[2]]=n,n=a}t=l[1],o--}"checkbox"===i||"radio"===i?r(this).is(":checked")&&(n.length||"object"===_typeof(n)||(n=!0),s.form[t]=e(s.form[t],n)):s.form[t]=e(s.form[t],n)}}),s=e.onPrepareDataAction.call(n,n,s)||s,r.post(e.api_url,s,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=r.extend(!0,{},i,t);return r(this).each(function(){if(!r(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=r(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=r(this).find(e.class.select).eq(0);r(this).find(e.class.newtitle).hide().val(""),n.html(""),r.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),r(this).find(e.class.newtitle).toggle(""===n.val())}),"function"!=typeof this.tinvwl_dialog.show_list&&(this.tinvwl_dialog.show_list=function(){var t=r.parseJSON(r(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;r(this.tinvwl_dialog).find(e.class.dialogbutton).off("click").on("click",function(){var t,i=r(o.tinvwl_dialog).find(e.class.select),n=r(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))})}r(this).off("click").on("click",e.onClick),e.onInited.call(this,e)})},r(document).ready(function(){r("body").on("click",".tinvwl_add_to_wishlist_button",function(t){if(r(this).is(".disabled-add-wishlist"))return t.preventDefault(),void window.alert(tinvwl_add_to_wishlist.i18n_make_a_selection_text);r(this).is(".inited-add-wishlist")||r(this).tinvwl_to_wishlist({onInited:function(t){r(this).addClass("inited-add-wishlist"),t.onClick.call(this)}})}),r(document).on("hide_variation",".variations_form",function(t){var i=r(this).find(".tinvwl_add_to_wishlist_button");i.length&&!tinvwl_add_to_wishlist.allow_parent_variable&&(t.preventDefault(),i.addClass("disabled-add-wishlist"))}),r(document).on("show_variation",".variations_form",function(t,i,n){var o=r(this).find(".tinvwl_add_to_wishlist_button");if(o.length&&o.attr("data-tinv-wl-list")){var e=JSON.parse(o.attr("data-tinv-wl-list")),l=!1,a="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)&&(l=!0);o.toggleClass("tinvwl-product-in-list",l).toggleClass("tinvwl-product-make-remove",l&&a).attr("data-tinv-wl-action",l&&a?"remove":"addto")}t.preventDefault(),o.removeClass("disabled-add-wishlist")}),r(window).on("storage onstorage",function(t){o===t.originalEvent.key&&localStorage.getItem(o)!==sessionStorage.getItem(o)&&a(localStorage.getItem(o))});var e=[],l=!1;r("a.tinvwl_add_to_wishlist_button").each(function(){"undefined"!==r(this).data("tinv-wl-product")&&r(this).data("tinv-wl-product")&&e.push(r(this).data("tinv-wl-product"))}),r(".wishlist_products_counter_number").each(function(){l=!0});function i(){if(e.length||l){var t={ids:e,counter:l},i=(n=tinvwl_add_to_wishlist.rest_root+"wishlist/v1/products",o=t,r.isEmptyObject(o)||(n+=(0<=n.indexOf("?")?"&":"?")+r.param(o)),n);r.ajax({url:i,method:"GET",beforeSend:function(t){t.setRequestHeader("X-WP-Nonce",tinvwl_add_to_wishlist.nonce)}}).done(function(t){var i=!("0"==t.counter||""==t.counter);r(".wishlist_products_counter").toggleClass("wishlist-counter-with-products",i),a(t.counter),r.each(t.products,function(t,i){var n=!1,o="1"==window.tinvwl_add_to_wishlist.simple_flow,e=r("a.tinvwl_add_to_wishlist_button[data-tinv-wl-product='"+t+"']");for(var t in i)i[t].hasOwnProperty("in")&&Array.isArray(i[t].in)&&(n=!0);e.each(function(){r(this).removeClass("tinvwl-add-hide").attr("data-tinv-wl-list",JSON.stringify(i)).toggleClass("tinvwl-product-in-list",n).toggleClass("tinvwl-product-make-remove",n&&o).attr("data-tinv-wl-action",n&&o?"remove":"addto")})})})}var n,o}i();var t=new MutationObserver(function(t){e=[],t.forEach(function(t){var i=t.addedNodes;null!==i&&r(i).each(function(){var t=r(this).find(".tinvwl_add_to_wishlist_button");t.length&&t.each(function(){"undefined"!==r(this).data("tinv-wl-product")&&r(this).data("tinv-wl-product")&&e.push(r(this).data("tinv-wl-product"))})})}),e.length&&i()}),n=document.body;t.observe(n,{childList:!0,subtree:!0})});var n=!0,o=tinvwl_add_to_wishlist.hash_key;try{n="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){n=!1}function a(t){if(n){localStorage.setItem(o,t),sessionStorage.setItem(o,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)}}}(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);
|
integrations/advanced-product-fields-for-woocommerce.php
ADDED
@@ -0,0 +1,146 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* TI WooCommerce Wishlist integration with:
|
4 |
+
*
|
5 |
+
* @name Advanced Product Fields (Product Options) for WooCommerce
|
6 |
+
*
|
7 |
+
* @version 1.1.7
|
8 |
+
*
|
9 |
+
* @slug advanced-product-fields-for-woocommerce
|
10 |
+
*
|
11 |
+
* @url https://wordpress.org/plugins/advanced-product-fields-for-woocommerce/
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
|
15 |
+
// If this file is called directly, abort.
|
16 |
+
use SW_WAPF\Includes\Classes\Enumerable;
|
17 |
+
use SW_WAPF\Includes\Classes\Field_Groups;
|
18 |
+
use SW_WAPF\Includes\Classes\Fields;
|
19 |
+
use SW_WAPF\Includes\Classes\Helper;
|
20 |
+
|
21 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
22 |
+
die;
|
23 |
+
}
|
24 |
+
|
25 |
+
if ( ! function_exists( 'tinv_wishlist_item_meta_wapf' ) ) {
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Set description for meta Advanced Product Fields (Product Options) for WooCommerce
|
29 |
+
*
|
30 |
+
* @param array $meta Meta array.
|
31 |
+
* @param array $wl_product Wishlist Product.
|
32 |
+
* @param \WC_Product $product Woocommerce Product.
|
33 |
+
*
|
34 |
+
* @return array
|
35 |
+
*/
|
36 |
+
|
37 |
+
function tinv_wishlist_item_meta_wapf( $item_data, $product_id, $variation_id ) {
|
38 |
+
if ( class_exists( 'SW_WAPF\WAPF' ) ) {
|
39 |
+
|
40 |
+
if ( empty( $item_data['wapf'] ) || ! is_array( $item_data['wapf'] ) || ! isset( $item_data['wapf_field_groups'] ) ) {
|
41 |
+
return $item_data;
|
42 |
+
}
|
43 |
+
|
44 |
+
$field_groups = SW_WAPF\Includes\Classes\Field_Groups::get_by_ids( explode( ',', sanitize_text_field( $item_data['wapf_field_groups']['display'] ) ) );
|
45 |
+
|
46 |
+
$fields = SW_WAPF\Includes\Classes\Enumerable::from( $field_groups )->merge( function ( $x ) {
|
47 |
+
return $x->fields;
|
48 |
+
} )->toArray();
|
49 |
+
|
50 |
+
|
51 |
+
foreach ( $item_data['wapf']['display'] as $key => $field ) {
|
52 |
+
|
53 |
+
$field_id = str_replace( 'field_', '', $key );
|
54 |
+
|
55 |
+
$field_obj = SW_WAPF\Includes\Classes\Enumerable::from( $fields )->firstOrDefault( function ( $x ) use ( $field_id ) {
|
56 |
+
return $x->id === $field_id;
|
57 |
+
} );
|
58 |
+
|
59 |
+
$item_data[ $key ] = array(
|
60 |
+
'key' => $field_obj->label,
|
61 |
+
'display' => $field,
|
62 |
+
);
|
63 |
+
}
|
64 |
+
|
65 |
+
foreach ( array_keys( $item_data ) as $key ) {
|
66 |
+
if ( strpos( $key, 'wapf' ) === 0 ) {
|
67 |
+
unset( $item_data[ $key ] );
|
68 |
+
}
|
69 |
+
}
|
70 |
+
|
71 |
+
}
|
72 |
+
|
73 |
+
return $item_data;
|
74 |
+
}
|
75 |
+
|
76 |
+
add_filter( 'tinvwl_wishlist_item_meta_post', 'tinv_wishlist_item_meta_wapf', 10, 3 );
|
77 |
+
}
|
78 |
+
|
79 |
+
if ( ! function_exists( 'tinvwl_item_price_wapf' ) ) {
|
80 |
+
|
81 |
+
/**
|
82 |
+
* Modify price for Advanced Product Fields (Product Options) for WooCommerce
|
83 |
+
*
|
84 |
+
* @param string $price Returned price.
|
85 |
+
* @param array $wl_product Wishlist Product.
|
86 |
+
* @param \WC_Product $product Woocommerce Product.
|
87 |
+
*
|
88 |
+
* @return string
|
89 |
+
*/
|
90 |
+
function tinvwl_item_price_wapf( $price, $wl_product, $product ) {
|
91 |
+
|
92 |
+
if ( class_exists( 'SW_WAPF\WAPF' ) ) {
|
93 |
+
|
94 |
+
if ( empty( $wl_product['meta'] ) || empty( $wl_product['meta']['wapf'] ) || ! is_array( $wl_product['meta']['wapf'] ) || ! isset( $wl_product['meta']['wapf_field_groups'] ) ) {
|
95 |
+
return $price;
|
96 |
+
}
|
97 |
+
|
98 |
+
$field_groups = SW_WAPF\Includes\Classes\Field_Groups::get_by_ids( explode( ',', sanitize_text_field( $wl_product['meta']['wapf_field_groups'] ) ) );
|
99 |
+
|
100 |
+
$fields = SW_WAPF\Includes\Classes\Enumerable::from( $field_groups )->merge( function ( $x ) {
|
101 |
+
return $x->fields;
|
102 |
+
} )->toArray();
|
103 |
+
|
104 |
+
$quantity = empty( $wl_product['quantity'] ) ? 1 : wc_stock_amount( $wl_product['quantity'] );
|
105 |
+
|
106 |
+
$base = SW_WAPF\Includes\Classes\Helper::get_product_base_price( $product );
|
107 |
+
$options_total = 0;
|
108 |
+
|
109 |
+
foreach ( $wl_product['meta']['wapf'] as $key => $field ) {
|
110 |
+
|
111 |
+
$field_id = str_replace( 'field_', '', $key );
|
112 |
+
|
113 |
+
$field_obj = SW_WAPF\Includes\Classes\Enumerable::from( $fields )->firstOrDefault( function ( $x ) use ( $field_id ) {
|
114 |
+
return $x->id === $field_id;
|
115 |
+
} );
|
116 |
+
|
117 |
+
$price_addition = array();
|
118 |
+
|
119 |
+
if ( $field_obj->pricing_enabled() ) {
|
120 |
+
$price_addition = SW_WAPF\Includes\Classes\Fields::pricing_value( $field_obj, $key );
|
121 |
+
}
|
122 |
+
|
123 |
+
if ( ! empty( $price_addition ) ) {
|
124 |
+
foreach ( $price_addition as $price ) {
|
125 |
+
|
126 |
+
if ( $price['value'] === 0 ) {
|
127 |
+
continue;
|
128 |
+
}
|
129 |
+
|
130 |
+
$options_total = $options_total + SW_WAPF\Includes\Classes\Fields::do_pricing( $price['value'], $quantity );
|
131 |
+
|
132 |
+
}
|
133 |
+
}
|
134 |
+
}
|
135 |
+
|
136 |
+
if ( $options_total > 0 ) {
|
137 |
+
return wc_price( $base + $options_total );
|
138 |
+
}
|
139 |
+
|
140 |
+
}
|
141 |
+
|
142 |
+
return $price;
|
143 |
+
}
|
144 |
+
|
145 |
+
add_filter( 'tinvwl_wishlist_item_price', 'tinvwl_item_price_wapf', 10, 3 );
|
146 |
+
} // End if().
|
integrations/hide-price-add-to-cart-button.php
ADDED
@@ -0,0 +1,429 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* TI WooCommerce Wishlist integration with:
|
4 |
+
*
|
5 |
+
* @name Hide Price and Add to Cart Button
|
6 |
+
*
|
7 |
+
* @version 1.2.1
|
8 |
+
*
|
9 |
+
* @slug hide-price-add-to-cart-button
|
10 |
+
*
|
11 |
+
* @url https://woocommerce.com/products/hide-price-add-to-cart-button/
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
|
15 |
+
// If this file is called directly, abort.
|
16 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
17 |
+
die;
|
18 |
+
}
|
19 |
+
|
20 |
+
if ( class_exists( 'Addify_Woo_Hide_Price_Front' ) ) {
|
21 |
+
|
22 |
+
function tinvwl_check_class_action( $tag, $class = '', $method ) {
|
23 |
+
global $wp_filter;
|
24 |
+
if ( isset( $wp_filter[ $tag ] ) ) {
|
25 |
+
$len = strlen( $method );
|
26 |
+
|
27 |
+
foreach ( $wp_filter[ $tag ] as $_priority => $actions ) {
|
28 |
+
|
29 |
+
if ( $actions ) {
|
30 |
+
foreach ( $actions as $function_key => $data ) {
|
31 |
+
|
32 |
+
if ( $data ) {
|
33 |
+
if ( substr( $function_key, - $len ) == $method ) {
|
34 |
+
|
35 |
+
if ( $class !== '' ) {
|
36 |
+
if ( is_string( $data['function'][0] ) ) {
|
37 |
+
$_class = $data['function'][0];
|
38 |
+
} elseif ( is_object( $data['function'][0] ) ) {
|
39 |
+
$_class = get_class( $data['function'][0] );
|
40 |
+
} else {
|
41 |
+
return false;
|
42 |
+
}
|
43 |
+
|
44 |
+
if ( $_class !== '' && $_class == $class ) {
|
45 |
+
return true;
|
46 |
+
}
|
47 |
+
} else {
|
48 |
+
return true;
|
49 |
+
}
|
50 |
+
|
51 |
+
}
|
52 |
+
}
|
53 |
+
}
|
54 |
+
}
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
return false;
|
59 |
+
}
|
60 |
+
|
61 |
+
add_action( 'woocommerce_single_product_summary', 'tinvwl_afwhp_hooks', 31 );
|
62 |
+
add_action( 'woocommerce_single_variation', 'tinvwl_afwhp_hooks', 31 );
|
63 |
+
|
64 |
+
function tinvwl_afwhp_hooks() {
|
65 |
+
|
66 |
+
$simple = tinvwl_check_class_action( 'woocommerce_single_product_summary', 'Addify_Woo_Hide_Price_Front', 'afwhp_custom_button_replacement' );
|
67 |
+
if ( $simple ) {
|
68 |
+
add_action( 'woocommerce_single_product_summary', 'tinvwl_view_addto_html', 32 );
|
69 |
+
add_action( 'woocommerce_single_product_summary', 'tinvwl_view_addto_htmlout', 32 );
|
70 |
+
}
|
71 |
+
|
72 |
+
$variable = tinvwl_check_class_action( 'woocommerce_single_variation', 'Addify_Woo_Hide_Price_Front', 'afwhp_custom_button_replacement' );
|
73 |
+
if ( $variable ) {
|
74 |
+
add_action( 'woocommerce_single_variation', 'tinvwl_view_addto_html', 32 );
|
75 |
+
add_action( 'woocommerce_single_variation', 'tinvwl_view_addto_htmlout', 32 );
|
76 |
+
|
77 |
+
ob_start(); ?>
|
78 |
+
<script>
|
79 |
+
(function ($) {
|
80 |
+
$(document).ready(function () {
|
81 |
+
$(document).on('show_variation', '.variations_form', function (a, b, d) {
|
82 |
+
var e = $(this).find('.tinvwl_add_to_wishlist_button');
|
83 |
+
if (e.length) {
|
84 |
+
e.attr('data-tinv-wl-productvariation', b.variation_id);
|
85 |
+
}
|
86 |
+
a.preventDefault();
|
87 |
+
});
|
88 |
+
});
|
89 |
+
})(jQuery);
|
90 |
+
</script>
|
91 |
+
|
92 |
+
|
93 |
+
<?php $content = ob_get_clean();
|
94 |
+
echo $content;
|
95 |
+
}
|
96 |
+
}
|
97 |
+
|
98 |
+
//wishlist add to cart button
|
99 |
+
add_filter( 'tinvwl_wishlist_item_action_add_to_cart', 'product_allow_add_to_cart_afwhp', 10, 3 );
|
100 |
+
|
101 |
+
/**
|
102 |
+
* Allow show button add to cart
|
103 |
+
*
|
104 |
+
* @param boolean $allow Settings flag.
|
105 |
+
* @param array $wlproduct Wishlist Product.
|
106 |
+
* @param WC_Product $product Product.
|
107 |
+
*
|
108 |
+
* @return boolean
|
109 |
+
*/
|
110 |
+
function product_allow_add_to_cart_afwhp( $allow, $wlproduct, $product ) {
|
111 |
+
|
112 |
+
$args = array(
|
113 |
+
'post_type' => 'addify_whp',
|
114 |
+
'post_status' => 'publish',
|
115 |
+
'numberposts' => - 1,
|
116 |
+
'orderby' => 'menu_order',
|
117 |
+
'order' => 'ASC'
|
118 |
+
|
119 |
+
);
|
120 |
+
$rules = get_posts( $args );
|
121 |
+
foreach ( $rules as $rule ) {
|
122 |
+
|
123 |
+
$afwhp_rule_type = get_post_meta( intval( $rule->ID ), 'afwhp_rule_type', true );
|
124 |
+
$afwhp_hide_products = unserialize( get_post_meta( intval( $rule->ID ), 'afwhp_hide_products', true ) );
|
125 |
+
$afwhp_hide_categories = unserialize( get_post_meta( intval( $rule->ID ), 'afwhp_hide_categories', true ) );
|
126 |
+
$afwhp_hide_user_role = unserialize( get_post_meta( intval( $rule->ID ), 'afwhp_hide_user_role', true ) );
|
127 |
+
$afwhp_is_hide_addtocart = get_post_meta( intval( $rule->ID ), 'afwhp_is_hide_addtocart', true );
|
128 |
+
$afwhp_custom_button_text = get_post_meta( intval( $rule->ID ), 'afwhp_custom_button_text', true );
|
129 |
+
$afwhp_custom_button_link = get_post_meta( intval( $rule->ID ), 'afwhp_custom_button_link', true );
|
130 |
+
$afwhp_contact7_form = get_post_meta( intval( $rule->ID ), 'afwhp_contact7_form', true );
|
131 |
+
$afwhp_hide_for_countries = unserialize( get_post_meta( intval( $rule->ID ), 'afwhp_hide_for_countries', true ) );
|
132 |
+
|
133 |
+
if ( ! empty( $afwhp_hide_for_countries ) ) {
|
134 |
+
//country
|
135 |
+
if ( ! empty( $_SERVER['REMOTE_ADDR'] ) ) {
|
136 |
+
$ip = sanitize_meta( '', $_SERVER['REMOTE_ADDR'], '' );
|
137 |
+
} else {
|
138 |
+
$ip = '';
|
139 |
+
}
|
140 |
+
$ch = curl_init();
|
141 |
+
curl_setopt( $ch, CURLOPT_URL, 'http://www.geoplugin.net/json.gp?ip=' . $ip );
|
142 |
+
curl_setopt( $ch, CURLOPT_HEADER, 0 );
|
143 |
+
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
|
144 |
+
$ip_data_in = curl_exec( $ch ); // string
|
145 |
+
curl_close( $ch );
|
146 |
+
|
147 |
+
$ip_data = json_decode( $ip_data_in, true );
|
148 |
+
$ip_data = str_replace( '"', '"', $ip_data ); // for PHP 5.2 see stackoverflow.com/questions/3110487/
|
149 |
+
|
150 |
+
if ( $ip_data && null != $ip_data['geoplugin_countryCode'] ) {
|
151 |
+
$country = $ip_data['geoplugin_countryCode'];
|
152 |
+
}
|
153 |
+
|
154 |
+
$curr_country = $country;
|
155 |
+
} else {
|
156 |
+
$curr_country = '';
|
157 |
+
}
|
158 |
+
|
159 |
+
$istrue = false;
|
160 |
+
|
161 |
+
if ( ! empty( $afwhp_hide_for_countries ) && in_array( $curr_country, $afwhp_hide_for_countries ) ) {
|
162 |
+
|
163 |
+
$iscountry = true;
|
164 |
+
|
165 |
+
} elseif ( empty( $afwhp_hide_for_countries ) ) {
|
166 |
+
|
167 |
+
$iscountry = true;
|
168 |
+
|
169 |
+
} else {
|
170 |
+
|
171 |
+
$iscountry = false;
|
172 |
+
}
|
173 |
+
|
174 |
+
$applied_on_all_products = get_post_meta( $rule->ID, 'afwhp_apply_on_all_products', true );
|
175 |
+
|
176 |
+
|
177 |
+
//Registered Users
|
178 |
+
if ( 'afwhp_for_registered_users' == $afwhp_rule_type ) {
|
179 |
+
|
180 |
+
if ( is_user_logged_in() ) {
|
181 |
+
|
182 |
+
// get Current User Role
|
183 |
+
$curr_user = wp_get_current_user();
|
184 |
+
$user_data = get_user_meta( $curr_user->ID );
|
185 |
+
$curr_user_role = $curr_user->roles[0];
|
186 |
+
|
187 |
+
if ( 'yes' == $applied_on_all_products && empty( $afwhp_hide_user_role ) ) {
|
188 |
+
$istrue = true;
|
189 |
+
} elseif ( ( is_array( $afwhp_hide_user_role ) && in_array( $curr_user_role, $afwhp_hide_user_role ) ) && 'yes' == $applied_on_all_products ) {
|
190 |
+
$istrue = true;
|
191 |
+
} elseif ( ( is_array( $afwhp_hide_user_role ) && in_array( $curr_user_role, $afwhp_hide_user_role ) ) && ( is_array( $afwhp_hide_products ) && in_array( $product->get_id(), $afwhp_hide_products ) ) ) {
|
192 |
+
$istrue = true;
|
193 |
+
}
|
194 |
+
|
195 |
+
|
196 |
+
//Products
|
197 |
+
if ( $istrue && $iscountry ) {
|
198 |
+
|
199 |
+
if ( 'yes' == $afwhp_is_hide_addtocart ) {
|
200 |
+
|
201 |
+
if ( '' == $afwhp_custom_button_text ) {
|
202 |
+
|
203 |
+
echo '';
|
204 |
+
} else {
|
205 |
+
|
206 |
+
if ( ! empty( $afwhp_custom_button_link ) ) {
|
207 |
+
|
208 |
+
echo '<a href="' . esc_url( $afwhp_custom_button_link ) . '" rel="nofollow" class="button add_to_cart_button product_type_' . esc_attr( $product->get_type() ) . '">' . esc_attr( $afwhp_custom_button_text ) . '</a>';
|
209 |
+
} elseif ( ! empty( $afwhp_contact7_form ) ) {
|
210 |
+
|
211 |
+
$contact7 = get_post( $afwhp_contact7_form );
|
212 |
+
|
213 |
+
$form_title = $contact7->post_title;
|
214 |
+
|
215 |
+
?>
|
216 |
+
<a href="javascript:void(0)"
|
217 |
+
onclick="showPopForm('<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>')"
|
218 |
+
class="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>_open button product_type_simple add_to_cart_button"><?php echo esc_attr( $afwhp_custom_button_text ); ?></a>
|
219 |
+
<div id="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>"
|
220 |
+
class="form_popup">
|
221 |
+
|
222 |
+
<button class="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>_close form_close_btn btn btn-default">
|
223 |
+
X
|
224 |
+
</button>
|
225 |
+
|
226 |
+
<?php echo do_shortcode( '[contact-form-7 id="' . $afwhp_contact7_form . '" title="' . $form_title . '" ] ' ); ?>
|
227 |
+
|
228 |
+
</div>
|
229 |
+
|
230 |
+
<?php
|
231 |
+
|
232 |
+
} else {
|
233 |
+
|
234 |
+
echo '<a href="javascript:void(0)" rel="nofollow" class="button add_to_cart_button product_type_' . esc_attr( $product->get_type() ) . '">' . esc_attr( $afwhp_custom_button_text ) . '</a>';
|
235 |
+
}
|
236 |
+
|
237 |
+
}
|
238 |
+
}
|
239 |
+
|
240 |
+
}
|
241 |
+
|
242 |
+
//Categories
|
243 |
+
|
244 |
+
if ( ! empty( $afwhp_hide_categories ) && ! $istrue && $iscountry ) {
|
245 |
+
|
246 |
+
foreach ( $afwhp_hide_categories as $cat ) {
|
247 |
+
|
248 |
+
if ( has_term( $cat, 'product_cat', $product->get_id() ) ) {
|
249 |
+
|
250 |
+
if ( in_array( $curr_user_role, $afwhp_hide_user_role ) ) {
|
251 |
+
|
252 |
+
if ( 'yes' == $afwhp_is_hide_addtocart ) {
|
253 |
+
|
254 |
+
if ( '' == $afwhp_custom_button_text ) {
|
255 |
+
|
256 |
+
echo '';
|
257 |
+
} else {
|
258 |
+
|
259 |
+
if ( ! empty( $afwhp_custom_button_link ) ) {
|
260 |
+
|
261 |
+
echo '<a href="' . esc_url( $afwhp_custom_button_link ) . '" rel="nofollow" class="button add_to_cart_button product_type_' . esc_attr( $product->get_type() ) . '">' . esc_attr( $afwhp_custom_button_text ) . '</a>';
|
262 |
+
|
263 |
+
return;
|
264 |
+
} elseif ( ! empty( $afwhp_contact7_form ) ) {
|
265 |
+
|
266 |
+
$contact7 = get_post( $afwhp_contact7_form );
|
267 |
+
|
268 |
+
|
269 |
+
$form_title = $contact7->post_title;
|
270 |
+
|
271 |
+
?>
|
272 |
+
<a href="javascript:void(0)"
|
273 |
+
onclick="showPopForm('<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>')"
|
274 |
+
class="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>_open button product_type_simple add_to_cart_button"><?php echo esc_attr( $afwhp_custom_button_text ); ?></a>
|
275 |
+
<div id="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>"
|
276 |
+
class="form_popup">
|
277 |
+
|
278 |
+
<button class="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>_close form_close_btn btn btn-default">
|
279 |
+
X
|
280 |
+
</button>
|
281 |
+
|
282 |
+
<?php echo do_shortcode( '[contact-form-7 id="' . $afwhp_contact7_form . '" title="' . $form_title . '" ] ' ); ?>
|
283 |
+
|
284 |
+
</div>
|
285 |
+
|
286 |
+
<?php
|
287 |
+
return;
|
288 |
+
} else {
|
289 |
+
|
290 |
+
echo '<a href="javascript:void(0)" rel="nofollow" class="button add_to_cart_button product_type_' . esc_attr( $product->get_type() ) . '">' . esc_attr( $afwhp_custom_button_text ) . '</a>';
|
291 |
+
|
292 |
+
return;
|
293 |
+
}
|
294 |
+
|
295 |
+
}
|
296 |
+
}
|
297 |
+
|
298 |
+
}
|
299 |
+
|
300 |
+
}
|
301 |
+
|
302 |
+
}
|
303 |
+
}
|
304 |
+
|
305 |
+
|
306 |
+
}
|
307 |
+
|
308 |
+
} else {
|
309 |
+
//Guest Users
|
310 |
+
if ( ! is_user_logged_in() ) {
|
311 |
+
|
312 |
+
//Products
|
313 |
+
if ( 'yes' == $applied_on_all_products ) {
|
314 |
+
$istrue = true;
|
315 |
+
} elseif ( is_array( $afwhp_hide_products ) && in_array( $product->get_id(), $afwhp_hide_products ) ) {
|
316 |
+
$istrue = true;
|
317 |
+
}
|
318 |
+
|
319 |
+
if ( $istrue && $iscountry ) {
|
320 |
+
|
321 |
+
if ( 'yes' == $afwhp_is_hide_addtocart ) {
|
322 |
+
|
323 |
+
if ( '' == $afwhp_custom_button_text ) {
|
324 |
+
|
325 |
+
echo '';
|
326 |
+
} else {
|
327 |
+
|
328 |
+
if ( ! empty( $afwhp_custom_button_link ) ) {
|
329 |
+
|
330 |
+
echo '<a href="' . esc_url( $afwhp_custom_button_link ) . '" rel="nofollow" class="button add_to_cart_button product_type_' . esc_attr( $product->get_type() ) . '">' . esc_attr( $afwhp_custom_button_text ) . '</a>';
|
331 |
+
} elseif ( ! empty( $afwhp_contact7_form ) ) {
|
332 |
+
|
333 |
+
$contact7 = get_post( $afwhp_contact7_form );
|
334 |
+
|
335 |
+
|
336 |
+
$form_title = $contact7->post_title;
|
337 |
+
|
338 |
+
?>
|
339 |
+
<a href="javascript:void(0)"
|
340 |
+
onclick="showPopForm('<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>')"
|
341 |
+
class="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>_open button product_type_simple add_to_cart_button"><?php echo esc_attr( $afwhp_custom_button_text ); ?></a>
|
342 |
+
<div id="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>"
|
343 |
+
class="form_popup">
|
344 |
+
|
345 |
+
<button class="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>_close form_close_btn btn btn-default">
|
346 |
+
X
|
347 |
+
</button>
|
348 |
+
|
349 |
+
<?php echo do_shortcode( '[contact-form-7 id="' . $afwhp_contact7_form . '" title="' . $form_title . '" ] ' ); ?>
|
350 |
+
|
351 |
+
</div>
|
352 |
+
|
353 |
+
<?php
|
354 |
+
|
355 |
+
} else {
|
356 |
+
|
357 |
+
echo '<a href="javascript:void(0)" rel="nofollow" class="button add_to_cart_button product_type_' . esc_attr( $product->get_type() ) . '">' . esc_attr( $afwhp_custom_button_text ) . '</a>';
|
358 |
+
}
|
359 |
+
|
360 |
+
}
|
361 |
+
}
|
362 |
+
|
363 |
+
}
|
364 |
+
|
365 |
+
|
366 |
+
//Categories
|
367 |
+
if ( ! empty( $afwhp_hide_categories ) && ! $istrue && $iscountry ) {
|
368 |
+
|
369 |
+
foreach ( $afwhp_hide_categories as $cat ) {
|
370 |
+
|
371 |
+
if ( has_term( $cat, 'product_cat', $product->get_id() ) ) {
|
372 |
+
|
373 |
+
if ( 'yes' == $afwhp_is_hide_addtocart ) {
|
374 |
+
|
375 |
+
if ( '' == $afwhp_custom_button_text ) {
|
376 |
+
|
377 |
+
echo '';
|
378 |
+
} else {
|
379 |
+
|
380 |
+
if ( ! empty( $afwhp_custom_button_link ) ) {
|
381 |
+
|
382 |
+
echo '<a href="' . esc_url( $afwhp_custom_button_link ) . '" rel="nofollow" class="button add_to_cart_button product_type_' . esc_attr( $product->get_type() ) . '">' . esc_attr( $afwhp_custom_button_text ) . '</a>';
|
383 |
+
|
384 |
+
return;
|
385 |
+
} elseif ( ! empty( $afwhp_contact7_form ) ) {
|
386 |
+
|
387 |
+
$contact7 = get_post( $afwhp_contact7_form );
|
388 |
+
|
389 |
+
|
390 |
+
$form_title = $contact7->post_title;
|
391 |
+
|
392 |
+
?>
|
393 |
+
<a href="javascript:void(0)"
|
394 |
+
onclick="showPopForm('<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>')"
|
395 |
+
class="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>_open button product_type_simple add_to_cart_button"><?php echo esc_attr( $afwhp_custom_button_text ); ?></a>
|
396 |
+
<div id="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>"
|
397 |
+
class="form_popup">
|
398 |
+
|
399 |
+
<button class="form_popup<?php echo esc_attr( $afwhp_contact7_form ) . esc_attr( $product->get_id() ); ?>_close form_close_btn btn btn-default">
|
400 |
+
X
|
401 |
+
</button>
|
402 |
+
|
403 |
+
<?php echo do_shortcode( '[contact-form-7 id="' . $afwhp_contact7_form . '" title="' . $form_title . '" ] ' ); ?>
|
404 |
+
|
405 |
+
</div>
|
406 |
+
|
407 |
+
<?php
|
408 |
+
return;
|
409 |
+
} else {
|
410 |
+
|
411 |
+
echo '<a href="javascript:void(0)" rel="nofollow" class="button add_to_cart_button product_type_' . esc_attr( $product->get_type() ) . '">' . esc_attr( $afwhp_custom_button_text ) . '</a>';
|
412 |
+
|
413 |
+
return;
|
414 |
+
}
|
415 |
+
|
416 |
+
}
|
417 |
+
}
|
418 |
+
|
419 |
+
}
|
420 |
+
|
421 |
+
}
|
422 |
+
}
|
423 |
+
|
424 |
+
}
|
425 |
+
}
|
426 |
+
|
427 |
+
}
|
428 |
+
}
|
429 |
+
}
|
integrations/improved-variable-product-attributes.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
*
|
5 |
* @name Improved Product Options for WooCommerce
|
6 |
*
|
7 |
-
* @version 4.9.
|
8 |
*
|
9 |
* @slug improved-variable-product-attributes
|
10 |
*
|
@@ -34,12 +34,14 @@ if ( ! function_exists( 'tinv_wishlist_meta_support_ivpa' ) ) {
|
|
34 |
$curr_customizations = XforWC_Improved_Options_Frontend::get_custom();
|
35 |
|
36 |
foreach ( $meta as $k => $v ) {
|
|
|
37 |
$prefix = 'ivpac_';
|
38 |
$k_ivpac = ( 0 === strpos( $k, $prefix ) ) ? substr( $k, strlen( $prefix ) ) : $k;
|
39 |
|
40 |
-
$prefix
|
41 |
-
$k_ivpac
|
42 |
-
$
|
|
|
43 |
|
44 |
if ( isset( $curr_customizations['ivpa_attr'][ $k_ivpac ] ) ) {
|
45 |
if ( $curr_customizations['ivpa_attr'][ $k_ivpac ] == 'ivpa_custom' ) {
|
@@ -71,6 +73,11 @@ if ( ! function_exists( 'tinv_wishlist_meta_support_ivpa' ) ) {
|
|
71 |
'display' => $v,
|
72 |
);
|
73 |
}
|
|
|
|
|
|
|
|
|
|
|
74 |
}
|
75 |
}
|
76 |
}
|
@@ -88,7 +95,7 @@ function tinv_add_to_wishlist_ivpa() {
|
|
88 |
wp_add_inline_script( 'tinvwl', "
|
89 |
jQuery(document).ready(function($){
|
90 |
$(document).on('tinvwl_wishlist_button_clicked', function (e, el, data) {
|
91 |
-
if (!ivpa) {
|
92 |
return false;
|
93 |
}
|
94 |
var button = $(el);
|
4 |
*
|
5 |
* @name Improved Product Options for WooCommerce
|
6 |
*
|
7 |
+
* @version 4.9.8
|
8 |
*
|
9 |
* @slug improved-variable-product-attributes
|
10 |
*
|
34 |
$curr_customizations = XforWC_Improved_Options_Frontend::get_custom();
|
35 |
|
36 |
foreach ( $meta as $k => $v ) {
|
37 |
+
|
38 |
$prefix = 'ivpac_';
|
39 |
$k_ivpac = ( 0 === strpos( $k, $prefix ) ) ? substr( $k, strlen( $prefix ) ) : $k;
|
40 |
|
41 |
+
$prefix = 'attribute_';
|
42 |
+
$k_ivpac = ( 0 === strpos( $k, $prefix ) ) ? substr( $k, strlen( $prefix ) ) : $k_ivpac;
|
43 |
+
$local_attribute = ( 0 === strpos( $k, $prefix ) ) ? true : false;
|
44 |
+
$v = is_array( $v['display'] ) ? implode( ', ', $v['display'] ) : $v['display'];
|
45 |
|
46 |
if ( isset( $curr_customizations['ivpa_attr'][ $k_ivpac ] ) ) {
|
47 |
if ( $curr_customizations['ivpa_attr'][ $k_ivpac ] == 'ivpa_custom' ) {
|
73 |
'display' => $v,
|
74 |
);
|
75 |
}
|
76 |
+
} elseif ( wc_attribute_label( $k_ivpac ) && $local_attribute ) {
|
77 |
+
$meta[ $k ] = array(
|
78 |
+
'key' => wc_attribute_label( $k_ivpac ),
|
79 |
+
'display' => $v,
|
80 |
+
);
|
81 |
}
|
82 |
}
|
83 |
}
|
95 |
wp_add_inline_script( 'tinvwl', "
|
96 |
jQuery(document).ready(function($){
|
97 |
$(document).on('tinvwl_wishlist_button_clicked', function (e, el, data) {
|
98 |
+
if (typeof ivpa === 'undefined' || !ivpa) {
|
99 |
return false;
|
100 |
}
|
101 |
var button = $(el);
|
integrations/product-extras-for-woocommerce.php
ADDED
@@ -0,0 +1,319 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* TI WooCommerce Wishlist integration with:
|
4 |
+
*
|
5 |
+
* @name WooCommerce Product Add-Ons Ultimate
|
6 |
+
*
|
7 |
+
* @version 3.6.3
|
8 |
+
*
|
9 |
+
* @slug product-extras-for-woocommerce
|
10 |
+
*
|
11 |
+
* @url https://pluginrepublic.com/wordpress-plugins/woocommerce-product-add-ons-ultimate/
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
|
15 |
+
// If this file is called directly, abort.
|
16 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
17 |
+
die;
|
18 |
+
}
|
19 |
+
|
20 |
+
if ( ! function_exists( 'tinv_wishlist_item_meta_pewc' ) ) {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Set description for meta WooCommerce Product Add-Ons Ultimate
|
24 |
+
*
|
25 |
+
* @param array $meta Meta array.
|
26 |
+
* @param array $wl_product Wishlist Product.
|
27 |
+
* @param \WC_Product $product Woocommerce Product.
|
28 |
+
*
|
29 |
+
* @return array
|
30 |
+
*/
|
31 |
+
|
32 |
+
function tinv_wishlist_item_meta_pewc( $item_data, $product_id, $variation_id ) {
|
33 |
+
|
34 |
+
if ( defined( 'PEWC_FILE' ) ) {
|
35 |
+
// Check for product_extra groups
|
36 |
+
$product_extra_groups = pewc_get_extra_fields( $product_id );
|
37 |
+
$hidden_group_types = apply_filters( 'pewc_hidden_field_types_in_cart', array() );
|
38 |
+
if ( $product_extra_groups ) {
|
39 |
+
|
40 |
+
foreach ( $product_extra_groups as $group ) {
|
41 |
+
|
42 |
+
if ( isset( $group['items'] ) ) {
|
43 |
+
|
44 |
+
foreach ( $group['items'] as $item ) {
|
45 |
+
|
46 |
+
|
47 |
+
if ( in_array( $item['field_type'], $hidden_group_types ) ) {
|
48 |
+
// Don't add this to the cart if it's a hidden field type
|
49 |
+
continue;
|
50 |
+
}
|
51 |
+
|
52 |
+
// Don't display hidden fields
|
53 |
+
if ( isset( $item['hidden_calculation'] ) ) {
|
54 |
+
continue;
|
55 |
+
}
|
56 |
+
|
57 |
+
// Added in 3.5.3 to allow us to link parent products with children in cart
|
58 |
+
$display_product_meta = apply_filters( 'pewc_display_child_product_meta', false, $item );
|
59 |
+
|
60 |
+
if ( isset( $item['field_type'] ) ) {
|
61 |
+
|
62 |
+
if ( $item['field_type'] == 'products' && ! $display_product_meta ) {
|
63 |
+
continue;
|
64 |
+
}
|
65 |
+
|
66 |
+
$price = '';
|
67 |
+
|
68 |
+
if ( isset( $item['field_flatrate'] ) ) {
|
69 |
+
$price = '<span class="pewc-flat-rate-cart-label">(' . __( 'Flat rate cost', 'ti-woocommerce-wishlist' ) . ')</span>';
|
70 |
+
}
|
71 |
+
|
72 |
+
$price = apply_filters( 'pewc_filter_cart_item_price', $price, $item );
|
73 |
+
|
74 |
+
$item['label'] = isset( $item['field_label'] ) ? sanitize_text_field( $item['field_label'] ) : '';
|
75 |
+
|
76 |
+
$value = ( isset( $item_data[ $item['id'] ] ) && isset( $item_data[ $item['id'] ]['display'] ) ) ? $item_data[ $item['id'] ]['display'] : '';
|
77 |
+
|
78 |
+
if ( $item['field_type'] == 'textarea' ) {
|
79 |
+
$value = sanitize_textarea_field( stripslashes( $value ) );
|
80 |
+
} else if ( in_array( $item['field_type'], array(
|
81 |
+
'image_swatch',
|
82 |
+
'radio',
|
83 |
+
'upload'
|
84 |
+
) ) ) {
|
85 |
+
$value = wp_kses_post( stripslashes( $value[0] ) );
|
86 |
+
} else {
|
87 |
+
$value = sanitize_text_field( stripslashes( $value ) );
|
88 |
+
}
|
89 |
+
|
90 |
+
$item['value'] = $value;
|
91 |
+
|
92 |
+
if ( $item['field_type'] == 'upload' || $item['field_type'] == 'information' ) {
|
93 |
+
continue;
|
94 |
+
}
|
95 |
+
|
96 |
+
if ( $item['field_type'] == 'checkbox' ) {
|
97 |
+
$item_data[] = array(
|
98 |
+
'key' => sanitize_text_field( $item['label'] ),
|
99 |
+
'display' => '<span class="pewc-price pewc-cart-item-price">' . sanitize_text_field( $price ) . '</span>',
|
100 |
+
);
|
101 |
+
} else if ( $item['field_type'] == 'checkbox_group' ) {
|
102 |
+
$item_data[] = array(
|
103 |
+
'key' => sanitize_text_field( $item['label'] ),
|
104 |
+
'display' => str_replace( ' | ', '<br>', $item['value'] ),
|
105 |
+
);
|
106 |
+
} else if ( $item['field_type'] == 'name_price' ) {
|
107 |
+
$value = wc_price( $item['value'] );
|
108 |
+
$item_data[] = array(
|
109 |
+
'key' => sanitize_text_field( $item['label'] ),
|
110 |
+
'display' => sanitize_text_field( $value ),
|
111 |
+
);
|
112 |
+
} else {
|
113 |
+
$item_data[] = array(
|
114 |
+
'key' => sanitize_text_field( $item['label'] ),
|
115 |
+
'display' => sanitize_text_field( $item['value'] ),
|
116 |
+
);
|
117 |
+
}
|
118 |
+
}
|
119 |
+
}
|
120 |
+
}
|
121 |
+
}
|
122 |
+
}
|
123 |
+
}
|
124 |
+
|
125 |
+
foreach ( array_keys( $item_data ) as $key ) {
|
126 |
+
if ( strpos( $key, 'pewc' ) === 0 ) {
|
127 |
+
unset( $item_data[ $key ] );
|
128 |
+
}
|
129 |
+
}
|
130 |
+
|
131 |
+
return $item_data;
|
132 |
+
}
|
133 |
+
|
134 |
+
add_filter( 'tinvwl_wishlist_item_meta_post', 'tinv_wishlist_item_meta_pewc', 10, 3 );
|
135 |
+
}
|
136 |
+
|
137 |
+
if ( ! function_exists( 'tinvwl_item_price_pewc' ) ) {
|
138 |
+
|
139 |
+
/**
|
140 |
+
* Modify price for WooCommerce Product Add-Ons Ultimate
|
141 |
+
*
|
142 |
+
* @param string $price Returned price.
|
143 |
+
* @param array $wl_product Wishlist Product.
|
144 |
+
* @param \WC_Product $product Woocommerce Product.
|
145 |
+
*
|
146 |
+
* @return string
|
147 |
+
*/
|
148 |
+
function tinvwl_item_price_pewc( $price, $wl_product, $product ) {
|
149 |
+
|
150 |
+
if ( defined( 'PEWC_FILE' ) ) {
|
151 |
+
|
152 |
+
$product_price = $product->get_price();
|
153 |
+
$product_id = $product->get_id();
|
154 |
+
$extra_price = 0;
|
155 |
+
|
156 |
+
$product_extra_groups = pewc_get_extra_fields( $product_id );
|
157 |
+
|
158 |
+
if ( $product_extra_groups ) {
|
159 |
+
|
160 |
+
foreach ( $product_extra_groups as $group ) {
|
161 |
+
|
162 |
+
if ( isset( $group['items'] ) ) {
|
163 |
+
|
164 |
+
foreach ( $group['items'] as $item ) {
|
165 |
+
|
166 |
+
$show_option_prices_in_cart = pewc_show_option_prices_in_cart( $item );
|
167 |
+
|
168 |
+
|
169 |
+
$group_id = $item['group_id'];
|
170 |
+
$field_id = $item['field_id'];
|
171 |
+
$field_type = $item['field_type'];
|
172 |
+
|
173 |
+
if ( isset( $item['field_type'] ) && $item['field_type'] != 'upload' && $item['field_type'] != 'products' ) {
|
174 |
+
|
175 |
+
$id = $item['id'];
|
176 |
+
$price = 0;
|
177 |
+
$value = isset( $wl_product['meta'][ $id ] ) ? $wl_product['meta'][ $id ] : '';
|
178 |
+
|
179 |
+
|
180 |
+
// If an extra is flat rate, it's not charged per product
|
181 |
+
// It's a one-off fee that's added separately in the cart
|
182 |
+
$is_flat_rate = isset( $item['field_flatrate'] ) ? true : false;
|
183 |
+
|
184 |
+
$is_percentage = ! empty( $item['field_percentage'] ) ? true : false;
|
185 |
+
|
186 |
+
// Only add item if it's visible
|
187 |
+
if ( ! empty( $wl_product['meta'][ $id ] ) ) {
|
188 |
+
|
189 |
+
$field_price = pewc_get_field_price( $item, $product );
|
190 |
+
|
191 |
+
// Add the value of the field (not including the value of options)
|
192 |
+
if ( ! $is_flat_rate ) {
|
193 |
+
$price = floatval( $field_price );
|
194 |
+
}
|
195 |
+
|
196 |
+
// Check for Name Your Price
|
197 |
+
if ( $field_type == 'name_price' ) {
|
198 |
+
if ( ! $is_flat_rate ) {
|
199 |
+
$price = $value;
|
200 |
+
}
|
201 |
+
}
|
202 |
+
|
203 |
+
// Check for Calculation fields
|
204 |
+
if ( $field_type == 'calculation' ) {
|
205 |
+
|
206 |
+
if ( isset( $item['formula_action'] ) && $item['formula_action'] == 'cost' ) {
|
207 |
+
|
208 |
+
if ( ! $is_flat_rate ) {
|
209 |
+
$price = $value;
|
210 |
+
}
|
211 |
+
|
212 |
+
}
|
213 |
+
|
214 |
+
}
|
215 |
+
|
216 |
+
// Calculate price for per character fields
|
217 |
+
if ( ! empty( $item['per_character'] ) && ( $field_type == 'text' || $field_type == 'textarea' ) ) {
|
218 |
+
$remove_line_breaks = preg_replace( "/\r|\n/", "", $value );
|
219 |
+
$str_length = mb_strlen( str_replace( ' ', '', $remove_line_breaks ) );
|
220 |
+
if ( ! empty( $item['field_freechars'] ) ) {
|
221 |
+
$str_length -= absint( $item['field_freechars'] );
|
222 |
+
$str_length = max( 0, $str_length );
|
223 |
+
}
|
224 |
+
if ( ! $is_flat_rate ) {
|
225 |
+
$price = $str_length * $price;
|
226 |
+
}
|
227 |
+
}
|
228 |
+
|
229 |
+
// Calculate price for multiply fields
|
230 |
+
if ( ! empty( $item['multiply'] ) && ( $field_type == 'number' || $field_type == 'name_price' ) ) {
|
231 |
+
if ( ! $is_flat_rate ) {
|
232 |
+
$price = $value * $price;
|
233 |
+
}
|
234 |
+
}
|
235 |
+
|
236 |
+
// Calculate price for percentage fields
|
237 |
+
if ( $is_percentage && $field_type != 'calculation' ) {
|
238 |
+
if ( ! $is_flat_rate ) {
|
239 |
+
$price = pewc_calculate_percentage_price( $field_price, $product );
|
240 |
+
// $price = $value * $price;
|
241 |
+
}
|
242 |
+
}
|
243 |
+
|
244 |
+
// Filtered by Bookings to include per unit cost for extras
|
245 |
+
$price = apply_filters( 'pewc_filter_cart_item_data_price', $price, array(), $item, $group_id, $field_id );
|
246 |
+
|
247 |
+
// Find any additional cost for options and select fields
|
248 |
+
if ( ! empty( $item['field_options'] ) ) {
|
249 |
+
|
250 |
+
// Record checkbox group values differently
|
251 |
+
$checkbox_group_values = array();
|
252 |
+
// Radio buttons are arrays, select are simple values
|
253 |
+
if ( $field_type == 'radio' || ( $field_type == 'image_swatch' && empty( $item['allow_multiple'] ) ) ) {
|
254 |
+
$option_value = $value[0];
|
255 |
+
} else {
|
256 |
+
$option_value = $value;
|
257 |
+
}
|
258 |
+
|
259 |
+
|
260 |
+
foreach ( $item['field_options'] as $option ) {
|
261 |
+
|
262 |
+
// If it's a checkbox group, we need to total all selected options
|
263 |
+
if ( $field_type == 'checkbox_group' || ( $field_type == 'image_swatch' && ! empty( $item['allow_multiple'] ) ) ) {
|
264 |
+
|
265 |
+
if ( ! empty( $option['price'] ) && in_array( $option['value'], $option_value ) ) {
|
266 |
+
$option_price = $option['price'];
|
267 |
+
if ( $is_percentage ) {
|
268 |
+
$option_price = pewc_calculate_percentage_price( $option_price, $product );
|
269 |
+
}
|
270 |
+
|
271 |
+
if ( ! $is_flat_rate ) {
|
272 |
+
$price += floatval( $option_price );
|
273 |
+
$option_price = pewc_maybe_include_tax( $product, $option_price );
|
274 |
+
$checkbox_group_values[] = $show_option_prices_in_cart === true ? $option['value'] . ' (' . wc_price( $option_price ) . ')' : $option['value'];
|
275 |
+
}
|
276 |
+
}
|
277 |
+
|
278 |
+
} else if ( ! empty( $option['price'] ) && $option['value'] == $option_value ) {
|
279 |
+
$option_price = $option['price'];
|
280 |
+
if ( $is_percentage ) {
|
281 |
+
$option_price = pewc_calculate_percentage_price( $option_price, $product );
|
282 |
+
}
|
283 |
+
|
284 |
+
if ( ! $is_flat_rate ) {
|
285 |
+
$price += floatval( $option_price );
|
286 |
+
break;
|
287 |
+
}
|
288 |
+
}
|
289 |
+
|
290 |
+
}
|
291 |
+
|
292 |
+
|
293 |
+
}
|
294 |
+
|
295 |
+
// Filter the price of the product extra
|
296 |
+
$price = apply_filters( 'pewc_add_cart_item_data_price', $price, $item, $product_id );
|
297 |
+
|
298 |
+
$extra_price += floatval( $price );
|
299 |
+
}
|
300 |
+
}
|
301 |
+
}
|
302 |
+
|
303 |
+
// Ensure price can't be less than 0
|
304 |
+
$new_price = floatval( $product_price ) + floatval( $extra_price );
|
305 |
+
if ( $new_price < 0 ) {
|
306 |
+
$new_price = 0;
|
307 |
+
}
|
308 |
+
|
309 |
+
return wc_price( $new_price );
|
310 |
+
}
|
311 |
+
}
|
312 |
+
}
|
313 |
+
}
|
314 |
+
|
315 |
+
return $price;
|
316 |
+
}
|
317 |
+
|
318 |
+
add_filter( 'tinvwl_wishlist_item_price', 'tinvwl_item_price_pewc', 10, 3 );
|
319 |
+
} // End if().
|
integrations/uni-woo-custom-product-options.php
ADDED
@@ -0,0 +1,186 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* TI WooCommerce Wishlist integration with:
|
4 |
+
*
|
5 |
+
* @name Product Options and Price Calculation Formulas for WooCommerce – Uni CPO
|
6 |
+
*
|
7 |
+
* @version 4.7.4
|
8 |
+
*
|
9 |
+
* @slug uni-woo-custom-product-options
|
10 |
+
*
|
11 |
+
* @url https://wordpress.org/plugins/uni-woo-custom-product-options/
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
|
15 |
+
// If this file is called directly, abort.
|
16 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
17 |
+
die;
|
18 |
+
}
|
19 |
+
|
20 |
+
if ( ! function_exists( 'tinv_wishlist_item_meta_uni_woo_custom_product_options' ) ) {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Set description for meta Product Options and Price Calculation Formulas for WooCommerce – Uni CPO
|
24 |
+
*
|
25 |
+
* @param array $meta Meta array.
|
26 |
+
* @param array $wl_product Wishlist Product.
|
27 |
+
* @param \WC_Product $product Woocommerce Product.
|
28 |
+
*
|
29 |
+
* @return array
|
30 |
+
*/
|
31 |
+
|
32 |
+
function tinv_wishlist_item_meta_uni_woo_custom_product_options( $item_data, $product_id, $variation_id ) {
|
33 |
+
if ( class_exists( 'Uni_Cpo' ) ) {
|
34 |
+
foreach ( array_keys( $item_data ) as $key ) {
|
35 |
+
if ( strpos( $key, 'cpo_' ) === 0 ) {
|
36 |
+
unset( $item_data[ $key ] );
|
37 |
+
}
|
38 |
+
}
|
39 |
+
|
40 |
+
if ( ! empty( $item_data ) ) {
|
41 |
+
|
42 |
+
$form_data = $item_data;
|
43 |
+
|
44 |
+
$filtered_form_data = array_filter( $form_data, function ( $k ) use ( $form_data ) {
|
45 |
+
return false !== strpos( $k, UniCpo()->get_var_slug() ) && ! empty( $form_data[ $k ] );
|
46 |
+
}, ARRAY_FILTER_USE_KEY );
|
47 |
+
|
48 |
+
if ( ! empty( $filtered_form_data ) ) {
|
49 |
+
$posts = uni_cpo_get_posts_by_slugs( array_keys( $filtered_form_data ) );
|
50 |
+
|
51 |
+
if ( ! empty( $posts ) ) {
|
52 |
+
$posts_ids = wp_list_pluck( $posts, 'ID' );
|
53 |
+
foreach ( $posts_ids as $post_id ) {
|
54 |
+
$option = uni_cpo_get_option( $post_id );
|
55 |
+
if ( is_object( $option ) ) {
|
56 |
+
$item_data[ $option->get_slug() ]['key'] = uni_cpo_sanitize_label( $option->cpo_order_label() );
|
57 |
+
}
|
58 |
+
}
|
59 |
+
}
|
60 |
+
|
61 |
+
}
|
62 |
+
|
63 |
+
}
|
64 |
+
|
65 |
+
}
|
66 |
+
|
67 |
+
return $item_data;
|
68 |
+
}
|
69 |
+
|
70 |
+
add_filter( 'tinvwl_wishlist_item_meta_post', 'tinv_wishlist_item_meta_uni_woo_custom_product_options', 10, 3 );
|
71 |
+
}
|
72 |
+
|
73 |
+
if ( ! function_exists( 'tinvwl_item_price_uni_woo_custom_product_options' ) ) {
|
74 |
+
|
75 |
+
/**
|
76 |
+
* Modify price for Product Options and Price Calculation Formulas for WooCommerce – Uni CPO.
|
77 |
+
*
|
78 |
+
* @param string $price Returned price.
|
79 |
+
* @param array $wl_product Wishlist Product.
|
80 |
+
* @param \WC_Product $product Woocommerce Product.
|
81 |
+
*
|
82 |
+
* @return string
|
83 |
+
*/
|
84 |
+
function tinvwl_item_price_uni_woo_custom_product_options( $price, $wl_product, $product ) {
|
85 |
+
|
86 |
+
if ( class_exists( 'Uni_Cpo' ) ) {
|
87 |
+
$product_data = Uni_Cpo_Product::get_product_data_by_id( $product->get_id() );
|
88 |
+
$form_data = $wl_product['meta'];
|
89 |
+
$options_eval_result = array();
|
90 |
+
$variables = array();
|
91 |
+
$is_calc_disabled = false;
|
92 |
+
$formatted_vars = array();
|
93 |
+
|
94 |
+
$main_formula = $product_data['formula_data']['main_formula'];
|
95 |
+
$filtered_form_data = array_filter( $form_data, function ( $k ) use ( $form_data ) {
|
96 |
+
return false !== strpos( $k, UniCpo()->get_var_slug() ) && ! empty( $form_data[ $k ] );
|
97 |
+
}, ARRAY_FILTER_USE_KEY );
|
98 |
+
|
99 |
+
|
100 |
+
if ( ! empty( $filtered_form_data ) ) {
|
101 |
+
$posts = uni_cpo_get_posts_by_slugs( array_keys( $filtered_form_data ) );
|
102 |
+
|
103 |
+
if ( ! empty( $posts ) ) {
|
104 |
+
$posts_ids = wp_list_pluck( $posts, 'ID' );
|
105 |
+
foreach ( $posts_ids as $post_id ) {
|
106 |
+
$option = uni_cpo_get_option( $post_id );
|
107 |
+
|
108 |
+
if ( is_object( $option ) ) {
|
109 |
+
$calculate_result = $option->calculate( $filtered_form_data );
|
110 |
+
if ( ! empty( $calculate_result ) ) {
|
111 |
+
$options_eval_result[ $option->get_slug() ] = $calculate_result;
|
112 |
+
}
|
113 |
+
}
|
114 |
+
|
115 |
+
}
|
116 |
+
}
|
117 |
+
|
118 |
+
}
|
119 |
+
|
120 |
+
array_walk( $options_eval_result, function ( $v ) use ( &$variables, &$formatted_vars ) {
|
121 |
+
foreach ( $v as $slug => $value ) {
|
122 |
+
// prepare $variables for calculation purpose
|
123 |
+
$variables[ '{' . $slug . '}' ] = $value['calc'];
|
124 |
+
// prepare $formatted_vars for conditional logic purpose
|
125 |
+
$formatted_vars[ $slug ] = $value['cart_meta'];
|
126 |
+
}
|
127 |
+
} );
|
128 |
+
$variables['{uni_cpo_price}'] = $product->get_price( 'edit' );
|
129 |
+
// non option variables
|
130 |
+
if ( 'on' === $product_data['nov_data']['nov_enable'] && ! empty( $product_data['nov_data']['nov'] ) ) {
|
131 |
+
$variables = uni_cpo_process_formula_with_non_option_vars( $variables, $product_data, $formatted_vars );
|
132 |
+
}
|
133 |
+
// formula conditional logic
|
134 |
+
|
135 |
+
if ( 'on' === $product_data['formula_data']['rules_enable'] && ! empty( $product_data['formula_data']['formula_scheme'] ) && is_array( $product_data['formula_data']['formula_scheme'] ) ) {
|
136 |
+
$conditional_formula = uni_cpo_process_formula_scheme( $formatted_vars, $product_data );
|
137 |
+
if ( $conditional_formula ) {
|
138 |
+
$main_formula = $conditional_formula;
|
139 |
+
}
|
140 |
+
}
|
141 |
+
|
142 |
+
if ( 'disable' === $main_formula ) {
|
143 |
+
$is_calc_disabled = true;
|
144 |
+
}
|
145 |
+
//
|
146 |
+
|
147 |
+
if ( ! $is_calc_disabled ) {
|
148 |
+
$main_formula = uni_cpo_process_formula_with_vars( $main_formula, $variables );
|
149 |
+
// calculates formula
|
150 |
+
$price_calculated = uni_cpo_calculate_formula( $main_formula );
|
151 |
+
$price_min = $product_data['settings_data']['min_price'];
|
152 |
+
$price_max = $product_data['settings_data']['max_price'];
|
153 |
+
// check for min price
|
154 |
+
if ( $price_calculated < $price_min ) {
|
155 |
+
$price_calculated = $price_min;
|
156 |
+
}
|
157 |
+
// check for max price
|
158 |
+
if ( ! empty( $price_max ) && $price_calculated >= $price_max ) {
|
159 |
+
$is_calc_disabled = true;
|
160 |
+
}
|
161 |
+
|
162 |
+
if ( true !== $is_calc_disabled ) {
|
163 |
+
// filter, so 3rd party scripts can hook up
|
164 |
+
$price_calculated = apply_filters(
|
165 |
+
'uni_cpo_in_cart_calculated_price',
|
166 |
+
$price_calculated,
|
167 |
+
$product,
|
168 |
+
$filtered_form_data
|
169 |
+
);
|
170 |
+
|
171 |
+
return wc_price( $price_calculated );
|
172 |
+
} else {
|
173 |
+
return wc_price( $price_max );
|
174 |
+
}
|
175 |
+
|
176 |
+
} else {
|
177 |
+
return wc_price( 0 );
|
178 |
+
}
|
179 |
+
|
180 |
+
}
|
181 |
+
|
182 |
+
return $price;
|
183 |
+
}
|
184 |
+
|
185 |
+
add_filter( 'tinvwl_wishlist_item_price', 'tinvwl_item_price_uni_woo_custom_product_options', 10, 3 );
|
186 |
+
} // End if().
|
integrations/woocommerce-composite-products.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
*
|
5 |
* @name WooCommerce Composite Products
|
6 |
*
|
7 |
-
* @version
|
8 |
*
|
9 |
* @slug woocommerce-composite-products
|
10 |
*
|
@@ -77,10 +77,17 @@ if ( ! function_exists( 'tinvwl_row_woocommerce_composite_products' ) ) {
|
|
77 |
$composited_product,
|
78 |
'get_name'
|
79 |
) ) ? $composited_product->get_name() : $composited_product->get_title();
|
80 |
-
$product_price = $composited_product->
|
81 |
|
82 |
$component_option = $product->get_component_option( $component_id, $composited_product_id );
|
83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
if ( $component_option ) {
|
85 |
if ( false === $component_option->is_priced_individually() && $composited_product->get_price() == 0 ) {
|
86 |
$product_price = '';
|
@@ -220,11 +227,9 @@ if ( ! function_exists( 'tinvwl_item_price_woocommerce_composite_products' ) ) {
|
|
220 |
}
|
221 |
}
|
222 |
}
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
$price = wc_format_sale_price( $regular_price, $_price ) . $product->get_price_suffix();
|
227 |
-
}
|
228 |
}
|
229 |
|
230 |
return $price;
|
4 |
*
|
5 |
* @name WooCommerce Composite Products
|
6 |
*
|
7 |
+
* @version 6.2.1
|
8 |
*
|
9 |
* @slug woocommerce-composite-products
|
10 |
*
|
77 |
$composited_product,
|
78 |
'get_name'
|
79 |
) ) ? $composited_product->get_name() : $composited_product->get_title();
|
80 |
+
$product_price = $composited_product->get_price();
|
81 |
|
82 |
$component_option = $product->get_component_option( $component_id, $composited_product_id );
|
83 |
|
84 |
+
$discount = $component_option->get_discount();
|
85 |
+
|
86 |
+
if ( $discount ) {
|
87 |
+
$product_price = $product_price * ( 100 - $discount ) / 100;
|
88 |
+
}
|
89 |
+
$product_price = wc_price( $product_price );
|
90 |
+
|
91 |
if ( $component_option ) {
|
92 |
if ( false === $component_option->is_priced_individually() && $composited_product->get_price() == 0 ) {
|
93 |
$product_price = '';
|
227 |
}
|
228 |
}
|
229 |
}
|
230 |
+
|
231 |
+
$price = wc_price( $_price ) . $product->get_price_suffix();
|
232 |
+
|
|
|
|
|
233 |
}
|
234 |
|
235 |
return $price;
|
integrations/woocommerce-rental-and-booking.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
*
|
5 |
* @name WooCommerce Rental & Bookings System
|
6 |
*
|
7 |
-
* @version
|
8 |
*
|
9 |
* @slug woocommerce-rental-and-booking
|
10 |
*
|
@@ -63,7 +63,7 @@ if ( ! function_exists( 'tinv_wishlist_metasupport_woocommerce_rental_and_bookin
|
|
63 |
$options_data = array();
|
64 |
$options_data['quote_id'] = '';
|
65 |
|
66 |
-
$get_labels =
|
67 |
'pickup_location',
|
68 |
'return_location',
|
69 |
'pickup_date',
|
@@ -74,13 +74,13 @@ if ( ! function_exists( 'tinv_wishlist_metasupport_woocommerce_rental_and_bookin
|
|
74 |
'deposites'
|
75 |
) );
|
76 |
$labels = $get_labels['labels'];
|
77 |
-
$get_displays =
|
78 |
$displays = $get_displays['display'];
|
79 |
|
80 |
-
$get_conditions =
|
81 |
$conditional_data = $get_conditions['conditions'];
|
82 |
|
83 |
-
$get_general =
|
84 |
$general_data = $get_general['general'];
|
85 |
|
86 |
if ( isset( $meta['quote_id'] ) ) {
|
4 |
*
|
5 |
* @name WooCommerce Rental & Bookings System
|
6 |
*
|
7 |
+
* @version 9.0.5
|
8 |
*
|
9 |
* @slug woocommerce-rental-and-booking
|
10 |
*
|
63 |
$options_data = array();
|
64 |
$options_data['quote_id'] = '';
|
65 |
|
66 |
+
$get_labels = redq_rental_get_settings( $product_id, 'labels', array(
|
67 |
'pickup_location',
|
68 |
'return_location',
|
69 |
'pickup_date',
|
74 |
'deposites'
|
75 |
) );
|
76 |
$labels = $get_labels['labels'];
|
77 |
+
$get_displays = redq_rental_get_settings( $product_id, 'display' );
|
78 |
$displays = $get_displays['display'];
|
79 |
|
80 |
+
$get_conditions = redq_rental_get_settings( $product_id, 'conditions' );
|
81 |
$conditional_data = $get_conditions['conditions'];
|
82 |
|
83 |
+
$get_general = redq_rental_get_settings( $product_id, 'general' );
|
84 |
$general_data = $get_general['general'];
|
85 |
|
86 |
if ( isset( $meta['quote_id'] ) ) {
|
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"
|
@@ -1032,6 +1032,10 @@ msgstr ""
|
|
1032 |
msgid "Added To Wishlist"
|
1033 |
msgstr ""
|
1034 |
|
|
|
|
|
|
|
|
|
1035 |
#: integrations/wp-grid-builder.php:72
|
1036 |
msgid "Wishlist Button"
|
1037 |
msgstr ""
|
1 |
+
# Copyright (C) 2020 TI WooCommerce Wishlist Plugin - 1.19.0
|
2 |
+
# This file is distributed under the same license as the TI WooCommerce Wishlist Plugin - 1.19.0 package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: TI WooCommerce Wishlist Plugin - 1.19.0\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
1032 |
msgid "Added To Wishlist"
|
1033 |
msgstr ""
|
1034 |
|
1035 |
+
#: integrations/product-extras-for-woocommerce.php:69
|
1036 |
+
msgid "Flat rate cost"
|
1037 |
+
msgstr ""
|
1038 |
+
|
1039 |
#: integrations/wp-grid-builder.php:72
|
1040 |
msgid "Wishlist Button"
|
1041 |
msgstr ""
|
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,20 @@ Yes, you can! Join in on our [GitHub repository](https://github.com/TemplateInva
|
|
163 |
|
164 |
|
165 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
166 |
= 1.18.4 =
|
167 |
*Release Date - 22 April 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.19.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.19.0 =
|
167 |
+
*Release Date - 24 April 2020*
|
168 |
+
|
169 |
+
* Added integration with [Product Options and Price Calculation Formulas for WooCommerce – Uni CPO](https://wordpress.org/plugins/uni-woo-custom-product-options/) plugin
|
170 |
+
* Added integration with [Hide Price and Add to Cart Button](https://woocommerce.com/products/hide-price-add-to-cart-button/?aff=3955) plugin
|
171 |
+
* Added integration with [Advanced Product Fields (Product Options) for WooCommerce](https://wordpress.org/plugins/advanced-product-fields-for-woocommerce/) plugin
|
172 |
+
* Added integration with WooCommerce Product Add-Ons Ultimate plugin
|
173 |
+
* Added compatibility for wishlist products counter in Woostify theme
|
174 |
+
* Fixed integration with WooCommerce Rental & Bookings System plugin
|
175 |
+
* Fixed integration with Improved Product Options for WooCommerce plugin
|
176 |
+
* Improved integration with [WooCommerce Composite Products](https://woocommerce.com/products/composite-products/?aff=3955) plugin
|
177 |
+
* Fixed multiple REST API queries for dynamic buttons
|
178 |
+
* Fixed wishlist product counter "hide zero value" issue
|
179 |
+
|
180 |
= 1.18.4 =
|
181 |
*Release Date - 22 April 2020*
|
182 |
|
ti-woocommerce-wishlist.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Plugin Name: TI WooCommerce Wishlist Plugin
|
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
|
@@ -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 Plugin
|
5 |
* Plugin URI: https://wordpress.org/plugins/ti-woocommerce-wishlist/
|
6 |
* Description: Wishlist functionality for your WooCommerce store.
|
7 |
+
* Version: 1.19.0
|
8 |
* Requires at least: 4.7
|
9 |
* Tested up to: 5.4
|
10 |
* WC requires at least: 2.6
|
41 |
}
|
42 |
|
43 |
if ( ! defined( 'TINVWL_FVERSION' ) ) {
|
44 |
+
define( 'TINVWL_FVERSION', '1.19.0' );
|
45 |
}
|
46 |
|
47 |
if ( ! defined( 'TINVWL_LOAD_FREE' ) ) {
|