WPC Smart Wishlist for WooCommerce - Version 4.0.0

Version Description

  • Updated: New message interface
  • Updated: Optimized the code
Download this release

Release Info

Developer wpclever
Plugin Icon 128x128 WPC Smart Wishlist for WooCommerce
Version 4.0.0
Comparing to
See all releases

Code changes from version 3.0.6 to 4.0.0

assets/css/frontend.css CHANGED
@@ -272,21 +272,6 @@ body.rtl .woosw-popup .woosw-popup-inner .woosw-popup-content .woosw-popup-conte
272
  text-align: center;
273
  }
274
 
275
- .woosw-popup .woosw-popup-inner .woosw-popup-content .woosw-popup-content-mid .woosw-popup-content-mid-message {
276
- display: block;
277
- padding: 20px 40px 40px 40px;
278
- font-size: 20px;
279
- text-align: center;
280
- }
281
-
282
- .woosw-popup .woosw-popup-inner .woosw-popup-content .woosw-popup-content-mid .woosw-popup-content-mid-message img {
283
- display: block;
284
- width: 60%;
285
- height: auto;
286
- margin: 0 auto;
287
- opacity: .6;
288
- }
289
-
290
  .woosw-popup .woosw-popup-inner .woosw-popup-content .woosw-popup-content-mid table.woosw-items {
291
  margin: 0;
292
  padding: 0;
@@ -432,39 +417,6 @@ body.rtl .woosw-popup .woosw-popup-inner .woosw-popup-content .woosw-popup-conte
432
  top: 0;
433
  }
434
 
435
- .woosw-popup.woosw-message .woosw-popup-inner .woosw-popup-content {
436
- max-width: 320px;
437
- background-color: #ffffff;
438
- }
439
-
440
- .woosw-popup.woosw-message .woosw-popup-inner .woosw-popup-content .woosw-popup-content-top {
441
- color: #222;
442
- background-color: transparent;
443
- }
444
-
445
- .woosw-popup.woosw-message .woosw-popup-inner .woosw-popup-content .woosw-popup-content-top .woosw-popup-close:after {
446
- color: #222;
447
- }
448
-
449
- .woosw-popup.woosw-message .woosw-popup-inner .woosw-popup-content .woosw-popup-content-bot {
450
- display: none;
451
- }
452
-
453
- .woosw-popup.woosw-message .woosw-popup-content-mid-message {
454
- display: block;
455
- padding: 20px 40px 40px 40px;
456
- font-size: 20px;
457
- text-align: center;
458
- }
459
-
460
- .woosw-popup.woosw-message .woosw-popup-content-mid-message img {
461
- display: block;
462
- width: 60%;
463
- height: auto;
464
- margin: 0 auto;
465
- opacity: .6;
466
- }
467
-
468
  .woosw-items .woosw-item .woosw-item--note {
469
  padding-left: 10px;
470
  border-left: 2px solid #222;
@@ -667,4 +619,58 @@ body.rtl .woosw-list .woosw-share .woosw-share-label, body.rtl .woosw-list .woos
667
  flex-direction: column;
668
  align-items: flex-start;
669
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
670
  }
272
  text-align: center;
273
  }
274
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
275
  .woosw-popup .woosw-popup-inner .woosw-popup-content .woosw-popup-content-mid table.woosw-items {
276
  margin: 0;
277
  padding: 0;
417
  top: 0;
418
  }
419
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
420
  .woosw-items .woosw-item .woosw-item--note {
421
  padding-left: 10px;
422
  border-left: 2px solid #222;
619
  flex-direction: column;
620
  align-items: flex-start;
621
  }
622
+ }
623
+
624
+ /* Notiny */
625
+
626
+ .notiny-container {
627
+ z-index: 999999;
628
+ }
629
+
630
+ .notiny-theme-woosw {
631
+ padding: 10px;
632
+ background-color: #ffffff;
633
+ color: #222222;
634
+ margin: 5px 0;
635
+ min-height: 32px;
636
+ max-width: 100vw;
637
+ display: flex;
638
+ align-items: center;
639
+ border: 1px solid #eeeeee;
640
+ box-shadow: 0 4px 4px rgba(0, 0, 0, .03);
641
+ }
642
+
643
+ .notiny-theme-woosw .notiny-img {
644
+ margin: 0;
645
+ padding: 0;
646
+ width: 48px;
647
+ flex: 0 0 48px;
648
+ margin-right: 10px;
649
+ }
650
+
651
+ .notiny-theme-woosw .notiny-img img {
652
+ width: 100%;
653
+ height: auto;
654
+ margin: 0;
655
+ }
656
+
657
+ .notiny-theme-woosw .notiny-text {
658
+ font-size: 14px;
659
+ line-height: 1.4;
660
+ flex-grow: 1;
661
+ }
662
+
663
+ .notiny-container-fluid-top .notiny-theme-woosw, .notiny-container-fluid-bottom .notiny-theme-woosw {
664
+ width: 90%;
665
+ max-width: 300px;
666
+ margin-left: auto;
667
+ margin-right: auto;
668
+ }
669
+
670
+ .notiny-container-fluid-top {
671
+ top: 10px !important;
672
+ }
673
+
674
+ .notiny-container-fluid-bottom {
675
+ bottom: 10px !important;
676
  }
assets/css/notice.css DELETED
@@ -1,54 +0,0 @@
1
- /* Notice */
2
-
3
- .wpclever-notice {
4
- padding: 12px !important;
5
- display: flex;
6
- align-items: center;
7
- }
8
-
9
- .wpclever-notice .wpclever-notice-thumbnail {
10
- text-align: center;
11
- position: relative;
12
- display: block;
13
- margin-right: 10px;
14
- width: 20%;
15
- flex: 0 0 20%;
16
- }
17
-
18
- .wpclever-notice .wpclever-notice-thumbnail a {
19
- display: block;
20
- outline: none;
21
- text-decoration: none;
22
- box-shadow: none;
23
- }
24
-
25
- .wpclever-notice .wpclever-notice-thumbnail img {
26
- width: 100%;
27
- height: auto;
28
- display: inline-block;
29
- }
30
-
31
- .wpclever-notice .wpclever-notice-ul {
32
- margin-bottom: 0;
33
- }
34
-
35
- .wpclever-notice .wpclever-notice-ul li {
36
- display: inline-block;
37
- margin-right: 10px;
38
- margin-bottom: 0;
39
- }
40
-
41
- .wpclever-notice .wpclever-notice-ul li a {
42
- text-decoration: none;
43
- outline: none;
44
- box-shadow: none;
45
- }
46
-
47
- .wpclever-notice .wpclever-notice-text h3 {
48
- margin: 0 0 10px 0;
49
- font-weight: 700;
50
- }
51
-
52
- .wpclever-notice .wpclever-notice-text p {
53
- font-size: 14px;
54
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/images/heart_add.svg DELETED
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg enable-background="new 0 0 511.999 511.999" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
3
- <path d="m139.49 84.829c-11.584 0-22.844 2.643-33.471 7.858-26.787 13.146-45.144 41.241-46.768 71.571-1.23 23.017 4.533 41.91 19.891 65.216 4.312 6.545 19.011 24.124 29.122 34.835 2.991 3.166 7.018 4.765 11.055 4.765 3.744 0 7.495-1.374 10.432-4.148 6.104-5.764 6.379-15.384 0.617-21.488-10.082-10.681-23.045-26.451-25.84-30.692-11.748-17.828-15.791-30.529-14.919-46.866 1.046-19.511 12.745-37.529 29.804-45.903 6.422-3.151 13.175-4.748 20.076-4.748 8.393 0 15.2-6.807 15.2-15.2s-6.806-15.2-15.199-15.2z"/>
4
- <path d="m151.17 268.27h-0.015c-8.393 0-15.192 6.807-15.192 15.2s6.813 15.2 15.208 15.2 15.2-6.807 15.2-15.2c-1e-3 -8.393-6.806-15.2-15.201-15.2z"/>
5
- <path d="m457.6 292.42c10.783-11.759 19.041-21.967 24.621-30.45 15.042-22.887 31.996-55.035 29.54-100.88-1.93-36.061-17.197-69.922-42.993-95.348-26.182-25.807-60.369-40.017-96.26-40.017-52.689 0-95.815 40.323-116.24 63.478-19.841-23.297-62.001-63.478-116.78-63.478-35.89 0-70.075 14.212-96.254 40.017-25.796 25.427-41.065 59.288-42.994 95.35-1.914 35.849 7.202 66.965 29.555 100.89 20.052 30.426 72.272 78.539 110.89 110.5 23.966 19.828 46.567 36.866 65.363 49.271 30.497 20.128 42.835 22.709 50.174 22.709 6.335 0 16.263-1.888 37.596-14.624 18.588 33.609 54.396 56.426 95.444 56.426 60.104 0 109-48.897 109-109-1e-3 -34.249-15.893-64.842-40.675-84.84zm-177.31 85.606c0.012 1.683 0.05 3.361 0.137 5.025 0.03 0.558 0.09 1.111 0.128 1.671 0.094 1.388 0.195 2.774 0.341 4.148 0.058 0.543 0.141 1.082 0.207 1.623 0.17 1.397 0.351 2.789 0.575 4.169 0.082 0.506 0.182 1.008 0.271 1.512 0.249 1.418 0.517 2.829 0.821 4.227 0.037 0.172 0.061 0.342 0.097 0.508-19 11.868-25.69 13.034-26.627 13.143-7.924-0.793-41.186-19.345-97.584-66.172-47.334-39.3-88.916-80.544-103.47-102.62-18.546-28.146-26.127-53.603-24.585-82.539 3.146-58.774 51.996-106.59 108.89-106.59 59.07 0 103.43 65.348 103.85 65.99 2.773 4.175 7.431 6.709 12.444 6.784 5.027 0.065 9.745-2.335 12.64-6.427 0.47-0.664 47.599-66.347 104.07-66.347 56.901 0 105.75 47.816 108.9 106.59 1.567 29.262-5.787 53.95-24.585 82.55-5.323 8.091-14.204 18.783-25.93 31.239-0.877-0.362-1.769-0.681-2.655-1.02-0.632-0.242-1.259-0.497-1.895-0.728-0.755-0.274-1.52-0.518-2.282-0.775-0.983-0.331-1.965-0.667-2.961-0.974-0.471-0.143-0.947-0.266-1.42-0.404-1.274-0.371-2.551-0.734-3.844-1.06-0.26-0.064-0.523-0.117-0.783-0.179-1.484-0.362-2.973-0.704-4.478-1.003-0.158-0.032-0.318-0.055-0.477-0.087-1.584-0.307-3.175-0.59-4.783-0.828-0.211-0.032-0.424-0.05-0.637-0.081-1.538-0.22-3.083-0.419-4.641-0.573-0.532-0.053-1.069-0.078-1.602-0.122-1.239-0.103-2.478-0.216-3.729-0.277-1.807-0.091-3.619-0.138-5.431-0.138-5.635 0-11.171 0.429-16.577 1.259-52.265 8.009-92.425 53.273-92.425 107.74-1e-3 0.258 0.019 0.513 0.02 0.769zm108.98 77.836c-34.763 0-64.307-22.694-74.649-54.036-0.213-0.645-0.423-1.289-0.617-1.936-0.131-0.435-0.251-0.875-0.374-1.313-0.198-0.701-0.4-1.401-0.578-2.107-0.039-0.158-0.071-0.322-0.111-0.482-0.356-1.449-0.663-2.906-0.935-4.372-0.114-0.614-0.231-1.228-0.331-1.847-0.087-0.538-0.16-1.076-0.234-1.614-0.097-0.696-0.188-1.394-0.268-2.096-0.055-0.486-0.105-0.974-0.151-1.462-0.076-0.822-0.138-1.648-0.188-2.476-0.024-0.382-0.053-0.763-0.071-1.146-0.058-1.233-0.094-2.467-0.094-3.712 0-37.923 26.995-69.659 62.779-77 5.112-1.049 10.403-1.601 15.82-1.601 1.532 0 3.061 0.055 4.587 0.144 0.4 0.024 0.795 0.062 1.195 0.093 1.16 0.085 2.318 0.19 3.472 0.327 0.404 0.047 0.807 0.1 1.21 0.155 1.207 0.161 2.409 0.351 3.605 0.568 0.307 0.056 0.617 0.106 0.923 0.166 2.991 0.579 5.945 1.333 8.845 2.253 0.448 0.143 0.889 0.301 1.333 0.453 0.914 0.307 1.821 0.631 2.722 0.973 0.638 0.243 1.274 0.492 1.905 0.752 0.652 0.267 1.297 0.549 1.941 0.834 0.751 0.333 1.503 0.661 2.242 1.015 0.234 0.112 0.464 0.239 0.696 0.353 25.995 12.835 43.925 39.616 43.925 70.516 2e-3 43.338-35.258 78.598-78.599 78.598z"/>
6
- <path d="m434.98 346.45c-6.241-5.61-15.855-5.098-21.466 1.148l-30.972 34.469-19.652-11.792c-7.197-4.32-16.536-1.987-20.854 5.215-4.318 7.197-1.985 16.535 5.215 20.854l30.4 18.24c2.432 1.459 5.133 2.166 7.813 2.166 4.2 0 8.343-1.737 11.313-5.04l39.35-43.793c5.611-6.246 5.097-15.857-1.147-21.467z"/>
7
- </svg>
 
 
 
 
 
 
 
assets/images/heart_duplicate.svg DELETED
@@ -1,6 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg enable-background="new 0 0 512.001 512.001" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
3
- <path d="m115.91 103.56c-9.765 0-19.254 2.227-28.202 6.62-22.854 11.219-37.911 34.253-39.295 60.118-1.027 19.258 3.772 35.033 16.568 54.455 3.382 5.131 10.782 13.893 19.795 23.439 2.826 2.993 6.634 4.503 10.45 4.503 3.539 0 7.085-1.3 9.861-3.921 5.77-5.448 6.03-14.542 0.583-20.313-8.752-9.271-14.692-16.486-16.692-19.521-9.34-14.173-12.555-24.231-11.868-37.109 0.815-15.245 9.946-29.319 23.26-35.854 4.973-2.441 10.202-3.68 15.539-3.68 7.936 0 14.368-6.433 14.368-14.368 1e-3 -7.937-6.431-14.369-14.367-14.369z"/>
4
- <path d="m125.45 253.42h-0.014c-7.936 0-14.361 6.433-14.361 14.368 0 7.936 6.44 14.368 14.376 14.368s14.368-6.433 14.368-14.368c-1e-3 -7.935-6.435-14.368-14.369-14.368z"/>
5
- <path d="m511.84 271.18c-1.292-24.151-11.518-46.828-28.792-63.853-16.685-16.445-38.229-25.856-61.008-26.763 0.182-4.25 0.17-8.542-0.062-12.857-1.604-29.945-14.282-58.064-35.704-79.177-21.755-21.443-50.17-33.253-80.008-33.253-42.534 0-77.473 31.5-94.931 50.86-16.991-19.475-51.228-50.86-95.425-50.86-29.836 0-58.25 11.809-80.005 33.253-21.418 21.114-34.096 49.232-35.7 79.18-1.586 29.731 5.959 55.514 24.465 83.599 16.499 25.036 59.322 64.506 90.978 90.698 19.63 16.242 38.154 30.204 53.567 40.377 25.349 16.729 35.795 18.874 42.062 18.874 5.428 0 13.933-1.569 32.147-12.483 8.201 7.421 16.514 14.584 24.258 20.992 15.4 12.743 29.947 23.705 42.065 31.703 20.359 13.436 28.892 15.248 34.556 15.248 13.374 0 39.145-15.765 76.597-46.857 25.86-21.469 58.184-51.544 71.349-71.564 9.982-15.186 21.229-36.539 19.591-67.117zm-300.56 101.3c-6.964-1.172-34.101-16.659-79.156-54.145-38.222-31.8-71.763-65.093-83.461-82.843-15.107-22.928-21.018-42.742-19.764-66.252 2.514-46.996 41.548-85.229 87.01-85.229 47.186 0 82.877 52.528 83.218 53.037 2.619 3.947 7.023 6.341 11.761 6.411 4.747 0.04 9.212-2.206 11.949-6.072 0.378-0.535 38.325-53.377 83.428-53.377 45.465 0 84.5 38.234 87.015 85.231 0.29 5.423 0.181 10.64-0.339 15.772-1.283 0.454-2.55 0.937-3.805 1.444-0.068 0.027-0.134 0.056-0.201 0.083-1.187 0.484-2.358 0.99-3.516 1.517-0.066 0.03-0.132 0.059-0.197 0.089-2.437 1.116-4.809 2.326-7.115 3.606-0.042 0.023-0.085 0.046-0.126 0.07-14.093 7.852-25.648 18.361-33.598 26.803-0.312-0.342-0.638-0.69-0.961-1.037-0.139-0.149-0.272-0.295-0.412-0.445-0.264-0.283-0.542-0.57-0.815-0.856-0.211-0.221-0.417-0.441-0.632-0.665-0.207-0.216-0.425-0.435-0.638-0.652-0.293-0.3-0.581-0.598-0.881-0.901-0.128-0.129-0.263-0.26-0.391-0.389-0.394-0.394-0.786-0.787-1.193-1.185-0.214-0.21-0.438-0.422-0.657-0.634-0.33-0.319-0.657-0.638-0.994-0.958-0.134-0.128-0.274-0.256-0.409-0.384-11.776-11.1-28.323-23.064-48.327-27.872-0.135-0.033-0.273-0.059-0.409-0.091-1.796-0.422-3.617-0.792-5.466-1.092-0.381-0.062-0.769-0.108-1.151-0.164-0.618-0.091-1.233-0.188-1.858-0.264-0.139-0.017-0.283-0.027-0.422-0.043-0.872-0.102-1.746-0.197-2.629-0.27-0.319-0.026-0.644-0.037-0.966-0.06-1.739-0.121-3.493-0.197-5.273-0.197-24.113 0-47.067 9.536-64.634 26.852-17.272 17.027-27.497 39.703-28.79 63.855-0.414 7.747 0.03 14.945 1.07 21.599 0.593 3.796 1.4 7.395 2.333 10.841 0.97 3.572 2.092 6.953 3.323 10.151 0.325 0.842 0.652 1.675 0.99 2.493 1.178 2.849 2.428 5.538 3.717 8.077 0.884 1.74 1.777 3.425 2.68 5.022 0.04 0.07 0.079 0.147 0.119 0.217 1.818 3.2 3.644 6.108 5.371 8.729 0.388 0.589 0.795 1.187 1.216 1.79 0.207 0.297 0.428 0.603 0.644 0.905 0.213 0.297 0.42 0.593 0.639 0.894 0.312 0.43 0.639 0.866 0.967 1.303 0.121 0.161 0.239 0.32 0.361 0.483 0.412 0.545 0.839 1.096 1.273 1.652 0.026 0.032 0.05 0.063 0.075 0.096 5.426 6.934 12.501 14.683 20.416 22.656-6.553 3.469-9.546 4.236-10.389 4.399zm256.96-49.975c-8.952 13.613-34.445 39.074-63.438 63.359-33.322 27.912-54.244 40.298-60.461 41.999-6.222-1.754-27.201-14.235-60.701-42.206-15.466-12.914-29.911-26.115-41.39-37.67-0.072-0.072-0.142-0.144-0.213-0.216-1.598-1.611-3.132-3.185-4.608-4.727-0.483-0.504-0.966-1.009-1.435-1.506-0.22-0.233-0.435-0.463-0.652-0.693-0.589-0.628-1.171-1.25-1.736-1.862-0.098-0.106-0.197-0.213-0.295-0.318-4.349-4.721-7.96-8.97-10.677-12.577-0.091-0.119-0.178-0.239-0.267-0.358-0.335-0.448-0.652-0.884-0.957-1.312-0.095-0.132-0.194-0.269-0.286-0.399-0.371-0.526-0.723-1.039-1.047-1.53-11.386-17.279-15.843-32.168-14.903-49.781 1.875-35.017 30.911-63.504 64.729-63.504 35.083 0 62.043 39.595 62.293 39.966 0.655 0.986 1.421 1.875 2.276 2.655 0.292 0.266 0.606 0.5 0.917 0.74 0.145 0.112 0.279 0.24 0.428 0.346 1.368 0.974 2.902 1.695 4.53 2.144 0.046 0.013 0.091 0.033 0.136 0.045 0.379 0.101 0.769 0.164 1.157 0.233 0.185 0.033 0.365 0.085 0.553 0.111 0.262 0.036 0.532 0.039 0.796 0.062 0.319 0.026 0.636 0.069 0.96 0.073h3e-3 1e-3c7e-3 0 0.016-1e-3 0.023-1e-3 4.75 0.065 9.187-2.204 11.923-6.058 3e-3 -4e-3 0.029-0.039 0.042-0.057 0.013-0.019 0.026-0.036 0.05-0.07 0.03-0.042 0.083-0.112 0.128-0.174 0.034-0.047 0.068-0.091 0.111-0.149 0.065-0.086 0.148-0.197 0.23-0.307 0.045-0.059 0.088-0.116 0.136-0.181 0.106-0.141 0.23-0.302 0.361-0.473 0.042-0.053 0.083-0.108 0.126-0.164 0.152-0.197 0.319-0.411 0.499-0.641 0.034-0.043 0.07-0.089 0.105-0.134 0.204-0.259 0.421-0.533 0.658-0.828 0.01-0.013 0.02-0.026 0.03-0.037 6.765-8.418 26.651-30.816 50.494-36.019 0.142-0.032 0.274-0.088 0.415-0.124 2.99-0.616 6.041-0.961 9.131-0.961 33.82 0 62.859 28.488 64.733 63.506 0.94 17.578-3.518 32.47-14.908 49.798z"/>
6
- </svg>
 
 
 
 
 
 
assets/images/heart_error.svg DELETED
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg enable-background="new 0 0 512.001 512.001" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
3
- <path d="m511.76 181.79c-1.925-35.964-17.153-69.735-42.881-95.093-26.105-25.731-60.188-39.9-95.972-39.9-53.129 0-96.55 41.179-116.65 64.164-19.518-23.13-61.927-64.164-117.17-64.164-35.78 0-69.863 14.171-95.967 39.9-25.724 25.359-40.953 59.131-42.877 95.095-1.911 35.774 7.193 66.832 29.513 100.7 20.068 30.449 72.394 78.655 111.1 110.68 39.713 32.858 91.964 72.026 115.37 72.026 23.764 0 75.828-39.084 115.32-71.871 38.413-31.893 90.458-80.06 110.71-110.85 15.025-22.854 31.952-54.951 29.5-100.69zm-53.504 84.909c-14.878 22.623-56.752 64.344-104.2 103.82-56.938 47.373-90.252 65.6-97.748 65.961-7.613-0.457-41.011-18.87-98.222-66.332-47.716-39.584-89.647-81.162-104.34-103.46-18.722-28.411-26.374-54.121-24.814-83.363 3.182-59.441 52.596-107.8 110.16-107.8 59.764 0 104.52 65.965 104.96 66.615 2.62 3.948 7.024 6.342 11.762 6.411 0.07 1e-3 0.142 1e-3 0.213 1e-3 4.657 0 9.037-2.267 11.732-6.076 0.474-0.669 48.022-66.951 105.16-66.951 57.562 0 106.98 48.358 110.16 107.8 1.585 29.567-5.836 54.502-24.815 83.374z"/>
4
- <path d="m139.09 106.1c-11.491 0-22.658 2.623-33.193 7.794-26.597 13.055-44.823 40.952-46.433 71.071-1.222 22.889 4.519 41.693 19.814 64.905 4.305 6.533 19.005 24.115 29.128 34.836 2.827 2.992 6.632 4.503 10.448 4.503 3.538 0 7.083-1.3 9.859-3.92 5.769-5.447 6.029-14.539 0.583-20.306-10.15-10.755-23.208-26.643-26.029-30.923-11.904-18.067-16.001-30.958-15.115-47.564 1.064-19.894 12.999-38.27 30.406-46.813 6.56-3.221 13.47-4.854 20.533-4.854 7.932 0 14.365-6.431 14.365-14.365s-6.434-14.364-14.366-14.364z"/>
5
- <path d="m150.8 290.17h-0.014c-7.932 0-14.358 6.431-14.358 14.365s6.438 14.365 14.372 14.365 14.365-6.431 14.365-14.365-6.431-14.365-14.365-14.365z"/>
6
- <path d="m418.62 209.44 25.255-25.255c1.052-1.052 1.906-2.227 2.564-3.478 1.096-2.084 1.643-4.383 1.643-6.681 1e-3 -3.679-1.401-7.355-4.206-10.16l-41.745-41.745c-2.695-2.693-6.348-4.207-10.157-4.207-0.477 0-0.95 0.023-1.419 0.07-3.288 0.326-6.38 1.78-8.738 4.137l-25.256 25.256-25.255-25.255c-2.695-2.693-6.348-4.208-10.157-4.208s-7.463 1.514-10.157 4.208l-41.745 41.745c-2.805 2.805-4.207 6.481-4.207 10.157 0 2.298 0.547 4.595 1.643 6.681 0.658 1.251 1.513 2.425 2.564 3.478l25.255 25.255-25.255 25.255c-0.34 0.34-0.662 0.698-0.964 1.067-0.217 0.264-0.409 0.54-0.605 0.816-0.075 0.106-0.159 0.207-0.231 0.315-0.236 0.353-0.448 0.717-0.649 1.085-0.022 0.04-0.047 0.078-0.069 0.116-0.203 0.381-0.384 0.77-0.55 1.165-0.014 0.034-0.033 0.069-0.047 0.103-0.157 0.379-0.29 0.766-0.414 1.155-0.017 0.057-0.042 0.112-0.059 0.169-0.112 0.369-0.2 0.743-0.281 1.119-0.019 0.083-0.045 0.164-0.06 0.249-0.073 0.368-0.122 0.738-0.165 1.109-0.011 0.095-0.032 0.188-0.042 0.284-0.09 0.935-0.09 1.878 0 2.813 9e-3 0.089 0.027 0.174 0.037 0.263 0.045 0.379 0.095 0.757 0.169 1.13 0.014 0.075 0.039 0.148 0.055 0.221 0.083 0.385 0.174 0.767 0.287 1.145 0.014 0.047 0.033 0.092 0.047 0.138 0.125 0.401 0.264 0.797 0.425 1.188 9e-3 0.022 0.02 0.042 0.029 0.062 0.171 0.409 0.359 0.812 0.57 1.207 0.01 0.019 0.023 0.037 0.033 0.057 0.21 0.389 0.435 0.771 0.685 1.145 0.047 0.07 0.103 0.136 0.151 0.207 0.217 0.315 0.44 0.626 0.685 0.925 0.302 0.369 0.622 0.724 0.961 1.064l41.745 41.743c0.351 0.35 0.715 0.679 1.092 0.987 5.268 4.295 12.867 4.295 18.133 0 0.376-0.307 0.741-0.635 1.092-0.987l25.255-25.255 25.255 25.255c2.805 2.805 6.481 4.207 10.157 4.207s7.352-1.402 10.157-4.207l41.745-41.743c5.609-5.609 5.609-14.705 0-20.315l-25.256-25.255zm-97.47-56.845 15.098 15.099-21.428 21.428-15.098-15.098 21.428-21.429zm70.825 113.68-15.098-15.098 21.428-21.428 15.098 15.098-21.428 21.428zm-3.826-67.001-67 67.001-21.428-21.428 92.254-92.255 21.428 21.428-25.254 25.254z"/>
7
- </svg>
 
 
 
 
 
 
 
assets/images/heart_remove.svg DELETED
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg enable-background="new 0 0 512 512" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
3
- <path d="m139.5 84.828c-11.584 0-22.846 2.643-33.471 7.858-26.787 13.148-45.144 41.241-46.768 71.571-1.228 23.018 4.534 41.91 19.889 65.216 4.311 6.542 19.009 24.123 29.125 34.836 2.99 3.166 7.018 4.765 11.055 4.765 3.744 0 7.495-1.374 10.432-4.148 6.104-5.764 6.379-15.384 0.617-21.488-10.087-10.684-23.049-26.451-25.843-30.692-11.747-17.828-15.79-30.531-14.917-46.866 1.044-19.511 12.742-37.528 29.804-45.903 6.421-3.151 13.174-4.749 20.076-4.749 8.395 0 15.2-6.807 15.2-15.2s-6.804-15.2-15.199-15.2z"/>
4
- <path d="m151.17 268.26h-0.015c-8.395 0-15.193 6.807-15.193 15.2s6.813 15.2 15.208 15.2 15.2-6.807 15.2-15.2-6.805-15.2-15.2-15.2z"/>
5
- <path d="m457.6 292.43c10.783-11.763 19.041-21.972 24.62-30.452 15.044-22.888 31.998-55.036 29.54-100.88-1.929-36.061-17.197-69.922-42.993-95.349-26.182-25.805-60.367-40.016-96.261-40.016-52.688 0-95.814 40.323-116.23 63.477-19.839-23.294-61.998-63.477-116.78-63.477-35.89 0-70.076 14.212-96.255 40.017-25.796 25.426-41.064 59.288-42.995 95.35-1.912 35.851 7.203 66.967 29.557 100.89 20.052 30.426 72.27 78.539 110.89 110.5 23.964 19.829 46.567 36.866 65.363 49.271 30.497 20.128 42.834 22.709 50.172 22.709 6.335 0 16.263-1.888 37.594-14.622 18.588 33.609 54.397 56.426 95.444 56.426 60.104 0 109-48.899 109-109 3e-3 -34.248-15.89-64.842-40.673-84.839zm-177.17 90.66c0.024 0.467 0.076 0.929 0.106 1.394 0.097 1.482 0.207 2.961 0.363 4.426 0.052 0.488 0.128 0.973 0.185 1.459 0.175 1.453 0.365 2.9 0.597 4.335 0.076 0.468 0.169 0.932 0.251 1.398 0.255 1.458 0.531 2.906 0.842 4.343 0.034 0.16 0.056 0.318 0.091 0.474-19 11.867-25.691 13.033-26.628 13.142-7.922-0.793-41.185-19.345-97.585-66.172-47.335-39.301-88.916-80.544-103.47-102.62-18.546-28.145-26.126-53.602-24.583-82.541 3.145-58.773 51.995-106.59 108.89-106.59 59.071 0 103.43 65.348 103.86 65.988 2.773 4.177 7.431 6.709 12.444 6.784 4.966 0.065 9.746-2.335 12.64-6.427 0.47-0.664 47.599-66.345 104.07-66.345 56.903 0 105.75 47.815 108.9 106.59 1.569 29.26-5.785 53.948-24.586 82.552-5.319 8.088-14.2 18.78-25.927 31.239-0.851-0.35-1.718-0.661-2.578-0.99-0.664-0.255-1.322-0.523-1.993-0.765-0.725-0.261-1.459-0.496-2.189-0.742-1.014-0.344-2.026-0.69-3.052-1.005-0.439-0.134-0.885-0.248-1.325-0.377-1.304-0.38-2.613-0.752-3.937-1.085-0.226-0.056-0.456-0.102-0.682-0.158-1.514-0.369-3.037-0.719-4.575-1.024-0.126-0.026-0.252-0.043-0.378-0.068-1.616-0.315-3.239-0.602-4.879-0.845-0.181-0.027-0.365-0.044-0.546-0.07-1.567-0.223-3.139-0.427-4.726-0.584-0.517-0.052-1.037-0.074-1.553-0.119-1.254-0.105-2.508-0.217-3.774-0.28-1.807-0.091-3.619-0.138-5.431-0.138-60.104 0-109 48.897-109 109 1e-3 1.955 0.059 3.896 0.161 5.824zm108.84 72.782c-34.728 0-64.246-22.647-74.616-53.941-0.229-0.693-0.454-1.386-0.664-2.084-0.111-0.366-0.21-0.739-0.316-1.108-0.682-2.4-1.246-4.826-1.696-7.272-0.1-0.549-0.207-1.097-0.295-1.649-0.093-0.576-0.172-1.154-0.251-1.733-0.09-0.652-0.176-1.304-0.251-1.961-0.059-0.524-0.114-1.047-0.163-1.572-0.071-0.772-0.129-1.547-0.178-2.324-0.027-0.429-0.059-0.856-0.079-1.286-0.056-1.219-0.093-2.44-0.093-3.672 0-43.342 35.26-78.601 78.601-78.601 1.532 0 3.061 0.055 4.586 0.144 0.401 0.024 0.798 0.062 1.198 0.093 1.158 0.085 2.315 0.19 3.467 0.327 0.407 0.047 0.812 0.1 1.218 0.157 1.202 0.16 2.402 0.35 3.593 0.565 0.312 0.056 0.625 0.108 0.935 0.167 2.988 0.581 5.939 1.333 8.836 2.251 0.455 0.146 0.903 0.306 1.353 0.459 0.906 0.306 1.806 0.626 2.7 0.965 0.643 0.245 1.283 0.497 1.918 0.758 0.648 0.264 1.287 0.546 1.927 0.828 0.752 0.334 1.509 0.663 2.25 1.018 0.234 0.112 0.461 0.237 0.695 0.351 25.997 12.835 43.928 39.616 43.928 70.518 0 43.341-35.263 78.602-78.603 78.602z"/>
6
- <path d="m410.77 377.27 17.62-17.621c5.936-5.936 5.936-15.56 0-21.496-5.937-5.934-15.559-5.934-21.497 0l-17.62 17.621-17.62-17.621c-5.937-5.934-15.559-5.934-21.497 0-5.936 5.936-5.936 15.56 0 21.497l17.62 17.621-17.62 17.62c-5.936 5.936-5.936 15.56 0 21.497 2.969 2.967 6.858 4.452 10.748 4.452s7.779-1.485 10.748-4.452l17.62-17.62 17.62 17.62c2.969 2.967 6.858 4.452 10.748 4.452s7.779-1.485 10.748-4.452c5.936-5.936 5.936-15.56 0-21.497l-17.618-17.621z"/>
7
- </svg>
 
 
 
 
 
 
 
assets/images/wpc-store.png DELETED
Binary file
assets/js/frontend.js CHANGED
@@ -10,6 +10,12 @@
10
  // load the count when having a custom menu item
11
  woosw_load_count();
12
  }
 
 
 
 
 
 
13
  });
14
 
15
  // woovr
@@ -53,10 +59,13 @@
53
 
54
  // add to wishlist
55
  $(document).on('click touch', '.woosw-btn', function(e) {
 
56
  var $this = $(this);
57
  var id = $this.attr('data-id');
58
  var pid = $this.attr('data-pid');
59
  var product_id = $this.attr('data-product_id');
 
 
60
 
61
  if (typeof pid !== typeof undefined && pid !== false) {
62
  id = pid;
@@ -87,59 +96,51 @@
87
 
88
  $.post(woosw_vars.ajax_url, data, function(response) {
89
  $this.removeClass('woosw-adding');
90
- response = JSON.parse(response);
91
 
92
  if (woosw_vars.button_action === 'list') {
93
- $('#woosw_wishlist').removeClass('woosw-message');
94
-
95
- if (response['content'] != null) {
96
  $('#woosw_wishlist').
97
- html(response['content']).
98
  addClass('woosw-loaded');
99
  }
100
 
101
- if (response['notice'] != null) {
102
- woosw_notice(response['notice']);
 
103
  }
104
 
105
  woosw_perfect_scrollbar();
106
  woosw_wishlist_show();
107
- } else if (woosw_vars.button_action === 'message') {
108
- $('#woosw_wishlist').addClass('woosw-message');
109
-
110
- var message = '<div class="woosw-popup-inner"><div class="woosw-popup-content"><div class="woosw-popup-content-top"><span class="woosw-popup-close"></span></div><div class="woosw-popup-content-mid"><div class="woosw-popup-content-mid-message">';
111
-
112
- if (response['image'] != null) {
113
- message += '<img src="' + response['image'] + '"/>';
114
- }
115
-
116
- if (response['notice'] != null) {
117
- message += '<span>' + response['notice'] + '</span>';
118
- }
119
 
120
- message += '</div></div></div></div>';
 
121
 
122
- $('#woosw_wishlist').html(message).removeClass('woosw-loaded');
 
 
 
 
 
 
 
123
 
124
- woosw_wishlist_show();
125
- } else if (woosw_vars.button_action === 'no') {
126
  // add to wishlist solely
127
  $('#woosw_wishlist').removeClass('woosw-loaded');
128
  }
129
 
130
- if (response['count'] != null) {
131
- woosw_change_count(response['count']);
132
  }
133
 
134
- if (response['status'] === 1) {
135
  $this.addClass('woosw-added').html(woosw_vars.button_text_added);
136
  }
137
 
138
  $(document.body).trigger('woosw_add', [id]);
139
  });
140
  }
141
-
142
- e.preventDefault();
143
  });
144
 
145
  // remove from wishlist
@@ -158,26 +159,25 @@
158
  $.post(woosw_vars.ajax_url, data, function(response) {
159
  $this.removeClass('woosw-removing');
160
  $this_item.remove();
161
- response = JSON.parse(response);
162
 
163
- if (response['status'] === 1) {
164
  $('.woosw-btn-' + product_id).
165
  removeClass('woosw-added').
166
  html(woosw_vars.button_text);
167
  }
168
 
169
- if (response['content'] != null) {
170
  $('#woosw_wishlist').
171
- html(response['content']).
172
  addClass('woosw-loaded');
173
  }
174
 
175
- if (response['notice'] != null) {
176
- woosw_notice(response['notice']);
177
  }
178
 
179
- if (response['count'] != null) {
180
- woosw_change_count(response['count']);
181
  }
182
 
183
  $(document.body).trigger('woosw_remove', [product_id]);
@@ -199,26 +199,24 @@
199
  };
200
 
201
  $.post(woosw_vars.ajax_url, data, function(response) {
202
- response = JSON.parse(response);
203
-
204
- if (response['status'] === 1) {
205
  $('.woosw-btn').
206
  removeClass('woosw-added').
207
  html(woosw_vars.button_text);
208
  }
209
 
210
- if (response['content'] != null) {
211
  $('#woosw_wishlist').
212
- html(response['content']).
213
  addClass('woosw-loaded');
214
  }
215
 
216
- if (response['notice'] != null) {
217
- woosw_notice(response['notice']);
218
  }
219
 
220
- if (response['count'] != null) {
221
- woosw_change_count(response['count']);
222
  }
223
 
224
  woosw_popup_loaded();
@@ -311,10 +309,8 @@
311
  };
312
 
313
  $.post(woosw_vars.ajax_url, data, function(response) {
314
- response = JSON.parse(response);
315
-
316
- if (response['count'] != null) {
317
- woosw_change_count(response['count']);
318
  }
319
 
320
  $('.woosw-btn').removeClass('woosw-added').html(woosw_vars.button_text);
@@ -327,7 +323,7 @@
327
  });
328
  }
329
 
330
- $('#woosw_manage').html(response['content']);
331
  $('#woosw_wishlist').removeClass('woosw-loaded');
332
  woosw_popup_loaded();
333
  });
@@ -372,17 +368,18 @@
372
  });
373
 
374
  // menu item
375
- $(document).on('click touch', '.woosw-menu-item a, .woosw-menu a', function(e) {
376
- e.preventDefault();
377
-
378
- if (woosw_vars.menu_action === 'open_popup') {
379
- if ($('#woosw_wishlist').hasClass('woosw-loaded')) {
380
- woosw_wishlist_show();
381
- } else {
382
- woosw_wishlist_load();
383
- }
384
- }
385
- });
 
386
 
387
  // copy link
388
  $(document).
@@ -438,19 +435,16 @@
438
  };
439
 
440
  $.post(woosw_vars.ajax_url, data, function(response) {
441
- $('#woosw_wishlist').removeClass('woosw-message');
442
- response = JSON.parse(response);
443
-
444
- if (response['content'] != null) {
445
- $('#woosw_wishlist').html(response['content']);
446
  }
447
 
448
- if (response['count'] != null) {
449
- woosw_change_count(response['count']);
450
  }
451
 
452
- if (response['notice'] != null) {
453
- woosw_notice(response['notice']);
454
  }
455
 
456
  $('#woosw_wishlist').addClass('woosw-loaded');
@@ -466,10 +460,8 @@
466
  };
467
 
468
  $.post(woosw_vars.ajax_url, data, function(response) {
469
- response = JSON.parse(response);
470
-
471
- if (response['count'] != null) {
472
- var count = response['count'];
473
 
474
  woosw_change_count(count);
475
  $(document.body).trigger('woosw_load_count', [count]);
@@ -480,21 +472,6 @@
480
  function woosw_wishlist_show() {
481
  $('#woosw_wishlist').addClass('woosw-show');
482
 
483
- if ($('#woosw_wishlist').hasClass('woosw-message')) {
484
- // timer
485
- var woosw_counter = 6;
486
- var woosw_interval = setInterval(function() {
487
- woosw_counter--;
488
- $('.woosw-popup-close').html('Close in ' + woosw_counter + 's');
489
-
490
- if (woosw_counter === 0) {
491
- woosw_wishlist_hide();
492
- $('.woosw-popup-close').html('');
493
- clearInterval(woosw_interval);
494
- }
495
- }, 1000);
496
- }
497
-
498
  $(document.body).trigger('woosw_wishlist_show');
499
  }
500
 
10
  // load the count when having a custom menu item
11
  woosw_load_count();
12
  }
13
+
14
+ if (woosw_vars.button_action === 'message') {
15
+ $.notiny.addTheme('woosw', {
16
+ notification_class: 'notiny-theme-woosw',
17
+ });
18
+ }
19
  });
20
 
21
  // woovr
59
 
60
  // add to wishlist
61
  $(document).on('click touch', '.woosw-btn', function(e) {
62
+ e.preventDefault();
63
  var $this = $(this);
64
  var id = $this.attr('data-id');
65
  var pid = $this.attr('data-pid');
66
  var product_id = $this.attr('data-product_id');
67
+ var product_name = $this.attr('data-product_name');
68
+ var product_image = $this.attr('data-product_image');
69
 
70
  if (typeof pid !== typeof undefined && pid !== false) {
71
  id = pid;
96
 
97
  $.post(woosw_vars.ajax_url, data, function(response) {
98
  $this.removeClass('woosw-adding');
 
99
 
100
  if (woosw_vars.button_action === 'list') {
101
+ if (response.content != null) {
 
 
102
  $('#woosw_wishlist').
103
+ html(response.content).
104
  addClass('woosw-loaded');
105
  }
106
 
107
+ if (response.notice != null) {
108
+ woosw_notice(response.notice.replace('{name}',
109
+ '<strong>' + product_name + '</strong>'));
110
  }
111
 
112
  woosw_perfect_scrollbar();
113
  woosw_wishlist_show();
114
+ }
 
 
 
 
 
 
 
 
 
 
 
115
 
116
+ if (woosw_vars.button_action === 'message') {
117
+ $('#woosw_wishlist').removeClass('woosw-loaded');
118
 
119
+ $.notiny({
120
+ theme: 'woosw',
121
+ position: woosw_vars.message_position,
122
+ image: product_image,
123
+ text: response.notice.replace('{name}',
124
+ '<strong>' + product_name + '</strong>'),
125
+ });
126
+ }
127
 
128
+ if (woosw_vars.button_action === 'no') {
 
129
  // add to wishlist solely
130
  $('#woosw_wishlist').removeClass('woosw-loaded');
131
  }
132
 
133
+ if (response.count != null) {
134
+ woosw_change_count(response.count);
135
  }
136
 
137
+ if (response.status === 1) {
138
  $this.addClass('woosw-added').html(woosw_vars.button_text_added);
139
  }
140
 
141
  $(document.body).trigger('woosw_add', [id]);
142
  });
143
  }
 
 
144
  });
145
 
146
  // remove from wishlist
159
  $.post(woosw_vars.ajax_url, data, function(response) {
160
  $this.removeClass('woosw-removing');
161
  $this_item.remove();
 
162
 
163
+ if (response.status === 1) {
164
  $('.woosw-btn-' + product_id).
165
  removeClass('woosw-added').
166
  html(woosw_vars.button_text);
167
  }
168
 
169
+ if (response.content != null) {
170
  $('#woosw_wishlist').
171
+ html(response.content).
172
  addClass('woosw-loaded');
173
  }
174
 
175
+ if (response.notice != null) {
176
+ woosw_notice(response.notice);
177
  }
178
 
179
+ if (response.count != null) {
180
+ woosw_change_count(response.count);
181
  }
182
 
183
  $(document.body).trigger('woosw_remove', [product_id]);
199
  };
200
 
201
  $.post(woosw_vars.ajax_url, data, function(response) {
202
+ if (response.status === 1) {
 
 
203
  $('.woosw-btn').
204
  removeClass('woosw-added').
205
  html(woosw_vars.button_text);
206
  }
207
 
208
+ if (response.content != null) {
209
  $('#woosw_wishlist').
210
+ html(response.content).
211
  addClass('woosw-loaded');
212
  }
213
 
214
+ if (response.notice != null) {
215
+ woosw_notice(response.notice);
216
  }
217
 
218
+ if (response.count != null) {
219
+ woosw_change_count(response.count);
220
  }
221
 
222
  woosw_popup_loaded();
309
  };
310
 
311
  $.post(woosw_vars.ajax_url, data, function(response) {
312
+ if (response.count != null) {
313
+ woosw_change_count(response.count);
 
 
314
  }
315
 
316
  $('.woosw-btn').removeClass('woosw-added').html(woosw_vars.button_text);
323
  });
324
  }
325
 
326
+ $('#woosw_manage').html(response.content);
327
  $('#woosw_wishlist').removeClass('woosw-loaded');
328
  woosw_popup_loaded();
329
  });
368
  });
369
 
370
  // menu item
371
+ $(document).
372
+ on('click touch', '.woosw-menu-item a, .woosw-menu a', function(e) {
373
+ if (woosw_vars.menu_action === 'open_popup') {
374
+ e.preventDefault();
375
+
376
+ if ($('#woosw_wishlist').hasClass('woosw-loaded')) {
377
+ woosw_wishlist_show();
378
+ } else {
379
+ woosw_wishlist_load();
380
+ }
381
+ }
382
+ });
383
 
384
  // copy link
385
  $(document).
435
  };
436
 
437
  $.post(woosw_vars.ajax_url, data, function(response) {
438
+ if (response.content != null) {
439
+ $('#woosw_wishlist').html(response.content);
 
 
 
440
  }
441
 
442
+ if (response.count != null) {
443
+ woosw_change_count(response.count);
444
  }
445
 
446
+ if (response.notice != null) {
447
+ woosw_notice(response.notice);
448
  }
449
 
450
  $('#woosw_wishlist').addClass('woosw-loaded');
460
  };
461
 
462
  $.post(woosw_vars.ajax_url, data, function(response) {
463
+ if (response.count != null) {
464
+ var count = response.count;
 
 
465
 
466
  woosw_change_count(count);
467
  $(document.body).trigger('woosw_load_count', [count]);
472
  function woosw_wishlist_show() {
473
  $('#woosw_wishlist').addClass('woosw-show');
474
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
475
  $(document.body).trigger('woosw_wishlist_show');
476
  }
477
 
assets/libs/notiny/notiny.css ADDED
@@ -0,0 +1,210 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .notiny-container * {
2
+ margin: 0;
3
+ padding: 0;
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ .notiny-container {
8
+ position: fixed;
9
+ z-index: 9999;
10
+ }
11
+
12
+ .notiny-container-fluid-top .notiny-base,
13
+ .notiny-container-fluid-bottom .notiny-base {
14
+ width: 100%;
15
+ border-radius: 0;
16
+ }
17
+
18
+ .notiny-container-fluid-top .notiny-base {
19
+ margin-top: 0;
20
+ }
21
+
22
+ .notiny-container-fluid-bottom .notiny-base {
23
+ margin-bottom: 0;
24
+ }
25
+
26
+ .notiny-img {
27
+ display: none;
28
+ }
29
+
30
+ /* Animations */
31
+
32
+ @-webkit-keyframes notiny-animation-hide {
33
+ 0% {
34
+ -webkit-transform: scale(1, 1);
35
+ transform: scale(1, 1);
36
+ }
37
+
38
+ 20% {
39
+ opacity: 1;
40
+ }
41
+
42
+ 30% {
43
+ -webkit-transform: scale(1.2, 1.2);
44
+ transform: scale(1.2, 1.2);
45
+ }
46
+
47
+ 90% {
48
+
49
+ }
50
+
51
+ 100% {
52
+ opacity: 0;
53
+ -webkit-filter: blur(4px);
54
+ filter: blur(4px);
55
+ -webkit-transform: scale(1, 1);
56
+ transform: scale(1, 1);
57
+ }
58
+ }
59
+
60
+ @keyframes notiny-animation-hide {
61
+ 0% {
62
+ -webkit-transform: scale(1, 1);
63
+ transform: scale(1, 1);
64
+ }
65
+
66
+ 20% {
67
+ opacity: 1;
68
+ }
69
+
70
+ 30% {
71
+ -webkit-transform: scale(1.2, 1.2);
72
+ transform: scale(1.2, 1.2);
73
+ }
74
+
75
+ 90% {
76
+
77
+ }
78
+
79
+ 100% {
80
+ opacity: 0;
81
+ -webkit-filter: blur(4px);
82
+ filter: blur(4px);
83
+ -webkit-transform: scale(1, 1);
84
+ transform: scale(1, 1);
85
+ }
86
+ }
87
+
88
+ @-webkit-keyframes notiny-animation-show {
89
+ 0% {
90
+ opacity: 0;
91
+ -webkit-transform: scale(1, 1);
92
+ transform: scale(1, 1);
93
+ -webkit-filter: blur(4px);
94
+ filter: blur(4px);
95
+ }
96
+
97
+ 15% {
98
+ opacity: 1;
99
+ }
100
+
101
+ 50% {
102
+ -webkit-transform: scale(1.2, 1.2);
103
+ transform: scale(1.2, 1.2);
104
+ }
105
+
106
+ 90% {
107
+ -webkit-filter: blur(0px);
108
+ filter: blur(0px);
109
+ }
110
+
111
+ 100% {
112
+ -webkit-transform: scale(1, 1);
113
+ transform: scale(1, 1);
114
+ }
115
+ }
116
+
117
+ @keyframes notiny-animation-show {
118
+ 0% {
119
+ opacity: 0;
120
+ -webkit-transform: scale(1, 1);
121
+ transform: scale(1, 1);
122
+ -webkit-filter: blur(4px);
123
+ filter: blur(4px);
124
+ }
125
+
126
+ 15% {
127
+ opacity: 1;
128
+ }
129
+
130
+ 50% {
131
+ -webkit-transform: scale(1.2, 1.2);
132
+ transform: scale(1.2, 1.2);
133
+ }
134
+
135
+ 90% {
136
+ -webkit-filter: blur(0px);
137
+ filter: blur(0px);
138
+ }
139
+
140
+ 100% {
141
+ -webkit-transform: scale(1, 1);
142
+ transform: scale(1, 1);
143
+ }
144
+ }
145
+
146
+ @-webkit-keyframes notiny-animation-hover {
147
+ 0% {
148
+ -webkit-transform: scale(1, 1);
149
+ transform: scale(1, 1);
150
+ }
151
+
152
+ 100% {
153
+ -webkit-transform: scale(1.1, 1.1);
154
+ transform: scale(1.1, 1.1);
155
+ }
156
+ }
157
+
158
+ @keyframes notiny-animation-hover {
159
+ 0% {
160
+ -webkit-transform: scale(1, 1);
161
+ transform: scale(1, 1);
162
+ }
163
+
164
+ 100% {
165
+ -webkit-transform: scale(1.1, 1.1);
166
+ transform: scale(1.1, 1.1);
167
+ }
168
+ }
169
+
170
+ /* Default themes */
171
+
172
+ .notiny-theme-dark {
173
+ background-color: #202020;
174
+ color: #f5f5f5;
175
+ }
176
+
177
+ .notiny-theme-light {
178
+ background-color: #f0f0f0;
179
+ color: #202020;
180
+ }
181
+
182
+ .notiny-default-vars {
183
+ padding: 3px 3px;
184
+ margin: 2px 0px;
185
+ border-radius: 2px;
186
+ min-height: 32px;
187
+ max-width: 100vw;
188
+ }
189
+
190
+ .notiny-default-vars .notiny-img {
191
+ display: block;
192
+ border-radius: 2px;
193
+ width: 32px;
194
+ height: 32px;
195
+ float: left;
196
+ }
197
+
198
+ .notiny-default-vars .notiny-text {
199
+ font-family: sans-serif;
200
+ font-size: 13px;
201
+ padding: 8px 5px 6px 5px;
202
+ display: block;
203
+ overflow: hidden;
204
+ white-space: nowrap;
205
+ text-overflow: ellipsis;
206
+ }
207
+
208
+ .notiny-default-vars .notiny-with-img .notiny-text {
209
+ padding-left: 6px;
210
+ }
assets/libs/notiny/notiny.js ADDED
@@ -0,0 +1,212 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function($) {
2
+ var $notiny, appendToContainer, closeAction, containers, createNotification, defaults, detectCSSFeature, prepareNotification, showAction, themedefaults;
3
+ $notiny = $('<div class="notiny" />').appendTo($('body'));
4
+ defaults = {
5
+ image: void 0,
6
+ position: 'right-bottom',
7
+ theme: 'dark',
8
+ template: '<div class="notiny-base"><img class="notiny-img" /><div class="notiny-text"></div></div>',
9
+ width: '300',
10
+ text: '',
11
+ background: true,
12
+ autohide: true,
13
+ clickhide: true,
14
+ delay: 3000,
15
+ animate: true,
16
+ animation_show: 'notiny-animation-show 0.4s forwards',
17
+ animation_hide: 'notiny-animation-hide 0.5s forwards'
18
+ };
19
+ themedefaults = {
20
+
21
+ /*
22
+ * Blocks order:
23
+ * | container
24
+ * | - base
25
+ * | -- image
26
+ * | -- text
27
+ * | - base
28
+ * | -- image
29
+ * | -- text
30
+ * | ...
31
+ */
32
+ container_class: '',
33
+ notification_class: '',
34
+ image_class: '',
35
+ text_class: ''
36
+ };
37
+
38
+ /*
39
+ * List of possible containers
40
+ */
41
+ containers = {
42
+ 'left-top': $('<div />', {
43
+ "class": 'notiny-container',
44
+ css: {
45
+ top: 10,
46
+ left: 10
47
+ }
48
+ }).appendTo($notiny),
49
+ 'left-bottom': $('<div />', {
50
+ "class": 'notiny-container',
51
+ css: {
52
+ bottom: 10,
53
+ left: 10
54
+ }
55
+ }).appendTo($notiny),
56
+ 'right-top': $('<div />', {
57
+ "class": 'notiny-container',
58
+ css: {
59
+ top: 10,
60
+ right: 10
61
+ }
62
+ }).appendTo($notiny),
63
+ 'right-bottom': $('<div />', {
64
+ "class": 'notiny-container',
65
+ css: {
66
+ bottom: 10,
67
+ right: 10
68
+ }
69
+ }).appendTo($notiny),
70
+ 'fluid-top': $('<div />', {
71
+ "class": 'notiny-container notiny-container-fluid-top',
72
+ css: {
73
+ top: 0,
74
+ left: 0,
75
+ right: 0
76
+ }
77
+ }).appendTo($notiny),
78
+ 'fluid-bottom': $('<div />', {
79
+ "class": 'notiny-container notiny-container-fluid-bottom',
80
+ css: {
81
+ bottom: 0,
82
+ left: 0,
83
+ right: 0
84
+ }
85
+ }).appendTo($notiny)
86
+ };
87
+ detectCSSFeature = function(featurename) {
88
+ var domPrefixes, elm, feature, featurenameCapital, i;
89
+ feature = false;
90
+ domPrefixes = 'Webkit Moz ms O'.split(' ');
91
+ elm = document.createElement('div');
92
+ featurenameCapital = null;
93
+ featurename = featurename.toLowerCase();
94
+ if (elm.style[featurename] !== void 0) {
95
+ feature = true;
96
+ }
97
+ if (feature === false) {
98
+ featurenameCapital = featurename.charAt(0).toUpperCase() + featurename.substr(1);
99
+ i = 0;
100
+ while (i < domPrefixes.length) {
101
+ if (elm.style[domPrefixes[i] + featurenameCapital] !== void 0) {
102
+ feature = true;
103
+ break;
104
+ }
105
+ i++;
106
+ }
107
+ }
108
+ return feature;
109
+ };
110
+ closeAction = function($notification, settings) {
111
+ if (settings.animate) {
112
+ if (!settings._state_closing) {
113
+ settings._state_closing = true;
114
+ if (detectCSSFeature('animation') && detectCSSFeature('transform')) {
115
+ $notification.css('animation', settings.animation_hide);
116
+ setTimeout((function() {
117
+ $notification.remove();
118
+ }), 550);
119
+ } else {
120
+ $notification.fadeOut(400, function() {
121
+ $notification.remove();
122
+ });
123
+ }
124
+ }
125
+ } else {
126
+ $notification.remove();
127
+ }
128
+ };
129
+ showAction = function($notification, settings) {
130
+ if (settings.animate) {
131
+ if (detectCSSFeature('animation') && detectCSSFeature('transform')) {
132
+ $notification.css('animation', settings.animation_show);
133
+ } else {
134
+ $notification.hide();
135
+ $notification.fadeIn(500);
136
+ }
137
+ }
138
+ };
139
+ prepareNotification = function(options) {
140
+ createNotification($.extend({}, defaults, options));
141
+ };
142
+ createNotification = function(settings) {
143
+ var $img, $notification, $ptext;
144
+ $notification = $(settings.template);
145
+ settings.theme = $.notiny.themes[settings.theme];
146
+ $notification.addClass(settings.theme.notification_class);
147
+ $ptext = $notification.find('.notiny-text');
148
+ $ptext.addClass(settings.theme.text_class);
149
+ $ptext.html(settings.text);
150
+ $img = $notification.find('.notiny-img');
151
+ if (settings.image !== void 0) {
152
+ $notification.addClass('notiny-with-img');
153
+ $img.css('display', 'block');
154
+ $img.addClass(settings.theme.image_class);
155
+ $img.attr('src', settings.image);
156
+ } else {
157
+ $img.hide();
158
+ $notification.addClass('notiny-without-img');
159
+ }
160
+ if (settings.position.indexOf('fluid') === -1) {
161
+ $notification.css('width', settings.width);
162
+ }
163
+ $notification.data('settings', settings);
164
+ appendToContainer($notification, settings);
165
+ return $notification;
166
+ };
167
+ appendToContainer = function($notification, settings) {
168
+ var $container, floatclear;
169
+ $container = containers[settings.position];
170
+ $container.addClass(settings.theme.container_class);
171
+ if (settings.position.slice(-3) === 'top') {
172
+ $container.prepend($notification);
173
+ } else {
174
+ $container.append($notification);
175
+ }
176
+ floatclear = settings.position.split('-')[0];
177
+ $notification.css('float', floatclear);
178
+ $notification.css('clear', floatclear);
179
+ settings._state_closing = false;
180
+ if (settings.clickhide) {
181
+ $notification.css('cursor', 'pointer');
182
+ $notification.on('click', function() {
183
+ closeAction($notification, settings);
184
+ return false;
185
+ });
186
+ }
187
+ if (settings.autohide) {
188
+ setTimeout((function() {
189
+ closeAction($notification, settings);
190
+ }), settings.delay + 500);
191
+ }
192
+ showAction($notification, settings);
193
+ };
194
+ $.notiny = function(options) {
195
+ prepareNotification(options);
196
+ return this;
197
+ };
198
+ $.notiny.addTheme = function(name, options) {
199
+ var settings;
200
+ settings = $.extend({}, themedefaults, options);
201
+ (this.themes = this.themes || {})[name] = settings;
202
+ };
203
+ $.notiny.close = function($notiny) {
204
+ closeAction($notiny, $notiny.data('settings'));
205
+ };
206
+ $.notiny.addTheme('dark', {
207
+ notification_class: 'notiny-theme-dark notiny-default-vars'
208
+ });
209
+ $.notiny.addTheme('light', {
210
+ notification_class: 'notiny-theme-light notiny-default-vars'
211
+ });
212
+ })(jQuery);
assets/libs/notiny/notiny.min.css ADDED
@@ -0,0 +1 @@
 
1
+ .notiny-container *{margin:0;padding:0;box-sizing:border-box}.notiny-container{position:fixed;z-index:9999}.notiny-container-fluid-bottom .notiny-base,.notiny-container-fluid-top .notiny-base{width:100%;border-radius:0}.notiny-container-fluid-top .notiny-base{margin-top:0}.notiny-container-fluid-bottom .notiny-base{margin-bottom:0}.notiny-img{display:none}@-webkit-keyframes notiny-animation-hide{0%{-webkit-transform:scale(1,1);transform:scale(1,1)}20%{opacity:1}30%{-webkit-transform:scale(1.2,1.2);transform:scale(1.2,1.2)}to{opacity:0;-webkit-filter:blur(4px);filter:blur(4px);-webkit-transform:scale(1,1);transform:scale(1,1)}}@keyframes notiny-animation-hide{0%{-webkit-transform:scale(1,1);transform:scale(1,1)}20%{opacity:1}30%{-webkit-transform:scale(1.2,1.2);transform:scale(1.2,1.2)}to{opacity:0;-webkit-filter:blur(4px);filter:blur(4px);-webkit-transform:scale(1,1);transform:scale(1,1)}}@-webkit-keyframes notiny-animation-show{0%{opacity:0;-webkit-transform:scale(1,1);transform:scale(1,1);-webkit-filter:blur(4px);filter:blur(4px)}15%{opacity:1}50%{-webkit-transform:scale(1.2,1.2);transform:scale(1.2,1.2)}90%{-webkit-filter:blur(0);filter:blur(0)}to{-webkit-transform:scale(1,1);transform:scale(1,1)}}@keyframes notiny-animation-show{0%{opacity:0;-webkit-transform:scale(1,1);transform:scale(1,1);-webkit-filter:blur(4px);filter:blur(4px)}15%{opacity:1}50%{-webkit-transform:scale(1.2,1.2);transform:scale(1.2,1.2)}90%{-webkit-filter:blur(0);filter:blur(0)}to{-webkit-transform:scale(1,1);transform:scale(1,1)}}@-webkit-keyframes notiny-animation-hover{0%{-webkit-transform:scale(1,1);transform:scale(1,1)}to{-webkit-transform:scale(1.1,1.1);transform:scale(1.1,1.1)}}@keyframes notiny-animation-hover{0%{-webkit-transform:scale(1,1);transform:scale(1,1)}to{-webkit-transform:scale(1.1,1.1);transform:scale(1.1,1.1)}}.notiny-theme-dark{background-color:#202020;color:#f5f5f5}.notiny-theme-light{background-color:#f0f0f0;color:#202020}.notiny-default-vars{padding:3px;margin:2px 0;border-radius:2px;min-height:32px;max-width:100vw}.notiny-default-vars .notiny-img{display:block;border-radius:2px;width:32px;height:32px;float:left}.notiny-default-vars .notiny-text{font-family:sans-serif;font-size:13px;padding:8px 5px 6px;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.notiny-default-vars .notiny-with-img .notiny-text{padding-left:6px}
assets/libs/notiny/notiny.min.js ADDED
@@ -0,0 +1 @@
 
1
+ !function(t){var i,n,o,e,a,s,d,c,l,r;i=t('<div class="notiny" />').appendTo(t("body")),s={image:void 0,position:"right-bottom",theme:"dark",template:'<div class="notiny-base"><img class="notiny-img" /><div class="notiny-text"></div></div>',width:"300",text:"",background:!0,autohide:!0,clickhide:!0,delay:3e3,animate:!0,animation_show:"notiny-animation-show 0.4s forwards",animation_hide:"notiny-animation-hide 0.5s forwards"},r={container_class:"",notification_class:"",image_class:"",text_class:""},e={"left-top":t("<div />",{"class":"notiny-container",css:{top:10,left:10}}).appendTo(i),"left-bottom":t("<div />",{"class":"notiny-container",css:{bottom:10,left:10}}).appendTo(i),"right-top":t("<div />",{"class":"notiny-container",css:{top:10,right:10}}).appendTo(i),"right-bottom":t("<div />",{"class":"notiny-container",css:{bottom:10,right:10}}).appendTo(i),"fluid-top":t("<div />",{"class":"notiny-container notiny-container-fluid-top",css:{top:0,left:0,right:0}}).appendTo(i),"fluid-bottom":t("<div />",{"class":"notiny-container notiny-container-fluid-bottom",css:{bottom:0,left:0,right:0}}).appendTo(i)},d=function(t){var i,n,o,e,a;if(o=!1,i="Webkit Moz ms O".split(" "),n=document.createElement("div"),e=null,t=t.toLowerCase(),void 0!==n.style[t]&&(o=!0),o===!1)for(e=t.charAt(0).toUpperCase()+t.substr(1),a=0;a<i.length;){if(void 0!==n.style[i[a]+e]){o=!0;break}a++}return o},o=function(t,i){i.animate?i._state_closing||(i._state_closing=!0,d("animation")&&d("transform")?(t.css("animation",i.animation_hide),setTimeout(function(){t.remove()},550)):t.fadeOut(400,function(){t.remove()})):t.remove()},l=function(t,i){i.animate&&(d("animation")&&d("transform")?t.css("animation",i.animation_show):(t.hide(),t.fadeIn(500)))},c=function(i){a(t.extend({},s,i))},a=function(i){var o,e,a;return e=t(i.template),i.theme=t.notiny.themes[i.theme],e.addClass(i.theme.notification_class),a=e.find(".notiny-text"),a.addClass(i.theme.text_class),a.html(i.text),o=e.find(".notiny-img"),void 0!==i.image?(e.addClass("notiny-with-img"),o.css("display","block"),o.addClass(i.theme.image_class),o.attr("src",i.image)):(o.hide(),e.addClass("notiny-without-img")),-1===i.position.indexOf("fluid")&&e.css("width",i.width),e.data("settings",i),n(e,i),e},n=function(t,i){var n,a;n=e[i.position],n.addClass(i.theme.container_class),"top"===i.position.slice(-3)?n.prepend(t):n.append(t),a=i.position.split("-")[0],t.css("float",a),t.css("clear",a),i._state_closing=!1,i.clickhide&&(t.css("cursor","pointer"),t.on("click",function(){return o(t,i),!1})),i.autohide&&setTimeout(function(){o(t,i)},i.delay+500),l(t,i)},t.notiny=function(t){return c(t),this},t.notiny.addTheme=function(i,n){var o;o=t.extend({},r,n),(this.themes=this.themes||{})[i]=o},t.notiny.close=function(t){o(t,t.data("settings"))},t.notiny.addTheme("dark",{notification_class:"notiny-theme-dark notiny-default-vars"}),t.notiny.addTheme("light",{notification_class:"notiny-theme-light notiny-default-vars"})}(jQuery);
includes/wpc-kit.php CHANGED
@@ -106,9 +106,7 @@ if ( ! class_exists( 'WPCleverKit' ) ) {
106
 
107
  function admin_scripts() {
108
  wp_enqueue_style( 'wpc-kit', WPC_URI . 'assets/kit/css/backend.css' );
109
- wp_enqueue_script( 'wpc-kit', WPC_URI . 'assets/kit/js/backend.js', array(
110
- 'jquery'
111
- ) );
112
  }
113
 
114
  function admin_menu() {
106
 
107
  function admin_scripts() {
108
  wp_enqueue_style( 'wpc-kit', WPC_URI . 'assets/kit/css/backend.css' );
109
+ wp_enqueue_script( 'wpc-kit', WPC_URI . 'assets/kit/js/backend.js', array( 'jquery' ) );
 
 
110
  }
111
 
112
  function admin_menu() {
includes/wpc-notice.php DELETED
@@ -1,95 +0,0 @@
1
- <?php
2
- defined( 'ABSPATH' ) || exit;
3
-
4
- $theme = wp_get_theme();
5
-
6
- if ( ! empty( $theme['Name'] ) && ( strpos( $theme['Name'], 'WPC' ) !== false ) ) {
7
- return;
8
- }
9
-
10
- if ( ! class_exists( 'WPCleverNotice' ) ) {
11
- class WPCleverNotice {
12
- function __construct() {
13
- add_action( 'admin_notices', array( $this, 'admin_notice' ) );
14
- add_action( 'admin_init', array( $this, 'notice_ignore' ) );
15
- add_action( 'admin_enqueue_scripts', array( $this, 'notice_scripts' ) );
16
- }
17
-
18
- function notice_scripts() {
19
- wp_enqueue_style( 'wpc-notice', WOOSW_URI . 'assets/css/notice.css' );
20
- }
21
-
22
- function admin_notice() {
23
- global $current_user, $current_screen;
24
- $user_id = $current_user->ID;
25
-
26
- if ( ! $current_screen || ! isset( $current_screen->base ) || ( strpos( $current_screen->base, 'wpclever' ) === false ) ) {
27
- return;
28
- }
29
-
30
- if ( ! get_user_meta( $user_id, 'wpclever_wpcstore_ignore', true ) ) {
31
- ?>
32
- <div class="wpclever-notice notice">
33
- <div class="wpclever-notice-thumbnail">
34
- <a href="https://wordpress.org/themes/wpcstore/" target="_blank">
35
- <img src="<?php echo esc_url( WOOSW_URI . 'assets/images/wpc-store.png' ); ?>"
36
- alt="WPCstore"/>
37
- </a>
38
- </div>
39
- <div class="wpclever-notice-text">
40
- <h3>WPCstore - Powerful WooCommerce Theme</h3>
41
- <p>
42
- Integrated with a great deal of awesome features from WPC plugins trusted by 250,000+ users
43
- on WordPress, WPCstore brings about an easier way of running your store, enhancing the
44
- experience, and expanding your business. This well-coded, sleek, user-friendly, and
45
- responsive theme can do wonders for online stores, even exceed your expectations. Get rid of
46
- your pains concerning incompatibility, bug-fixing, asynchronous performance, etc and enjoy a
47
- higher stability, security, and harmony with WPCstore.
48
- </p>
49
- <ul class="wpclever-notice-ul">
50
- <li>
51
- <a href="https://demo.wpclever.net/wpcstore/" target="_blank">
52
- <span class="dashicons dashicons-desktop"></span> Live Demo
53
- </a>
54
- </li>
55
- <li>
56
- <a href="https://wordpress.org/themes/wpcstore/" target="_blank">
57
- <span class="dashicons dashicons-external"></span> Check Detail
58
- </a>
59
- </li>
60
- <li>
61
- <?php
62
- if ( function_exists( 'wc_get_current_admin_url' ) ) {
63
- $ignore_url = add_query_arg( 'wpclever_wpcstore_ignore', '1', wc_get_current_admin_url() );
64
- } else {
65
- $ignore_url = admin_url( '?wpclever_wpcstore_ignore=1' );
66
- }
67
- ?>
68
- <a href="<?php echo esc_url( $ignore_url ); ?>"
69
- class="dashicons-dismiss-icon">
70
- <span class="dashicons dashicons-welcome-comments"></span> Hide Message
71
- </a>
72
- </li>
73
- </ul>
74
- </div>
75
- </div>
76
- <?php
77
- }
78
- }
79
-
80
- function notice_ignore() {
81
- global $current_user;
82
- $user_id = $current_user->ID;
83
-
84
- if ( isset( $_GET['wpclever_wpcstore_ignore'] ) ) {
85
- if ( $_GET['wpclever_wpcstore_ignore'] == '1' ) {
86
- update_user_meta( $user_id, 'wpclever_wpcstore_ignore', 'true' );
87
- } else {
88
- delete_user_meta( $user_id, 'wpclever_wpcstore_ignore' );
89
- }
90
- }
91
- }
92
- }
93
-
94
- new WPCleverNotice();
95
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woo-smart-wishlist.pot CHANGED
@@ -2,14 +2,14 @@
2
  # This file is distributed under the same license as the WPC Smart Wishlist for WooCommerce plugin.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WPC Smart Wishlist for WooCommerce 3.0.6\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/woo-smart-wishlist\n"
7
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8
  "Language-Team: LANGUAGE <LL@li.org>\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "POT-Creation-Date: 2022-05-28T08:48:49+00:00\n"
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
  "X-Generator: WP-CLI 2.5.0\n"
15
  "X-Domain: woo-smart-wishlist\n"
@@ -34,672 +34,708 @@ msgstr ""
34
  msgid "https://wpclever.net"
35
  msgstr ""
36
 
 
 
 
 
 
 
 
37
  #: wpc-smart-wishlist.php:285
38
- #: wpc-smart-wishlist.php:342
39
- #: wpc-smart-wishlist.php:385
40
- #: wpc-smart-wishlist.php:1304
41
- msgid "Please log in to use the wishlist!"
 
 
42
  msgstr ""
43
 
44
- #: wpc-smart-wishlist.php:286
45
- #: wpc-smart-wishlist.php:359
46
- #: wpc-smart-wishlist.php:403
47
- #: wpc-smart-wishlist.php:418
48
- #: wpc-smart-wishlist.php:1277
49
- #: wpc-smart-wishlist.php:1528
50
- msgid "There are no products on the wishlist!"
51
  msgstr ""
52
 
53
  #: wpc-smart-wishlist.php:305
54
- #: wpc-smart-wishlist.php:1232
55
- msgid "Added to the wishlist!"
56
  msgstr ""
57
 
58
- #: wpc-smart-wishlist.php:308
59
- #: wpc-smart-wishlist.php:1241
60
- msgid "Already in the wishlist!"
 
61
  msgstr ""
62
 
63
- #: wpc-smart-wishlist.php:322
64
- #: wpc-smart-wishlist.php:367
65
- #: wpc-smart-wishlist.php:1322
66
- msgid "Have an error, please try again!"
67
  msgstr ""
68
 
69
- #: wpc-smart-wishlist.php:356
70
- #: wpc-smart-wishlist.php:1250
71
- msgid "Removed from wishlist!"
72
  msgstr ""
73
 
74
- #: wpc-smart-wishlist.php:362
75
- #: wpc-smart-wishlist.php:1295
76
- msgid "The product does not exist on the wishlist!"
77
  msgstr ""
78
 
79
- #: wpc-smart-wishlist.php:402
80
- #: wpc-smart-wishlist.php:1268
81
- msgid "All products were removed from your wishlist!"
82
  msgstr ""
83
 
84
- #: wpc-smart-wishlist.php:417
85
- #: wpc-smart-wishlist.php:442
86
- msgid "Please log in to use wishlist!"
 
87
  msgstr ""
88
 
89
- #: wpc-smart-wishlist.php:494
90
- #: wpc-smart-wishlist.php:1089
91
- #: wpc-smart-wishlist.php:1389
92
  msgid "Browse wishlist"
93
  msgstr ""
94
 
95
- #: wpc-smart-wishlist.php:496
96
- #: wpc-smart-wishlist.php:1080
97
- #: wpc-smart-wishlist.php:1388
98
  msgid "Add to wishlist"
99
  msgstr ""
100
 
101
- #: wpc-smart-wishlist.php:529
102
- #: wpc-smart-wishlist.php:985
103
  msgid "Facebook"
104
  msgstr ""
105
 
106
- #: wpc-smart-wishlist.php:530
107
- #: wpc-smart-wishlist.php:988
108
  msgid "Twitter"
109
  msgstr ""
110
 
111
- #: wpc-smart-wishlist.php:531
112
- #: wpc-smart-wishlist.php:991
113
  msgid "Pinterest"
114
  msgstr ""
115
 
116
- #: wpc-smart-wishlist.php:532
117
- #: wpc-smart-wishlist.php:994
118
  msgid "Mail"
119
  msgstr ""
120
 
121
- #: wpc-smart-wishlist.php:542
122
  msgid "Share on:"
123
  msgstr ""
124
 
125
- #: wpc-smart-wishlist.php:553
126
  msgid "Wishlist link:"
127
  msgstr ""
128
 
129
- #: wpc-smart-wishlist.php:555
130
  msgid "Copy"
131
  msgstr ""
132
 
133
- #: wpc-smart-wishlist.php:580
134
  msgid "Thank you for using our plugin! If you are satisfied, please reward it a full five-star %s rating."
135
  msgstr ""
136
 
137
- #: wpc-smart-wishlist.php:583
138
  msgid "Reviews"
139
  msgstr ""
140
 
141
- #: wpc-smart-wishlist.php:585
142
  msgid "Changelog"
143
  msgstr ""
144
 
145
- #: wpc-smart-wishlist.php:587
146
  msgid "Discussion"
147
  msgstr ""
148
 
149
- #: wpc-smart-wishlist.php:594
150
- #: wpc-smart-wishlist.php:1412
151
  msgid "Settings"
152
  msgstr ""
153
 
154
- #: wpc-smart-wishlist.php:598
155
- #: wpc-smart-wishlist.php:1069
156
  msgid "Localization"
157
  msgstr ""
158
 
159
- #: wpc-smart-wishlist.php:603
160
- #: wpc-smart-wishlist.php:1413
161
  msgid "Premium Version"
162
  msgstr ""
163
 
164
- #: wpc-smart-wishlist.php:606
165
  msgid "Essential Kit"
166
  msgstr ""
167
 
168
- #: wpc-smart-wishlist.php:621
169
  msgid "General"
170
  msgstr ""
171
 
172
- #: wpc-smart-wishlist.php:625
173
  msgid "Disable the wishlist for unauthenticated users"
174
  msgstr ""
175
 
176
- #: wpc-smart-wishlist.php:629
177
- #: wpc-smart-wishlist.php:642
178
- #: wpc-smart-wishlist.php:666
179
- #: wpc-smart-wishlist.php:843
180
- #: wpc-smart-wishlist.php:889
181
- #: wpc-smart-wishlist.php:908
182
- #: wpc-smart-wishlist.php:951
183
- #: wpc-smart-wishlist.php:965
184
- #: wpc-smart-wishlist.php:1004
185
  msgid "Yes"
186
  msgstr ""
187
 
188
- #: wpc-smart-wishlist.php:632
189
- #: wpc-smart-wishlist.php:645
190
- #: wpc-smart-wishlist.php:669
191
- #: wpc-smart-wishlist.php:846
192
- #: wpc-smart-wishlist.php:876
193
- #: wpc-smart-wishlist.php:892
194
- #: wpc-smart-wishlist.php:911
195
- #: wpc-smart-wishlist.php:954
196
- #: wpc-smart-wishlist.php:968
197
- #: wpc-smart-wishlist.php:1007
198
  msgid "No"
199
  msgstr ""
200
 
201
- #: wpc-smart-wishlist.php:638
202
  msgid "Auto remove"
203
  msgstr ""
204
 
205
- #: wpc-smart-wishlist.php:648
206
  msgid "Auto remove product from the wishlist after adding to the cart."
207
  msgstr ""
208
 
209
- #: wpc-smart-wishlist.php:653
210
- #: wpc-smart-wishlist.php:1156
211
  msgid "Multiple Wishlist"
212
  msgstr ""
213
 
214
- #: wpc-smart-wishlist.php:662
215
  msgid "Enable"
216
  msgstr ""
217
 
218
- #: wpc-smart-wishlist.php:672
219
  msgid "Enable/disable multiple wishlist."
220
  msgstr ""
221
 
222
- #: wpc-smart-wishlist.php:676
223
  msgid "Maximum wishlists per user"
224
  msgstr ""
225
 
226
- #: wpc-smart-wishlist.php:684
227
- #: wpc-smart-wishlist.php:695
228
  msgid "Button"
229
  msgstr ""
230
 
231
- #: wpc-smart-wishlist.php:687
232
  msgid "Settings for \"Add to wishlist\" button."
233
  msgstr ""
234
 
235
- #: wpc-smart-wishlist.php:691
236
  msgid "Type"
237
  msgstr ""
238
 
239
- #: wpc-smart-wishlist.php:698
240
  msgid "Link"
241
  msgstr ""
242
 
243
- #: wpc-smart-wishlist.php:704
244
- #: wpc-smart-wishlist.php:1040
245
  msgid "Action"
246
  msgstr ""
247
 
248
- #: wpc-smart-wishlist.php:708
249
  msgid "Show message"
250
  msgstr ""
251
 
252
- #: wpc-smart-wishlist.php:711
253
  msgid "Show product list"
254
  msgstr ""
255
 
256
- #: wpc-smart-wishlist.php:714
257
  msgid "Add to wishlist solely"
258
  msgstr ""
259
 
260
- #: wpc-smart-wishlist.php:717
261
  msgid "Action triggered by clicking on the wishlist button."
262
  msgstr ""
263
 
264
- #: wpc-smart-wishlist.php:721
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
265
  msgid "Action (added)"
266
  msgstr ""
267
 
268
- #: wpc-smart-wishlist.php:725
269
  msgid "Open wishlist popup"
270
  msgstr ""
271
 
272
- #: wpc-smart-wishlist.php:728
273
- #: wpc-smart-wishlist.php:1129
274
- #: wpc-smart-wishlist.php:1134
275
- #: wpc-smart-wishlist.php:1625
276
  msgid "Open wishlist page"
277
  msgstr ""
278
 
279
- #: wpc-smart-wishlist.php:731
280
  msgid "Action triggered by clicking on the wishlist button after adding an item to the wishlist."
281
  msgstr ""
282
 
283
- #: wpc-smart-wishlist.php:735
284
  msgid "Extra class (optional)"
285
  msgstr ""
286
 
287
- #: wpc-smart-wishlist.php:739
288
  msgid "Add extra class for action button/link, split by one space."
289
  msgstr ""
290
 
291
- #: wpc-smart-wishlist.php:743
292
  msgid "Position on archive page"
293
  msgstr ""
294
 
295
- #: wpc-smart-wishlist.php:748
296
- #: wpc-smart-wishlist.php:775
297
  msgid "Under title"
298
  msgstr ""
299
 
300
- #: wpc-smart-wishlist.php:749
301
- #: wpc-smart-wishlist.php:776
302
  msgid "Under rating"
303
  msgstr ""
304
 
305
- #: wpc-smart-wishlist.php:750
306
  msgid "Under price"
307
  msgstr ""
308
 
309
- #: wpc-smart-wishlist.php:751
310
- #: wpc-smart-wishlist.php:778
311
  msgid "Above add to cart button"
312
  msgstr ""
313
 
314
- #: wpc-smart-wishlist.php:752
315
- #: wpc-smart-wishlist.php:779
316
  msgid "Under add to cart button"
317
  msgstr ""
318
 
319
- #: wpc-smart-wishlist.php:753
320
- #: wpc-smart-wishlist.php:782
321
  msgid "None (hide it)"
322
  msgstr ""
323
 
324
- #: wpc-smart-wishlist.php:770
325
  msgid "Position on single page"
326
  msgstr ""
327
 
328
- #: wpc-smart-wishlist.php:777
329
  msgid "Under excerpt"
330
  msgstr ""
331
 
332
- #: wpc-smart-wishlist.php:780
333
  msgid "Under meta"
334
  msgstr ""
335
 
336
- #: wpc-smart-wishlist.php:781
337
  msgid "Under sharing"
338
  msgstr ""
339
 
340
- #: wpc-smart-wishlist.php:799
341
  msgid "Shortcode"
342
  msgstr ""
343
 
344
- #: wpc-smart-wishlist.php:802
345
  msgid "You can add a button manually by using the shortcode %s, eg. %s for the product whose ID is 99."
346
  msgstr ""
347
 
348
- #: wpc-smart-wishlist.php:807
349
  msgid "Categories"
350
  msgstr ""
351
 
352
- #: wpc-smart-wishlist.php:822
353
  msgid "All categories"
354
  msgstr ""
355
 
356
- #: wpc-smart-wishlist.php:827
357
  msgid "Only show the wishlist button for products in selected categories."
358
  msgstr ""
359
 
360
- #: wpc-smart-wishlist.php:832
361
  msgid "Popup"
362
  msgstr ""
363
 
364
- #: wpc-smart-wishlist.php:835
365
  msgid "Settings for the wishlist popup."
366
  msgstr ""
367
 
368
- #: wpc-smart-wishlist.php:839
369
  msgid "Use perfect-scrollbar"
370
  msgstr ""
371
 
372
- #: wpc-smart-wishlist.php:849
373
  msgid "Read more about %s"
374
  msgstr ""
375
 
376
- #: wpc-smart-wishlist.php:853
377
  msgid "Color"
378
  msgstr ""
379
 
380
- #: wpc-smart-wishlist.php:859
381
  msgid "Choose the color, default %s"
382
  msgstr ""
383
 
384
- #: wpc-smart-wishlist.php:863
385
  msgid "Link to individual product"
386
  msgstr ""
387
 
388
- #: wpc-smart-wishlist.php:867
389
  msgid "Yes, open in the same tab"
390
  msgstr ""
391
 
392
- #: wpc-smart-wishlist.php:870
393
  msgid "Yes, open in the new tab"
394
  msgstr ""
395
 
396
- #: wpc-smart-wishlist.php:873
397
  msgid "Yes, open quick view popup"
398
  msgstr ""
399
 
400
- #: wpc-smart-wishlist.php:885
401
  msgid "Show note"
402
  msgstr ""
403
 
404
- #: wpc-smart-wishlist.php:895
405
  msgid "Show note on each product for all visitors. Only wishlist owner can add/edit these notes."
406
  msgstr ""
407
 
408
- #: wpc-smart-wishlist.php:904
409
- #: wpc-smart-wishlist.php:1102
410
  msgid "Empty wishlist button"
411
  msgstr ""
412
 
413
- #: wpc-smart-wishlist.php:914
414
  msgid "Show empty wishlist button on the popup?"
415
  msgstr ""
416
 
417
- #: wpc-smart-wishlist.php:918
418
  msgid "Continue shopping link"
419
  msgstr ""
420
 
421
- #: wpc-smart-wishlist.php:923
422
  msgid "By default, the wishlist popup will only be closed when customers click on the \"Continue Shopping\" button."
423
  msgstr ""
424
 
425
- #: wpc-smart-wishlist.php:928
426
  msgid "Page"
427
  msgstr ""
428
 
429
- #: wpc-smart-wishlist.php:931
430
  msgid "Settings for wishlist page."
431
  msgstr ""
432
 
433
- #: wpc-smart-wishlist.php:935
434
  msgid "Wishlist page"
435
  msgstr ""
436
 
437
- #: wpc-smart-wishlist.php:940
438
  msgid "Choose a page"
439
  msgstr ""
440
 
441
- #: wpc-smart-wishlist.php:943
442
  msgid "Add shortcode %s to display the wishlist on a page."
443
  msgstr ""
444
 
445
- #: wpc-smart-wishlist.php:947
446
  msgid "Share buttons"
447
  msgstr ""
448
 
449
- #: wpc-smart-wishlist.php:957
450
  msgid "Enable share buttons on the wishlist page?"
451
  msgstr ""
452
 
453
- #: wpc-smart-wishlist.php:961
454
  msgid "Use font icon"
455
  msgstr ""
456
 
457
- #: wpc-smart-wishlist.php:974
458
  msgid "Social links"
459
  msgstr ""
460
 
461
- #: wpc-smart-wishlist.php:1000
462
  msgid "Copy link"
463
  msgstr ""
464
 
465
- #: wpc-smart-wishlist.php:1010
466
  msgid "Enable copy wishlist link to share?"
467
  msgstr ""
468
 
469
- #: wpc-smart-wishlist.php:1015
470
  msgid "Menu"
471
  msgstr ""
472
 
473
- #: wpc-smart-wishlist.php:1018
474
  msgid "Settings for the wishlist menu item."
475
  msgstr ""
476
 
477
- #: wpc-smart-wishlist.php:1022
478
  msgid "Menu(s)"
479
  msgstr ""
480
 
481
- #: wpc-smart-wishlist.php:1036
482
  msgid "Choose the menu(s) you want to add the \"wishlist menu\" at the end."
483
  msgstr ""
484
 
485
- #: wpc-smart-wishlist.php:1044
486
  msgid "Open page"
487
  msgstr ""
488
 
489
- #: wpc-smart-wishlist.php:1047
490
  msgid "Open popup"
491
  msgstr ""
492
 
493
- #: wpc-smart-wishlist.php:1050
494
  msgid "Action when clicking on the \"wishlist menu\"."
495
  msgstr ""
496
 
497
- #: wpc-smart-wishlist.php:1056
498
- #: wpc-smart-wishlist.php:1328
499
  msgid "Update Options"
500
  msgstr ""
501
 
502
- #: wpc-smart-wishlist.php:1071
503
  msgid "Leave blank to use the default text and its equivalent translation in multiple languages."
504
  msgstr ""
505
 
506
- #: wpc-smart-wishlist.php:1075
507
  msgid "Button text"
508
  msgstr ""
509
 
510
- #: wpc-smart-wishlist.php:1084
511
  msgid "Button text (added)"
512
  msgstr ""
513
 
514
- #: wpc-smart-wishlist.php:1093
515
  msgid "Wishlist popup heading"
516
  msgstr ""
517
 
518
- #: wpc-smart-wishlist.php:1098
519
- #: wpc-smart-wishlist.php:1152
520
- #: wpc-smart-wishlist.php:1165
521
- #: wpc-smart-wishlist.php:1387
522
- #: wpc-smart-wishlist.php:1569
523
- #: wpc-smart-wishlist.php:1595
524
- #: wpc-smart-wishlist.php:1796
525
- #: wpc-smart-wishlist.php:1877
526
- #: wpc-smart-wishlist.php:1884
527
- #: wpc-smart-wishlist.php:2075
 
528
  msgid "Wishlist"
529
  msgstr ""
530
 
531
- #: wpc-smart-wishlist.php:1107
532
- #: wpc-smart-wishlist.php:1608
533
  msgid "remove all"
534
  msgstr ""
535
 
536
- #: wpc-smart-wishlist.php:1111
537
- #: wpc-smart-wishlist.php:1116
538
- msgid "Add note"
539
- msgstr ""
540
-
541
- #: wpc-smart-wishlist.php:1120
542
  msgid "Save note"
543
  msgstr ""
544
 
545
- #: wpc-smart-wishlist.php:1125
546
  msgid "Save"
547
  msgstr ""
548
 
549
- #: wpc-smart-wishlist.php:1138
550
- #: wpc-smart-wishlist.php:1143
551
- #: wpc-smart-wishlist.php:1629
552
  msgid "Continue shopping"
553
  msgstr ""
554
 
555
- #: wpc-smart-wishlist.php:1147
556
  msgid "Menu item label"
557
  msgstr ""
558
 
559
- #: wpc-smart-wishlist.php:1160
560
  msgid "Primary wishlist name"
561
  msgstr ""
562
 
563
- #: wpc-smart-wishlist.php:1169
564
- #: wpc-smart-wishlist.php:1174
 
565
  msgid "Manage wishlists"
566
  msgstr ""
567
 
568
- #: wpc-smart-wishlist.php:1178
569
  msgid "Set default"
570
  msgstr ""
571
 
572
- #: wpc-smart-wishlist.php:1183
 
573
  msgid "set default"
574
  msgstr ""
575
 
576
- #: wpc-smart-wishlist.php:1187
577
  msgid "Default"
578
  msgstr ""
579
 
580
- #: wpc-smart-wishlist.php:1192
 
581
  msgid "default"
582
  msgstr ""
583
 
584
- #: wpc-smart-wishlist.php:1196
585
  msgid "Delete"
586
  msgstr ""
587
 
588
- #: wpc-smart-wishlist.php:1201
 
589
  msgid "delete"
590
  msgstr ""
591
 
592
- #: wpc-smart-wishlist.php:1205
593
  msgid "Wishlist name placeholder"
594
  msgstr ""
595
 
596
- #: wpc-smart-wishlist.php:1210
 
597
  msgid "New Wishlist"
598
  msgstr ""
599
 
600
- #: wpc-smart-wishlist.php:1214
601
  msgid "Add new wishlist"
602
  msgstr ""
603
 
604
- #: wpc-smart-wishlist.php:1219
 
605
  msgid "Add New Wishlist"
606
  msgstr ""
607
 
608
- #: wpc-smart-wishlist.php:1223
609
  msgid "Message"
610
  msgstr ""
611
 
612
- #: wpc-smart-wishlist.php:1227
613
  msgid "Added to the wishlist"
614
  msgstr ""
615
 
616
- #: wpc-smart-wishlist.php:1236
617
  msgid "Already in the wishlist"
618
  msgstr ""
619
 
620
- #: wpc-smart-wishlist.php:1245
621
  msgid "Removed from wishlist"
622
  msgstr ""
623
 
624
- #: wpc-smart-wishlist.php:1254
625
  msgid "Empty wishlist confirm"
626
  msgstr ""
627
 
628
- #: wpc-smart-wishlist.php:1259
629
- #: wpc-smart-wishlist.php:1286
630
- #: wpc-smart-wishlist.php:1384
631
- #: wpc-smart-wishlist.php:1385
632
  msgid "This action cannot be undone. Are you sure?"
633
  msgstr ""
634
 
635
- #: wpc-smart-wishlist.php:1263
636
  msgid "Empty wishlist notice"
637
  msgstr ""
638
 
639
- #: wpc-smart-wishlist.php:1272
640
  msgid "Empty wishlist"
641
  msgstr ""
642
 
643
- #: wpc-smart-wishlist.php:1281
644
  msgid "Delete wishlist confirm"
645
  msgstr ""
646
 
647
- #: wpc-smart-wishlist.php:1290
648
  msgid "Product does not exist"
649
  msgstr ""
650
 
651
- #: wpc-smart-wishlist.php:1299
652
  msgid "Need to login"
653
  msgstr ""
654
 
655
- #: wpc-smart-wishlist.php:1308
656
  msgid "Copied wishlist link"
657
  msgstr ""
658
 
659
- #: wpc-smart-wishlist.php:1313
660
- #: wpc-smart-wishlist.php:1386
661
  msgid "Copied the wishlist link:"
662
  msgstr ""
663
 
664
- #: wpc-smart-wishlist.php:1317
665
  msgid "Have an error"
666
  msgstr ""
667
 
668
- #: wpc-smart-wishlist.php:1429
669
  msgid "Community support"
670
  msgstr ""
671
 
672
- #: wpc-smart-wishlist.php:1509
673
  msgid "In stock"
674
  msgstr ""
675
 
676
- #: wpc-smart-wishlist.php:1509
677
  msgid "Out of stock"
678
  msgstr ""
679
 
680
- #: wpc-smart-wishlist.php:1930
681
- #: wpc-smart-wishlist.php:1933
682
- #: wpc-smart-wishlist.php:1997
683
- #: wpc-smart-wishlist.php:2000
684
  msgid "%s product"
685
  msgid_plural "%s products"
686
  msgstr[0] ""
687
  msgstr[1] ""
688
 
689
- #: wpc-smart-wishlist.php:1932
690
- #: wpc-smart-wishlist.php:1999
691
  msgid "Guest"
692
  msgstr ""
693
 
694
- #: wpc-smart-wishlist.php:1947
695
- #: wpc-smart-wishlist.php:1976
696
  msgid "Edit"
697
  msgstr ""
698
 
699
- #: wpc-smart-wishlist.php:1947
700
  msgid "See in wishlist"
701
  msgstr ""
702
 
703
- #: wpc-smart-wishlist.php:1955
704
  msgid "Empty Wishlist"
705
  msgstr ""
2
  # This file is distributed under the same license as the WPC Smart Wishlist for WooCommerce plugin.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WPC Smart Wishlist for WooCommerce 4.0.0\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/woo-smart-wishlist\n"
7
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8
  "Language-Team: LANGUAGE <LL@li.org>\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "POT-Creation-Date: 2022-06-08T10:50:38+00:00\n"
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
  "X-Generator: WP-CLI 2.5.0\n"
15
  "X-Domain: woo-smart-wishlist\n"
34
  msgid "https://wpclever.net"
35
  msgstr ""
36
 
37
+ #: wpc-smart-wishlist.php:284
38
+ #: wpc-smart-wishlist.php:337
39
+ #: wpc-smart-wishlist.php:380
40
+ #: wpc-smart-wishlist.php:1460
41
+ msgid "Please log in to use the Wishlist!"
42
+ msgstr ""
43
+
44
  #: wpc-smart-wishlist.php:285
45
+ #: wpc-smart-wishlist.php:354
46
+ #: wpc-smart-wishlist.php:398
47
+ #: wpc-smart-wishlist.php:413
48
+ #: wpc-smart-wishlist.php:1433
49
+ #: wpc-smart-wishlist.php:1685
50
+ msgid "There are no products on the Wishlist!"
51
  msgstr ""
52
 
53
+ #: wpc-smart-wishlist.php:303
54
+ #: wpc-smart-wishlist.php:1388
55
+ msgid "{name} has been added to Wishlist."
 
 
 
 
56
  msgstr ""
57
 
58
  #: wpc-smart-wishlist.php:305
59
+ #: wpc-smart-wishlist.php:1397
60
+ msgid "{name} is already in the Wishlist."
61
  msgstr ""
62
 
63
+ #: wpc-smart-wishlist.php:318
64
+ #: wpc-smart-wishlist.php:362
65
+ #: wpc-smart-wishlist.php:1478
66
+ msgid "Have an error, please try again!"
67
  msgstr ""
68
 
69
+ #: wpc-smart-wishlist.php:351
70
+ #: wpc-smart-wishlist.php:1406
71
+ msgid "Product has been removed from the Wishlist."
 
72
  msgstr ""
73
 
74
+ #: wpc-smart-wishlist.php:357
75
+ #: wpc-smart-wishlist.php:1451
76
+ msgid "The product does not exist on the Wishlist!"
77
  msgstr ""
78
 
79
+ #: wpc-smart-wishlist.php:397
80
+ #: wpc-smart-wishlist.php:1424
81
+ msgid "All products have been removed from the Wishlist!"
82
  msgstr ""
83
 
84
+ #: wpc-smart-wishlist.php:412
85
+ #: wpc-smart-wishlist.php:437
86
+ msgid "Please log in to use Wishlist!"
87
  msgstr ""
88
 
89
+ #: wpc-smart-wishlist.php:477
90
+ #: wpc-smart-wishlist.php:1267
91
+ #: wpc-smart-wishlist.php:1272
92
+ msgid "Add note"
93
  msgstr ""
94
 
95
+ #: wpc-smart-wishlist.php:625
96
+ #: wpc-smart-wishlist.php:1245
97
+ #: wpc-smart-wishlist.php:1551
98
  msgid "Browse wishlist"
99
  msgstr ""
100
 
101
+ #: wpc-smart-wishlist.php:627
102
+ #: wpc-smart-wishlist.php:1236
103
+ #: wpc-smart-wishlist.php:1550
104
  msgid "Add to wishlist"
105
  msgstr ""
106
 
107
+ #: wpc-smart-wishlist.php:660
108
+ #: wpc-smart-wishlist.php:1141
109
  msgid "Facebook"
110
  msgstr ""
111
 
112
+ #: wpc-smart-wishlist.php:661
113
+ #: wpc-smart-wishlist.php:1144
114
  msgid "Twitter"
115
  msgstr ""
116
 
117
+ #: wpc-smart-wishlist.php:662
118
+ #: wpc-smart-wishlist.php:1147
119
  msgid "Pinterest"
120
  msgstr ""
121
 
122
+ #: wpc-smart-wishlist.php:663
123
+ #: wpc-smart-wishlist.php:1150
124
  msgid "Mail"
125
  msgstr ""
126
 
127
+ #: wpc-smart-wishlist.php:673
128
  msgid "Share on:"
129
  msgstr ""
130
 
131
+ #: wpc-smart-wishlist.php:684
132
  msgid "Wishlist link:"
133
  msgstr ""
134
 
135
+ #: wpc-smart-wishlist.php:686
136
  msgid "Copy"
137
  msgstr ""
138
 
139
+ #: wpc-smart-wishlist.php:711
140
  msgid "Thank you for using our plugin! If you are satisfied, please reward it a full five-star %s rating."
141
  msgstr ""
142
 
143
+ #: wpc-smart-wishlist.php:714
144
  msgid "Reviews"
145
  msgstr ""
146
 
147
+ #: wpc-smart-wishlist.php:716
148
  msgid "Changelog"
149
  msgstr ""
150
 
151
+ #: wpc-smart-wishlist.php:718
152
  msgid "Discussion"
153
  msgstr ""
154
 
155
+ #: wpc-smart-wishlist.php:725
156
+ #: wpc-smart-wishlist.php:1574
157
  msgid "Settings"
158
  msgstr ""
159
 
160
+ #: wpc-smart-wishlist.php:729
161
+ #: wpc-smart-wishlist.php:1225
162
  msgid "Localization"
163
  msgstr ""
164
 
165
+ #: wpc-smart-wishlist.php:734
166
+ #: wpc-smart-wishlist.php:1575
167
  msgid "Premium Version"
168
  msgstr ""
169
 
170
+ #: wpc-smart-wishlist.php:737
171
  msgid "Essential Kit"
172
  msgstr ""
173
 
174
+ #: wpc-smart-wishlist.php:752
175
  msgid "General"
176
  msgstr ""
177
 
178
+ #: wpc-smart-wishlist.php:756
179
  msgid "Disable the wishlist for unauthenticated users"
180
  msgstr ""
181
 
182
+ #: wpc-smart-wishlist.php:760
183
+ #: wpc-smart-wishlist.php:773
184
+ #: wpc-smart-wishlist.php:797
185
+ #: wpc-smart-wishlist.php:999
186
+ #: wpc-smart-wishlist.php:1045
187
+ #: wpc-smart-wishlist.php:1064
188
+ #: wpc-smart-wishlist.php:1107
189
+ #: wpc-smart-wishlist.php:1121
190
+ #: wpc-smart-wishlist.php:1160
191
  msgid "Yes"
192
  msgstr ""
193
 
194
+ #: wpc-smart-wishlist.php:763
195
+ #: wpc-smart-wishlist.php:776
196
+ #: wpc-smart-wishlist.php:800
197
+ #: wpc-smart-wishlist.php:1002
198
+ #: wpc-smart-wishlist.php:1032
199
+ #: wpc-smart-wishlist.php:1048
200
+ #: wpc-smart-wishlist.php:1067
201
+ #: wpc-smart-wishlist.php:1110
202
+ #: wpc-smart-wishlist.php:1124
203
+ #: wpc-smart-wishlist.php:1163
204
  msgid "No"
205
  msgstr ""
206
 
207
+ #: wpc-smart-wishlist.php:769
208
  msgid "Auto remove"
209
  msgstr ""
210
 
211
+ #: wpc-smart-wishlist.php:779
212
  msgid "Auto remove product from the wishlist after adding to the cart."
213
  msgstr ""
214
 
215
+ #: wpc-smart-wishlist.php:784
216
+ #: wpc-smart-wishlist.php:1312
217
  msgid "Multiple Wishlist"
218
  msgstr ""
219
 
220
+ #: wpc-smart-wishlist.php:793
221
  msgid "Enable"
222
  msgstr ""
223
 
224
+ #: wpc-smart-wishlist.php:803
225
  msgid "Enable/disable multiple wishlist."
226
  msgstr ""
227
 
228
+ #: wpc-smart-wishlist.php:807
229
  msgid "Maximum wishlists per user"
230
  msgstr ""
231
 
232
+ #: wpc-smart-wishlist.php:815
233
+ #: wpc-smart-wishlist.php:826
234
  msgid "Button"
235
  msgstr ""
236
 
237
+ #: wpc-smart-wishlist.php:818
238
  msgid "Settings for \"Add to wishlist\" button."
239
  msgstr ""
240
 
241
+ #: wpc-smart-wishlist.php:822
242
  msgid "Type"
243
  msgstr ""
244
 
245
+ #: wpc-smart-wishlist.php:829
246
  msgid "Link"
247
  msgstr ""
248
 
249
+ #: wpc-smart-wishlist.php:835
250
+ #: wpc-smart-wishlist.php:1196
251
  msgid "Action"
252
  msgstr ""
253
 
254
+ #: wpc-smart-wishlist.php:839
255
  msgid "Show message"
256
  msgstr ""
257
 
258
+ #: wpc-smart-wishlist.php:842
259
  msgid "Show product list"
260
  msgstr ""
261
 
262
+ #: wpc-smart-wishlist.php:845
263
  msgid "Add to wishlist solely"
264
  msgstr ""
265
 
266
+ #: wpc-smart-wishlist.php:848
267
  msgid "Action triggered by clicking on the wishlist button."
268
  msgstr ""
269
 
270
+ #: wpc-smart-wishlist.php:852
271
+ msgid "Message position"
272
+ msgstr ""
273
+
274
+ #: wpc-smart-wishlist.php:856
275
+ msgid "right-top"
276
+ msgstr ""
277
+
278
+ #: wpc-smart-wishlist.php:859
279
+ msgid "right-bottom"
280
+ msgstr ""
281
+
282
+ #: wpc-smart-wishlist.php:862
283
+ msgid "center-top"
284
+ msgstr ""
285
+
286
+ #: wpc-smart-wishlist.php:865
287
+ msgid "center-bottom"
288
+ msgstr ""
289
+
290
+ #: wpc-smart-wishlist.php:868
291
+ msgid "left-top"
292
+ msgstr ""
293
+
294
+ #: wpc-smart-wishlist.php:871
295
+ msgid "left-bottom"
296
+ msgstr ""
297
+
298
+ #: wpc-smart-wishlist.php:877
299
  msgid "Action (added)"
300
  msgstr ""
301
 
302
+ #: wpc-smart-wishlist.php:881
303
  msgid "Open wishlist popup"
304
  msgstr ""
305
 
306
+ #: wpc-smart-wishlist.php:884
307
+ #: wpc-smart-wishlist.php:1285
308
+ #: wpc-smart-wishlist.php:1290
309
+ #: wpc-smart-wishlist.php:1782
310
  msgid "Open wishlist page"
311
  msgstr ""
312
 
313
+ #: wpc-smart-wishlist.php:887
314
  msgid "Action triggered by clicking on the wishlist button after adding an item to the wishlist."
315
  msgstr ""
316
 
317
+ #: wpc-smart-wishlist.php:891
318
  msgid "Extra class (optional)"
319
  msgstr ""
320
 
321
+ #: wpc-smart-wishlist.php:895
322
  msgid "Add extra class for action button/link, split by one space."
323
  msgstr ""
324
 
325
+ #: wpc-smart-wishlist.php:899
326
  msgid "Position on archive page"
327
  msgstr ""
328
 
329
+ #: wpc-smart-wishlist.php:904
330
+ #: wpc-smart-wishlist.php:931
331
  msgid "Under title"
332
  msgstr ""
333
 
334
+ #: wpc-smart-wishlist.php:905
335
+ #: wpc-smart-wishlist.php:932
336
  msgid "Under rating"
337
  msgstr ""
338
 
339
+ #: wpc-smart-wishlist.php:906
340
  msgid "Under price"
341
  msgstr ""
342
 
343
+ #: wpc-smart-wishlist.php:907
344
+ #: wpc-smart-wishlist.php:934
345
  msgid "Above add to cart button"
346
  msgstr ""
347
 
348
+ #: wpc-smart-wishlist.php:908
349
+ #: wpc-smart-wishlist.php:935
350
  msgid "Under add to cart button"
351
  msgstr ""
352
 
353
+ #: wpc-smart-wishlist.php:909
354
+ #: wpc-smart-wishlist.php:938
355
  msgid "None (hide it)"
356
  msgstr ""
357
 
358
+ #: wpc-smart-wishlist.php:926
359
  msgid "Position on single page"
360
  msgstr ""
361
 
362
+ #: wpc-smart-wishlist.php:933
363
  msgid "Under excerpt"
364
  msgstr ""
365
 
366
+ #: wpc-smart-wishlist.php:936
367
  msgid "Under meta"
368
  msgstr ""
369
 
370
+ #: wpc-smart-wishlist.php:937
371
  msgid "Under sharing"
372
  msgstr ""
373
 
374
+ #: wpc-smart-wishlist.php:955
375
  msgid "Shortcode"
376
  msgstr ""
377
 
378
+ #: wpc-smart-wishlist.php:958
379
  msgid "You can add a button manually by using the shortcode %s, eg. %s for the product whose ID is 99."
380
  msgstr ""
381
 
382
+ #: wpc-smart-wishlist.php:963
383
  msgid "Categories"
384
  msgstr ""
385
 
386
+ #: wpc-smart-wishlist.php:978
387
  msgid "All categories"
388
  msgstr ""
389
 
390
+ #: wpc-smart-wishlist.php:983
391
  msgid "Only show the wishlist button for products in selected categories."
392
  msgstr ""
393
 
394
+ #: wpc-smart-wishlist.php:988
395
  msgid "Popup"
396
  msgstr ""
397
 
398
+ #: wpc-smart-wishlist.php:991
399
  msgid "Settings for the wishlist popup."
400
  msgstr ""
401
 
402
+ #: wpc-smart-wishlist.php:995
403
  msgid "Use perfect-scrollbar"
404
  msgstr ""
405
 
406
+ #: wpc-smart-wishlist.php:1005
407
  msgid "Read more about %s"
408
  msgstr ""
409
 
410
+ #: wpc-smart-wishlist.php:1009
411
  msgid "Color"
412
  msgstr ""
413
 
414
+ #: wpc-smart-wishlist.php:1015
415
  msgid "Choose the color, default %s"
416
  msgstr ""
417
 
418
+ #: wpc-smart-wishlist.php:1019
419
  msgid "Link to individual product"
420
  msgstr ""
421
 
422
+ #: wpc-smart-wishlist.php:1023
423
  msgid "Yes, open in the same tab"
424
  msgstr ""
425
 
426
+ #: wpc-smart-wishlist.php:1026
427
  msgid "Yes, open in the new tab"
428
  msgstr ""
429
 
430
+ #: wpc-smart-wishlist.php:1029
431
  msgid "Yes, open quick view popup"
432
  msgstr ""
433
 
434
+ #: wpc-smart-wishlist.php:1041
435
  msgid "Show note"
436
  msgstr ""
437
 
438
+ #: wpc-smart-wishlist.php:1051
439
  msgid "Show note on each product for all visitors. Only wishlist owner can add/edit these notes."
440
  msgstr ""
441
 
442
+ #: wpc-smart-wishlist.php:1060
443
+ #: wpc-smart-wishlist.php:1258
444
  msgid "Empty wishlist button"
445
  msgstr ""
446
 
447
+ #: wpc-smart-wishlist.php:1070
448
  msgid "Show empty wishlist button on the popup?"
449
  msgstr ""
450
 
451
+ #: wpc-smart-wishlist.php:1074
452
  msgid "Continue shopping link"
453
  msgstr ""
454
 
455
+ #: wpc-smart-wishlist.php:1079
456
  msgid "By default, the wishlist popup will only be closed when customers click on the \"Continue Shopping\" button."
457
  msgstr ""
458
 
459
+ #: wpc-smart-wishlist.php:1084
460
  msgid "Page"
461
  msgstr ""
462
 
463
+ #: wpc-smart-wishlist.php:1087
464
  msgid "Settings for wishlist page."
465
  msgstr ""
466
 
467
+ #: wpc-smart-wishlist.php:1091
468
  msgid "Wishlist page"
469
  msgstr ""
470
 
471
+ #: wpc-smart-wishlist.php:1096
472
  msgid "Choose a page"
473
  msgstr ""
474
 
475
+ #: wpc-smart-wishlist.php:1099
476
  msgid "Add shortcode %s to display the wishlist on a page."
477
  msgstr ""
478
 
479
+ #: wpc-smart-wishlist.php:1103
480
  msgid "Share buttons"
481
  msgstr ""
482
 
483
+ #: wpc-smart-wishlist.php:1113
484
  msgid "Enable share buttons on the wishlist page?"
485
  msgstr ""
486
 
487
+ #: wpc-smart-wishlist.php:1117
488
  msgid "Use font icon"
489
  msgstr ""
490
 
491
+ #: wpc-smart-wishlist.php:1130
492
  msgid "Social links"
493
  msgstr ""
494
 
495
+ #: wpc-smart-wishlist.php:1156
496
  msgid "Copy link"
497
  msgstr ""
498
 
499
+ #: wpc-smart-wishlist.php:1166
500
  msgid "Enable copy wishlist link to share?"
501
  msgstr ""
502
 
503
+ #: wpc-smart-wishlist.php:1171
504
  msgid "Menu"
505
  msgstr ""
506
 
507
+ #: wpc-smart-wishlist.php:1174
508
  msgid "Settings for the wishlist menu item."
509
  msgstr ""
510
 
511
+ #: wpc-smart-wishlist.php:1178
512
  msgid "Menu(s)"
513
  msgstr ""
514
 
515
+ #: wpc-smart-wishlist.php:1192
516
  msgid "Choose the menu(s) you want to add the \"wishlist menu\" at the end."
517
  msgstr ""
518
 
519
+ #: wpc-smart-wishlist.php:1200
520
  msgid "Open page"
521
  msgstr ""
522
 
523
+ #: wpc-smart-wishlist.php:1203
524
  msgid "Open popup"
525
  msgstr ""
526
 
527
+ #: wpc-smart-wishlist.php:1206
528
  msgid "Action when clicking on the \"wishlist menu\"."
529
  msgstr ""
530
 
531
+ #: wpc-smart-wishlist.php:1212
532
+ #: wpc-smart-wishlist.php:1484
533
  msgid "Update Options"
534
  msgstr ""
535
 
536
+ #: wpc-smart-wishlist.php:1227
537
  msgid "Leave blank to use the default text and its equivalent translation in multiple languages."
538
  msgstr ""
539
 
540
+ #: wpc-smart-wishlist.php:1231
541
  msgid "Button text"
542
  msgstr ""
543
 
544
+ #: wpc-smart-wishlist.php:1240
545
  msgid "Button text (added)"
546
  msgstr ""
547
 
548
+ #: wpc-smart-wishlist.php:1249
549
  msgid "Wishlist popup heading"
550
  msgstr ""
551
 
552
+ #: wpc-smart-wishlist.php:1254
553
+ #: wpc-smart-wishlist.php:1308
554
+ #: wpc-smart-wishlist.php:1321
555
+ #: wpc-smart-wishlist.php:1549
556
+ #: wpc-smart-wishlist.php:1726
557
+ #: wpc-smart-wishlist.php:1752
558
+ #: wpc-smart-wishlist.php:1825
559
+ #: wpc-smart-wishlist.php:2026
560
+ #: wpc-smart-wishlist.php:2107
561
+ #: wpc-smart-wishlist.php:2114
562
+ #: wpc-smart-wishlist.php:2305
563
  msgid "Wishlist"
564
  msgstr ""
565
 
566
+ #: wpc-smart-wishlist.php:1263
567
+ #: wpc-smart-wishlist.php:1765
568
  msgid "remove all"
569
  msgstr ""
570
 
571
+ #: wpc-smart-wishlist.php:1276
 
 
 
 
 
572
  msgid "Save note"
573
  msgstr ""
574
 
575
+ #: wpc-smart-wishlist.php:1281
576
  msgid "Save"
577
  msgstr ""
578
 
579
+ #: wpc-smart-wishlist.php:1294
580
+ #: wpc-smart-wishlist.php:1299
581
+ #: wpc-smart-wishlist.php:1786
582
  msgid "Continue shopping"
583
  msgstr ""
584
 
585
+ #: wpc-smart-wishlist.php:1303
586
  msgid "Menu item label"
587
  msgstr ""
588
 
589
+ #: wpc-smart-wishlist.php:1316
590
  msgid "Primary wishlist name"
591
  msgstr ""
592
 
593
+ #: wpc-smart-wishlist.php:1325
594
+ #: wpc-smart-wishlist.php:1330
595
+ #: wpc-smart-wishlist.php:1802
596
  msgid "Manage wishlists"
597
  msgstr ""
598
 
599
+ #: wpc-smart-wishlist.php:1334
600
  msgid "Set default"
601
  msgstr ""
602
 
603
+ #: wpc-smart-wishlist.php:1339
604
+ #: wpc-smart-wishlist.php:1839
605
  msgid "set default"
606
  msgstr ""
607
 
608
+ #: wpc-smart-wishlist.php:1343
609
  msgid "Default"
610
  msgstr ""
611
 
612
+ #: wpc-smart-wishlist.php:1348
613
+ #: wpc-smart-wishlist.php:1837
614
  msgid "default"
615
  msgstr ""
616
 
617
+ #: wpc-smart-wishlist.php:1352
618
  msgid "Delete"
619
  msgstr ""
620
 
621
+ #: wpc-smart-wishlist.php:1357
622
+ #: wpc-smart-wishlist.php:1845
623
  msgid "delete"
624
  msgstr ""
625
 
626
+ #: wpc-smart-wishlist.php:1361
627
  msgid "Wishlist name placeholder"
628
  msgstr ""
629
 
630
+ #: wpc-smart-wishlist.php:1366
631
+ #: wpc-smart-wishlist.php:1856
632
  msgid "New Wishlist"
633
  msgstr ""
634
 
635
+ #: wpc-smart-wishlist.php:1370
636
  msgid "Add new wishlist"
637
  msgstr ""
638
 
639
+ #: wpc-smart-wishlist.php:1375
640
+ #: wpc-smart-wishlist.php:1858
641
  msgid "Add New Wishlist"
642
  msgstr ""
643
 
644
+ #: wpc-smart-wishlist.php:1379
645
  msgid "Message"
646
  msgstr ""
647
 
648
+ #: wpc-smart-wishlist.php:1383
649
  msgid "Added to the wishlist"
650
  msgstr ""
651
 
652
+ #: wpc-smart-wishlist.php:1392
653
  msgid "Already in the wishlist"
654
  msgstr ""
655
 
656
+ #: wpc-smart-wishlist.php:1401
657
  msgid "Removed from wishlist"
658
  msgstr ""
659
 
660
+ #: wpc-smart-wishlist.php:1410
661
  msgid "Empty wishlist confirm"
662
  msgstr ""
663
 
664
+ #: wpc-smart-wishlist.php:1415
665
+ #: wpc-smart-wishlist.php:1442
666
+ #: wpc-smart-wishlist.php:1546
667
+ #: wpc-smart-wishlist.php:1547
668
  msgid "This action cannot be undone. Are you sure?"
669
  msgstr ""
670
 
671
+ #: wpc-smart-wishlist.php:1419
672
  msgid "Empty wishlist notice"
673
  msgstr ""
674
 
675
+ #: wpc-smart-wishlist.php:1428
676
  msgid "Empty wishlist"
677
  msgstr ""
678
 
679
+ #: wpc-smart-wishlist.php:1437
680
  msgid "Delete wishlist confirm"
681
  msgstr ""
682
 
683
+ #: wpc-smart-wishlist.php:1446
684
  msgid "Product does not exist"
685
  msgstr ""
686
 
687
+ #: wpc-smart-wishlist.php:1455
688
  msgid "Need to login"
689
  msgstr ""
690
 
691
+ #: wpc-smart-wishlist.php:1464
692
  msgid "Copied wishlist link"
693
  msgstr ""
694
 
695
+ #: wpc-smart-wishlist.php:1469
696
+ #: wpc-smart-wishlist.php:1548
697
  msgid "Copied the wishlist link:"
698
  msgstr ""
699
 
700
+ #: wpc-smart-wishlist.php:1473
701
  msgid "Have an error"
702
  msgstr ""
703
 
704
+ #: wpc-smart-wishlist.php:1591
705
  msgid "Community support"
706
  msgstr ""
707
 
708
+ #: wpc-smart-wishlist.php:1666
709
  msgid "In stock"
710
  msgstr ""
711
 
712
+ #: wpc-smart-wishlist.php:1666
713
  msgid "Out of stock"
714
  msgstr ""
715
 
716
+ #: wpc-smart-wishlist.php:2160
717
+ #: wpc-smart-wishlist.php:2163
718
+ #: wpc-smart-wishlist.php:2227
719
+ #: wpc-smart-wishlist.php:2230
720
  msgid "%s product"
721
  msgid_plural "%s products"
722
  msgstr[0] ""
723
  msgstr[1] ""
724
 
725
+ #: wpc-smart-wishlist.php:2162
726
+ #: wpc-smart-wishlist.php:2229
727
  msgid "Guest"
728
  msgstr ""
729
 
730
+ #: wpc-smart-wishlist.php:2177
731
+ #: wpc-smart-wishlist.php:2206
732
  msgid "Edit"
733
  msgstr ""
734
 
735
+ #: wpc-smart-wishlist.php:2177
736
  msgid "See in wishlist"
737
  msgstr ""
738
 
739
+ #: wpc-smart-wishlist.php:2185
740
  msgid "Empty Wishlist"
741
  msgstr ""
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://wpclever.net
4
  Tags: woocommerce, woo, wpc, smart, wishlist, wish list
5
  Requires at least: 4.0
6
  Tested up to: 6.0
7
- Stable tag: 3.0.6
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -16,7 +16,7 @@ WPC Smart Wishlist is a simple but powerful tool that can help your customer sav
16
 
17
  = Live demo =
18
 
19
- Visit our [live demo](https://demo.wpclever.net/woosw/ "live demo") here to see how this plugin works.
20
 
21
  = Features =
22
 
@@ -106,6 +106,10 @@ Example:
106
 
107
  == Changelog ==
108
 
 
 
 
 
109
  = 3.0.6 =
110
  * Updated: Backward compatibility with WPC themes
111
 
4
  Tags: woocommerce, woo, wpc, smart, wishlist, wish list
5
  Requires at least: 4.0
6
  Tested up to: 6.0
7
+ Stable tag: 4.0.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
16
 
17
  = Live demo =
18
 
19
+ Visit our [live demo 01](https://demo.wpclever.net/woosw/ "live demo 01") or [live demo 02](https://demo.wpclever.net/wpcplant/ "live demo 02") to see how this plugin works.
20
 
21
  = Features =
22
 
106
 
107
  == Changelog ==
108
 
109
+ = 4.0.0 =
110
+ * Updated: New message interface
111
+ * Updated: Optimized the code
112
+
113
  = 3.0.6 =
114
  * Updated: Backward compatibility with WPC themes
115
 
wpc-smart-wishlist.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: WPC Smart Wishlist for WooCommerce
4
  Plugin URI: https://wpclever.net/
5
  Description: WPC Smart Wishlist is a simple but powerful tool that can help your customer save products for buy later.
6
- Version: 3.0.6
7
  Author: WPClever
8
  Author URI: https://wpclever.net
9
  Text Domain: woo-smart-wishlist
@@ -11,12 +11,12 @@ Domain Path: /languages/
11
  Requires at least: 4.0
12
  Tested up to: 6.0
13
  WC requires at least: 3.0
14
- WC tested up to: 6.5
15
  */
16
 
17
  defined( 'ABSPATH' ) || exit;
18
 
19
- ! defined( 'WOOSW_VERSION' ) && define( 'WOOSW_VERSION', '3.0.6' );
20
  ! defined( 'WOOSW_FILE' ) && define( 'WOOSW_FILE', __FILE__ );
21
  ! defined( 'WOOSW_URI' ) && define( 'WOOSW_URI', plugin_dir_url( __FILE__ ) );
22
  ! defined( 'WOOSW_DIR' ) && define( 'WOOSW_DIR', plugin_dir_path( __FILE__ ) );
@@ -28,7 +28,6 @@ defined( 'ABSPATH' ) || exit;
28
  include 'includes/wpc-dashboard.php';
29
  include 'includes/wpc-menu.php';
30
  include 'includes/wpc-kit.php';
31
- //include 'includes/wpc-notice.php';
32
 
33
  // plugin activate
34
  register_activation_hook( __FILE__, 'woosw_plugin_activate' );
@@ -282,9 +281,8 @@ if ( ! function_exists( 'woosw_init' ) ) {
282
  if ( ( $product_id = (int) sanitize_text_field( $_POST['product_id'] ) ) > 0 ) {
283
  if ( $key === '#' ) {
284
  $return['status'] = 0;
285
- $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use the wishlist!', 'woo-smart-wishlist' ) );
286
- $return['content'] = self::wishlist_content( $key, self::localization( 'empty_message', esc_html__( 'There are no products on the wishlist!', 'woo-smart-wishlist' ) ) );
287
- $return['image'] = WOOSW_URI . 'assets/images/heart_error.svg';
288
  } else {
289
  $products = array();
290
 
@@ -302,11 +300,9 @@ if ( ! function_exists( 'woosw_init' ) ) {
302
  ) + $products;
303
  update_option( 'woosw_list_' . $key, $products );
304
  self::update_product_count( $product_id, 'add' );
305
- $return['notice'] = self::localization( 'added_message', esc_html__( 'Added to the wishlist!', 'woo-smart-wishlist' ) );
306
- $return['image'] = WOOSW_URI . 'assets/images/heart_add.svg';
307
  } else {
308
- $return['notice'] = self::localization( 'already_message', esc_html__( 'Already in the wishlist!', 'woo-smart-wishlist' ) );
309
- $return['image'] = WOOSW_URI . 'assets/images/heart_duplicate.svg';
310
  }
311
 
312
  $return['status'] = 1;
@@ -320,13 +316,12 @@ if ( ! function_exists( 'woosw_init' ) ) {
320
  $product_id = 0;
321
  $return['status'] = 0;
322
  $return['notice'] = self::localization( 'error_message', esc_html__( 'Have an error, please try again!', 'woo-smart-wishlist' ) );
323
- $return['image'] = WOOSW_URI . 'assets/images/heart_error.svg';
324
  }
325
 
326
  do_action( 'woosw_add', $product_id, $key );
327
 
328
- echo json_encode( $return );
329
- die();
330
  }
331
 
332
  function wishlist_remove() {
@@ -339,7 +334,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
339
 
340
  if ( ( $product_id = (int) sanitize_text_field( $_POST['product_id'] ) ) > 0 ) {
341
  if ( $key === '#' ) {
342
- $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use the wishlist!', 'woo-smart-wishlist' ) );
343
  } else {
344
  $products = array();
345
 
@@ -353,13 +348,13 @@ if ( ! function_exists( 'woosw_init' ) ) {
353
  self::update_product_count( $product_id, 'remove' );
354
  $return['count'] = count( $products );
355
  $return['status'] = 1;
356
- $return['notice'] = self::localization( 'removed_message', esc_html__( 'Removed from wishlist!', 'woo-smart-wishlist' ) );
357
 
358
  if ( empty( $products ) ) {
359
- $return['content'] = self::wishlist_content( $key, self::localization( 'empty_message', esc_html__( 'There are no products on the wishlist!', 'woo-smart-wishlist' ) ) ) . '</div>';
360
  }
361
  } else {
362
- $return['notice'] = self::localization( 'not_exist_message', esc_html__( 'The product does not exist on the wishlist!', 'woo-smart-wishlist' ) );
363
  }
364
  }
365
  } else {
@@ -369,8 +364,8 @@ if ( ! function_exists( 'woosw_init' ) ) {
369
 
370
  do_action( 'woosw_remove', $product_id, $key );
371
 
372
- echo json_encode( $return );
373
- die();
374
  }
375
 
376
  function wishlist_empty() {
@@ -382,7 +377,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
382
  }
383
 
384
  if ( $key === '#' ) {
385
- $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use the wishlist!', 'woo-smart-wishlist' ) );
386
  } else {
387
  if ( get_option( 'woosw_list_' . $key ) ) {
388
  $products = get_option( 'woosw_list_' . $key );
@@ -399,14 +394,14 @@ if ( ! function_exists( 'woosw_init' ) ) {
399
  update_option( 'woosw_list_' . $key, array() );
400
  $return['status'] = 1;
401
  $return['count'] = 0;
402
- $return['notice'] = self::localization( 'empty_notice', esc_html__( 'All products were removed from your wishlist!', 'woo-smart-wishlist' ) );
403
- $return['content'] = self::wishlist_content( $key, self::localization( 'empty_message', esc_html__( 'There are no products on the wishlist!', 'woo-smart-wishlist' ) ) );
404
  }
405
 
406
  do_action( 'woosw_empty', $key );
407
 
408
- echo json_encode( $return );
409
- die();
410
  }
411
 
412
  function wishlist_load() {
@@ -414,8 +409,8 @@ if ( ! function_exists( 'woosw_init' ) ) {
414
  $key = self::get_key();
415
 
416
  if ( $key === '#' ) {
417
- $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use wishlist!', 'woo-smart-wishlist' ) );
418
- $return['content'] = self::wishlist_content( $key, self::localization( 'empty_message', esc_html__( 'There are no products on the wishlist!', 'woo-smart-wishlist' ) ) );
419
  } else {
420
  $products = array();
421
 
@@ -430,8 +425,8 @@ if ( ! function_exists( 'woosw_init' ) ) {
430
 
431
  do_action( 'woosw_load', $key );
432
 
433
- echo json_encode( $return );
434
- die();
435
  }
436
 
437
  function wishlist_load_count() {
@@ -439,7 +434,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
439
  $key = self::get_key();
440
 
441
  if ( $key === '#' ) {
442
- $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use wishlist!', 'woo-smart-wishlist' ) );
443
  } else {
444
  $products = array();
445
 
@@ -453,8 +448,135 @@ if ( ! function_exists( 'woosw_init' ) ) {
453
 
454
  do_action( 'wishlist_load_count', $key );
455
 
456
- echo json_encode( $return );
457
- die();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
458
  }
459
 
460
  function add_button() {
@@ -462,7 +584,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
462
  }
463
 
464
  function shortcode( $attrs ) {
465
- $output = '';
466
 
467
  $attrs = shortcode_atts( array(
468
  'id' => null,
@@ -473,7 +595,16 @@ if ( ! function_exists( 'woosw_init' ) ) {
473
  global $product;
474
 
475
  if ( $product ) {
476
- $attrs['id'] = $product->get_id();
 
 
 
 
 
 
 
 
 
477
  }
478
  }
479
 
@@ -501,9 +632,9 @@ if ( ! function_exists( 'woosw_init' ) ) {
501
  }
502
 
503
  if ( $attrs['type'] === 'link' ) {
504
- $output = '<a href="' . esc_url( '?add-to-wishlist=' . $attrs['id'] ) . '" class="' . esc_attr( $class ) . '" data-id="' . esc_attr( $attrs['id'] ) . '">' . esc_html( $text ) . '</a>';
505
  } else {
506
- $output = '<button class="' . esc_attr( $class ) . '" data-id="' . esc_attr( $attrs['id'] ) . '">' . esc_html( $text ) . '</button>';
507
  }
508
  }
509
 
@@ -717,6 +848,31 @@ if ( ! function_exists( 'woosw_init' ) ) {
717
  <span class="description"><?php esc_html_e( 'Action triggered by clicking on the wishlist button.', 'woo-smart-wishlist' ); ?></span>
718
  </td>
719
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
720
  <tr>
721
  <th scope="row"><?php esc_html_e( 'Action (added)', 'woo-smart-wishlist' ); ?></th>
722
  <td>
@@ -1056,7 +1212,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1056
  value="<?php esc_html_e( 'Update Options', 'woo-smart-wishlist' ); ?>"/>
1057
  <input type="hidden" name="action" value="update"/>
1058
  <input type="hidden" name="page_options"
1059
- value="woosw_disable_unauthenticated,woosw_auto_remove,woosw_enable_multiple,woosw_maximum_wishlists,woosw_link,woosw_show_note,woosw_page_id,woosw_page_share,woosw_page_icon,woosw_page_items,woosw_page_copy,woosw_button_type,woosw_button_text,woosw_button_action,woosw_button_text_added,woosw_button_action_added,woosw_button_class,woosw_button_position_archive,woosw_button_position_single,woosw_cats,woosw_perfect_scrollbar,woosw_color,woosw_empty_button,woosw_continue_url,woosw_menus,woosw_menu_action"/>
1060
  </th>
1061
  </tr>
1062
  </table>
@@ -1229,7 +1385,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1229
  <input type="text" class="regular-text"
1230
  name="woosw_localization[added_message]"
1231
  value="<?php echo esc_attr( self::localization( 'added_message' ) ); ?>"
1232
- placeholder="<?php esc_attr_e( 'Added to the wishlist!', 'woo-smart-wishlist' ); ?>"/>
1233
  </td>
1234
  </tr>
1235
  <tr>
@@ -1238,7 +1394,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1238
  <input type="text" class="regular-text"
1239
  name="woosw_localization[already_message]"
1240
  value="<?php echo esc_attr( self::localization( 'already_message' ) ); ?>"
1241
- placeholder="<?php esc_attr_e( 'Already in the wishlist!', 'woo-smart-wishlist' ); ?>"/>
1242
  </td>
1243
  </tr>
1244
  <tr>
@@ -1247,7 +1403,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1247
  <input type="text" class="regular-text"
1248
  name="woosw_localization[removed_message]"
1249
  value="<?php echo esc_attr( self::localization( 'removed_message' ) ); ?>"
1250
- placeholder="<?php esc_attr_e( 'Removed from wishlist!', 'woo-smart-wishlist' ); ?>"/>
1251
  </td>
1252
  </tr>
1253
  <tr>
@@ -1265,7 +1421,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1265
  <input type="text" class="regular-text"
1266
  name="woosw_localization[empty_notice]"
1267
  value="<?php echo esc_attr( self::localization( 'empty_notice' ) ); ?>"
1268
- placeholder="<?php esc_attr_e( 'All products were removed from your wishlist!', 'woo-smart-wishlist' ); ?>"/>
1269
  </td>
1270
  </tr>
1271
  <tr>
@@ -1274,7 +1430,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1274
  <input type="text" class="regular-text"
1275
  name="woosw_localization[empty_message]"
1276
  value="<?php echo esc_attr( self::localization( 'empty_message' ) ); ?>"
1277
- placeholder="<?php esc_attr_e( 'There are no products on the wishlist!', 'woo-smart-wishlist' ); ?>"/>
1278
  </td>
1279
  </tr>
1280
  <tr>
@@ -1292,7 +1448,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1292
  <input type="text" class="regular-text"
1293
  name="woosw_localization[not_exist_message]"
1294
  value="<?php echo esc_attr( self::localization( 'not_exist_message' ) ); ?>"
1295
- placeholder="<?php esc_attr_e( 'The product does not exist on the wishlist!', 'woo-smart-wishlist' ); ?>"/>
1296
  </td>
1297
  </tr>
1298
  <tr>
@@ -1301,7 +1457,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1301
  <input type="text" class="regular-text"
1302
  name="woosw_localization[login_message]"
1303
  value="<?php echo esc_attr( self::localization( 'login_message' ) ); ?>"
1304
- placeholder="<?php esc_attr_e( 'Please log in to use the wishlist!', 'woo-smart-wishlist' ); ?>"/>
1305
  </td>
1306
  </tr>
1307
  <tr>
@@ -1362,6 +1518,11 @@ if ( ! function_exists( 'woosw_init' ) ) {
1362
  // feather icons
1363
  wp_enqueue_style( 'woosw-feather', WOOSW_URI . 'assets/libs/feather/feather.css' );
1364
 
 
 
 
 
 
1365
  // main style
1366
  wp_enqueue_style( 'woosw-frontend', WOOSW_URI . 'assets/css/frontend.css', array(), WOOSW_VERSION );
1367
  $color_default = apply_filters( 'woosw_color_default', '#5fbd74' );
@@ -1380,6 +1541,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1380
  'perfect_scrollbar' => get_option( 'woosw_perfect_scrollbar', 'yes' ),
1381
  'wishlist_url' => self::get_url(),
1382
  'button_action' => get_option( 'woosw_button_action', 'list' ),
 
1383
  'button_action_added' => get_option( 'woosw_button_action_added', 'popup' ),
1384
  'empty_confirm' => self::localization( 'empty_confirm', esc_html__( 'This action cannot be undone. Are you sure?', 'woo-smart-wishlist' ) ),
1385
  'delete_confirm' => self::localization( 'delete_confirm', esc_html__( 'This action cannot be undone. Are you sure?', 'woo-smart-wishlist' ) ),
@@ -1461,12 +1623,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1461
  // for old version
1462
  $product_time = date_i18n( get_option( 'date_format' ), $product_data );
1463
  }
1464
-
1465
- if ( is_array( $product_data ) && ! empty( $product_data['note'] ) ) {
1466
- $product_note = $product_data['note'];
1467
- } else {
1468
- $product_note = '';
1469
- } ?>
1470
  <tr class="<?php echo esc_attr( 'woosw-item woosw-item-' . $product_id ); ?>"
1471
  data-id="<?php echo esc_attr( $product_id ); ?>">
1472
 
@@ -1525,7 +1682,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1525
  echo '</table>';
1526
  } else { ?>
1527
  <div class="woosw-popup-content-mid-massage">
1528
- <?php echo self::localization( 'empty_message', esc_html__( 'There are no products on the wishlist!', 'woo-smart-wishlist' ) ); ?>
1529
  </div>
1530
  <?php }
1531
 
@@ -1637,6 +1794,79 @@ if ( ! function_exists( 'woosw_init' ) ) {
1637
  return ob_get_clean();
1638
  }
1639
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1640
  function update_product_count( $product_id, $action = 'add' ) {
1641
  $meta_count = 'woosw_count';
1642
  $meta_time = ( $action === 'add' ? 'woosw_add' : 'woosw_remove' );
@@ -1985,7 +2215,7 @@ if ( ! function_exists( 'woosw_init' ) ) {
1985
  $user = $wpdb->get_results( $wpdb->prepare( 'SELECT user_id FROM `' . $wpdb->prefix . 'usermeta` WHERE `meta_key` = "woosw_key" AND `meta_value` = "%s" LIMIT 1', $key ) );
1986
 
1987
  echo '<div class="woosw-quickview-item">';
1988
- echo '<div class="woosw-quickview-item-image"><a href="' . esc_url( self::get_url( $key, true ) ) . '" target="_blank">#' . $key . '</a></div>';
1989
  echo '<div class="woosw-quickview-item-info">';
1990
 
1991
  if ( ! empty( $user ) ) {
3
  Plugin Name: WPC Smart Wishlist for WooCommerce
4
  Plugin URI: https://wpclever.net/
5
  Description: WPC Smart Wishlist is a simple but powerful tool that can help your customer save products for buy later.
6
+ Version: 4.0.0
7
  Author: WPClever
8
  Author URI: https://wpclever.net
9
  Text Domain: woo-smart-wishlist
11
  Requires at least: 4.0
12
  Tested up to: 6.0
13
  WC requires at least: 3.0
14
+ WC tested up to: 6.6
15
  */
16
 
17
  defined( 'ABSPATH' ) || exit;
18
 
19
+ ! defined( 'WOOSW_VERSION' ) && define( 'WOOSW_VERSION', '4.0.0' );
20
  ! defined( 'WOOSW_FILE' ) && define( 'WOOSW_FILE', __FILE__ );
21
  ! defined( 'WOOSW_URI' ) && define( 'WOOSW_URI', plugin_dir_url( __FILE__ ) );
22
  ! defined( 'WOOSW_DIR' ) && define( 'WOOSW_DIR', plugin_dir_path( __FILE__ ) );
28
  include 'includes/wpc-dashboard.php';
29
  include 'includes/wpc-menu.php';
30
  include 'includes/wpc-kit.php';
 
31
 
32
  // plugin activate
33
  register_activation_hook( __FILE__, 'woosw_plugin_activate' );
281
  if ( ( $product_id = (int) sanitize_text_field( $_POST['product_id'] ) ) > 0 ) {
282
  if ( $key === '#' ) {
283
  $return['status'] = 0;
284
+ $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use the Wishlist!', 'woo-smart-wishlist' ) );
285
+ $return['content'] = self::wishlist_content( $key, self::localization( 'empty_message', esc_html__( 'There are no products on the Wishlist!', 'woo-smart-wishlist' ) ) );
 
286
  } else {
287
  $products = array();
288
 
300
  ) + $products;
301
  update_option( 'woosw_list_' . $key, $products );
302
  self::update_product_count( $product_id, 'add' );
303
+ $return['notice'] = self::localization( 'added_message', esc_html__( '{name} has been added to Wishlist.', 'woo-smart-wishlist' ) );
 
304
  } else {
305
+ $return['notice'] = self::localization( 'already_message', esc_html__( '{name} is already in the Wishlist.', 'woo-smart-wishlist' ) );
 
306
  }
307
 
308
  $return['status'] = 1;
316
  $product_id = 0;
317
  $return['status'] = 0;
318
  $return['notice'] = self::localization( 'error_message', esc_html__( 'Have an error, please try again!', 'woo-smart-wishlist' ) );
 
319
  }
320
 
321
  do_action( 'woosw_add', $product_id, $key );
322
 
323
+ wp_send_json( $return );
324
+ wp_die();
325
  }
326
 
327
  function wishlist_remove() {
334
 
335
  if ( ( $product_id = (int) sanitize_text_field( $_POST['product_id'] ) ) > 0 ) {
336
  if ( $key === '#' ) {
337
+ $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use the Wishlist!', 'woo-smart-wishlist' ) );
338
  } else {
339
  $products = array();
340
 
348
  self::update_product_count( $product_id, 'remove' );
349
  $return['count'] = count( $products );
350
  $return['status'] = 1;
351
+ $return['notice'] = self::localization( 'removed_message', esc_html__( 'Product has been removed from the Wishlist.', 'woo-smart-wishlist' ) );
352
 
353
  if ( empty( $products ) ) {
354
+ $return['content'] = self::wishlist_content( $key, self::localization( 'empty_message', esc_html__( 'There are no products on the Wishlist!', 'woo-smart-wishlist' ) ) ) . '</div>';
355
  }
356
  } else {
357
+ $return['notice'] = self::localization( 'not_exist_message', esc_html__( 'The product does not exist on the Wishlist!', 'woo-smart-wishlist' ) );
358
  }
359
  }
360
  } else {
364
 
365
  do_action( 'woosw_remove', $product_id, $key );
366
 
367
+ wp_send_json( $return );
368
+ wp_die();
369
  }
370
 
371
  function wishlist_empty() {
377
  }
378
 
379
  if ( $key === '#' ) {
380
+ $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use the Wishlist!', 'woo-smart-wishlist' ) );
381
  } else {
382
  if ( get_option( 'woosw_list_' . $key ) ) {
383
  $products = get_option( 'woosw_list_' . $key );
394
  update_option( 'woosw_list_' . $key, array() );
395
  $return['status'] = 1;
396
  $return['count'] = 0;
397
+ $return['notice'] = self::localization( 'empty_notice', esc_html__( 'All products have been removed from the Wishlist!', 'woo-smart-wishlist' ) );
398
+ $return['content'] = self::wishlist_content( $key, self::localization( 'empty_message', esc_html__( 'There are no products on the Wishlist!', 'woo-smart-wishlist' ) ) );
399
  }
400
 
401
  do_action( 'woosw_empty', $key );
402
 
403
+ wp_send_json( $return );
404
+ wp_die();
405
  }
406
 
407
  function wishlist_load() {
409
  $key = self::get_key();
410
 
411
  if ( $key === '#' ) {
412
+ $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use Wishlist!', 'woo-smart-wishlist' ) );
413
+ $return['content'] = self::wishlist_content( $key, self::localization( 'empty_message', esc_html__( 'There are no products on the Wishlist!', 'woo-smart-wishlist' ) ) );
414
  } else {
415
  $products = array();
416
 
425
 
426
  do_action( 'woosw_load', $key );
427
 
428
+ wp_send_json( $return );
429
+ wp_die();
430
  }
431
 
432
  function wishlist_load_count() {
434
  $key = self::get_key();
435
 
436
  if ( $key === '#' ) {
437
+ $return['notice'] = self::localization( 'login_message', esc_html__( 'Please log in to use Wishlist!', 'woo-smart-wishlist' ) );
438
  } else {
439
  $products = array();
440
 
448
 
449
  do_action( 'wishlist_load_count', $key );
450
 
451
+ wp_send_json( $return );
452
+ wp_die();
453
+ }
454
+
455
+ function add_note() {
456
+ $note = trim( isset( $_POST['note'] ) ? sanitize_text_field( $_POST['note'] ) : '' );
457
+ $key = isset( $_POST['woosw_key'] ) ? sanitize_text_field( $_POST['woosw_key'] ) : '';
458
+ $product_id = isset( $_POST['product_id'] ) ? (int) sanitize_text_field( $_POST['product_id'] ) : 0;
459
+ $products = get_option( 'woosw_list_' . $key );
460
+
461
+ if ( isset( $products[ $product_id ] ) ) {
462
+ if ( is_array( $products[ $product_id ] ) ) {
463
+ $products[ $product_id ]['note'] = $note;
464
+ } else {
465
+ // old version
466
+ $time = $products[ $product_id ];
467
+ $products[ $product_id ] = array(
468
+ 'time' => $time,
469
+ 'note' => $note
470
+ );
471
+ }
472
+
473
+ update_option( 'woosw_list_' . $key, $products );
474
+ }
475
+
476
+ if ( empty( $note ) ) {
477
+ echo self::localization( 'add_note', esc_html__( 'Add note', 'woo-smart-wishlist' ) );
478
+ } else {
479
+ echo nl2br( $note );
480
+ }
481
+
482
+ wp_die();
483
+ }
484
+
485
+ function manage_wishlists() {
486
+ ob_start();
487
+ self::manage_content();
488
+ echo ob_get_clean();
489
+ wp_die();
490
+ }
491
+
492
+ function add_wishlist() {
493
+ $name = trim( isset( $_POST['name'] ) ? sanitize_text_field( $_POST['name'] ) : '' );
494
+
495
+ if ( $user_id = get_current_user_id() ) {
496
+ $key = self::get_key( true );
497
+ $keys = get_user_meta( $user_id, 'woosw_keys', true ) ?: array();
498
+ $max = get_option( 'woosw_maximum_wishlists', '5' );
499
+
500
+ if ( is_array( $keys ) && ( count( $keys ) < (int) $max ) ) {
501
+ $keys[ $key ] = array(
502
+ 'name' => $name,
503
+ 'time' => time()
504
+ );
505
+
506
+ update_user_meta( $user_id, 'woosw_keys', $keys );
507
+ }
508
+
509
+ ob_start();
510
+ self::manage_content();
511
+ echo ob_get_clean();
512
+ }
513
+
514
+ wp_die();
515
+ }
516
+
517
+ function delete_wishlist() {
518
+ $key = trim( isset( $_POST['key'] ) ? sanitize_text_field( $_POST['key'] ) : '' );
519
+
520
+ if ( ! empty( $key ) && ( $user_id = get_current_user_id() ) ) {
521
+ // delete key from user
522
+ $keys = get_user_meta( $user_id, 'woosw_keys', true ) ?: array();
523
+
524
+ if ( is_array( $keys ) && ( count( $keys ) > 1 ) ) {
525
+ // don't remove primary key
526
+ unset( $keys[ $key ] );
527
+ update_user_meta( $user_id, 'woosw_keys', $keys );
528
+
529
+ // delete wishlist
530
+ delete_option( 'woosw_list_' . $key );
531
+ }
532
+
533
+ ob_start();
534
+ self::manage_content();
535
+ echo ob_get_clean();
536
+ }
537
+
538
+ wp_die();
539
+ }
540
+
541
+ function view_wishlist() {
542
+ $key = trim( isset( $_POST['key'] ) ? sanitize_text_field( $_POST['key'] ) : '' );
543
+
544
+ if ( ! empty( $key ) ) {
545
+ echo self::wishlist_content( $key );
546
+ }
547
+
548
+ wp_die();
549
+ }
550
+
551
+ function set_default() {
552
+ $return = [];
553
+ $key = trim( isset( $_POST['key'] ) ? sanitize_text_field( $_POST['key'] ) : '' );
554
+
555
+ if ( $products = get_option( 'woosw_list_' . $key ) ) {
556
+ $count = count( $products );
557
+ } else {
558
+ $products = array();
559
+ $count = 0;
560
+ }
561
+
562
+ if ( ! empty( $key ) && ( $user_id = get_current_user_id() ) ) {
563
+ update_user_meta( $user_id, 'woosw_key', $key );
564
+
565
+ // set cookie
566
+ $secure = apply_filters( 'woosw_cookie_secure', wc_site_is_https() && is_ssl() );
567
+ $httponly = apply_filters( 'woosw_cookie_httponly', true );
568
+
569
+ wc_setcookie( 'woosw_key', $key, time() + 604800, $secure, $httponly );
570
+
571
+ ob_start();
572
+ self::manage_content();
573
+ $return['content'] = ob_get_clean();
574
+ $return['count'] = $count;
575
+ $return['products'] = array_keys( $products );
576
+ }
577
+
578
+ wp_send_json( $return );
579
+ wp_die();
580
  }
581
 
582
  function add_button() {
584
  }
585
 
586
  function shortcode( $attrs ) {
587
+ $output = $product_name = $product_image = '';
588
 
589
  $attrs = shortcode_atts( array(
590
  'id' => null,
595
  global $product;
596
 
597
  if ( $product ) {
598
+ $attrs['id'] = $product->get_id();
599
+ $product_name = $product->get_name();
600
+ $product_image_id = $product->get_image_id();
601
+ $product_image = wp_get_attachment_image_url( $product_image_id );
602
+ }
603
+ } else {
604
+ if ( $_product = wc_get_product( $attrs['id'] ) ) {
605
+ $product_name = $_product->get_name();
606
+ $product_image_id = $_product->get_image_id();
607
+ $product_image = wp_get_attachment_image_url( $product_image_id );
608
  }
609
  }
610
 
632
  }
633
 
634
  if ( $attrs['type'] === 'link' ) {
635
+ $output = '<a href="' . esc_url( '?add-to-wishlist=' . $attrs['id'] ) . '" class="' . esc_attr( $class ) . '" data-id="' . esc_attr( $attrs['id'] ) . '" data-product_name="' . esc_attr( $product_name ) . '" data-product_image="' . esc_attr( $product_image ) . '">' . esc_html( $text ) . '</a>';
636
  } else {
637
+ $output = '<button class="' . esc_attr( $class ) . '" data-id="' . esc_attr( $attrs['id'] ) . '" data-product_name="' . esc_attr( $product_name ) . '" data-product_image="' . esc_attr( $product_image ) . '">' . esc_html( $text ) . '</button>';
638
  }
639
  }
640
 
848
  <span class="description"><?php esc_html_e( 'Action triggered by clicking on the wishlist button.', 'woo-smart-wishlist' ); ?></span>
849
  </td>
850
  </tr>
851
+ <tr>
852
+ <th scope="row"><?php esc_html_e( 'Message position', 'woo-smart-wishlist' ); ?></th>
853
+ <td>
854
+ <select name="woosw_message_position">
855
+ <option value="right-top" <?php echo esc_attr( get_option( 'woosw_message_position', 'right-top' ) === 'right-top' ? 'selected' : '' ); ?>>
856
+ <?php esc_html_e( 'right-top', 'woo-smart-wishlist' ); ?>
857
+ </option>
858
+ <option value="right-bottom" <?php echo esc_attr( get_option( 'woosw_message_position', 'right-top' ) === 'right-bottom' ? 'selected' : '' ); ?>>
859
+ <?php esc_html_e( 'right-bottom', 'woo-smart-wishlist' ); ?>
860
+ </option>
861
+ <option value="fluid-top" <?php echo esc_attr( get_option( 'woosw_message_position', 'right-top' ) === 'fluid-top' ? 'selected' : '' ); ?>>
862
+ <?php esc_html_e( 'center-top', 'woo-smart-wishlist' ); ?>
863
+ </option>
864
+ <option value="fluid-bottom" <?php echo esc_attr( get_option( 'woosw_message_position', 'right-top' ) === 'fluid-bottom' ? 'selected' : '' ); ?>>
865
+ <?php esc_html_e( 'center-bottom', 'woo-smart-wishlist' ); ?>
866
+ </option>
867
+ <option value="left-top" <?php echo esc_attr( get_option( 'woosw_message_position', 'right-top' ) === 'left-top' ? 'selected' : '' ); ?>>
868
+ <?php esc_html_e( 'left-top', 'woo-smart-wishlist' ); ?>
869
+ </option>
870
+ <option value="left-bottom" <?php echo esc_attr( get_option( 'woosw_message_position', 'right-top' ) === 'left-bottom' ? 'selected' : '' ); ?>>
871
+ <?php esc_html_e( 'left-bottom', 'woo-smart-wishlist' ); ?>
872
+ </option>
873
+ </select>
874
+ </td>
875
+ </tr>
876
  <tr>
877
  <th scope="row"><?php esc_html_e( 'Action (added)', 'woo-smart-wishlist' ); ?></th>
878
  <td>
1212
  value="<?php esc_html_e( 'Update Options', 'woo-smart-wishlist' ); ?>"/>
1213
  <input type="hidden" name="action" value="update"/>
1214
  <input type="hidden" name="page_options"
1215
+ value="woosw_disable_unauthenticated,woosw_auto_remove,woosw_enable_multiple,woosw_maximum_wishlists,woosw_link,woosw_show_note,woosw_page_id,woosw_page_share,woosw_page_icon,woosw_page_items,woosw_page_copy,woosw_button_type,woosw_button_text,woosw_button_action,woosw_message_position,woosw_button_text_added,woosw_button_action_added,woosw_button_class,woosw_button_position_archive,woosw_button_position_single,woosw_cats,woosw_perfect_scrollbar,woosw_color,woosw_empty_button,woosw_continue_url,woosw_menus,woosw_menu_action"/>
1216
  </th>
1217
  </tr>
1218
  </table>
1385
  <input type="text" class="regular-text"
1386
  name="woosw_localization[added_message]"
1387
  value="<?php echo esc_attr( self::localization( 'added_message' ) ); ?>"
1388
+ placeholder="<?php esc_attr_e( '{name} has been added to Wishlist.', 'woo-smart-wishlist' ); ?>"/>
1389
  </td>
1390
  </tr>
1391
  <tr>
1394
  <input type="text" class="regular-text"
1395
  name="woosw_localization[already_message]"
1396
  value="<?php echo esc_attr( self::localization( 'already_message' ) ); ?>"
1397
+ placeholder="<?php esc_attr_e( '{name} is already in the Wishlist.', 'woo-smart-wishlist' ); ?>"/>
1398
  </td>
1399
  </tr>
1400
  <tr>
1403
  <input type="text" class="regular-text"
1404
  name="woosw_localization[removed_message]"
1405
  value="<?php echo esc_attr( self::localization( 'removed_message' ) ); ?>"
1406
+ placeholder="<?php esc_attr_e( 'Product has been removed from the Wishlist.', 'woo-smart-wishlist' ); ?>"/>
1407
  </td>
1408
  </tr>
1409
  <tr>
1421
  <input type="text" class="regular-text"
1422
  name="woosw_localization[empty_notice]"
1423
  value="<?php echo esc_attr( self::localization( 'empty_notice' ) ); ?>"
1424
+ placeholder="<?php esc_attr_e( 'All products have been removed from the Wishlist!', 'woo-smart-wishlist' ); ?>"/>
1425
  </td>
1426
  </tr>
1427
  <tr>
1430
  <input type="text" class="regular-text"
1431
  name="woosw_localization[empty_message]"
1432
  value="<?php echo esc_attr( self::localization( 'empty_message' ) ); ?>"
1433
+ placeholder="<?php esc_attr_e( 'There are no products on the Wishlist!', 'woo-smart-wishlist' ); ?>"/>
1434
  </td>
1435
  </tr>
1436
  <tr>
1448
  <input type="text" class="regular-text"
1449
  name="woosw_localization[not_exist_message]"
1450
  value="<?php echo esc_attr( self::localization( 'not_exist_message' ) ); ?>"
1451
+ placeholder="<?php esc_attr_e( 'The product does not exist on the Wishlist!', 'woo-smart-wishlist' ); ?>"/>
1452
  </td>
1453
  </tr>
1454
  <tr>
1457
  <input type="text" class="regular-text"
1458
  name="woosw_localization[login_message]"
1459
  value="<?php echo esc_attr( self::localization( 'login_message' ) ); ?>"
1460
+ placeholder="<?php esc_attr_e( 'Please log in to use the Wishlist!', 'woo-smart-wishlist' ); ?>"/>
1461
  </td>
1462
  </tr>
1463
  <tr>
1518
  // feather icons
1519
  wp_enqueue_style( 'woosw-feather', WOOSW_URI . 'assets/libs/feather/feather.css' );
1520
 
1521
+ if ( get_option( 'woosw_button_action', 'list' ) === 'message' ) {
1522
+ wp_enqueue_style( 'notiny', WOOSW_URI . 'assets/libs/notiny/notiny.css' );
1523
+ wp_enqueue_script( 'notiny', WOOSW_URI . 'assets/libs/notiny/notiny.js', array( 'jquery' ), WOOSW_VERSION, true );
1524
+ }
1525
+
1526
  // main style
1527
  wp_enqueue_style( 'woosw-frontend', WOOSW_URI . 'assets/css/frontend.css', array(), WOOSW_VERSION );
1528
  $color_default = apply_filters( 'woosw_color_default', '#5fbd74' );
1541
  'perfect_scrollbar' => get_option( 'woosw_perfect_scrollbar', 'yes' ),
1542
  'wishlist_url' => self::get_url(),
1543
  'button_action' => get_option( 'woosw_button_action', 'list' ),
1544
+ 'message_position' => get_option( 'woosw_message_position', 'right-top' ),
1545
  'button_action_added' => get_option( 'woosw_button_action_added', 'popup' ),
1546
  'empty_confirm' => self::localization( 'empty_confirm', esc_html__( 'This action cannot be undone. Are you sure?', 'woo-smart-wishlist' ) ),
1547
  'delete_confirm' => self::localization( 'delete_confirm', esc_html__( 'This action cannot be undone. Are you sure?', 'woo-smart-wishlist' ) ),
1623
  // for old version
1624
  $product_time = date_i18n( get_option( 'date_format' ), $product_data );
1625
  }
1626
+ ?>
 
 
 
 
 
1627
  <tr class="<?php echo esc_attr( 'woosw-item woosw-item-' . $product_id ); ?>"
1628
  data-id="<?php echo esc_attr( $product_id ); ?>">
1629
 
1682
  echo '</table>';
1683
  } else { ?>
1684
  <div class="woosw-popup-content-mid-massage">
1685
+ <?php echo self::localization( 'empty_message', esc_html__( 'There are no products on the Wishlist!', 'woo-smart-wishlist' ) ); ?>
1686
  </div>
1687
  <?php }
1688
 
1794
  return ob_get_clean();
1795
  }
1796
 
1797
+ function manage_content() {
1798
+ ?>
1799
+ <div class="woosw-popup-inner">
1800
+ <div class="woosw-popup-content">
1801
+ <div class="woosw-popup-content-top">
1802
+ <?php echo self::localization( 'manage_wishlists', esc_html__( 'Manage wishlists', 'woo-smart-wishlist' ) ); ?>
1803
+ <span class="woosw-popup-close"></span>
1804
+ </div>
1805
+ <div class="woosw-popup-content-mid">
1806
+ <?php if ( ( $user_id = get_current_user_id() ) ) { ?>
1807
+ <table class="woosw-items">
1808
+ <?php
1809
+ $key = get_user_meta( $user_id, 'woosw_key', true );
1810
+ $keys = get_user_meta( $user_id, 'woosw_keys', true ) ?: array();
1811
+ $max = get_option( 'woosw_maximum_wishlists', '5' );
1812
+
1813
+ if ( is_array( $keys ) && ! empty( $keys ) ) {
1814
+ foreach ( $keys as $k => $wl ) {
1815
+ if ( $products = get_option( 'woosw_list_' . $k ) ) {
1816
+ $count = count( $products );
1817
+ } else {
1818
+ $count = 0;
1819
+ }
1820
+
1821
+ echo '<tr class="woosw-item">';
1822
+ echo '<td>';
1823
+
1824
+ if ( isset( $wl['type'] ) && ( $wl['type'] === 'primary' ) ) {
1825
+ echo '<a class="woosw-view-wishlist" href="' . esc_url( self::get_url( $k, true ) ) . '" data-key="' . esc_attr( $k ) . '">' . self::localization( 'primary_name', esc_html__( 'Wishlist', 'woo-smart-wishlist' ) ) . '</a> - primary (' . $count . ')';
1826
+ } else {
1827
+ if ( ! empty( $wl['name'] ) ) {
1828
+ echo '<a class="woosw-view-wishlist" href="' . esc_url( self::get_url( $k, true ) ) . '" data-key="' . esc_attr( $k ) . '">' . $wl['name'] . '</a> (' . $count . ')';
1829
+ } else {
1830
+ echo '<a class="woosw-view-wishlist" href="' . esc_url( self::get_url( $k, true ) ) . '" data-key="' . esc_attr( $k ) . '">' . $k . '</a> (' . $count . ')';
1831
+ }
1832
+ }
1833
+
1834
+ echo '</td><td style="text-align: end">';
1835
+
1836
+ if ( $key === $k ) {
1837
+ echo '<span class="woosw-default">' . self::localization( 'is_default', esc_html__( 'default', 'woo-smart-wishlist' ) ) . '</span>';
1838
+ } else {
1839
+ echo '<a class="woosw-set-default" data-key="' . esc_attr( $k ) . '" href="#">' . self::localization( 'set_default', esc_html__( 'set default', 'woo-smart-wishlist' ) ) . '</a>';
1840
+ }
1841
+
1842
+ echo '</td><td style="text-align: end">';
1843
+
1844
+ if ( ( ! isset( $wl['type'] ) || ( $wl['type'] !== 'primary' ) ) && ( $key !== $k ) ) {
1845
+ echo '<a class="woosw-delete-wishlist" data-key="' . esc_attr( $k ) . '" href="#">' . self::localization( 'delete', esc_html__( 'delete', 'woo-smart-wishlist' ) ) . '</a>';
1846
+ }
1847
+
1848
+ echo '</td></tr>';
1849
+ }
1850
+ }
1851
+ ?>
1852
+ <tr <?php echo( is_array( $keys ) && ( count( $keys ) < (int) $max ) ? '' : 'class="woosw-disable"' ); ?>>
1853
+ <td colspan="100%">
1854
+ <div class="woosw-new-wishlist">
1855
+ <input type="text" id="woosw_wishlist_name"
1856
+ placeholder="<?php echo esc_attr( self::localization( 'placeholder_name', esc_html__( 'New Wishlist', 'woo-smart-wishlist' ) ) ); ?>"/>
1857
+ <input type="button" id="woosw_add_wishlist"
1858
+ value="<?php echo esc_attr( self::localization( 'add_wishlist', esc_html__( 'Add New Wishlist', 'woo-smart-wishlist' ) ) ); ?>"/>
1859
+ </div>
1860
+ </td>
1861
+ </tr>
1862
+ </table>
1863
+ <?php } ?>
1864
+ </div>
1865
+ </div>
1866
+ </div>
1867
+ <?php
1868
+ }
1869
+
1870
  function update_product_count( $product_id, $action = 'add' ) {
1871
  $meta_count = 'woosw_count';
1872
  $meta_time = ( $action === 'add' ? 'woosw_add' : 'woosw_remove' );
2215
  $user = $wpdb->get_results( $wpdb->prepare( 'SELECT user_id FROM `' . $wpdb->prefix . 'usermeta` WHERE `meta_key` = "woosw_key" AND `meta_value` = "%s" LIMIT 1', $key ) );
2216
 
2217
  echo '<div class="woosw-quickview-item">';
2218
+ echo '<div class="woosw-quickview-item-image"><a href="' . esc_url( self::get_url( $key, true ) ) . '" target="_blank">#' . esc_html( $key ) . '</a></div>';
2219
  echo '<div class="woosw-quickview-item-info">';
2220
 
2221
  if ( ! empty( $user ) ) {