PluginProbe ʕ •ᴥ•ʔ
Discount Rules for WooCommerce / 1.4.5
Discount Rules for WooCommerce v1.4.5
1.4.39 1.4.4 1.4.40 1.4.41 1.4.42 1.4.43 1.4.44 1.4.45 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.5.0 1.5.1 1.5.10 1.5.11 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.10 1.6.11 1.6.12 1.6.14 1.6.15 1.6.16 1.6.17 1.6.18 1.6.19 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.10 1.7.11 1.7.12 1.7.13 1.7.14 1.7.15 1.7.16 1.7.17 1.7.18 1.7.19 1.7.2 1.7.20 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.1 1.8.2 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.2 2.1.0 2.1.1 2.1.2 2.2.0 2.2.1 2.2.2 2.3.0 2.3.1 2.3.10 2.3.11 2.3.12 2.3.13 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.3.8 2.3.9 2.4.0 2.4.1 2.4.2 2.4.4 2.4.5 2.5.0 2.5.2 2.5.3 2.5.4 2.6.0 2.6.1 2.6.10 2.6.11 2.6.12 2.6.13 2.6.14 2.6.15 2.6.2 2.6.3 2.6.4 2.6.5 2.6.6 2.6.7 2.6.8 2.6.9 trunk 1.1 1.2 1.3 1.4 1.4.1 1.4.10 1.4.11 1.4.12 1.4.13 1.4.14 1.4.15 1.4.16 1.4.17 1.4.18 1.4.19 1.4.2 1.4.20 1.4.21 1.4.22 1.4.23 1.4.24 1.4.25 1.4.26 1.4.27 1.4.28 1.4.29 1.4.3 1.4.30 1.4.31 1.4.32 1.4.33 1.4.34 1.4.35 1.4.36 1.4.37 1.4.38
woo-discount-rules / loader.php
woo-discount-rules Last commit date
assets 9 years ago helper 9 years ago includes 9 years ago vendor 9 years ago view 9 years ago loader.php 9 years ago readme.txt 9 years ago woo-discount-rules.php 9 years ago
loader.php
176 lines
1 <?php
2 if (!defined('ABSPATH')) exit; // Exit if accessed directly
3
4 /**
5 * Required Version of WooCommerce to Run.
6 */
7 define('WOO_DISCOUNT_REQUIRED_WOOCOMMERCE_VERSION', '3.5');
8 /**
9 * Plugin Directory.
10 */
11 define('WOO_DISCOUNT_DIR', untrailingslashit(plugin_dir_path(__FILE__)));
12 /**
13 * Plugin Directory URI.
14 */
15 define('WOO_DISCOUNT_URI', untrailingslashit(plugin_dir_url(__FILE__)));
16 /**
17 * Plugin Base Name.
18 */
19 define('WOO_DISCOUNT_PLUGIN_BASENAME', plugin_basename(__FILE__));
20
21 if(!function_exists('get_plugin_data')){
22 require_once ABSPATH . 'wp-admin/includes/plugin.php';
23 }
24 /**
25 * Version of Woo Discount Rules.
26 */
27 define('WOO_DISCOUNT_VERSION', get_plugin_data(plugin_dir_path(__FILE__).'woo-discount-rules.php')['Version']);
28
29 include_once('includes/discount-base.php');
30 include_once('includes/pricing-rules.php');
31 include_once('helper/general-helper.php');
32 require_once __DIR__ . '/vendor/autoload.php';
33
34 // --------------------------------------------------GENERAL HOOK-------------------------------------------------------
35
36 /** Initiating Plugin */
37 $discountBase = new woo_dicount_rules_WooDiscountBase();
38 $pricingRules = new woo_dicount_rules_pricingRules();
39
40 // Enqueue Scripts/Styles - in head of admin page
41 add_action('admin_enqueue_scripts', 'woo_discount_addHeadScript');
42 // Init in Admin Menu
43 add_action('admin_menu', array($discountBase, 'adminMenu'));
44
45 $postData = \FlycartInput\FInput::getInstance();
46 // ---------------------------------------------------------------------------------------------------------------------
47
48
49 // --------------------------------------------------WOO DISCOUNT HOOK--------------------------------------------------
50
51
52 // ---------------------------------------------------------------------------------------------------------------------
53
54
55 // ----------------------------------------------------WooCommerce HOOK-------------------------------------------------
56
57 // Handling Tight update with wooCommerce Changes.
58 $empty_add_to_cart = $postData->get('add-to-cart');
59 $empty_apply_coupon = $postData->get('apply_coupon');
60 $empty_update_cart = $postData->get('update_cart');
61 $empty_proceed = $postData->get('proceed');
62 if ((!empty($empty_add_to_cart) && is_numeric($postData->get('add-to-cart'))) || $postData->get('action', false) == 'woocommerce_add_to_cart') {
63 // add_action('woocommerce_add_to_cart', array($discountBase, 'handleDiscount'), 19);
64 } else if (!empty($empty_apply_coupon) || !empty($empty_update_cart) || !empty($empty_proceed)) {
65 // add_action('woocommerce_before_cart_item_quantity_zero', array($discountBase, 'handleDiscount'), 100);
66 add_action('woocommerce_after_cart_item_quantity_update', array($discountBase, 'handleDiscount'), 100);
67
68 // add_action('woocommerce_update_cart_action_cart_updated', array($discountBase, 'handleDiscount'));
69 } else {
70 add_action('woocommerce_cart_loaded_from_session', array($discountBase, 'handleDiscount'), 100);
71 }
72
73 // Manually Update Line Item Name.
74 add_filter('woocommerce_cart_item_name', array($discountBase, 'modifyName'));
75
76 // Remove Filter to make the previous one as last filter.
77 remove_filter('woocommerce_cart_item_name', 'filter_woocommerce_cart_item_name', 10, 3);
78
79 // Alter the Display Price HTML.
80 add_filter('woocommerce_cart_item_price', array($pricingRules, 'replaceVisiblePricesCart'), 100, 3);
81 // Older Version support this hook.
82 add_filter('woocommerce_cart_item_price_html', array($pricingRules, 'replaceVisiblePricesCart'), 100, 3);
83
84 // Pricing Table of Individual Product.
85 add_filter('woocommerce_before_add_to_cart_form', array($pricingRules, 'priceTable'));
86
87 // Updating Log After Creating Order
88 add_action('woocommerce_thankyou', array($discountBase, 'storeLog'));
89 // ---------------------------------------------------------------------------------------------------------------------
90
91 // --------------------------------------------------AJAX REQUEST-------------------------------------------------------
92
93 add_action('wp_ajax_savePriceRule', array($discountBase, 'savePriceRule'));
94 add_action('wp_ajax_saveCartRule', array($discountBase, 'saveCartRule'));
95 add_action('wp_ajax_saveConfig', array($discountBase, 'saveConfig'));
96
97 add_action('wp_ajax_UpdateStatus', array($discountBase, 'updateStatus'));
98 add_action('wp_ajax_RemoveRule', array($discountBase, 'removeRule'));
99
100 // ---------------------------------------------------------------------------------------------------------------------
101
102 // --------------------------------------------------GENERAL FUNCTIONS--------------------------------------------------
103
104 /**
105 * To Append Script Wordpress.
106 */
107 if (!function_exists('woo_discount_addHeadScript')) {
108 function woo_discount_addHeadScript()
109 {
110 //
111 }
112 }
113
114 /**
115 * Adding Admin Page Script.
116 */
117 if (!function_exists('woo_discount_adminPageScript')) {
118 function woo_discount_adminPageScript()
119 {
120 $status = false;
121 $postData = \FlycartInput\FInput::getInstance();
122 // Plugin scripts should run only in plugin page.
123 if (is_admin()) {
124 if ($postData->get('page', false) == 'woo_discount_rules') {
125 $status = true;
126 }
127 // By Default, the landing page also can use this script.
128 } elseif (!is_admin()) {
129 // $status = true;
130 }
131
132 if ($status) {
133 wp_register_style('woo_discount_style', WOO_DISCOUNT_URI . '/assets/css/style.css');
134 wp_enqueue_style('woo_discount_style');
135
136 wp_register_style('woo_discount_style_custom', WOO_DISCOUNT_URI . '/assets/css/custom.css');
137 wp_enqueue_style('woo_discount_style_custom');
138
139 wp_register_style('woo_discount_style_tab', WOO_DISCOUNT_URI . '/assets/css/tabbablePanel.css');
140 wp_enqueue_style('woo_discount_style_tab');
141
142 // For Implementing Select Picker Library.
143 wp_register_style('woo_discount_style_select', WOO_DISCOUNT_URI . '/assets/css/bootstrap.select.min.css');
144 wp_enqueue_style('woo_discount_style_select');
145
146 wp_enqueue_script('woo_discount_script_select', WOO_DISCOUNT_URI . '/assets/js/bootstrap.select.min.js');
147
148
149 // -------------------------------------------------------------------------------------------------------------
150
151 wp_register_style('woo_discount_bootstrap', WOO_DISCOUNT_URI . '/assets/css/bootstrap.min.css');
152 wp_enqueue_style('woo_discount_bootstrap');
153
154 wp_register_script('woo_discount_jquery_ui_js_2', WOO_DISCOUNT_URI . '/assets/js/bootstrap.min.js');
155 wp_enqueue_script('woo_discount_jquery_ui_js_2');
156
157 wp_register_style('woo_discount_jquery_ui_css', WOO_DISCOUNT_URI . '/assets/css/jquery-ui.css');
158 wp_enqueue_style('woo_discount_jquery_ui_css');
159
160 wp_enqueue_script('jquery');
161 wp_enqueue_script('jquery-ui-core');
162 wp_enqueue_script('jquery-ui-datepicker');
163
164 // wp_register_style('woo_discount_select2_css', WOO_DISCOUNT_URI . '/assets/css/select2.min.css');
165 // wp_enqueue_style('woo_discount_select2_css');
166 //
167 // wp_register_script('woo_discount_select2_js', WOO_DISCOUNT_URI . '/assets/js/select2.min.js');
168 // wp_enqueue_script('woo_discount_select2_js');
169
170 wp_enqueue_script('woo_discount_script', WOO_DISCOUNT_URI . '/assets/js/app.js');
171
172 }
173 }
174 }
175
176 // ---------------------------------------------------------------------------------------------------------------------