Discount Rules for WooCommerce - Version 2.3.6

Version Description

  • 29/04/21 =
  • Feature - Recursive option for set discounts.
  • Improvement - Reset migration improvement.
  • Improvement - Changed rule limit option select box to number field.
  • Improvement - Additional param on Event: advanced_woo_discount_rules_get_product_categories
  • Improvement - Compatible with PHP 8.
  • Improvement - Event: advanced_woo_discount_rules_dynamic_price_html_update
  • Improvement - Event: advanced_woo_discount_rules_csv_import_export_separator
  • Improvement - Event: advanced_woo_discount_rules_csv_length_for_import.
  • Improvement - Event: advanced_woo_discount_rules_discounts_check_bogo_return_values.
  • Improvement - Advance option to handle conflict with other plugins.
  • Fix - Build onsale list not working while having huge volume of products.
  • Fix - Blocking paypal return requests.
  • Fix - Subsequent discount with cart rule.
  • Fix - Dynamic strikeout shows incorrect value while having multiple rules.
Download this release

Release Info

Developer flycart
Plugin Icon 128x128 Discount Rules for WooCommerce
Version 2.3.6
Comparing to
See all releases

Code changes from version 2.3.5 to 2.3.6

Files changed (38) hide show
  1. i18n/languages/woo-discount-rules.pot +303 -211
  2. readme.txt +19 -3
  3. v1/includes/pricing-rules.php +13 -12
  4. v1/view/cart-rules.php +7 -5
  5. v1/view/includes/menu.php +4 -2
  6. v1/view/pricing-rules.php +7 -5
  7. v1/view/settings.php +1 -1
  8. v1/view/settings_taxonomy.php +1 -1
  9. v2/App/Controllers/Admin/Settings.php +2 -0
  10. v2/App/Controllers/Admin/Tabs/AdvancedSection.php +68 -0
  11. v2/App/Controllers/Admin/Tabs/Compatible.php +1 -1
  12. v2/App/Controllers/Admin/Tabs/GeneralSettings.php +1 -0
  13. v2/App/Controllers/Admin/Tabs/Help.php +6 -2
  14. v2/App/Controllers/Admin/Tabs/ImportExport.php +1 -1
  15. v2/App/Controllers/Admin/Tabs/Recipe.php +1 -1
  16. v2/App/Controllers/Admin/Tabs/Statistics.php +1 -1
  17. v2/App/Controllers/Admin/WDRAjax.php +19 -1
  18. v2/App/Controllers/Configuration.php +16 -6
  19. v2/App/Controllers/DiscountCalculator.php +15 -4
  20. v2/App/Controllers/ManageDiscount.php +15 -8
  21. v2/App/Controllers/OnSaleShortCode.php +23 -2
  22. v2/App/Helpers/Helper.php +2 -2
  23. v2/App/Helpers/Input.php +3 -0
  24. v2/App/Helpers/Migration.php +9 -8
  25. v2/App/Helpers/Rule.php +1 -1
  26. v2/App/Helpers/Validation.php +23 -0
  27. v2/App/Helpers/Woocommerce.php +41 -23
  28. v2/App/Snippets/disableRecalculateTotal.php +6 -0
  29. v2/App/Snippets/overrideCustomPrice.php +75 -0
  30. v2/App/Snippets/recalculateTotalBeforeApplyCoupon.php +6 -0
  31. v2/App/Views/Admin/Menu.php +4 -4
  32. v2/App/Views/Admin/Rules/Conditions/Main.php +5 -10
  33. v2/App/Views/Admin/Tabs/AdvancedOptions.php +70 -0
  34. v2/App/Views/Admin/Tabs/ImportExport.php +3 -1
  35. v2/App/Views/Admin/Tabs/help.php +159 -56
  36. v2/Assets/Css/admin_style.css +36 -0
  37. v2/Assets/Js/admin_script.js +59 -10
  38. woo-discount-rules.php +3 -3
i18n/languages/woo-discount-rules.pot CHANGED
@@ -4,8 +4,8 @@ msgstr ""
4
  "Content-Type: text/plain; charset=UTF-8\n"
5
  "Content-Transfer-Encoding: 8bit\n"
6
  "Project-Id-Version: Woo Discount Rules\n"
7
- "POT-Creation-Date: 2020-04-08\n"
8
- "PO-Revision-Date: 2020-07-28\n"
9
  "Language-Team: Flycart\n"
10
  "MIME-Version: 1.0\n"
11
  "Language: \n"
@@ -18,7 +18,7 @@ msgstr ""
18
  msgid "Authentication required"
19
  msgstr ""
20
 
21
- #: common.php:17 v2/App/Controllers/Admin/WDRAjax.php:730
22
  msgid "Invalid request"
23
  msgstr ""
24
 
@@ -153,7 +153,7 @@ msgstr ""
153
  msgid "License key for the %s is not entered. %s, you can get it from %s"
154
  msgstr ""
155
 
156
- #: v1/helper/general-helper.php:48 v2/App/Controllers/Admin/Settings.php:319
157
  msgid "Guest"
158
  msgstr ""
159
 
@@ -201,7 +201,7 @@ msgid "Read Docs"
201
  msgstr ""
202
 
203
  #: v1/helper/general-helper.php:1034 v1/view/view-cart-rules.php:697
204
- #: v1/view/view-pricing-rules.php:433 v2/App/Helpers/Woocommerce.php:1510
205
  msgid "Coupon already exists in WooCommerce. Please select another name"
206
  msgstr ""
207
 
@@ -211,8 +211,8 @@ msgstr ""
211
 
212
  #: v1/helper/purchase.php:25 v1/view/includes/cart-menu.php:5
213
  #: v1/view/includes/menu.php:6 v1/view/includes/sub-menu.php:5
214
- #: v2/App/Controllers/Admin/Settings.php:41
215
  #: v2/App/Controllers/Admin/Settings.php:42
 
216
  msgid "Woo Discount Rules"
217
  msgstr ""
218
 
@@ -272,13 +272,14 @@ msgstr ""
272
  #: v1/includes/advanced/free_shipping_method.php:68
273
  #: v1/view/documentation.php:63 v1/view/settings_cart_rules.php:126
274
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:197
 
275
  msgid "Free Shipping"
276
  msgstr ""
277
 
278
  #: v1/includes/advanced/free_shipping_method.php:73
279
- #: v1/includes/discount-base.php:1128 v1/view/cart-rules.php:133
280
- #: v1/view/pricing-rules.php:163 v1/view/settings_promotion.php:65
281
- #: v1/view/settings_promotion.php:100 v2/App/Controllers/Admin/Settings.php:429
282
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:77
283
  msgid "Enable"
284
  msgstr ""
@@ -305,13 +306,13 @@ msgstr ""
305
  msgid "Failed to save"
306
  msgstr ""
307
 
308
- #: v1/includes/discount-base.php:207 v1/view/cart-rules.php:162
309
- #: v1/view/pricing-rules.php:192 v2/App/Controllers/Admin/Settings.php:428
310
  msgid "Active"
311
  msgstr ""
312
 
313
- #: v1/includes/discount-base.php:209 v1/view/cart-rules.php:164
314
- #: v1/view/pricing-rules.php:194 v1/view/settings_cart_rules.php:95
315
  #: v1/view/settings_cart_rules.php:102 v1/view/settings_price_rules.php:169
316
  #: v1/view/settings_promotion.php:22 v1/view/settings_promotion.php:62
317
  #: v1/view/settings_promotion.php:97 v1/view/settings_promotion.php:132
@@ -388,7 +389,7 @@ msgstr ""
388
 
389
  #: v1/includes/discount-base.php:1089 v1/view/view-pricing-rules.php:654
390
  #: v1/view/view-pricing-rules.php:657 v1/view/view-pricing-rules.php:677
391
- #: v2/App/Controllers/Admin/Settings.php:446
392
  msgid "Quantity"
393
  msgstr ""
394
 
@@ -417,7 +418,7 @@ msgid "Adjustment Type"
417
  msgstr ""
418
 
419
  #: v1/includes/discount-base.php:1095 v1/view/view-pricing-rules.php:954
420
- #: v2/App/Controllers/Admin/Settings.php:449
421
  msgid "Discount percentage"
422
  msgstr ""
423
 
@@ -549,8 +550,8 @@ msgstr ""
549
  msgid "Remove"
550
  msgstr ""
551
 
552
- #: v1/includes/discount-base.php:1125 v1/view/cart-rules.php:185
553
- #: v1/view/pricing-rules.php:215 v1/view/view-pricing-rules.php:971
554
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:304
555
  msgid "Duplicate"
556
  msgstr ""
@@ -563,8 +564,8 @@ msgstr ""
563
  msgid "Are you sure to remove this ?"
564
  msgstr ""
565
 
566
- #: v1/includes/discount-base.php:1129 v1/view/cart-rules.php:130
567
- #: v1/view/pricing-rules.php:160 v2/App/Controllers/Admin/Settings.php:427
568
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:78
569
  msgid "Disable"
570
  msgstr ""
@@ -745,9 +746,9 @@ msgstr ""
745
  msgid "and the order status should be"
746
  msgstr ""
747
 
748
- #: v1/includes/discount-base.php:1168 v1/view/cart-rules.php:114
749
- #: v1/view/cart-rules.php:224 v1/view/pricing-rules.php:144
750
- #: v1/view/pricing-rules.php:254 v1/view/view-cart-rules.php:700
751
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:129
752
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:355
753
  msgid "Action"
@@ -1017,7 +1018,7 @@ msgid ""
1017
  msgstr ""
1018
 
1019
  #: v1/includes/discount-base.php:1302
1020
- #: v2/App/Controllers/ManageDiscount.php:1161
1021
  #, php-format
1022
  msgid ""
1023
  "Sorry, it is not possible to apply coupon <b>\"%s\"</b> as you already have "
@@ -1025,106 +1026,106 @@ msgid ""
1025
  msgstr ""
1026
 
1027
  #: v1/includes/discount-base.php:1357 v1/view/includes/menu.php:18
1028
- #: v2/App/Controllers/Admin/Settings.php:66
1029
  #: v2/App/Controllers/Admin/Tabs/GeneralSettings.php:23
1030
  msgid "Settings"
1031
  msgstr ""
1032
 
1033
- #: v1/includes/pricing-rules.php:3208 v1/view/view-pricing-rules.php:642
1034
  msgid "Buy"
1035
  msgstr ""
1036
 
1037
- #: v1/includes/pricing-rules.php:3212
1038
  msgid " less than or equal to "
1039
  msgstr ""
1040
 
1041
- #: v1/includes/pricing-rules.php:3212 v1/includes/pricing-rules.php:3218
1042
  msgid " Quantity"
1043
  msgstr ""
1044
 
1045
- #: v1/includes/pricing-rules.php:3215
1046
  msgid " Quantity "
1047
  msgstr ""
1048
 
1049
- #: v1/includes/pricing-rules.php:3222
1050
  msgid " or more Quantity"
1051
  msgstr ""
1052
 
1053
- #: v1/includes/pricing-rules.php:3231
1054
  msgid " any "
1055
  msgstr ""
1056
 
1057
- #: v1/includes/pricing-rules.php:3231
1058
  msgid " products from "
1059
  msgstr ""
1060
 
1061
- #: v1/includes/pricing-rules.php:3238
1062
  msgid " in each products"
1063
  msgstr ""
1064
 
1065
- #: v1/includes/pricing-rules.php:3250
1066
  msgid " and get discount on "
1067
  msgstr ""
1068
 
1069
- #: v1/includes/pricing-rules.php:3253
1070
  msgid " first "
1071
  msgstr ""
1072
 
1073
- #: v1/includes/pricing-rules.php:3255 v1/includes/pricing-rules.php:3259
1074
  msgid " quantity of product(s) - "
1075
  msgstr ""
1076
 
1077
- #: v1/includes/pricing-rules.php:3257
1078
  msgid " after first "
1079
  msgstr ""
1080
 
1081
- #: v1/includes/pricing-rules.php:3275
1082
  msgid "Category(ies) "
1083
  msgstr ""
1084
 
1085
- #: v1/includes/pricing-rules.php:3346
1086
  msgid "Get "
1087
  msgstr ""
1088
 
1089
- #: v1/includes/pricing-rules.php:3348
1090
  #, php-format
1091
  msgid "% discount in "
1092
  msgstr ""
1093
 
1094
- #: v1/includes/pricing-rules.php:3351
1095
  msgid "same product"
1096
  msgstr ""
1097
 
1098
- #: v1/includes/pricing-rules.php:3353
1099
  msgid "any cheapest one from cart"
1100
  msgstr ""
1101
 
1102
- #: v1/includes/pricing-rules.php:3356
1103
  msgid "any cheapest one of "
1104
  msgstr ""
1105
 
1106
- #: v1/includes/pricing-rules.php:3361
1107
  msgid " quantity of any "
1108
  msgstr ""
1109
 
1110
- #: v1/includes/pricing-rules.php:3363
1111
  msgid " cheapest item "
1112
  msgstr ""
1113
 
1114
- #: v1/includes/pricing-rules.php:3366
1115
  msgid " quantity of cheapest item "
1116
  msgstr ""
1117
 
1118
- #: v1/includes/pricing-rules.php:3370
1119
  msgid "from the category "
1120
  msgstr ""
1121
 
1122
- #: v1/includes/pricing-rules.php:3392
1123
  #, php-format
1124
  msgid "%s for %s Quantity(s)"
1125
  msgstr ""
1126
 
1127
- #: v1/includes/pricing-rules.php:3394
1128
  #, php-format
1129
  msgid "%s as price per unit"
1130
  msgstr ""
@@ -1210,92 +1211,92 @@ msgstr ""
1210
  msgid "Cart Rules"
1211
  msgstr ""
1212
 
1213
- #: v1/view/cart-rules.php:52 v1/view/pricing-rules.php:84
1214
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:56
1215
  msgid "View Examples"
1216
  msgstr ""
1217
 
1218
- #: v1/view/cart-rules.php:53 v1/view/documentation.php:21
1219
- #: v1/view/pricing-rules.php:85 v2/App/Views/Admin/Tabs/DiscountRule.php:58
1220
- #: v2/App/Views/Admin/Tabs/help.php:12
1221
  msgid "Documentation"
1222
  msgstr ""
1223
 
1224
- #: v1/view/cart-rules.php:63 v1/view/pricing-rules.php:95
1225
  msgid "You Reach Max. Rule Limit"
1226
  msgstr ""
1227
 
1228
- #: v1/view/cart-rules.php:68 v1/view/pricing-rules.php:99
1229
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:13
1230
  msgid "Add New Rule"
1231
  msgstr ""
1232
 
1233
- #: v1/view/cart-rules.php:79 v1/view/pricing-rules.php:109
1234
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:76
1235
  msgid "Bulk Actions"
1236
  msgstr ""
1237
 
1238
- #: v1/view/cart-rules.php:80 v1/view/pricing-rules.php:110
1239
  msgid "Enable rules"
1240
  msgstr ""
1241
 
1242
- #: v1/view/cart-rules.php:81 v1/view/pricing-rules.php:111
1243
  msgid "Disable rules"
1244
  msgstr ""
1245
 
1246
- #: v1/view/cart-rules.php:82 v1/view/pricing-rules.php:112
1247
  msgid "Delete rules"
1248
  msgstr ""
1249
 
1250
- #: v1/view/cart-rules.php:84 v1/view/pricing-rules.php:114
1251
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:81
1252
  msgid "Apply"
1253
  msgstr ""
1254
 
1255
- #: v1/view/cart-rules.php:98 v1/view/cart-rules.php:208
1256
- #: v1/view/pricing-rules.php:128 v1/view/pricing-rules.php:238
1257
  #: v1/view/template/discount-table.php:36
1258
  msgid "Name"
1259
  msgstr ""
1260
 
1261
- #: v1/view/cart-rules.php:99 v1/view/cart-rules.php:209
1262
- #: v1/view/pricing-rules.php:129 v1/view/pricing-rules.php:239
1263
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:112
1264
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:338
1265
  msgid "Start Date"
1266
  msgstr ""
1267
 
1268
- #: v1/view/cart-rules.php:100 v1/view/cart-rules.php:210
1269
- #: v1/view/pricing-rules.php:130 v1/view/pricing-rules.php:240
1270
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:114
1271
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:340
1272
  msgid "Expired On"
1273
  msgstr ""
1274
 
1275
- #: v1/view/cart-rules.php:101 v1/view/cart-rules.php:211
1276
- #: v1/view/pricing-rules.php:131 v1/view/pricing-rules.php:241
1277
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:127
1278
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:353
1279
  msgid "Status"
1280
  msgstr ""
1281
 
1282
- #: v1/view/cart-rules.php:104 v1/view/cart-rules.php:214
1283
- #: v1/view/pricing-rules.php:134 v1/view/pricing-rules.php:244
1284
- #: v2/App/Views/Admin/Rules/Conditions/Main.php:218
1285
  msgid "Language"
1286
  msgstr ""
1287
 
1288
- #: v1/view/cart-rules.php:109 v1/view/cart-rules.php:219
1289
- #: v1/view/pricing-rules.php:139 v1/view/pricing-rules.php:249
1290
  msgid "Order"
1291
  msgstr ""
1292
 
1293
- #: v1/view/cart-rules.php:181 v1/view/pricing-rules.php:211
1294
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:302
1295
  msgid "Edit"
1296
  msgstr ""
1297
 
1298
- #: v1/view/cart-rules.php:192 v1/view/pricing-rules.php:222
1299
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:79
1300
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:307
1301
  msgid "Delete"
@@ -1305,27 +1306,27 @@ msgstr ""
1305
  msgid "Installation and Intro:"
1306
  msgstr ""
1307
 
1308
- #: v1/view/documentation.php:30 v2/App/Views/Admin/Tabs/help.php:20
1309
  msgid "Getting started"
1310
  msgstr ""
1311
 
1312
- #: v1/view/documentation.php:30 v2/App/Views/Admin/Tabs/help.php:21
1313
  msgid "Welcome onboard"
1314
  msgstr ""
1315
 
1316
- #: v1/view/documentation.php:33
1317
  msgid "License Key activation"
1318
  msgstr ""
1319
 
1320
- #: v1/view/documentation.php:33
1321
  msgid "Learn how to obtain the license key and activate it"
1322
  msgstr ""
1323
 
1324
- #: v1/view/documentation.php:36
1325
  msgid "Version Updates!"
1326
  msgstr ""
1327
 
1328
- #: v1/view/documentation.php:36
1329
  msgid "Learn how to update to latest versions"
1330
  msgstr ""
1331
 
@@ -1341,19 +1342,19 @@ msgstr ""
1341
  msgid "Price rules/BOGO discounts:"
1342
  msgstr ""
1343
 
1344
- #: v1/view/documentation.php:45
1345
  msgid "Bulk/Tiered pricing discounts"
1346
  msgstr ""
1347
 
1348
- #: v1/view/documentation.php:45
1349
  msgid "Learn how to create bulk/tiered quantity discounts in WooCommerce"
1350
  msgstr ""
1351
 
1352
- #: v1/view/documentation.php:48
1353
  msgid "How to create a perfect BOGO discount rule in WooCommerce"
1354
  msgstr ""
1355
 
1356
- #: v1/view/documentation.php:48
1357
  msgid ""
1358
  "Buy One Get One deals can be simple to complex. Learn how to get them "
1359
  "working correct in your online store"
@@ -1378,11 +1379,11 @@ msgid ""
1378
  "Price Rule and Cart Rule which gives discount based on the purchase history"
1379
  msgstr ""
1380
 
1381
- #: v1/view/documentation.php:57
1382
  msgid "Coupon code based discounts"
1383
  msgstr ""
1384
 
1385
- #: v1/view/documentation.php:57
1386
  msgid ""
1387
  "Apply the dynamic discount rules after the customer enters a valid coupon "
1388
  "code"
@@ -1392,15 +1393,15 @@ msgstr ""
1392
  msgid "Cart Based Rules:"
1393
  msgstr ""
1394
 
1395
- #: v1/view/documentation.php:63
1396
  msgid "Learn how to create a free shipping cart based rule"
1397
  msgstr ""
1398
 
1399
- #: v1/view/documentation.php:66
1400
  msgid "Subtotal based - Tiered discounts"
1401
  msgstr ""
1402
 
1403
- #: v1/view/documentation.php:66
1404
  msgid "Learn how to create tiered discount based on the subtotal value"
1405
  msgstr ""
1406
 
@@ -1408,17 +1409,18 @@ msgstr ""
1408
  msgid "Free product discount"
1409
  msgstr ""
1410
 
1411
- #: v1/view/documentation.php:69
1412
  msgid ""
1413
  "How to provide a automatic adding free product in cart under certain "
1414
  "conditions"
1415
  msgstr ""
1416
 
1417
  #: v1/view/documentation.php:72 v2/App/Helpers/Helper.php:173
 
1418
  msgid "Category Combination"
1419
  msgstr ""
1420
 
1421
- #: v1/view/documentation.php:72
1422
  msgid ""
1423
  "Category Combination (get discount only when Category A+ B + C are in the "
1424
  "cart)"
@@ -1436,7 +1438,7 @@ msgstr ""
1436
 
1437
  #: v1/view/includes/cart-menu.php:13 v1/view/includes/sub-menu.php:13
1438
  #: v1/view/template/discount-table.php:42 v1/view/view-cart-rules.php:756
1439
- #: v1/view/view-pricing-rules.php:708 v2/App/Controllers/Admin/Settings.php:454
1440
  #: v2/App/Views/Admin/Rules/Discounts/Bulk.php:59
1441
  #: v2/App/Views/Admin/Rules/Manage.php:209
1442
  msgid "Discount"
@@ -1471,7 +1473,7 @@ msgstr ""
1471
  msgid "Taxonomy Settings"
1472
  msgstr ""
1473
 
1474
- #: v1/view/includes/menu.php:24
1475
  msgid "Read documentation"
1476
  msgstr ""
1477
 
@@ -1615,6 +1617,9 @@ msgstr ""
1615
  #: v1/view/settings_price_rules.php:86 v1/view/settings_price_rules.php:98
1616
  #: v1/view/settings_price_rules.php:110 v1/view/settings_price_rules.php:151
1617
  #: v2/App/Views/Admin/Rules/DiscountBatch/Main.php:43
 
 
 
1618
  #: v2/App/Views/Admin/Tabs/settings.php:55
1619
  #: v2/App/Views/Admin/Tabs/settings.php:86
1620
  #: v2/App/Views/Admin/Tabs/settings.php:102
@@ -1630,6 +1635,9 @@ msgstr ""
1630
  #: v1/view/settings_price_rules.php:87 v1/view/settings_price_rules.php:99
1631
  #: v1/view/settings_price_rules.php:111 v1/view/settings_price_rules.php:152
1632
  #: v2/App/Views/Admin/Rules/DiscountBatch/Main.php:48
 
 
 
1633
  #: v2/App/Views/Admin/Tabs/settings.php:59
1634
  #: v2/App/Views/Admin/Tabs/settings.php:90
1635
  #: v2/App/Views/Admin/Tabs/settings.php:106
@@ -1977,63 +1985,78 @@ msgid "Sale!"
1977
  msgstr ""
1978
 
1979
  #: v1/view/template/sidebar.php:7 v2/App/Views/Admin/Tabs/DiscountRule.php:389
 
1980
  msgid "Looking for more features? Upgrade to PRO"
1981
  msgstr ""
1982
 
1983
  #: v1/view/template/sidebar.php:19 v2/App/Views/Admin/Tabs/DiscountRule.php:394
 
1984
  msgid "With PRO version, you can create:"
1985
  msgstr ""
1986
 
1987
  #: v1/view/template/sidebar.php:20 v2/App/Views/Admin/Tabs/DiscountRule.php:395
 
1988
  msgid "- Categories based discounts"
1989
  msgstr ""
1990
 
1991
  #: v1/view/template/sidebar.php:21 v2/App/Views/Admin/Tabs/DiscountRule.php:396
 
1992
  msgid "- User roles based discounts"
1993
  msgstr ""
1994
 
1995
  #: v1/view/template/sidebar.php:22 v2/App/Views/Admin/Tabs/DiscountRule.php:397
 
1996
  msgid "- Buy One Get One Free deals"
1997
  msgstr ""
1998
 
1999
  #: v1/view/template/sidebar.php:23 v2/App/Views/Admin/Tabs/DiscountRule.php:398
 
2000
  msgid "- Buy X Get Y deals"
2001
  msgstr ""
2002
 
2003
  #: v1/view/template/sidebar.php:24 v2/App/Views/Admin/Tabs/DiscountRule.php:399
 
2004
  #, php-format
2005
  msgid "- Buy 2, get 1 at 50% discount"
2006
  msgstr ""
2007
 
2008
  #: v1/view/template/sidebar.php:25 v2/App/Views/Admin/Tabs/DiscountRule.php:400
 
2009
  msgid "- Buy 3 for $10 (Package / Bundle [Set] Discount)"
2010
  msgstr ""
2011
 
2012
  #: v1/view/template/sidebar.php:26 v2/App/Views/Admin/Tabs/DiscountRule.php:401
 
2013
  msgid "- Different discounts with one coupon code"
2014
  msgstr ""
2015
 
2016
  #: v1/view/template/sidebar.php:27 v2/App/Views/Admin/Tabs/DiscountRule.php:402
 
2017
  msgid "- Purchase history based discounts"
2018
  msgstr ""
2019
 
2020
  #: v1/view/template/sidebar.php:28 v2/App/Views/Admin/Tabs/DiscountRule.php:403
 
2021
  msgid "- Free product / gift"
2022
  msgstr ""
2023
 
2024
  #: v1/view/template/sidebar.php:29 v2/App/Views/Admin/Tabs/DiscountRule.php:404
 
2025
  msgid "- Discount for variants"
2026
  msgstr ""
2027
 
2028
  #: v1/view/template/sidebar.php:30 v2/App/Views/Admin/Tabs/DiscountRule.php:405
 
2029
  msgid "- Conditional discounts"
2030
  msgstr ""
2031
 
2032
  #: v1/view/template/sidebar.php:31 v2/App/Views/Admin/Tabs/DiscountRule.php:406
 
2033
  msgid "- Fixed cost discounts"
2034
  msgstr ""
2035
 
2036
  #: v1/view/template/sidebar.php:32 v2/App/Views/Admin/Tabs/DiscountRule.php:407
 
2037
  msgid "- Offer fixed price on certain conditions"
2038
  msgstr ""
2039
 
@@ -2594,115 +2617,115 @@ msgstr ""
2594
  msgid "Cart"
2595
  msgstr ""
2596
 
2597
- #: v2/App/Controllers/Admin/Settings.php:165
2598
  msgid ""
2599
  "We found that your were using our old \"Woo discount rules\" plugin, Please "
2600
  "disable it!"
2601
  msgstr ""
2602
 
2603
- #: v2/App/Controllers/Admin/Settings.php:232
2604
  msgid "no results"
2605
  msgstr ""
2606
 
2607
- #: v2/App/Controllers/Admin/Settings.php:233
2608
  msgid "Select Values"
2609
  msgstr ""
2610
 
2611
- #: v2/App/Controllers/Admin/Settings.php:234
2612
  msgid "Searching…"
2613
  msgstr ""
2614
 
2615
- #: v2/App/Controllers/Admin/Settings.php:430
2616
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:294
2617
  msgid " - (Running)"
2618
  msgstr ""
2619
 
2620
- #: v2/App/Controllers/Admin/Settings.php:431
2621
  msgid "Oops!! something went wrong!"
2622
  msgstr ""
2623
 
2624
- #: v2/App/Controllers/Admin/Settings.php:432
2625
  msgid "Rule duplicated successfully!"
2626
  msgstr ""
2627
 
2628
- #: v2/App/Controllers/Admin/Settings.php:433
2629
  msgid "Rule deleted successfully!"
2630
  msgstr ""
2631
 
2632
- #: v2/App/Controllers/Admin/Settings.php:434
2633
  msgid "Are you sure want to delete this rule!"
2634
  msgstr ""
2635
 
2636
- #: v2/App/Controllers/Admin/Settings.php:435
2637
  msgid "Rule disabled successfully!"
2638
  msgstr ""
2639
 
2640
- #: v2/App/Controllers/Admin/Settings.php:436
2641
  msgid "Rule enabled successfully!"
2642
  msgstr ""
2643
 
2644
- #: v2/App/Controllers/Admin/Settings.php:437
2645
  msgid "Rule saved successfully!"
2646
  msgstr ""
2647
 
2648
- #: v2/App/Controllers/Admin/Settings.php:438
2649
  msgid "Settings saved successfully!"
2650
  msgstr ""
2651
 
2652
- #: v2/App/Controllers/Admin/Settings.php:439
2653
  msgid "Rule priority changed successfully!"
2654
  msgstr ""
2655
 
2656
- #: v2/App/Controllers/Admin/Settings.php:440
2657
  msgid "Rule priority not changed !"
2658
  msgstr ""
2659
 
2660
- #: v2/App/Controllers/Admin/Settings.php:441
2661
  msgid "No data for this period"
2662
  msgstr ""
2663
 
2664
- #: v2/App/Controllers/Admin/Settings.php:442
2665
  msgid "Oops! Coupon already exists in Woocommerce"
2666
  msgstr ""
2667
 
2668
- #: v2/App/Controllers/Admin/Settings.php:443
2669
  msgid "Copied!"
2670
  msgstr ""
2671
 
2672
- #: v2/App/Controllers/Admin/Settings.php:444
2673
  #: v2/App/Views/Admin/Tabs/settings.php:508
2674
  msgid "Copy ShortCode"
2675
  msgstr ""
2676
 
2677
- #: v2/App/Controllers/Admin/Settings.php:445
2678
  msgid "If you make this recursive other row(s) will be removed!"
2679
  msgstr ""
2680
 
2681
- #: v2/App/Controllers/Admin/Settings.php:447
2682
  msgid "Minimum Quantity"
2683
  msgstr ""
2684
 
2685
- #: v2/App/Controllers/Admin/Settings.php:448
2686
  msgid "Discount value"
2687
  msgstr ""
2688
 
2689
- #: v2/App/Controllers/Admin/Settings.php:450
2690
  msgid "Filter (Buy)"
2691
  msgstr ""
2692
 
2693
- #: v2/App/Controllers/Admin/Settings.php:451
2694
  #: v2/App/Views/Admin/Rules/Manage.php:163
2695
  msgid "Filter"
2696
  msgstr ""
2697
 
2698
- #: v2/App/Controllers/Admin/Settings.php:452
2699
  msgid ""
2700
  "<p>Choose <b>what gets discount</b> (products/categories/attributes/SKU and "
2701
  "so on )</p>\n"
2702
  "<p>Note : You can also exclude products/categories.</p>"
2703
  msgstr ""
2704
 
2705
- #: v2/App/Controllers/Admin/Settings.php:455
2706
  msgid ""
2707
  "Discount - <a href=\"https://docs.flycart.org/en/articles/3914904-bulk-"
2708
  "discounts-tiered-pricing-discounts-discount-rules-2-0?utm_source=woo-"
@@ -2711,7 +2734,7 @@ msgid ""
2711
  "\"_blank\">Read Docs</a>"
2712
  msgstr ""
2713
 
2714
- #: v2/App/Controllers/Admin/Settings.php:456
2715
  msgid ""
2716
  "Discount - <a href=\"https://docs.flycart.org/en/articles/3809899-bundle-set-"
2717
  "discount-discount-rules-2-0?utm_source=woo-discount-rules-"
@@ -2719,7 +2742,7 @@ msgid ""
2719
  "\"font-size: 12px;\" target=\"_blank\">Read Docs</a>"
2720
  msgstr ""
2721
 
2722
- #: v2/App/Controllers/Admin/Settings.php:457
2723
  msgid ""
2724
  "Discount - <a href=\"https://docs.flycart.org/en/articles/3810570-buy-x-get-"
2725
  "y-discount-rules-2-0?utm_source=woo-discount-rules-"
@@ -2727,7 +2750,7 @@ msgid ""
2727
  "size: 12px;\" target=\"_blank\">Read Docs</a>"
2728
  msgstr ""
2729
 
2730
- #: v2/App/Controllers/Admin/Settings.php:458
2731
  msgid ""
2732
  "Discount - <a href=\"https://docs.flycart.org/en/articles/3810071-buy-one-"
2733
  "get-one-free-buy-x-get-x-discount-rules-2-0?utm_source=woo-discount-rules-"
@@ -2735,12 +2758,12 @@ msgid ""
2735
  "size: 12px;\" target=\"_blank\">Read Docs</a>"
2736
  msgstr ""
2737
 
2738
- #: v2/App/Controllers/Admin/Settings.php:459
2739
  msgid ""
2740
  "<p>Select discount type and its value (percentage/price/fixed price)</p>"
2741
  msgstr ""
2742
 
2743
- #: v2/App/Controllers/Admin/Settings.php:460
2744
  msgid ""
2745
  "<p>Select discount type and its value (percentage/price/fixed price)</p> "
2746
  "<div class=\"awdr-count-by-description\"><b>Filter set above :</b><p> This "
@@ -2755,7 +2778,7 @@ msgid ""
2755
  "p></div>"
2756
  msgstr ""
2757
 
2758
- #: v2/App/Controllers/Admin/Settings.php:466
2759
  msgid ""
2760
  "<p>Select discount type and its value (percentage/price/fixed price)</p> "
2761
  "<div class=\"awdr-count-by-description\"><b>Individual Product :</b><p>This "
@@ -2769,7 +2792,7 @@ msgid ""
2769
  "because WooCommerce considers a variant as a product itself. </p></div>"
2770
  msgstr ""
2771
 
2772
- #: v2/App/Controllers/Admin/Settings.php:472
2773
  msgid ""
2774
  "<p>Select discount type and its value (percentage/price/fixed price)</p><div "
2775
  "class=\"awdr-count-by-description\"><b>All variants in each product "
@@ -2782,28 +2805,28 @@ msgid ""
2782
  "</p></div>"
2783
  msgstr ""
2784
 
2785
- #: v2/App/Controllers/Admin/Settings.php:478
2786
  msgid "Rules (optional)"
2787
  msgstr ""
2788
 
2789
- #: v2/App/Controllers/Admin/Settings.php:480
2790
  msgid ""
2791
  "<p>Choose Buy Products. (products/categories/attributes/tags/sku) Example : "
2792
  "For Buy X get Y scenarios, choose X here.</p>"
2793
  msgstr ""
2794
 
2795
- #: v2/App/Controllers/Admin/Settings.php:481
2796
  msgid ""
2797
  "<p>Choose on which products the discount should be applied (This can be "
2798
  "products/categories/SKU)</p>"
2799
  msgstr ""
2800
 
2801
- #: v2/App/Controllers/Admin/Settings.php:482
2802
  #: v2/App/Controllers/Admin/Settings.php:484
 
2803
  msgid "Get Discount"
2804
  msgstr ""
2805
 
2806
- #: v2/App/Controllers/Admin/Settings.php:483
2807
  msgid ""
2808
  "<p>Enter the min/max ranges and choose free item quantity.</p><p>Note : "
2809
  "Enable recursive checkbox if the discounts should be applied in sequential "
@@ -2811,7 +2834,7 @@ msgid ""
2811
  "p>"
2812
  msgstr ""
2813
 
2814
- #: v2/App/Controllers/Admin/Settings.php:485
2815
  msgid ""
2816
  "<p>Choose the adjustment type to which the discount should be applied. You "
2817
  "can choose from products/categories/all products.</p><p>Note : Enable "
@@ -2819,14 +2842,14 @@ msgid ""
2819
  "</p>"
2820
  msgstr ""
2821
 
2822
- #: v2/App/Controllers/Admin/Settings.php:486
2823
  msgid ""
2824
  "<p>Discount will be applied <b>only the selected products (based on mode of "
2825
  "apply)</b></p><p>Note : Enable recursive checkbox if the discounts should be "
2826
  "applied in sequential ranges. </p>"
2827
  msgstr ""
2828
 
2829
- #: v2/App/Controllers/Admin/Settings.php:487
2830
  msgid ""
2831
  "<p>Discount will be applied <b>only the selected categories (based on mode "
2832
  "of apply)</b></p><p>Note : Enable recursive checkbox if the discounts should "
@@ -2837,7 +2860,7 @@ msgid ""
2837
  "table>"
2838
  msgstr ""
2839
 
2840
- #: v2/App/Controllers/Admin/Settings.php:488
2841
  msgid ""
2842
  "<p>Discount applies on the cheapest/highest priced <b>product IN CART</b>.</"
2843
  "p><p>Note : Enable recursive checkbox if the discounts should be applied in "
@@ -2847,40 +2870,40 @@ msgid ""
2847
  "tr></tr><tr><td>4</td><td>5</td><td>2</td></tr></tbody></table>"
2848
  msgstr ""
2849
 
2850
- #: v2/App/Controllers/Admin/Settings.php:491
2851
  msgid "<p>Processing migration, please wait...</p>"
2852
  msgstr ""
2853
 
2854
- #: v2/App/Controllers/Admin/Settings.php:492
2855
  msgid "<p>Migration completed.</p>"
2856
  msgstr ""
2857
 
2858
- #: v2/App/Controllers/Admin/Settings.php:493
2859
  msgid "<p>Migration skipped.</p>"
2860
  msgstr ""
2861
 
2862
- #: v2/App/Controllers/Admin/Settings.php:494
2863
  msgid "<p>Skipping migration, please wait...</p>"
2864
  msgstr ""
2865
 
2866
- #: v2/App/Controllers/Admin/Settings.php:495
2867
  msgid ""
2868
  "<span><b>Example:</b> Product A - Small and Product A - Medium will be "
2869
  "counted as 2 quantity</span>"
2870
  msgstr ""
2871
 
2872
- #: v2/App/Controllers/Admin/Settings.php:496
2873
  msgid "<span>Discount applies to all eligible products in the store</span>"
2874
  msgstr ""
2875
 
2876
- #: v2/App/Controllers/Admin/Settings.php:497
2877
  msgid ""
2878
  "<span>Choose products that get the discount using \"In List\". If you want "
2879
  "to exclude a few products, choose \"Not In List\" and select the products "
2880
  "you wanted to exclude from discount. (You can add multiple filters)</span>"
2881
  msgstr ""
2882
 
2883
- #: v2/App/Controllers/Admin/Settings.php:498
2884
  msgid ""
2885
  "<span>Choose categories that get the discount using \"In List\". If you want "
2886
  "to exclude a few categories, choose \"Not In List\" and select the "
@@ -2888,7 +2911,7 @@ msgid ""
2888
  "filters of same type)</span>"
2889
  msgstr ""
2890
 
2891
- #: v2/App/Controllers/Admin/Settings.php:499
2892
  msgid ""
2893
  "<span> Choose attributes that get the discount using \"In List\". If you "
2894
  "want to exclude a few attributes, choose \"Not In List\" and select the "
@@ -2896,65 +2919,69 @@ msgid ""
2896
  "filters of same type)</span>"
2897
  msgstr ""
2898
 
2899
- #: v2/App/Controllers/Admin/Settings.php:500
2900
  msgid ""
2901
  "<span>Choose tags that get the discount using \"In List\". If you want to "
2902
  "exclude a few tags, choose \"Not In List\" and select the tags you wanted to "
2903
  "exclude from discount. (You can add multiple filters of same type)</span>"
2904
  msgstr ""
2905
 
2906
- #: v2/App/Controllers/Admin/Settings.php:501
2907
  msgid ""
2908
  "<span>Choose SKUs that get the discount using \"In List\". If you want to "
2909
  "exclude a few SKUs, choose \"Not In List\" and select the SKUs you wanted to "
2910
  "exclude from discount. (You can add multiple filters of same type)</span>"
2911
  msgstr ""
2912
 
2913
- #: v2/App/Controllers/Admin/Settings.php:502
2914
  msgid ""
2915
  "<span>Choose whether you want to include (or exclude) products on sale "
2916
  "(those having a sale price) for the discount </span>"
2917
  msgstr ""
2918
 
2919
- #: v2/App/Controllers/Admin/Settings.php:503
2920
  msgid "<span>Discount applies to custom taxonomy</span>"
2921
  msgstr ""
2922
 
2923
- #: v2/App/Controllers/Admin/Settings.php:504
2924
  msgid "Processing please wait.."
2925
  msgstr ""
2926
 
2927
- #: v2/App/Controllers/Admin/Settings.php:505
2928
  msgid "Rebuild index processed"
2929
  msgstr ""
2930
 
2931
- #: v2/App/Controllers/Admin/Settings.php:506
2932
  msgid "Please select the rules to build index"
2933
  msgstr ""
2934
 
2935
- #: v2/App/Controllers/Admin/Settings.php:507
2936
  msgid "Invalid File. Upload : <b style='color:red;'>.csv</b> File. </br>"
2937
  msgstr ""
2938
 
2939
- #: v2/App/Controllers/Admin/Settings.php:508
2940
  msgid ""
2941
  "<b>This rule is not running currently:</b> Rule reached maximum usage limit"
2942
  msgstr ""
2943
 
2944
- #: v2/App/Controllers/Admin/Settings.php:509
2945
  msgid ""
2946
  "<b>This rule is not running currently:</b> Start date and time is set in the "
2947
  "future date"
2948
  msgstr ""
2949
 
2950
- #: v2/App/Controllers/Admin/Settings.php:510
2951
  msgid "<b>This rule is not running currently:</b> Validity expired"
2952
  msgstr ""
2953
 
2954
- #: v2/App/Controllers/Admin/Settings.php:511
2955
  msgid "Select State"
2956
  msgstr ""
2957
 
 
 
 
 
2958
  #: v2/App/Controllers/Admin/Tabs/Compatible.php:23
2959
  msgid "Compatibility"
2960
  msgstr ""
@@ -3004,7 +3031,7 @@ msgstr ""
3004
  msgid "All Rules (except cart adjustment type)"
3005
  msgstr ""
3006
 
3007
- #: v2/App/Controllers/Admin/WDRAjax.php:691
3008
  msgid "Search State"
3009
  msgstr ""
3010
 
@@ -3042,23 +3069,23 @@ msgstr ""
3042
  msgid "<span class=\"onsale\">Sale!</span>"
3043
  msgstr ""
3044
 
3045
- #: v2/App/Controllers/ManageDiscount.php:700
3046
- #: v2/App/Controllers/ManageDiscount.php:909
3047
- #: v2/App/Controllers/ManageDiscount.php:912 v2/App/Helpers/Helper.php:271
3048
  #: v2/App/Helpers/Helper.php:272
3049
  msgid "Cart discount"
3050
  msgstr ""
3051
 
3052
- #: v2/App/Controllers/ManageDiscount.php:1175
3053
  msgid "Coupon code applied successfully."
3054
  msgstr ""
3055
 
3056
- #: v2/App/Controllers/ManageDiscount.php:1595
3057
  #: v2/App/Views/Admin/Tabs/settings.php:406
3058
  msgid "Discount <strong>{{title}}</strong> has been applied to your cart."
3059
  msgstr ""
3060
 
3061
- #: v2/App/Controllers/ManageDiscount.php:1721
3062
  msgid "You saved {{total_discount}}"
3063
  msgstr ""
3064
 
@@ -3316,12 +3343,12 @@ msgid "discount"
3316
  msgstr ""
3317
 
3318
  #: v2/App/Helpers/Rule.php:1304 v2/App/Helpers/Rule.php:1404
3319
- #: v2/App/Views/Admin/Tabs/ImportExport.php:99
3320
  msgid "Untitled Rule"
3321
  msgstr ""
3322
 
3323
  #: v2/App/Helpers/Validation.php:146 v2/App/Helpers/Validation.php:151
3324
- #: v2/App/Helpers/Validation.php:347 v2/App/Helpers/Validation.php:514
3325
  msgid "Invalid characters"
3326
  msgstr ""
3327
 
@@ -3358,133 +3385,133 @@ msgstr ""
3358
  msgid "Invalid inputs"
3359
  msgstr ""
3360
 
3361
- #: v2/App/Helpers/Validation.php:488
3362
  msgid "Validation error"
3363
  msgstr ""
3364
 
3365
- #: v2/App/Helpers/Woocommerce.php:940
3366
  msgid "Sunday"
3367
  msgstr ""
3368
 
3369
- #: v2/App/Helpers/Woocommerce.php:941
3370
  msgid "Monday"
3371
  msgstr ""
3372
 
3373
- #: v2/App/Helpers/Woocommerce.php:942
3374
  msgid "Tuesday"
3375
  msgstr ""
3376
 
3377
- #: v2/App/Helpers/Woocommerce.php:943
3378
  msgid "Wednesday"
3379
  msgstr ""
3380
 
3381
- #: v2/App/Helpers/Woocommerce.php:944
3382
  msgid "Thursday"
3383
  msgstr ""
3384
 
3385
- #: v2/App/Helpers/Woocommerce.php:945
3386
  msgid "Friday"
3387
  msgstr ""
3388
 
3389
- #: v2/App/Helpers/Woocommerce.php:946
3390
  msgid "Saturday"
3391
  msgstr ""
3392
 
3393
- #: v2/App/Helpers/Woocommerce.php:957
3394
  msgid ""
3395
  "Woocommerce before main content(Archive / Shop / Cat Pages / single product)"
3396
  msgstr ""
3397
 
3398
- #: v2/App/Helpers/Woocommerce.php:958
3399
  msgid "Woocommerce archive description(Archive / Shop / Cat Pages)"
3400
  msgstr ""
3401
 
3402
- #: v2/App/Helpers/Woocommerce.php:959
3403
  msgid "Woocommerce before shop loop(Archive / Shop / Cat Pages)"
3404
  msgstr ""
3405
 
3406
- #: v2/App/Helpers/Woocommerce.php:960
3407
  msgid "Woocommerce after shop loop(Archive / Shop / Cat Pages)"
3408
  msgstr ""
3409
 
3410
- #: v2/App/Helpers/Woocommerce.php:961
3411
  msgid ""
3412
  "Woocommerce after main content(Archive / Shop / Cat Pages / single product)"
3413
  msgstr ""
3414
 
3415
- #: v2/App/Helpers/Woocommerce.php:962 v2/App/Views/Admin/Tabs/settings.php:195
3416
  #: v2/App/Views/Admin/Tabs/settings.php:213
3417
  msgid "Woocommerce before single product"
3418
  msgstr ""
3419
 
3420
- #: v2/App/Helpers/Woocommerce.php:963 v2/App/Views/Admin/Tabs/settings.php:197
3421
  #: v2/App/Views/Admin/Tabs/settings.php:215
3422
  msgid "Woocommerce before single product summary"
3423
  msgstr ""
3424
 
3425
- #: v2/App/Helpers/Woocommerce.php:964 v2/App/Views/Admin/Tabs/settings.php:196
3426
  #: v2/App/Views/Admin/Tabs/settings.php:214
3427
  msgid "Woocommerce after single product summary"
3428
  msgstr ""
3429
 
3430
- #: v2/App/Helpers/Woocommerce.php:965 v2/App/Views/Admin/Tabs/settings.php:194
3431
  #: v2/App/Views/Admin/Tabs/settings.php:212
3432
  msgid "Woocommerce after single product"
3433
  msgstr ""
3434
 
3435
- #: v2/App/Helpers/Woocommerce.php:966
3436
  msgid "Woocommerce before cart"
3437
  msgstr ""
3438
 
3439
- #: v2/App/Helpers/Woocommerce.php:967
3440
  msgid "Woocommerce before cart table"
3441
  msgstr ""
3442
 
3443
- #: v2/App/Helpers/Woocommerce.php:968
3444
  msgid "Woocommerce before cart contents"
3445
  msgstr ""
3446
 
3447
- #: v2/App/Helpers/Woocommerce.php:969
3448
  msgid "Woocommerce cart contents"
3449
  msgstr ""
3450
 
3451
- #: v2/App/Helpers/Woocommerce.php:970
3452
  msgid "Woocommerce after cart contents"
3453
  msgstr ""
3454
 
3455
- #: v2/App/Helpers/Woocommerce.php:971
3456
  msgid "Woocommerce after cart table"
3457
  msgstr ""
3458
 
3459
- #: v2/App/Helpers/Woocommerce.php:972
3460
  msgid "Woocommerce after cart"
3461
  msgstr ""
3462
 
3463
- #: v2/App/Helpers/Woocommerce.php:973
3464
  msgid "Woocommerce before checkout form"
3465
  msgstr ""
3466
 
3467
- #: v2/App/Helpers/Woocommerce.php:975
3468
  msgid "Woocommerce before checkout billing form"
3469
  msgstr ""
3470
 
3471
- #: v2/App/Helpers/Woocommerce.php:976
3472
  msgid "Woocommerce after checkout billing form"
3473
  msgstr ""
3474
 
3475
- #: v2/App/Helpers/Woocommerce.php:977
3476
  msgid "Woocommerce before checkout shipping form"
3477
  msgstr ""
3478
 
3479
- #: v2/App/Helpers/Woocommerce.php:978
3480
  msgid "Woocommerce after checkout shipping form"
3481
  msgstr ""
3482
 
3483
- #: v2/App/Helpers/Woocommerce.php:979
3484
  msgid "Woocommerce before order notes"
3485
  msgstr ""
3486
 
3487
- #: v2/App/Helpers/Woocommerce.php:980
3488
  msgid "Woocommerce after order notes"
3489
  msgstr ""
3490
 
@@ -3595,31 +3622,27 @@ msgstr ""
3595
  msgid "Rule Used: "
3596
  msgstr ""
3597
 
3598
- #: v2/App/Views/Admin/Rules/Conditions/Main.php:163
3599
- msgid "Unlimited"
3600
- msgstr ""
3601
-
3602
- #: v2/App/Views/Admin/Rules/Conditions/Main.php:170
3603
  msgid "Maximum usage limit"
3604
  msgstr ""
3605
 
3606
- #: v2/App/Views/Admin/Rules/Conditions/Main.php:178
3607
  msgid "Rule Vaild From"
3608
  msgstr ""
3609
 
3610
- #: v2/App/Views/Admin/Rules/Conditions/Main.php:183
3611
  msgid "Vaild from"
3612
  msgstr ""
3613
 
3614
- #: v2/App/Views/Admin/Rules/Conditions/Main.php:190
3615
  msgid "Rule Valid To"
3616
  msgstr ""
3617
 
3618
- #: v2/App/Views/Admin/Rules/Conditions/Main.php:194
3619
  msgid "Vaild to"
3620
  msgstr ""
3621
 
3622
- #: v2/App/Views/Admin/Rules/Conditions/Main.php:205
3623
  msgid "Select values"
3624
  msgstr ""
3625
 
@@ -4077,6 +4100,31 @@ msgid ""
4077
  "his cart subtotal reaches 900"
4078
  msgstr ""
4079
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4080
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:16
4081
  msgid "Migrate rules from v1"
4082
  msgstr ""
@@ -4201,6 +4249,7 @@ msgid "No rules found."
4201
  msgstr ""
4202
 
4203
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:408
 
4204
  msgid "Go PRO"
4205
  msgstr ""
4206
 
@@ -4213,23 +4262,23 @@ msgid "Export"
4213
  msgstr ""
4214
 
4215
  #: v2/App/Views/Admin/Tabs/ImportExport.php:29
4216
- #: v2/App/Views/Admin/Tabs/ImportExport.php:155
4217
  msgid "Import Tool"
4218
  msgstr ""
4219
 
4220
- #: v2/App/Views/Admin/Tabs/ImportExport.php:130
4221
  msgid "<b style=\"color: green;\">Rules Imported successfully</b>"
4222
  msgstr ""
4223
 
4224
- #: v2/App/Views/Admin/Tabs/ImportExport.php:133
4225
  msgid "<b style=\"color: red;\">Problem in Importing CSV Data</b>"
4226
  msgstr ""
4227
 
4228
- #: v2/App/Views/Admin/Tabs/ImportExport.php:146
4229
  msgid "Import"
4230
  msgstr ""
4231
 
4232
- #: v2/App/Views/Admin/Tabs/ImportExport.php:156
4233
  msgid ""
4234
  "Unlock this feature by <a href=\"https://www.flycart.org/products/wordpress/"
4235
  "woocommerce-discount-rules\" target=\"_blank\">Upgrading to Pro</a>"
@@ -4340,6 +4389,49 @@ msgid ""
4340
  "discount rules to run smoothly along with these plugins"
4341
  msgstr ""
4342
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4343
  #: v2/App/Views/Admin/Tabs/settings.php:23
4344
  msgid "Calculate discount from"
4345
  msgstr ""
4
  "Content-Type: text/plain; charset=UTF-8\n"
5
  "Content-Transfer-Encoding: 8bit\n"
6
  "Project-Id-Version: Woo Discount Rules\n"
7
+ "POT-Creation-Date: 2021-04-28\n"
8
+ "PO-Revision-Date: 2021-04-28\n"
9
  "Language-Team: Flycart\n"
10
  "MIME-Version: 1.0\n"
11
  "Language: \n"
18
  msgid "Authentication required"
19
  msgstr ""
20
 
21
+ #: common.php:17 v2/App/Controllers/Admin/WDRAjax.php:748
22
  msgid "Invalid request"
23
  msgstr ""
24
 
153
  msgid "License key for the %s is not entered. %s, you can get it from %s"
154
  msgstr ""
155
 
156
+ #: v1/helper/general-helper.php:48 v2/App/Controllers/Admin/Settings.php:321
157
  msgid "Guest"
158
  msgstr ""
159
 
201
  msgstr ""
202
 
203
  #: v1/helper/general-helper.php:1034 v1/view/view-cart-rules.php:697
204
+ #: v1/view/view-pricing-rules.php:433 v2/App/Helpers/Woocommerce.php:1528
205
  msgid "Coupon already exists in WooCommerce. Please select another name"
206
  msgstr ""
207
 
211
 
212
  #: v1/helper/purchase.php:25 v1/view/includes/cart-menu.php:5
213
  #: v1/view/includes/menu.php:6 v1/view/includes/sub-menu.php:5
 
214
  #: v2/App/Controllers/Admin/Settings.php:42
215
+ #: v2/App/Controllers/Admin/Settings.php:43
216
  msgid "Woo Discount Rules"
217
  msgstr ""
218
 
272
  #: v1/includes/advanced/free_shipping_method.php:68
273
  #: v1/view/documentation.php:63 v1/view/settings_cart_rules.php:126
274
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:197
275
+ #: v2/App/Views/Admin/Tabs/help.php:112
276
  msgid "Free Shipping"
277
  msgstr ""
278
 
279
  #: v1/includes/advanced/free_shipping_method.php:73
280
+ #: v1/includes/discount-base.php:1128 v1/view/cart-rules.php:135
281
+ #: v1/view/pricing-rules.php:165 v1/view/settings_promotion.php:65
282
+ #: v1/view/settings_promotion.php:100 v2/App/Controllers/Admin/Settings.php:431
283
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:77
284
  msgid "Enable"
285
  msgstr ""
306
  msgid "Failed to save"
307
  msgstr ""
308
 
309
+ #: v1/includes/discount-base.php:207 v1/view/cart-rules.php:164
310
+ #: v1/view/pricing-rules.php:194 v2/App/Controllers/Admin/Settings.php:430
311
  msgid "Active"
312
  msgstr ""
313
 
314
+ #: v1/includes/discount-base.php:209 v1/view/cart-rules.php:166
315
+ #: v1/view/pricing-rules.php:196 v1/view/settings_cart_rules.php:95
316
  #: v1/view/settings_cart_rules.php:102 v1/view/settings_price_rules.php:169
317
  #: v1/view/settings_promotion.php:22 v1/view/settings_promotion.php:62
318
  #: v1/view/settings_promotion.php:97 v1/view/settings_promotion.php:132
389
 
390
  #: v1/includes/discount-base.php:1089 v1/view/view-pricing-rules.php:654
391
  #: v1/view/view-pricing-rules.php:657 v1/view/view-pricing-rules.php:677
392
+ #: v2/App/Controllers/Admin/Settings.php:448
393
  msgid "Quantity"
394
  msgstr ""
395
 
418
  msgstr ""
419
 
420
  #: v1/includes/discount-base.php:1095 v1/view/view-pricing-rules.php:954
421
+ #: v2/App/Controllers/Admin/Settings.php:451
422
  msgid "Discount percentage"
423
  msgstr ""
424
 
550
  msgid "Remove"
551
  msgstr ""
552
 
553
+ #: v1/includes/discount-base.php:1125 v1/view/cart-rules.php:187
554
+ #: v1/view/pricing-rules.php:217 v1/view/view-pricing-rules.php:971
555
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:304
556
  msgid "Duplicate"
557
  msgstr ""
564
  msgid "Are you sure to remove this ?"
565
  msgstr ""
566
 
567
+ #: v1/includes/discount-base.php:1129 v1/view/cart-rules.php:132
568
+ #: v1/view/pricing-rules.php:162 v2/App/Controllers/Admin/Settings.php:429
569
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:78
570
  msgid "Disable"
571
  msgstr ""
746
  msgid "and the order status should be"
747
  msgstr ""
748
 
749
+ #: v1/includes/discount-base.php:1168 v1/view/cart-rules.php:116
750
+ #: v1/view/cart-rules.php:226 v1/view/pricing-rules.php:146
751
+ #: v1/view/pricing-rules.php:256 v1/view/view-cart-rules.php:700
752
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:129
753
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:355
754
  msgid "Action"
1018
  msgstr ""
1019
 
1020
  #: v1/includes/discount-base.php:1302
1021
+ #: v2/App/Controllers/ManageDiscount.php:1163
1022
  #, php-format
1023
  msgid ""
1024
  "Sorry, it is not possible to apply coupon <b>\"%s\"</b> as you already have "
1026
  msgstr ""
1027
 
1028
  #: v1/includes/discount-base.php:1357 v1/view/includes/menu.php:18
1029
+ #: v2/App/Controllers/Admin/Settings.php:67
1030
  #: v2/App/Controllers/Admin/Tabs/GeneralSettings.php:23
1031
  msgid "Settings"
1032
  msgstr ""
1033
 
1034
+ #: v1/includes/pricing-rules.php:3209 v1/view/view-pricing-rules.php:642
1035
  msgid "Buy"
1036
  msgstr ""
1037
 
1038
+ #: v1/includes/pricing-rules.php:3213
1039
  msgid " less than or equal to "
1040
  msgstr ""
1041
 
1042
+ #: v1/includes/pricing-rules.php:3213 v1/includes/pricing-rules.php:3219
1043
  msgid " Quantity"
1044
  msgstr ""
1045
 
1046
+ #: v1/includes/pricing-rules.php:3216
1047
  msgid " Quantity "
1048
  msgstr ""
1049
 
1050
+ #: v1/includes/pricing-rules.php:3223
1051
  msgid " or more Quantity"
1052
  msgstr ""
1053
 
1054
+ #: v1/includes/pricing-rules.php:3232
1055
  msgid " any "
1056
  msgstr ""
1057
 
1058
+ #: v1/includes/pricing-rules.php:3232
1059
  msgid " products from "
1060
  msgstr ""
1061
 
1062
+ #: v1/includes/pricing-rules.php:3239
1063
  msgid " in each products"
1064
  msgstr ""
1065
 
1066
+ #: v1/includes/pricing-rules.php:3251
1067
  msgid " and get discount on "
1068
  msgstr ""
1069
 
1070
+ #: v1/includes/pricing-rules.php:3254
1071
  msgid " first "
1072
  msgstr ""
1073
 
1074
+ #: v1/includes/pricing-rules.php:3256 v1/includes/pricing-rules.php:3260
1075
  msgid " quantity of product(s) - "
1076
  msgstr ""
1077
 
1078
+ #: v1/includes/pricing-rules.php:3258
1079
  msgid " after first "
1080
  msgstr ""
1081
 
1082
+ #: v1/includes/pricing-rules.php:3276
1083
  msgid "Category(ies) "
1084
  msgstr ""
1085
 
1086
+ #: v1/includes/pricing-rules.php:3347
1087
  msgid "Get "
1088
  msgstr ""
1089
 
1090
+ #: v1/includes/pricing-rules.php:3349
1091
  #, php-format
1092
  msgid "% discount in "
1093
  msgstr ""
1094
 
1095
+ #: v1/includes/pricing-rules.php:3352
1096
  msgid "same product"
1097
  msgstr ""
1098
 
1099
+ #: v1/includes/pricing-rules.php:3354
1100
  msgid "any cheapest one from cart"
1101
  msgstr ""
1102
 
1103
+ #: v1/includes/pricing-rules.php:3357
1104
  msgid "any cheapest one of "
1105
  msgstr ""
1106
 
1107
+ #: v1/includes/pricing-rules.php:3362
1108
  msgid " quantity of any "
1109
  msgstr ""
1110
 
1111
+ #: v1/includes/pricing-rules.php:3364
1112
  msgid " cheapest item "
1113
  msgstr ""
1114
 
1115
+ #: v1/includes/pricing-rules.php:3367
1116
  msgid " quantity of cheapest item "
1117
  msgstr ""
1118
 
1119
+ #: v1/includes/pricing-rules.php:3371
1120
  msgid "from the category "
1121
  msgstr ""
1122
 
1123
+ #: v1/includes/pricing-rules.php:3393
1124
  #, php-format
1125
  msgid "%s for %s Quantity(s)"
1126
  msgstr ""
1127
 
1128
+ #: v1/includes/pricing-rules.php:3395
1129
  #, php-format
1130
  msgid "%s as price per unit"
1131
  msgstr ""
1211
  msgid "Cart Rules"
1212
  msgstr ""
1213
 
1214
+ #: v1/view/cart-rules.php:53 v1/view/pricing-rules.php:85
1215
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:56
1216
  msgid "View Examples"
1217
  msgstr ""
1218
 
1219
+ #: v1/view/cart-rules.php:54 v1/view/documentation.php:21
1220
+ #: v1/view/pricing-rules.php:86 v2/App/Views/Admin/Tabs/DiscountRule.php:58
1221
+ #: v2/App/Views/Admin/Tabs/help.php:8
1222
  msgid "Documentation"
1223
  msgstr ""
1224
 
1225
+ #: v1/view/cart-rules.php:65 v1/view/pricing-rules.php:97
1226
  msgid "You Reach Max. Rule Limit"
1227
  msgstr ""
1228
 
1229
+ #: v1/view/cart-rules.php:70 v1/view/pricing-rules.php:101
1230
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:13
1231
  msgid "Add New Rule"
1232
  msgstr ""
1233
 
1234
+ #: v1/view/cart-rules.php:81 v1/view/pricing-rules.php:111
1235
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:76
1236
  msgid "Bulk Actions"
1237
  msgstr ""
1238
 
1239
+ #: v1/view/cart-rules.php:82 v1/view/pricing-rules.php:112
1240
  msgid "Enable rules"
1241
  msgstr ""
1242
 
1243
+ #: v1/view/cart-rules.php:83 v1/view/pricing-rules.php:113
1244
  msgid "Disable rules"
1245
  msgstr ""
1246
 
1247
+ #: v1/view/cart-rules.php:84 v1/view/pricing-rules.php:114
1248
  msgid "Delete rules"
1249
  msgstr ""
1250
 
1251
+ #: v1/view/cart-rules.php:86 v1/view/pricing-rules.php:116
1252
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:81
1253
  msgid "Apply"
1254
  msgstr ""
1255
 
1256
+ #: v1/view/cart-rules.php:100 v1/view/cart-rules.php:210
1257
+ #: v1/view/pricing-rules.php:130 v1/view/pricing-rules.php:240
1258
  #: v1/view/template/discount-table.php:36
1259
  msgid "Name"
1260
  msgstr ""
1261
 
1262
+ #: v1/view/cart-rules.php:101 v1/view/cart-rules.php:211
1263
+ #: v1/view/pricing-rules.php:131 v1/view/pricing-rules.php:241
1264
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:112
1265
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:338
1266
  msgid "Start Date"
1267
  msgstr ""
1268
 
1269
+ #: v1/view/cart-rules.php:102 v1/view/cart-rules.php:212
1270
+ #: v1/view/pricing-rules.php:132 v1/view/pricing-rules.php:242
1271
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:114
1272
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:340
1273
  msgid "Expired On"
1274
  msgstr ""
1275
 
1276
+ #: v1/view/cart-rules.php:103 v1/view/cart-rules.php:213
1277
+ #: v1/view/pricing-rules.php:133 v1/view/pricing-rules.php:243
1278
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:127
1279
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:353
1280
  msgid "Status"
1281
  msgstr ""
1282
 
1283
+ #: v1/view/cart-rules.php:106 v1/view/cart-rules.php:216
1284
+ #: v1/view/pricing-rules.php:136 v1/view/pricing-rules.php:246
1285
+ #: v2/App/Views/Admin/Rules/Conditions/Main.php:213
1286
  msgid "Language"
1287
  msgstr ""
1288
 
1289
+ #: v1/view/cart-rules.php:111 v1/view/cart-rules.php:221
1290
+ #: v1/view/pricing-rules.php:141 v1/view/pricing-rules.php:251
1291
  msgid "Order"
1292
  msgstr ""
1293
 
1294
+ #: v1/view/cart-rules.php:183 v1/view/pricing-rules.php:213
1295
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:302
1296
  msgid "Edit"
1297
  msgstr ""
1298
 
1299
+ #: v1/view/cart-rules.php:194 v1/view/pricing-rules.php:224
1300
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:79
1301
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:307
1302
  msgid "Delete"
1306
  msgid "Installation and Intro:"
1307
  msgstr ""
1308
 
1309
+ #: v1/view/documentation.php:30
1310
  msgid "Getting started"
1311
  msgstr ""
1312
 
1313
+ #: v1/view/documentation.php:30
1314
  msgid "Welcome onboard"
1315
  msgstr ""
1316
 
1317
+ #: v1/view/documentation.php:33 v2/App/Views/Admin/Tabs/help.php:31
1318
  msgid "License Key activation"
1319
  msgstr ""
1320
 
1321
+ #: v1/view/documentation.php:33 v2/App/Views/Admin/Tabs/help.php:32
1322
  msgid "Learn how to obtain the license key and activate it"
1323
  msgstr ""
1324
 
1325
+ #: v1/view/documentation.php:36 v2/App/Views/Admin/Tabs/help.php:39
1326
  msgid "Version Updates!"
1327
  msgstr ""
1328
 
1329
+ #: v1/view/documentation.php:36 v2/App/Views/Admin/Tabs/help.php:40
1330
  msgid "Learn how to update to latest versions"
1331
  msgstr ""
1332
 
1342
  msgid "Price rules/BOGO discounts:"
1343
  msgstr ""
1344
 
1345
+ #: v1/view/documentation.php:45 v2/App/Views/Admin/Tabs/help.php:64
1346
  msgid "Bulk/Tiered pricing discounts"
1347
  msgstr ""
1348
 
1349
+ #: v1/view/documentation.php:45 v2/App/Views/Admin/Tabs/help.php:65
1350
  msgid "Learn how to create bulk/tiered quantity discounts in WooCommerce"
1351
  msgstr ""
1352
 
1353
+ #: v1/view/documentation.php:48 v2/App/Views/Admin/Tabs/help.php:75
1354
  msgid "How to create a perfect BOGO discount rule in WooCommerce"
1355
  msgstr ""
1356
 
1357
+ #: v1/view/documentation.php:48 v2/App/Views/Admin/Tabs/help.php:76
1358
  msgid ""
1359
  "Buy One Get One deals can be simple to complex. Learn how to get them "
1360
  "working correct in your online store"
1379
  "Price Rule and Cart Rule which gives discount based on the purchase history"
1380
  msgstr ""
1381
 
1382
+ #: v1/view/documentation.php:57 v2/App/Views/Admin/Tabs/help.php:85
1383
  msgid "Coupon code based discounts"
1384
  msgstr ""
1385
 
1386
+ #: v1/view/documentation.php:57 v2/App/Views/Admin/Tabs/help.php:86
1387
  msgid ""
1388
  "Apply the dynamic discount rules after the customer enters a valid coupon "
1389
  "code"
1393
  msgid "Cart Based Rules:"
1394
  msgstr ""
1395
 
1396
+ #: v1/view/documentation.php:63 v2/App/Views/Admin/Tabs/help.php:113
1397
  msgid "Learn how to create a free shipping cart based rule"
1398
  msgstr ""
1399
 
1400
+ #: v1/view/documentation.php:66 v2/App/Views/Admin/Tabs/help.php:123
1401
  msgid "Subtotal based - Tiered discounts"
1402
  msgstr ""
1403
 
1404
+ #: v1/view/documentation.php:66 v2/App/Views/Admin/Tabs/help.php:124
1405
  msgid "Learn how to create tiered discount based on the subtotal value"
1406
  msgstr ""
1407
 
1409
  msgid "Free product discount"
1410
  msgstr ""
1411
 
1412
+ #: v1/view/documentation.php:69 v2/App/Views/Admin/Tabs/help.php:136
1413
  msgid ""
1414
  "How to provide a automatic adding free product in cart under certain "
1415
  "conditions"
1416
  msgstr ""
1417
 
1418
  #: v1/view/documentation.php:72 v2/App/Helpers/Helper.php:173
1419
+ #: v2/App/Views/Admin/Tabs/help.php:145
1420
  msgid "Category Combination"
1421
  msgstr ""
1422
 
1423
+ #: v1/view/documentation.php:72 v2/App/Views/Admin/Tabs/help.php:146
1424
  msgid ""
1425
  "Category Combination (get discount only when Category A+ B + C are in the "
1426
  "cart)"
1438
 
1439
  #: v1/view/includes/cart-menu.php:13 v1/view/includes/sub-menu.php:13
1440
  #: v1/view/template/discount-table.php:42 v1/view/view-cart-rules.php:756
1441
+ #: v1/view/view-pricing-rules.php:708 v2/App/Controllers/Admin/Settings.php:456
1442
  #: v2/App/Views/Admin/Rules/Discounts/Bulk.php:59
1443
  #: v2/App/Views/Admin/Rules/Manage.php:209
1444
  msgid "Discount"
1473
  msgid "Taxonomy Settings"
1474
  msgstr ""
1475
 
1476
+ #: v1/view/includes/menu.php:25
1477
  msgid "Read documentation"
1478
  msgstr ""
1479
 
1617
  #: v1/view/settings_price_rules.php:86 v1/view/settings_price_rules.php:98
1618
  #: v1/view/settings_price_rules.php:110 v1/view/settings_price_rules.php:151
1619
  #: v2/App/Views/Admin/Rules/DiscountBatch/Main.php:43
1620
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:22
1621
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:37
1622
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:52
1623
  #: v2/App/Views/Admin/Tabs/settings.php:55
1624
  #: v2/App/Views/Admin/Tabs/settings.php:86
1625
  #: v2/App/Views/Admin/Tabs/settings.php:102
1635
  #: v1/view/settings_price_rules.php:87 v1/view/settings_price_rules.php:99
1636
  #: v1/view/settings_price_rules.php:111 v1/view/settings_price_rules.php:152
1637
  #: v2/App/Views/Admin/Rules/DiscountBatch/Main.php:48
1638
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:26
1639
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:41
1640
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:56
1641
  #: v2/App/Views/Admin/Tabs/settings.php:59
1642
  #: v2/App/Views/Admin/Tabs/settings.php:90
1643
  #: v2/App/Views/Admin/Tabs/settings.php:106
1985
  msgstr ""
1986
 
1987
  #: v1/view/template/sidebar.php:7 v2/App/Views/Admin/Tabs/DiscountRule.php:389
1988
+ #: v2/App/Views/Admin/Tabs/help.php:160
1989
  msgid "Looking for more features? Upgrade to PRO"
1990
  msgstr ""
1991
 
1992
  #: v1/view/template/sidebar.php:19 v2/App/Views/Admin/Tabs/DiscountRule.php:394
1993
+ #: v2/App/Views/Admin/Tabs/help.php:165
1994
  msgid "With PRO version, you can create:"
1995
  msgstr ""
1996
 
1997
  #: v1/view/template/sidebar.php:20 v2/App/Views/Admin/Tabs/DiscountRule.php:395
1998
+ #: v2/App/Views/Admin/Tabs/help.php:166
1999
  msgid "- Categories based discounts"
2000
  msgstr ""
2001
 
2002
  #: v1/view/template/sidebar.php:21 v2/App/Views/Admin/Tabs/DiscountRule.php:396
2003
+ #: v2/App/Views/Admin/Tabs/help.php:167
2004
  msgid "- User roles based discounts"
2005
  msgstr ""
2006
 
2007
  #: v1/view/template/sidebar.php:22 v2/App/Views/Admin/Tabs/DiscountRule.php:397
2008
+ #: v2/App/Views/Admin/Tabs/help.php:168
2009
  msgid "- Buy One Get One Free deals"
2010
  msgstr ""
2011
 
2012
  #: v1/view/template/sidebar.php:23 v2/App/Views/Admin/Tabs/DiscountRule.php:398
2013
+ #: v2/App/Views/Admin/Tabs/help.php:169
2014
  msgid "- Buy X Get Y deals"
2015
  msgstr ""
2016
 
2017
  #: v1/view/template/sidebar.php:24 v2/App/Views/Admin/Tabs/DiscountRule.php:399
2018
+ #: v2/App/Views/Admin/Tabs/help.php:170
2019
  #, php-format
2020
  msgid "- Buy 2, get 1 at 50% discount"
2021
  msgstr ""
2022
 
2023
  #: v1/view/template/sidebar.php:25 v2/App/Views/Admin/Tabs/DiscountRule.php:400
2024
+ #: v2/App/Views/Admin/Tabs/help.php:171
2025
  msgid "- Buy 3 for $10 (Package / Bundle [Set] Discount)"
2026
  msgstr ""
2027
 
2028
  #: v1/view/template/sidebar.php:26 v2/App/Views/Admin/Tabs/DiscountRule.php:401
2029
+ #: v2/App/Views/Admin/Tabs/help.php:172
2030
  msgid "- Different discounts with one coupon code"
2031
  msgstr ""
2032
 
2033
  #: v1/view/template/sidebar.php:27 v2/App/Views/Admin/Tabs/DiscountRule.php:402
2034
+ #: v2/App/Views/Admin/Tabs/help.php:173
2035
  msgid "- Purchase history based discounts"
2036
  msgstr ""
2037
 
2038
  #: v1/view/template/sidebar.php:28 v2/App/Views/Admin/Tabs/DiscountRule.php:403
2039
+ #: v2/App/Views/Admin/Tabs/help.php:174
2040
  msgid "- Free product / gift"
2041
  msgstr ""
2042
 
2043
  #: v1/view/template/sidebar.php:29 v2/App/Views/Admin/Tabs/DiscountRule.php:404
2044
+ #: v2/App/Views/Admin/Tabs/help.php:175
2045
  msgid "- Discount for variants"
2046
  msgstr ""
2047
 
2048
  #: v1/view/template/sidebar.php:30 v2/App/Views/Admin/Tabs/DiscountRule.php:405
2049
+ #: v2/App/Views/Admin/Tabs/help.php:176
2050
  msgid "- Conditional discounts"
2051
  msgstr ""
2052
 
2053
  #: v1/view/template/sidebar.php:31 v2/App/Views/Admin/Tabs/DiscountRule.php:406
2054
+ #: v2/App/Views/Admin/Tabs/help.php:177
2055
  msgid "- Fixed cost discounts"
2056
  msgstr ""
2057
 
2058
  #: v1/view/template/sidebar.php:32 v2/App/Views/Admin/Tabs/DiscountRule.php:407
2059
+ #: v2/App/Views/Admin/Tabs/help.php:178
2060
  msgid "- Offer fixed price on certain conditions"
2061
  msgstr ""
2062
 
2617
  msgid "Cart"
2618
  msgstr ""
2619
 
2620
+ #: v2/App/Controllers/Admin/Settings.php:167
2621
  msgid ""
2622
  "We found that your were using our old \"Woo discount rules\" plugin, Please "
2623
  "disable it!"
2624
  msgstr ""
2625
 
2626
+ #: v2/App/Controllers/Admin/Settings.php:234
2627
  msgid "no results"
2628
  msgstr ""
2629
 
2630
+ #: v2/App/Controllers/Admin/Settings.php:235
2631
  msgid "Select Values"
2632
  msgstr ""
2633
 
2634
+ #: v2/App/Controllers/Admin/Settings.php:236
2635
  msgid "Searching…"
2636
  msgstr ""
2637
 
2638
+ #: v2/App/Controllers/Admin/Settings.php:432
2639
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:294
2640
  msgid " - (Running)"
2641
  msgstr ""
2642
 
2643
+ #: v2/App/Controllers/Admin/Settings.php:433
2644
  msgid "Oops!! something went wrong!"
2645
  msgstr ""
2646
 
2647
+ #: v2/App/Controllers/Admin/Settings.php:434
2648
  msgid "Rule duplicated successfully!"
2649
  msgstr ""
2650
 
2651
+ #: v2/App/Controllers/Admin/Settings.php:435
2652
  msgid "Rule deleted successfully!"
2653
  msgstr ""
2654
 
2655
+ #: v2/App/Controllers/Admin/Settings.php:436
2656
  msgid "Are you sure want to delete this rule!"
2657
  msgstr ""
2658
 
2659
+ #: v2/App/Controllers/Admin/Settings.php:437
2660
  msgid "Rule disabled successfully!"
2661
  msgstr ""
2662
 
2663
+ #: v2/App/Controllers/Admin/Settings.php:438
2664
  msgid "Rule enabled successfully!"
2665
  msgstr ""
2666
 
2667
+ #: v2/App/Controllers/Admin/Settings.php:439
2668
  msgid "Rule saved successfully!"
2669
  msgstr ""
2670
 
2671
+ #: v2/App/Controllers/Admin/Settings.php:440
2672
  msgid "Settings saved successfully!"
2673
  msgstr ""
2674
 
2675
+ #: v2/App/Controllers/Admin/Settings.php:441
2676
  msgid "Rule priority changed successfully!"
2677
  msgstr ""
2678
 
2679
+ #: v2/App/Controllers/Admin/Settings.php:442
2680
  msgid "Rule priority not changed !"
2681
  msgstr ""
2682
 
2683
+ #: v2/App/Controllers/Admin/Settings.php:443
2684
  msgid "No data for this period"
2685
  msgstr ""
2686
 
2687
+ #: v2/App/Controllers/Admin/Settings.php:444
2688
  msgid "Oops! Coupon already exists in Woocommerce"
2689
  msgstr ""
2690
 
2691
+ #: v2/App/Controllers/Admin/Settings.php:445
2692
  msgid "Copied!"
2693
  msgstr ""
2694
 
2695
+ #: v2/App/Controllers/Admin/Settings.php:446
2696
  #: v2/App/Views/Admin/Tabs/settings.php:508
2697
  msgid "Copy ShortCode"
2698
  msgstr ""
2699
 
2700
+ #: v2/App/Controllers/Admin/Settings.php:447
2701
  msgid "If you make this recursive other row(s) will be removed!"
2702
  msgstr ""
2703
 
2704
+ #: v2/App/Controllers/Admin/Settings.php:449
2705
  msgid "Minimum Quantity"
2706
  msgstr ""
2707
 
2708
+ #: v2/App/Controllers/Admin/Settings.php:450
2709
  msgid "Discount value"
2710
  msgstr ""
2711
 
2712
+ #: v2/App/Controllers/Admin/Settings.php:452
2713
  msgid "Filter (Buy)"
2714
  msgstr ""
2715
 
2716
+ #: v2/App/Controllers/Admin/Settings.php:453
2717
  #: v2/App/Views/Admin/Rules/Manage.php:163
2718
  msgid "Filter"
2719
  msgstr ""
2720
 
2721
+ #: v2/App/Controllers/Admin/Settings.php:454
2722
  msgid ""
2723
  "<p>Choose <b>what gets discount</b> (products/categories/attributes/SKU and "
2724
  "so on )</p>\n"
2725
  "<p>Note : You can also exclude products/categories.</p>"
2726
  msgstr ""
2727
 
2728
+ #: v2/App/Controllers/Admin/Settings.php:457
2729
  msgid ""
2730
  "Discount - <a href=\"https://docs.flycart.org/en/articles/3914904-bulk-"
2731
  "discounts-tiered-pricing-discounts-discount-rules-2-0?utm_source=woo-"
2734
  "\"_blank\">Read Docs</a>"
2735
  msgstr ""
2736
 
2737
+ #: v2/App/Controllers/Admin/Settings.php:458
2738
  msgid ""
2739
  "Discount - <a href=\"https://docs.flycart.org/en/articles/3809899-bundle-set-"
2740
  "discount-discount-rules-2-0?utm_source=woo-discount-rules-"
2742
  "\"font-size: 12px;\" target=\"_blank\">Read Docs</a>"
2743
  msgstr ""
2744
 
2745
+ #: v2/App/Controllers/Admin/Settings.php:459
2746
  msgid ""
2747
  "Discount - <a href=\"https://docs.flycart.org/en/articles/3810570-buy-x-get-"
2748
  "y-discount-rules-2-0?utm_source=woo-discount-rules-"
2750
  "size: 12px;\" target=\"_blank\">Read Docs</a>"
2751
  msgstr ""
2752
 
2753
+ #: v2/App/Controllers/Admin/Settings.php:460
2754
  msgid ""
2755
  "Discount - <a href=\"https://docs.flycart.org/en/articles/3810071-buy-one-"
2756
  "get-one-free-buy-x-get-x-discount-rules-2-0?utm_source=woo-discount-rules-"
2758
  "size: 12px;\" target=\"_blank\">Read Docs</a>"
2759
  msgstr ""
2760
 
2761
+ #: v2/App/Controllers/Admin/Settings.php:461
2762
  msgid ""
2763
  "<p>Select discount type and its value (percentage/price/fixed price)</p>"
2764
  msgstr ""
2765
 
2766
+ #: v2/App/Controllers/Admin/Settings.php:462
2767
  msgid ""
2768
  "<p>Select discount type and its value (percentage/price/fixed price)</p> "
2769
  "<div class=\"awdr-count-by-description\"><b>Filter set above :</b><p> This "
2778
  "p></div>"
2779
  msgstr ""
2780
 
2781
+ #: v2/App/Controllers/Admin/Settings.php:468
2782
  msgid ""
2783
  "<p>Select discount type and its value (percentage/price/fixed price)</p> "
2784
  "<div class=\"awdr-count-by-description\"><b>Individual Product :</b><p>This "
2792
  "because WooCommerce considers a variant as a product itself. </p></div>"
2793
  msgstr ""
2794
 
2795
+ #: v2/App/Controllers/Admin/Settings.php:474
2796
  msgid ""
2797
  "<p>Select discount type and its value (percentage/price/fixed price)</p><div "
2798
  "class=\"awdr-count-by-description\"><b>All variants in each product "
2805
  "</p></div>"
2806
  msgstr ""
2807
 
2808
+ #: v2/App/Controllers/Admin/Settings.php:480
2809
  msgid "Rules (optional)"
2810
  msgstr ""
2811
 
2812
+ #: v2/App/Controllers/Admin/Settings.php:482
2813
  msgid ""
2814
  "<p>Choose Buy Products. (products/categories/attributes/tags/sku) Example : "
2815
  "For Buy X get Y scenarios, choose X here.</p>"
2816
  msgstr ""
2817
 
2818
+ #: v2/App/Controllers/Admin/Settings.php:483
2819
  msgid ""
2820
  "<p>Choose on which products the discount should be applied (This can be "
2821
  "products/categories/SKU)</p>"
2822
  msgstr ""
2823
 
 
2824
  #: v2/App/Controllers/Admin/Settings.php:484
2825
+ #: v2/App/Controllers/Admin/Settings.php:486
2826
  msgid "Get Discount"
2827
  msgstr ""
2828
 
2829
+ #: v2/App/Controllers/Admin/Settings.php:485
2830
  msgid ""
2831
  "<p>Enter the min/max ranges and choose free item quantity.</p><p>Note : "
2832
  "Enable recursive checkbox if the discounts should be applied in sequential "
2834
  "p>"
2835
  msgstr ""
2836
 
2837
+ #: v2/App/Controllers/Admin/Settings.php:487
2838
  msgid ""
2839
  "<p>Choose the adjustment type to which the discount should be applied. You "
2840
  "can choose from products/categories/all products.</p><p>Note : Enable "
2842
  "</p>"
2843
  msgstr ""
2844
 
2845
+ #: v2/App/Controllers/Admin/Settings.php:488
2846
  msgid ""
2847
  "<p>Discount will be applied <b>only the selected products (based on mode of "
2848
  "apply)</b></p><p>Note : Enable recursive checkbox if the discounts should be "
2849
  "applied in sequential ranges. </p>"
2850
  msgstr ""
2851
 
2852
+ #: v2/App/Controllers/Admin/Settings.php:489
2853
  msgid ""
2854
  "<p>Discount will be applied <b>only the selected categories (based on mode "
2855
  "of apply)</b></p><p>Note : Enable recursive checkbox if the discounts should "
2860
  "table>"
2861
  msgstr ""
2862
 
2863
+ #: v2/App/Controllers/Admin/Settings.php:490
2864
  msgid ""
2865
  "<p>Discount applies on the cheapest/highest priced <b>product IN CART</b>.</"
2866
  "p><p>Note : Enable recursive checkbox if the discounts should be applied in "
2870
  "tr></tr><tr><td>4</td><td>5</td><td>2</td></tr></tbody></table>"
2871
  msgstr ""
2872
 
2873
+ #: v2/App/Controllers/Admin/Settings.php:493
2874
  msgid "<p>Processing migration, please wait...</p>"
2875
  msgstr ""
2876
 
2877
+ #: v2/App/Controllers/Admin/Settings.php:494
2878
  msgid "<p>Migration completed.</p>"
2879
  msgstr ""
2880
 
2881
+ #: v2/App/Controllers/Admin/Settings.php:495
2882
  msgid "<p>Migration skipped.</p>"
2883
  msgstr ""
2884
 
2885
+ #: v2/App/Controllers/Admin/Settings.php:496
2886
  msgid "<p>Skipping migration, please wait...</p>"
2887
  msgstr ""
2888
 
2889
+ #: v2/App/Controllers/Admin/Settings.php:497
2890
  msgid ""
2891
  "<span><b>Example:</b> Product A - Small and Product A - Medium will be "
2892
  "counted as 2 quantity</span>"
2893
  msgstr ""
2894
 
2895
+ #: v2/App/Controllers/Admin/Settings.php:498
2896
  msgid "<span>Discount applies to all eligible products in the store</span>"
2897
  msgstr ""
2898
 
2899
+ #: v2/App/Controllers/Admin/Settings.php:499
2900
  msgid ""
2901
  "<span>Choose products that get the discount using \"In List\". If you want "
2902
  "to exclude a few products, choose \"Not In List\" and select the products "
2903
  "you wanted to exclude from discount. (You can add multiple filters)</span>"
2904
  msgstr ""
2905
 
2906
+ #: v2/App/Controllers/Admin/Settings.php:500
2907
  msgid ""
2908
  "<span>Choose categories that get the discount using \"In List\". If you want "
2909
  "to exclude a few categories, choose \"Not In List\" and select the "
2911
  "filters of same type)</span>"
2912
  msgstr ""
2913
 
2914
+ #: v2/App/Controllers/Admin/Settings.php:501
2915
  msgid ""
2916
  "<span> Choose attributes that get the discount using \"In List\". If you "
2917
  "want to exclude a few attributes, choose \"Not In List\" and select the "
2919
  "filters of same type)</span>"
2920
  msgstr ""
2921
 
2922
+ #: v2/App/Controllers/Admin/Settings.php:502
2923
  msgid ""
2924
  "<span>Choose tags that get the discount using \"In List\". If you want to "
2925
  "exclude a few tags, choose \"Not In List\" and select the tags you wanted to "
2926
  "exclude from discount. (You can add multiple filters of same type)</span>"
2927
  msgstr ""
2928
 
2929
+ #: v2/App/Controllers/Admin/Settings.php:503
2930
  msgid ""
2931
  "<span>Choose SKUs that get the discount using \"In List\". If you want to "
2932
  "exclude a few SKUs, choose \"Not In List\" and select the SKUs you wanted to "
2933
  "exclude from discount. (You can add multiple filters of same type)</span>"
2934
  msgstr ""
2935
 
2936
+ #: v2/App/Controllers/Admin/Settings.php:504
2937
  msgid ""
2938
  "<span>Choose whether you want to include (or exclude) products on sale "
2939
  "(those having a sale price) for the discount </span>"
2940
  msgstr ""
2941
 
2942
+ #: v2/App/Controllers/Admin/Settings.php:505
2943
  msgid "<span>Discount applies to custom taxonomy</span>"
2944
  msgstr ""
2945
 
2946
+ #: v2/App/Controllers/Admin/Settings.php:506
2947
  msgid "Processing please wait.."
2948
  msgstr ""
2949
 
2950
+ #: v2/App/Controllers/Admin/Settings.php:507
2951
  msgid "Rebuild index processed"
2952
  msgstr ""
2953
 
2954
+ #: v2/App/Controllers/Admin/Settings.php:508
2955
  msgid "Please select the rules to build index"
2956
  msgstr ""
2957
 
2958
+ #: v2/App/Controllers/Admin/Settings.php:509
2959
  msgid "Invalid File. Upload : <b style='color:red;'>.csv</b> File. </br>"
2960
  msgstr ""
2961
 
2962
+ #: v2/App/Controllers/Admin/Settings.php:510
2963
  msgid ""
2964
  "<b>This rule is not running currently:</b> Rule reached maximum usage limit"
2965
  msgstr ""
2966
 
2967
+ #: v2/App/Controllers/Admin/Settings.php:511
2968
  msgid ""
2969
  "<b>This rule is not running currently:</b> Start date and time is set in the "
2970
  "future date"
2971
  msgstr ""
2972
 
2973
+ #: v2/App/Controllers/Admin/Settings.php:512
2974
  msgid "<b>This rule is not running currently:</b> Validity expired"
2975
  msgstr ""
2976
 
2977
+ #: v2/App/Controllers/Admin/Settings.php:513
2978
  msgid "Select State"
2979
  msgstr ""
2980
 
2981
+ #: v2/App/Controllers/Admin/Tabs/AdvancedSection.php:24
2982
+ msgid "Advanced Options"
2983
+ msgstr ""
2984
+
2985
  #: v2/App/Controllers/Admin/Tabs/Compatible.php:23
2986
  msgid "Compatibility"
2987
  msgstr ""
3031
  msgid "All Rules (except cart adjustment type)"
3032
  msgstr ""
3033
 
3034
+ #: v2/App/Controllers/Admin/WDRAjax.php:709
3035
  msgid "Search State"
3036
  msgstr ""
3037
 
3069
  msgid "<span class=\"onsale\">Sale!</span>"
3070
  msgstr ""
3071
 
3072
+ #: v2/App/Controllers/ManageDiscount.php:702
3073
+ #: v2/App/Controllers/ManageDiscount.php:911
3074
+ #: v2/App/Controllers/ManageDiscount.php:914 v2/App/Helpers/Helper.php:271
3075
  #: v2/App/Helpers/Helper.php:272
3076
  msgid "Cart discount"
3077
  msgstr ""
3078
 
3079
+ #: v2/App/Controllers/ManageDiscount.php:1177
3080
  msgid "Coupon code applied successfully."
3081
  msgstr ""
3082
 
3083
+ #: v2/App/Controllers/ManageDiscount.php:1597
3084
  #: v2/App/Views/Admin/Tabs/settings.php:406
3085
  msgid "Discount <strong>{{title}}</strong> has been applied to your cart."
3086
  msgstr ""
3087
 
3088
+ #: v2/App/Controllers/ManageDiscount.php:1723
3089
  msgid "You saved {{total_discount}}"
3090
  msgstr ""
3091
 
3343
  msgstr ""
3344
 
3345
  #: v2/App/Helpers/Rule.php:1304 v2/App/Helpers/Rule.php:1404
3346
+ #: v2/App/Views/Admin/Tabs/ImportExport.php:101
3347
  msgid "Untitled Rule"
3348
  msgstr ""
3349
 
3350
  #: v2/App/Helpers/Validation.php:146 v2/App/Helpers/Validation.php:151
3351
+ #: v2/App/Helpers/Validation.php:347 v2/App/Helpers/Validation.php:536
3352
  msgid "Invalid characters"
3353
  msgstr ""
3354
 
3385
  msgid "Invalid inputs"
3386
  msgstr ""
3387
 
3388
+ #: v2/App/Helpers/Validation.php:510
3389
  msgid "Validation error"
3390
  msgstr ""
3391
 
3392
+ #: v2/App/Helpers/Woocommerce.php:958
3393
  msgid "Sunday"
3394
  msgstr ""
3395
 
3396
+ #: v2/App/Helpers/Woocommerce.php:959
3397
  msgid "Monday"
3398
  msgstr ""
3399
 
3400
+ #: v2/App/Helpers/Woocommerce.php:960
3401
  msgid "Tuesday"
3402
  msgstr ""
3403
 
3404
+ #: v2/App/Helpers/Woocommerce.php:961
3405
  msgid "Wednesday"
3406
  msgstr ""
3407
 
3408
+ #: v2/App/Helpers/Woocommerce.php:962
3409
  msgid "Thursday"
3410
  msgstr ""
3411
 
3412
+ #: v2/App/Helpers/Woocommerce.php:963
3413
  msgid "Friday"
3414
  msgstr ""
3415
 
3416
+ #: v2/App/Helpers/Woocommerce.php:964
3417
  msgid "Saturday"
3418
  msgstr ""
3419
 
3420
+ #: v2/App/Helpers/Woocommerce.php:975
3421
  msgid ""
3422
  "Woocommerce before main content(Archive / Shop / Cat Pages / single product)"
3423
  msgstr ""
3424
 
3425
+ #: v2/App/Helpers/Woocommerce.php:976
3426
  msgid "Woocommerce archive description(Archive / Shop / Cat Pages)"
3427
  msgstr ""
3428
 
3429
+ #: v2/App/Helpers/Woocommerce.php:977
3430
  msgid "Woocommerce before shop loop(Archive / Shop / Cat Pages)"
3431
  msgstr ""
3432
 
3433
+ #: v2/App/Helpers/Woocommerce.php:978
3434
  msgid "Woocommerce after shop loop(Archive / Shop / Cat Pages)"
3435
  msgstr ""
3436
 
3437
+ #: v2/App/Helpers/Woocommerce.php:979
3438
  msgid ""
3439
  "Woocommerce after main content(Archive / Shop / Cat Pages / single product)"
3440
  msgstr ""
3441
 
3442
+ #: v2/App/Helpers/Woocommerce.php:980 v2/App/Views/Admin/Tabs/settings.php:195
3443
  #: v2/App/Views/Admin/Tabs/settings.php:213
3444
  msgid "Woocommerce before single product"
3445
  msgstr ""
3446
 
3447
+ #: v2/App/Helpers/Woocommerce.php:981 v2/App/Views/Admin/Tabs/settings.php:197
3448
  #: v2/App/Views/Admin/Tabs/settings.php:215
3449
  msgid "Woocommerce before single product summary"
3450
  msgstr ""
3451
 
3452
+ #: v2/App/Helpers/Woocommerce.php:982 v2/App/Views/Admin/Tabs/settings.php:196
3453
  #: v2/App/Views/Admin/Tabs/settings.php:214
3454
  msgid "Woocommerce after single product summary"
3455
  msgstr ""
3456
 
3457
+ #: v2/App/Helpers/Woocommerce.php:983 v2/App/Views/Admin/Tabs/settings.php:194
3458
  #: v2/App/Views/Admin/Tabs/settings.php:212
3459
  msgid "Woocommerce after single product"
3460
  msgstr ""
3461
 
3462
+ #: v2/App/Helpers/Woocommerce.php:984
3463
  msgid "Woocommerce before cart"
3464
  msgstr ""
3465
 
3466
+ #: v2/App/Helpers/Woocommerce.php:985
3467
  msgid "Woocommerce before cart table"
3468
  msgstr ""
3469
 
3470
+ #: v2/App/Helpers/Woocommerce.php:986
3471
  msgid "Woocommerce before cart contents"
3472
  msgstr ""
3473
 
3474
+ #: v2/App/Helpers/Woocommerce.php:987
3475
  msgid "Woocommerce cart contents"
3476
  msgstr ""
3477
 
3478
+ #: v2/App/Helpers/Woocommerce.php:988
3479
  msgid "Woocommerce after cart contents"
3480
  msgstr ""
3481
 
3482
+ #: v2/App/Helpers/Woocommerce.php:989
3483
  msgid "Woocommerce after cart table"
3484
  msgstr ""
3485
 
3486
+ #: v2/App/Helpers/Woocommerce.php:990
3487
  msgid "Woocommerce after cart"
3488
  msgstr ""
3489
 
3490
+ #: v2/App/Helpers/Woocommerce.php:991
3491
  msgid "Woocommerce before checkout form"
3492
  msgstr ""
3493
 
3494
+ #: v2/App/Helpers/Woocommerce.php:993
3495
  msgid "Woocommerce before checkout billing form"
3496
  msgstr ""
3497
 
3498
+ #: v2/App/Helpers/Woocommerce.php:994
3499
  msgid "Woocommerce after checkout billing form"
3500
  msgstr ""
3501
 
3502
+ #: v2/App/Helpers/Woocommerce.php:995
3503
  msgid "Woocommerce before checkout shipping form"
3504
  msgstr ""
3505
 
3506
+ #: v2/App/Helpers/Woocommerce.php:996
3507
  msgid "Woocommerce after checkout shipping form"
3508
  msgstr ""
3509
 
3510
+ #: v2/App/Helpers/Woocommerce.php:997
3511
  msgid "Woocommerce before order notes"
3512
  msgstr ""
3513
 
3514
+ #: v2/App/Helpers/Woocommerce.php:998
3515
  msgid "Woocommerce after order notes"
3516
  msgstr ""
3517
 
3622
  msgid "Rule Used: "
3623
  msgstr ""
3624
 
3625
+ #: v2/App/Views/Admin/Rules/Conditions/Main.php:165
 
 
 
 
3626
  msgid "Maximum usage limit"
3627
  msgstr ""
3628
 
3629
+ #: v2/App/Views/Admin/Rules/Conditions/Main.php:173
3630
  msgid "Rule Vaild From"
3631
  msgstr ""
3632
 
3633
+ #: v2/App/Views/Admin/Rules/Conditions/Main.php:178
3634
  msgid "Vaild from"
3635
  msgstr ""
3636
 
3637
+ #: v2/App/Views/Admin/Rules/Conditions/Main.php:185
3638
  msgid "Rule Valid To"
3639
  msgstr ""
3640
 
3641
+ #: v2/App/Views/Admin/Rules/Conditions/Main.php:189
3642
  msgid "Vaild to"
3643
  msgstr ""
3644
 
3645
+ #: v2/App/Views/Admin/Rules/Conditions/Main.php:200
3646
  msgid "Select values"
3647
  msgstr ""
3648
 
4100
  "his cart subtotal reaches 900"
4101
  msgstr ""
4102
 
4103
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:11
4104
+ msgid ""
4105
+ "Discount Rules Advanced Options <span style=\"color:tomato; font-weight: "
4106
+ "normal;\"> - Change this option only if recommended.</span>"
4107
+ msgstr ""
4108
+
4109
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:16
4110
+ msgid "Enable when discount not applied (custom price) "
4111
+ msgstr ""
4112
+
4113
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:17
4114
+ msgid ""
4115
+ "Apply discount for the products which already have custom price or discount"
4116
+ msgstr ""
4117
+
4118
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:31
4119
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:32
4120
+ msgid "Disable recalculate total"
4121
+ msgstr ""
4122
+
4123
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:46
4124
+ #: v2/App/Views/Admin/Tabs/AdvancedOptions.php:47
4125
+ msgid "Disable recalculate when coupon apply"
4126
+ msgstr ""
4127
+
4128
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:16
4129
  msgid "Migrate rules from v1"
4130
  msgstr ""
4249
  msgstr ""
4250
 
4251
  #: v2/App/Views/Admin/Tabs/DiscountRule.php:408
4252
+ #: v2/App/Views/Admin/Tabs/help.php:179
4253
  msgid "Go PRO"
4254
  msgstr ""
4255
 
4262
  msgstr ""
4263
 
4264
  #: v2/App/Views/Admin/Tabs/ImportExport.php:29
4265
+ #: v2/App/Views/Admin/Tabs/ImportExport.php:157
4266
  msgid "Import Tool"
4267
  msgstr ""
4268
 
4269
+ #: v2/App/Views/Admin/Tabs/ImportExport.php:132
4270
  msgid "<b style=\"color: green;\">Rules Imported successfully</b>"
4271
  msgstr ""
4272
 
4273
+ #: v2/App/Views/Admin/Tabs/ImportExport.php:135
4274
  msgid "<b style=\"color: red;\">Problem in Importing CSV Data</b>"
4275
  msgstr ""
4276
 
4277
+ #: v2/App/Views/Admin/Tabs/ImportExport.php:148
4278
  msgid "Import"
4279
  msgstr ""
4280
 
4281
+ #: v2/App/Views/Admin/Tabs/ImportExport.php:158
4282
  msgid ""
4283
  "Unlock this feature by <a href=\"https://www.flycart.org/products/wordpress/"
4284
  "woocommerce-discount-rules\" target=\"_blank\">Upgrading to Pro</a>"
4389
  "discount rules to run smoothly along with these plugins"
4390
  msgstr ""
4391
 
4392
+ #: v2/App/Views/Admin/Tabs/help.php:15
4393
+ msgid " Installation & Introduction"
4394
+ msgstr ""
4395
+
4396
+ #: v2/App/Views/Admin/Tabs/help.php:23
4397
+ msgid "Installation"
4398
+ msgstr ""
4399
+
4400
+ #: v2/App/Views/Admin/Tabs/help.php:24
4401
+ msgid "Installation of Advanced discount rules"
4402
+ msgstr ""
4403
+
4404
+ #: v2/App/Views/Admin/Tabs/help.php:46
4405
+ msgid "Setting up Discount Rules"
4406
+ msgstr ""
4407
+
4408
+ #: v2/App/Views/Admin/Tabs/help.php:47
4409
+ msgid ""
4410
+ "Let's Learn how to decide on setting up a discount and configuring the same"
4411
+ msgstr ""
4412
+
4413
+ #: v2/App/Views/Admin/Tabs/help.php:56
4414
+ msgid "Price rules/BOGO discounts"
4415
+ msgstr ""
4416
+
4417
+ #: v2/App/Views/Admin/Tabs/help.php:93
4418
+ msgid "Buy One Get One Discount for Products from Same Category"
4419
+ msgstr ""
4420
+
4421
+ #: v2/App/Views/Admin/Tabs/help.php:94
4422
+ msgid ""
4423
+ "Learn how to offer Buy 2 from Category A and get 1 free from the same "
4424
+ "Category A"
4425
+ msgstr ""
4426
+
4427
+ #: v2/App/Views/Admin/Tabs/help.php:104
4428
+ msgid "Cart Based Rules"
4429
+ msgstr ""
4430
+
4431
+ #: v2/App/Views/Admin/Tabs/help.php:135
4432
+ msgid " Shipping address based discount"
4433
+ msgstr ""
4434
+
4435
  #: v2/App/Views/Admin/Tabs/settings.php:23
4436
  msgid "Calculate discount from"
4437
  msgstr ""
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://flycart.org/
4
  Tags: woocommerce, coupons, discounts, dynamic pricing, Buy One Get One Free, pricing deals, bulk discount, discount
5
  Requires at least: 4.4.1
6
  Tested up to: 5.7
7
- Stable tag: 2.3.5
8
  License: GPLv3 or later
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -20,7 +20,7 @@ Discounts will be visible in product page, product details page, cart, checkout
20
 
21
  Display the pricing discount table beautifully on the product page. Start selling more and retain customers by running promotions with the best dynamic pricing and discount plugin for WooCommerce.
22
 
23
- [View Demo](http://demo.flycart.org/woo-discount-rules) | [Documentation with real examples](https://docs.flycart.org/en/collections/2195266-discount-rules-2-0) | [Ask Questions](https://www.flycart.org/support) | [PRO version](https://www.flycart.org/products/wordpress/woocommerce-discount-rules) | [Examples](https://www.flycart.org/woocommerce-discount-rules-examples)
24
 
25
  == DISCOUNT TYPES AND FEATURES ==
26
 
@@ -224,7 +224,7 @@ We are happy to help you and guide you with the set up.
224
 
225
  = Documentation =
226
 
227
- [https://docs.flycart.org/en/collections/2195266-discount-rules-2-0](https://docs.flycart.org/en/collections/2195266-discount-rules-2-0)
228
 
229
  = Got questions? =
230
 
@@ -336,6 +336,22 @@ Note : Enable recursive checkbox if the discounts should be applied in sequentia
336
 
337
  == Changelog ==
338
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
339
  = 2.3.5 - 23/03/21 =
340
  * Feature - Cross sell feature for BXGY cheapest product option.
341
  * Feature - Recipe: sample rules to add.
4
  Tags: woocommerce, coupons, discounts, dynamic pricing, Buy One Get One Free, pricing deals, bulk discount, discount
5
  Requires at least: 4.4.1
6
  Tested up to: 5.7
7
+ Stable tag: 2.3.6
8
  License: GPLv3 or later
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
20
 
21
  Display the pricing discount table beautifully on the product page. Start selling more and retain customers by running promotions with the best dynamic pricing and discount plugin for WooCommerce.
22
 
23
+ [View Demo](http://demo.flycart.org/woo-discount-rules) | [Documentation with real examples](https://docs.flycart.org/en/collections/806883-woocommerce-discount-rules) | [Ask Questions](https://www.flycart.org/support) | [PRO version](https://www.flycart.org/products/wordpress/woocommerce-discount-rules) | [Examples](https://www.flycart.org/woocommerce-discount-rules-examples)
24
 
25
  == DISCOUNT TYPES AND FEATURES ==
26
 
224
 
225
  = Documentation =
226
 
227
+ [https://docs.flycart.org/en/collections/806883-woocommerce-discount-rules](https://docs.flycart.org/en/collections/806883-woocommerce-discount-rules)
228
 
229
  = Got questions? =
230
 
336
 
337
  == Changelog ==
338
 
339
+ = 2.3.6 - 29/04/21 =
340
+ * Feature - Recursive option for set discounts.
341
+ * Improvement - Reset migration improvement.
342
+ * Improvement - Changed rule limit option select box to number field.
343
+ * Improvement - Additional param on Event: advanced_woo_discount_rules_get_product_categories
344
+ * Improvement - Compatible with PHP 8.
345
+ * Improvement - Event: advanced_woo_discount_rules_dynamic_price_html_update
346
+ * Improvement - Event: advanced_woo_discount_rules_csv_import_export_separator
347
+ * Improvement - Event: advanced_woo_discount_rules_csv_length_for_import.
348
+ * Improvement - Event: advanced_woo_discount_rules_discounts_check_bogo_return_values.
349
+ * Improvement - Advance option to handle conflict with other plugins.
350
+ * Fix - Build onsale list not working while having huge volume of products.
351
+ * Fix - Blocking paypal return requests.
352
+ * Fix - Subsequent discount with cart rule.
353
+ * Fix - Dynamic strikeout shows incorrect value while having multiple rules.
354
+
355
  = 2.3.5 - 23/03/21 =
356
  * Feature - Cross sell feature for BXGY cheapest product option.
357
  * Feature - Recipe: sample rules to add.
v1/includes/pricing-rules.php CHANGED
@@ -1884,19 +1884,20 @@ if (!class_exists('FlycartWooDiscountRulesPricingRules')) {
1884
  $quantity++;
1885
  }
1886
  }
1887
- if(is_array($woocommerce->cart->cart_contents) && count($woocommerce->cart->cart_contents)){
1888
- foreach ($woocommerce->cart->cart_contents as $cartItem) {
1889
- if(empty($cartItem['data'])){
1890
- continue;
1891
- }
1892
- $product_id = $cartItem['product_id'];
1893
- if(isset($cartItem['variation_id']) && $cartItem['variation_id']){
1894
- $product_id = $cartItem['variation_id'];
1895
- }
1896
- if(in_array($product_id, $specific_products)){
1897
- $quantity = $quantity + $cartItem['quantity'];
 
 
1898
  }
1899
-
1900
  }
1901
  }
1902
  return $quantity;
1884
  $quantity++;
1885
  }
1886
  }
1887
+ if(!empty($woocommerce->cart->cart_contents)){
1888
+ if(is_array($woocommerce->cart->cart_contents) && count($woocommerce->cart->cart_contents)){
1889
+ foreach ($woocommerce->cart->cart_contents as $cartItem) {
1890
+ if(empty($cartItem['data'])){
1891
+ continue;
1892
+ }
1893
+ $product_id = $cartItem['product_id'];
1894
+ if(isset($cartItem['variation_id']) && $cartItem['variation_id']){
1895
+ $product_id = $cartItem['variation_id'];
1896
+ }
1897
+ if(in_array($product_id, $specific_products)){
1898
+ $quantity = $quantity + $cartItem['quantity'];
1899
+ }
1900
  }
 
1901
  }
1902
  }
1903
  return $quantity;
v1/view/cart-rules.php CHANGED
@@ -47,11 +47,13 @@ $current_language = FlycartWooDiscountRulesGeneralHelper::getWPMLLanguage();
47
  <div class="col-md-8">
48
  <h4><?php esc_html_e('Cart Rules', 'woo-discount-rules'); ?></h4>
49
  </div>
50
- <div class="col-md-4 text-right">
51
- <br/>
52
- <a href="https://www.flycart.org/woocommerce-discount-rules-examples?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=example_cart_rules#cartdiscountexample" target="_blank" class="btn btn-info"><?php esc_html_e('View Examples', 'woo-discount-rules'); ?></a>
53
- <a href="http://docs.flycart.org/woocommerce-discount-rules/cart-discount-rules?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=documentation_cart_rules" target="_blank" class="btn btn-info"><?php esc_html_e('Documentation', 'woo-discount-rules'); ?></a>
54
- </div>
 
 
55
  <hr>
56
  </div>
57
  <form id="woo_discount_list_form" method="post" action="?page=woo_discount_rules">
47
  <div class="col-md-8">
48
  <h4><?php esc_html_e('Cart Rules', 'woo-discount-rules'); ?></h4>
49
  </div>
50
+ <?php if(0) { /* Removed from v2.3.6 */ ?>
51
+ <div class="col-md-4 text-right">
52
+ <br/>
53
+ <a href="https://www.flycart.org/woocommerce-discount-rules-examples?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=example_cart_rules#cartdiscountexample" target="_blank" class="btn btn-info"><?php esc_html_e('View Examples', 'woo-discount-rules'); ?></a>
54
+ <a href="http://docs.flycart.org/woocommerce-discount-rules/cart-discount-rules?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=documentation_cart_rules" target="_blank" class="btn btn-info"><?php esc_html_e('Documentation', 'woo-discount-rules'); ?></a>
55
+ </div>
56
+ <?php } ?>
57
  <hr>
58
  </div>
59
  <form id="woo_discount_list_form" method="post" action="?page=woo_discount_rules">
v1/view/includes/menu.php CHANGED
@@ -20,8 +20,10 @@ $isPro = $purchase->isPro();
20
  ?>
21
  <a class="nav-tab <?php if ($active == 'taxonomy') { echo 'nav-tab-active'; } ?>" href="?page=woo_discount_rules&amp;tab=taxonomy">
22
  <?php esc_html_e('Taxonomy Settings', 'woo-discount-rules'); ?> </a>
23
- <a class="nav-tab <?php if ($active == 'documentation') { echo 'nav-tab-active'; } ?> btn-success" href="?page=woo_discount_rules&amp;tab=documentation">
 
24
  &nbsp;<?php esc_html_e('Read documentation', 'woo-discount-rules'); ?> </a>
25
- <?php
 
26
  } ?>
27
  </h3>
20
  ?>
21
  <a class="nav-tab <?php if ($active == 'taxonomy') { echo 'nav-tab-active'; } ?>" href="?page=woo_discount_rules&amp;tab=taxonomy">
22
  <?php esc_html_e('Taxonomy Settings', 'woo-discount-rules'); ?> </a>
23
+ <?php if(0) { /* Removed from v2.3.6 */ ?>
24
+ <a class="nav-tab <?php if ($active == 'documentation') { echo 'nav-tab-active'; } ?> btn-success" href = "?page=woo_discount_rules&amp;tab=documentation" >
25
  &nbsp;<?php esc_html_e('Read documentation', 'woo-discount-rules'); ?> </a>
26
+ <?php
27
+ }
28
  } ?>
29
  </h3>
v1/view/pricing-rules.php CHANGED
@@ -79,11 +79,13 @@ $current_language = FlycartWooDiscountRulesGeneralHelper::getWPMLLanguage();
79
  <div class="col-md-8">
80
  <h4><?php esc_html_e('Price Rules', 'woo-discount-rules'); ?></h4>
81
  </div>
82
- <div class="col-md-4 text-right">
83
- <br/>
84
- <a href="https://www.flycart.org/woocommerce-discount-rules-examples?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=example_price_rules#pricediscountexample" target="_blank" class="btn btn-info"><?php esc_html_e('View Examples', 'woo-discount-rules'); ?></a>
85
- <a href="http://docs.flycart.org/woocommerce-discount-rules/price-discount-rules?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=documentation" target="_blank" class="btn btn-info"><?php esc_html_e('Documentation', 'woo-discount-rules'); ?></a>
86
- </div>
 
 
87
  <hr>
88
  </div>
89
  <div class="">
79
  <div class="col-md-8">
80
  <h4><?php esc_html_e('Price Rules', 'woo-discount-rules'); ?></h4>
81
  </div>
82
+ <?php if(0) { /* Removed from v2.3.6 */ ?>
83
+ <div class="col-md-4 text-right">
84
+ <br/>
85
+ <a href="https://www.flycart.org/woocommerce-discount-rules-examples?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=example_price_rules#pricediscountexample" target="_blank" class="btn btn-info"><?php esc_html_e('View Examples', 'woo-discount-rules'); ?></a>
86
+ <a href="http://docs.flycart.org/woocommerce-discount-rules/price-discount-rules?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=documentation" target="_blank" class="btn btn-info"><?php esc_html_e('Documentation', 'woo-discount-rules'); ?></a>
87
+ </div>
88
+ <?php } ?>
89
  <hr>
90
  </div>
91
  <div class="">
v1/view/settings.php CHANGED
@@ -31,7 +31,7 @@ if($target === 'table'){
31
  <div class="col-md-12" align="right">
32
  <br/>
33
  <input type="submit" id="saveConfig" value="<?php esc_html_e('Save', 'woo-discount-rules'); ?>" class="btn btn-success"/>
34
- <?php echo FlycartWooDiscountRulesGeneralHelper::docsURLHTML('introduction/discount-price-rules-settings', 'settings', 'btn btn-info'); ?>
35
  </div>
36
  <div class="row">
37
  <ul class="nav nav-tabs">
31
  <div class="col-md-12" align="right">
32
  <br/>
33
  <input type="submit" id="saveConfig" value="<?php esc_html_e('Save', 'woo-discount-rules'); ?>" class="btn btn-success"/>
34
+ <?php /* Removed from v2.3.6 echo FlycartWooDiscountRulesGeneralHelper::docsURLHTML('introduction/discount-price-rules-settings', 'settings', 'btn btn-info'); */ ?>
35
  </div>
36
  <div class="row">
37
  <ul class="nav nav-tabs">
v1/view/settings_taxonomy.php CHANGED
@@ -19,7 +19,7 @@ $isPro = $flycartWooDiscountRulesPurchase->isPro();
19
  <div class="col-md-12" align="right">
20
  <br/>
21
  <input type="submit" id="save_taxonomy_config" value="<?php esc_html_e('Save', 'woo-discount-rules'); ?>" class="btn btn-success"/>
22
- <?php echo FlycartWooDiscountRulesGeneralHelper::docsURLHTML('introduction/discount-price-rules-settings', 'settings', 'btn btn-info'); ?>
23
  </div>
24
  <div class="row">
25
  <div class="">
19
  <div class="col-md-12" align="right">
20
  <br/>
21
  <input type="submit" id="save_taxonomy_config" value="<?php esc_html_e('Save', 'woo-discount-rules'); ?>" class="btn btn-success"/>
22
+ <?php /* Removed from v2.3.6 echo FlycartWooDiscountRulesGeneralHelper::docsURLHTML('introduction/discount-price-rules-settings', 'settings', 'btn btn-info');*/ ?>
23
  </div>
24
  <div class="row">
25
  <div class="">
v2/App/Controllers/Admin/Settings.php CHANGED
@@ -2,6 +2,7 @@
2
 
3
  namespace Wdr\App\Controllers\Admin;
4
 
 
5
  use Wdr\App\Controllers\Admin\Tabs\Compatible;
6
  use Wdr\App\Controllers\Admin\Tabs\DiscountRules;
7
  use Wdr\App\Controllers\Admin\Tabs\Help;
@@ -134,6 +135,7 @@ class Settings extends Base
134
  'importexport' => new ImportExport(),
135
  'help' => new Help(),
136
  'recipe' => new Recipe(),
 
137
  );
138
  uasort($tabs, function ($tab1, $tab2) {
139
  $priority1 = (int)isset($tab1->priority) ? $tab1->priority : 1000;
2
 
3
  namespace Wdr\App\Controllers\Admin;
4
 
5
+ use Wdr\App\Controllers\Admin\Tabs\AdvancedSection;
6
  use Wdr\App\Controllers\Admin\Tabs\Compatible;
7
  use Wdr\App\Controllers\Admin\Tabs\DiscountRules;
8
  use Wdr\App\Controllers\Admin\Tabs\Help;
135
  'importexport' => new ImportExport(),
136
  'help' => new Help(),
137
  'recipe' => new Recipe(),
138
+ 'advanced_section' => new AdvancedSection(),
139
  );
140
  uasort($tabs, function ($tab1, $tab2) {
141
  $priority1 = (int)isset($tab1->priority) ? $tab1->priority : 1000;
v2/App/Controllers/Admin/Tabs/AdvancedSection.php ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ namespace Wdr\App\Controllers\Admin\Tabs;
3
+
4
+ use http\Params;
5
+ use Wdr\App\Controllers\Configuration;
6
+ use Wdr\App\Controllers\DiscountCalculator;
7
+ use Wdr\App\Helpers\Helper;
8
+ use Wdr\App\Helpers\Migration;
9
+ use Wdr\App\Helpers\Rule;
10
+
11
+ if (!defined('ABSPATH')) exit;
12
+
13
+ class AdvancedSection extends Base
14
+ {
15
+ public $priority = 50;
16
+ protected $tab = 'Advanced Options';
17
+
18
+ /**
19
+ * Help constructor.
20
+ */
21
+ public function __construct()
22
+ {
23
+ parent::__construct();
24
+ $this->title = __('Advanced Options', 'woo-discount-rules');
25
+ }
26
+
27
+ /**
28
+ * Render Read documents page
29
+ * @param null $page
30
+ * @return mixed|void
31
+ */
32
+ public function render($page = NULL)
33
+ {
34
+ $advanced_config = new Configuration();
35
+ $params=array(
36
+ 'configuration' => $advanced_config,
37
+ );
38
+ $this->runAdvancedOption($advanced_config);
39
+ self::$template_helper->setPath(WDR_PLUGIN_PATH . 'App/Views/Admin/Tabs/AdvancedOptions.php')->setData($params)->display();
40
+ }
41
+
42
+ /**
43
+ * run advanced config option
44
+ * @param $advanced_config
45
+ */
46
+ public function runAdvancedOption($advanced_config){
47
+ /**
48
+ * wdr_recalculate_total_before_cart
49
+ */
50
+ if( $advanced_config->getConfig('wdr_disable_recalculate_total', 0)){
51
+ self::$template_helper->setPath(WDR_PLUGIN_PATH . 'App/Snippets/disableRecalculateTotal.php')->render();
52
+ }
53
+
54
+ /**
55
+ * wdr_recalculate_total_when_coupon_apply
56
+ */
57
+ if( $advanced_config->getConfig('wdr_recalculate_total_when_coupon_apply', 0)) {
58
+ self::$template_helper->setPath(WDR_PLUGIN_PATH . 'App/Snippets/recalculateTotalBeforeApplyCoupon.php')->render();
59
+ }
60
+
61
+ /**
62
+ * Apply discount for the products which already have custom price or discount
63
+ */
64
+ if( $advanced_config->getConfig('wdr_override_custom_price', 0)){ //
65
+ self::$template_helper->setPath(WDR_PLUGIN_PATH . 'App/Snippets/overrideCustomPrice.php')->render();
66
+ }
67
+ }
68
+ }
v2/App/Controllers/Admin/Tabs/Compatible.php CHANGED
@@ -7,7 +7,7 @@ if (!defined('ABSPATH')) exit; // Exit if accessed directly
7
 
8
  class Compatible extends Base
9
  {
10
- public $priority = 40;
11
  protected $tab = 'compatible';
12
  protected $option_key = 'awdr_compatibility';
13
  protected $options = null;
7
 
8
  class Compatible extends Base
9
  {
10
+ public $priority = 30;
11
  protected $tab = 'compatible';
12
  protected $option_key = 'awdr_compatibility';
13
  protected $options = null;
v2/App/Controllers/Admin/Tabs/GeneralSettings.php CHANGED
@@ -58,5 +58,6 @@ class GeneralSettings extends Base
58
  $data['v1_last_migrated_cart_rule_id'] = 0;
59
  $data['skipped_migration'] = 0;
60
  $migration->updateMigrationInfo($data);
 
61
  }
62
  }
58
  $data['v1_last_migrated_cart_rule_id'] = 0;
59
  $data['skipped_migration'] = 0;
60
  $migration->updateMigrationInfo($data);
61
+ update_option('advanced_woo_discount_rules_current_version', null);
62
  }
63
  }
v2/App/Controllers/Admin/Tabs/Help.php CHANGED
@@ -5,7 +5,7 @@ if (!defined('ABSPATH')) exit;
5
 
6
  class Help extends Base
7
  {
8
- public $priority = 60;
9
  protected $tab = 'help';
10
 
11
  /**
@@ -24,6 +24,10 @@ class Help extends Base
24
  */
25
  public function render($page = NULL)
26
  {
27
- self::$template_helper->setPath(WDR_PLUGIN_PATH . 'App/Views/Admin/Tabs/help.php')->display();
 
 
 
 
28
  }
29
  }
5
 
6
  class Help extends Base
7
  {
8
+ public $priority = 80;
9
  protected $tab = 'help';
10
 
11
  /**
24
  */
25
  public function render($page = NULL)
26
  {
27
+ $is_pro_installed = \Wdr\App\Helpers\Helper::hasPro();
28
+ $params = array(
29
+ 'is_pro' => $is_pro_installed,
30
+ );
31
+ self::$template_helper->setPath(WDR_PLUGIN_PATH . 'App/Views/Admin/Tabs/help.php')->setData($params)->display();
32
  }
33
  }
v2/App/Controllers/Admin/Tabs/ImportExport.php CHANGED
@@ -7,7 +7,7 @@ if (!defined('ABSPATH')) exit;
7
 
8
  class ImportExport extends Base
9
  {
10
- public $priority = 40;
11
  protected $tab = 'importexport';
12
 
13
  /**
7
 
8
  class ImportExport extends Base
9
  {
10
+ public $priority = 50;
11
  protected $tab = 'importexport';
12
 
13
  /**
v2/App/Controllers/Admin/Tabs/Recipe.php CHANGED
@@ -12,7 +12,7 @@ if (!defined('ABSPATH')) exit; // Exit if accessed directly
12
 
13
  class Recipe extends Base
14
  {
15
- public $priority = 50;
16
  protected $tab = 'recipe';
17
 
18
  /**
12
 
13
  class Recipe extends Base
14
  {
15
+ public $priority = 70;
16
  protected $tab = 'recipe';
17
 
18
  /**
v2/App/Controllers/Admin/Tabs/Statistics.php CHANGED
@@ -12,7 +12,7 @@ if (!defined('ABSPATH')) exit; // Exit if accessed directly
12
 
13
  class Statistics extends Base
14
  {
15
- public $priority = 30;
16
  protected $tab = 'statistics';
17
  protected $reports;
18
  protected $rule_details = array();
12
 
13
  class Statistics extends Base
14
  {
15
+ public $priority = 60;
16
  protected $tab = 'statistics';
17
  protected $reports;
18
  protected $rule_details = array();
v2/App/Controllers/Admin/WDRAjax.php CHANGED
@@ -103,6 +103,10 @@ class WDRAjax extends Base
103
  if($product){
104
  $price = Woocommerce::getProductPrice($product);
105
  $custom_price = $this->input->post('custom_price', '');
 
 
 
 
106
  $custom_price = floatval($custom_price);
107
  $result = apply_filters('advanced_woo_discount_rules_get_product_discount_price_from_custom_price', $price, $product, $quantity, $custom_price, 'all', true);
108
  if(!empty($result)){
@@ -377,7 +381,21 @@ class WDRAjax extends Base
377
  $save_config['applied_rule_message'] = Rule::validateHtmlBeforeSave($this->input->post('applied_rule_message'));
378
  $save_config['discount_label_for_combined_discounts'] = Rule::validateHtmlBeforeSave($this->input->post('discount_label_for_combined_discounts'));
379
  $save_config['free_shipping_title'] = Rule::validateHtmlBeforeSave($this->input->post('free_shipping_title'));
380
- return array('result' => Configuration::saveConfig($save_config), 'save_popup' => $save_alert, 'security_pass' => 'passed');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
381
  }
382
 
383
  /**
103
  if($product){
104
  $price = Woocommerce::getProductPrice($product);
105
  $custom_price = $this->input->post('custom_price', '');
106
+ if(function_exists('wc_get_price_thousand_separator')){
107
+ $price_thousand_separator = wc_get_price_thousand_separator();
108
+ $custom_price = str_replace($price_thousand_separator, "", $custom_price);
109
+ }
110
  $custom_price = floatval($custom_price);
111
  $result = apply_filters('advanced_woo_discount_rules_get_product_discount_price_from_custom_price', $price, $product, $quantity, $custom_price, 'all', true);
112
  if(!empty($result)){
381
  $save_config['applied_rule_message'] = Rule::validateHtmlBeforeSave($this->input->post('applied_rule_message'));
382
  $save_config['discount_label_for_combined_discounts'] = Rule::validateHtmlBeforeSave($this->input->post('discount_label_for_combined_discounts'));
383
  $save_config['free_shipping_title'] = Rule::validateHtmlBeforeSave($this->input->post('free_shipping_title'));
384
+ return array('result' => Configuration::saveConfig(configuration::DEFAULT_OPTION, $save_config), 'save_popup' => $save_alert, 'security_pass' => 'passed');
385
+ }
386
+
387
+ /**
388
+ * save Advanced option
389
+ * @return array
390
+ */
391
+ public function wdr_ajax_save_advanced_option()
392
+ {
393
+ Helper::validateRequest('wdr_ajax_save_advanced_option_config');
394
+ if(!Validation::validateAdvancedOptionKey($_POST)){
395
+ return array('result' => false, 'security_pass' => 'fails' );
396
+ }
397
+ $advanced_option_config = $this->input->post();
398
+ return array('result' => Configuration::saveConfig(configuration::ADVANCED_OPTION, $advanced_option_config), 'security_pass' => 'passed');
399
  }
400
 
401
  /**
v2/App/Controllers/Configuration.php CHANGED
@@ -11,6 +11,7 @@ class Configuration
11
  * @var string
12
  */
13
  const DEFAULT_OPTION = 'woo-discount-config-v2';
 
14
 
15
  public static $instance;
16
 
@@ -18,7 +19,7 @@ class Configuration
18
  * Contains all the configuration details
19
  * @var array
20
  */
21
- private static $config = array(), $default_config = array(
22
  'modify_price_at_product_page' => 1,//0,1
23
  'modify_price_at_category_page' => 1,//0,1
24
  'modify_price_at_shop_page' => 1,//0,1
@@ -65,6 +66,12 @@ class Configuration
65
  'show_subtotal_promotion' => 0,
66
  'show_cart_quantity_promotion' => 0,
67
  'show_promo_text' => '',
 
 
 
 
 
 
68
  );
69
 
70
  /**
@@ -83,11 +90,12 @@ class Configuration
83
  /**
84
  * Save the configuration
85
  * @param $data
 
86
  * @return bool
87
  */
88
- static function saveConfig($data)
89
  {
90
- return update_option(self::DEFAULT_OPTION, $data);
91
  }
92
 
93
  /**
@@ -97,13 +105,14 @@ class Configuration
97
  */
98
  function getConfig($key, $default = '')
99
  {
100
-
101
- if (empty(self::$config)) {
102
  $this->setConfig();
103
  }
104
  if (isset(self::$config[$key])) {
105
  return self::$config[$key];
106
- } elseif (isset(self::$default_config[$key])) {
 
 
107
  //Check config found in default config
108
  return self::$default_config[$key];
109
  } else {
@@ -117,5 +126,6 @@ class Configuration
117
  function setConfig()
118
  {
119
  self::$config = get_option(self::DEFAULT_OPTION);
 
120
  }
121
  }
11
  * @var string
12
  */
13
  const DEFAULT_OPTION = 'woo-discount-config-v2';
14
+ const ADVANCED_OPTION = 'awdr_advanced_option_config_v2';
15
 
16
  public static $instance;
17
 
19
  * Contains all the configuration details
20
  * @var array
21
  */
22
+ private static $config = array(), $advanced_section_config=array(), $default_config = array(
23
  'modify_price_at_product_page' => 1,//0,1
24
  'modify_price_at_category_page' => 1,//0,1
25
  'modify_price_at_shop_page' => 1,//0,1
66
  'show_subtotal_promotion' => 0,
67
  'show_cart_quantity_promotion' => 0,
68
  'show_promo_text' => '',
69
+
70
+ );
71
+ private static $default_advanced_section_config = array(
72
+ 'wdr_override_custom_price' => 0, // 0,1
73
+ 'wdr_disable_recalculate_total' => 0, // 0,1
74
+ 'wdr_recalculate_total_when_coupon_apply' => 0, // 0,1
75
  );
76
 
77
  /**
90
  /**
91
  * Save the configuration
92
  * @param $data
93
+ * @param $key
94
  * @return bool
95
  */
96
+ static function saveConfig($key = self::DEFAULT_OPTION, $data = array())
97
  {
98
+ return update_option($key, $data);
99
  }
100
 
101
  /**
105
  */
106
  function getConfig($key, $default = '')
107
  {
108
+ if (empty(self::$config) || empty(self::$advanced_section_config)) {
 
109
  $this->setConfig();
110
  }
111
  if (isset(self::$config[$key])) {
112
  return self::$config[$key];
113
+ } elseif (isset(self::$advanced_section_config[$key])){
114
+ return self::$advanced_section_config[$key];
115
+ }elseif (isset(self::$default_config[$key])) {
116
  //Check config found in default config
117
  return self::$default_config[$key];
118
  } else {
126
  function setConfig()
127
  {
128
  self::$config = get_option(self::DEFAULT_OPTION);
129
+ self::$advanced_section_config = get_option(self::ADVANCED_OPTION);
130
  }
131
  }
v2/App/Controllers/DiscountCalculator.php CHANGED
@@ -587,7 +587,7 @@ class DiscountCalculator extends Base
587
  }
588
  $rule::$set_discounts = $rule::$simple_discounts = $rule::$bulk_discounts = array();
589
  if ($discounted_price = $rule->calculateDiscount($product_price, $quantity, $product, $ajax_price, $cart_item, $price_display_condition, $is_cart, $manual_request)) {
590
- $cart_discounted_price = 0;
591
  $discount_label = '';
592
  if(!is_array($discounted_price)){
593
  $cart_discounted_price = $discounted_price * $quantity;
@@ -597,6 +597,7 @@ class DiscountCalculator extends Base
597
  $discounted_price = (isset($discounted_price[0]['discount_fee']) && !empty($discounted_price[0]['discount_fee'])) ? $discounted_price[0]['discount_fee'] : 0;
598
  if(isset($discounted_price_array[0]['discount_type'])){
599
  if($discounted_price_array[0]['discount_type'] != "flat_in_subtotal"){
 
600
  $discounted_price = $discounted_price * $quantity;
601
  }
602
  }
@@ -611,7 +612,11 @@ class DiscountCalculator extends Base
611
  if (isset(self::$total_discounts[$rule_id][$product_id]['product_price']) && !empty(self::$total_discounts[$rule_id][$product_id]['product_price'])) {
612
  $product_price = self::$total_discounts[$rule_id][$product_id]['product_price'];
613
  } else {
614
- $product_price = $product_price - $discounted_price;
 
 
 
 
615
  self::$total_discounts[$rule_id][$product_id]['product_price'] = $product_price;
616
  }
617
  }
@@ -719,7 +724,7 @@ class DiscountCalculator extends Base
719
  if($discounted_price > 0){
720
  if ($ajax_price) {
721
  self::$total_discounts['ajax_product'][$rule_id] = apply_filters('advanced_woo_discount_rules_calculated_discounts_of_each_rule_for_ajax_price', self::$total_discounts['ajax_product'][$rule_id], $product_id, $rule_id, $filter_passed, $cart_item, $is_cart, $rule);
722
- $ajax_discounts[] = $discounted_price;
723
  }else{
724
  if(!isset(self::$total_discounts[$matched_item_key][$rule_id])){
725
  self::$total_discounts[$matched_item_key][$rule_id] = array();
@@ -732,7 +737,13 @@ class DiscountCalculator extends Base
732
  }
733
  $product_price = $original_product_price;
734
  if (isset($ajax_discounts) && !empty($ajax_discounts)) {
735
- $discounted_price = array_sum($ajax_discounts);
 
 
 
 
 
 
736
  if ($discounted_price < 0) {
737
  $discounted_price = 0;
738
  }
587
  }
588
  $rule::$set_discounts = $rule::$simple_discounts = $rule::$bulk_discounts = array();
589
  if ($discounted_price = $rule->calculateDiscount($product_price, $quantity, $product, $ajax_price, $cart_item, $price_display_condition, $is_cart, $manual_request)) {
590
+ $cart_discounted_price = $cart_discount_for_single_qty_from_array = 0;
591
  $discount_label = '';
592
  if(!is_array($discounted_price)){
593
  $cart_discounted_price = $discounted_price * $quantity;
597
  $discounted_price = (isset($discounted_price[0]['discount_fee']) && !empty($discounted_price[0]['discount_fee'])) ? $discounted_price[0]['discount_fee'] : 0;
598
  if(isset($discounted_price_array[0]['discount_type'])){
599
  if($discounted_price_array[0]['discount_type'] != "flat_in_subtotal"){
600
+ $cart_discount_for_single_qty_from_array = $discounted_price;
601
  $discounted_price = $discounted_price * $quantity;
602
  }
603
  }
612
  if (isset(self::$total_discounts[$rule_id][$product_id]['product_price']) && !empty(self::$total_discounts[$rule_id][$product_id]['product_price'])) {
613
  $product_price = self::$total_discounts[$rule_id][$product_id]['product_price'];
614
  } else {
615
+ if(!empty($cart_discount_for_single_qty_from_array)){
616
+ $product_price = $product_price - $cart_discount_for_single_qty_from_array;
617
+ }else{
618
+ $product_price = $product_price - $discounted_price;
619
+ }
620
  self::$total_discounts[$rule_id][$product_id]['product_price'] = $product_price;
621
  }
622
  }
724
  if($discounted_price > 0){
725
  if ($ajax_price) {
726
  self::$total_discounts['ajax_product'][$rule_id] = apply_filters('advanced_woo_discount_rules_calculated_discounts_of_each_rule_for_ajax_price', self::$total_discounts['ajax_product'][$rule_id], $product_id, $rule_id, $filter_passed, $cart_item, $is_cart, $rule);
727
+ $ajax_discounts[$rule_id] = $discounted_price;
728
  }else{
729
  if(!isset(self::$total_discounts[$matched_item_key][$rule_id])){
730
  self::$total_discounts[$matched_item_key][$rule_id] = array();
737
  }
738
  $product_price = $original_product_price;
739
  if (isset($ajax_discounts) && !empty($ajax_discounts)) {
740
+ //If exclusive rules is not empty then apply only exclusive rule
741
+ $rules = $this->pickRule($exclusive_rules, $ajax_discounts, $apply_rule_to);
742
+ $discounted_price = 0;
743
+ foreach ($rules as $rule_id){
744
+ $discounted_price += $ajax_discounts[$rule_id];
745
+ }
746
+ // $discounted_price = array_sum($ajax_discounts);
747
  if ($discounted_price < 0) {
748
  $discounted_price = 0;
749
  }
v2/App/Controllers/ManageDiscount.php CHANGED
@@ -270,7 +270,9 @@ class ManageDiscount extends Base
270
  if(empty($initial_price) || empty($discounted_price) || empty($discount_details)){
271
  return $price_html;
272
  }
273
- return $this->getSetDiscountItemPriceHtml($discount_details, $initial_price, $discounted_price, $product, $price_html = true, $quantity, $ajax_price);
 
 
274
  }else{
275
  return false;
276
  }
@@ -531,7 +533,7 @@ class ManageDiscount extends Base
531
  * @param $partially_qualified_set_amount_duplicate
532
  * @return bool|string
533
  */
534
- function getSetStrikeoutPrice($original_price, $partially_qualified_sets, $total_discount, $other_discounts, $total_quantity = 0, $product_obj, $return_html = true, $current_product_quantity, $discount_operator, $partially_qualified_set_amount_duplicate, $multi_strikeout)
535
  {
536
  $discounted_price = null;
537
  if (!empty($original_price) && is_array($partially_qualified_sets) && !empty($partially_qualified_sets) && !empty($total_quantity)) {
@@ -1855,7 +1857,13 @@ class ManageDiscount extends Base
1855
  * */
1856
  public static function reCalculateCartTotal()
1857
  {
1858
- WC()->cart->calculate_totals();
 
 
 
 
 
 
1859
  }
1860
 
1861
  /**
@@ -1988,7 +1996,6 @@ class ManageDiscount extends Base
1988
  } else {
1989
  $partially_qualified_set[$discounted_price_per_set] = $discounted_price_quantities;
1990
  }
1991
- $multi_strikeout['set_strickout'] = true;
1992
  }
1993
  if(!empty($bogo_partial_set)){
1994
  $int_increment++;
@@ -1997,7 +2004,6 @@ class ManageDiscount extends Base
1997
  } else {
1998
  $partially_qualified_set[$bogo_cheapest_discount] = $bogo_cheapest_quantity;
1999
  }
2000
- $multi_strikeout['bogo_strickout'] = true;
2001
  }
2002
 
2003
  }
@@ -2038,7 +2044,7 @@ class ManageDiscount extends Base
2038
  ///return false;
2039
  }
2040
  } else {
2041
- $original_item_price_html = $this->getSetStrikeoutPrice($initial_price, $partially_qualified_set, $total_discount_price, $other_discounts, $total_quantity, $product_obj, $price_html, $current_product_quantity, $discount_operator, $partially_qualified_set_amount_duplicate, $multi_strikeout);
2042
  return $original_item_price_html;
2043
  }
2044
  } else {
@@ -2440,10 +2446,11 @@ class ManageDiscount extends Base
2440
  $file = fopen('php://output', 'w');
2441
  header('Content-type: application/csv');
2442
  header('Content-Disposition: attachment; filename=' . $file_name);
2443
- fputcsv($file, array('id', 'enabled', 'deleted', 'exclusive', 'title', 'priority', 'apply_to', 'filters', 'conditions', 'product_adjustments', 'cart_adjustments', 'buy_x_get_x_adjustments', 'buy_x_get_y_adjustments', 'bulk_adjustments', 'set_adjustments', 'other_discounts', 'date_from', 'date_to', 'usage_limits', 'rule_language', 'used_limits', 'additional', 'max_discount_sum', 'advanced_discount_message', 'discount_type', 'used_coupons', 'created_by', 'created_on', 'modified_by', 'modified_on'));
 
2444
  foreach ($rules as $rule_row) {
2445
  $row_data = (array)$rule_row;
2446
- fputcsv($file, $row_data);
2447
  }
2448
  exit;
2449
  }
270
  if(empty($initial_price) || empty($discounted_price) || empty($discount_details)){
271
  return $price_html;
272
  }
273
+ $strikeout_html = $this->getSetDiscountItemPriceHtml($discount_details, $initial_price, $discounted_price, $product, $price_html = true, $quantity, $ajax_price);
274
+ return apply_filters('advanced_woo_discount_rules_dynamic_price_html_update', $strikeout_html, $product, $initial_price, $discounted_price, $discount_details, $prices);
275
+ //return $this->getSetDiscountItemPriceHtml($discount_details, $initial_price, $discounted_price, $product, $price_html = true, $quantity, $ajax_price);
276
  }else{
277
  return false;
278
  }
533
  * @param $partially_qualified_set_amount_duplicate
534
  * @return bool|string
535
  */
536
+ function getSetStrikeoutPrice($original_price, $partially_qualified_sets, $total_discount, $other_discounts, $total_quantity = 0, $product_obj='', $return_html = true, $current_product_quantity=0, $discount_operator=0, $partially_qualified_set_amount_duplicate=array())
537
  {
538
  $discounted_price = null;
539
  if (!empty($original_price) && is_array($partially_qualified_sets) && !empty($partially_qualified_sets) && !empty($total_quantity)) {
1857
  * */
1858
  public static function reCalculateCartTotal()
1859
  {
1860
+ if (function_exists('WC')) {
1861
+ if(isset(WC()->cart) && WC()->cart != null){
1862
+ if (method_exists(WC()->cart, 'calculate_totals')) {
1863
+ WC()->cart->calculate_totals();
1864
+ }
1865
+ }
1866
+ }
1867
  }
1868
 
1869
  /**
1996
  } else {
1997
  $partially_qualified_set[$discounted_price_per_set] = $discounted_price_quantities;
1998
  }
 
1999
  }
2000
  if(!empty($bogo_partial_set)){
2001
  $int_increment++;
2004
  } else {
2005
  $partially_qualified_set[$bogo_cheapest_discount] = $bogo_cheapest_quantity;
2006
  }
 
2007
  }
2008
 
2009
  }
2044
  ///return false;
2045
  }
2046
  } else {
2047
+ $original_item_price_html = $this->getSetStrikeoutPrice($initial_price, $partially_qualified_set, $total_discount_price, $other_discounts, $total_quantity, $product_obj, $price_html, $current_product_quantity, $discount_operator, $partially_qualified_set_amount_duplicate);
2048
  return $original_item_price_html;
2049
  }
2050
  } else {
2446
  $file = fopen('php://output', 'w');
2447
  header('Content-type: application/csv');
2448
  header('Content-Disposition: attachment; filename=' . $file_name);
2449
+ $export_csv_separator = apply_filters('advanced_woo_discount_rules_csv_import_export_separator', ',');
2450
+ fputcsv($file, array('id', 'enabled', 'deleted', 'exclusive', 'title', 'priority', 'apply_to', 'filters', 'conditions', 'product_adjustments', 'cart_adjustments', 'buy_x_get_x_adjustments', 'buy_x_get_y_adjustments', 'bulk_adjustments', 'set_adjustments', 'other_discounts', 'date_from', 'date_to', 'usage_limits', 'rule_language', 'used_limits', 'additional', 'max_discount_sum', 'advanced_discount_message', 'discount_type', 'used_coupons', 'created_by', 'created_on', 'modified_by', 'modified_on'), $export_csv_separator);
2451
  foreach ($rules as $rule_row) {
2452
  $row_data = (array)$rule_row;
2453
+ fputcsv($file, $row_data, $export_csv_separator);
2454
  }
2455
  exit;
2456
  }
v2/App/Controllers/OnSaleShortCode.php CHANGED
@@ -265,11 +265,32 @@ class OnSaleShortCode extends ManageDiscount
265
  unset($query_args['post__not_in']);
266
  }
267
  if(!empty($query_args)){
 
 
268
  $query_args['post_type'] = 'product';
269
  $query_args['post_status'] = 'publish';
270
- $query_args['posts_per_page'] = -1;
 
 
271
  $products = new \WP_Query($query_args);
272
- $post_ids = wp_list_pluck( $products->posts, 'ID' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
273
  } else {
274
  $post_ids = array();
275
  }
265
  unset($query_args['post__not_in']);
266
  }
267
  if(!empty($query_args)){
268
+ $post_ids = array();
269
+ $total_page = $total_post_count = 0;
270
  $query_args['post_type'] = 'product';
271
  $query_args['post_status'] = 'publish';
272
+ $query_args['posts_per_page'] = 1000;
273
+ $query_args['paged'] = 1;
274
+ $query_args['offset'] = 0;
275
  $products = new \WP_Query($query_args);
276
+ $total_page = isset($products->max_num_pages) ? $products->max_num_pages : $total_page;
277
+ $total_post_count = isset( $products->found_posts) ? $products->found_posts : $total_post_count ;
278
+ if($total_page > 1 && $total_post_count > 1000){
279
+ $process_of_post_ids = wp_list_pluck( $products->posts, 'ID' );
280
+ $post_ids = !empty($process_of_post_ids) ? array_merge($post_ids,$process_of_post_ids) : $post_ids;
281
+ for($i=2; $i <= $total_page; $i++ ){
282
+ $query_args['post_type'] = 'product';
283
+ $query_args['post_status'] = 'publish';
284
+ $query_args['posts_per_page'] = 1000;
285
+ $query_args['paged'] = $i;
286
+ $query_args['offset'] = $i * 1000;
287
+ $large_products = new \WP_Query($query_args);
288
+ $process_of_post_ids = wp_list_pluck( $large_products->posts, 'ID' );
289
+ $post_ids = !empty($process_of_post_ids) ? array_merge($post_ids,$process_of_post_ids) : $post_ids;
290
+ }
291
+ }else{
292
+ $post_ids = wp_list_pluck( $products->posts, 'ID' );
293
+ }
294
  } else {
295
  $post_ids = array();
296
  }
v2/App/Helpers/Helper.php CHANGED
@@ -332,9 +332,9 @@ class Helper
332
 
333
  public static function displayCompatibleCheckMessages()
334
  {
335
- if (version_compare(WDR_VERSION, '2.3.5', '>=')) {
336
  if (defined('WDR_PRO_VERSION')) {
337
- if (version_compare(WDR_PRO_VERSION, '2.3.5', '<')) {
338
  $url = admin_url() . "plugins.php";
339
  $plugin_page = '<a target="_blank" href="' . $url . '">' . __('Update now', 'woo-discount-rules') . '</a>';
340
  ?>
332
 
333
  public static function displayCompatibleCheckMessages()
334
  {
335
+ if (version_compare(WDR_VERSION, '2.3.6', '>=')) {
336
  if (defined('WDR_PRO_VERSION')) {
337
+ if (version_compare(WDR_PRO_VERSION, '2.3.6', '<')) {
338
  $url = admin_url() . "plugins.php";
339
  $plugin_page = '<a target="_blank" href="' . $url . '">' . __('Update now', 'woo-discount-rules') . '</a>';
340
  ?>
v2/App/Helpers/Input.php CHANGED
@@ -316,6 +316,9 @@ class Input
316
  */
317
  function remove_invisible_characters($str, $url_encoded = TRUE)
318
  {
 
 
 
319
  $non_displayables = array();
320
  // every control character except newline (dec 10),
321
  // carriage return (dec 13) and horizontal tab (dec 09)
316
  */
317
  function remove_invisible_characters($str, $url_encoded = TRUE)
318
  {
319
+ //This we have added as In paypal return request it filters the values which blocks from updating status
320
+ return $str;
321
+
322
  $non_displayables = array();
323
  // every control character except newline (dec 10),
324
  // carriage return (dec 13) and horizontal tab (dec 09)
v2/App/Helpers/Migration.php CHANGED
@@ -1081,16 +1081,17 @@ class Migration
1081
  /**
1082
  * Alter query
1083
  * */
1084
- public function filter_where( $where = '', $object ) {
1085
- global $wpdb;
1086
- $query_array = $object->query;
1087
- if(isset($query_array['awdr_last_upgrade_id'])){
1088
- if($query_array['awdr_last_upgrade_id'] > 0){
1089
- $last_id = intval($query_array['awdr_last_upgrade_id']);
1090
- $where .= " AND ".$wpdb->posts.".ID > ".$last_id." ";
 
 
1091
  }
1092
  }
1093
-
1094
  return $where;
1095
  }
1096
 
1081
  /**
1082
  * Alter query
1083
  * */
1084
+ public function filter_where( $where = '', $object = '' ) {
1085
+ if(is_object($object) && !empty($object)){
1086
+ global $wpdb;
1087
+ $query_array = $object->query;
1088
+ if(isset($query_array['awdr_last_upgrade_id'])){
1089
+ if($query_array['awdr_last_upgrade_id'] > 0){
1090
+ $last_id = intval($query_array['awdr_last_upgrade_id']);
1091
+ $where .= " AND ".$wpdb->posts.".ID > ".$last_id." ";
1092
+ }
1093
  }
1094
  }
 
1095
  return $where;
1096
  }
1097
 
v2/App/Helpers/Rule.php CHANGED
@@ -654,7 +654,7 @@ class Rule
654
  * @param $cart_item
655
  * @return int
656
  */
657
- function calculateDiscount($product_price, $quantity, $product, $ajax_price, $cart_item = array(), $price_display_condition, $is_cart=true, $manual_request = false)
658
  {
659
  $product_id = self::$woocommerce_helper->getProductId($product);
660
  self::$simple_discounts[$product_id] = 0;
654
  * @param $cart_item
655
  * @return int
656
  */
657
+ function calculateDiscount($product_price, $quantity, $product, $ajax_price, $cart_item = array(), $price_display_condition='show_when_matched', $is_cart=true, $manual_request = false)
658
  {
659
  $product_id = self::$woocommerce_helper->getProductId($product);
660
  self::$simple_discounts[$product_id] = 0;
v2/App/Helpers/Validation.php CHANGED
@@ -246,6 +246,7 @@ class Validation
246
  'product_adjustments.apply_as_cart_rule',
247
  'bulk_adjustments.apply_as_cart_rule',
248
  'set_adjustments.apply_as_cart_rule',
 
249
  'buyx_getx_adjustments.ranges.*.recursive',
250
  'buyx_gety_adjustments.ranges.*.recursive',
251
  'discount_badge.display')
@@ -462,6 +463,28 @@ class Validation
462
  return $v->validate();
463
  }
464
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
465
  /**
466
  *validate Report Fields
467
  *
246
  'product_adjustments.apply_as_cart_rule',
247
  'bulk_adjustments.apply_as_cart_rule',
248
  'set_adjustments.apply_as_cart_rule',
249
+ 'set_adjustments.ranges.*.recursive',
250
  'buyx_getx_adjustments.ranges.*.recursive',
251
  'buyx_gety_adjustments.ranges.*.recursive',
252
  'discount_badge.display')
463
  return $v->validate();
464
  }
465
 
466
+ /**
467
+ * Validate advanced option section
468
+ * @param $post_values
469
+ * @return bool
470
+ */
471
+ static function validateAdvancedOptionKey($post_values)
472
+ {
473
+ $advanced_option_validator = new Validator($post_values);
474
+ $advanced_option_validator->rule('integer',
475
+ array(
476
+ 'wdr_override_custom_price',
477
+ 'wdr_recalculate_total_before_cart',
478
+ 'wdr_recalculate_total_when_coupon_apply',
479
+ )
480
+ );
481
+ if ($advanced_option_validator->validate()) {
482
+ return true;
483
+ } else {
484
+ return false;
485
+ }
486
+ }
487
+
488
  /**
489
  *validate Report Fields
490
  *
v2/App/Helpers/Woocommerce.php CHANGED
@@ -231,16 +231,16 @@ class Woocommerce
231
  */
232
  static function getProductCategories($product)
233
  {
234
- $categories = array();
235
  if (method_exists($product, 'get_category_ids')) {
236
  if (self::productTypeIs($product, 'variation')) {
 
237
  $parent_id = self::getProductParentId($product);
238
  $product = self::getProduct($parent_id);
239
  }
240
  $categories = $product->get_category_ids();
241
  }
242
- return apply_filters('advanced_woo_discount_rules_get_product_categories', $categories, $product);
243
-
244
  }
245
 
246
  /**
@@ -470,8 +470,10 @@ class Woocommerce
470
  }
471
  $cart = array();
472
  if (function_exists('WC')) {
473
- if (method_exists(WC()->cart, 'get_cart')) {
474
- $cart = WC()->cart->get_cart();
 
 
475
  }
476
  }
477
  return apply_filters('advanced_woo_discount_rules_get_cart', $cart);
@@ -484,8 +486,10 @@ class Woocommerce
484
  static function calculateCartTotals()
485
  {
486
  if (function_exists('WC')) {
487
- if (method_exists(WC()->cart, 'calculate_totals')) {
488
- WC()->cart->calculate_totals();
 
 
489
  }
490
  }
491
  }
@@ -503,8 +507,10 @@ class Woocommerce
503
  static function get_shipping_packages()
504
  {
505
  if (function_exists('WC')) {
506
- if (method_exists(WC()->cart, 'get_shipping_packages')) {
507
- return WC()->cart->get_shipping_packages();
 
 
508
  }
509
  }
510
  return null;
@@ -532,8 +538,10 @@ class Woocommerce
532
  public static function add_to_cart($product_id = 0, $quantity = 1, $variation_id = 0, $variation = array(), $cart_item_data = array())
533
  {
534
  if (function_exists('WC')) {
535
- if (method_exists(WC()->cart, 'add_to_cart')) {
536
- return WC()->cart->add_to_cart( $product_id, $quantity, $variation_id, $variation, $cart_item_data);
 
 
537
  }
538
  }
539
 
@@ -551,8 +559,10 @@ class Woocommerce
551
  */
552
  public static function set_quantity( $cart_item_key, $quantity = 1, $refresh_totals = true ){
553
  if (function_exists('WC')) {
554
- if (method_exists(WC()->cart, 'set_quantity')) {
555
- return WC()->cart->set_quantity($cart_item_key, $quantity, $refresh_totals);
 
 
556
  }
557
  }
558
 
@@ -568,8 +578,10 @@ class Woocommerce
568
  public static function remove_cart_item($_cart_item_key)
569
  {
570
  if (function_exists('WC')) {
571
- if (method_exists(WC()->cart, 'remove_cart_item')) {
572
- return WC()->cart->remove_cart_item( $_cart_item_key );
 
 
573
  }
574
  }
575
 
@@ -586,8 +598,10 @@ class Woocommerce
586
  public static function remove_coupon($code)
587
  {
588
  if (function_exists('WC')) {
589
- if (method_exists(WC()->cart, 'remove_coupon')) {
590
- return WC()->cart->remove_coupon( $code );
 
 
591
  }
592
  }
593
 
@@ -679,10 +693,12 @@ class Woocommerce
679
  {
680
  if (function_exists('WC')) {
681
  $subtotal = 0;
682
- if (method_exists(WC()->cart, 'get_subtotal')) {
683
- $subtotal = WC()->cart->get_subtotal();
684
- } elseif (isset(WC()->cart->subtotal)) {
685
- $subtotal = WC()->cart->subtotal;
 
 
686
  }
687
  return apply_filters('advanced_woo_discount_rules_get_cart_subtotal', $subtotal);
688
  }
@@ -774,8 +790,10 @@ class Woocommerce
774
  static function getAppliedCoupons()
775
  {
776
  if (function_exists('WC')) {
777
- if (method_exists(WC()->cart, 'get_applied_coupons')) {
778
- return WC()->cart->get_applied_coupons();
 
 
779
  }
780
  }
781
  return NULL;
231
  */
232
  static function getProductCategories($product)
233
  {
234
+ $categories = $variant = array();
235
  if (method_exists($product, 'get_category_ids')) {
236
  if (self::productTypeIs($product, 'variation')) {
237
+ $variant = $product;
238
  $parent_id = self::getProductParentId($product);
239
  $product = self::getProduct($parent_id);
240
  }
241
  $categories = $product->get_category_ids();
242
  }
243
+ return apply_filters('advanced_woo_discount_rules_get_product_categories', $categories, $product, $variant);
 
244
  }
245
 
246
  /**
470
  }
471
  $cart = array();
472
  if (function_exists('WC')) {
473
+ if(isset(WC()->cart) && WC()->cart != null){
474
+ if (method_exists(WC()->cart, 'get_cart')) {
475
+ $cart = WC()->cart->get_cart();
476
+ }
477
  }
478
  }
479
  return apply_filters('advanced_woo_discount_rules_get_cart', $cart);
486
  static function calculateCartTotals()
487
  {
488
  if (function_exists('WC')) {
489
+ if(isset(WC()->cart) && WC()->cart != null){
490
+ if (method_exists(WC()->cart, 'calculate_totals')) {
491
+ WC()->cart->calculate_totals();
492
+ }
493
  }
494
  }
495
  }
507
  static function get_shipping_packages()
508
  {
509
  if (function_exists('WC')) {
510
+ if(isset(WC()->cart) && WC()->cart != null) {
511
+ if (method_exists(WC()->cart, 'get_shipping_packages')) {
512
+ return WC()->cart->get_shipping_packages();
513
+ }
514
  }
515
  }
516
  return null;
538
  public static function add_to_cart($product_id = 0, $quantity = 1, $variation_id = 0, $variation = array(), $cart_item_data = array())
539
  {
540
  if (function_exists('WC')) {
541
+ if(isset(WC()->cart) && WC()->cart != null) {
542
+ if (method_exists(WC()->cart, 'add_to_cart')) {
543
+ return WC()->cart->add_to_cart($product_id, $quantity, $variation_id, $variation, $cart_item_data);
544
+ }
545
  }
546
  }
547
 
559
  */
560
  public static function set_quantity( $cart_item_key, $quantity = 1, $refresh_totals = true ){
561
  if (function_exists('WC')) {
562
+ if(isset(WC()->cart) && WC()->cart != null) {
563
+ if (method_exists(WC()->cart, 'set_quantity')) {
564
+ return WC()->cart->set_quantity($cart_item_key, $quantity, $refresh_totals);
565
+ }
566
  }
567
  }
568
 
578
  public static function remove_cart_item($_cart_item_key)
579
  {
580
  if (function_exists('WC')) {
581
+ if(isset(WC()->cart) && WC()->cart != null) {
582
+ if (method_exists(WC()->cart, 'remove_cart_item')) {
583
+ return WC()->cart->remove_cart_item($_cart_item_key);
584
+ }
585
  }
586
  }
587
 
598
  public static function remove_coupon($code)
599
  {
600
  if (function_exists('WC')) {
601
+ if(isset(WC()->cart) && WC()->cart != null) {
602
+ if (method_exists(WC()->cart, 'remove_coupon')) {
603
+ return WC()->cart->remove_coupon($code);
604
+ }
605
  }
606
  }
607
 
693
  {
694
  if (function_exists('WC')) {
695
  $subtotal = 0;
696
+ if(isset(WC()->cart) && WC()->cart != null) {
697
+ if (method_exists(WC()->cart, 'get_subtotal')) {
698
+ $subtotal = WC()->cart->get_subtotal();
699
+ } elseif (isset(WC()->cart->subtotal)) {
700
+ $subtotal = WC()->cart->subtotal;
701
+ }
702
  }
703
  return apply_filters('advanced_woo_discount_rules_get_cart_subtotal', $subtotal);
704
  }
790
  static function getAppliedCoupons()
791
  {
792
  if (function_exists('WC')) {
793
+ if(isset(WC()->cart) && WC()->cart != null) {
794
+ if (method_exists(WC()->cart, 'get_applied_coupons')) {
795
+ return WC()->cart->get_applied_coupons();
796
+ }
797
  }
798
  }
799
  return NULL;
v2/App/Snippets/disableRecalculateTotal.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @since 2.3.6
4
+ */
5
+
6
+ add_filter('advanced_woo_discount_rules_do_recalculate_total', '__return_false');
v2/App/Snippets/overrideCustomPrice.php ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @since 2.3.6
4
+ */
5
+
6
+ add_action('plugins_loaded', function (){
7
+ add_filter('woocommerce_product_get_price', function ($price, $product){
8
+ if(isset($product->is_awdr_free_product)){
9
+ if($product->is_awdr_free_product){
10
+ $price = 0;
11
+ }
12
+ }
13
+
14
+ return $price;
15
+ }, PHP_INT_MAX, 2);
16
+ add_filter('woocommerce_product_variation_get_price', function ($price, $product){
17
+ if(isset($product->is_awdr_free_product)){
18
+ if($product->is_awdr_free_product){
19
+ $price = 0;
20
+ }
21
+ }
22
+
23
+ return $price;
24
+ }, PHP_INT_MAX, 2);
25
+
26
+ add_action('advanced_woo_discount_rules_after_apply_discount', function (){
27
+ if (function_exists('WC')) {
28
+ if (method_exists(WC()->cart, 'get_cart')) {
29
+ $cart_items = WC()->cart->get_cart();
30
+ if(!empty($cart_items)){
31
+ foreach ($cart_items as $key => $item){
32
+ if ( !empty( $item['wdr_free_product'] ) ){
33
+ if(!empty($item["data"])){
34
+ if($item['wdr_free_product'] == 'Free'){
35
+ $item["data"]->is_awdr_free_product = 1;
36
+ }
37
+ }
38
+ }
39
+ }
40
+ }
41
+ }
42
+ }
43
+ }, 10);
44
+
45
+ add_filter('advanced_woo_discount_rules_do_apply_price_discount', '__return_false');
46
+
47
+ add_filter('woocommerce_product_get_price', function ($price, $product){
48
+ if(isset($product->awdr_discount_price)){
49
+ if($product->awdr_discount_price >= 0){
50
+ $price = $product->awdr_discount_price;
51
+ }
52
+ }
53
+ return $price;
54
+ }, PHP_INT_MAX, 2);
55
+
56
+ add_filter('woocommerce_product_variation_get_price', function ($price, $product){
57
+ if(isset($product->awdr_discount_price)){
58
+ if($product->awdr_discount_price >= 0){
59
+ $price = $product->awdr_discount_price;
60
+ }
61
+ }
62
+ return $price;
63
+ }, PHP_INT_MAX, 2);
64
+
65
+ add_action('advanced_woo_discount_rules_discounted_price_of_cart_item', function ($price, $cart_item, $cart_object, $calculated_cart_item_discount){
66
+ if(!empty($cart_item["data"])){
67
+ if(isset($calculated_cart_item_discount['initial_price'])){
68
+ $cart_item["data"]->awdr_product_original_price = $calculated_cart_item_discount['initial_price'];
69
+ }
70
+ $cart_item["data"]->awdr_discount_price = $price;
71
+ }
72
+
73
+ return $price;
74
+ }, 10, 4);
75
+ }, PHP_INT_MAX);
v2/App/Snippets/recalculateTotalBeforeApplyCoupon.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @since 2.3.6
4
+ */
5
+
6
+ add_filter('advanced_woo_discount_rules_recalculate_discount_before_apply_coupon', '__return_false');
v2/App/Views/Admin/Menu.php CHANGED
@@ -11,10 +11,10 @@
11
  );
12
  $target = '';
13
  $link = admin_url('admin.php?' . http_build_query($params));
14
- if ($tab_key === 'help') {
15
- $link = 'https://docs.flycart.org/en/collections/2195266-discount-rules-2-0?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=documentation';
16
- $target = 'target="_blank"';
17
- }
18
  ?>
19
  <a class="nav-tab <?php echo($tab_key === $current_tab ? 'nav-tab-active' : ''); ?>"
20
  style="<?php echo ($tab_key === 'help') ? 'background: cornflowerblue;color: white;' : ''; ?>"
11
  );
12
  $target = '';
13
  $link = admin_url('admin.php?' . http_build_query($params));
14
+ // if ($tab_key === 'help') {
15
+ //$link = 'https://docs.flycart.org/en/collections/2195266-discount-rules-2-0?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=documentation';
16
+ // $target = 'target="_blank"';
17
+ // }
18
  ?>
19
  <a class="nav-tab <?php echo($tab_key === $current_tab ? 'nav-tab-active' : ''); ?>"
20
  style="<?php echo ($tab_key === 'help') ? 'background: cornflowerblue;color: white;' : ''; ?>"
v2/App/Views/Admin/Rules/Conditions/Main.php CHANGED
@@ -149,7 +149,7 @@ $is_pro = \Wdr\App\Helpers\Helper::hasPro();
149
  <span class="awdr-rule-limit-timestamp"><?php
150
  if(!empty($current_time)) echo sprintf(esc_html__('Current date and time: %s', 'woo-discount-rules'), '<b>' . date('Y-m-d H:i', $current_time) . '</b>'); ?>
151
  </span>
152
- <span class="awdr-rule-limit-timestamp usage-limits-display" style="<?php echo ($usage_limits == 0) ? 'display:none;' : ''; ?>"> <?php
153
  _e('Rule Used: ', 'woo-discount-rules');
154
  echo "<b class='awdr-used-limit-total'>".$used_limits."</b>"; ?>
155
  </span>
@@ -159,15 +159,10 @@ $is_pro = \Wdr\App\Helpers\Helper::hasPro();
159
  <div class="awdr-general-settings-section">
160
  <div class="wdr-rule-setting">
161
  <div class="wdr-apply-to" style="float:left;">
162
- <select class="wdr-title" id="select_usage_limits" name="usage_limits">
163
- <option value="0" <?php echo ($usage_limits == 0) ? 'selected' : ''; ?>><?php _e('Unlimited', 'woo-discount-rules'); ?></option><?php
164
- for ($limit = 1; $limit <= 20; $limit++) {
165
- ?>
166
- <option
167
- value="<?php echo $limit; ?>" <?php echo ($usage_limits == $limit) ? 'selected' : ''; ?>><?php _e($limit, 'woo-discount-rules'); ?></option><?php
168
- } ?>
169
- </select><span
170
- class="wdr_desc_text"><?php _e('Maximum usage limit', 'woo-discount-rules'); ?></span>
171
  </div>
172
  <div class="wdr-rule-date-valid">
173
  <div class="wdr-dateandtime-value">
149
  <span class="awdr-rule-limit-timestamp"><?php
150
  if(!empty($current_time)) echo sprintf(esc_html__('Current date and time: %s', 'woo-discount-rules'), '<b>' . date('Y-m-d H:i', $current_time) . '</b>'); ?>
151
  </span>
152
+ <span class="awdr-rule-limit-timestamp "> <?php
153
  _e('Rule Used: ', 'woo-discount-rules');
154
  echo "<b class='awdr-used-limit-total'>".$used_limits."</b>"; ?>
155
  </span>
159
  <div class="awdr-general-settings-section">
160
  <div class="wdr-rule-setting">
161
  <div class="wdr-apply-to" style="float:left;">
162
+
163
+ <input type="number" name="usage_limits" value="<?php echo (!empty($usage_limits)) ? $usage_limits : '';?>" min="1" class="wdr-title number_only_field" id="select_usage_limits" placeholder="Unlimited">
164
+
165
+ <span class="wdr_desc_text"><?php _e('Maximum usage limit', 'woo-discount-rules'); ?></span>
 
 
 
 
 
166
  </div>
167
  <div class="wdr-rule-date-valid">
168
  <div class="wdr-dateandtime-value">
v2/App/Views/Admin/Tabs/AdvancedOptions.php ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if (!defined('ABSPATH')) {
3
+ exit; // Exit if accessed directly
4
+ }
5
+ ?>
6
+ <br>
7
+
8
+ <div id="wpbody-content" class="awdr-container">
9
+ <div class="awdr-advanced-configuration-form">
10
+ <form name="awdr_advanced_configuration_form" id="awdr_advanced_configuration_form" method="post">
11
+ <h2><?php _e('Discount Rules Advanced Options <span style="color:tomato; font-weight: normal;"> - Change this option only if recommended.</span>', 'woo-discount-rules') ?></h2>
12
+ <table class="wdr-general-setting form-table">
13
+ <tbody style="background-color: #fff;">
14
+ <tr>
15
+ <td scope="row" style="width: 30%">
16
+ <label for="" class="awdr-left-align"><?php _e('Enable when discount not applied (custom price) ', 'woo-discount-rules') ?></label>
17
+ <span class="wdr_settings_desc_text awdr-clear-both"><?php esc_attr_e('Apply discount for the products which already have custom price or discount', 'woo-discount-rules'); ?></span>
18
+ </td>
19
+ <td>
20
+ <input type="radio" name="wdr_override_custom_price" id="do_wdr_override_custom_price"
21
+ value="1" <?php echo($configuration->getConfig('wdr_override_custom_price', 0) ? 'checked' : '') ?>><label
22
+ for="do_wdr_override_custom_price"><?php _e('Yes', 'woo-discount-rules'); ?></label>
23
+ <input type="radio" name="wdr_override_custom_price"
24
+ id="do_not_wdr_override_custom_price"
25
+ value="0" <?php echo(!$configuration->getConfig('wdr_override_custom_price', 0) ? 'checked' : '') ?>><label
26
+ for="do_not_wdr_override_custom_price"><?php _e('No', 'woo-discount-rules'); ?></label>
27
+ </td>
28
+ </tr>
29
+ <tr>
30
+ <td scope="row">
31
+ <label for="" class="awdr-left-align"><?php _e('Disable recalculate total', 'woo-discount-rules') ?></label>
32
+ <span class="wdr_settings_desc_text awdr-clear-both"><?php esc_attr_e('Disable recalculate total', 'woo-discount-rules'); ?></span>
33
+ </td>
34
+ <td>
35
+ <input type="radio" name="wdr_disable_recalculate_total" id="do_disable_recalculate_total"
36
+ value="1" <?php echo($configuration->getConfig('wdr_disable_recalculate_total', 0) ? 'checked' : '') ?>><label
37
+ for="do_disable_recalculate_total"><?php _e('Yes', 'woo-discount-rules'); ?></label>
38
+ <input type="radio" name="wdr_disable_recalculate_total"
39
+ id="do_not_disable_recalculate_total"
40
+ value="0" <?php echo(!$configuration->getConfig('wdr_disable_recalculate_total', 0) ? 'checked' : '') ?>><label
41
+ for="do_not_disable_recalculate_total"><?php _e('No', 'woo-discount-rules'); ?></label>
42
+ </td>
43
+ </tr>
44
+ <tr>
45
+ <td scope="row">
46
+ <label for="" class="awdr-left-align"><?php _e('Disable recalculate when coupon apply', 'woo-discount-rules') ?></label>
47
+ <span class="wdr_settings_desc_text awdr-clear-both"><?php esc_attr_e('Disable recalculate when coupon apply', 'woo-discount-rules'); ?> </span>
48
+ </td>
49
+ <td>
50
+ <input type="radio" name="wdr_recalculate_total_when_coupon_apply" id="do_recalculate_total_when_coupon_apply"
51
+ value="1" <?php echo($configuration->getConfig('wdr_recalculate_total_when_coupon_apply', 0) ? 'checked' : '') ?>><label
52
+ for="do_recalculate_total_when_coupon_apply"><?php _e('Yes', 'woo-discount-rules'); ?></label>
53
+ <input type="radio" name="wdr_recalculate_total_when_coupon_apply"
54
+ id="do_not_recalculate_total_when_coupon_apply"
55
+ value="0" <?php echo(!$configuration->getConfig('wdr_recalculate_total_when_coupon_apply', 0) ? 'checked' : '') ?>><label
56
+ for="do_not_recalculate_total_when_coupon_apply"><?php _e('No', 'woo-discount-rules'); ?></label>
57
+ </td>
58
+ </tr>
59
+ </tbody>
60
+ </table>
61
+ <div class="save-configuration">
62
+ <input type="hidden" name="method" value="save_advanced_option">
63
+ <input type="hidden" name="action" value="wdr_ajax">
64
+ <input type="hidden" name="awdr_nonce" value="<?php echo \Wdr\App\Helpers\Helper::create_nonce('wdr_ajax_save_advanced_option_config'); ?>">
65
+ <p class="submit"><input type="submit" name="submit" id="submit" class="button button-primary save-configuration-submit"
66
+ value="Save"></p>
67
+ </div>
68
+ </form>
69
+ </div>
70
+ </div>
v2/App/Views/Admin/Tabs/ImportExport.php CHANGED
@@ -49,7 +49,9 @@ $is_pro_activated = isset($is_pro_activated) ? $is_pro_activated : false;
49
  }
50
  $current_user = get_current_user_id();
51
  $i = 1;
52
- while (($column = fgetcsv($file, 100000, ",")) !== FALSE) {
 
 
53
  if ($i == 1) {
54
  $i++;
55
  continue;
49
  }
50
  $current_user = get_current_user_id();
51
  $i = 1;
52
+ $csv_separator = apply_filters('advanced_woo_discount_rules_csv_import_export_separator', ',');
53
+ $csv_length = apply_filters('advanced_woo_discount_rules_csv_length_for_import', 100000);
54
+ while (($column = fgetcsv($file, $csv_length, $csv_separator)) !== FALSE) {
55
  if ($i == 1) {
56
  $i++;
57
  continue;
v2/App/Views/Admin/Tabs/help.php CHANGED
@@ -3,85 +3,188 @@ if (!defined('ABSPATH')) {
3
  exit; // Exit if accessed directly
4
  }
5
  ?>
6
- <div class="container-fluid woo_discount_loader_outer awdr-container">
7
- <div class="row-fluid">
8
- <div class="col-md-12">
9
- <div class="row form-group">
10
- <div class="col-md-12">
11
- <br>
12
- <h4><?php _e('Documentation', 'woo-discount-rules');?></h4>
 
 
 
 
 
 
 
 
 
 
 
 
 
13
  <hr>
14
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  </div>
16
  <div class="row form-group enable_variable_product_cache_con">
17
- <div class="col-md-12">
18
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
19
- href="https://docs.flycart.org/woocommerce-discount-rules/introduction/getting-started?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;getting_started"
20
- target="_blank"><?php _e('Getting started', 'woo-discount-rules');?></a>
21
- <p class=""><?php _e('Welcome onboard', 'woo-discount-rules');?></p></div>
 
22
  </div>
23
- <div class="col-md-12">
 
 
 
 
24
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
25
- href="https://docs.flycart.org/woocommerce-discount-rules/introduction/license-key-activation?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;license_key_activation"
26
- target="_blank">License Key activation</a>
27
- <p class="">Learn how to obtain the license key and activate it</p></div>
 
28
  </div>
29
- <div class="col-md-12">
 
 
 
30
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
31
- href="https://docs.flycart.org/woocommerce-discount-rules/introduction/version-updates?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;version_updates"
32
- target="_blank">Version Updates!</a>
33
- <p class="">Learn how to update to latest versions</p></div>
 
34
  </div>
35
- <div class="col-md-12">
 
36
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
37
- href="https://docs.flycart.org/woocommerce-discount-rules/introduction/price-discount-rules?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;price_rules"
38
- target="_blank">Price Discount Rules</a>
39
- <p class="">Learn all about creating a price discount rules</p></div>
 
40
  </div>
41
- <div class="col-md-12">
 
 
 
 
 
 
 
 
 
 
 
 
42
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
43
- href="https://docs.flycart.org/woocommerce-discount-rules/introduction/cart-discount-rules?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;cart_rules"
44
- target="_blank">Cart Discount Rules</a>
45
- <p class="">Cart based discount rules with examples.</p></div>
 
 
46
  </div>
47
- <div class="col-md-12">
 
 
 
48
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
49
- href="https://docs.flycart.org/woocommerce-discount-rules/buy-one-get-one-deals/how-to-create-a-perfect-bogo-discount-rule-in-woocommerce?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;perfect_bogo"
50
- target="_blank">How to create a perfect BOGO discount
51
- rule in WooCommerce</a>
52
- <p class="">Buy One Get One deals can be simple to complex. Learn how to get them working
53
- correct in your online store</p></div>
54
  </div>
55
- <div class="col-md-12">
 
 
 
 
56
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
57
- href="https://docs.flycart.org/woocommerce-discount-rules/role-based-discounts/user-role-based-discount-rules?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;role_based"
58
- target="_blank">User Role based discount rules</a>
59
- <p class="">Learn how to create user role based / customer group based discount in
60
- WooCommerce</p></div>
 
61
  </div>
62
- <div class="col-md-12">
 
 
63
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
64
- href="https://docs.flycart.org/woocommerce-discount-rules/coupon-based-discounts/activate-discount-rule-using-a-coupon-code-in-woocommerce?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;coupon_based"
65
- target="_blank">Activate discount rule using a coupon
66
- code in WooCommerce</a>
67
- <p class="">Apply the dynamic discount rules after the customer enters a valid coupon code</p>
68
- </div>
69
  </div>
70
- <div class="col-md-12">
71
- <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
72
- href="https://docs.flycart.org/woocommerce-discount-rules/purchase-history-based-discounts/purchase-history-based-discount?utm_source=woo-discount-rules&amp;utm_campaign=doc&amp;utm_medium=text-click&amp;purchase_history"
73
- target="_blank">Purchase History Based Discount</a>
74
- <p class="">Price Rule and Cart Rule which gives discount based on the purchase history</p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
75
  </div>
76
  </div>
77
  </div>
78
- </div>
79
- </div>
80
- <div class="woo_discount_loader">
81
- <div class="lds-ripple">
82
- <div></div>
83
- <div></div>
84
- </div>
85
  </div>
 
86
  </div>
87
 
3
  exit; // Exit if accessed directly
4
  }
5
  ?>
6
+ <div class="woo_discount_loader_outer awdr-container">
7
+ <div class="awdr-documentation-title" style="padding: 15px;">
8
+ <h3><?php _e('Documentation', 'woo-discount-rules');?></h3>
9
+ <hr>
10
+ </div>
11
+ <div class="awdr-three-column-document-head">
12
+ <div class="awdr-first-column awdr-three-column-inner">
13
+ <div style="padding-left: 10px;">
14
+ <h4>
15
+ <?php _e(' Installation & Introduction', 'woo-discount-rules');?>
16
+ </h4>
17
+ <hr/>
18
+ </div>
19
+ <div class="row form-group enable_variable_product_cache_con">
20
+ <div class="awdr-hr-line">
21
+ <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
22
+ href="https://docs.flycart.org/en/articles/3798255-installation-discount-rules-2-0?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=Installation_documentation"
23
+ target="_blank"><?php _e('Installation', 'woo-discount-rules');?></a>
24
+ <p class=""><?php _e('Installation of Advanced discount rules', 'woo-discount-rules');?></p></div>
25
+
26
  <hr>
27
  </div>
28
+ <div class="awdr-hr-line">
29
+ <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
30
+ href="https://docs.flycart.org/en/articles/2088290-license-key-activation?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=license_key_activation"
31
+ target="_blank"><?php _e('License Key activation', 'woo-discount-rules');?></a>
32
+ <p class=""><?php _e('Learn how to obtain the license key and activate it', 'woo-discount-rules');?></p></div>
33
+ <hr>
34
+
35
+ </div>
36
+ <div class="awdr-hr-line">
37
+ <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
38
+ href="https://docs.flycart.org/en/articles/2258499-version-updates?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=version-updates"
39
+ target="_blank"><?php _e('Version Updates!', 'woo-discount-rules');?></a>
40
+ <p class=""><?php _e('Learn how to update to latest versions', 'woo-discount-rules');?></p></div>
41
+ <hr/>
42
+ </div>
43
+ <div class="awdr-hr-line">
44
+ <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
45
+ href="https://docs.flycart.org/en/articles/4849528-how-to-set-up-discount-rules?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=how-to-set-up-discount-rules"
46
+ target="_blank"><?php _e('Setting up Discount Rules', 'woo-discount-rules');?></a>
47
+ <p class=""><?php _e("Let's Learn how to decide on setting up a discount and configuring the same", 'woo-discount-rules');?></p></div>
48
+ <hr/>
49
+ </div>
50
+
51
+ </div>
52
+ </div>
53
+ <div class="awdr-second-column awdr-three-column-inner">
54
+ <div style="padding-left: 10px;">
55
+ <h4>
56
+ <?php _e('Price rules/BOGO discounts', 'woo-discount-rules');?>
57
+ </h4>
58
+ <hr/>
59
  </div>
60
  <div class="row form-group enable_variable_product_cache_con">
61
+ <div class="awdr-hr-line">
62
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
63
+ href="https://docs.flycart.org/en/articles/3914904-bulk-discounts-tiered-pricing-discounts-discount-rules-2-0?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=bulk_pricing_discount?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=bulk_pricing_discount"
64
+ target="_blank"><?php _e('Bulk/Tiered pricing discounts', 'woo-discount-rules');?></a>
65
+ <p class=""><?php _e('Learn how to create bulk/tiered quantity discounts in WooCommerce', 'woo-discount-rules');?></p></div>
66
+ <hr/>
67
  </div>
68
+
69
+
70
+
71
+
72
+ <div class="awdr-hr-line">
73
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
74
+ href="https://docs.flycart.org/en/articles/4035579-free-product-auto-add-auto-remove-discount-rules-2-0?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=free-product-auto-add-auto-remove-discount-rules-2-0"
75
+ target="_blank"><?php _e('How to create a perfect BOGO discount rule in WooCommerce', 'woo-discount-rules');?></a>
76
+ <p class=""><?php _e('Buy One Get One deals can be simple to complex. Learn how to get them working correct in your online store', 'woo-discount-rules');?></p></div>
77
+ <hr/>
78
  </div>
79
+
80
+
81
+
82
+ <div class="awdr-hr-line">
83
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
84
+ href="https://docs.flycart.org/en/articles/1818998-activate-discount-rule-using-a-coupon-code-in-woocommerce?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=coupon_based?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=coupon_based"
85
+ target="_blank"><?php _e('Coupon code based discounts', 'woo-discount-rules');?></a>
86
+ <p class=""><?php _e('Apply the dynamic discount rules after the customer enters a valid coupon code', 'woo-discount-rules');?></p></div>
87
+ <hr/>
88
  </div>
89
+
90
+ <div class="awdr-hr-line">
91
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
92
+ href="https://docs.flycart.org/en/articles/4210448-buy-one-get-one-discount-for-products-from-same-category-2-0?utm_source=woo-discount-rules&utm_campaign=doc&utm_medium=text-click&utm_content=buy-one-get-one-discount-for-products-from-same-category-2-0"
93
+ target="_blank"><?php _e('Buy One Get One Discount for Products from Same Category', 'woo-discount-rules');?></a>
94
+ <p class=""><?php _e('Learn how to offer Buy 2 from Category A and get 1 free from the same Category A', 'woo-discount-rules');?></p></div>
95
+ <hr/>
96
  </div>
97
+
98
+
99
+ </div>
100
+ </div>
101
+ <div class="awdr-third-column awdr-three-column-inner">
102
+ <div style="padding-left: 10px;">
103
+ <h4>
104
+ <?php _e('Cart Based Rules', 'woo-discount-rules');?>
105
+ </h4>
106
+ <hr/>
107
+ </div>
108
+ <div class="row form-group enable_variable_product_cache_con">
109
+ <div class="awdr-hr-line">
110
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
111
+ href="https://docs.flycart.org/en/articles/3807036-free-shipping-discount-rules-2-0?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=free-shipping-discount-rules-2-0"
112
+ target="_blank"><?php _e('Free Shipping', 'woo-discount-rules');?></a>
113
+ <p class=""><?php _e('Learn how to create a free shipping cart based rule', 'woo-discount-rules');?></p></div>
114
+ <hr>
115
+
116
  </div>
117
+
118
+
119
+
120
+ <div class="awdr-hr-line">
121
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
122
+ href="https://docs.flycart.org/en/articles/3894861-subtotal-based-tiered-discounts-discount-rules-2-0?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=subtotal-based-tiered-discounts-discount-rules-2-0"
123
+ target="_blank"><?php _e('Subtotal based - Tiered discounts', 'woo-discount-rules');?></a>
124
+ <p class=""><?php _e('Learn how to create tiered discount based on the subtotal value', 'woo-discount-rules');?></p></div>
125
+ <hr>
126
+
127
  </div>
128
+
129
+
130
+
131
+
132
+ <div class="awdr-hr-line">
133
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
134
+ href="https://docs.flycart.org/en/articles/4214869-customer-shipping-address-based-discount-2-0?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=customer-shipping-address-based-discount-2-0"
135
+ target="_blank"><?php _e(' Shipping address based discount', 'woo-discount-rules');?></a>
136
+ <p class=""><?php _e('How to provide a automatic adding free product in cart under certain conditions', 'woo-discount-rules');?></p></div>
137
+ <hr>
138
+
139
  </div>
140
+
141
+
142
+ <div class="awdr-hr-line">
143
  <div class="wdr_read_documentation_con"><a class="wdr_read_documentation"
144
+ href="https://docs.flycart.org/en/articles/4279899-category-combination-get-discount-only-when-category-a-b-c-are-in-the-cart-2-0?utm_source=woo-discount-rules-v2&utm_campaign=doc&utm_medium=text-click&utm_content=category-combination"
145
+ target="_blank"><?php _e('Category Combination', 'woo-discount-rules');?></a>
146
+ <p class=""><?php _e('Category Combination (get discount only when Category A+ B + C are in the cart)', 'woo-discount-rules');?></p></div>
147
+ <hr>
148
+
149
  </div>
150
+
151
+
152
+
153
+ </div>
154
+ </div>
155
+ <?php
156
+ if(!$is_pro){ ?>
157
+ <div class="awdr-fourth-column awdr-three-column-inner">
158
+ <div>
159
+ <div class="col-md-12">
160
+ <a href="https://www.flycart.org/products/wordpress/woocommerce-discount-rules?utm_source=wpwoodiscountrules&utm_medium=plugin&utm_campaign=inline&utm_content=woo-discount-rules" target="_blank" class="btn btn-success"><?php esc_html_e('Looking for more features? Upgrade to PRO', 'woo-discount-rules'); ?></a>
161
+ </div>
162
+ <div class="woo-side-panel">
163
+ <div class="panel">
164
+ <div class="panel-body">
165
+ <h3><?php esc_html_e('With PRO version, you can create:', 'woo-discount-rules')?></h3>
166
+ <p><?php esc_html_e('- Categories based discounts', 'woo-discount-rules')?></p>
167
+ <p><?php esc_html_e('- User roles based discounts', 'woo-discount-rules')?></p>
168
+ <p><?php esc_html_e('- Buy One Get One Free deals', 'woo-discount-rules')?></p>
169
+ <p><?php esc_html_e('- Buy X Get Y deals', 'woo-discount-rules')?></p>
170
+ <p><?php esc_html_e('- Buy 2, get 1 at 50% discount', 'woo-discount-rules')?></p>
171
+ <p><?php esc_html_e('- Buy 3 for $10 (Package / Bundle [Set] Discount)', 'woo-discount-rules')?></p>
172
+ <p><?php esc_html_e('- Different discounts with one coupon code', 'woo-discount-rules')?></p>
173
+ <p><?php esc_html_e('- Purchase history based discounts', 'woo-discount-rules')?></p>
174
+ <p><?php esc_html_e('- Free product / gift', 'woo-discount-rules')?></p>
175
+ <p><?php esc_html_e('- Discount for variants', 'woo-discount-rules')?></p>
176
+ <p><?php esc_html_e('- Conditional discounts', 'woo-discount-rules')?></p>
177
+ <p><?php esc_html_e('- Fixed cost discounts', 'woo-discount-rules')?></p>
178
+ <p><?php esc_html_e('- Offer fixed price on certain conditions', 'woo-discount-rules')?></p>
179
+ <p><a href="https://www.flycart.org/products/wordpress/woocommerce-discount-rules?utm_source=wpwoodiscountrules&amp;utm_medium=plugin&amp;utm_campaign=inline&amp;utm_content=woo-discount-rules" class="btn btn-success" target="_blank"><?php esc_html_e('Go PRO', 'woo-discount-rules'); ?></a></p>
180
+ </div>
181
+ </div>
182
  </div>
183
  </div>
184
  </div>
185
+ <?php } ?>
186
+
 
 
 
 
 
187
  </div>
188
+
189
  </div>
190
 
v2/Assets/Css/admin_style.css CHANGED
@@ -684,6 +684,8 @@ LEVEL 3. SETTINGS
684
  .awdr-container .modal,
685
  .awdr-container .modal-box {
686
  z-index: 9999;
 
 
687
  }
688
 
689
  .awdr-container .modal-sandbox {
@@ -1499,3 +1501,37 @@ div.awdr_recipe_main_card{
1499
  margin-left: 10px;
1500
  }
1501
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
684
  .awdr-container .modal,
685
  .awdr-container .modal-box {
686
  z-index: 9999;
687
+ visibility: unset;
688
+ opacity: 1;
689
  }
690
 
691
  .awdr-container .modal-sandbox {
1501
  margin-left: 10px;
1502
  }
1503
 
1504
+ .awdr-three-column-document-head {
1505
+ display: grid;
1506
+ grid-template-columns: auto auto auto auto;
1507
+ background-color: #f0f0f1;
1508
+ padding: 5px;
1509
+ }
1510
+ .awdr-three-column-inner{
1511
+ padding: 15px;
1512
+ font-size: large;
1513
+ }
1514
+ .awdr-first-column{
1515
+ /*background-color: #f0f8ff ;*/
1516
+ background-color: #ffffff ;
1517
+ border: 3px solid #f0f0f1;
1518
+ }
1519
+ .awdr-second-column{
1520
+ /* background-color: #fff5ee;*/
1521
+ background-color: #ffffff ;
1522
+ border: 3px solid #f0f0f1;
1523
+ }
1524
+ .awdr-third-column{
1525
+ /*background-color: #faebd7;*/
1526
+ background-color: #ffffff ;
1527
+ border: 3px solid #f0f0f1;
1528
+ }
1529
+ .wdr_read_documentation{
1530
+ text-decoration: none;
1531
+ }
1532
+ .wdr_read_documentation_con{
1533
+ padding: 10px 0px 10px 0px;
1534
+ }
1535
+ .awdr-hr-line{
1536
+ padding: 10px;
1537
+ }
v2/Assets/Js/admin_script.js CHANGED
@@ -1775,6 +1775,50 @@ jQuery(document).ready(function ($) {
1775
  });
1776
  });
1777
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1778
  /**
1779
  * Save and Close settings
1780
  */
@@ -2323,10 +2367,13 @@ jQuery(document).ready(function ($) {
2323
  let bogo_min_range = $(this).attr('data-bogo-min-range');
2324
  let bogo_border_bottom = $(this).attr('data-bogo-border');
2325
  let recursive_length = $('.' + get_bogo_range_parent).length;
 
2326
  if ($(this).prop("checked") == false) {
2327
- $(this).parents('.awdr_bogo_main').siblings('.' + hide_if_recursive).show();
2328
- $(this).parents('.' + get_recursive_parent).siblings('.' + bogo_max_range).show();
2329
- $(this).parents('.' + get_recursive_parent).siblings().find('.' + bogo_max_range).show();
 
 
2330
  // $('.'+bogo_max_range).show();
2331
  $(this).parents('.' + get_recursive_parent).siblings('.' + bogo_min_range).find('.wdr_desc_text').text(wdr_data.localization_data.recursive_min_qty);
2332
  $('.' + bogo_border_bottom).css("border-bottom", "1px solid #ddd");
@@ -2341,9 +2388,11 @@ jQuery(document).ready(function ($) {
2341
  }
2342
  }
2343
  if ($(this).prop("checked") == true) {
2344
- $(this).parents('.awdr_bogo_main').siblings('.' + hide_if_recursive).hide();
2345
- $(this).parents('.' + get_recursive_parent).siblings('.' + bogo_max_range).hide();
2346
- $(this).parents('.' + get_recursive_parent).siblings().find('.' + bogo_max_range).hide();
 
 
2347
  //$('.'+bogo_max_range).hide();
2348
  $(this).parents('.' + get_recursive_parent).siblings('.' + bogo_min_range).find('.wdr_desc_text').text(wdr_data.localization_data.recursive_qty);
2349
  $('.' + bogo_border_bottom).css("border-bottom", "unset");
@@ -2606,13 +2655,13 @@ jQuery(document).ready(function ($) {
2606
  * Rule limit dynamic message
2607
  */
2608
  $(document).on('change', '#select_usage_limits', function () {
2609
- let selected_limit = $("#select_usage_limits option:selected").text();
2610
- if (selected_limit == "Unlimited") {
2611
- $('.usage-limits-display').hide();
2612
  $('.awdr-rule-limit-disabled-outer .rule_limit_msg_outer').hide();
2613
  $('.awdr-rule-limit-disabled').hide();
2614
  } else {
2615
- $('.usage-limits-display').show();
2616
  var rule_applied_total = $('.awdr-used-limit-total').html();
2617
  if (selected_limit <= parseInt(rule_applied_total)) {
2618
  $('.awdr-rule-limit-disabled').hide();
1775
  });
1776
  });
1777
 
1778
+ /**
1779
+ * save default configuration settings
1780
+ */
1781
+ $('#awdr_advanced_configuration_form').submit(function (e) {
1782
+ e.preventDefault();
1783
+ let values = $(this).serialize();
1784
+ let loader = $('.woo_discount_loader');
1785
+ $.ajax({
1786
+ data: values,
1787
+ type: 'post',
1788
+ url: ajaxurl,
1789
+ beforeSend: function () {
1790
+ loader.show();
1791
+ },
1792
+ complete: function () {
1793
+ loader.hide();
1794
+ },
1795
+ error: function (request, error) {
1796
+ notify(wdr_data.localization_data.error, 'error', alert_counter);
1797
+ },
1798
+ success: function (response) {
1799
+
1800
+ if (response.data.security_pass == "passed") {
1801
+ $('.awdr-save-green').show();
1802
+ setTimeout(
1803
+ function () {
1804
+ $('.awdr-save-green').fadeOut(500);
1805
+ window.location.replace(wdr_data.admin_url+'&tab=advanced_section');
1806
+ }, 2000
1807
+ );
1808
+ }else if(response.data.security_pass == "fails"){
1809
+ $('.awdr-error-red').show();
1810
+ setTimeout(
1811
+ function () {
1812
+ $('.awdr-error-red').fadeOut(500);
1813
+ window.location.replace(wdr_data.admin_url+'&tab=advanced_section');
1814
+ }, 2000
1815
+ );
1816
+
1817
+ }
1818
+ }
1819
+ });
1820
+ });
1821
+
1822
  /**
1823
  * Save and Close settings
1824
  */
2367
  let bogo_min_range = $(this).attr('data-bogo-min-range');
2368
  let bogo_border_bottom = $(this).attr('data-bogo-border');
2369
  let recursive_length = $('.' + get_bogo_range_parent).length;
2370
+ let parant_ranges_row_button = $(this).attr('data-ranges-row-parent');
2371
  if ($(this).prop("checked") == false) {
2372
+ $(this).parents('.' + parant_ranges_row_button).siblings('.' + hide_if_recursive).show();
2373
+ if(bogo_max_range != ''){
2374
+ $(this).parents('.' + get_recursive_parent).siblings('.' + bogo_max_range).show();
2375
+ $(this).parents('.' + get_recursive_parent).siblings().find('.' + bogo_max_range).show();
2376
+ }
2377
  // $('.'+bogo_max_range).show();
2378
  $(this).parents('.' + get_recursive_parent).siblings('.' + bogo_min_range).find('.wdr_desc_text').text(wdr_data.localization_data.recursive_min_qty);
2379
  $('.' + bogo_border_bottom).css("border-bottom", "1px solid #ddd");
2388
  }
2389
  }
2390
  if ($(this).prop("checked") == true) {
2391
+ $(this).parents('.' + parant_ranges_row_button).siblings('.' + hide_if_recursive).hide();
2392
+ if(bogo_max_range != ''){
2393
+ $(this).parents('.' + get_recursive_parent).siblings('.' + bogo_max_range).hide();
2394
+ $(this).parents('.' + get_recursive_parent).siblings().find('.' + bogo_max_range).hide();
2395
+ }
2396
  //$('.'+bogo_max_range).hide();
2397
  $(this).parents('.' + get_recursive_parent).siblings('.' + bogo_min_range).find('.wdr_desc_text').text(wdr_data.localization_data.recursive_qty);
2398
  $('.' + bogo_border_bottom).css("border-bottom", "unset");
2655
  * Rule limit dynamic message
2656
  */
2657
  $(document).on('change', '#select_usage_limits', function () {
2658
+ let selected_limit = $("#select_usage_limits").val();
2659
+ if (selected_limit == "") {
2660
+ //$('.usage-limits-display').hide();
2661
  $('.awdr-rule-limit-disabled-outer .rule_limit_msg_outer').hide();
2662
  $('.awdr-rule-limit-disabled').hide();
2663
  } else {
2664
+ //$('.usage-limits-display').show();
2665
  var rule_applied_total = $('.awdr-used-limit-total').html();
2666
  if (selected_limit <= parseInt(rule_applied_total)) {
2667
  $('.awdr-rule-limit-disabled').hide();
woo-discount-rules.php CHANGED
@@ -5,13 +5,13 @@
5
  * Description: Simple to complex discount rules for your WooCommerce store. Core package.
6
  * Author: Flycart
7
  * Author URI: https://www.flycart.org
8
- * Version: 2.3.5
9
  * Slug: woo-discount-rules
10
  * Text Domain: woo-discount-rules
11
  * Domain Path: /i18n/languages/
12
  * Requires at least: 4.6.1
13
  * WC requires at least: 3.0
14
- * WC tested up to: 5.1
15
  */
16
  if (!defined('ABSPATH')) {
17
  exit;
@@ -21,7 +21,7 @@ if (!defined('ABSPATH')) {
21
  * Current version of our app
22
  */
23
  if (!defined('WDR_VERSION')) {
24
- define('WDR_VERSION', '2.3.5');
25
  }
26
 
27
  global $awdr_load_version;
5
  * Description: Simple to complex discount rules for your WooCommerce store. Core package.
6
  * Author: Flycart
7
  * Author URI: https://www.flycart.org
8
+ * Version: 2.3.6
9
  * Slug: woo-discount-rules
10
  * Text Domain: woo-discount-rules
11
  * Domain Path: /i18n/languages/
12
  * Requires at least: 4.6.1
13
  * WC requires at least: 3.0
14
+ * WC tested up to: 5.2
15
  */
16
  if (!defined('ABSPATH')) {
17
  exit;
21
  * Current version of our app
22
  */
23
  if (!defined('WDR_VERSION')) {
24
+ define('WDR_VERSION', '2.3.6');
25
  }
26
 
27
  global $awdr_load_version;