@@ -1,65 +1,65 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // MUST have WordPress. |
3 | -if ( !defined( 'WPINC' ) ) { |
|
4 | - exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) ); |
|
3 | +if (!defined('WPINC')) { |
|
4 | + exit('Do NOT access this file directly: ' . basename(__FILE__)); |
|
5 | 5 | } |
6 | 6 | |
7 | -function wpinv_add_meta_boxes( $post_type, $post ) { |
|
7 | +function wpinv_add_meta_boxes($post_type, $post) { |
|
8 | 8 | global $wpi_mb_invoice; |
9 | - if ( $post_type == 'wpi_invoice' && !empty( $post->ID ) ) { |
|
10 | - $wpi_mb_invoice = wpinv_get_invoice( $post->ID ); |
|
9 | + if ($post_type == 'wpi_invoice' && !empty($post->ID)) { |
|
10 | + $wpi_mb_invoice = wpinv_get_invoice($post->ID); |
|
11 | 11 | } |
12 | 12 | |
13 | - if ( !empty( $wpi_mb_invoice ) && !$wpi_mb_invoice->has_status( array( 'draft', 'auto-draft' ) ) ) { |
|
14 | - add_meta_box( 'wpinv-mb-resend-invoice', __( 'Resend Invoice', 'invoicing' ), 'WPInv_Meta_Box_Details::resend_invoice', 'wpi_invoice', 'side', 'high' ); |
|
13 | + if (!empty($wpi_mb_invoice) && !$wpi_mb_invoice->has_status(array('draft', 'auto-draft'))) { |
|
14 | + add_meta_box('wpinv-mb-resend-invoice', __('Resend Invoice', 'invoicing'), 'WPInv_Meta_Box_Details::resend_invoice', 'wpi_invoice', 'side', 'high'); |
|
15 | 15 | } |
16 | 16 | |
17 | - if ( !empty( $wpi_mb_invoice ) && $wpi_mb_invoice->is_recurring() && $wpi_mb_invoice->is_parent() ) { |
|
18 | - add_meta_box( 'wpinv-mb-subscriptions', __( 'Subscriptions', 'invoicing' ), 'WPInv_Meta_Box_Details::subscriptions', 'wpi_invoice', 'side', 'high' ); |
|
17 | + if (!empty($wpi_mb_invoice) && $wpi_mb_invoice->is_recurring() && $wpi_mb_invoice->is_parent()) { |
|
18 | + add_meta_box('wpinv-mb-subscriptions', __('Subscriptions', 'invoicing'), 'WPInv_Meta_Box_Details::subscriptions', 'wpi_invoice', 'side', 'high'); |
|
19 | 19 | } |
20 | 20 | |
21 | - if ( wpinv_is_subscription_payment( $wpi_mb_invoice ) ) { |
|
22 | - add_meta_box( 'wpinv-mb-renewals', __( 'Renewal Payment', 'invoicing' ), 'WPInv_Meta_Box_Details::renewals', 'wpi_invoice', 'side', 'high' ); |
|
21 | + if (wpinv_is_subscription_payment($wpi_mb_invoice)) { |
|
22 | + add_meta_box('wpinv-mb-renewals', __('Renewal Payment', 'invoicing'), 'WPInv_Meta_Box_Details::renewals', 'wpi_invoice', 'side', 'high'); |
|
23 | 23 | } |
24 | 24 | |
25 | - add_meta_box( 'wpinv-details', __( 'Invoice Details', 'invoicing' ), 'WPInv_Meta_Box_Details::output', 'wpi_invoice', 'side', 'default' ); |
|
26 | - add_meta_box( 'wpinv-payment-meta', __( 'Payment Meta', 'invoicing' ), 'WPInv_Meta_Box_Details::payment_meta', 'wpi_invoice', 'side', 'default' ); |
|
25 | + add_meta_box('wpinv-details', __('Invoice Details', 'invoicing'), 'WPInv_Meta_Box_Details::output', 'wpi_invoice', 'side', 'default'); |
|
26 | + add_meta_box('wpinv-payment-meta', __('Payment Meta', 'invoicing'), 'WPInv_Meta_Box_Details::payment_meta', 'wpi_invoice', 'side', 'default'); |
|
27 | 27 | |
28 | - add_meta_box( 'wpinv-address', __( 'Billing Details', 'invoicing' ), 'WPInv_Meta_Box_Billing_Details::output', 'wpi_invoice', 'normal', 'high' ); |
|
29 | - add_meta_box( 'wpinv-items', __( 'Invoice Items', 'invoicing' ), 'WPInv_Meta_Box_Items::output', 'wpi_invoice', 'normal', 'high' ); |
|
30 | - add_meta_box( 'wpinv-notes', __( 'Invoice Notes', 'invoicing' ), 'WPInv_Meta_Box_Notes::output', 'wpi_invoice', 'normal', 'high' ); |
|
28 | + add_meta_box('wpinv-address', __('Billing Details', 'invoicing'), 'WPInv_Meta_Box_Billing_Details::output', 'wpi_invoice', 'normal', 'high'); |
|
29 | + add_meta_box('wpinv-items', __('Invoice Items', 'invoicing'), 'WPInv_Meta_Box_Items::output', 'wpi_invoice', 'normal', 'high'); |
|
30 | + add_meta_box('wpinv-notes', __('Invoice Notes', 'invoicing'), 'WPInv_Meta_Box_Notes::output', 'wpi_invoice', 'normal', 'high'); |
|
31 | 31 | } |
32 | -add_action( 'add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2 ); |
|
32 | +add_action('add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2); |
|
33 | 33 | |
34 | -function wpinv_save_meta_boxes( $post_id, $post, $update = false ) { |
|
35 | - remove_action( 'save_post', __FUNCTION__ ); |
|
34 | +function wpinv_save_meta_boxes($post_id, $post, $update = false) { |
|
35 | + remove_action('save_post', __FUNCTION__); |
|
36 | 36 | |
37 | 37 | // $post_id and $post are required |
38 | - if ( empty( $post_id ) || empty( $post ) ) { |
|
38 | + if (empty($post_id) || empty($post)) { |
|
39 | 39 | return; |
40 | 40 | } |
41 | 41 | |
42 | - if ( !current_user_can( 'edit_post', $post_id ) || empty( $post->post_type ) ) { |
|
42 | + if (!current_user_can('edit_post', $post_id) || empty($post->post_type)) { |
|
43 | 43 | return; |
44 | 44 | } |
45 | 45 | |
46 | 46 | // Dont' save meta boxes for revisions or autosaves |
47 | - if ( defined( 'DOING_AUTOSAVE' ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) { |
|
47 | + if (defined('DOING_AUTOSAVE') || is_int(wp_is_post_revision($post)) || is_int(wp_is_post_autosave($post))) { |
|
48 | 48 | return; |
49 | 49 | } |
50 | 50 | |
51 | - if ( $post->post_type == 'wpi_invoice' or $post->post_type == 'wpi_quote' ) { |
|
52 | - if ( ( defined( 'DOING_AJAX') && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) { |
|
51 | + if ($post->post_type == 'wpi_invoice' or $post->post_type == 'wpi_quote') { |
|
52 | + if ((defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) { |
|
53 | 53 | return; |
54 | 54 | } |
55 | 55 | |
56 | - if ( isset( $_POST['wpinv_save_invoice'] ) && wp_verify_nonce( $_POST['wpinv_save_invoice'], 'wpinv_save_invoice' ) ) { |
|
57 | - WPInv_Meta_Box_Items::save( $post_id, $_POST, $post ); |
|
56 | + if (isset($_POST['wpinv_save_invoice']) && wp_verify_nonce($_POST['wpinv_save_invoice'], 'wpinv_save_invoice')) { |
|
57 | + WPInv_Meta_Box_Items::save($post_id, $_POST, $post); |
|
58 | 58 | } |
59 | - } else if ( $post->post_type == 'wpi_item' ) { |
|
59 | + } else if ($post->post_type == 'wpi_item') { |
|
60 | 60 | // verify nonce |
61 | - if ( isset( $_POST['wpinv_vat_meta_box_nonce'] ) && wp_verify_nonce( $_POST['wpinv_vat_meta_box_nonce'], 'wpinv_item_meta_box_save' ) ) { |
|
62 | - $fields = array(); |
|
61 | + if (isset($_POST['wpinv_vat_meta_box_nonce']) && wp_verify_nonce($_POST['wpinv_vat_meta_box_nonce'], 'wpinv_item_meta_box_save')) { |
|
62 | + $fields = array(); |
|
63 | 63 | $fields['_wpinv_price'] = 'wpinv_item_price'; |
64 | 64 | $fields['_wpinv_vat_class'] = 'wpinv_vat_class'; |
65 | 65 | $fields['_wpinv_vat_rule'] = 'wpinv_vat_rules'; |
@@ -72,296 +72,296 @@ discard block |
||
72 | 72 | $fields['_wpinv_trial_period'] = 'wpinv_trial_period'; |
73 | 73 | $fields['_wpinv_trial_interval'] = 'wpinv_trial_interval'; |
74 | 74 | |
75 | - if ( !isset( $_POST['wpinv_is_recurring'] ) ) { |
|
75 | + if (!isset($_POST['wpinv_is_recurring'])) { |
|
76 | 76 | $_POST['wpinv_is_recurring'] = 0; |
77 | 77 | } |
78 | 78 | |
79 | - if ( !isset( $_POST['wpinv_free_trial'] ) || empty( $_POST['wpinv_is_recurring'] ) ) { |
|
79 | + if (!isset($_POST['wpinv_free_trial']) || empty($_POST['wpinv_is_recurring'])) { |
|
80 | 80 | $_POST['wpinv_free_trial'] = 0; |
81 | 81 | } |
82 | 82 | |
83 | - foreach ( $fields as $field => $name ) { |
|
84 | - if ( isset( $_POST[ $name ] ) ) { |
|
85 | - if ( $field == '_wpinv_price' ) { |
|
86 | - if ( get_post_meta( $post_id, '_wpinv_type', true ) === 'package' ) { |
|
87 | - $value = wpinv_sanitize_amount( get_post_meta( $post_id, '_wpinv_price', true ) ); // Don't allow edit GD package item price. |
|
83 | + foreach ($fields as $field => $name) { |
|
84 | + if (isset($_POST[$name])) { |
|
85 | + if ($field == '_wpinv_price') { |
|
86 | + if (get_post_meta($post_id, '_wpinv_type', true) === 'package') { |
|
87 | + $value = wpinv_sanitize_amount(get_post_meta($post_id, '_wpinv_price', true)); // Don't allow edit GD package item price. |
|
88 | 88 | } else { |
89 | - $value = wpinv_sanitize_amount( $_POST[ $name ] ); |
|
89 | + $value = wpinv_sanitize_amount($_POST[$name]); |
|
90 | 90 | } |
91 | 91 | } else { |
92 | - $value = is_string( $_POST[ $name ] ) ? sanitize_text_field( $_POST[ $name ] ) : $_POST[ $name ]; |
|
92 | + $value = is_string($_POST[$name]) ? sanitize_text_field($_POST[$name]) : $_POST[$name]; |
|
93 | 93 | } |
94 | 94 | |
95 | - $value = apply_filters( 'wpinv_item_metabox_save_' . $field, $value, $name ); |
|
96 | - update_post_meta( $post_id, $field, $value ); |
|
95 | + $value = apply_filters('wpinv_item_metabox_save_' . $field, $value, $name); |
|
96 | + update_post_meta($post_id, $field, $value); |
|
97 | 97 | } |
98 | 98 | } |
99 | 99 | |
100 | - if ( !get_post_meta( $post_id, '_wpinv_custom_id', true ) ) { |
|
101 | - update_post_meta( $post_id, '_wpinv_custom_id', $post_id ); |
|
100 | + if (!get_post_meta($post_id, '_wpinv_custom_id', true)) { |
|
101 | + update_post_meta($post_id, '_wpinv_custom_id', $post_id); |
|
102 | 102 | } |
103 | 103 | } |
104 | 104 | } |
105 | 105 | } |
106 | -add_action( 'save_post', 'wpinv_save_meta_boxes', 10, 3 ); |
|
106 | +add_action('save_post', 'wpinv_save_meta_boxes', 10, 3); |
|
107 | 107 | |
108 | -function wpinv_bulk_and_quick_edit_save( $post_id, $post, $update = false ) { |
|
109 | - if ( !( !empty( $_POST['action'] ) && $_POST['action'] == 'inline-save' ) ) { |
|
108 | +function wpinv_bulk_and_quick_edit_save($post_id, $post, $update = false) { |
|
109 | + if (!(!empty($_POST['action']) && $_POST['action'] == 'inline-save')) { |
|
110 | 110 | return; |
111 | 111 | } |
112 | 112 | |
113 | 113 | // $post_id and $post are required |
114 | - if ( empty( $post_id ) || empty( $post ) ) { |
|
114 | + if (empty($post_id) || empty($post)) { |
|
115 | 115 | return; |
116 | 116 | } |
117 | 117 | |
118 | - if ( !current_user_can( 'edit_post', $post_id ) || empty( $post->post_type ) ) { |
|
118 | + if (!current_user_can('edit_post', $post_id) || empty($post->post_type)) { |
|
119 | 119 | return; |
120 | 120 | } |
121 | 121 | |
122 | 122 | // Dont' save meta boxes for revisions or autosaves |
123 | - if ( defined( 'DOING_AUTOSAVE' ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) { |
|
123 | + if (defined('DOING_AUTOSAVE') || is_int(wp_is_post_revision($post)) || is_int(wp_is_post_autosave($post))) { |
|
124 | 124 | return; |
125 | 125 | } |
126 | 126 | |
127 | - if ( $post->post_type == 'wpi_item' ) { |
|
127 | + if ($post->post_type == 'wpi_item') { |
|
128 | 128 | // verify nonce |
129 | - if ( isset( $_POST['_wpinv_item_price'] ) && get_post_meta( $post->ID, '_wpinv_type', true ) !== 'package' ) { |
|
130 | - update_post_meta( $post_id, '_wpinv_price', wpinv_sanitize_amount( $_POST['_wpinv_item_price'] ) ); |
|
129 | + if (isset($_POST['_wpinv_item_price']) && get_post_meta($post->ID, '_wpinv_type', true) !== 'package') { |
|
130 | + update_post_meta($post_id, '_wpinv_price', wpinv_sanitize_amount($_POST['_wpinv_item_price'])); |
|
131 | 131 | } |
132 | 132 | |
133 | - if ( isset( $_POST['_wpinv_vat_class'] ) ) { |
|
134 | - update_post_meta( $post_id, '_wpinv_vat_class', sanitize_text_field( $_POST['_wpinv_vat_class'] ) ); |
|
133 | + if (isset($_POST['_wpinv_vat_class'])) { |
|
134 | + update_post_meta($post_id, '_wpinv_vat_class', sanitize_text_field($_POST['_wpinv_vat_class'])); |
|
135 | 135 | } |
136 | 136 | |
137 | - if ( isset( $_POST['_wpinv_vat_rules'] ) ) { |
|
138 | - update_post_meta( $post_id, '_wpinv_vat_rule', sanitize_text_field( $_POST['_wpinv_vat_rules'] ) ); |
|
137 | + if (isset($_POST['_wpinv_vat_rules'])) { |
|
138 | + update_post_meta($post_id, '_wpinv_vat_rule', sanitize_text_field($_POST['_wpinv_vat_rules'])); |
|
139 | 139 | } |
140 | 140 | |
141 | - if ( isset( $_POST['_wpinv_item_type'] ) ) { |
|
142 | - update_post_meta( $post_id, '_wpinv_type', sanitize_text_field( $_POST['_wpinv_item_type'] ) ); |
|
141 | + if (isset($_POST['_wpinv_item_type'])) { |
|
142 | + update_post_meta($post_id, '_wpinv_type', sanitize_text_field($_POST['_wpinv_item_type'])); |
|
143 | 143 | } |
144 | 144 | } |
145 | 145 | } |
146 | -add_action( 'save_post', 'wpinv_bulk_and_quick_edit_save', 10, 3 ); |
|
146 | +add_action('save_post', 'wpinv_bulk_and_quick_edit_save', 10, 3); |
|
147 | 147 | |
148 | 148 | function wpinv_register_item_meta_boxes() { |
149 | 149 | global $wpinv_euvat; |
150 | 150 | |
151 | - add_meta_box( 'wpinv_field_prices', __( 'Item Price', 'invoicing' ), 'WPInv_Meta_Box_Items::prices', 'wpi_item', 'normal', 'high' ); |
|
151 | + add_meta_box('wpinv_field_prices', __('Item Price', 'invoicing'), 'WPInv_Meta_Box_Items::prices', 'wpi_item', 'normal', 'high'); |
|
152 | 152 | |
153 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
154 | - add_meta_box( 'wpinv_field_vat_rules', __( 'VAT rules type to use', 'invoicing' ), 'WPInv_Meta_Box_Items::vat_rules', 'wpi_item', 'normal', 'high' ); |
|
153 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
154 | + add_meta_box('wpinv_field_vat_rules', __('VAT rules type to use', 'invoicing'), 'WPInv_Meta_Box_Items::vat_rules', 'wpi_item', 'normal', 'high'); |
|
155 | 155 | } |
156 | 156 | |
157 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
158 | - add_meta_box( 'wpinv_field_vat_classes', __( 'VAT rates class to use', 'invoicing' ), 'WPInv_Meta_Box_Items::vat_classes', 'wpi_item', 'normal', 'high' ); |
|
157 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
158 | + add_meta_box('wpinv_field_vat_classes', __('VAT rates class to use', 'invoicing'), 'WPInv_Meta_Box_Items::vat_classes', 'wpi_item', 'normal', 'high'); |
|
159 | 159 | } |
160 | 160 | |
161 | - add_meta_box( 'wpinv_field_item_info', __( 'Item info', 'invoicing' ), 'WPInv_Meta_Box_Items::item_info', 'wpi_item', 'side', 'core' ); |
|
162 | - add_meta_box( 'wpinv_field_meta_values', __( 'Item Meta Values', 'invoicing' ), 'WPInv_Meta_Box_Items::meta_values', 'wpi_item', 'side', 'core' ); |
|
161 | + add_meta_box('wpinv_field_item_info', __('Item info', 'invoicing'), 'WPInv_Meta_Box_Items::item_info', 'wpi_item', 'side', 'core'); |
|
162 | + add_meta_box('wpinv_field_meta_values', __('Item Meta Values', 'invoicing'), 'WPInv_Meta_Box_Items::meta_values', 'wpi_item', 'side', 'core'); |
|
163 | 163 | } |
164 | 164 | |
165 | 165 | function wpinv_register_discount_meta_boxes() { |
166 | - add_meta_box( 'wpinv_discount_fields', __( 'Discount Details', 'invoicing' ), 'wpinv_discount_metabox_details', 'wpi_discount', 'normal', 'high' ); |
|
166 | + add_meta_box('wpinv_discount_fields', __('Discount Details', 'invoicing'), 'wpinv_discount_metabox_details', 'wpi_discount', 'normal', 'high'); |
|
167 | 167 | } |
168 | 168 | |
169 | -function wpinv_discount_metabox_details( $post ) { |
|
169 | +function wpinv_discount_metabox_details($post) { |
|
170 | 170 | $discount_id = $post->ID; |
171 | - $discount = wpinv_get_discount( $discount_id ); |
|
171 | + $discount = wpinv_get_discount($discount_id); |
|
172 | 172 | |
173 | - $type = wpinv_get_discount_type( $discount_id ); |
|
174 | - $item_reqs = wpinv_get_discount_item_reqs( $discount_id ); |
|
175 | - $excluded_items = wpinv_get_discount_excluded_items( $discount_id ); |
|
176 | - $min_total = wpinv_get_discount_min_total( $discount_id ); |
|
177 | - $max_total = wpinv_get_discount_max_total( $discount_id ); |
|
178 | - $max_uses = wpinv_get_discount_max_uses( $discount_id ); |
|
179 | - $single_use = wpinv_discount_is_single_use( $discount_id ); |
|
180 | - $recurring = (bool)wpinv_discount_is_recurring( $discount_id ); |
|
173 | + $type = wpinv_get_discount_type($discount_id); |
|
174 | + $item_reqs = wpinv_get_discount_item_reqs($discount_id); |
|
175 | + $excluded_items = wpinv_get_discount_excluded_items($discount_id); |
|
176 | + $min_total = wpinv_get_discount_min_total($discount_id); |
|
177 | + $max_total = wpinv_get_discount_max_total($discount_id); |
|
178 | + $max_uses = wpinv_get_discount_max_uses($discount_id); |
|
179 | + $single_use = wpinv_discount_is_single_use($discount_id); |
|
180 | + $recurring = (bool)wpinv_discount_is_recurring($discount_id); |
|
181 | 181 | |
182 | 182 | $min_total = $min_total > 0 ? $min_total : ''; |
183 | 183 | $max_total = $max_total > 0 ? $max_total : ''; |
184 | 184 | $max_uses = $max_uses > 0 ? $max_uses : ''; |
185 | 185 | ?> |
186 | -<?php do_action( 'wpinv_discount_form_top', $post ); ?> |
|
187 | -<?php wp_nonce_field( 'wpinv_discount_metabox_nonce', 'wpinv_discount_metabox_nonce' ); ;?> |
|
186 | +<?php do_action('wpinv_discount_form_top', $post); ?> |
|
187 | +<?php wp_nonce_field('wpinv_discount_metabox_nonce', 'wpinv_discount_metabox_nonce'); ;?> |
|
188 | 188 | <table class="form-table wpi-form-table"> |
189 | 189 | <tbody> |
190 | - <?php do_action( 'wpinv_discount_form_first', $post ); ?> |
|
191 | - <?php do_action( 'wpinv_discount_form_before_code', $post ); ?> |
|
190 | + <?php do_action('wpinv_discount_form_first', $post); ?> |
|
191 | + <?php do_action('wpinv_discount_form_before_code', $post); ?> |
|
192 | 192 | <tr> |
193 | 193 | <th valign="top" scope="row"> |
194 | - <label for="wpinv_discount_code"><?php _e( 'Discount Code', 'invoicing' ); ?></label> |
|
194 | + <label for="wpinv_discount_code"><?php _e('Discount Code', 'invoicing'); ?></label> |
|
195 | 195 | </th> |
196 | 196 | <td> |
197 | - <input type="text" name="code" id="wpinv_discount_code" class="medium-text" value="<?php echo esc_attr( wpinv_get_discount_code( $discount_id ) ); ?>" required> |
|
198 | - <p class="description"><?php _e( 'Enter a code for this discount, such as 10OFF', 'invoicing' ); ?></p> |
|
197 | + <input type="text" name="code" id="wpinv_discount_code" class="medium-text" value="<?php echo esc_attr(wpinv_get_discount_code($discount_id)); ?>" required> |
|
198 | + <p class="description"><?php _e('Enter a code for this discount, such as 10OFF', 'invoicing'); ?></p> |
|
199 | 199 | </td> |
200 | 200 | </tr> |
201 | - <?php do_action( 'wpinv_discount_form_before_type', $post ); ?> |
|
201 | + <?php do_action('wpinv_discount_form_before_type', $post); ?> |
|
202 | 202 | <tr> |
203 | 203 | <th valign="top" scope="row"> |
204 | - <label for="wpinv_discount_type"><?php _e( 'Discount Type', 'invoicing' ); ?></label> |
|
204 | + <label for="wpinv_discount_type"><?php _e('Discount Type', 'invoicing'); ?></label> |
|
205 | 205 | </th> |
206 | 206 | <td> |
207 | 207 | <select id="wpinv_discount_type" name="type" class="medium-text"> |
208 | - <?php foreach ( wpinv_get_discount_types() as $value => $label ) { ?> |
|
209 | - <option value="<?php echo $value ;?>" <?php selected( $type, $value ); ?>><?php echo $label; ?></option> |
|
208 | + <?php foreach (wpinv_get_discount_types() as $value => $label) { ?> |
|
209 | + <option value="<?php echo $value; ?>" <?php selected($type, $value); ?>><?php echo $label; ?></option> |
|
210 | 210 | <?php } ?> |
211 | 211 | </select> |
212 | - <p class="description"><?php _e( 'The kind of discount to apply for this discount.', 'invoicing' ); ?></p> |
|
212 | + <p class="description"><?php _e('The kind of discount to apply for this discount.', 'invoicing'); ?></p> |
|
213 | 213 | </td> |
214 | 214 | </tr> |
215 | - <?php do_action( 'wpinv_discount_form_before_amount', $post ); ?> |
|
215 | + <?php do_action('wpinv_discount_form_before_amount', $post); ?> |
|
216 | 216 | <tr> |
217 | 217 | <th valign="top" scope="row"> |
218 | - <label for="wpinv_discount_amount"><?php _e( 'Amount', 'invoicing' ); ?></label> |
|
218 | + <label for="wpinv_discount_amount"><?php _e('Amount', 'invoicing'); ?></label> |
|
219 | 219 | </th> |
220 | 220 | <td> |
221 | - <input type="text" name="amount" id="wpinv_discount_amount" class="wpi-field-price wpi-price" value="<?php echo esc_attr( wpinv_get_discount_amount( $discount_id ) ); ?>" required> <font class="wpi-discount-p">%</font><font class="wpi-discount-f" style="display:none;"><?php echo wpinv_currency_symbol() ;?></font> |
|
222 | - <p style="display:none;" class="description"><?php _e( 'Enter the discount amount in USD', 'invoicing' ); ?></p> |
|
223 | - <p class="description"><?php _e( 'Enter the discount value. Ex: 10', 'invoicing' ); ?></p> |
|
221 | + <input type="text" name="amount" id="wpinv_discount_amount" class="wpi-field-price wpi-price" value="<?php echo esc_attr(wpinv_get_discount_amount($discount_id)); ?>" required> <font class="wpi-discount-p">%</font><font class="wpi-discount-f" style="display:none;"><?php echo wpinv_currency_symbol(); ?></font> |
|
222 | + <p style="display:none;" class="description"><?php _e('Enter the discount amount in USD', 'invoicing'); ?></p> |
|
223 | + <p class="description"><?php _e('Enter the discount value. Ex: 10', 'invoicing'); ?></p> |
|
224 | 224 | </td> |
225 | 225 | </tr> |
226 | - <?php do_action( 'wpinv_discount_form_before_items', $post ); ?> |
|
226 | + <?php do_action('wpinv_discount_form_before_items', $post); ?> |
|
227 | 227 | <tr> |
228 | 228 | <th valign="top" scope="row"> |
229 | - <label for="wpinv_discount_items"><?php _e( 'Items', 'invoicing' ); ?></label> |
|
229 | + <label for="wpinv_discount_items"><?php _e('Items', 'invoicing'); ?></label> |
|
230 | 230 | </th> |
231 | 231 | <td> |
232 | - <p><?php echo wpinv_item_dropdown( array( |
|
232 | + <p><?php echo wpinv_item_dropdown(array( |
|
233 | 233 | 'name' => 'items[]', |
234 | 234 | 'id' => 'items', |
235 | 235 | 'selected' => $item_reqs, |
236 | 236 | 'multiple' => true, |
237 | 237 | 'chosen' => true, |
238 | 238 | 'class' => 'medium-text', |
239 | - 'placeholder' => __( 'Select one or more Items', 'invoicing' ), |
|
239 | + 'placeholder' => __('Select one or more Items', 'invoicing'), |
|
240 | 240 | 'show_recurring' => true, |
241 | - ) ); ?> |
|
241 | + )); ?> |
|
242 | 242 | </p> |
243 | - <p class="description"><?php _e( 'Items which need to be in the cart to use this discount or, for "Item Discounts", which items are discounted. If left blank, this discount can be used on any item.', 'invoicing' ); ?></p> |
|
243 | + <p class="description"><?php _e('Items which need to be in the cart to use this discount or, for "Item Discounts", which items are discounted. If left blank, this discount can be used on any item.', 'invoicing'); ?></p> |
|
244 | 244 | </td> |
245 | 245 | </tr> |
246 | - <?php do_action( 'wpinv_discount_form_before_excluded_items', $post ); ?> |
|
246 | + <?php do_action('wpinv_discount_form_before_excluded_items', $post); ?> |
|
247 | 247 | <tr> |
248 | 248 | <th valign="top" scope="row"> |
249 | - <label for="wpinv_discount_excluded_items"><?php _e( 'Excluded Items', 'invoicing' ); ?></label> |
|
249 | + <label for="wpinv_discount_excluded_items"><?php _e('Excluded Items', 'invoicing'); ?></label> |
|
250 | 250 | </th> |
251 | 251 | <td> |
252 | - <p><?php echo wpinv_item_dropdown( array( |
|
252 | + <p><?php echo wpinv_item_dropdown(array( |
|
253 | 253 | 'name' => 'excluded_items[]', |
254 | 254 | 'id' => 'excluded_items', |
255 | 255 | 'selected' => $excluded_items, |
256 | 256 | 'multiple' => true, |
257 | 257 | 'chosen' => true, |
258 | 258 | 'class' => 'medium-text', |
259 | - 'placeholder' => __( 'Select one or more Items', 'invoicing' ), |
|
259 | + 'placeholder' => __('Select one or more Items', 'invoicing'), |
|
260 | 260 | 'show_recurring' => true, |
261 | - ) ); ?> |
|
261 | + )); ?> |
|
262 | 262 | </p> |
263 | - <p class="description"><?php _e( 'Items which are NOT allowed to use this discount.', 'invoicing' ); ?></p> |
|
263 | + <p class="description"><?php _e('Items which are NOT allowed to use this discount.', 'invoicing'); ?></p> |
|
264 | 264 | </td> |
265 | 265 | </tr> |
266 | - <?php do_action( 'wpinv_discount_form_before_start', $post ); ?> |
|
266 | + <?php do_action('wpinv_discount_form_before_start', $post); ?> |
|
267 | 267 | <tr> |
268 | 268 | <th valign="top" scope="row"> |
269 | - <label for="wpinv_discount_start"><?php _e( 'Start date', 'invoicing' ); ?></label> |
|
269 | + <label for="wpinv_discount_start"><?php _e('Start date', 'invoicing'); ?></label> |
|
270 | 270 | </th> |
271 | 271 | <td> |
272 | - <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_start" data-dateFormat="yy-mm-dd" name="start" value="<?php echo esc_attr( wpinv_get_discount_start_date( $discount_id ) ); ?>"> |
|
273 | - <p class="description"><?php _e( 'Enter the start date for this discount code in the format of yyyy-mm-dd. For no start date, leave blank. If entered, the discount can only be used after or on this date.', 'invoicing' ); ?></p> |
|
272 | + <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_start" data-dateFormat="yy-mm-dd" name="start" value="<?php echo esc_attr(wpinv_get_discount_start_date($discount_id)); ?>"> |
|
273 | + <p class="description"><?php _e('Enter the start date for this discount code in the format of yyyy-mm-dd. For no start date, leave blank. If entered, the discount can only be used after or on this date.', 'invoicing'); ?></p> |
|
274 | 274 | </td> |
275 | 275 | </tr> |
276 | - <?php do_action( 'wpinv_discount_form_before_expiration', $post ); ?> |
|
276 | + <?php do_action('wpinv_discount_form_before_expiration', $post); ?> |
|
277 | 277 | <tr> |
278 | 278 | <th valign="top" scope="row"> |
279 | - <label for="wpinv_discount_expiration"><?php _e( 'Expiration date', 'invoicing' ); ?></label> |
|
279 | + <label for="wpinv_discount_expiration"><?php _e('Expiration date', 'invoicing'); ?></label> |
|
280 | 280 | </th> |
281 | 281 | <td> |
282 | - <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_expiration" data-dateFormat="yy-mm-dd" name="expiration" value="<?php echo esc_attr( wpinv_get_discount_expiration( $discount_id ) ); ?>"> |
|
283 | - <p class="description"><?php _e( 'Enter the expiration date for this discount code in the format of yyyy-mm-dd. Leave blank for no expiration.', 'invoicing' ); ?></p> |
|
282 | + <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_expiration" data-dateFormat="yy-mm-dd" name="expiration" value="<?php echo esc_attr(wpinv_get_discount_expiration($discount_id)); ?>"> |
|
283 | + <p class="description"><?php _e('Enter the expiration date for this discount code in the format of yyyy-mm-dd. Leave blank for no expiration.', 'invoicing'); ?></p> |
|
284 | 284 | </td> |
285 | 285 | </tr> |
286 | - <?php do_action( 'wpinv_discount_form_before_min_total', $post ); ?> |
|
286 | + <?php do_action('wpinv_discount_form_before_min_total', $post); ?> |
|
287 | 287 | <tr> |
288 | 288 | <th valign="top" scope="row"> |
289 | - <label for="wpinv_discount_min_total"><?php _e( 'Minimum Amount', 'invoicing' ); ?></label> |
|
289 | + <label for="wpinv_discount_min_total"><?php _e('Minimum Amount', 'invoicing'); ?></label> |
|
290 | 290 | </th> |
291 | 291 | <td> |
292 | 292 | <input type="text" name="min_total" id="wpinv_discount_min_total" class="wpi-field-price wpi-price" value="<?php echo $min_total; ?>"> |
293 | - <p class="description"><?php _e( 'This allows you to set the minimum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing' ); ?></p> |
|
293 | + <p class="description"><?php _e('This allows you to set the minimum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing'); ?></p> |
|
294 | 294 | </td> |
295 | 295 | </tr> |
296 | - <?php do_action( 'wpinv_discount_form_before_max_total', $post ); ?> |
|
296 | + <?php do_action('wpinv_discount_form_before_max_total', $post); ?> |
|
297 | 297 | <tr> |
298 | 298 | <th valign="top" scope="row"> |
299 | - <label for="wpinv_discount_max_total"><?php _e( 'Maximum Amount', 'invoicing' ); ?></label> |
|
299 | + <label for="wpinv_discount_max_total"><?php _e('Maximum Amount', 'invoicing'); ?></label> |
|
300 | 300 | </th> |
301 | 301 | <td> |
302 | 302 | <input type="text" name="max_total" id="wpinv_discount_max_total" class="wpi-field-price wpi-price" value="<?php echo $max_total; ?>"> |
303 | - <p class="description"><?php _e( 'This allows you to set the maximum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing' ); ?></p> |
|
303 | + <p class="description"><?php _e('This allows you to set the maximum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing'); ?></p> |
|
304 | 304 | </td> |
305 | 305 | </tr> |
306 | - <?php do_action( 'wpinv_discount_form_before_recurring', $post ); ?> |
|
306 | + <?php do_action('wpinv_discount_form_before_recurring', $post); ?> |
|
307 | 307 | <tr> |
308 | 308 | <th valign="top" scope="row"> |
309 | - <label for="wpinv_discount_recurring"><?php _e( 'For recurring apply to', 'invoicing' ); ?></label> |
|
309 | + <label for="wpinv_discount_recurring"><?php _e('For recurring apply to', 'invoicing'); ?></label> |
|
310 | 310 | </th> |
311 | 311 | <td> |
312 | 312 | <select id="wpinv_discount_recurring" name="recurring" class="medium-text"> |
313 | - <option value="0" <?php selected( false, $recurring ); ?>><?php _e( 'All payments', 'invoicing' ); ?></option> |
|
314 | - <option value="1" <?php selected( true, $recurring ); ?>><?php _e( 'First payment only', 'invoicing' ); ?></option> |
|
313 | + <option value="0" <?php selected(false, $recurring); ?>><?php _e('All payments', 'invoicing'); ?></option> |
|
314 | + <option value="1" <?php selected(true, $recurring); ?>><?php _e('First payment only', 'invoicing'); ?></option> |
|
315 | 315 | </select> |
316 | - <p class="description"><?php _e( '<b>All payments:</b> apply this discount to all recurring payments of the recurring invoice. <br><b>First payment only:</b> apply this discount to only first payment of the recurring invoice.', 'invoicing' ); ?></p> |
|
316 | + <p class="description"><?php _e('<b>All payments:</b> apply this discount to all recurring payments of the recurring invoice. <br><b>First payment only:</b> apply this discount to only first payment of the recurring invoice.', 'invoicing'); ?></p> |
|
317 | 317 | </td> |
318 | 318 | </tr> |
319 | - <?php do_action( 'wpinv_discount_form_before_max_uses', $post ); ?> |
|
319 | + <?php do_action('wpinv_discount_form_before_max_uses', $post); ?> |
|
320 | 320 | <tr> |
321 | 321 | <th valign="top" scope="row"> |
322 | - <label for="wpinv_discount_max_uses"><?php _e( 'Max Uses', 'invoicing' ); ?></label> |
|
322 | + <label for="wpinv_discount_max_uses"><?php _e('Max Uses', 'invoicing'); ?></label> |
|
323 | 323 | </th> |
324 | 324 | <td> |
325 | 325 | <input type="number" min="0" step="1" id="wpinv_discount_max_uses" name="max_uses" class="medium-text" value="<?php echo $max_uses; ?>"> |
326 | - <p class="description"><?php _e( 'The maximum number of times this discount can be used. Leave blank for unlimited.', 'invoicing' ); ?></p> |
|
326 | + <p class="description"><?php _e('The maximum number of times this discount can be used. Leave blank for unlimited.', 'invoicing'); ?></p> |
|
327 | 327 | </td> |
328 | 328 | </tr> |
329 | - <?php do_action( 'wpinv_discount_form_before_single_use', $post ); ?> |
|
329 | + <?php do_action('wpinv_discount_form_before_single_use', $post); ?> |
|
330 | 330 | <tr> |
331 | 331 | <th valign="top" scope="row"> |
332 | - <label for="wpinv_discount_single_use"><?php _e( 'Use Once Per User', 'invoicing' ); ?></label> |
|
332 | + <label for="wpinv_discount_single_use"><?php _e('Use Once Per User', 'invoicing'); ?></label> |
|
333 | 333 | </th> |
334 | 334 | <td> |
335 | - <input type="checkbox" value="1" name="single_use" id="wpinv_discount_single_use" <?php checked( true, $single_use ); ?>> |
|
336 | - <span class="description"><?php _e( 'Limit this discount to a single use per user?', 'invoicing' ); ?></span> |
|
335 | + <input type="checkbox" value="1" name="single_use" id="wpinv_discount_single_use" <?php checked(true, $single_use); ?>> |
|
336 | + <span class="description"><?php _e('Limit this discount to a single use per user?', 'invoicing'); ?></span> |
|
337 | 337 | </td> |
338 | 338 | </tr> |
339 | - <?php do_action( 'wpinv_discount_form_last', $post ); ?> |
|
339 | + <?php do_action('wpinv_discount_form_last', $post); ?> |
|
340 | 340 | </tbody> |
341 | 341 | </table> |
342 | -<?php do_action( 'wpinv_discount_form_bottom', $post ); ?> |
|
342 | +<?php do_action('wpinv_discount_form_bottom', $post); ?> |
|
343 | 343 | <?php |
344 | 344 | } |
345 | 345 | |
346 | -function wpinv_discount_metabox_save( $post_id, $post, $update = false ) { |
|
347 | - $post_type = !empty( $post ) ? $post->post_type : ''; |
|
346 | +function wpinv_discount_metabox_save($post_id, $post, $update = false) { |
|
347 | + $post_type = !empty($post) ? $post->post_type : ''; |
|
348 | 348 | |
349 | - if ( $post_type != 'wpi_discount' ) { |
|
349 | + if ($post_type != 'wpi_discount') { |
|
350 | 350 | return; |
351 | 351 | } |
352 | 352 | |
353 | - if ( !isset( $_POST['wpinv_discount_metabox_nonce'] ) || ( isset( $_POST['wpinv_discount_metabox_nonce'] ) && !wp_verify_nonce( $_POST['wpinv_discount_metabox_nonce'], 'wpinv_discount_metabox_nonce' ) ) ) { |
|
353 | + if (!isset($_POST['wpinv_discount_metabox_nonce']) || (isset($_POST['wpinv_discount_metabox_nonce']) && !wp_verify_nonce($_POST['wpinv_discount_metabox_nonce'], 'wpinv_discount_metabox_nonce'))) { |
|
354 | 354 | return; |
355 | 355 | } |
356 | 356 | |
357 | - if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ( defined( 'DOING_AJAX') && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) { |
|
357 | + if ((defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) || (defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) { |
|
358 | 358 | return; |
359 | 359 | } |
360 | 360 | |
361 | - if ( !current_user_can( 'manage_options', $post_id ) ) { |
|
361 | + if (!current_user_can('manage_options', $post_id)) { |
|
362 | 362 | return; |
363 | 363 | } |
364 | 364 | |
365 | - return wpinv_store_discount( $post_id, $_POST, $post, $update ); |
|
365 | + return wpinv_store_discount($post_id, $_POST, $post, $update); |
|
366 | 366 | } |
367 | -add_action( 'save_post', 'wpinv_discount_metabox_save', 10, 3 ); |
|
368 | 367 | \ No newline at end of file |
368 | +add_action('save_post', 'wpinv_discount_metabox_save', 10, 3); |
|
369 | 369 | \ No newline at end of file |
@@ -1,13 +1,13 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // Exit if accessed directly |
3 | -if ( ! defined( 'ABSPATH' ) ) exit; |
|
3 | +if (!defined('ABSPATH')) exit; |
|
4 | 4 | |
5 | -add_action( 'wpinv_paypal_cc_form', '__return_false' ); |
|
6 | -add_filter( 'wpinv_paypal_support_subscription', '__return_true' ); |
|
5 | +add_action('wpinv_paypal_cc_form', '__return_false'); |
|
6 | +add_filter('wpinv_paypal_support_subscription', '__return_true'); |
|
7 | 7 | |
8 | -function wpinv_process_paypal_payment( $purchase_data ) { |
|
9 | - if( ! wp_verify_nonce( $purchase_data['gateway_nonce'], 'wpi-gateway' ) ) { |
|
10 | - wp_die( __( 'Nonce verification has failed', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) ); |
|
8 | +function wpinv_process_paypal_payment($purchase_data) { |
|
9 | + if (!wp_verify_nonce($purchase_data['gateway_nonce'], 'wpi-gateway')) { |
|
10 | + wp_die(__('Nonce verification has failed', 'invoicing'), __('Error', 'invoicing'), array('response' => 403)); |
|
11 | 11 | } |
12 | 12 | |
13 | 13 | // Collect payment data |
@@ -21,34 +21,34 @@ discard block |
||
21 | 21 | 'user_info' => $purchase_data['user_info'], |
22 | 22 | 'cart_details' => $purchase_data['cart_details'], |
23 | 23 | 'gateway' => 'paypal', |
24 | - 'status' => !empty( $purchase_data['buy_now'] ) ? 'private' : 'pending' |
|
24 | + 'status' => !empty($purchase_data['buy_now']) ? 'private' : 'pending' |
|
25 | 25 | ); |
26 | 26 | |
27 | 27 | // Record the pending payment |
28 | - $invoice = wpinv_get_invoice( $purchase_data['invoice_id'] ); |
|
28 | + $invoice = wpinv_get_invoice($purchase_data['invoice_id']); |
|
29 | 29 | |
30 | 30 | // Check payment |
31 | - if ( ! $invoice ) { |
|
31 | + if (!$invoice) { |
|
32 | 32 | // Record the error |
33 | - wpinv_record_gateway_error( __( 'Payment Error', 'invoicing' ), sprintf( __( 'Payment creation failed before sending buyer to PayPal. Payment data: %s', 'invoicing' ), json_encode( $payment_data ) ), $payment ); |
|
33 | + wpinv_record_gateway_error(__('Payment Error', 'invoicing'), sprintf(__('Payment creation failed before sending buyer to PayPal. Payment data: %s', 'invoicing'), json_encode($payment_data)), $payment); |
|
34 | 34 | // Problems? send back |
35 | - wpinv_send_back_to_checkout( '?payment-mode=' . $purchase_data['post_data']['wpi-gateway'] ); |
|
35 | + wpinv_send_back_to_checkout('?payment-mode=' . $purchase_data['post_data']['wpi-gateway']); |
|
36 | 36 | } else { |
37 | 37 | // Only send to PayPal if the pending payment is created successfully |
38 | - $listener_url = wpinv_get_ipn_url( 'paypal' ); |
|
38 | + $listener_url = wpinv_get_ipn_url('paypal'); |
|
39 | 39 | |
40 | 40 | // Get the success url |
41 | - $return_url = add_query_arg( array( |
|
41 | + $return_url = add_query_arg(array( |
|
42 | 42 | 'payment-confirm' => 'paypal', |
43 | 43 | 'invoice-id' => $invoice->ID |
44 | - ), get_permalink( wpinv_get_option( 'success_page', false ) ) ); |
|
44 | + ), get_permalink(wpinv_get_option('success_page', false))); |
|
45 | 45 | |
46 | 46 | // Get the PayPal redirect uri |
47 | - $paypal_redirect = trailingslashit( wpinv_get_paypal_redirect() ) . '?'; |
|
47 | + $paypal_redirect = trailingslashit(wpinv_get_paypal_redirect()) . '?'; |
|
48 | 48 | |
49 | 49 | // Setup PayPal arguments |
50 | 50 | $paypal_args = array( |
51 | - 'business' => wpinv_get_option( 'paypal_email', false ), |
|
51 | + 'business' => wpinv_get_option('paypal_email', false), |
|
52 | 52 | 'email' => $invoice->get_email(), |
53 | 53 | 'first_name' => $invoice->get_first_name(), |
54 | 54 | 'last_name' => $invoice->get_last_name(), |
@@ -57,13 +57,13 @@ discard block |
||
57 | 57 | 'shipping' => '0', |
58 | 58 | 'no_note' => '1', |
59 | 59 | 'currency_code' => wpinv_get_currency(), |
60 | - 'charset' => get_bloginfo( 'charset' ), |
|
60 | + 'charset' => get_bloginfo('charset'), |
|
61 | 61 | 'custom' => $invoice->ID, |
62 | 62 | 'rm' => '2', |
63 | 63 | 'return' => $return_url, |
64 | - 'cancel_return' => wpinv_get_failed_transaction_uri( '?invoice-id=' . $invoice->ID ), |
|
64 | + 'cancel_return' => wpinv_get_failed_transaction_uri('?invoice-id=' . $invoice->ID), |
|
65 | 65 | 'notify_url' => $listener_url, |
66 | - 'cbt' => get_bloginfo( 'name' ), |
|
66 | + 'cbt' => get_bloginfo('name'), |
|
67 | 67 | 'bn' => 'WPInvoicing_SP', |
68 | 68 | 'lc' => 'US' // this will force paypal site to english |
69 | 69 | ); |
@@ -79,57 +79,57 @@ discard block |
||
79 | 79 | 'upload' => '1' |
80 | 80 | ); |
81 | 81 | |
82 | - $paypal_args = array_merge( $paypal_extra_args, $paypal_args ); |
|
82 | + $paypal_args = array_merge($paypal_extra_args, $paypal_args); |
|
83 | 83 | |
84 | 84 | // Add cart items |
85 | 85 | $i = 1; |
86 | - if( is_array( $purchase_data['cart_details'] ) && ! empty( $purchase_data['cart_details'] ) ) { |
|
87 | - foreach ( $purchase_data['cart_details'] as $item ) { |
|
86 | + if (is_array($purchase_data['cart_details']) && !empty($purchase_data['cart_details'])) { |
|
87 | + foreach ($purchase_data['cart_details'] as $item) { |
|
88 | 88 | $item['quantity'] = $item['quantity'] > 0 ? $item['quantity'] : 1; |
89 | - $item_amount = wpinv_sanitize_amount( $item['subtotal'] / $item['quantity'], 2 ); |
|
89 | + $item_amount = wpinv_sanitize_amount($item['subtotal'] / $item['quantity'], 2); |
|
90 | 90 | |
91 | - if ( $item_amount <= 0 ) { |
|
91 | + if ($item_amount <= 0) { |
|
92 | 92 | $item_amount = 0; |
93 | 93 | } |
94 | 94 | |
95 | - $paypal_args['item_number_' . $i ] = $item['id']; |
|
96 | - $paypal_args['item_name_' . $i ] = stripslashes_deep( html_entity_decode( wpinv_get_cart_item_name( $item ), ENT_COMPAT, 'UTF-8' ) ); |
|
97 | - $paypal_args['quantity_' . $i ] = $item['quantity']; |
|
98 | - $paypal_args['amount_' . $i ] = $item_amount; |
|
99 | - $paypal_args['discount_amount_' . $i ] = wpinv_sanitize_amount( $item['discount'], 2 ); |
|
95 | + $paypal_args['item_number_' . $i] = $item['id']; |
|
96 | + $paypal_args['item_name_' . $i] = stripslashes_deep(html_entity_decode(wpinv_get_cart_item_name($item), ENT_COMPAT, 'UTF-8')); |
|
97 | + $paypal_args['quantity_' . $i] = $item['quantity']; |
|
98 | + $paypal_args['amount_' . $i] = $item_amount; |
|
99 | + $paypal_args['discount_amount_' . $i] = wpinv_sanitize_amount($item['discount'], 2); |
|
100 | 100 | |
101 | 101 | $i++; |
102 | 102 | } |
103 | 103 | } |
104 | 104 | |
105 | 105 | // Add taxes to the cart |
106 | - if ( wpinv_use_taxes() ) { |
|
107 | - $paypal_args['tax_cart'] = wpinv_sanitize_amount( (float)$invoice->get_tax(), 2 ); |
|
106 | + if (wpinv_use_taxes()) { |
|
107 | + $paypal_args['tax_cart'] = wpinv_sanitize_amount((float)$invoice->get_tax(), 2); |
|
108 | 108 | } |
109 | 109 | |
110 | - $paypal_args = apply_filters( 'wpinv_paypal_args', $paypal_args, $purchase_data, $invoice ); |
|
110 | + $paypal_args = apply_filters('wpinv_paypal_args', $paypal_args, $purchase_data, $invoice); |
|
111 | 111 | |
112 | 112 | // Build query |
113 | - $paypal_redirect .= http_build_query( $paypal_args ); |
|
113 | + $paypal_redirect .= http_build_query($paypal_args); |
|
114 | 114 | |
115 | 115 | // Fix for some sites that encode the entities |
116 | - $paypal_redirect = str_replace( '&', '&', $paypal_redirect ); |
|
116 | + $paypal_redirect = str_replace('&', '&', $paypal_redirect); |
|
117 | 117 | |
118 | 118 | // Get rid of cart contents |
119 | 119 | wpinv_empty_cart(); |
120 | 120 | |
121 | 121 | // Redirect to PayPal |
122 | - wp_redirect( $paypal_redirect ); |
|
122 | + wp_redirect($paypal_redirect); |
|
123 | 123 | exit; |
124 | 124 | } |
125 | 125 | } |
126 | -add_action( 'wpinv_gateway_paypal', 'wpinv_process_paypal_payment' ); |
|
126 | +add_action('wpinv_gateway_paypal', 'wpinv_process_paypal_payment'); |
|
127 | 127 | |
128 | -function wpinv_get_paypal_recurring_args( $paypal_args, $purchase_data, $invoice ) { |
|
129 | - if ( $invoice->is_recurring() && $item_id = $invoice->get_recurring() ) { |
|
130 | - $item = new WPInv_Item( $item_id ); |
|
128 | +function wpinv_get_paypal_recurring_args($paypal_args, $purchase_data, $invoice) { |
|
129 | + if ($invoice->is_recurring() && $item_id = $invoice->get_recurring()) { |
|
130 | + $item = new WPInv_Item($item_id); |
|
131 | 131 | |
132 | - if ( empty( $item ) ) { |
|
132 | + if (empty($item)) { |
|
133 | 133 | return $paypal_args; |
134 | 134 | } |
135 | 135 | |
@@ -137,24 +137,24 @@ discard block |
||
137 | 137 | $interval = $item->get_recurring_interval(); |
138 | 138 | $bill_times = (int)$item->get_recurring_limit(); |
139 | 139 | |
140 | - $initial_amount = wpinv_sanitize_amount( $invoice->get_total(), 2 ); |
|
141 | - $recurring_amount = wpinv_sanitize_amount( $invoice->get_recurring_details( 'total' ), 2 ); |
|
140 | + $initial_amount = wpinv_sanitize_amount($invoice->get_total(), 2); |
|
141 | + $recurring_amount = wpinv_sanitize_amount($invoice->get_recurring_details('total'), 2); |
|
142 | 142 | |
143 | 143 | $paypal_args['cmd'] = '_xclick-subscriptions'; |
144 | 144 | $paypal_args['sra'] = '1'; |
145 | 145 | $paypal_args['src'] = '1'; |
146 | 146 | |
147 | 147 | // Set item description |
148 | - $paypal_args['item_name'] = stripslashes_deep( html_entity_decode( wpinv_get_cart_item_name( array( 'id' => $item->ID ) ), ENT_COMPAT, 'UTF-8' ) ); |
|
148 | + $paypal_args['item_name'] = stripslashes_deep(html_entity_decode(wpinv_get_cart_item_name(array('id' => $item->ID)), ENT_COMPAT, 'UTF-8')); |
|
149 | 149 | |
150 | - if ( $invoice->is_free_trial() && $item->has_free_trial() ) { |
|
150 | + if ($invoice->is_free_trial() && $item->has_free_trial()) { |
|
151 | 151 | $paypal_args['a1'] = $initial_amount; |
152 | 152 | $paypal_args['p1'] = $item->get_trial_interval(); |
153 | 153 | $paypal_args['t1'] = $item->get_trial_period(); |
154 | 154 | |
155 | 155 | // Set the recurring amount |
156 | 156 | $paypal_args['a3'] = $recurring_amount; |
157 | - } else if ( $initial_amount != $recurring_amount && $bill_times != 1 ) { |
|
157 | + } else if ($initial_amount != $recurring_amount && $bill_times != 1) { |
|
158 | 158 | $paypal_args['a1'] = $initial_amount; |
159 | 159 | $paypal_args['p1'] = $interval; |
160 | 160 | $paypal_args['t1'] = $period; |
@@ -162,63 +162,63 @@ discard block |
||
162 | 162 | // Set the recurring amount |
163 | 163 | $paypal_args['a3'] = $recurring_amount; |
164 | 164 | |
165 | - if ( $bill_times > 1 ) { |
|
165 | + if ($bill_times > 1) { |
|
166 | 166 | $bill_times--; |
167 | 167 | } |
168 | 168 | } else { |
169 | - $paypal_args['a3'] = $initial_amount; |
|
169 | + $paypal_args['a3'] = $initial_amount; |
|
170 | 170 | } |
171 | 171 | |
172 | 172 | $paypal_args['p3'] = $interval; |
173 | 173 | $paypal_args['t3'] = $period; |
174 | 174 | |
175 | - if ( $bill_times > 1 ) { |
|
175 | + if ($bill_times > 1) { |
|
176 | 176 | // Make sure it's not over the max of 52 |
177 | - $paypal_args['srt'] = ( $bill_times <= 52 ? absint( $bill_times ) : 52 ); |
|
177 | + $paypal_args['srt'] = ($bill_times <= 52 ? absint($bill_times) : 52); |
|
178 | 178 | } |
179 | 179 | |
180 | 180 | // Remove cart items |
181 | 181 | $i = 1; |
182 | - if( is_array( $purchase_data['cart_details'] ) && ! empty( $purchase_data['cart_details'] ) ) { |
|
183 | - foreach ( $purchase_data['cart_details'] as $item ) { |
|
184 | - if ( isset( $paypal_args['item_number_' . $i] ) ) { |
|
185 | - unset( $paypal_args['item_number_' . $i] ); |
|
182 | + if (is_array($purchase_data['cart_details']) && !empty($purchase_data['cart_details'])) { |
|
183 | + foreach ($purchase_data['cart_details'] as $item) { |
|
184 | + if (isset($paypal_args['item_number_' . $i])) { |
|
185 | + unset($paypal_args['item_number_' . $i]); |
|
186 | 186 | } |
187 | - if ( isset( $paypal_args['item_name_' . $i] ) ) { |
|
188 | - unset( $paypal_args['item_name_' . $i] ); |
|
187 | + if (isset($paypal_args['item_name_' . $i])) { |
|
188 | + unset($paypal_args['item_name_' . $i]); |
|
189 | 189 | } |
190 | - if ( isset( $paypal_args['quantity_' . $i] ) ) { |
|
191 | - unset( $paypal_args['quantity_' . $i] ); |
|
190 | + if (isset($paypal_args['quantity_' . $i])) { |
|
191 | + unset($paypal_args['quantity_' . $i]); |
|
192 | 192 | } |
193 | - if ( isset( $paypal_args['amount_' . $i] ) ) { |
|
194 | - unset( $paypal_args['amount_' . $i] ); |
|
193 | + if (isset($paypal_args['amount_' . $i])) { |
|
194 | + unset($paypal_args['amount_' . $i]); |
|
195 | 195 | } |
196 | - if ( isset( $paypal_args['discount_amount_' . $i] ) ) { |
|
197 | - unset( $paypal_args['discount_amount_' . $i] ); |
|
196 | + if (isset($paypal_args['discount_amount_' . $i])) { |
|
197 | + unset($paypal_args['discount_amount_' . $i]); |
|
198 | 198 | } |
199 | 199 | |
200 | 200 | $i++; |
201 | 201 | } |
202 | 202 | } |
203 | 203 | |
204 | - if ( isset( $paypal_args['tax_cart'] ) ) { |
|
205 | - unset( $paypal_args['tax_cart'] ); |
|
204 | + if (isset($paypal_args['tax_cart'])) { |
|
205 | + unset($paypal_args['tax_cart']); |
|
206 | 206 | } |
207 | 207 | |
208 | - if ( isset( $paypal_args['upload'] ) ) { |
|
209 | - unset( $paypal_args['upload'] ); |
|
208 | + if (isset($paypal_args['upload'])) { |
|
209 | + unset($paypal_args['upload']); |
|
210 | 210 | } |
211 | 211 | |
212 | - $paypal_args = apply_filters( 'wpinv_paypal_recurring_args', $paypal_args, $purchase_data, $invoice ); |
|
212 | + $paypal_args = apply_filters('wpinv_paypal_recurring_args', $paypal_args, $purchase_data, $invoice); |
|
213 | 213 | } |
214 | 214 | |
215 | 215 | return $paypal_args; |
216 | 216 | } |
217 | -add_filter( 'wpinv_paypal_args', 'wpinv_get_paypal_recurring_args', 10, 3 ); |
|
217 | +add_filter('wpinv_paypal_args', 'wpinv_get_paypal_recurring_args', 10, 3); |
|
218 | 218 | |
219 | 219 | function wpinv_process_paypal_ipn() { |
220 | 220 | // Check the request method is POST |
221 | - if ( isset( $_SERVER['REQUEST_METHOD'] ) && $_SERVER['REQUEST_METHOD'] != 'POST' ) { |
|
221 | + if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] != 'POST') { |
|
222 | 222 | return; |
223 | 223 | } |
224 | 224 | |
@@ -226,11 +226,11 @@ discard block |
||
226 | 226 | $post_data = ''; |
227 | 227 | |
228 | 228 | // Fallback just in case post_max_size is lower than needed |
229 | - if ( ini_get( 'allow_url_fopen' ) ) { |
|
230 | - $post_data = file_get_contents( 'php://input' ); |
|
229 | + if (ini_get('allow_url_fopen')) { |
|
230 | + $post_data = file_get_contents('php://input'); |
|
231 | 231 | } else { |
232 | 232 | // If allow_url_fopen is not enabled, then make sure that post_max_size is large enough |
233 | - ini_set( 'post_max_size', '12M' ); |
|
233 | + ini_set('post_max_size', '12M'); |
|
234 | 234 | } |
235 | 235 | // Start the encoded data collection with notification command |
236 | 236 | $encoded_data = 'cmd=_notify-validate'; |
@@ -239,43 +239,43 @@ discard block |
||
239 | 239 | $arg_separator = wpinv_get_php_arg_separator_output(); |
240 | 240 | |
241 | 241 | // Verify there is a post_data |
242 | - if ( $post_data || strlen( $post_data ) > 0 ) { |
|
242 | + if ($post_data || strlen($post_data) > 0) { |
|
243 | 243 | // Append the data |
244 | - $encoded_data .= $arg_separator.$post_data; |
|
244 | + $encoded_data .= $arg_separator . $post_data; |
|
245 | 245 | } else { |
246 | 246 | // Check if POST is empty |
247 | - if ( empty( $_POST ) ) { |
|
247 | + if (empty($_POST)) { |
|
248 | 248 | // Nothing to do |
249 | 249 | return; |
250 | 250 | } else { |
251 | 251 | // Loop through each POST |
252 | - foreach ( $_POST as $key => $value ) { |
|
252 | + foreach ($_POST as $key => $value) { |
|
253 | 253 | // Encode the value and append the data |
254 | - $encoded_data .= $arg_separator."$key=" . urlencode( $value ); |
|
254 | + $encoded_data .= $arg_separator . "$key=" . urlencode($value); |
|
255 | 255 | } |
256 | 256 | } |
257 | 257 | } |
258 | 258 | |
259 | 259 | // Convert collected post data to an array |
260 | - parse_str( $encoded_data, $encoded_data_array ); |
|
260 | + parse_str($encoded_data, $encoded_data_array); |
|
261 | 261 | |
262 | - foreach ( $encoded_data_array as $key => $value ) { |
|
263 | - if ( false !== strpos( $key, 'amp;' ) ) { |
|
264 | - $new_key = str_replace( '&', '&', $key ); |
|
265 | - $new_key = str_replace( 'amp;', '&' , $new_key ); |
|
262 | + foreach ($encoded_data_array as $key => $value) { |
|
263 | + if (false !== strpos($key, 'amp;')) { |
|
264 | + $new_key = str_replace('&', '&', $key); |
|
265 | + $new_key = str_replace('amp;', '&', $new_key); |
|
266 | 266 | |
267 | - unset( $encoded_data_array[ $key ] ); |
|
268 | - $encoded_data_array[ $new_key ] = $value; |
|
267 | + unset($encoded_data_array[$key]); |
|
268 | + $encoded_data_array[$new_key] = $value; |
|
269 | 269 | } |
270 | 270 | } |
271 | 271 | |
272 | 272 | // Get the PayPal redirect uri |
273 | - $paypal_redirect = wpinv_get_paypal_redirect( true ); |
|
273 | + $paypal_redirect = wpinv_get_paypal_redirect(true); |
|
274 | 274 | |
275 | - if ( !wpinv_get_option( 'disable_paypal_verification', false ) ) { |
|
275 | + if (!wpinv_get_option('disable_paypal_verification', false)) { |
|
276 | 276 | // Validate the IPN |
277 | 277 | |
278 | - $remote_post_vars = array( |
|
278 | + $remote_post_vars = array( |
|
279 | 279 | 'method' => 'POST', |
280 | 280 | 'timeout' => 45, |
281 | 281 | 'redirection' => 5, |
@@ -293,21 +293,21 @@ discard block |
||
293 | 293 | ); |
294 | 294 | |
295 | 295 | // Get response |
296 | - $api_response = wp_remote_post( wpinv_get_paypal_redirect(), $remote_post_vars ); |
|
296 | + $api_response = wp_remote_post(wpinv_get_paypal_redirect(), $remote_post_vars); |
|
297 | 297 | |
298 | - if ( is_wp_error( $api_response ) ) { |
|
299 | - wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid IPN verification response. IPN data: %s', 'invoicing' ), json_encode( $api_response ) ) ); |
|
298 | + if (is_wp_error($api_response)) { |
|
299 | + wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid IPN verification response. IPN data: %s', 'invoicing'), json_encode($api_response))); |
|
300 | 300 | return; // Something went wrong |
301 | 301 | } |
302 | 302 | |
303 | - if ( $api_response['body'] !== 'VERIFIED' && wpinv_get_option( 'disable_paypal_verification', false ) ) { |
|
304 | - wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid IPN verification response. IPN data: %s', 'invoicing' ), json_encode( $api_response ) ) ); |
|
303 | + if ($api_response['body'] !== 'VERIFIED' && wpinv_get_option('disable_paypal_verification', false)) { |
|
304 | + wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid IPN verification response. IPN data: %s', 'invoicing'), json_encode($api_response))); |
|
305 | 305 | return; // Response not okay |
306 | 306 | } |
307 | 307 | } |
308 | 308 | |
309 | 309 | // Check if $post_data_array has been populated |
310 | - if ( !is_array( $encoded_data_array ) && !empty( $encoded_data_array ) ) |
|
310 | + if (!is_array($encoded_data_array) && !empty($encoded_data_array)) |
|
311 | 311 | return; |
312 | 312 | |
313 | 313 | $defaults = array( |
@@ -315,215 +315,215 @@ discard block |
||
315 | 315 | 'payment_status' => '' |
316 | 316 | ); |
317 | 317 | |
318 | - $encoded_data_array = wp_parse_args( $encoded_data_array, $defaults ); |
|
318 | + $encoded_data_array = wp_parse_args($encoded_data_array, $defaults); |
|
319 | 319 | |
320 | - $invoice_id = isset( $encoded_data_array['custom'] ) ? absint( $encoded_data_array['custom'] ) : 0; |
|
320 | + $invoice_id = isset($encoded_data_array['custom']) ? absint($encoded_data_array['custom']) : 0; |
|
321 | 321 | |
322 | - wpinv_error_log( $encoded_data_array['txn_type'], 'PayPal txn_type', __FILE__, __LINE__ ); |
|
322 | + wpinv_error_log($encoded_data_array['txn_type'], 'PayPal txn_type', __FILE__, __LINE__); |
|
323 | 323 | |
324 | - if ( has_action( 'wpinv_paypal_' . $encoded_data_array['txn_type'] ) ) { |
|
324 | + if (has_action('wpinv_paypal_' . $encoded_data_array['txn_type'])) { |
|
325 | 325 | // Allow PayPal IPN types to be processed separately |
326 | - do_action( 'wpinv_paypal_' . $encoded_data_array['txn_type'], $encoded_data_array, $invoice_id ); |
|
326 | + do_action('wpinv_paypal_' . $encoded_data_array['txn_type'], $encoded_data_array, $invoice_id); |
|
327 | 327 | } else { |
328 | 328 | // Fallback to web accept just in case the txn_type isn't present |
329 | - do_action( 'wpinv_paypal_web_accept', $encoded_data_array, $invoice_id ); |
|
329 | + do_action('wpinv_paypal_web_accept', $encoded_data_array, $invoice_id); |
|
330 | 330 | } |
331 | 331 | exit; |
332 | 332 | } |
333 | -add_action( 'wpinv_verify_paypal_ipn', 'wpinv_process_paypal_ipn' ); |
|
333 | +add_action('wpinv_verify_paypal_ipn', 'wpinv_process_paypal_ipn'); |
|
334 | 334 | |
335 | -function wpinv_process_paypal_web_accept_and_cart( $data, $invoice_id ) { |
|
336 | - if ( $data['txn_type'] != 'web_accept' && $data['txn_type'] != 'cart' && $data['payment_status'] != 'Refunded' ) { |
|
335 | +function wpinv_process_paypal_web_accept_and_cart($data, $invoice_id) { |
|
336 | + if ($data['txn_type'] != 'web_accept' && $data['txn_type'] != 'cart' && $data['payment_status'] != 'Refunded') { |
|
337 | 337 | return; |
338 | 338 | } |
339 | 339 | |
340 | - if( empty( $invoice_id ) ) { |
|
340 | + if (empty($invoice_id)) { |
|
341 | 341 | return; |
342 | 342 | } |
343 | 343 | |
344 | 344 | // Collect payment details |
345 | - $purchase_key = isset( $data['invoice'] ) ? $data['invoice'] : $data['item_number']; |
|
345 | + $purchase_key = isset($data['invoice']) ? $data['invoice'] : $data['item_number']; |
|
346 | 346 | $paypal_amount = $data['mc_gross']; |
347 | - $payment_status = strtolower( $data['payment_status'] ); |
|
348 | - $currency_code = strtolower( $data['mc_currency'] ); |
|
349 | - $business_email = isset( $data['business'] ) && is_email( $data['business'] ) ? trim( $data['business'] ) : trim( $data['receiver_email'] ); |
|
350 | - $payment_meta = wpinv_get_invoice_meta( $invoice_id ); |
|
347 | + $payment_status = strtolower($data['payment_status']); |
|
348 | + $currency_code = strtolower($data['mc_currency']); |
|
349 | + $business_email = isset($data['business']) && is_email($data['business']) ? trim($data['business']) : trim($data['receiver_email']); |
|
350 | + $payment_meta = wpinv_get_invoice_meta($invoice_id); |
|
351 | 351 | |
352 | - if ( wpinv_get_payment_gateway( $invoice_id ) != 'paypal' ) { |
|
352 | + if (wpinv_get_payment_gateway($invoice_id) != 'paypal') { |
|
353 | 353 | return; // this isn't a PayPal standard IPN |
354 | 354 | } |
355 | 355 | |
356 | 356 | // Verify payment recipient |
357 | - if ( strcasecmp( $business_email, trim( wpinv_get_option( 'paypal_email', false ) ) ) != 0 ) { |
|
358 | - wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid business email in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id ); |
|
359 | - wpinv_update_payment_status( $invoice_id, 'wpi-failed' ); |
|
360 | - wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid PayPal business email.', 'invoicing' ) ); |
|
357 | + if (strcasecmp($business_email, trim(wpinv_get_option('paypal_email', false))) != 0) { |
|
358 | + wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid business email in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id); |
|
359 | + wpinv_update_payment_status($invoice_id, 'wpi-failed'); |
|
360 | + wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid PayPal business email.', 'invoicing')); |
|
361 | 361 | return; |
362 | 362 | } |
363 | 363 | |
364 | 364 | // Verify payment currency |
365 | - if ( $currency_code != strtolower( $payment_meta['currency'] ) ) { |
|
366 | - wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid currency in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id ); |
|
367 | - wpinv_update_payment_status( $invoice_id, 'wpi-failed' ); |
|
368 | - wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid currency in PayPal IPN.', 'invoicing' ) ); |
|
365 | + if ($currency_code != strtolower($payment_meta['currency'])) { |
|
366 | + wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid currency in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id); |
|
367 | + wpinv_update_payment_status($invoice_id, 'wpi-failed'); |
|
368 | + wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid currency in PayPal IPN.', 'invoicing')); |
|
369 | 369 | return; |
370 | 370 | } |
371 | 371 | |
372 | - if ( !wpinv_get_payment_user_email( $invoice_id ) ) { |
|
372 | + if (!wpinv_get_payment_user_email($invoice_id)) { |
|
373 | 373 | // This runs when a Buy Now purchase was made. It bypasses checkout so no personal info is collected until PayPal |
374 | 374 | // No email associated with purchase, so store from PayPal |
375 | - wpinv_update_invoice_meta( $invoice_id, '_wpinv_email', $data['payer_email'] ); |
|
375 | + wpinv_update_invoice_meta($invoice_id, '_wpinv_email', $data['payer_email']); |
|
376 | 376 | |
377 | 377 | // Setup and store the customer's details |
378 | 378 | $user_info = array( |
379 | 379 | 'user_id' => '-1', |
380 | - 'email' => sanitize_text_field( $data['payer_email'] ), |
|
381 | - 'first_name' => sanitize_text_field( $data['first_name'] ), |
|
382 | - 'last_name' => sanitize_text_field( $data['last_name'] ), |
|
380 | + 'email' => sanitize_text_field($data['payer_email']), |
|
381 | + 'first_name' => sanitize_text_field($data['first_name']), |
|
382 | + 'last_name' => sanitize_text_field($data['last_name']), |
|
383 | 383 | 'discount' => '', |
384 | 384 | ); |
385 | - $user_info['address'] = ! empty( $data['address_street'] ) ? sanitize_text_field( $data['address_street'] ) : false; |
|
386 | - $user_info['city'] = ! empty( $data['address_city'] ) ? sanitize_text_field( $data['address_city'] ) : false; |
|
387 | - $user_info['state'] = ! empty( $data['address_state'] ) ? sanitize_text_field( $data['address_state'] ) : false; |
|
388 | - $user_info['country'] = ! empty( $data['address_country_code'] ) ? sanitize_text_field( $data['address_country_code'] ) : false; |
|
389 | - $user_info['zip'] = ! empty( $data['address_zip'] ) ? sanitize_text_field( $data['address_zip'] ) : false; |
|
385 | + $user_info['address'] = !empty($data['address_street']) ? sanitize_text_field($data['address_street']) : false; |
|
386 | + $user_info['city'] = !empty($data['address_city']) ? sanitize_text_field($data['address_city']) : false; |
|
387 | + $user_info['state'] = !empty($data['address_state']) ? sanitize_text_field($data['address_state']) : false; |
|
388 | + $user_info['country'] = !empty($data['address_country_code']) ? sanitize_text_field($data['address_country_code']) : false; |
|
389 | + $user_info['zip'] = !empty($data['address_zip']) ? sanitize_text_field($data['address_zip']) : false; |
|
390 | 390 | |
391 | 391 | $payment_meta['user_info'] = $user_info; |
392 | - wpinv_update_invoice_meta( $invoice_id, '_wpinv_payment_meta', $payment_meta ); |
|
392 | + wpinv_update_invoice_meta($invoice_id, '_wpinv_payment_meta', $payment_meta); |
|
393 | 393 | } |
394 | 394 | |
395 | - if ( $payment_status == 'refunded' || $payment_status == 'reversed' ) { |
|
395 | + if ($payment_status == 'refunded' || $payment_status == 'reversed') { |
|
396 | 396 | // Process a refund |
397 | - wpinv_process_paypal_refund( $data, $invoice_id ); |
|
397 | + wpinv_process_paypal_refund($data, $invoice_id); |
|
398 | 398 | } else { |
399 | - if ( get_post_status( $invoice_id ) == 'publish' ) { |
|
399 | + if (get_post_status($invoice_id) == 'publish') { |
|
400 | 400 | return; // Only paid payments once |
401 | 401 | } |
402 | 402 | |
403 | 403 | // Retrieve the total purchase amount (before PayPal) |
404 | - $payment_amount = wpinv_payment_total( $invoice_id ); |
|
404 | + $payment_amount = wpinv_payment_total($invoice_id); |
|
405 | 405 | |
406 | - if ( number_format( (float) $paypal_amount, 2 ) < number_format( (float) $payment_amount, 2 ) ) { |
|
406 | + if (number_format((float)$paypal_amount, 2) < number_format((float)$payment_amount, 2)) { |
|
407 | 407 | // The prices don't match |
408 | - wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid payment amount in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id ); |
|
409 | - wpinv_update_payment_status( $invoice_id, 'wpi-failed' ); |
|
410 | - wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid amount in PayPal IPN.', 'invoicing' ) ); |
|
408 | + wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid payment amount in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id); |
|
409 | + wpinv_update_payment_status($invoice_id, 'wpi-failed'); |
|
410 | + wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid amount in PayPal IPN.', 'invoicing')); |
|
411 | 411 | return; |
412 | 412 | } |
413 | - if ( $purchase_key != wpinv_get_payment_key( $invoice_id ) ) { |
|
413 | + if ($purchase_key != wpinv_get_payment_key($invoice_id)) { |
|
414 | 414 | // Purchase keys don't match |
415 | - wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid purchase key in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id ); |
|
416 | - wpinv_update_payment_status( $invoice_id, 'wpi-failed' ); |
|
417 | - wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid purchase key in PayPal IPN.', 'invoicing' ) ); |
|
415 | + wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid purchase key in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id); |
|
416 | + wpinv_update_payment_status($invoice_id, 'wpi-failed'); |
|
417 | + wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid purchase key in PayPal IPN.', 'invoicing')); |
|
418 | 418 | return; |
419 | 419 | } |
420 | 420 | |
421 | - if ( 'complete' == $payment_status || 'completed' == $payment_status || 'processed' == $payment_status || wpinv_is_test_mode( 'paypal' ) ) { |
|
422 | - wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $data['txn_id'] ) ); |
|
423 | - wpinv_set_payment_transaction_id( $invoice_id, $data['txn_id'] ); |
|
424 | - wpinv_update_payment_status( $invoice_id, 'publish' ); |
|
425 | - } else if ( 'pending' == $payment_status && isset( $data['pending_reason'] ) ) { |
|
421 | + if ('complete' == $payment_status || 'completed' == $payment_status || 'processed' == $payment_status || wpinv_is_test_mode('paypal')) { |
|
422 | + wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $data['txn_id'])); |
|
423 | + wpinv_set_payment_transaction_id($invoice_id, $data['txn_id']); |
|
424 | + wpinv_update_payment_status($invoice_id, 'publish'); |
|
425 | + } else if ('pending' == $payment_status && isset($data['pending_reason'])) { |
|
426 | 426 | // Look for possible pending reasons, such as an echeck |
427 | 427 | $note = ''; |
428 | 428 | |
429 | - switch( strtolower( $data['pending_reason'] ) ) { |
|
429 | + switch (strtolower($data['pending_reason'])) { |
|
430 | 430 | case 'echeck' : |
431 | - $note = __( 'Payment made via eCheck and will clear automatically in 5-8 days', 'invoicing' ); |
|
431 | + $note = __('Payment made via eCheck and will clear automatically in 5-8 days', 'invoicing'); |
|
432 | 432 | break; |
433 | 433 | |
434 | 434 | case 'address' : |
435 | - $note = __( 'Payment requires a confirmed customer address and must be accepted manually through PayPal', 'invoicing' ); |
|
435 | + $note = __('Payment requires a confirmed customer address and must be accepted manually through PayPal', 'invoicing'); |
|
436 | 436 | break; |
437 | 437 | |
438 | 438 | case 'intl' : |
439 | - $note = __( 'Payment must be accepted manually through PayPal due to international account regulations', 'invoicing' ); |
|
439 | + $note = __('Payment must be accepted manually through PayPal due to international account regulations', 'invoicing'); |
|
440 | 440 | break; |
441 | 441 | |
442 | 442 | case 'multi-currency' : |
443 | - $note = __( 'Payment received in non-shop currency and must be accepted manually through PayPal', 'invoicing' ); |
|
443 | + $note = __('Payment received in non-shop currency and must be accepted manually through PayPal', 'invoicing'); |
|
444 | 444 | break; |
445 | 445 | |
446 | 446 | case 'paymentreview' : |
447 | 447 | case 'regulatory_review' : |
448 | - $note = __( 'Payment is being reviewed by PayPal staff as high-risk or in possible violation of government regulations', 'invoicing' ); |
|
448 | + $note = __('Payment is being reviewed by PayPal staff as high-risk or in possible violation of government regulations', 'invoicing'); |
|
449 | 449 | break; |
450 | 450 | |
451 | 451 | case 'unilateral' : |
452 | - $note = __( 'Payment was sent to non-confirmed or non-registered email address.', 'invoicing' ); |
|
452 | + $note = __('Payment was sent to non-confirmed or non-registered email address.', 'invoicing'); |
|
453 | 453 | break; |
454 | 454 | |
455 | 455 | case 'upgrade' : |
456 | - $note = __( 'PayPal account must be upgraded before this payment can be accepted', 'invoicing' ); |
|
456 | + $note = __('PayPal account must be upgraded before this payment can be accepted', 'invoicing'); |
|
457 | 457 | break; |
458 | 458 | |
459 | 459 | case 'verify' : |
460 | - $note = __( 'PayPal account is not verified. Verify account in order to accept this payment', 'invoicing' ); |
|
460 | + $note = __('PayPal account is not verified. Verify account in order to accept this payment', 'invoicing'); |
|
461 | 461 | break; |
462 | 462 | |
463 | 463 | case 'other' : |
464 | - $note = __( 'Payment is pending for unknown reasons. Contact PayPal support for assistance', 'invoicing' ); |
|
464 | + $note = __('Payment is pending for unknown reasons. Contact PayPal support for assistance', 'invoicing'); |
|
465 | 465 | break; |
466 | 466 | } |
467 | 467 | |
468 | - if ( ! empty( $note ) ) { |
|
469 | - wpinv_insert_payment_note( $invoice_id, $note ); |
|
468 | + if (!empty($note)) { |
|
469 | + wpinv_insert_payment_note($invoice_id, $note); |
|
470 | 470 | } |
471 | 471 | } else { |
472 | - wpinv_insert_payment_note( $invoice_id, wp_sprintf( __( 'PayPal IPN has been received with invalid payment status: %s', 'invoicing' ), $payment_status ) ); |
|
472 | + wpinv_insert_payment_note($invoice_id, wp_sprintf(__('PayPal IPN has been received with invalid payment status: %s', 'invoicing'), $payment_status)); |
|
473 | 473 | } |
474 | 474 | } |
475 | 475 | } |
476 | -add_action( 'wpinv_paypal_web_accept', 'wpinv_process_paypal_web_accept_and_cart', 10, 2 ); |
|
476 | +add_action('wpinv_paypal_web_accept', 'wpinv_process_paypal_web_accept_and_cart', 10, 2); |
|
477 | 477 | |
478 | 478 | // Process PayPal subscription sign ups |
479 | -add_action( 'wpinv_paypal_subscr_signup', 'wpinv_process_paypal_subscr_signup' ); |
|
479 | +add_action('wpinv_paypal_subscr_signup', 'wpinv_process_paypal_subscr_signup'); |
|
480 | 480 | |
481 | 481 | // Process PayPal subscription payments |
482 | -add_action( 'wpinv_paypal_subscr_payment', 'wpinv_process_paypal_subscr_payment' ); |
|
482 | +add_action('wpinv_paypal_subscr_payment', 'wpinv_process_paypal_subscr_payment'); |
|
483 | 483 | |
484 | 484 | // Process PayPal subscription cancellations |
485 | -add_action( 'wpinv_paypal_subscr_cancel', 'wpinv_process_paypal_subscr_cancel' ); |
|
485 | +add_action('wpinv_paypal_subscr_cancel', 'wpinv_process_paypal_subscr_cancel'); |
|
486 | 486 | |
487 | 487 | // Process PayPal subscription end of term notices |
488 | -add_action( 'wpinv_paypal_subscr_eot', 'wpinv_process_paypal_subscr_eot' ); |
|
488 | +add_action('wpinv_paypal_subscr_eot', 'wpinv_process_paypal_subscr_eot'); |
|
489 | 489 | |
490 | 490 | // Process PayPal payment failed |
491 | -add_action( 'wpinv_paypal_subscr_failed', 'wpinv_process_paypal_subscr_failed' ); |
|
491 | +add_action('wpinv_paypal_subscr_failed', 'wpinv_process_paypal_subscr_failed'); |
|
492 | 492 | |
493 | 493 | |
494 | 494 | /** |
495 | 495 | * Process the subscription started IPN. |
496 | 496 | */ |
497 | -function wpinv_process_paypal_subscr_signup( $ipn_data ) { |
|
498 | - $parent_invoice_id = absint( $ipn_data['custom'] ); |
|
499 | - if( empty( $parent_invoice_id ) ) { |
|
497 | +function wpinv_process_paypal_subscr_signup($ipn_data) { |
|
498 | + $parent_invoice_id = absint($ipn_data['custom']); |
|
499 | + if (empty($parent_invoice_id)) { |
|
500 | 500 | return; |
501 | 501 | } |
502 | 502 | |
503 | - $invoice = wpinv_get_invoice( $parent_invoice_id ); |
|
504 | - if ( empty( $invoice ) ) { |
|
503 | + $invoice = wpinv_get_invoice($parent_invoice_id); |
|
504 | + if (empty($invoice)) { |
|
505 | 505 | return; |
506 | 506 | } |
507 | 507 | |
508 | - if ( $invoice->is_free_trial() && !empty( $ipn_data['invoice'] ) ) { |
|
509 | - wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Invoice ID: %s', 'invoicing' ) , $ipn_data['invoice'] ) ); |
|
510 | - wpinv_set_payment_transaction_id( $parent_invoice_id, $ipn_data['invoice'] ); |
|
508 | + if ($invoice->is_free_trial() && !empty($ipn_data['invoice'])) { |
|
509 | + wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Invoice ID: %s', 'invoicing'), $ipn_data['invoice'])); |
|
510 | + wpinv_set_payment_transaction_id($parent_invoice_id, $ipn_data['invoice']); |
|
511 | 511 | } |
512 | 512 | |
513 | - wpinv_update_payment_status( $parent_invoice_id, 'publish' ); |
|
513 | + wpinv_update_payment_status($parent_invoice_id, 'publish'); |
|
514 | 514 | sleep(1); |
515 | - wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Subscription ID: %s', 'invoicing' ) , $ipn_data['subscr_id'] ) ); |
|
515 | + wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Subscription ID: %s', 'invoicing'), $ipn_data['subscr_id'])); |
|
516 | 516 | |
517 | - $subscription = wpinv_get_paypal_subscription( $ipn_data ); |
|
518 | - if ( false === $subscription ) { |
|
517 | + $subscription = wpinv_get_paypal_subscription($ipn_data); |
|
518 | + if (false === $subscription) { |
|
519 | 519 | return; |
520 | 520 | } |
521 | 521 | |
522 | - $cart_details = $invoice->cart_details; |
|
522 | + $cart_details = $invoice->cart_details; |
|
523 | 523 | |
524 | - if ( !empty( $cart_details ) ) { |
|
525 | - foreach ( $cart_details as $cart_item ) { |
|
526 | - $item = new WPInv_Item( $cart_item['id'] ); |
|
524 | + if (!empty($cart_details)) { |
|
525 | + foreach ($cart_details as $cart_item) { |
|
526 | + $item = new WPInv_Item($cart_item['id']); |
|
527 | 527 | |
528 | 528 | $status = $invoice->is_free_trial() && $item->has_free_trial() ? 'trialing' : 'active'; |
529 | 529 | |
@@ -532,15 +532,15 @@ discard block |
||
532 | 532 | 'status' => $status, |
533 | 533 | 'period' => $item->get_recurring_period(), |
534 | 534 | 'initial_amount' => $invoice->get_total(), |
535 | - 'recurring_amount' => $invoice->get_recurring_details( 'total' ), |
|
535 | + 'recurring_amount' => $invoice->get_recurring_details('total'), |
|
536 | 536 | 'interval' => $item->get_recurring_interval(), |
537 | 537 | 'bill_times' => $item->get_recurring_limit(), |
538 | - 'expiration' => $invoice->get_new_expiration( $cart_item['id'] ), |
|
538 | + 'expiration' => $invoice->get_new_expiration($cart_item['id']), |
|
539 | 539 | 'profile_id' => $ipn_data['subscr_id'], |
540 | - 'created' => date_i18n( 'Y-m-d H:i:s', strtotime( $ipn_data['subscr_date'] ) ) |
|
540 | + 'created' => date_i18n('Y-m-d H:i:s', strtotime($ipn_data['subscr_date'])) |
|
541 | 541 | ); |
542 | 542 | |
543 | - if ( $item->has_free_trial() ) { |
|
543 | + if ($item->has_free_trial()) { |
|
544 | 544 | $args['trial_period'] = $item->get_trial_period(); |
545 | 545 | $args['trial_interval'] = $item->get_trial_interval(); |
546 | 546 | } else { |
@@ -549,7 +549,7 @@ discard block |
||
549 | 549 | } |
550 | 550 | |
551 | 551 | |
552 | - $subscription->update_subscription( $args ); |
|
552 | + $subscription->update_subscription($args); |
|
553 | 553 | } |
554 | 554 | } |
555 | 555 | } |
@@ -557,39 +557,39 @@ discard block |
||
557 | 557 | /** |
558 | 558 | * Process the subscription payment received IPN. |
559 | 559 | */ |
560 | -function wpinv_process_paypal_subscr_payment( $ipn_data ) { |
|
561 | - $parent_invoice_id = absint( $ipn_data['custom'] ); |
|
560 | +function wpinv_process_paypal_subscr_payment($ipn_data) { |
|
561 | + $parent_invoice_id = absint($ipn_data['custom']); |
|
562 | 562 | |
563 | - $subscription = wpinv_get_paypal_subscription( $ipn_data ); |
|
564 | - if ( false === $subscription ) { |
|
563 | + $subscription = wpinv_get_paypal_subscription($ipn_data); |
|
564 | + if (false === $subscription) { |
|
565 | 565 | return; |
566 | 566 | } |
567 | 567 | |
568 | - $transaction_id = wpinv_get_payment_transaction_id( $parent_invoice_id ); |
|
569 | - $signup_date = strtotime( $subscription->get_subscription_created() ); |
|
570 | - $today = date_i18n( 'Y-m-d', $signup_date ) == date_i18n( 'Y-m-d', strtotime( $ipn_data['payment_date'] ) ); |
|
568 | + $transaction_id = wpinv_get_payment_transaction_id($parent_invoice_id); |
|
569 | + $signup_date = strtotime($subscription->get_subscription_created()); |
|
570 | + $today = date_i18n('Y-m-d', $signup_date) == date_i18n('Y-m-d', strtotime($ipn_data['payment_date'])); |
|
571 | 571 | |
572 | 572 | // Look to see if payment is same day as signup and we have set the transaction ID on the parent payment yet. |
573 | - if ( $today && ( !$transaction_id || $transaction_id == $parent_invoice_id ) ) { |
|
574 | - wpinv_update_payment_status( $parent_invoice_id, 'publish' ); |
|
573 | + if ($today && (!$transaction_id || $transaction_id == $parent_invoice_id)) { |
|
574 | + wpinv_update_payment_status($parent_invoice_id, 'publish'); |
|
575 | 575 | sleep(1); |
576 | 576 | |
577 | 577 | // This is the very first payment |
578 | - wpinv_set_payment_transaction_id( $parent_invoice_id, $ipn_data['txn_id'] ); |
|
579 | - wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $ipn_data['txn_id'] ) ); |
|
578 | + wpinv_set_payment_transaction_id($parent_invoice_id, $ipn_data['txn_id']); |
|
579 | + wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $ipn_data['txn_id'])); |
|
580 | 580 | return; |
581 | 581 | } |
582 | 582 | |
583 | - if ( wpinv_get_id_by_transaction_id( $ipn_data['txn_id'] ) ) { |
|
583 | + if (wpinv_get_id_by_transaction_id($ipn_data['txn_id'])) { |
|
584 | 584 | return; // Payment already recorded |
585 | 585 | } |
586 | 586 | |
587 | - $currency_code = strtolower( $ipn_data['mc_currency'] ); |
|
587 | + $currency_code = strtolower($ipn_data['mc_currency']); |
|
588 | 588 | |
589 | 589 | // verify details |
590 | - if ( $currency_code != strtolower( wpinv_get_currency() ) ) { |
|
590 | + if ($currency_code != strtolower(wpinv_get_currency())) { |
|
591 | 591 | // the currency code is invalid |
592 | - wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid currency in IPN response. IPN data: ', 'invoicing' ), json_encode( $ipn_data ) ) ); |
|
592 | + wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid currency in IPN response. IPN data: ', 'invoicing'), json_encode($ipn_data))); |
|
593 | 593 | return; |
594 | 594 | } |
595 | 595 | |
@@ -598,11 +598,11 @@ discard block |
||
598 | 598 | 'transaction_id' => $ipn_data['txn_id'] |
599 | 599 | ); |
600 | 600 | |
601 | - $invoice = wpinv_recurring_add_subscription_payment( $parent_invoice_id, $args ); |
|
601 | + $invoice = wpinv_recurring_add_subscription_payment($parent_invoice_id, $args); |
|
602 | 602 | |
603 | - if ( !empty( $invoice ) ) { |
|
603 | + if (!empty($invoice)) { |
|
604 | 604 | sleep(1); |
605 | - wpinv_insert_payment_note( $invoice->ID, sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $ipn_data['txn_id'] ) ); |
|
605 | + wpinv_insert_payment_note($invoice->ID, sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $ipn_data['txn_id'])); |
|
606 | 606 | |
607 | 607 | $invoice->renew_subscription(); |
608 | 608 | } |
@@ -611,10 +611,10 @@ discard block |
||
611 | 611 | /** |
612 | 612 | * Process the subscription canceled IPN. |
613 | 613 | */ |
614 | -function wpinv_process_paypal_subscr_cancel( $ipn_data ) { |
|
615 | - $subscription = wpinv_get_paypal_subscription( $ipn_data ); |
|
614 | +function wpinv_process_paypal_subscr_cancel($ipn_data) { |
|
615 | + $subscription = wpinv_get_paypal_subscription($ipn_data); |
|
616 | 616 | |
617 | - if( false === $subscription ) { |
|
617 | + if (false === $subscription) { |
|
618 | 618 | return; |
619 | 619 | } |
620 | 620 | |
@@ -624,10 +624,10 @@ discard block |
||
624 | 624 | /** |
625 | 625 | * Process the subscription expired IPN. |
626 | 626 | */ |
627 | -function wpinv_process_paypal_subscr_eot( $ipn_data ) { |
|
628 | - $subscription = wpinv_get_paypal_subscription( $ipn_data ); |
|
627 | +function wpinv_process_paypal_subscr_eot($ipn_data) { |
|
628 | + $subscription = wpinv_get_paypal_subscription($ipn_data); |
|
629 | 629 | |
630 | - if( false === $subscription ) { |
|
630 | + if (false === $subscription) { |
|
631 | 631 | return; |
632 | 632 | } |
633 | 633 | |
@@ -637,45 +637,45 @@ discard block |
||
637 | 637 | /** |
638 | 638 | * Process the subscription payment failed IPN. |
639 | 639 | */ |
640 | -function wpinv_process_paypal_subscr_failed( $ipn_data ) { |
|
641 | - $subscription = wpinv_get_paypal_subscription( $ipn_data ); |
|
640 | +function wpinv_process_paypal_subscr_failed($ipn_data) { |
|
641 | + $subscription = wpinv_get_paypal_subscription($ipn_data); |
|
642 | 642 | |
643 | - if( false === $subscription ) { |
|
643 | + if (false === $subscription) { |
|
644 | 644 | return; |
645 | 645 | } |
646 | 646 | |
647 | 647 | $subscription->failing_subscription(); |
648 | 648 | |
649 | - do_action( 'wpinv_recurring_payment_failed', $subscription ); |
|
649 | + do_action('wpinv_recurring_payment_failed', $subscription); |
|
650 | 650 | } |
651 | 651 | |
652 | 652 | /** |
653 | 653 | * Retrieve the subscription this IPN notice is for. |
654 | 654 | */ |
655 | -function wpinv_get_paypal_subscription( $ipn_data = array() ) { |
|
656 | - $parent_invoice_id = absint( $ipn_data['custom'] ); |
|
655 | +function wpinv_get_paypal_subscription($ipn_data = array()) { |
|
656 | + $parent_invoice_id = absint($ipn_data['custom']); |
|
657 | 657 | |
658 | - if( empty( $parent_invoice_id ) ) { |
|
658 | + if (empty($parent_invoice_id)) { |
|
659 | 659 | return false; |
660 | 660 | } |
661 | 661 | |
662 | - $invoice = wpinv_get_invoice( $parent_invoice_id ); |
|
663 | - if ( empty( $invoice ) ) { |
|
662 | + $invoice = wpinv_get_invoice($parent_invoice_id); |
|
663 | + if (empty($invoice)) { |
|
664 | 664 | return false; |
665 | 665 | } |
666 | 666 | |
667 | - $subscription = wpinv_get_subscription( $ipn_data['subscr_id'], true ); |
|
667 | + $subscription = wpinv_get_subscription($ipn_data['subscr_id'], true); |
|
668 | 668 | |
669 | - if ( empty( $subscription ) ) { |
|
670 | - $subs = wpinv_get_subscriptions( array( 'parent_invoice_id' => $parent_invoice_id, 'numberposts' => 1 ) ); |
|
671 | - $subscription = reset( $subs ); |
|
669 | + if (empty($subscription)) { |
|
670 | + $subs = wpinv_get_subscriptions(array('parent_invoice_id' => $parent_invoice_id, 'numberposts' => 1)); |
|
671 | + $subscription = reset($subs); |
|
672 | 672 | |
673 | - if ( $subscription && $subscription->ID > 0 ) { |
|
673 | + if ($subscription && $subscription->ID > 0) { |
|
674 | 674 | // Update the profile ID so it is set for future renewals |
675 | - $subscription->update_subscription( array( 'profile_id' => sanitize_text_field( $ipn_data['subscr_id'] ) ) ); |
|
675 | + $subscription->update_subscription(array('profile_id' => sanitize_text_field($ipn_data['subscr_id']))); |
|
676 | 676 | } else { |
677 | 677 | $subscription = $invoice; |
678 | - $subscription->update_subscription( array( 'profile_id' => sanitize_text_field( $ipn_data['subscr_id'] ) ) ); |
|
678 | + $subscription->update_subscription(array('profile_id' => sanitize_text_field($ipn_data['subscr_id']))); |
|
679 | 679 | // No subscription found with a matching payment ID, bail |
680 | 680 | //return false; |
681 | 681 | } |
@@ -685,39 +685,39 @@ discard block |
||
685 | 685 | |
686 | 686 | } |
687 | 687 | |
688 | -function wpinv_process_paypal_refund( $data, $invoice_id = 0 ) { |
|
688 | +function wpinv_process_paypal_refund($data, $invoice_id = 0) { |
|
689 | 689 | // Collect payment details |
690 | 690 | |
691 | - if( empty( $invoice_id ) ) { |
|
691 | + if (empty($invoice_id)) { |
|
692 | 692 | return; |
693 | 693 | } |
694 | 694 | |
695 | - if ( get_post_status( $invoice_id ) == 'wpi-refunded' ) { |
|
695 | + if (get_post_status($invoice_id) == 'wpi-refunded') { |
|
696 | 696 | return; // Only refund payments once |
697 | 697 | } |
698 | 698 | |
699 | - $payment_amount = wpinv_payment_total( $invoice_id ); |
|
699 | + $payment_amount = wpinv_payment_total($invoice_id); |
|
700 | 700 | $refund_amount = $data['mc_gross'] * -1; |
701 | 701 | |
702 | - if ( number_format( (float) $refund_amount, 2 ) < number_format( (float) $payment_amount, 2 ) ) { |
|
703 | - wpinv_insert_payment_note( $invoice_id, sprintf( __( 'Partial PayPal refund processed: %s', 'invoicing' ), $data['parent_txn_id'] ) ); |
|
702 | + if (number_format((float)$refund_amount, 2) < number_format((float)$payment_amount, 2)) { |
|
703 | + wpinv_insert_payment_note($invoice_id, sprintf(__('Partial PayPal refund processed: %s', 'invoicing'), $data['parent_txn_id'])); |
|
704 | 704 | return; // This is a partial refund |
705 | 705 | } |
706 | 706 | |
707 | - wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Payment #%s Refunded for reason: %s', 'invoicing' ), $data['parent_txn_id'], $data['reason_code'] ) ); |
|
708 | - wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Refund Transaction ID: %s', 'invoicing' ), $data['txn_id'] ) ); |
|
709 | - wpinv_update_payment_status( $invoice_id, 'wpi-refunded' ); |
|
707 | + wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Payment #%s Refunded for reason: %s', 'invoicing'), $data['parent_txn_id'], $data['reason_code'])); |
|
708 | + wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Refund Transaction ID: %s', 'invoicing'), $data['txn_id'])); |
|
709 | + wpinv_update_payment_status($invoice_id, 'wpi-refunded'); |
|
710 | 710 | } |
711 | 711 | |
712 | -function wpinv_get_paypal_redirect( $ssl_check = false ) { |
|
713 | - if ( is_ssl() || ! $ssl_check ) { |
|
712 | +function wpinv_get_paypal_redirect($ssl_check = false) { |
|
713 | + if (is_ssl() || !$ssl_check) { |
|
714 | 714 | $protocol = 'https://'; |
715 | 715 | } else { |
716 | 716 | $protocol = 'http://'; |
717 | 717 | } |
718 | 718 | |
719 | 719 | // Check the current payment mode |
720 | - if ( wpinv_is_test_mode( 'paypal' ) ) { |
|
720 | + if (wpinv_is_test_mode('paypal')) { |
|
721 | 721 | // Test mode |
722 | 722 | $paypal_uri = $protocol . 'www.sandbox.paypal.com/cgi-bin/webscr'; |
723 | 723 | } else { |
@@ -725,67 +725,67 @@ discard block |
||
725 | 725 | $paypal_uri = $protocol . 'www.paypal.com/cgi-bin/webscr'; |
726 | 726 | } |
727 | 727 | |
728 | - return apply_filters( 'wpinv_paypal_uri', $paypal_uri ); |
|
728 | + return apply_filters('wpinv_paypal_uri', $paypal_uri); |
|
729 | 729 | } |
730 | 730 | |
731 | -function wpinv_paypal_success_page_content( $content ) { |
|
731 | +function wpinv_paypal_success_page_content($content) { |
|
732 | 732 | global $wpi_invoice; |
733 | 733 | |
734 | 734 | $session = wpinv_get_checkout_session(); |
735 | 735 | |
736 | - if ( empty( $_GET['invoice-id'] ) && empty( $session['invoice_key'] ) ) { |
|
736 | + if (empty($_GET['invoice-id']) && empty($session['invoice_key'])) { |
|
737 | 737 | return $content; |
738 | 738 | } |
739 | 739 | |
740 | - $invoice_id = !empty( $_GET['invoice-id'] ) ? absint( $_GET['invoice-id'] ) : wpinv_get_invoice_id_by_key( $session['invoice_key'] ); |
|
740 | + $invoice_id = !empty($_GET['invoice-id']) ? absint($_GET['invoice-id']) : wpinv_get_invoice_id_by_key($session['invoice_key']); |
|
741 | 741 | |
742 | - if ( empty( $invoice_id ) ) { |
|
742 | + if (empty($invoice_id)) { |
|
743 | 743 | return $content; |
744 | 744 | } |
745 | 745 | |
746 | - $wpi_invoice = wpinv_get_invoice( $invoice_id ); |
|
746 | + $wpi_invoice = wpinv_get_invoice($invoice_id); |
|
747 | 747 | |
748 | - if ( !empty( $wpi_invoice ) && 'pending' == $wpi_invoice->status ) { |
|
748 | + if (!empty($wpi_invoice) && 'pending' == $wpi_invoice->status) { |
|
749 | 749 | // Payment is still pending so show processing indicator to fix the Race Condition, issue # |
750 | 750 | ob_start(); |
751 | - wpinv_get_template_part( 'wpinv-payment-processing' ); |
|
751 | + wpinv_get_template_part('wpinv-payment-processing'); |
|
752 | 752 | $content = ob_get_clean(); |
753 | 753 | } |
754 | 754 | |
755 | 755 | return $content; |
756 | 756 | } |
757 | -add_filter( 'wpinv_payment_confirm_paypal', 'wpinv_paypal_success_page_content' ); |
|
757 | +add_filter('wpinv_payment_confirm_paypal', 'wpinv_paypal_success_page_content'); |
|
758 | 758 | |
759 | -function wpinv_paypal_get_transaction_id( $invoice_id ) { |
|
759 | +function wpinv_paypal_get_transaction_id($invoice_id) { |
|
760 | 760 | $transaction_id = ''; |
761 | - $notes = wpinv_get_invoice_notes( $invoice_id ); |
|
761 | + $notes = wpinv_get_invoice_notes($invoice_id); |
|
762 | 762 | |
763 | - foreach ( $notes as $note ) { |
|
764 | - if ( preg_match( '/^PayPal Transaction ID: ([^\s]+)/', $note->comment_content, $match ) ) { |
|
763 | + foreach ($notes as $note) { |
|
764 | + if (preg_match('/^PayPal Transaction ID: ([^\s]+)/', $note->comment_content, $match)) { |
|
765 | 765 | $transaction_id = $match[1]; |
766 | 766 | continue; |
767 | 767 | } |
768 | 768 | } |
769 | 769 | |
770 | - return apply_filters( 'wpinv_paypal_set_transaction_id', $transaction_id, $invoice_id ); |
|
770 | + return apply_filters('wpinv_paypal_set_transaction_id', $transaction_id, $invoice_id); |
|
771 | 771 | } |
772 | -add_filter( 'wpinv_payment_get_transaction_id-paypal', 'wpinv_paypal_get_transaction_id', 10, 1 ); |
|
772 | +add_filter('wpinv_payment_get_transaction_id-paypal', 'wpinv_paypal_get_transaction_id', 10, 1); |
|
773 | 773 | |
774 | -function wpinv_paypal_link_transaction_id( $transaction_id, $invoice_id, $invoice ) { |
|
775 | - if ( $invoice->is_free_trial() || $transaction_id == $invoice_id ) { // Free trial does not have transaction at PayPal. |
|
774 | +function wpinv_paypal_link_transaction_id($transaction_id, $invoice_id, $invoice) { |
|
775 | + if ($invoice->is_free_trial() || $transaction_id == $invoice_id) { // Free trial does not have transaction at PayPal. |
|
776 | 776 | $transaction_url = $invoice->get_view_url(); |
777 | 777 | } else { |
778 | - $sandbox = wpinv_is_test_mode( 'paypal' ) ? '.sandbox' : ''; |
|
778 | + $sandbox = wpinv_is_test_mode('paypal') ? '.sandbox' : ''; |
|
779 | 779 | $transaction_url = 'https://www' . $sandbox . '.paypal.com/cgi-bin/webscr?cmd=_view-a-trans&id=' . $transaction_id; |
780 | 780 | } |
781 | 781 | |
782 | - $transaction_link = '<a href="' . esc_url( $transaction_url ) . '" target="_blank">' . $transaction_id . '</a>'; |
|
782 | + $transaction_link = '<a href="' . esc_url($transaction_url) . '" target="_blank">' . $transaction_id . '</a>'; |
|
783 | 783 | |
784 | - return apply_filters( 'wpinv_paypal_link_payment_details_transaction_id', $transaction_link, $invoice ); |
|
784 | + return apply_filters('wpinv_paypal_link_payment_details_transaction_id', $transaction_link, $invoice); |
|
785 | 785 | } |
786 | -add_filter( 'wpinv_payment_details_transaction_id-paypal', 'wpinv_paypal_link_transaction_id', 10, 3 ); |
|
786 | +add_filter('wpinv_payment_details_transaction_id-paypal', 'wpinv_paypal_link_transaction_id', 10, 3); |
|
787 | 787 | |
788 | 788 | function wpinv_gateway_paypal_button_label($label) { |
789 | - return __( 'Proceed to PayPal', 'invoicing' ); |
|
789 | + return __('Proceed to PayPal', 'invoicing'); |
|
790 | 790 | } |
791 | -add_filter( 'wpinv_gateway_paypal_button_label', 'wpinv_gateway_paypal_button_label', 10, 1 ); |
|
792 | 791 | \ No newline at end of file |
792 | +add_filter('wpinv_gateway_paypal_button_label', 'wpinv_gateway_paypal_button_label', 10, 1); |
|
793 | 793 | \ No newline at end of file |
@@ -1,60 +1,60 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // Exit if accessed directly |
3 | -if ( ! defined( 'ABSPATH' ) ) exit; |
|
3 | +if (!defined('ABSPATH')) exit; |
|
4 | 4 | |
5 | -add_filter( 'wpinv_authorizenet_support_subscription', '__return_true' ); |
|
5 | +add_filter('wpinv_authorizenet_support_subscription', '__return_true'); |
|
6 | 6 | |
7 | -function wpinv_authorizenet_cc_form( $invoice_id ) { |
|
8 | - $invoice = wpinv_get_invoice( $invoice_id ); |
|
9 | - $cc_owner = !empty( $invoice ) ? esc_attr( $invoice->get_user_full_name() ) : ''; |
|
7 | +function wpinv_authorizenet_cc_form($invoice_id) { |
|
8 | + $invoice = wpinv_get_invoice($invoice_id); |
|
9 | + $cc_owner = !empty($invoice) ? esc_attr($invoice->get_user_full_name()) : ''; |
|
10 | 10 | ?> |
11 | 11 | <div id="authorizenet_cc_form" class="form-horizontal wpi-cc-form panel panel-default"> |
12 | - <div class="panel-heading"><h3 class="panel-title"><?php _e( 'Card Details', 'invoicing' ) ;?></h3></div> |
|
12 | + <div class="panel-heading"><h3 class="panel-title"><?php _e('Card Details', 'invoicing'); ?></h3></div> |
|
13 | 13 | <div class="panel-body"> |
14 | 14 | <div class="form-group required"> |
15 | - <label for="auth-input-cc-owner" class="col-sm-4 control-label"><?php _e( 'Card Owner', 'invoicing' ) ;?></label> |
|
15 | + <label for="auth-input-cc-owner" class="col-sm-4 control-label"><?php _e('Card Owner', 'invoicing'); ?></label> |
|
16 | 16 | <div class="col-sm-8"> |
17 | - <input type="text" class="form-control" id="auth-input-cc-owner" placeholder="<?php esc_attr_e( 'Card Owner', 'invoicing' ) ;?>" value="<?php echo $cc_owner;?>" name="authorizenet[cc_owner]"> |
|
17 | + <input type="text" class="form-control" id="auth-input-cc-owner" placeholder="<?php esc_attr_e('Card Owner', 'invoicing'); ?>" value="<?php echo $cc_owner; ?>" name="authorizenet[cc_owner]"> |
|
18 | 18 | </div> |
19 | 19 | </div> |
20 | 20 | <div class="form-group required"> |
21 | - <label for="auth-input-cc-number" class="col-sm-4 control-label"><?php _e( 'Card Number', 'invoicing' ) ;?></label> |
|
21 | + <label for="auth-input-cc-number" class="col-sm-4 control-label"><?php _e('Card Number', 'invoicing'); ?></label> |
|
22 | 22 | <div class="col-sm-8"> |
23 | - <input type="text" class="form-control" id="auth-input-cc-number" placeholder="<?php esc_attr_e( 'Card Number', 'invoicing' ) ;?>" value="" name="authorizenet[cc_number]"> |
|
23 | + <input type="text" class="form-control" id="auth-input-cc-number" placeholder="<?php esc_attr_e('Card Number', 'invoicing'); ?>" value="" name="authorizenet[cc_number]"> |
|
24 | 24 | </div> |
25 | 25 | </div> |
26 | 26 | <div class="form-group required"> |
27 | - <label for="auth-input-cc-expire-date" class="col-sm-4 control-label"><?php _e( 'Card Expiry Date', 'invoicing' ) ;?></label> |
|
27 | + <label for="auth-input-cc-expire-date" class="col-sm-4 control-label"><?php _e('Card Expiry Date', 'invoicing'); ?></label> |
|
28 | 28 | <div class="col-sm-2"> |
29 | 29 | <select class="form-control" id="auth-input-cc-expire-date" name="authorizenet[cc_expire_month]"> |
30 | - <?php for ( $i = 1; $i <= 12; $i++ ) { $value = str_pad( $i, 2, '0', STR_PAD_LEFT ); ?> |
|
31 | - <option value="<?php echo $value;?>"><?php echo $value;?></option> |
|
30 | + <?php for ($i = 1; $i <= 12; $i++) { $value = str_pad($i, 2, '0', STR_PAD_LEFT); ?> |
|
31 | + <option value="<?php echo $value; ?>"><?php echo $value; ?></option> |
|
32 | 32 | <?php } ?> |
33 | 33 | </select> |
34 | 34 | </div> |
35 | 35 | <div class="col-sm-2"> |
36 | 36 | <select class="form-control" name="authorizenet[cc_expire_year]"> |
37 | - <?php $year = date( 'Y' ); for ( $i = $year; $i <= ( $year + 10 ); $i++ ) { ?> |
|
38 | - <option value="<?php echo $i;?>"><?php echo $i;?></option> |
|
37 | + <?php $year = date('Y'); for ($i = $year; $i <= ($year + 10); $i++) { ?> |
|
38 | + <option value="<?php echo $i; ?>"><?php echo $i; ?></option> |
|
39 | 39 | <?php } ?> |
40 | 40 | </select> |
41 | 41 | </div> |
42 | 42 | </div> |
43 | 43 | <div class="form-group required"> |
44 | - <label for="auth-input-cc-cvv2" class="col-sm-4 control-label"><?php _e( 'Card Security Code (CVV2)', 'invoicing' ) ;?></label> |
|
44 | + <label for="auth-input-cc-cvv2" class="col-sm-4 control-label"><?php _e('Card Security Code (CVV2)', 'invoicing'); ?></label> |
|
45 | 45 | <div class="col-sm-8"> |
46 | - <input type="text" class="form-control" id="auth-input-cc-cvv2" placeholder="<?php esc_attr_e( 'Card Security Code (CVV2)', 'invoicing' ) ;?>" value="" name="authorizenet[cc_cvv2]""> |
|
46 | + <input type="text" class="form-control" id="auth-input-cc-cvv2" placeholder="<?php esc_attr_e('Card Security Code (CVV2)', 'invoicing'); ?>" value="" name="authorizenet[cc_cvv2]""> |
|
47 | 47 | </div> |
48 | 48 | </div> |
49 | 49 | </div> |
50 | 50 | </div> |
51 | 51 | <?php |
52 | 52 | } |
53 | -add_action( 'wpinv_authorizenet_cc_form', 'wpinv_authorizenet_cc_form', 10, 1 ); |
|
53 | +add_action('wpinv_authorizenet_cc_form', 'wpinv_authorizenet_cc_form', 10, 1); |
|
54 | 54 | |
55 | -function wpinv_process_authorizenet_payment( $purchase_data ) { |
|
56 | - if( ! wp_verify_nonce( $purchase_data['gateway_nonce'], 'wpi-gateway' ) ) { |
|
57 | - wp_die( __( 'Nonce verification has failed', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) ); |
|
55 | +function wpinv_process_authorizenet_payment($purchase_data) { |
|
56 | + if (!wp_verify_nonce($purchase_data['gateway_nonce'], 'wpi-gateway')) { |
|
57 | + wp_die(__('Nonce verification has failed', 'invoicing'), __('Error', 'invoicing'), array('response' => 403)); |
|
58 | 58 | } |
59 | 59 | |
60 | 60 | // Collect payment data |
@@ -72,10 +72,10 @@ discard block |
||
72 | 72 | ); |
73 | 73 | |
74 | 74 | // Record the pending payment |
75 | - $invoice = wpinv_get_invoice( $purchase_data['invoice_id'] ); |
|
75 | + $invoice = wpinv_get_invoice($purchase_data['invoice_id']); |
|
76 | 76 | |
77 | - if ( !empty( $invoice ) ) { |
|
78 | - $authorizenet_card = !empty( $_POST['authorizenet'] ) ? $_POST['authorizenet'] : array(); |
|
77 | + if (!empty($invoice)) { |
|
78 | + $authorizenet_card = !empty($_POST['authorizenet']) ? $_POST['authorizenet'] : array(); |
|
79 | 79 | $card_defaults = array( |
80 | 80 | 'cc_owner' => $invoice->get_user_full_name(), |
81 | 81 | 'cc_number' => false, |
@@ -83,174 +83,174 @@ discard block |
||
83 | 83 | 'cc_expire_year' => false, |
84 | 84 | 'cc_cvv2' => false, |
85 | 85 | ); |
86 | - $authorizenet_card = wp_parse_args( $authorizenet_card, $card_defaults ); |
|
86 | + $authorizenet_card = wp_parse_args($authorizenet_card, $card_defaults); |
|
87 | 87 | |
88 | - if ( empty( $authorizenet_card['cc_owner'] ) ) { |
|
89 | - wpinv_set_error( 'empty_card_name', __( 'You must enter the name on your card!', 'invoicing')); |
|
88 | + if (empty($authorizenet_card['cc_owner'])) { |
|
89 | + wpinv_set_error('empty_card_name', __('You must enter the name on your card!', 'invoicing')); |
|
90 | 90 | } |
91 | - if ( empty( $authorizenet_card['cc_number'] ) ) { |
|
92 | - wpinv_set_error( 'empty_card', __( 'You must enter a card number!', 'invoicing')); |
|
91 | + if (empty($authorizenet_card['cc_number'])) { |
|
92 | + wpinv_set_error('empty_card', __('You must enter a card number!', 'invoicing')); |
|
93 | 93 | } |
94 | - if ( empty( $authorizenet_card['cc_expire_month'] ) ) { |
|
95 | - wpinv_set_error( 'empty_month', __( 'You must enter an card expiration month!', 'invoicing')); |
|
94 | + if (empty($authorizenet_card['cc_expire_month'])) { |
|
95 | + wpinv_set_error('empty_month', __('You must enter an card expiration month!', 'invoicing')); |
|
96 | 96 | } |
97 | - if ( empty( $authorizenet_card['cc_expire_year'] ) ) { |
|
98 | - wpinv_set_error( 'empty_year', __( 'You must enter an card expiration year!', 'invoicing')); |
|
97 | + if (empty($authorizenet_card['cc_expire_year'])) { |
|
98 | + wpinv_set_error('empty_year', __('You must enter an card expiration year!', 'invoicing')); |
|
99 | 99 | } |
100 | - if ( empty( $authorizenet_card['cc_cvv2'] ) ) { |
|
101 | - wpinv_set_error( 'empty_cvv2', __( 'You must enter a valid CVV2!', 'invoicing' ) ); |
|
100 | + if (empty($authorizenet_card['cc_cvv2'])) { |
|
101 | + wpinv_set_error('empty_cvv2', __('You must enter a valid CVV2!', 'invoicing')); |
|
102 | 102 | } |
103 | 103 | |
104 | 104 | $errors = wpinv_get_errors(); |
105 | 105 | |
106 | - if ( empty( $errors ) ) { |
|
106 | + if (empty($errors)) { |
|
107 | 107 | $invoice_id = $invoice->ID; |
108 | 108 | $quantities_enabled = wpinv_item_quantities_enabled(); |
109 | 109 | $use_taxes = wpinv_use_taxes(); |
110 | 110 | |
111 | 111 | $authorizeAIM = wpinv_authorizenet_AIM(); |
112 | - $authorizeAIM->first_name = wpinv_utf8_substr( $invoice->get_first_name(), 0, 50 ); |
|
113 | - $authorizeAIM->last_name = wpinv_utf8_substr( $invoice->get_last_name(), 0, 50 ); |
|
114 | - $authorizeAIM->company = wpinv_utf8_substr( $invoice->company, 0, 50 ); |
|
115 | - $authorizeAIM->address = wpinv_utf8_substr( wp_strip_all_tags( $invoice->get_address(), true ), 0, 60 ); |
|
116 | - $authorizeAIM->city = wpinv_utf8_substr( $invoice->city, 0, 40 ); |
|
117 | - $authorizeAIM->state = wpinv_utf8_substr( $invoice->state, 0, 40 ); |
|
118 | - $authorizeAIM->zip = wpinv_utf8_substr( $invoice->zip, 0, 40 ); |
|
119 | - $authorizeAIM->country = wpinv_utf8_substr( $invoice->country, 0, 60 ); |
|
120 | - $authorizeAIM->phone = wpinv_utf8_substr( $invoice->phone, 0, 25 ); |
|
121 | - $authorizeAIM->email = wpinv_utf8_substr( $invoice->get_email(), 0, 255 ); |
|
122 | - $authorizeAIM->amount = wpinv_sanitize_amount( $invoice->get_total() ); |
|
123 | - $authorizeAIM->card_num = str_replace( ' ', '', sanitize_text_field( $authorizenet_card['cc_number'] ) ); |
|
124 | - $authorizeAIM->exp_date = sanitize_text_field( $authorizenet_card['cc_expire_month'] ) . sanitize_text_field( $authorizenet_card['cc_expire_year'] ); |
|
125 | - $authorizeAIM->card_code = sanitize_text_field( $authorizenet_card['cc_cvv2'] ); |
|
112 | + $authorizeAIM->first_name = wpinv_utf8_substr($invoice->get_first_name(), 0, 50); |
|
113 | + $authorizeAIM->last_name = wpinv_utf8_substr($invoice->get_last_name(), 0, 50); |
|
114 | + $authorizeAIM->company = wpinv_utf8_substr($invoice->company, 0, 50); |
|
115 | + $authorizeAIM->address = wpinv_utf8_substr(wp_strip_all_tags($invoice->get_address(), true), 0, 60); |
|
116 | + $authorizeAIM->city = wpinv_utf8_substr($invoice->city, 0, 40); |
|
117 | + $authorizeAIM->state = wpinv_utf8_substr($invoice->state, 0, 40); |
|
118 | + $authorizeAIM->zip = wpinv_utf8_substr($invoice->zip, 0, 40); |
|
119 | + $authorizeAIM->country = wpinv_utf8_substr($invoice->country, 0, 60); |
|
120 | + $authorizeAIM->phone = wpinv_utf8_substr($invoice->phone, 0, 25); |
|
121 | + $authorizeAIM->email = wpinv_utf8_substr($invoice->get_email(), 0, 255); |
|
122 | + $authorizeAIM->amount = wpinv_sanitize_amount($invoice->get_total()); |
|
123 | + $authorizeAIM->card_num = str_replace(' ', '', sanitize_text_field($authorizenet_card['cc_number'])); |
|
124 | + $authorizeAIM->exp_date = sanitize_text_field($authorizenet_card['cc_expire_month']) . sanitize_text_field($authorizenet_card['cc_expire_year']); |
|
125 | + $authorizeAIM->card_code = sanitize_text_field($authorizenet_card['cc_cvv2']); |
|
126 | 126 | $authorizeAIM->invoice_num = $invoice->ID; |
127 | 127 | |
128 | 128 | $item_desc = array(); |
129 | - foreach ( $invoice->get_cart_details() as $item ) { |
|
130 | - $quantity = $quantities_enabled && !empty( $item['quantity'] ) && $item['quantity'] > 0 ? $item['quantity'] : 1; |
|
131 | - $item_name = wpinv_utf8_substr( $item['name'], 0, 31 ); |
|
132 | - $item_desc[] = $item_name . ' (' . $quantity . 'x ' . wpinv_price( wpinv_format_amount( $item['item_price'] ) ) . ')'; |
|
129 | + foreach ($invoice->get_cart_details() as $item) { |
|
130 | + $quantity = $quantities_enabled && !empty($item['quantity']) && $item['quantity'] > 0 ? $item['quantity'] : 1; |
|
131 | + $item_name = wpinv_utf8_substr($item['name'], 0, 31); |
|
132 | + $item_desc[] = $item_name . ' (' . $quantity . 'x ' . wpinv_price(wpinv_format_amount($item['item_price'])) . ')'; |
|
133 | 133 | |
134 | - $authorizeAIM->addLineItem( $item['id'], $item_name, '', $quantity, $item['item_price'], ( $use_taxes && !empty( $item['tax'] ) && $item['tax'] > 0 ? 'Y' : 'N' ) ); |
|
134 | + $authorizeAIM->addLineItem($item['id'], $item_name, '', $quantity, $item['item_price'], ($use_taxes && !empty($item['tax']) && $item['tax'] > 0 ? 'Y' : 'N')); |
|
135 | 135 | } |
136 | 136 | |
137 | - $item_desc = '#' . $invoice->get_number() . ': ' . implode( ', ', $item_desc ); |
|
137 | + $item_desc = '#' . $invoice->get_number() . ': ' . implode(', ', $item_desc); |
|
138 | 138 | |
139 | - if ( $use_taxes && $invoice->get_tax() > 0 ) { |
|
140 | - $authorizeAIM->tax = $invoice->get_tax(); |
|
139 | + if ($use_taxes && $invoice->get_tax() > 0) { |
|
140 | + $authorizeAIM->tax = $invoice->get_tax(); |
|
141 | 141 | |
142 | - $item_desc .= ', ' . wp_sprintf( __( 'Tax: %s', 'invoicing' ), $invoice->get_tax( true ) ); |
|
142 | + $item_desc .= ', ' . wp_sprintf(__('Tax: %s', 'invoicing'), $invoice->get_tax(true)); |
|
143 | 143 | } |
144 | 144 | |
145 | - if ( $invoice->get_discount() > 0 ) { |
|
146 | - $item_desc .= ', ' . wp_sprintf( __( 'Discount: %s', 'invoicing' ), $invoice->get_discount( true ) ); |
|
145 | + if ($invoice->get_discount() > 0) { |
|
146 | + $item_desc .= ', ' . wp_sprintf(__('Discount: %s', 'invoicing'), $invoice->get_discount(true)); |
|
147 | 147 | } |
148 | 148 | |
149 | - $item_description = wpinv_utf8_substr( $item_desc, 0, 255 ); |
|
150 | - $item_description = html_entity_decode( $item_desc , ENT_QUOTES, 'UTF-8' ); |
|
149 | + $item_description = wpinv_utf8_substr($item_desc, 0, 255); |
|
150 | + $item_description = html_entity_decode($item_desc, ENT_QUOTES, 'UTF-8'); |
|
151 | 151 | |
152 | - $authorizeAIM->description = wpinv_utf8_substr( $item_description, 0, 255 ); |
|
152 | + $authorizeAIM->description = wpinv_utf8_substr($item_description, 0, 255); |
|
153 | 153 | |
154 | 154 | $is_recurring = $invoice->is_recurring(); // Recurring payment. |
155 | 155 | |
156 | - if ( $is_recurring ) { |
|
156 | + if ($is_recurring) { |
|
157 | 157 | $authorizeAIM->recurring_billing = true; |
158 | 158 | } |
159 | 159 | |
160 | 160 | try { |
161 | - if ( $is_recurring ) { |
|
161 | + if ($is_recurring) { |
|
162 | 162 | $response = $authorizeAIM->authorizeOnly(); |
163 | 163 | } else { |
164 | 164 | $response = $authorizeAIM->authorizeAndCapture(); |
165 | 165 | } |
166 | 166 | |
167 | - if ( $response->approved || $response->held ) { |
|
168 | - if ( $response->approved ) { |
|
169 | - wpinv_update_payment_status( $invoice_id, 'publish' ); |
|
167 | + if ($response->approved || $response->held) { |
|
168 | + if ($response->approved) { |
|
169 | + wpinv_update_payment_status($invoice_id, 'publish'); |
|
170 | 170 | } |
171 | - wpinv_set_payment_transaction_id( $invoice_id, $response->transaction_id ); |
|
171 | + wpinv_set_payment_transaction_id($invoice_id, $response->transaction_id); |
|
172 | 172 | |
173 | - $message = wp_sprintf( __( 'Authorize.Net Payment: %s with transaction id %s using %s and authorization code %s', 'invoicing' ), $response->response_reason_text, $response->transaction_id, strtoupper( $response->transaction_type ), $response->authorization_code ); |
|
173 | + $message = wp_sprintf(__('Authorize.Net Payment: %s with transaction id %s using %s and authorization code %s', 'invoicing'), $response->response_reason_text, $response->transaction_id, strtoupper($response->transaction_type), $response->authorization_code); |
|
174 | 174 | |
175 | - wpinv_insert_payment_note( $invoice_id, $message ); |
|
175 | + wpinv_insert_payment_note($invoice_id, $message); |
|
176 | 176 | |
177 | - do_action( 'wpinv_authorizenet_handle_response', $response, $invoice, $authorizenet_card ); |
|
177 | + do_action('wpinv_authorizenet_handle_response', $response, $invoice, $authorizenet_card); |
|
178 | 178 | |
179 | 179 | wpinv_clear_errors(); |
180 | 180 | wpinv_empty_cart(); |
181 | 181 | |
182 | - wpinv_send_to_success_page( array( 'invoice_key' => $invoice->get_key() ) ); |
|
182 | + wpinv_send_to_success_page(array('invoice_key' => $invoice->get_key())); |
|
183 | 183 | } else { |
184 | - if ( !empty( $response->response_reason_text ) ) { |
|
185 | - $error = __( $response->response_reason_text, 'invoicing' ); |
|
186 | - } else if ( !empty( $response->error_message ) ) { |
|
187 | - $error = __( $response->error_message, 'invoicing' ); |
|
184 | + if (!empty($response->response_reason_text)) { |
|
185 | + $error = __($response->response_reason_text, 'invoicing'); |
|
186 | + } else if (!empty($response->error_message)) { |
|
187 | + $error = __($response->error_message, 'invoicing'); |
|
188 | 188 | } else { |
189 | - $error = wp_sprintf( __( 'Error data: %s', 'invoicing' ), print_r( $response, true ) ); |
|
189 | + $error = wp_sprintf(__('Error data: %s', 'invoicing'), print_r($response, true)); |
|
190 | 190 | } |
191 | 191 | |
192 | - $error = wp_sprintf( __( 'Authorize.Net payment error occurred. %s', 'invoicing' ), $error ); |
|
192 | + $error = wp_sprintf(__('Authorize.Net payment error occurred. %s', 'invoicing'), $error); |
|
193 | 193 | |
194 | - wpinv_set_error( 'payment_error', $error ); |
|
195 | - wpinv_record_gateway_error( $error, $response ); |
|
196 | - wpinv_insert_payment_note( $invoice_id, $error ); |
|
194 | + wpinv_set_error('payment_error', $error); |
|
195 | + wpinv_record_gateway_error($error, $response); |
|
196 | + wpinv_insert_payment_note($invoice_id, $error); |
|
197 | 197 | |
198 | - wpinv_send_back_to_checkout( '?payment-mode=' . $purchase_data['post_data']['wpi-gateway'] ); |
|
198 | + wpinv_send_back_to_checkout('?payment-mode=' . $purchase_data['post_data']['wpi-gateway']); |
|
199 | 199 | } |
200 | - } catch ( AuthorizeNetException $e ) { |
|
201 | - wpinv_set_error( 'request_error', $e->getMessage() ); |
|
202 | - wpinv_record_gateway_error( wp_sprintf( __( 'Authorize.Net payment error occurred. %s', 'invoicing' ), $e->getMessage() ) ); |
|
203 | - wpinv_send_back_to_checkout( '?payment-mode=' . $purchase_data['post_data']['wpi-gateway'] ); |
|
200 | + } catch (AuthorizeNetException $e) { |
|
201 | + wpinv_set_error('request_error', $e->getMessage()); |
|
202 | + wpinv_record_gateway_error(wp_sprintf(__('Authorize.Net payment error occurred. %s', 'invoicing'), $e->getMessage())); |
|
203 | + wpinv_send_back_to_checkout('?payment-mode=' . $purchase_data['post_data']['wpi-gateway']); |
|
204 | 204 | } |
205 | 205 | } else { |
206 | - wpinv_send_back_to_checkout( '?payment-mode=' . $purchase_data['post_data']['wpi-gateway'] ); |
|
206 | + wpinv_send_back_to_checkout('?payment-mode=' . $purchase_data['post_data']['wpi-gateway']); |
|
207 | 207 | } |
208 | 208 | } else { |
209 | - wpinv_record_gateway_error( wp_sprintf( __( 'Authorize.Net payment error occurred. Payment creation failed while processing a Authorize.net payment. Payment data: %s', 'invoicing' ), print_r( $payment_data, true ) ), $invoice ); |
|
210 | - wpinv_send_back_to_checkout( '?payment-mode=' . $purchase_data['post_data']['wpi-gateway'] ); |
|
209 | + wpinv_record_gateway_error(wp_sprintf(__('Authorize.Net payment error occurred. Payment creation failed while processing a Authorize.net payment. Payment data: %s', 'invoicing'), print_r($payment_data, true)), $invoice); |
|
210 | + wpinv_send_back_to_checkout('?payment-mode=' . $purchase_data['post_data']['wpi-gateway']); |
|
211 | 211 | } |
212 | 212 | } |
213 | -add_action( 'wpinv_gateway_authorizenet', 'wpinv_process_authorizenet_payment' ); |
|
213 | +add_action('wpinv_gateway_authorizenet', 'wpinv_process_authorizenet_payment'); |
|
214 | 214 | |
215 | -function wpinv_authorizenet_cancel_subscription( $subscription_id = '' ) { |
|
216 | - if ( empty( $subscription_id ) ) { |
|
215 | +function wpinv_authorizenet_cancel_subscription($subscription_id = '') { |
|
216 | + if (empty($subscription_id)) { |
|
217 | 217 | return false; |
218 | 218 | } |
219 | 219 | |
220 | 220 | try { |
221 | 221 | $authnetXML = wpinv_authorizenet_XML(); |
222 | - $authnetXML->ARBCancelSubscriptionRequest( array( 'subscriptionId' => $subscription_id ) ); |
|
222 | + $authnetXML->ARBCancelSubscriptionRequest(array('subscriptionId' => $subscription_id)); |
|
223 | 223 | |
224 | 224 | return $authnetXML->isSuccessful(); |
225 | - } catch( Exception $e ) { |
|
226 | - wpinv_error_log( $e->getMessage(), __( 'Authorize.Net cancel subscription', 'invoicing' ) ); |
|
225 | + } catch (Exception $e) { |
|
226 | + wpinv_error_log($e->getMessage(), __('Authorize.Net cancel subscription', 'invoicing')); |
|
227 | 227 | } |
228 | 228 | |
229 | 229 | return false; |
230 | 230 | } |
231 | 231 | |
232 | -function wpinv_authorizenet_valid_ipn( $md5_hash, $transaction_id, $amount ) { |
|
233 | - $authorizenet_md5_hash = wpinv_get_option( 'authorizenet_md5_hash' ); |
|
234 | - if ( empty( $authorizenet_md5_hash ) ) { |
|
232 | +function wpinv_authorizenet_valid_ipn($md5_hash, $transaction_id, $amount) { |
|
233 | + $authorizenet_md5_hash = wpinv_get_option('authorizenet_md5_hash'); |
|
234 | + if (empty($authorizenet_md5_hash)) { |
|
235 | 235 | return true; |
236 | 236 | } |
237 | 237 | |
238 | - $compare_md5 = strtoupper( md5( $authorizenet_md5_hash . $transaction_id . $amount ) ); |
|
238 | + $compare_md5 = strtoupper(md5($authorizenet_md5_hash . $transaction_id . $amount)); |
|
239 | 239 | |
240 | - return hash_equals( $compare_md5, $md5_hash ); |
|
240 | + return hash_equals($compare_md5, $md5_hash); |
|
241 | 241 | } |
242 | 242 | |
243 | 243 | function wpinv_authorizenet_AIM() { |
244 | - if ( !class_exists( 'AuthorizeNetException' ) ) { |
|
245 | - require_once plugin_dir_path( WPINV_PLUGIN_FILE ) . 'includes/gateways/authorizenet/anet_php_sdk/AuthorizeNet.php'; |
|
244 | + if (!class_exists('AuthorizeNetException')) { |
|
245 | + require_once plugin_dir_path(WPINV_PLUGIN_FILE) . 'includes/gateways/authorizenet/anet_php_sdk/AuthorizeNet.php'; |
|
246 | 246 | } |
247 | 247 | |
248 | - $authorizeAIM = new AuthorizeNetAIM( wpinv_get_option( 'authorizenet_login_id' ), wpinv_get_option( 'authorizenet_transaction_key' ) ); |
|
248 | + $authorizeAIM = new AuthorizeNetAIM(wpinv_get_option('authorizenet_login_id'), wpinv_get_option('authorizenet_transaction_key')); |
|
249 | 249 | |
250 | - if ( wpinv_is_test_mode( 'authorizenet' ) ) { |
|
251 | - $authorizeAIM->setSandbox( true ); |
|
250 | + if (wpinv_is_test_mode('authorizenet')) { |
|
251 | + $authorizeAIM->setSandbox(true); |
|
252 | 252 | } else { |
253 | - $authorizeAIM->setSandbox( false ); |
|
253 | + $authorizeAIM->setSandbox(false); |
|
254 | 254 | } |
255 | 255 | |
256 | 256 | $authorizeAIM->customer_ip = wpinv_get_ip(); |
@@ -259,164 +259,164 @@ discard block |
||
259 | 259 | } |
260 | 260 | |
261 | 261 | function wpinv_authorizenet_XML() { |
262 | - if ( !class_exists( 'AuthnetXML' ) ) { |
|
263 | - require_once plugin_dir_path( WPINV_PLUGIN_FILE ) . 'includes/gateways/authorizenet/Authorize.Net-XML/AuthnetXML.class.php'; |
|
262 | + if (!class_exists('AuthnetXML')) { |
|
263 | + require_once plugin_dir_path(WPINV_PLUGIN_FILE) . 'includes/gateways/authorizenet/Authorize.Net-XML/AuthnetXML.class.php'; |
|
264 | 264 | } |
265 | 265 | |
266 | - $authnetXML = new AuthnetXML( wpinv_get_option( 'authorizenet_login_id' ), wpinv_get_option( 'authorizenet_transaction_key' ), (bool)wpinv_is_test_mode( 'authorizenet' ) ); |
|
266 | + $authnetXML = new AuthnetXML(wpinv_get_option('authorizenet_login_id'), wpinv_get_option('authorizenet_transaction_key'), (bool)wpinv_is_test_mode('authorizenet')); |
|
267 | 267 | |
268 | 268 | return $authnetXML; |
269 | 269 | } |
270 | 270 | |
271 | -function wpinv_authorizenet_handle_response( $response, $invoice, $card_info = array() ) { |
|
272 | - if ( empty( $response ) || empty( $invoice ) ) { |
|
271 | +function wpinv_authorizenet_handle_response($response, $invoice, $card_info = array()) { |
|
272 | + if (empty($response) || empty($invoice)) { |
|
273 | 273 | return false; |
274 | 274 | } |
275 | 275 | |
276 | - if ( $invoice->is_recurring() && !empty( $response->approved ) ) { |
|
277 | - $subscription = wpinv_authorizenet_create_new_subscription( $invoice, $response, $card_info ); |
|
276 | + if ($invoice->is_recurring() && !empty($response->approved)) { |
|
277 | + $subscription = wpinv_authorizenet_create_new_subscription($invoice, $response, $card_info); |
|
278 | 278 | |
279 | - if ( !empty( $subscription ) && $subscription->isSuccessful() ) { |
|
280 | - do_action( 'wpinv_recurring_post_create_subscription', $subscription, $invoice, 'authorizenet' ); |
|
279 | + if (!empty($subscription) && $subscription->isSuccessful()) { |
|
280 | + do_action('wpinv_recurring_post_create_subscription', $subscription, $invoice, 'authorizenet'); |
|
281 | 281 | |
282 | - wpinv_authorizenet_subscription_record_signup( $subscription, $invoice ); |
|
282 | + wpinv_authorizenet_subscription_record_signup($subscription, $invoice); |
|
283 | 283 | |
284 | - do_action( 'wpinv_recurring_post_record_signup', $subscription, $invoice, 'authorizenet' ); |
|
284 | + do_action('wpinv_recurring_post_record_signup', $subscription, $invoice, 'authorizenet'); |
|
285 | 285 | } else { |
286 | - if ( isset( $subscription->messages->message ) ) { |
|
286 | + if (isset($subscription->messages->message)) { |
|
287 | 287 | $error = $subscription->messages->message->code . ': ' . $subscription->messages->message->text; |
288 | - wpinv_set_error( 'wpinv_authorize_recurring_error', $error, 'invoicing' ); |
|
288 | + wpinv_set_error('wpinv_authorize_recurring_error', $error, 'invoicing'); |
|
289 | 289 | } else { |
290 | - $error = __( 'Your subscription cannot be created due to an error.', 'invoicing' ); |
|
291 | - wpinv_set_error( 'wpinv_authorize_recurring_error', $error ); |
|
290 | + $error = __('Your subscription cannot be created due to an error.', 'invoicing'); |
|
291 | + wpinv_set_error('wpinv_authorize_recurring_error', $error); |
|
292 | 292 | } |
293 | 293 | |
294 | - wpinv_record_gateway_error( $error, $subscription ); |
|
294 | + wpinv_record_gateway_error($error, $subscription); |
|
295 | 295 | |
296 | - wpinv_insert_payment_note( $invoice->ID, wp_sprintf( __( 'Authorize.Net subscription error occurred. %s', 'invoicing' ), $error ) ); |
|
296 | + wpinv_insert_payment_note($invoice->ID, wp_sprintf(__('Authorize.Net subscription error occurred. %s', 'invoicing'), $error)); |
|
297 | 297 | } |
298 | 298 | } |
299 | 299 | } |
300 | -add_action( 'wpinv_authorizenet_handle_response', 'wpinv_authorizenet_handle_response', 10, 3 ); |
|
300 | +add_action('wpinv_authorizenet_handle_response', 'wpinv_authorizenet_handle_response', 10, 3); |
|
301 | 301 | |
302 | -function wpinv_authorizenet_create_new_subscription( $invoice, $response = array(), $card_info = array() ) { |
|
303 | - if ( empty( $invoice ) ) { |
|
302 | +function wpinv_authorizenet_create_new_subscription($invoice, $response = array(), $card_info = array()) { |
|
303 | + if (empty($invoice)) { |
|
304 | 304 | return false; |
305 | 305 | } |
306 | 306 | |
307 | - $params = wpinv_authorizenet_generate_subscription_params( $invoice, $card_info, $response ); |
|
307 | + $params = wpinv_authorizenet_generate_subscription_params($invoice, $card_info, $response); |
|
308 | 308 | |
309 | 309 | try { |
310 | 310 | $authnetXML = wpinv_authorizenet_XML(); |
311 | - $authnetXML->ARBCreateSubscriptionRequest( $params ); |
|
312 | - } catch( Exception $e ) { |
|
311 | + $authnetXML->ARBCreateSubscriptionRequest($params); |
|
312 | + } catch (Exception $e) { |
|
313 | 313 | $authnetXML = array(); |
314 | - wpinv_error_log( $e->getMessage(), __( 'Authorize.Net cancel subscription', 'invoicing' ) ); |
|
314 | + wpinv_error_log($e->getMessage(), __('Authorize.Net cancel subscription', 'invoicing')); |
|
315 | 315 | } |
316 | 316 | |
317 | 317 | return $authnetXML; |
318 | 318 | } |
319 | 319 | |
320 | -function wpinv_authorizenet_generate_subscription_params( $invoice, $card_info = array(), $response = array() ) { |
|
321 | - if ( empty( $invoice ) ) { |
|
320 | +function wpinv_authorizenet_generate_subscription_params($invoice, $card_info = array(), $response = array()) { |
|
321 | + if (empty($invoice)) { |
|
322 | 322 | return false; |
323 | 323 | } |
324 | 324 | |
325 | - $subscription_item = $invoice->get_recurring( true ); |
|
326 | - if ( empty( $subscription_item ) ) { |
|
325 | + $subscription_item = $invoice->get_recurring(true); |
|
326 | + if (empty($subscription_item)) { |
|
327 | 327 | return false; |
328 | 328 | } |
329 | 329 | |
330 | - $card_details = wpinv_authorizenet_generate_card_info( $card_info ); |
|
330 | + $card_details = wpinv_authorizenet_generate_card_info($card_info); |
|
331 | 331 | $subscription_name = $invoice->get_subscription_name(); |
332 | - $initial_amount = wpinv_round_amount( $invoice->get_total() ); |
|
333 | - $recurring_amount = wpinv_round_amount( $invoice->get_recurring_details( 'total' ) ); |
|
332 | + $initial_amount = wpinv_round_amount($invoice->get_total()); |
|
333 | + $recurring_amount = wpinv_round_amount($invoice->get_recurring_details('total')); |
|
334 | 334 | $interval = $subscription_item->get_recurring_interval(); |
335 | 335 | $period = $subscription_item->get_recurring_period(); |
336 | 336 | $bill_times = (int)$subscription_item->get_recurring_limit(); |
337 | 337 | $bill_times = $bill_times > 0 ? $bill_times : 9999; |
338 | 338 | |
339 | - $time_period = wpinv_authorizenet_get_time_period( $interval, $period ); |
|
339 | + $time_period = wpinv_authorizenet_get_time_period($interval, $period); |
|
340 | 340 | $interval = $time_period['interval']; |
341 | 341 | $period = $time_period['period']; |
342 | 342 | |
343 | 343 | $current_tz = date_default_timezone_get(); |
344 | - date_default_timezone_set( 'America/Denver' ); // Set same timezone as Authorize's server (Mountain Time) to prevent conflicts. |
|
345 | - $today = date( 'Y-m-d' ); |
|
346 | - date_default_timezone_set( $current_tz ); |
|
344 | + date_default_timezone_set('America/Denver'); // Set same timezone as Authorize's server (Mountain Time) to prevent conflicts. |
|
345 | + $today = date('Y-m-d'); |
|
346 | + date_default_timezone_set($current_tz); |
|
347 | 347 | |
348 | 348 | $free_trial = $invoice->is_free_trial(); |
349 | - if ( $free_trial && $subscription_item->has_free_trial() ) { |
|
349 | + if ($free_trial && $subscription_item->has_free_trial()) { |
|
350 | 350 | $trial_interval = $subscription_item->get_trial_interval(); |
351 | - $trial_period = $subscription_item->get_trial_period( true ); |
|
351 | + $trial_period = $subscription_item->get_trial_period(true); |
|
352 | 352 | } |
353 | 353 | |
354 | 354 | $subscription = array(); |
355 | 355 | $subscription['name'] = $subscription_name; |
356 | 356 | |
357 | 357 | $subscription['paymentSchedule'] = array( |
358 | - 'interval' => array( 'length' => $interval, 'unit' => $period ), |
|
358 | + 'interval' => array('length' => $interval, 'unit' => $period), |
|
359 | 359 | 'startDate' => $today, |
360 | 360 | 'totalOccurrences' => $bill_times, |
361 | - 'trialOccurrences' => $free_trial || ( $initial_amount != $recurring_amount ) ? 1 : 0, |
|
361 | + 'trialOccurrences' => $free_trial || ($initial_amount != $recurring_amount) ? 1 : 0, |
|
362 | 362 | ); |
363 | 363 | |
364 | 364 | $subscription['amount'] = $recurring_amount; |
365 | 365 | $subscription['trialAmount'] = $initial_amount; |
366 | - $subscription['payment'] = array( 'creditCard' => $card_details ); |
|
367 | - $subscription['order'] = array( 'invoiceNumber' => $invoice->ID, 'description' => '#' . $invoice->get_number() ); |
|
368 | - $subscription['customer'] = array( 'id' => $invoice->get_user_id(), 'email' => $invoice->get_email(), 'phoneNumber' => $invoice->phone ); |
|
366 | + $subscription['payment'] = array('creditCard' => $card_details); |
|
367 | + $subscription['order'] = array('invoiceNumber' => $invoice->ID, 'description' => '#' . $invoice->get_number()); |
|
368 | + $subscription['customer'] = array('id' => $invoice->get_user_id(), 'email' => $invoice->get_email(), 'phoneNumber' => $invoice->phone); |
|
369 | 369 | |
370 | 370 | $subscription['billTo'] = array( |
371 | 371 | 'firstName' => $invoice->get_first_name(), |
372 | 372 | 'lastName' => $invoice->get_last_name(), |
373 | 373 | 'company' => $invoice->company, |
374 | - 'address' => wp_strip_all_tags( $invoice->get_address(), true ), |
|
374 | + 'address' => wp_strip_all_tags($invoice->get_address(), true), |
|
375 | 375 | 'city' => $invoice->city, |
376 | 376 | 'state' => $invoice->state, |
377 | 377 | 'zip' => $invoice->zip, |
378 | 378 | 'country' => $invoice->country, |
379 | 379 | ); |
380 | 380 | |
381 | - $params = array( 'subscription' => $subscription ); |
|
381 | + $params = array('subscription' => $subscription); |
|
382 | 382 | |
383 | - return apply_filters( 'wpinv_authorizenet_generate_subscription_params', $params, $invoice, $card_info, $response ); |
|
383 | + return apply_filters('wpinv_authorizenet_generate_subscription_params', $params, $invoice, $card_info, $response); |
|
384 | 384 | } |
385 | 385 | |
386 | -function wpinv_authorizenet_generate_card_info( $card_info = array() ) { |
|
387 | - $card_defaults = array( |
|
386 | +function wpinv_authorizenet_generate_card_info($card_info = array()) { |
|
387 | + $card_defaults = array( |
|
388 | 388 | 'cc_owner' => null, |
389 | 389 | 'cc_number' => null, |
390 | 390 | 'cc_expire_month' => null, |
391 | 391 | 'cc_expire_year' => null, |
392 | 392 | 'cc_cvv2' => null, |
393 | 393 | ); |
394 | - $card_info = wp_parse_args( $card_info, $card_defaults ); |
|
394 | + $card_info = wp_parse_args($card_info, $card_defaults); |
|
395 | 395 | |
396 | 396 | $card_details = array( |
397 | - 'cardNumber' => str_replace( ' ', '', sanitize_text_field( $card_info['cc_number'] ) ), |
|
398 | - 'expirationDate' => sanitize_text_field( $card_info['cc_expire_month'] ) . sanitize_text_field( $card_info['cc_expire_year'] ), |
|
399 | - 'cardCode' => sanitize_text_field( $card_info['cc_cvv2'] ), |
|
397 | + 'cardNumber' => str_replace(' ', '', sanitize_text_field($card_info['cc_number'])), |
|
398 | + 'expirationDate' => sanitize_text_field($card_info['cc_expire_month']) . sanitize_text_field($card_info['cc_expire_year']), |
|
399 | + 'cardCode' => sanitize_text_field($card_info['cc_cvv2']), |
|
400 | 400 | ); |
401 | 401 | |
402 | 402 | return $card_details; |
403 | 403 | } |
404 | 404 | |
405 | -function wpinv_authorizenet_subscription_record_signup( $subscription, $invoice ) { |
|
406 | - if ( empty( $invoice ) || empty( $subscription ) ) { |
|
405 | +function wpinv_authorizenet_subscription_record_signup($subscription, $invoice) { |
|
406 | + if (empty($invoice) || empty($subscription)) { |
|
407 | 407 | return false; |
408 | 408 | } |
409 | 409 | |
410 | - $subscription_item = $invoice->get_recurring( true ); |
|
411 | - if ( empty( $subscription_item ) ) { |
|
410 | + $subscription_item = $invoice->get_recurring(true); |
|
411 | + if (empty($subscription_item)) { |
|
412 | 412 | return false; |
413 | 413 | } |
414 | 414 | |
415 | 415 | $invoice_id = $invoice->ID; |
416 | 416 | $subscriptionId = (array)$subscription->subscriptionId; |
417 | - $subscription_id = !empty( $subscriptionId[0] ) ? $subscriptionId[0] : $invoice_id; |
|
417 | + $subscription_id = !empty($subscriptionId[0]) ? $subscriptionId[0] : $invoice_id; |
|
418 | 418 | |
419 | - wpinv_insert_payment_note( $invoice_id, sprintf( __( 'Authorize.Net Subscription ID: %s', 'invoicing' ) , $subscription_id ) ); |
|
419 | + wpinv_insert_payment_note($invoice_id, sprintf(__('Authorize.Net Subscription ID: %s', 'invoicing'), $subscription_id)); |
|
420 | 420 | |
421 | 421 | $status = $invoice->is_free_trial() && $subscription_item->has_free_trial() ? 'trialing' : 'active'; |
422 | 422 | |
@@ -424,16 +424,16 @@ discard block |
||
424 | 424 | 'profile_id' => $subscription_id, |
425 | 425 | 'item_id' => $subscription_item->ID, |
426 | 426 | 'initial_amount' => $invoice->get_total(), |
427 | - 'recurring_amount' => $invoice->get_recurring_details( 'total' ), |
|
427 | + 'recurring_amount' => $invoice->get_recurring_details('total'), |
|
428 | 428 | 'period' => $subscription_item->get_recurring_period(), |
429 | 429 | 'interval' => $subscription_item->get_recurring_interval(), |
430 | 430 | 'bill_times' => $subscription_item->get_recurring_limit(), |
431 | - 'expiration' => $invoice->get_new_expiration( $subscription_item->ID ), |
|
431 | + 'expiration' => $invoice->get_new_expiration($subscription_item->ID), |
|
432 | 432 | 'status' => $status, |
433 | - 'created' => current_time( 'mysql', 0 ) |
|
433 | + 'created' => current_time('mysql', 0) |
|
434 | 434 | ); |
435 | 435 | |
436 | - if ( $invoice->is_free_trial() && $subscription_item->has_free_trial() ) { |
|
436 | + if ($invoice->is_free_trial() && $subscription_item->has_free_trial()) { |
|
437 | 437 | $args['trial_period'] = $subscription_item->get_trial_period(); |
438 | 438 | $args['trial_interval'] = $subscription_item->get_trial_interval(); |
439 | 439 | } else { |
@@ -441,58 +441,58 @@ discard block |
||
441 | 441 | $args['trial_interval'] = 0; |
442 | 442 | } |
443 | 443 | |
444 | - return $invoice->update_subscription( $args ); |
|
444 | + return $invoice->update_subscription($args); |
|
445 | 445 | } |
446 | 446 | |
447 | -function wpinv_authorizenet_validate_checkout( $valid_data, $post ) { |
|
448 | - if ( !empty( $post['wpi-gateway'] ) && $post['wpi-gateway'] == 'authorizenet' ) { |
|
447 | +function wpinv_authorizenet_validate_checkout($valid_data, $post) { |
|
448 | + if (!empty($post['wpi-gateway']) && $post['wpi-gateway'] == 'authorizenet') { |
|
449 | 449 | $error = false; |
450 | 450 | |
451 | - if ( empty( $post['authorizenet']['cc_owner'] ) ) { |
|
451 | + if (empty($post['authorizenet']['cc_owner'])) { |
|
452 | 452 | $error = true; |
453 | - wpinv_set_error( 'empty_card_name', __( 'You must enter the name on your card!', 'invoicing')); |
|
453 | + wpinv_set_error('empty_card_name', __('You must enter the name on your card!', 'invoicing')); |
|
454 | 454 | } |
455 | - if ( empty( $post['authorizenet']['cc_number'] ) ) { |
|
455 | + if (empty($post['authorizenet']['cc_number'])) { |
|
456 | 456 | $error = true; |
457 | - wpinv_set_error( 'empty_card', __( 'You must enter a card number!', 'invoicing')); |
|
457 | + wpinv_set_error('empty_card', __('You must enter a card number!', 'invoicing')); |
|
458 | 458 | } |
459 | - if ( empty( $post['authorizenet']['cc_expire_month'] ) ) { |
|
459 | + if (empty($post['authorizenet']['cc_expire_month'])) { |
|
460 | 460 | $error = true; |
461 | - wpinv_set_error( 'empty_month', __( 'You must enter an card expiration month!', 'invoicing')); |
|
461 | + wpinv_set_error('empty_month', __('You must enter an card expiration month!', 'invoicing')); |
|
462 | 462 | } |
463 | - if ( empty( $post['authorizenet']['cc_expire_year'] ) ) { |
|
463 | + if (empty($post['authorizenet']['cc_expire_year'])) { |
|
464 | 464 | $error = true; |
465 | - wpinv_set_error( 'empty_year', __( 'You must enter an card expiration year!', 'invoicing')); |
|
465 | + wpinv_set_error('empty_year', __('You must enter an card expiration year!', 'invoicing')); |
|
466 | 466 | } |
467 | - if ( empty( $post['authorizenet']['cc_cvv2'] ) ) { |
|
467 | + if (empty($post['authorizenet']['cc_cvv2'])) { |
|
468 | 468 | $error = true; |
469 | - wpinv_set_error( 'empty_cvv2', __( 'You must enter a valid CVV2!', 'invoicing' ) ); |
|
469 | + wpinv_set_error('empty_cvv2', __('You must enter a valid CVV2!', 'invoicing')); |
|
470 | 470 | } |
471 | 471 | |
472 | - if ( $error ) { |
|
472 | + if ($error) { |
|
473 | 473 | return; |
474 | 474 | } |
475 | 475 | |
476 | 476 | $invoice = wpinv_get_invoice_cart(); |
477 | 477 | |
478 | - if ( !empty( $invoice ) && $subscription_item = $invoice->get_recurring( true ) ) { |
|
479 | - $subscription_item = $invoice->get_recurring( true ); |
|
478 | + if (!empty($invoice) && $subscription_item = $invoice->get_recurring(true)) { |
|
479 | + $subscription_item = $invoice->get_recurring(true); |
|
480 | 480 | |
481 | 481 | $interval = $subscription_item->get_recurring_interval(); |
482 | 482 | $period = $subscription_item->get_recurring_period(); |
483 | 483 | |
484 | - if ( $period == 'D' && ( $interval < 7 || $interval > 365 ) ) { |
|
485 | - wpinv_set_error( 'authorizenet_subscription_error', __( 'Interval Length must be a value from 7 through 365 for day based subscriptions.', 'invoicing' ) ); |
|
484 | + if ($period == 'D' && ($interval < 7 || $interval > 365)) { |
|
485 | + wpinv_set_error('authorizenet_subscription_error', __('Interval Length must be a value from 7 through 365 for day based subscriptions.', 'invoicing')); |
|
486 | 486 | } |
487 | 487 | } |
488 | 488 | } |
489 | 489 | } |
490 | -add_action( 'wpinv_checkout_error_checks', 'wpinv_authorizenet_validate_checkout', 11, 2 ); |
|
490 | +add_action('wpinv_checkout_error_checks', 'wpinv_authorizenet_validate_checkout', 11, 2); |
|
491 | 491 | |
492 | -function wpinv_authorizenet_get_time_period( $subscription_interval, $subscription_period ) { |
|
493 | - $subscription_interval = absint( $subscription_interval ); |
|
492 | +function wpinv_authorizenet_get_time_period($subscription_interval, $subscription_period) { |
|
493 | + $subscription_interval = absint($subscription_interval); |
|
494 | 494 | |
495 | - switch( $subscription_period ) { |
|
495 | + switch ($subscription_period) { |
|
496 | 496 | case 'W': |
497 | 497 | case 'week': |
498 | 498 | case 'weeks': |
@@ -502,14 +502,14 @@ discard block |
||
502 | 502 | case 'M': |
503 | 503 | case 'month': |
504 | 504 | case 'months': |
505 | - if ( $subscription_interval > 12 ) { |
|
505 | + if ($subscription_interval > 12) { |
|
506 | 506 | $subscription_interval = 12; |
507 | 507 | } |
508 | 508 | |
509 | 509 | $interval = $subscription_interval; |
510 | 510 | $period = 'months'; |
511 | 511 | |
512 | - if ( !( $subscription_interval === 1 || $subscription_interval === 2 || $subscription_interval === 3 || $subscription_interval === 6 || $subscription_interval === 12 ) ) { |
|
512 | + if (!($subscription_interval === 1 || $subscription_interval === 2 || $subscription_interval === 3 || $subscription_interval === 6 || $subscription_interval === 12)) { |
|
513 | 513 | $interval = $subscription_interval * 30; |
514 | 514 | $period = 'days'; |
515 | 515 | } |
@@ -526,40 +526,40 @@ discard block |
||
526 | 526 | break; |
527 | 527 | } |
528 | 528 | |
529 | - return compact( 'interval', 'period' ); |
|
529 | + return compact('interval', 'period'); |
|
530 | 530 | } |
531 | 531 | |
532 | 532 | function wpinv_authorizenet_process_ipn() { |
533 | - if ( !( !empty( $_REQUEST['wpi-gateway'] ) && $_REQUEST['wpi-gateway'] == 'authorizenet' ) ) { |
|
533 | + if (!(!empty($_REQUEST['wpi-gateway']) && $_REQUEST['wpi-gateway'] == 'authorizenet')) { |
|
534 | 534 | return; |
535 | 535 | } |
536 | 536 | |
537 | - $subscription_id = intval( $_POST['x_subscription_id'] ); |
|
537 | + $subscription_id = intval($_POST['x_subscription_id']); |
|
538 | 538 | |
539 | - if ( $subscription_id ) { |
|
540 | - $transaction_id = sanitize_text_field( $_POST['x_trans_id'] ); |
|
541 | - $renewal_amount = sanitize_text_field( $_POST['x_amount'] ); |
|
542 | - $response_code = intval( $_POST['x_response_code'] ); |
|
543 | - $reason_code = intval( $_POST['x_response_reason_code'] ); |
|
539 | + if ($subscription_id) { |
|
540 | + $transaction_id = sanitize_text_field($_POST['x_trans_id']); |
|
541 | + $renewal_amount = sanitize_text_field($_POST['x_amount']); |
|
542 | + $response_code = intval($_POST['x_response_code']); |
|
543 | + $reason_code = intval($_POST['x_response_reason_code']); |
|
544 | 544 | |
545 | - if ( 1 == $response_code ) { |
|
545 | + if (1 == $response_code) { |
|
546 | 546 | // Approved |
547 | - do_action( 'wpinv_authorizenet_renewal_payment', $transaction_id ); |
|
548 | - } else if ( 2 == $response_code ) { |
|
547 | + do_action('wpinv_authorizenet_renewal_payment', $transaction_id); |
|
548 | + } else if (2 == $response_code) { |
|
549 | 549 | // Declined |
550 | - do_action( 'wpinv_authorizenet_renewal_payment_failed', $transaction_id ); |
|
551 | - do_action( 'wpinv_authorizenet_renewal_error', $transaction_id ); |
|
552 | - } else if ( 3 == $response_code || 8 == $reason_code ) { |
|
550 | + do_action('wpinv_authorizenet_renewal_payment_failed', $transaction_id); |
|
551 | + do_action('wpinv_authorizenet_renewal_error', $transaction_id); |
|
552 | + } else if (3 == $response_code || 8 == $reason_code) { |
|
553 | 553 | // An expired card |
554 | - do_action( 'wpinv_authorizenet_renewal_payment_failed', $transaction_id ); |
|
555 | - do_action( 'wpinv_authorizenet_renewal_payment_error', $transaction_id ); |
|
554 | + do_action('wpinv_authorizenet_renewal_payment_failed', $transaction_id); |
|
555 | + do_action('wpinv_authorizenet_renewal_payment_error', $transaction_id); |
|
556 | 556 | |
557 | 557 | } else { |
558 | 558 | // Other Error |
559 | - do_action( 'wpinv_authorizenet_renewal_payment_error', $subscription ); |
|
559 | + do_action('wpinv_authorizenet_renewal_payment_error', $subscription); |
|
560 | 560 | } |
561 | 561 | |
562 | 562 | exit; |
563 | 563 | } |
564 | 564 | } |
565 | -add_action( 'wpinv_verify_authorizenet_ipn', 'wpinv_authorizenet_process_ipn' ); |
|
566 | 565 | \ No newline at end of file |
566 | +add_action('wpinv_verify_authorizenet_ipn', 'wpinv_authorizenet_process_ipn'); |
|
567 | 567 | \ No newline at end of file |
@@ -7,51 +7,51 @@ discard block |
||
7 | 7 | */ |
8 | 8 | |
9 | 9 | // MUST have WordPress. |
10 | -if ( !defined( 'WPINC' ) ) { |
|
11 | - exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) ); |
|
10 | +if (!defined('WPINC')) { |
|
11 | + exit('Do NOT access this file directly: ' . basename(__FILE__)); |
|
12 | 12 | } |
13 | 13 | |
14 | 14 | class WPInv_API { |
15 | 15 | protected $post_type = 'wpi_invoice'; |
16 | 16 | |
17 | - public function __construct( $params = array() ) { |
|
17 | + public function __construct($params = array()) { |
|
18 | 18 | } |
19 | - public function insert_invoice( $data ) { |
|
19 | + public function insert_invoice($data) { |
|
20 | 20 | global $wpdb; |
21 | 21 | //wpinv_transaction_query( 'start' ); |
22 | 22 | |
23 | 23 | try { |
24 | - if ( empty( $data['invoice'] ) ) { |
|
25 | - throw new WPInv_API_Exception( 'wpinv_api_missing_invoice_data', sprintf( __( 'No %1$s data specified to create %1$s', 'invoicing' ), 'invoice' ), 400 ); |
|
24 | + if (empty($data['invoice'])) { |
|
25 | + throw new WPInv_API_Exception('wpinv_api_missing_invoice_data', sprintf(__('No %1$s data specified to create %1$s', 'invoicing'), 'invoice'), 400); |
|
26 | 26 | } |
27 | 27 | |
28 | - $data = apply_filters( 'wpinv_api_create_invoice_data', $data['invoice'], $this ); |
|
28 | + $data = apply_filters('wpinv_api_create_invoice_data', $data['invoice'], $this); |
|
29 | 29 | |
30 | - $invoice = wpinv_insert_invoice( $data, true ); |
|
31 | - if ( empty( $invoice->ID ) || is_wp_error( $invoice ) ) { |
|
32 | - throw new WPInv_API_Exception( 'wpinv_api_cannot_create_invoice', sprintf( __( 'Cannot create invoice: %s', 'invoicing' ), implode( ', ', $invoice->get_error_messages() ) ), 400 ); |
|
30 | + $invoice = wpinv_insert_invoice($data, true); |
|
31 | + if (empty($invoice->ID) || is_wp_error($invoice)) { |
|
32 | + throw new WPInv_API_Exception('wpinv_api_cannot_create_invoice', sprintf(__('Cannot create invoice: %s', 'invoicing'), implode(', ', $invoice->get_error_messages())), 400); |
|
33 | 33 | } |
34 | 34 | |
35 | 35 | // HTTP 201 Created |
36 | - $this->send_status( 201 ); |
|
36 | + $this->send_status(201); |
|
37 | 37 | |
38 | - do_action( 'wpinv_api_create_invoice', $invoice->ID, $data, $this ); |
|
38 | + do_action('wpinv_api_create_invoice', $invoice->ID, $data, $this); |
|
39 | 39 | |
40 | 40 | //wpinv_transaction_query( 'commit' ); |
41 | 41 | |
42 | - return wpinv_get_invoice( $invoice->ID ); |
|
43 | - } catch ( WPInv_API_Exception $e ) { |
|
42 | + return wpinv_get_invoice($invoice->ID); |
|
43 | + } catch (WPInv_API_Exception $e) { |
|
44 | 44 | //wpinv_transaction_query( 'rollback' ); |
45 | 45 | |
46 | - return new WP_Error( $e->getErrorCode(), $e->getMessage(), array( 'status' => $e->getCode() ) ); |
|
46 | + return new WP_Error($e->getErrorCode(), $e->getMessage(), array('status' => $e->getCode())); |
|
47 | 47 | } |
48 | 48 | } |
49 | 49 | |
50 | - public function send_status( $code ) { |
|
51 | - status_header( $code ); |
|
50 | + public function send_status($code) { |
|
51 | + status_header($code); |
|
52 | 52 | } |
53 | 53 | |
54 | - protected function set_billing_details( $invoice, $data ) { |
|
54 | + protected function set_billing_details($invoice, $data) { |
|
55 | 55 | $address_fields = array( |
56 | 56 | 'user_id', |
57 | 57 | 'first_name', |
@@ -70,66 +70,66 @@ discard block |
||
70 | 70 | $billing_details = array(); |
71 | 71 | $user_id = $invoice->get_user_id(); |
72 | 72 | |
73 | - foreach ( $address_fields as $field ) { |
|
74 | - if ( isset( $data['billing_details'][ $field ] ) ) { |
|
75 | - $value = sanitize_text_field( $data['billing_details'][ $field ] ); |
|
73 | + foreach ($address_fields as $field) { |
|
74 | + if (isset($data['billing_details'][$field])) { |
|
75 | + $value = sanitize_text_field($data['billing_details'][$field]); |
|
76 | 76 | |
77 | - if ( $field == 'country' && empty( $value ) ) { |
|
78 | - if ( !empty( $invoice->country ) ) { |
|
77 | + if ($field == 'country' && empty($value)) { |
|
78 | + if (!empty($invoice->country)) { |
|
79 | 79 | $value = $invoice->country; |
80 | 80 | } else { |
81 | - $value = wpinv_default_billing_country( '', $user_id ); |
|
81 | + $value = wpinv_default_billing_country('', $user_id); |
|
82 | 82 | } |
83 | 83 | } |
84 | 84 | |
85 | - if ( $field == 'state' && empty( $value ) ) { |
|
86 | - if ( !empty( $invoice->state ) ) { |
|
85 | + if ($field == 'state' && empty($value)) { |
|
86 | + if (!empty($invoice->state)) { |
|
87 | 87 | $value = $invoice->state; |
88 | 88 | } else { |
89 | 89 | $value = wpinv_get_default_state(); |
90 | 90 | } |
91 | 91 | } |
92 | 92 | |
93 | - $invoice->set( $field, $value ); |
|
93 | + $invoice->set($field, $value); |
|
94 | 94 | |
95 | - update_post_meta( $invoice->ID, '_wpinv_' . $field, $value ); |
|
95 | + update_post_meta($invoice->ID, '_wpinv_' . $field, $value); |
|
96 | 96 | } |
97 | 97 | } |
98 | 98 | |
99 | 99 | return $invoice; |
100 | 100 | } |
101 | 101 | |
102 | - protected function set_discount( $invoice, $data ) { |
|
103 | - if ( isset( $data['discount'] ) ) { |
|
104 | - $invoice->set( 'discount', wpinv_round_amount( $data['discount'] ) ); |
|
102 | + protected function set_discount($invoice, $data) { |
|
103 | + if (isset($data['discount'])) { |
|
104 | + $invoice->set('discount', wpinv_round_amount($data['discount'])); |
|
105 | 105 | |
106 | - update_post_meta( $invoice->ID, '_wpinv_discount', wpinv_round_amount( $data['discount'] ) ); |
|
106 | + update_post_meta($invoice->ID, '_wpinv_discount', wpinv_round_amount($data['discount'])); |
|
107 | 107 | |
108 | - if ( isset( $data['discount_code'] ) ) { |
|
109 | - $invoice->set( 'discount_code', $data['discount_code'] ); |
|
108 | + if (isset($data['discount_code'])) { |
|
109 | + $invoice->set('discount_code', $data['discount_code']); |
|
110 | 110 | |
111 | - update_post_meta( $invoice->ID, '_wpinv_discount_code', $data['discount_code'] ); |
|
111 | + update_post_meta($invoice->ID, '_wpinv_discount_code', $data['discount_code']); |
|
112 | 112 | } |
113 | 113 | } |
114 | 114 | |
115 | 115 | return $invoice; |
116 | 116 | } |
117 | 117 | |
118 | - protected function set_items( $invoice, $data ) { |
|
119 | - if ( !empty( $data['items'] ) && is_array( $data['items'] ) ) { |
|
118 | + protected function set_items($invoice, $data) { |
|
119 | + if (!empty($data['items']) && is_array($data['items'])) { |
|
120 | 120 | $items_array = array(); |
121 | 121 | |
122 | - if ( !empty( $invoice->country ) ) { |
|
122 | + if (!empty($invoice->country)) { |
|
123 | 123 | $country = $invoice->country; |
124 | - } else if ( !empty( $data['billing_details']['country'] ) ) { |
|
124 | + } else if (!empty($data['billing_details']['country'])) { |
|
125 | 125 | $country = $data['billing_details']['country']; |
126 | 126 | } else { |
127 | - $country = wpinv_default_billing_country( '', $invoice->get_user_id() ); |
|
127 | + $country = wpinv_default_billing_country('', $invoice->get_user_id()); |
|
128 | 128 | } |
129 | 129 | |
130 | - if ( !empty( $invoice->state ) ) { |
|
130 | + if (!empty($invoice->state)) { |
|
131 | 131 | $state = $invoice->state; |
132 | - } else if ( !empty( $data['billing_details']['state'] ) ) { |
|
132 | + } else if (!empty($data['billing_details']['state'])) { |
|
133 | 133 | $state = $data['billing_details']['state']; |
134 | 134 | } else { |
135 | 135 | $state = wpinv_get_default_state(); |
@@ -138,54 +138,54 @@ discard block |
||
138 | 138 | $_POST['country'] = $country; |
139 | 139 | $_POST['state'] = $state; |
140 | 140 | |
141 | - $rate = wpinv_get_tax_rate( $country, $state, 'global' ); |
|
141 | + $rate = wpinv_get_tax_rate($country, $state, 'global'); |
|
142 | 142 | |
143 | 143 | $total_tax = 0; |
144 | - foreach ( $data['items'] as $item ) { |
|
145 | - $id = isset( $item['id'] ) ? sanitize_text_field( $item['id'] ) : ''; |
|
146 | - $title = isset( $item['title'] ) ? sanitize_text_field( $item['title'] ) : ''; |
|
147 | - $desc = isset( $item['description'] ) ? sanitize_text_field( $item['description'] ) : ''; |
|
148 | - $amount = isset( $item['amount'] ) ? wpinv_round_amount( $item['amount'] ) : 0; |
|
144 | + foreach ($data['items'] as $item) { |
|
145 | + $id = isset($item['id']) ? sanitize_text_field($item['id']) : ''; |
|
146 | + $title = isset($item['title']) ? sanitize_text_field($item['title']) : ''; |
|
147 | + $desc = isset($item['description']) ? sanitize_text_field($item['description']) : ''; |
|
148 | + $amount = isset($item['amount']) ? wpinv_round_amount($item['amount']) : 0; |
|
149 | 149 | |
150 | - if ( !empty( $item['vat_rates_class'] ) ) { |
|
150 | + if (!empty($item['vat_rates_class'])) { |
|
151 | 151 | $vat_rates_class = $item['vat_rates_class']; |
152 | 152 | } else { |
153 | 153 | $vat_rates_class = '_standard'; |
154 | 154 | } |
155 | - $vat_rate = wpinv_get_tax_rate( $country, $state, $id ); |
|
155 | + $vat_rate = wpinv_get_tax_rate($country, $state, $id); |
|
156 | 156 | |
157 | - $tax = $amount > 0 ? ( $amount * 0.01 * (float)$vat_rate ) : 0; |
|
157 | + $tax = $amount > 0 ? ($amount * 0.01 * (float)$vat_rate) : 0; |
|
158 | 158 | $total_tax += $tax; |
159 | 159 | |
160 | 160 | $items_array[] = array( |
161 | 161 | 'id' => $id, |
162 | - 'title' => esc_html( $title ), |
|
163 | - 'description' => esc_html( $desc ), |
|
164 | - 'amount' => $amount > 0 ? wpinv_round_amount( $amount ) : 0, |
|
165 | - 'subtotal' => $amount > 0 ? wpinv_round_amount( $amount ) : 0, |
|
162 | + 'title' => esc_html($title), |
|
163 | + 'description' => esc_html($desc), |
|
164 | + 'amount' => $amount > 0 ? wpinv_round_amount($amount) : 0, |
|
165 | + 'subtotal' => $amount > 0 ? wpinv_round_amount($amount) : 0, |
|
166 | 166 | 'vat_rates_class' => $vat_rates_class, |
167 | 167 | 'vat_rate' => $vat_rate, |
168 | - 'tax' => $tax > 0 ? wpinv_round_amount( $tax ) : 0, |
|
168 | + 'tax' => $tax > 0 ? wpinv_round_amount($tax) : 0, |
|
169 | 169 | ); |
170 | 170 | } |
171 | 171 | |
172 | - update_post_meta( $invoice->ID, '_wpinv_tax', wpinv_round_amount( $total_tax ) ); |
|
173 | - $invoice->set( 'tax', wpinv_round_amount( $total_tax ) ); |
|
172 | + update_post_meta($invoice->ID, '_wpinv_tax', wpinv_round_amount($total_tax)); |
|
173 | + $invoice->set('tax', wpinv_round_amount($total_tax)); |
|
174 | 174 | |
175 | - $items_array = apply_filters( 'wpinv_save_invoice_items', $items_array, $data['items'], $invoice ); |
|
175 | + $items_array = apply_filters('wpinv_save_invoice_items', $items_array, $data['items'], $invoice); |
|
176 | 176 | |
177 | - $invoice->set( 'items', $items_array ); |
|
178 | - update_post_meta( $invoice->ID, '_wpinv_items', $items_array ); |
|
177 | + $invoice->set('items', $items_array); |
|
178 | + update_post_meta($invoice->ID, '_wpinv_items', $items_array); |
|
179 | 179 | } |
180 | 180 | |
181 | 181 | return $invoice; |
182 | 182 | } |
183 | 183 | |
184 | - protected function set_invoice_meta( $invoice_id, $invoice_meta ) { |
|
185 | - foreach ( $invoice_meta as $meta_key => $meta_value ) { |
|
184 | + protected function set_invoice_meta($invoice_id, $invoice_meta) { |
|
185 | + foreach ($invoice_meta as $meta_key => $meta_value) { |
|
186 | 186 | |
187 | - if ( is_string( $meta_key) && ! is_protected_meta( $meta_key ) && is_scalar( $meta_value ) ) { |
|
188 | - update_post_meta( $invoice_id, $meta_key, $meta_value ); |
|
187 | + if (is_string($meta_key) && !is_protected_meta($meta_key) && is_scalar($meta_value)) { |
|
188 | + update_post_meta($invoice_id, $meta_key, $meta_value); |
|
189 | 189 | } |
190 | 190 | } |
191 | 191 | } |
@@ -195,9 +195,9 @@ discard block |
||
195 | 195 | class WPInv_API_Exception extends Exception { |
196 | 196 | protected $error_code; |
197 | 197 | |
198 | - public function __construct( $error_code, $error_message, $http_status_code ) { |
|
198 | + public function __construct($error_code, $error_message, $http_status_code) { |
|
199 | 199 | $this->error_code = $error_code; |
200 | - parent::__construct( $error_message, $http_status_code ); |
|
200 | + parent::__construct($error_message, $http_status_code); |
|
201 | 201 | } |
202 | 202 | |
203 | 203 | public function getErrorCode() { |
@@ -1,6 +1,6 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // don't load directly |
3 | -if ( !defined('ABSPATH') ) |
|
3 | +if (!defined('ABSPATH')) |
|
4 | 4 | die('-1'); |
5 | 5 | |
6 | 6 | global $wpinv_euvat, $ajax_cart_details; |
@@ -11,158 +11,158 @@ discard block |
||
11 | 11 | $quantities_enabled = wpinv_item_quantities_enabled(); |
12 | 12 | $use_taxes = wpinv_use_taxes(); |
13 | 13 | $zero_tax = !(float)$invoice->get_tax() > 0 ? true : false; |
14 | -$tax_label = $use_taxes && $invoice->has_vat() ? $wpinv_euvat->get_vat_name() : __( 'Tax', 'invoicing' ); |
|
15 | -$tax_title = !$zero_tax && $use_taxes ? ( wpinv_prices_include_tax() ? wp_sprintf( __( '(%s Incl.)', 'invoicing' ), $tax_label ) : wp_sprintf( __( '(%s Excl.)', 'invoicing' ), $tax_label ) ) : ''; |
|
14 | +$tax_label = $use_taxes && $invoice->has_vat() ? $wpinv_euvat->get_vat_name() : __('Tax', 'invoicing'); |
|
15 | +$tax_title = !$zero_tax && $use_taxes ? (wpinv_prices_include_tax() ? wp_sprintf(__('(%s Incl.)', 'invoicing'), $tax_label) : wp_sprintf(__('(%s Excl.)', 'invoicing'), $tax_label)) : ''; |
|
16 | 16 | |
17 | -do_action( 'wpinv_before_email_items', $invoice ); ?> |
|
17 | +do_action('wpinv_before_email_items', $invoice); ?> |
|
18 | 18 | <div id="wpinv-email-items"> |
19 | - <h3 class="wpinv-items-t"><?php echo apply_filters( 'wpinv_email_items_title', __( 'Items', 'invoicing' ) ); ?></h3> |
|
19 | + <h3 class="wpinv-items-t"><?php echo apply_filters('wpinv_email_items_title', __('Items', 'invoicing')); ?></h3> |
|
20 | 20 | <table id="wpinv_checkout_cart" class="table table-bordered table-hover"> |
21 | 21 | <thead> |
22 | 22 | <tr class="wpinv_cart_header_row"> |
23 | - <?php do_action( 'wpinv_email_items_table_header_first' ); ?> |
|
24 | - <th class="wpinv_cart_item_name text-left"><?php _e( 'Item Name', 'invoicing' ); ?></th> |
|
25 | - <th class="wpinv_cart_item_price text-right"><?php _e( 'Item Price', 'invoicing' ); ?></th> |
|
26 | - <?php if ( $quantities_enabled ) { ?> |
|
27 | - <th class="wpinv_cart_item_qty text-right"><?php _e( 'Qty', 'invoicing' ); ?></th> |
|
23 | + <?php do_action('wpinv_email_items_table_header_first'); ?> |
|
24 | + <th class="wpinv_cart_item_name text-left"><?php _e('Item Name', 'invoicing'); ?></th> |
|
25 | + <th class="wpinv_cart_item_price text-right"><?php _e('Item Price', 'invoicing'); ?></th> |
|
26 | + <?php if ($quantities_enabled) { ?> |
|
27 | + <th class="wpinv_cart_item_qty text-right"><?php _e('Qty', 'invoicing'); ?></th> |
|
28 | 28 | <?php } ?> |
29 | - <?php if ( !$zero_tax && $use_taxes ) { ?> |
|
29 | + <?php if (!$zero_tax && $use_taxes) { ?> |
|
30 | 30 | <th class="wpinv_cart_item_tax text-right"><?php echo $tax_label . ' <span class="normal small">(%)</span>'; ?></th> |
31 | 31 | <?php } ?> |
32 | - <th class="wpinv_cart_item_subtotal text-right"><?php echo __( 'Item Total', 'invoicing' ) . ' <span class="normal small">' . $tax_title . '<span>'; ?></th> |
|
33 | - <?php do_action( 'wpinv_email_items_table_header_last' ); ?> |
|
32 | + <th class="wpinv_cart_item_subtotal text-right"><?php echo __('Item Total', 'invoicing') . ' <span class="normal small">' . $tax_title . '<span>'; ?></th> |
|
33 | + <?php do_action('wpinv_email_items_table_header_last'); ?> |
|
34 | 34 | </tr> |
35 | 35 | </thead> |
36 | 36 | <tbody> |
37 | 37 | <?php |
38 | - do_action( 'wpinv_email_items_before' ); |
|
39 | - if ( $cart_items ) { |
|
40 | - foreach ( $cart_items as $key => $item ) { |
|
41 | - $wpi_item = $item['id'] ? new WPInv_Item( $item['id'] ) : NULL; |
|
38 | + do_action('wpinv_email_items_before'); |
|
39 | + if ($cart_items) { |
|
40 | + foreach ($cart_items as $key => $item) { |
|
41 | + $wpi_item = $item['id'] ? new WPInv_Item($item['id']) : NULL; |
|
42 | 42 | ?> |
43 | - <tr class="wpinv_cart_item" id="wpinv_cart_item_<?php echo esc_attr( $key ) . '_' . esc_attr( $item['id'] ); ?>" data-item-id="<?php echo esc_attr( $item['id'] ); ?>"> |
|
44 | - <?php do_action( 'wpinv_email_items_table_body_first', $item ); ?> |
|
43 | + <tr class="wpinv_cart_item" id="wpinv_cart_item_<?php echo esc_attr($key) . '_' . esc_attr($item['id']); ?>" data-item-id="<?php echo esc_attr($item['id']); ?>"> |
|
44 | + <?php do_action('wpinv_email_items_table_body_first', $item); ?> |
|
45 | 45 | <td class="wpinv_cart_item_name text-left"> |
46 | 46 | <?php |
47 | - if ( current_theme_supports( 'post-thumbnails' ) && has_post_thumbnail( $item['id'] ) ) { |
|
47 | + if (current_theme_supports('post-thumbnails') && has_post_thumbnail($item['id'])) { |
|
48 | 48 | echo '<div class="wpinv_cart_item_image">'; |
49 | - echo get_the_post_thumbnail( $item['id'], apply_filters( 'wpinv_checkout_image_size', array( 25,25 ) ) ); |
|
49 | + echo get_the_post_thumbnail($item['id'], apply_filters('wpinv_checkout_image_size', array(25, 25))); |
|
50 | 50 | echo '</div>'; |
51 | 51 | } |
52 | - $item_title = esc_html( wpinv_get_cart_item_name( $item ) ) . wpinv_get_item_suffix( $wpi_item ); |
|
52 | + $item_title = esc_html(wpinv_get_cart_item_name($item)) . wpinv_get_item_suffix($wpi_item); |
|
53 | 53 | echo '<span class="wpinv_email_cart_item_title">' . $item_title . '</span>'; |
54 | 54 | |
55 | 55 | $summary = ''; |
56 | - if ( !empty( $wpi_item ) && $wpi_item->is_package() && !empty( $item['meta']['post_id'] ) ) { |
|
57 | - $post_link = '<a href="' . get_permalink( $item['meta']['post_id'] ) .'" target="_blank">' . (!empty($item['meta']['invoice_title']) ? $item['meta']['invoice_title'] : get_the_title( $item['meta']['post_id']) ) . '</a>'; |
|
58 | - $summary = wp_sprintf( __( '%s: %s', 'invoicing' ), $wpi_item->get_custom_singular_name(), $post_link ); |
|
56 | + if (!empty($wpi_item) && $wpi_item->is_package() && !empty($item['meta']['post_id'])) { |
|
57 | + $post_link = '<a href="' . get_permalink($item['meta']['post_id']) . '" target="_blank">' . (!empty($item['meta']['invoice_title']) ? $item['meta']['invoice_title'] : get_the_title($item['meta']['post_id'])) . '</a>'; |
|
58 | + $summary = wp_sprintf(__('%s: %s', 'invoicing'), $wpi_item->get_custom_singular_name(), $post_link); |
|
59 | 59 | } |
60 | 60 | |
61 | - $summary = apply_filters( 'wpinv_email_invoice_line_item_summary', $summary, $item, $wpi_item, $invoice ); |
|
62 | - if ( !empty( $summary ) ) { |
|
61 | + $summary = apply_filters('wpinv_email_invoice_line_item_summary', $summary, $item, $wpi_item, $invoice); |
|
62 | + if (!empty($summary)) { |
|
63 | 63 | echo '<p class="small">' . $summary . '</p>'; |
64 | 64 | } |
65 | 65 | |
66 | - do_action( 'wpinv_email_cart_item_title_after', $item, $key ); |
|
66 | + do_action('wpinv_email_cart_item_title_after', $item, $key); |
|
67 | 67 | ?> |
68 | 68 | </td> |
69 | 69 | <td class="wpinv_cart_item_price text-right"> |
70 | 70 | <?php |
71 | - echo wpinv_cart_item_price( $item ); |
|
72 | - do_action( 'wpinv_email_cart_item_price_after', $item, $key ); |
|
71 | + echo wpinv_cart_item_price($item); |
|
72 | + do_action('wpinv_email_cart_item_price_after', $item, $key); |
|
73 | 73 | ?> |
74 | 74 | </td> |
75 | - <?php if ( $quantities_enabled ) { ?> |
|
75 | + <?php if ($quantities_enabled) { ?> |
|
76 | 76 | <td class="wpinv_cart_item_qty text-right"> |
77 | 77 | <?php |
78 | - echo wpinv_get_cart_item_quantity( $item ); |
|
79 | - do_action( 'wpinv_email_item_quantitiy', $item, $key ); |
|
78 | + echo wpinv_get_cart_item_quantity($item); |
|
79 | + do_action('wpinv_email_item_quantitiy', $item, $key); |
|
80 | 80 | ?> |
81 | 81 | </td> |
82 | 82 | <?php } ?> |
83 | - <?php if ( !$zero_tax && $use_taxes ) { ?> |
|
83 | + <?php if (!$zero_tax && $use_taxes) { ?> |
|
84 | 84 | <td class="wpinv_cart_item_tax text-right"> |
85 | 85 | <?php |
86 | - echo wpinv_cart_item_tax( $item ); |
|
87 | - do_action( 'wpinv_email_item_tax', $item, $key ); |
|
86 | + echo wpinv_cart_item_tax($item); |
|
87 | + do_action('wpinv_email_item_tax', $item, $key); |
|
88 | 88 | ?> |
89 | 89 | </td> |
90 | 90 | <?php } ?> |
91 | 91 | <td class="wpinv_cart_item_subtotal text-right"> |
92 | 92 | <?php |
93 | - echo wpinv_cart_item_subtotal( $item ); |
|
94 | - do_action( 'wpinv_email_item_subtotal', $item, $key ); |
|
93 | + echo wpinv_cart_item_subtotal($item); |
|
94 | + do_action('wpinv_email_item_subtotal', $item, $key); |
|
95 | 95 | ?> |
96 | 96 | </td> |
97 | - <?php do_action( 'wpinv_email_items_table_body_last', $item, $key ); ?> |
|
97 | + <?php do_action('wpinv_email_items_table_body_last', $item, $key); ?> |
|
98 | 98 | </tr> |
99 | 99 | <?php } ?> |
100 | 100 | <?php } ?> |
101 | - <?php do_action( 'wpinv_email_items_middle' ); ?> |
|
102 | - <?php do_action( 'wpinv_email_items_after' ); ?> |
|
101 | + <?php do_action('wpinv_email_items_middle'); ?> |
|
102 | + <?php do_action('wpinv_email_items_after'); ?> |
|
103 | 103 | </tbody> |
104 | 104 | <tfoot> |
105 | - <?php $cart_columns = wpinv_checkout_cart_columns(); if ( $zero_tax && $use_taxes ) { $cart_columns--; } ?> |
|
106 | - <?php if ( has_action( 'wpinv_email_footer_buttons' ) ) { ?> |
|
105 | + <?php $cart_columns = wpinv_checkout_cart_columns(); if ($zero_tax && $use_taxes) { $cart_columns--; } ?> |
|
106 | + <?php if (has_action('wpinv_email_footer_buttons')) { ?> |
|
107 | 107 | <tr class="wpinv_cart_footer_row"> |
108 | - <?php do_action( 'wpinv_email_items_table_buttons_first', $cart_items ); ?> |
|
109 | - <td colspan="<?php echo ( $cart_columns ); ?>"> |
|
110 | - <?php do_action( 'wpinv_email_footer_buttons' ); ?> |
|
108 | + <?php do_action('wpinv_email_items_table_buttons_first', $cart_items); ?> |
|
109 | + <td colspan="<?php echo ($cart_columns); ?>"> |
|
110 | + <?php do_action('wpinv_email_footer_buttons'); ?> |
|
111 | 111 | </td> |
112 | - <?php do_action( 'wpinv_email_items_table_buttons_first', $cart_items ); ?> |
|
112 | + <?php do_action('wpinv_email_items_table_buttons_first', $cart_items); ?> |
|
113 | 113 | </tr> |
114 | 114 | <?php } ?> |
115 | 115 | |
116 | - <?php if ( !$zero_tax && $use_taxes && !wpinv_prices_include_tax() && wpinv_is_cart_taxed() ) { ?> |
|
116 | + <?php if (!$zero_tax && $use_taxes && !wpinv_prices_include_tax() && wpinv_is_cart_taxed()) { ?> |
|
117 | 117 | <tr class="wpinv_cart_footer_row wpinv_cart_subtotal_row"> |
118 | - <?php do_action( 'wpinv_email_items_table_subtotal_first', $cart_items ); ?> |
|
119 | - <td colspan="<?php echo ( $cart_columns - 1 ); ?>" class="wpinv_cart_subtotal_label text-right"> |
|
120 | - <strong><?php _e( 'Sub-Total', 'invoicing' ); ?>:</strong> |
|
118 | + <?php do_action('wpinv_email_items_table_subtotal_first', $cart_items); ?> |
|
119 | + <td colspan="<?php echo ($cart_columns - 1); ?>" class="wpinv_cart_subtotal_label text-right"> |
|
120 | + <strong><?php _e('Sub-Total', 'invoicing'); ?>:</strong> |
|
121 | 121 | </td> |
122 | 122 | <td class="wpinv_cart_subtotal text-right"> |
123 | - <span class="wpinv_cart_subtotal_amount bold"><?php echo $invoice->get_subtotal( true ); ?></span> |
|
123 | + <span class="wpinv_cart_subtotal_amount bold"><?php echo $invoice->get_subtotal(true); ?></span> |
|
124 | 124 | </td> |
125 | - <?php do_action( 'wpinv_email_items_table_subtotal_last', $cart_items, $invoice ); ?> |
|
125 | + <?php do_action('wpinv_email_items_table_subtotal_last', $cart_items, $invoice); ?> |
|
126 | 126 | </tr> |
127 | 127 | <?php } ?> |
128 | 128 | |
129 | - <?php if ( wpinv_discount( $invoice_id, false ) > 0 ) { ?> |
|
129 | + <?php if (wpinv_discount($invoice_id, false) > 0) { ?> |
|
130 | 130 | <tr class="wpinv_cart_footer_row wpinv_cart_discount_row"> |
131 | - <?php do_action( 'wpinv_receipt_items_table_discount_first', $cart_items, $invoice ); ?> |
|
132 | - <td colspan="<?php echo ( $cart_columns - 1 ); ?>" class="wpinv_cart_discount_label text-right"> |
|
133 | - <strong><?php wpinv_get_discount_label( wpinv_discount_code( $invoice_id ) ); ?>:</strong> |
|
131 | + <?php do_action('wpinv_receipt_items_table_discount_first', $cart_items, $invoice); ?> |
|
132 | + <td colspan="<?php echo ($cart_columns - 1); ?>" class="wpinv_cart_discount_label text-right"> |
|
133 | + <strong><?php wpinv_get_discount_label(wpinv_discount_code($invoice_id)); ?>:</strong> |
|
134 | 134 | </td> |
135 | 135 | <td class="wpinv_cart_discount text-right"> |
136 | - <span class="wpinv_cart_discount_amount"><?php echo wpinv_discount( $invoice_id, true, true ); ?></span> |
|
136 | + <span class="wpinv_cart_discount_amount"><?php echo wpinv_discount($invoice_id, true, true); ?></span> |
|
137 | 137 | </td> |
138 | - <?php do_action( 'wpinv_receipt_items_table_discount_last', $cart_items, $invoice ); ?> |
|
138 | + <?php do_action('wpinv_receipt_items_table_discount_last', $cart_items, $invoice); ?> |
|
139 | 139 | </tr> |
140 | 140 | <?php } ?> |
141 | 141 | |
142 | - <?php if ( !$zero_tax && $use_taxes && wpinv_is_cart_taxed() ) { ?> |
|
142 | + <?php if (!$zero_tax && $use_taxes && wpinv_is_cart_taxed()) { ?> |
|
143 | 143 | <tr class="wpinv_cart_footer_row wpinv_cart_tax_row"> |
144 | - <?php do_action( 'wpinv_email_items_table_tax_first', $cart_items, $invoice ); ?> |
|
145 | - <td colspan="<?php echo ( $cart_columns - 1 ); ?>" class="wpinv_cart_tax_label text-right"> |
|
144 | + <?php do_action('wpinv_email_items_table_tax_first', $cart_items, $invoice); ?> |
|
145 | + <td colspan="<?php echo ($cart_columns - 1); ?>" class="wpinv_cart_tax_label text-right"> |
|
146 | 146 | <strong><?php echo $tax_label; ?>:</strong> |
147 | 147 | </td> |
148 | 148 | <td class="wpinv_cart_tax text-right"> |
149 | - <span class="wpinv_cart_tax_amount"><?php echo $invoice->get_tax( true ); ?></span> |
|
149 | + <span class="wpinv_cart_tax_amount"><?php echo $invoice->get_tax(true); ?></span> |
|
150 | 150 | </td> |
151 | - <?php do_action( 'wpinv_email_items_table_tax_last', $cart_items, $invoice ); ?> |
|
151 | + <?php do_action('wpinv_email_items_table_tax_last', $cart_items, $invoice); ?> |
|
152 | 152 | </tr> |
153 | 153 | <?php } ?> |
154 | 154 | |
155 | 155 | <tr class="wpinv_cart_footer_row"> |
156 | - <?php do_action( 'wpinv_email_items_table_footer_first', $cart_items, $invoice ); ?> |
|
157 | - <td colspan="<?php echo ( $cart_columns - 1 ); ?>" class="wpinv_cart_total_label text-right"> |
|
158 | - <?php echo apply_filters( 'wpinv_email_cart_total_label', '<strong>' . __( 'Total', 'invoicing' ) . ':</strong>', $invoice ); ?> |
|
156 | + <?php do_action('wpinv_email_items_table_footer_first', $cart_items, $invoice); ?> |
|
157 | + <td colspan="<?php echo ($cart_columns - 1); ?>" class="wpinv_cart_total_label text-right"> |
|
158 | + <?php echo apply_filters('wpinv_email_cart_total_label', '<strong>' . __('Total', 'invoicing') . ':</strong>', $invoice); ?> |
|
159 | 159 | </td> |
160 | 160 | <td class="wpinv_cart_total text-right"> |
161 | - <span class="wpinv_cart_amount bold"><?php echo $invoice->get_total( true ); ?></span> |
|
161 | + <span class="wpinv_cart_amount bold"><?php echo $invoice->get_total(true); ?></span> |
|
162 | 162 | </td> |
163 | - <?php do_action( 'wpinv_email_items_table_footer_last', $cart_items, $invoice ); ?> |
|
163 | + <?php do_action('wpinv_email_items_table_footer_last', $cart_items, $invoice); ?> |
|
164 | 164 | </tr> |
165 | 165 | </tfoot> |
166 | 166 | </table> |
167 | 167 | </div> |
168 | -<?php do_action( 'wpinv_after_email_items', $invoice ); ?> |
|
169 | 168 | \ No newline at end of file |
169 | +<?php do_action('wpinv_after_email_items', $invoice); ?> |
|
170 | 170 | \ No newline at end of file |
@@ -5,140 +5,140 @@ |
||
5 | 5 | |
6 | 6 | global $wpinv_euvat, $post, $ajax_cart_details, $wpi_cart_columns, $wpi_session; |
7 | 7 | $invoice = wpinv_get_invoice_cart(); |
8 | -$cart_items = !empty( $ajax_cart_details ) ? $ajax_cart_details : wpinv_get_cart_content_details(); |
|
8 | +$cart_items = !empty($ajax_cart_details) ? $ajax_cart_details : wpinv_get_cart_content_details(); |
|
9 | 9 | $quantities_enabled = wpinv_item_quantities_enabled(); |
10 | 10 | $use_taxes = wpinv_use_taxes(); |
11 | 11 | $tax_label = $wpinv_euvat->tax_label(); |
12 | -$tax_title = $use_taxes ? ( wpinv_prices_include_tax() ? wp_sprintf( __( '(%s Incl.)', 'invoicing' ), $tax_label ) : wp_sprintf( __( '(%s Excl.)', 'invoicing' ), $tax_label ) ) : ''; |
|
12 | +$tax_title = $use_taxes ? (wpinv_prices_include_tax() ? wp_sprintf(__('(%s Incl.)', 'invoicing'), $tax_label) : wp_sprintf(__('(%s Excl.)', 'invoicing'), $tax_label)) : ''; |
|
13 | 13 | ?> |
14 | 14 | <table id="wpinv_checkout_cart" class="table table-bordered table-hover"> |
15 | 15 | <thead> |
16 | 16 | <tr class="wpinv_cart_header_row"> |
17 | - <?php do_action( 'wpinv_checkout_table_header_first' ); ?> |
|
18 | - <th class="wpinv_cart_item_name text-left"><?php _e( 'Item Name', 'invoicing' ); ?></th> |
|
19 | - <th class="wpinv_cart_item_price text-right"><?php _e( 'Item Price', 'invoicing' ); ?></th> |
|
20 | - <?php if ( $quantities_enabled ) { ?> |
|
21 | - <th class="wpinv_cart_item_qty text-right"><?php _e( 'Qty', 'invoicing' ); ?></th> |
|
17 | + <?php do_action('wpinv_checkout_table_header_first'); ?> |
|
18 | + <th class="wpinv_cart_item_name text-left"><?php _e('Item Name', 'invoicing'); ?></th> |
|
19 | + <th class="wpinv_cart_item_price text-right"><?php _e('Item Price', 'invoicing'); ?></th> |
|
20 | + <?php if ($quantities_enabled) { ?> |
|
21 | + <th class="wpinv_cart_item_qty text-right"><?php _e('Qty', 'invoicing'); ?></th> |
|
22 | 22 | <?php } ?> |
23 | - <?php if ( $use_taxes ) { ?> |
|
23 | + <?php if ($use_taxes) { ?> |
|
24 | 24 | <th class="wpinv_cart_item_tax text-right"><?php echo $tax_label . ' <span class="normal small">(%)</span>'; ?></th> |
25 | 25 | <?php } ?> |
26 | - <th class="wpinv_cart_item_subtotal text-right"><?php echo __( 'Item Total', 'invoicing' ) . ' <span class="normal small">' . $tax_title . '<span>'; ?></th> |
|
27 | - <?php do_action( 'wpinv_checkout_table_header_last' ); ?> |
|
26 | + <th class="wpinv_cart_item_subtotal text-right"><?php echo __('Item Total', 'invoicing') . ' <span class="normal small">' . $tax_title . '<span>'; ?></th> |
|
27 | + <?php do_action('wpinv_checkout_table_header_last'); ?> |
|
28 | 28 | </tr> |
29 | 29 | </thead> |
30 | 30 | <tbody> |
31 | 31 | <?php |
32 | - do_action( 'wpinv_cart_items_before' ); |
|
32 | + do_action('wpinv_cart_items_before'); |
|
33 | 33 | |
34 | - if ( $cart_items ) { |
|
35 | - foreach ( $cart_items as $key => $item ) { |
|
36 | - $wpi_item = !empty( $item['id'] ) ? new WPInv_Item( $item['id'] ) : NULL; |
|
34 | + if ($cart_items) { |
|
35 | + foreach ($cart_items as $key => $item) { |
|
36 | + $wpi_item = !empty($item['id']) ? new WPInv_Item($item['id']) : NULL; |
|
37 | 37 | ?> |
38 | - <tr class="wpinv_cart_item" id="wpinv_cart_item_<?php echo esc_attr( $key ) . '_' . esc_attr( $item['id'] ); ?>" data-item-id="<?php echo esc_attr( $item['id'] ); ?>"> |
|
39 | - <?php do_action( 'wpinv_checkout_table_body_first', $item ); ?> |
|
38 | + <tr class="wpinv_cart_item" id="wpinv_cart_item_<?php echo esc_attr($key) . '_' . esc_attr($item['id']); ?>" data-item-id="<?php echo esc_attr($item['id']); ?>"> |
|
39 | + <?php do_action('wpinv_checkout_table_body_first', $item); ?> |
|
40 | 40 | <td class="wpinv_cart_item_name text-left"> |
41 | 41 | <?php |
42 | - if ( current_theme_supports( 'post-thumbnails' ) && has_post_thumbnail( $item['id'] ) ) { |
|
42 | + if (current_theme_supports('post-thumbnails') && has_post_thumbnail($item['id'])) { |
|
43 | 43 | echo '<div class="wpinv_cart_item_image">'; |
44 | - echo get_the_post_thumbnail( $item['id'], apply_filters( 'wpinv_checkout_image_size', array( 25,25 ) ) ); |
|
44 | + echo get_the_post_thumbnail($item['id'], apply_filters('wpinv_checkout_image_size', array(25, 25))); |
|
45 | 45 | echo '</div>'; |
46 | 46 | } |
47 | - $item_title = esc_html( wpinv_get_cart_item_name( $item ) ) . wpinv_get_item_suffix( $wpi_item ); |
|
47 | + $item_title = esc_html(wpinv_get_cart_item_name($item)) . wpinv_get_item_suffix($wpi_item); |
|
48 | 48 | echo '<span class="wpinv_checkout_cart_item_title">' . $item_title . '</span>'; |
49 | - if ( !empty( $wpi_item ) && $wpi_item->is_package() && !empty( $item['meta']['post_id'] ) ) { |
|
50 | - $post_link = !empty( $item['meta']['invoice_title'] ) ? $item['meta']['invoice_title'] : get_the_title( $item['meta']['post_id'] ); |
|
51 | - $summary = wp_sprintf( __( '%s: %s', 'invoicing' ), $wpi_item->get_custom_singular_name(), $post_link ); |
|
52 | - echo '<small class="meta">' . wpautop( wp_kses_post( $summary ) ) . '</small>'; |
|
49 | + if (!empty($wpi_item) && $wpi_item->is_package() && !empty($item['meta']['post_id'])) { |
|
50 | + $post_link = !empty($item['meta']['invoice_title']) ? $item['meta']['invoice_title'] : get_the_title($item['meta']['post_id']); |
|
51 | + $summary = wp_sprintf(__('%s: %s', 'invoicing'), $wpi_item->get_custom_singular_name(), $post_link); |
|
52 | + echo '<small class="meta">' . wpautop(wp_kses_post($summary)) . '</small>'; |
|
53 | 53 | } |
54 | - do_action( 'wpinv_checkout_cart_item_title_after', $item, $key ); |
|
54 | + do_action('wpinv_checkout_cart_item_title_after', $item, $key); |
|
55 | 55 | ?> |
56 | 56 | </td> |
57 | 57 | <td class="wpinv_cart_item_price text-right"> |
58 | 58 | <?php |
59 | - echo wpinv_cart_item_price( $item ); |
|
60 | - do_action( 'wpinv_checkout_cart_item_price_after', $item, $key ); |
|
59 | + echo wpinv_cart_item_price($item); |
|
60 | + do_action('wpinv_checkout_cart_item_price_after', $item, $key); |
|
61 | 61 | ?> |
62 | 62 | </td> |
63 | - <?php if ( $quantities_enabled ) { ?> |
|
63 | + <?php if ($quantities_enabled) { ?> |
|
64 | 64 | <td class="wpinv_cart_item_qty text-right"> |
65 | 65 | <?php |
66 | - echo wpinv_get_cart_item_quantity( $item ); |
|
67 | - do_action( 'wpinv_cart_item_quantitiy', $item, $key ); |
|
66 | + echo wpinv_get_cart_item_quantity($item); |
|
67 | + do_action('wpinv_cart_item_quantitiy', $item, $key); |
|
68 | 68 | ?> |
69 | 69 | </td> |
70 | 70 | <?php } ?> |
71 | - <?php if ( $use_taxes ) { ?> |
|
71 | + <?php if ($use_taxes) { ?> |
|
72 | 72 | <td class="wpinv_cart_item_tax text-right"> |
73 | 73 | <?php |
74 | - echo wpinv_cart_item_tax( $item ); |
|
74 | + echo wpinv_cart_item_tax($item); |
|
75 | 75 | //echo wpinv_get_cart_item_tax( $wpi_item->ID, $subtotal = '', $options = array() ); |
76 | - do_action( 'wpinv_cart_item_tax', $item, $key ); |
|
76 | + do_action('wpinv_cart_item_tax', $item, $key); |
|
77 | 77 | ?> |
78 | 78 | </td> |
79 | 79 | <?php } ?> |
80 | 80 | <td class="wpinv_cart_item_subtotal text-right"> |
81 | 81 | <?php |
82 | - echo wpinv_cart_item_subtotal( $item ); |
|
83 | - do_action( 'wpinv_cart_item_subtotal', $item, $key ); |
|
82 | + echo wpinv_cart_item_subtotal($item); |
|
83 | + do_action('wpinv_cart_item_subtotal', $item, $key); |
|
84 | 84 | ?> |
85 | 85 | </td> |
86 | - <?php do_action( 'wpinv_checkout_table_body_last', $item, $key ); ?> |
|
86 | + <?php do_action('wpinv_checkout_table_body_last', $item, $key); ?> |
|
87 | 87 | </tr> |
88 | 88 | <?php } ?> |
89 | 89 | <?php } ?> |
90 | - <?php do_action( 'wpinv_cart_items_middle' ); ?> |
|
91 | - <?php do_action( 'wpinv_cart_items_after' ); ?> |
|
90 | + <?php do_action('wpinv_cart_items_middle'); ?> |
|
91 | + <?php do_action('wpinv_cart_items_after'); ?> |
|
92 | 92 | </tbody> |
93 | 93 | <tfoot> |
94 | 94 | <?php $cart_columns = wpinv_checkout_cart_columns(); ?> |
95 | - <?php if ( has_action( 'wpinv_cart_footer_buttons' ) ) { ?> |
|
95 | + <?php if (has_action('wpinv_cart_footer_buttons')) { ?> |
|
96 | 96 | <tr class="wpinv_cart_footer_row"> |
97 | - <?php do_action( 'wpinv_checkout_table_buttons_first', $cart_items ); ?> |
|
98 | - <td colspan="<?php echo ( $cart_columns ); ?>"> |
|
99 | - <?php do_action( 'wpinv_cart_footer_buttons' ); ?> |
|
97 | + <?php do_action('wpinv_checkout_table_buttons_first', $cart_items); ?> |
|
98 | + <td colspan="<?php echo ($cart_columns); ?>"> |
|
99 | + <?php do_action('wpinv_cart_footer_buttons'); ?> |
|
100 | 100 | </td> |
101 | - <?php do_action( 'wpinv_checkout_table_buttons_first', $cart_items ); ?> |
|
101 | + <?php do_action('wpinv_checkout_table_buttons_first', $cart_items); ?> |
|
102 | 102 | </tr> |
103 | 103 | <?php } ?> |
104 | 104 | |
105 | - <?php if ( $use_taxes && !wpinv_prices_include_tax() ) { ?> |
|
106 | - <tr class="wpinv_cart_footer_row wpinv_cart_subtotal_row"<?php if ( !wpinv_is_cart_taxed() ) echo ' style="display:none;"'; ?>> |
|
107 | - <?php do_action( 'wpinv_checkout_table_subtotal_first', $cart_items ); ?> |
|
108 | - <td colspan="<?php echo ( $cart_columns - 1 ); ?>" class="wpinv_cart_subtotal_label text-right"> |
|
109 | - <strong><?php _e( 'Sub-Total', 'invoicing' ); ?>:</strong> |
|
105 | + <?php if ($use_taxes && !wpinv_prices_include_tax()) { ?> |
|
106 | + <tr class="wpinv_cart_footer_row wpinv_cart_subtotal_row"<?php if (!wpinv_is_cart_taxed()) echo ' style="display:none;"'; ?>> |
|
107 | + <?php do_action('wpinv_checkout_table_subtotal_first', $cart_items); ?> |
|
108 | + <td colspan="<?php echo ($cart_columns - 1); ?>" class="wpinv_cart_subtotal_label text-right"> |
|
109 | + <strong><?php _e('Sub-Total', 'invoicing'); ?>:</strong> |
|
110 | 110 | </td> |
111 | 111 | <td class="wpinv_cart_subtotal text-right"> |
112 | - <span class="wpinv_cart_subtotal_amount bold"><?php echo wpinv_cart_subtotal( $cart_items ); ?></span> |
|
112 | + <span class="wpinv_cart_subtotal_amount bold"><?php echo wpinv_cart_subtotal($cart_items); ?></span> |
|
113 | 113 | </td> |
114 | - <?php do_action( 'wpinv_checkout_table_subtotal_last', $cart_items ); ?> |
|
114 | + <?php do_action('wpinv_checkout_table_subtotal_last', $cart_items); ?> |
|
115 | 115 | </tr> |
116 | 116 | <?php } ?> |
117 | 117 | |
118 | - <?php $wpi_cart_columns = $cart_columns - 1; wpinv_cart_discounts_html( $cart_items ); ?> |
|
118 | + <?php $wpi_cart_columns = $cart_columns - 1; wpinv_cart_discounts_html($cart_items); ?> |
|
119 | 119 | |
120 | - <?php if ( $use_taxes ) { ?> |
|
121 | - <tr class="wpinv_cart_footer_row wpinv_cart_tax_row"<?php if( !wpinv_is_cart_taxed() ) echo ' style="display:none;"'; ?>> |
|
122 | - <?php do_action( 'wpinv_checkout_table_tax_first' ); ?> |
|
123 | - <td colspan="<?php echo ( $cart_columns - 1 ); ?>" class="wpinv_cart_tax_label text-right"> |
|
120 | + <?php if ($use_taxes) { ?> |
|
121 | + <tr class="wpinv_cart_footer_row wpinv_cart_tax_row"<?php if (!wpinv_is_cart_taxed()) echo ' style="display:none;"'; ?>> |
|
122 | + <?php do_action('wpinv_checkout_table_tax_first'); ?> |
|
123 | + <td colspan="<?php echo ($cart_columns - 1); ?>" class="wpinv_cart_tax_label text-right"> |
|
124 | 124 | <strong><?php echo $tax_label; ?>:</strong> |
125 | 125 | </td> |
126 | 126 | <td class="wpinv_cart_tax text-right"> |
127 | - <span class="wpinv_cart_tax_amount" data-tax="<?php echo wpinv_get_cart_tax( $cart_items ); ?>"><?php echo esc_html( wpinv_cart_tax( $cart_items ) ); ?></span> |
|
127 | + <span class="wpinv_cart_tax_amount" data-tax="<?php echo wpinv_get_cart_tax($cart_items); ?>"><?php echo esc_html(wpinv_cart_tax($cart_items)); ?></span> |
|
128 | 128 | </td> |
129 | - <?php do_action( 'wpinv_checkout_table_tax_last' ); ?> |
|
129 | + <?php do_action('wpinv_checkout_table_tax_last'); ?> |
|
130 | 130 | </tr> |
131 | 131 | <?php } ?> |
132 | 132 | |
133 | 133 | <tr class="wpinv_cart_footer_row wpinv_cart_total_row"> |
134 | - <?php do_action( 'wpinv_checkout_table_footer_first' ); ?> |
|
135 | - <td colspan="<?php echo ( $cart_columns - 1 ); ?>" class="wpinv_cart_total_label text-right"> |
|
136 | - <?php echo apply_filters( 'wpinv_cart_total_label', '<strong>' . __( 'Total', 'invoicing' ) . ':</strong>', $invoice ); ?> |
|
134 | + <?php do_action('wpinv_checkout_table_footer_first'); ?> |
|
135 | + <td colspan="<?php echo ($cart_columns - 1); ?>" class="wpinv_cart_total_label text-right"> |
|
136 | + <?php echo apply_filters('wpinv_cart_total_label', '<strong>' . __('Total', 'invoicing') . ':</strong>', $invoice); ?> |
|
137 | 137 | </td> |
138 | 138 | <td class="wpinv_cart_total text-right"> |
139 | - <span class="wpinv_cart_amount bold" data-subtotal="<?php echo wpinv_get_cart_total( $cart_items ); ?>" data-total="<?php echo wpinv_get_cart_total( NULL, NULL, $invoice ); ?>"><?php wpinv_cart_total( $cart_items, true, $invoice ); ?></span> |
|
139 | + <span class="wpinv_cart_amount bold" data-subtotal="<?php echo wpinv_get_cart_total($cart_items); ?>" data-total="<?php echo wpinv_get_cart_total(NULL, NULL, $invoice); ?>"><?php wpinv_cart_total($cart_items, true, $invoice); ?></span> |
|
140 | 140 | </td> |
141 | - <?php do_action( 'wpinv_checkout_table_footer_last' ); ?> |
|
141 | + <?php do_action('wpinv_checkout_table_footer_last'); ?> |
|
142 | 142 | </tr> |
143 | 143 | </tfoot> |
144 | 144 | </table> |
@@ -1,34 +1,34 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // MUST have WordPress. |
3 | -if ( !defined( 'WPINC' ) ) { |
|
4 | - exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) ); |
|
3 | +if (!defined('WPINC')) { |
|
4 | + exit('Do NOT access this file directly: ' . basename(__FILE__)); |
|
5 | 5 | } |
6 | 6 | |
7 | 7 | class WPInv_Meta_Box_Billing_Details { |
8 | - public static function output( $post ) { |
|
8 | + public static function output($post) { |
|
9 | 9 | global $user_ID; |
10 | - $post_id = !empty( $post->ID ) ? $post->ID : 0; |
|
11 | - $invoice = new WPInv_Invoice( $post_id ); |
|
10 | + $post_id = !empty($post->ID) ? $post->ID : 0; |
|
11 | + $invoice = new WPInv_Invoice($post_id); |
|
12 | 12 | ?> |
13 | 13 | <div class="gdmbx2-wrap form-table"> |
14 | 14 | <div id="gdmbx2-metabox-wpinv_address" class="gdmbx2-metabox gdmbx-field-list wpinv-address gdmbx-row"> |
15 | 15 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-user-id table-layout"> |
16 | 16 | <div class="gdmbx-th"> |
17 | - <label for="post_author_override"><?php _e( 'Customer', 'invoicing' );?></label> |
|
17 | + <label for="post_author_override"><?php _e('Customer', 'invoicing'); ?></label> |
|
18 | 18 | </div> |
19 | 19 | <div class="gdmbx-td gdmbx-customer-div"> |
20 | - <?php wpinv_dropdown_users( array( |
|
20 | + <?php wpinv_dropdown_users(array( |
|
21 | 21 | 'name' => 'post_author_override', |
22 | 22 | 'selected' => empty($post->ID) ? $user_ID : $post->post_author, |
23 | 23 | 'include_selected' => true, |
24 | 24 | 'show' => 'user_email', |
25 | 25 | 'orderby' => 'user_email', |
26 | 26 | 'class' => 'gdmbx2-text-large' |
27 | - ) ); ?> |
|
27 | + )); ?> |
|
28 | 28 | </div> |
29 | 29 | </div> |
30 | 30 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-email table-layout" style="display:none"> |
31 | - <div class="gdmbx-th"><label for="wpinv_email"><?php _e( 'Email', 'invoicing' );?> <span class="required">*</span></label> |
|
31 | + <div class="gdmbx-th"><label for="wpinv_email"><?php _e('Email', 'invoicing'); ?> <span class="required">*</span></label> |
|
32 | 32 | </div> |
33 | 33 | <div class="gdmbx-td"> |
34 | 34 | <input type="hidden" id="wpinv_new_user" name="wpinv_new_user" value="" /> |
@@ -36,56 +36,56 @@ discard block |
||
36 | 36 | </div> |
37 | 37 | </div> |
38 | 38 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-btns table-layout"> |
39 | - <div class="gdmbx-th"><label><?php _e( 'Actions', 'invoicing' );?></label> |
|
39 | + <div class="gdmbx-th"><label><?php _e('Actions', 'invoicing'); ?></label> |
|
40 | 40 | </div> |
41 | 41 | <div class="gdmbx-td"> |
42 | - <a id="wpinv-fill-user-details" class="button button-small button-secondary" title="<?php esc_attr_e( 'Fill User Details', 'invoicing' );?>" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-refresh"></i><?php _e( 'Fill User Details', 'invoicing' );?></a> |
|
43 | - <a class="wpinv-new-user button button-small button-secondary" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-plus"></i><?php _e( 'Add New User', 'invoicing' );?></a> |
|
44 | - <a style="display:none" class="wpinv-new-cancel button button-small button-secondary" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-close"></i><?php _e( 'Cancel', 'invoicing' );?> </a> |
|
42 | + <a id="wpinv-fill-user-details" class="button button-small button-secondary" title="<?php esc_attr_e('Fill User Details', 'invoicing'); ?>" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-refresh"></i><?php _e('Fill User Details', 'invoicing'); ?></a> |
|
43 | + <a class="wpinv-new-user button button-small button-secondary" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-plus"></i><?php _e('Add New User', 'invoicing'); ?></a> |
|
44 | + <a style="display:none" class="wpinv-new-cancel button button-small button-secondary" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-close"></i><?php _e('Cancel', 'invoicing'); ?> </a> |
|
45 | 45 | </div> |
46 | 46 | </div> |
47 | 47 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-first-name table-layout"> |
48 | - <div class="gdmbx-th"><label for="wpinv_first_name"><?php _e( 'First Name', 'invoicing' );?></label></div> |
|
48 | + <div class="gdmbx-th"><label for="wpinv_first_name"><?php _e('First Name', 'invoicing'); ?></label></div> |
|
49 | 49 | <div class="gdmbx-td"> |
50 | - <input type="text" class="gdmbx2-text-large" name="wpinv_first_name" id="wpinv_first_name" value="<?php echo esc_attr( $invoice->first_name );?>" /> |
|
50 | + <input type="text" class="gdmbx2-text-large" name="wpinv_first_name" id="wpinv_first_name" value="<?php echo esc_attr($invoice->first_name); ?>" /> |
|
51 | 51 | </div> |
52 | 52 | </div> |
53 | 53 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-last-name table-layout"> |
54 | - <div class="gdmbx-th"><label for="wpinv_last_name"><?php _e( 'Last Name', 'invoicing' );?></label></div> |
|
54 | + <div class="gdmbx-th"><label for="wpinv_last_name"><?php _e('Last Name', 'invoicing'); ?></label></div> |
|
55 | 55 | <div class="gdmbx-td"> |
56 | - <input type="text" class="gdmbx2-text-large" name="wpinv_last_name" id="wpinv_last_name" value="<?php echo esc_attr( $invoice->last_name );?>" /> |
|
56 | + <input type="text" class="gdmbx2-text-large" name="wpinv_last_name" id="wpinv_last_name" value="<?php echo esc_attr($invoice->last_name); ?>" /> |
|
57 | 57 | </div> |
58 | 58 | </div> |
59 | 59 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-company table-layout"> |
60 | - <div class="gdmbx-th"><label for="wpinv_company"><?php _e( 'Company', 'invoicing' );?></label></div> |
|
60 | + <div class="gdmbx-th"><label for="wpinv_company"><?php _e('Company', 'invoicing'); ?></label></div> |
|
61 | 61 | <div class="gdmbx-td"> |
62 | - <input type="text" class="gdmbx2-text-large" name="wpinv_company" id="wpinv_company" value="<?php echo esc_attr( $invoice->company );?>" /> |
|
62 | + <input type="text" class="gdmbx2-text-large" name="wpinv_company" id="wpinv_company" value="<?php echo esc_attr($invoice->company); ?>" /> |
|
63 | 63 | </div> |
64 | 64 | </div> |
65 | 65 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-vat-number table-layout"> |
66 | - <div class="gdmbx-th"><label for="wpinv_vat_number"><?php _e( 'Vat Number', 'invoicing' );?></label></div> |
|
66 | + <div class="gdmbx-th"><label for="wpinv_vat_number"><?php _e('Vat Number', 'invoicing'); ?></label></div> |
|
67 | 67 | <div class="gdmbx-td"> |
68 | - <input type="text" class="gdmbx2-text-large" name="wpinv_vat_number" id="wpinv_vat_number" value="<?php echo esc_attr( $invoice->vat_number );?>" /> |
|
68 | + <input type="text" class="gdmbx2-text-large" name="wpinv_vat_number" id="wpinv_vat_number" value="<?php echo esc_attr($invoice->vat_number); ?>" /> |
|
69 | 69 | </div> |
70 | 70 | </div> |
71 | 71 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-address table-layout"> |
72 | - <div class="gdmbx-th"><label for="wpinv_address"><?php _e( 'Address', 'invoicing' );?></label></div> |
|
72 | + <div class="gdmbx-th"><label for="wpinv_address"><?php _e('Address', 'invoicing'); ?></label></div> |
|
73 | 73 | <div class="gdmbx-td"> |
74 | - <input type="text" class="gdmbx2-text-large" name="wpinv_address" id="wpinv_address" value="<?php echo esc_attr( $invoice->address );?>" /> |
|
74 | + <input type="text" class="gdmbx2-text-large" name="wpinv_address" id="wpinv_address" value="<?php echo esc_attr($invoice->address); ?>" /> |
|
75 | 75 | </div> |
76 | 76 | </div> |
77 | 77 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-city table-layout"> |
78 | - <div class="gdmbx-th"><label for="wpinv_city"><?php _e( 'City', 'invoicing' );?></label></div> |
|
78 | + <div class="gdmbx-th"><label for="wpinv_city"><?php _e('City', 'invoicing'); ?></label></div> |
|
79 | 79 | <div class="gdmbx-td"> |
80 | - <input type="text" class="gdmbx2-text-large" name="wpinv_city" id="wpinv_city" value="<?php echo esc_attr( $invoice->city );?>" /> |
|
80 | + <input type="text" class="gdmbx2-text-large" name="wpinv_city" id="wpinv_city" value="<?php echo esc_attr($invoice->city); ?>" /> |
|
81 | 81 | </div> |
82 | 82 | </div> |
83 | 83 | <div class="gdmbx-row gdmbx-type-select gdmbx-wpinv-country table-layout"> |
84 | - <div class="gdmbx-th"><label for="wpinv_country"><?php _e( 'Country', 'invoicing' );?> <span class="wpi-loader"><i class="fa fa-refresh fa-spin"></i></span></label></div> |
|
84 | + <div class="gdmbx-th"><label for="wpinv_country"><?php _e('Country', 'invoicing'); ?> <span class="wpi-loader"><i class="fa fa-refresh fa-spin"></i></span></label></div> |
|
85 | 85 | <div class="gdmbx-td"> |
86 | 86 | <?php |
87 | - echo wpinv_html_select( array( |
|
88 | - 'options' => array_merge( array( '' => __( 'Choose a country', 'invoicing' ) ), wpinv_get_country_list() ), |
|
87 | + echo wpinv_html_select(array( |
|
88 | + 'options' => array_merge(array('' => __('Choose a country', 'invoicing')), wpinv_get_country_list()), |
|
89 | 89 | 'name' => 'wpinv_country', |
90 | 90 | 'id' => 'wpinv_country', |
91 | 91 | 'selected' => $invoice->country, |
@@ -93,20 +93,20 @@ discard block |
||
93 | 93 | 'show_option_none' => false, |
94 | 94 | 'class' => 'gdmbx2-text-large', |
95 | 95 | 'chosen' => false, |
96 | - 'placeholder' => __( 'Choose a country', 'invoicing' ), |
|
96 | + 'placeholder' => __('Choose a country', 'invoicing'), |
|
97 | 97 | 'required' => false, |
98 | - ) ); |
|
98 | + )); |
|
99 | 99 | ?> |
100 | 100 | </div> |
101 | 101 | </div> |
102 | 102 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-state table-layout"> |
103 | - <div class="gdmbx-th"><label for="wpinv_state"><?php _e( 'State', 'invoicing' );?></label></div> |
|
103 | + <div class="gdmbx-th"><label for="wpinv_state"><?php _e('State', 'invoicing'); ?></label></div> |
|
104 | 104 | <div class="gdmbx-td"> |
105 | 105 | <?php |
106 | - $states = wpinv_get_country_states( $invoice->country ); |
|
107 | - if( !empty( $states ) ) { |
|
108 | - echo wpinv_html_select( array( |
|
109 | - 'options' => array_merge( array( '' => __( 'Choose a state', 'invoicing' ) ), $states ), |
|
106 | + $states = wpinv_get_country_states($invoice->country); |
|
107 | + if (!empty($states)) { |
|
108 | + echo wpinv_html_select(array( |
|
109 | + 'options' => array_merge(array('' => __('Choose a state', 'invoicing')), $states), |
|
110 | 110 | 'name' => 'wpinv_state', |
111 | 111 | 'id' => 'wpinv_state', |
112 | 112 | 'selected' => $invoice->state, |
@@ -114,44 +114,44 @@ discard block |
||
114 | 114 | 'show_option_none' => false, |
115 | 115 | 'class' => 'gdmbx2-text-large', |
116 | 116 | 'chosen' => false, |
117 | - 'placeholder' => __( 'Choose a state', 'invoicing' ), |
|
117 | + 'placeholder' => __('Choose a state', 'invoicing'), |
|
118 | 118 | 'required' => false, |
119 | - ) ); |
|
119 | + )); |
|
120 | 120 | } else { |
121 | - echo wpinv_html_text( array( |
|
121 | + echo wpinv_html_text(array( |
|
122 | 122 | 'name' => 'wpinv_state', |
123 | - 'value' => ! empty( $invoice->state ) ? $invoice->state : '', |
|
123 | + 'value' => !empty($invoice->state) ? $invoice->state : '', |
|
124 | 124 | 'id' => 'wpinv_state', |
125 | 125 | 'class' => 'gdmbx2-text-large', |
126 | 126 | 'required' => false, |
127 | - ) ); |
|
127 | + )); |
|
128 | 128 | } |
129 | 129 | ?> |
130 | 130 | </div> |
131 | 131 | </div> |
132 | 132 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-zip table-layout"> |
133 | - <div class="gdmbx-th"><label for="wpinv_zip"><?php _e( 'Zipcode', 'invoicing' );?></label></div> |
|
133 | + <div class="gdmbx-th"><label for="wpinv_zip"><?php _e('Zipcode', 'invoicing'); ?></label></div> |
|
134 | 134 | <div class="gdmbx-td"> |
135 | - <input type="text" class="gdmbx2-text-large" name="wpinv_zip" id="wpinv_zip" value="<?php echo esc_attr( $invoice->zip );?>" /> |
|
135 | + <input type="text" class="gdmbx2-text-large" name="wpinv_zip" id="wpinv_zip" value="<?php echo esc_attr($invoice->zip); ?>" /> |
|
136 | 136 | </div> |
137 | 137 | </div> |
138 | 138 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-phone table-layout"> |
139 | - <div class="gdmbx-th"><label for="wpinv_phone"><?php _e( 'Phone', 'invoicing' );?></label></div> |
|
139 | + <div class="gdmbx-th"><label for="wpinv_phone"><?php _e('Phone', 'invoicing'); ?></label></div> |
|
140 | 140 | <div class="gdmbx-td"> |
141 | - <input type="text" class="gdmbx2-text-large" name="wpinv_phone" id="wpinv_phone" value="<?php echo esc_attr( $invoice->phone );?>" /> |
|
141 | + <input type="text" class="gdmbx2-text-large" name="wpinv_phone" id="wpinv_phone" value="<?php echo esc_attr($invoice->phone); ?>" /> |
|
142 | 142 | </div> |
143 | 143 | </div> |
144 | 144 | <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-ip table-layout"> |
145 | - <div class="gdmbx-th"><label for="wpinv_ip"><?php _e( 'IP Address', 'invoicing' );?><?php if ($invoice->ip) { ?> |
|
146 | - <a href="<?php echo admin_url( 'admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $invoice->ip ); ?>" title="<?php esc_attr_e( 'View IP information', 'invoicing' );?>" target="_blank"><i class="fa fa-external-link" aria-hidden="true"></i></a> |
|
145 | + <div class="gdmbx-th"><label for="wpinv_ip"><?php _e('IP Address', 'invoicing'); ?><?php if ($invoice->ip) { ?> |
|
146 | + <a href="<?php echo admin_url('admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $invoice->ip); ?>" title="<?php esc_attr_e('View IP information', 'invoicing'); ?>" target="_blank"><i class="fa fa-external-link" aria-hidden="true"></i></a> |
|
147 | 147 | <?php } ?></label></div> |
148 | 148 | <div class="gdmbx-td"> |
149 | - <input type="text" class="gdmbx2-text-large" value="<?php echo esc_attr( $invoice->ip );?>" readonly /> |
|
149 | + <input type="text" class="gdmbx2-text-large" value="<?php echo esc_attr($invoice->ip); ?>" readonly /> |
|
150 | 150 | </div> |
151 | 151 | </div> |
152 | 152 | </div> |
153 | 153 | </div> |
154 | -<?php wp_nonce_field( 'wpinv_save_invoice', 'wpinv_save_invoice' ) ;?> |
|
154 | +<?php wp_nonce_field('wpinv_save_invoice', 'wpinv_save_invoice'); ?> |
|
155 | 155 | <?php |
156 | 156 | } |
157 | 157 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if (!defined('ABSPATH')) { |
|
3 | 3 | exit; // Exit if accessed directly |
4 | 4 | } |
5 | 5 | |
@@ -21,68 +21,68 @@ discard block |
||
21 | 21 | public function init() { |
22 | 22 | global $wp_filesystem; |
23 | 23 | |
24 | - if ( empty( $wp_filesystem ) ) { |
|
25 | - require_once( ABSPATH . '/wp-admin/includes/file.php' ); |
|
24 | + if (empty($wp_filesystem)) { |
|
25 | + require_once(ABSPATH . '/wp-admin/includes/file.php'); |
|
26 | 26 | WP_Filesystem(); |
27 | 27 | global $wp_filesystem; |
28 | 28 | } |
29 | 29 | $this->wp_filesystem = $wp_filesystem; |
30 | 30 | |
31 | 31 | $this->export_dir = $this->export_location(); |
32 | - $this->export_url = $this->export_location( true ); |
|
32 | + $this->export_url = $this->export_location(true); |
|
33 | 33 | $this->export = 'invoicing'; |
34 | 34 | $this->filetype = 'csv'; |
35 | 35 | $this->per_page = 20; |
36 | 36 | |
37 | - do_action( 'wpinv_class_reports_init', $this ); |
|
37 | + do_action('wpinv_class_reports_init', $this); |
|
38 | 38 | } |
39 | 39 | |
40 | 40 | public function includes() { |
41 | - do_action( 'wpinv_class_reports_includes', $this ); |
|
41 | + do_action('wpinv_class_reports_includes', $this); |
|
42 | 42 | } |
43 | 43 | |
44 | 44 | public function actions() { |
45 | - if ( is_admin() ) { |
|
46 | - add_action( 'admin_menu', array( $this, 'add_submenu' ), 10 ); |
|
47 | - add_action( 'wpinv_reports_tab_export', array( $this, 'export' ) ); |
|
48 | - add_action( 'wp_ajax_wpinv_ajax_export', array( $this, 'ajax_export' ) ); |
|
45 | + if (is_admin()) { |
|
46 | + add_action('admin_menu', array($this, 'add_submenu'), 10); |
|
47 | + add_action('wpinv_reports_tab_export', array($this, 'export')); |
|
48 | + add_action('wp_ajax_wpinv_ajax_export', array($this, 'ajax_export')); |
|
49 | 49 | |
50 | 50 | // Export Invoices. |
51 | - add_action( 'wpinv_export_set_params_invoices', array( $this, 'set_invoices_export' ) ); |
|
52 | - add_filter( 'wpinv_export_get_columns_invoices', array( $this, 'get_invoices_columns' ) ); |
|
53 | - add_filter( 'wpinv_export_get_data_invoices', array( $this, 'get_invoices_data' ) ); |
|
54 | - add_filter( 'wpinv_get_export_status_invoices', array( $this, 'invoices_export_status' ) ); |
|
51 | + add_action('wpinv_export_set_params_invoices', array($this, 'set_invoices_export')); |
|
52 | + add_filter('wpinv_export_get_columns_invoices', array($this, 'get_invoices_columns')); |
|
53 | + add_filter('wpinv_export_get_data_invoices', array($this, 'get_invoices_data')); |
|
54 | + add_filter('wpinv_get_export_status_invoices', array($this, 'invoices_export_status')); |
|
55 | 55 | } |
56 | - do_action( 'wpinv_class_reports_actions', $this ); |
|
56 | + do_action('wpinv_class_reports_actions', $this); |
|
57 | 57 | } |
58 | 58 | |
59 | 59 | public function add_submenu() { |
60 | 60 | global $wpi_reports_page; |
61 | - $wpi_reports_page = add_submenu_page( 'wpinv', __( 'Reports', 'invoicing' ), __( 'Reports', 'invoicing' ), 'manage_options', 'wpinv-reports', array( $this, 'reports_page' ) ); |
|
61 | + $wpi_reports_page = add_submenu_page('wpinv', __('Reports', 'invoicing'), __('Reports', 'invoicing'), 'manage_options', 'wpinv-reports', array($this, 'reports_page')); |
|
62 | 62 | } |
63 | 63 | |
64 | 64 | public function reports_page() { |
65 | - if ( !wp_script_is( 'postbox', 'enqueued' ) ) { |
|
66 | - wp_enqueue_script( 'postbox' ); |
|
65 | + if (!wp_script_is('postbox', 'enqueued')) { |
|
66 | + wp_enqueue_script('postbox'); |
|
67 | 67 | } |
68 | - if ( !wp_script_is( 'jquery-ui-datepicker', 'enqueued' ) ) { |
|
69 | - wp_enqueue_script( 'jquery-ui-datepicker' ); |
|
68 | + if (!wp_script_is('jquery-ui-datepicker', 'enqueued')) { |
|
69 | + wp_enqueue_script('jquery-ui-datepicker'); |
|
70 | 70 | } |
71 | 71 | |
72 | - $current_page = admin_url( 'admin.php?page=wpinv-reports' ); |
|
73 | - $active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( $_GET['tab'] ) : 'export'; |
|
72 | + $current_page = admin_url('admin.php?page=wpinv-reports'); |
|
73 | + $active_tab = isset($_GET['tab']) ? sanitize_text_field($_GET['tab']) : 'export'; |
|
74 | 74 | ?> |
75 | 75 | <div class="wrap wpi-reports-wrap"> |
76 | - <h1><?php echo esc_html( __( 'Reports', 'invoicing' ) ); ?></h1> |
|
76 | + <h1><?php echo esc_html(__('Reports', 'invoicing')); ?></h1> |
|
77 | 77 | <h2 class="nav-tab-wrapper wp-clearfix"> |
78 | - <a href="<?php echo add_query_arg( array( 'tab' => 'export', 'settings-updated' => false ), $current_page ); ?>" class="nav-tab <?php echo $active_tab == 'export' ? 'nav-tab-active' : ''; ?>"><?php _e( 'Export', 'invoicing' ); ?></a> |
|
79 | - <?php do_action( 'wpinv_reports_page_tabs' ); ;?> |
|
78 | + <a href="<?php echo add_query_arg(array('tab' => 'export', 'settings-updated' => false), $current_page); ?>" class="nav-tab <?php echo $active_tab == 'export' ? 'nav-tab-active' : ''; ?>"><?php _e('Export', 'invoicing'); ?></a> |
|
79 | + <?php do_action('wpinv_reports_page_tabs'); ;?> |
|
80 | 80 | </h2> |
81 | 81 | <div class="wpi-reports-content wpi-reports-<?php echo $active_tab; ?>"> |
82 | 82 | <?php |
83 | - do_action( 'wpinv_reports_page_top' ); |
|
84 | - do_action( 'wpinv_reports_tab_' . $active_tab ); |
|
85 | - do_action( 'wpinv_reports_page_bottom' ); |
|
83 | + do_action('wpinv_reports_page_top'); |
|
84 | + do_action('wpinv_reports_tab_' . $active_tab); |
|
85 | + do_action('wpinv_reports_page_bottom'); |
|
86 | 86 | ?> |
87 | 87 | </div> |
88 | 88 | <?php |
@@ -90,97 +90,97 @@ discard block |
||
90 | 90 | |
91 | 91 | public function export() { |
92 | 92 | $statuses = wpinv_get_invoice_statuses(); |
93 | - $statuses = array_merge( array( 'any' => __( 'All Statuses', 'invoicing' ) ), $statuses ); |
|
93 | + $statuses = array_merge(array('any' => __('All Statuses', 'invoicing')), $statuses); |
|
94 | 94 | ?> |
95 | 95 | <div class="metabox-holder"> |
96 | 96 | <div id="post-body"> |
97 | 97 | <div id="post-body-content"> |
98 | - <?php do_action( 'wpinv_reports_tab_export_content_top' ); ?> |
|
98 | + <?php do_action('wpinv_reports_tab_export_content_top'); ?> |
|
99 | 99 | |
100 | 100 | <div class="postbox wpi-export-invoices"> |
101 | - <h2 class="hndle ui-sortabled-handle"><span><?php _e( 'Invoices','invoicing' ); ?></span></h2> |
|
101 | + <h2 class="hndle ui-sortabled-handle"><span><?php _e('Invoices', 'invoicing'); ?></span></h2> |
|
102 | 102 | <div class="inside"> |
103 | - <p><?php _e( 'Download a CSV of all payment invoices.', 'invoicing' ); ?></p> |
|
103 | + <p><?php _e('Download a CSV of all payment invoices.', 'invoicing'); ?></p> |
|
104 | 104 | <form id="wpi-export-invoices" class="wpi-export-form" method="post"> |
105 | - <?php echo wpinv_html_date_field( array( |
|
105 | + <?php echo wpinv_html_date_field(array( |
|
106 | 106 | 'id' => 'wpi_export_from_date', |
107 | 107 | 'name' => 'from_date', |
108 | 108 | 'data' => array( |
109 | 109 | 'dateFormat' => 'yy-mm-dd' |
110 | 110 | ), |
111 | - 'placeholder' => __( 'From date', 'invoicing' ) ) |
|
111 | + 'placeholder' => __('From date', 'invoicing') ) |
|
112 | 112 | ); ?> |
113 | - <?php echo wpinv_html_date_field( array( |
|
113 | + <?php echo wpinv_html_date_field(array( |
|
114 | 114 | 'id' => 'wpi_export_to_date', |
115 | 115 | 'name' => 'to_date', |
116 | 116 | 'data' => array( |
117 | 117 | 'dateFormat' => 'yy-mm-dd' |
118 | 118 | ), |
119 | - 'placeholder' => __( 'To date', 'invoicing' ) ) |
|
119 | + 'placeholder' => __('To date', 'invoicing') ) |
|
120 | 120 | ); ?> |
121 | 121 | <span id="wpinv-status-wrap"> |
122 | - <?php echo wpinv_html_select( array( |
|
122 | + <?php echo wpinv_html_select(array( |
|
123 | 123 | 'options' => $statuses, |
124 | 124 | 'name' => 'status', |
125 | 125 | 'id' => 'wpi_export_status', |
126 | 126 | 'show_option_all' => false, |
127 | 127 | 'show_option_none' => false, |
128 | 128 | 'class' => '', |
129 | - ) ); ?> |
|
130 | - <?php wp_nonce_field( 'wpi_ajax_export', 'wpi_ajax_export' ); ?> |
|
129 | + )); ?> |
|
130 | + <?php wp_nonce_field('wpi_ajax_export', 'wpi_ajax_export'); ?> |
|
131 | 131 | </span> |
132 | 132 | <span id="wpinv-submit-wrap"> |
133 | 133 | <input type="hidden" value="invoices" name="export" /> |
134 | - <input type="submit" value="<?php _e( 'Generate CSV', 'invoicing' ); ?>" class="button-primary" /> |
|
134 | + <input type="submit" value="<?php _e('Generate CSV', 'invoicing'); ?>" class="button-primary" /> |
|
135 | 135 | </span> |
136 | 136 | </form> |
137 | 137 | </div> |
138 | 138 | </div> |
139 | 139 | |
140 | - <?php do_action( 'wpinv_reports_tab_export_content_bottom' ); ?> |
|
140 | + <?php do_action('wpinv_reports_tab_export_content_bottom'); ?> |
|
141 | 141 | </div> |
142 | 142 | </div> |
143 | 143 | </div> |
144 | 144 | <?php |
145 | 145 | } |
146 | 146 | |
147 | - public function export_location( $relative = false ) { |
|
147 | + public function export_location($relative = false) { |
|
148 | 148 | $upload_dir = wp_upload_dir(); |
149 | - $export_location = $relative ? trailingslashit( $upload_dir['baseurl'] ) . 'cache' : trailingslashit( $upload_dir['basedir'] ) . 'cache'; |
|
150 | - $export_location = apply_filters( 'wpinv_export_location', $export_location, $relative ); |
|
149 | + $export_location = $relative ? trailingslashit($upload_dir['baseurl']) . 'cache' : trailingslashit($upload_dir['basedir']) . 'cache'; |
|
150 | + $export_location = apply_filters('wpinv_export_location', $export_location, $relative); |
|
151 | 151 | |
152 | - return trailingslashit( $export_location ); |
|
152 | + return trailingslashit($export_location); |
|
153 | 153 | } |
154 | 154 | |
155 | 155 | public function check_export_location() { |
156 | 156 | try { |
157 | - if ( empty( $this->wp_filesystem ) ) { |
|
158 | - return __( 'Filesystem ERROR: Could not access filesystem.', 'invoicing' ); |
|
157 | + if (empty($this->wp_filesystem)) { |
|
158 | + return __('Filesystem ERROR: Could not access filesystem.', 'invoicing'); |
|
159 | 159 | } |
160 | 160 | |
161 | - if ( is_wp_error( $this->wp_filesystem ) ) { |
|
162 | - return __( 'Filesystem ERROR: ' . $this->wp_filesystem->get_error_message(), 'invoicing' ); |
|
161 | + if (is_wp_error($this->wp_filesystem)) { |
|
162 | + return __('Filesystem ERROR: ' . $this->wp_filesystem->get_error_message(), 'invoicing'); |
|
163 | 163 | } |
164 | 164 | |
165 | - $is_dir = $this->wp_filesystem->is_dir( $this->export_dir ); |
|
166 | - $is_writeable = $is_dir && is_writeable( $this->export_dir ); |
|
165 | + $is_dir = $this->wp_filesystem->is_dir($this->export_dir); |
|
166 | + $is_writeable = $is_dir && is_writeable($this->export_dir); |
|
167 | 167 | |
168 | - if ( $is_dir && $is_writeable ) { |
|
168 | + if ($is_dir && $is_writeable) { |
|
169 | 169 | return true; |
170 | - } else if ( $is_dir && !$is_writeable ) { |
|
171 | - if ( !$this->wp_filesystem->chmod( $this->export_dir, FS_CHMOD_DIR ) ) { |
|
172 | - return wp_sprintf( __( 'Filesystem ERROR: Export location %s is not writable, check your file permissions.', 'invoicing' ), $this->export_dir ); |
|
170 | + } else if ($is_dir && !$is_writeable) { |
|
171 | + if (!$this->wp_filesystem->chmod($this->export_dir, FS_CHMOD_DIR)) { |
|
172 | + return wp_sprintf(__('Filesystem ERROR: Export location %s is not writable, check your file permissions.', 'invoicing'), $this->export_dir); |
|
173 | 173 | } |
174 | 174 | |
175 | 175 | return true; |
176 | 176 | } else { |
177 | - if ( !$this->wp_filesystem->mkdir( $this->export_dir, FS_CHMOD_DIR ) ) { |
|
178 | - return wp_sprintf( __( 'Filesystem ERROR: Could not create directory %s. This is usually due to inconsistent file permissions.', 'invoicing' ), $this->export_dir ); |
|
177 | + if (!$this->wp_filesystem->mkdir($this->export_dir, FS_CHMOD_DIR)) { |
|
178 | + return wp_sprintf(__('Filesystem ERROR: Could not create directory %s. This is usually due to inconsistent file permissions.', 'invoicing'), $this->export_dir); |
|
179 | 179 | } |
180 | 180 | |
181 | 181 | return true; |
182 | 182 | } |
183 | - } catch ( Exception $e ) { |
|
183 | + } catch (Exception $e) { |
|
184 | 184 | return $e->getMessage(); |
185 | 185 | } |
186 | 186 | } |
@@ -188,130 +188,130 @@ discard block |
||
188 | 188 | public function ajax_export() { |
189 | 189 | $response = array(); |
190 | 190 | $response['success'] = false; |
191 | - $response['msg'] = __( 'Invalid export request found.', 'invoicing' ); |
|
191 | + $response['msg'] = __('Invalid export request found.', 'invoicing'); |
|
192 | 192 | |
193 | - if ( empty( $_POST['data'] ) || !current_user_can( 'manage_options' ) ) { |
|
194 | - wp_send_json( $response ); |
|
193 | + if (empty($_POST['data']) || !current_user_can('manage_options')) { |
|
194 | + wp_send_json($response); |
|
195 | 195 | } |
196 | 196 | |
197 | - parse_str( $_POST['data'], $data ); |
|
197 | + parse_str($_POST['data'], $data); |
|
198 | 198 | |
199 | - $data['step'] = !empty( $_POST['step'] ) ? absint( $_POST['step'] ) : 1; |
|
199 | + $data['step'] = !empty($_POST['step']) ? absint($_POST['step']) : 1; |
|
200 | 200 | |
201 | 201 | $_REQUEST = (array)$data; |
202 | - if ( !( !empty( $_REQUEST['wpi_ajax_export'] ) && wp_verify_nonce( $_REQUEST['wpi_ajax_export'], 'wpi_ajax_export' ) ) ) { |
|
203 | - $response['msg'] = __( 'Security check failed.', 'invoicing' ); |
|
204 | - wp_send_json( $response ); |
|
202 | + if (!(!empty($_REQUEST['wpi_ajax_export']) && wp_verify_nonce($_REQUEST['wpi_ajax_export'], 'wpi_ajax_export'))) { |
|
203 | + $response['msg'] = __('Security check failed.', 'invoicing'); |
|
204 | + wp_send_json($response); |
|
205 | 205 | } |
206 | 206 | |
207 | - if ( ( $error = $this->check_export_location( true ) ) !== true ) { |
|
208 | - $response['msg'] = __( 'Filesystem ERROR: ' . $error, 'invoicing' ); |
|
209 | - wp_send_json( $response ); |
|
207 | + if (($error = $this->check_export_location(true)) !== true) { |
|
208 | + $response['msg'] = __('Filesystem ERROR: ' . $error, 'invoicing'); |
|
209 | + wp_send_json($response); |
|
210 | 210 | } |
211 | 211 | |
212 | - $this->set_export_params( $_REQUEST ); |
|
212 | + $this->set_export_params($_REQUEST); |
|
213 | 213 | |
214 | 214 | $return = $this->process_export_step(); |
215 | 215 | $done = $this->get_export_status(); |
216 | 216 | |
217 | - if ( $return ) { |
|
217 | + if ($return) { |
|
218 | 218 | $this->step += 1; |
219 | 219 | |
220 | 220 | $response['success'] = true; |
221 | 221 | $response['msg'] = ''; |
222 | 222 | |
223 | - if ( $done >= 100 ) { |
|
223 | + if ($done >= 100) { |
|
224 | 224 | $this->step = 'done'; |
225 | - $new_filename = 'wpi-' . $this->export . '-' . date( 'y-m-d-H-i' ) . '.' . $this->filetype; |
|
225 | + $new_filename = 'wpi-' . $this->export . '-' . date('y-m-d-H-i') . '.' . $this->filetype; |
|
226 | 226 | $new_file = $this->export_dir . $new_filename; |
227 | 227 | |
228 | - if ( file_exists( $this->file ) ) { |
|
229 | - $this->wp_filesystem->move( $this->file, $new_file, true ); |
|
228 | + if (file_exists($this->file)) { |
|
229 | + $this->wp_filesystem->move($this->file, $new_file, true); |
|
230 | 230 | } |
231 | 231 | |
232 | - if ( file_exists( $new_file ) ) { |
|
233 | - $response['data']['file'] = array( 'u' => $this->export_url . $new_filename, 's' => size_format( filesize( $new_file ), 2 ) ); |
|
232 | + if (file_exists($new_file)) { |
|
233 | + $response['data']['file'] = array('u' => $this->export_url . $new_filename, 's' => size_format(filesize($new_file), 2)); |
|
234 | 234 | } |
235 | 235 | } |
236 | 236 | |
237 | 237 | $response['data']['step'] = $this->step; |
238 | 238 | $response['data']['done'] = $done; |
239 | 239 | } else { |
240 | - $response['msg'] = __( 'No data found for export.', 'invoicing' ); |
|
240 | + $response['msg'] = __('No data found for export.', 'invoicing'); |
|
241 | 241 | } |
242 | 242 | |
243 | - wp_send_json( $response ); |
|
243 | + wp_send_json($response); |
|
244 | 244 | } |
245 | 245 | |
246 | - public function set_export_params( $request ) { |
|
246 | + public function set_export_params($request) { |
|
247 | 247 | $this->empty = false; |
248 | - $this->step = !empty( $request['step'] ) ? absint( $request['step'] ) : 1; |
|
249 | - $this->export = !empty( $request['export'] ) ? $request['export'] : $this->export; |
|
248 | + $this->step = !empty($request['step']) ? absint($request['step']) : 1; |
|
249 | + $this->export = !empty($request['export']) ? $request['export'] : $this->export; |
|
250 | 250 | $this->filename = 'wpi-' . $this->export . '-' . $request['wpi_ajax_export'] . '.' . $this->filetype; |
251 | 251 | $this->file = $this->export_dir . $this->filename; |
252 | 252 | |
253 | - do_action( 'wpinv_export_set_params_' . $this->export, $request ); |
|
253 | + do_action('wpinv_export_set_params_' . $this->export, $request); |
|
254 | 254 | } |
255 | 255 | |
256 | 256 | public function get_columns() { |
257 | 257 | $columns = array( |
258 | - 'id' => __( 'ID', 'invoicing' ), |
|
259 | - 'date' => __( 'Date', 'invoicing' ) |
|
258 | + 'id' => __('ID', 'invoicing'), |
|
259 | + 'date' => __('Date', 'invoicing') |
|
260 | 260 | ); |
261 | 261 | |
262 | - return apply_filters( 'wpinv_export_get_columns_' . $this->export, $columns ); |
|
262 | + return apply_filters('wpinv_export_get_columns_' . $this->export, $columns); |
|
263 | 263 | } |
264 | 264 | |
265 | 265 | protected function get_export_file() { |
266 | 266 | $file = ''; |
267 | 267 | |
268 | - if ( $this->wp_filesystem->exists( $this->file ) ) { |
|
269 | - $file = $this->wp_filesystem->get_contents( $this->file ); |
|
268 | + if ($this->wp_filesystem->exists($this->file)) { |
|
269 | + $file = $this->wp_filesystem->get_contents($this->file); |
|
270 | 270 | } else { |
271 | - $this->wp_filesystem->put_contents( $this->file, '' ); |
|
271 | + $this->wp_filesystem->put_contents($this->file, ''); |
|
272 | 272 | } |
273 | 273 | |
274 | 274 | return $file; |
275 | 275 | } |
276 | 276 | |
277 | - protected function attach_export_data( $data = '' ) { |
|
278 | - $filedata = $this->get_export_file(); |
|
279 | - $filedata .= $data; |
|
277 | + protected function attach_export_data($data = '') { |
|
278 | + $filedata = $this->get_export_file(); |
|
279 | + $filedata .= $data; |
|
280 | 280 | |
281 | - $this->wp_filesystem->put_contents( $this->file, $filedata ); |
|
281 | + $this->wp_filesystem->put_contents($this->file, $filedata); |
|
282 | 282 | |
283 | - $rows = file( $this->file, FILE_SKIP_EMPTY_LINES ); |
|
283 | + $rows = file($this->file, FILE_SKIP_EMPTY_LINES); |
|
284 | 284 | $columns = $this->get_columns(); |
285 | - $columns = empty( $columns ) ? 0 : 1; |
|
285 | + $columns = empty($columns) ? 0 : 1; |
|
286 | 286 | |
287 | - $this->empty = count( $rows ) == $columns ? true : false; |
|
287 | + $this->empty = count($rows) == $columns ? true : false; |
|
288 | 288 | } |
289 | 289 | |
290 | 290 | public function print_columns() { |
291 | 291 | $column_data = ''; |
292 | 292 | $columns = $this->get_columns(); |
293 | 293 | $i = 1; |
294 | - foreach( $columns as $key => $column ) { |
|
295 | - $column_data .= '"' . addslashes( $column ) . '"'; |
|
296 | - $column_data .= $i == count( $columns ) ? '' : ','; |
|
294 | + foreach ($columns as $key => $column) { |
|
295 | + $column_data .= '"' . addslashes($column) . '"'; |
|
296 | + $column_data .= $i == count($columns) ? '' : ','; |
|
297 | 297 | $i++; |
298 | 298 | } |
299 | 299 | $column_data .= "\r\n"; |
300 | 300 | |
301 | - $this->attach_export_data( $column_data ); |
|
301 | + $this->attach_export_data($column_data); |
|
302 | 302 | |
303 | 303 | return $column_data; |
304 | 304 | } |
305 | 305 | |
306 | 306 | public function process_export_step() { |
307 | - if ( $this->step < 2 ) { |
|
308 | - @unlink( $this->file ); |
|
307 | + if ($this->step < 2) { |
|
308 | + @unlink($this->file); |
|
309 | 309 | $this->print_columns(); |
310 | 310 | } |
311 | 311 | |
312 | 312 | $return = $this->print_rows(); |
313 | 313 | |
314 | - if ( $return ) { |
|
314 | + if ($return) { |
|
315 | 315 | return true; |
316 | 316 | } else { |
317 | 317 | return false; |
@@ -320,23 +320,23 @@ discard block |
||
320 | 320 | |
321 | 321 | public function get_export_status() { |
322 | 322 | $status = 100; |
323 | - return apply_filters( 'wpinv_get_export_status_' . $this->export, $status ); |
|
323 | + return apply_filters('wpinv_get_export_status_' . $this->export, $status); |
|
324 | 324 | } |
325 | 325 | |
326 | 326 | public function get_export_data() { |
327 | 327 | $data = array( |
328 | 328 | 0 => array( |
329 | 329 | 'id' => '', |
330 | - 'data' => date( 'F j, Y' ) |
|
330 | + 'data' => date('F j, Y') |
|
331 | 331 | ), |
332 | 332 | 1 => array( |
333 | 333 | 'id' => '', |
334 | - 'data' => date( 'F j, Y' ) |
|
334 | + 'data' => date('F j, Y') |
|
335 | 335 | ) |
336 | 336 | ); |
337 | 337 | |
338 | - $data = apply_filters( 'wpinv_export_get_data', $data ); |
|
339 | - $data = apply_filters( 'wpinv_export_get_data_' . $this->export, $data ); |
|
338 | + $data = apply_filters('wpinv_export_get_data', $data); |
|
339 | + $data = apply_filters('wpinv_export_get_data_' . $this->export, $data); |
|
340 | 340 | |
341 | 341 | return $data; |
342 | 342 | } |
@@ -346,20 +346,20 @@ discard block |
||
346 | 346 | $data = $this->get_export_data(); |
347 | 347 | $columns = $this->get_columns(); |
348 | 348 | |
349 | - if ( $data ) { |
|
350 | - foreach ( $data as $row ) { |
|
349 | + if ($data) { |
|
350 | + foreach ($data as $row) { |
|
351 | 351 | $i = 1; |
352 | - foreach ( $row as $key => $column ) { |
|
353 | - if ( array_key_exists( $key, $columns ) ) { |
|
354 | - $row_data .= '"' . addslashes( preg_replace( "/\"/","'", $column ) ) . '"'; |
|
355 | - $row_data .= $i == count( $columns ) ? '' : ','; |
|
352 | + foreach ($row as $key => $column) { |
|
353 | + if (array_key_exists($key, $columns)) { |
|
354 | + $row_data .= '"' . addslashes(preg_replace("/\"/", "'", $column)) . '"'; |
|
355 | + $row_data .= $i == count($columns) ? '' : ','; |
|
356 | 356 | $i++; |
357 | 357 | } |
358 | 358 | } |
359 | 359 | $row_data .= "\r\n"; |
360 | 360 | } |
361 | 361 | |
362 | - $this->attach_export_data( $row_data ); |
|
362 | + $this->attach_export_data($row_data); |
|
363 | 363 | |
364 | 364 | return $row_data; |
365 | 365 | } |
@@ -368,46 +368,46 @@ discard block |
||
368 | 368 | } |
369 | 369 | |
370 | 370 | // Export Invoices. |
371 | - public function set_invoices_export( $request ) { |
|
372 | - $this->from_date = isset( $request['from_date'] ) ? sanitize_text_field( $request['from_date'] ) : ''; |
|
373 | - $this->to_date = isset( $request['to_date'] ) ? sanitize_text_field( $request['to_date'] ) : ''; |
|
374 | - $this->status = isset( $request['status'] ) ? sanitize_text_field( $request['status'] ) : 'publish'; |
|
371 | + public function set_invoices_export($request) { |
|
372 | + $this->from_date = isset($request['from_date']) ? sanitize_text_field($request['from_date']) : ''; |
|
373 | + $this->to_date = isset($request['to_date']) ? sanitize_text_field($request['to_date']) : ''; |
|
374 | + $this->status = isset($request['status']) ? sanitize_text_field($request['status']) : 'publish'; |
|
375 | 375 | } |
376 | 376 | |
377 | - public function get_invoices_columns( $columns = array() ) { |
|
377 | + public function get_invoices_columns($columns = array()) { |
|
378 | 378 | $columns = array( |
379 | - 'id' => __( 'ID', 'invoicing' ), |
|
380 | - 'number' => __( 'Number', 'invoicing' ), |
|
381 | - 'date' => __( 'Date', 'invoicing' ), |
|
382 | - 'amount' => __( 'Amount', 'invoicing' ), |
|
383 | - 'status_nicename' => __( 'Status Nicename', 'invoicing' ), |
|
384 | - 'status' => __( 'Status', 'invoicing' ), |
|
385 | - 'tax' => __( 'Tax', 'invoicing' ), |
|
386 | - 'discount' => __( 'Discount', 'invoicing' ), |
|
387 | - 'user_id' => __( 'User ID', 'invoicing' ), |
|
388 | - 'email' => __( 'Email', 'invoicing' ), |
|
389 | - 'first_name' => __( 'First Name', 'invoicing' ), |
|
390 | - 'last_name' => __( 'Last Name', 'invoicing' ), |
|
391 | - 'address' => __( 'Address', 'invoicing' ), |
|
392 | - 'city' => __( 'City', 'invoicing' ), |
|
393 | - 'state' => __( 'State', 'invoicing' ), |
|
394 | - 'country' => __( 'Country', 'invoicing' ), |
|
395 | - 'zip' => __( 'Zipcode', 'invoicing' ), |
|
396 | - 'phone' => __( 'Phone', 'invoicing' ), |
|
397 | - 'company' => __( 'Company', 'invoicing' ), |
|
398 | - 'vat_number' => __( 'Vat Number', 'invoicing' ), |
|
399 | - 'ip' => __( 'IP', 'invoicing' ), |
|
400 | - 'gateway' => __( 'Gateway', 'invoicing' ), |
|
401 | - 'gateway_nicename' => __( 'Gateway Nicename', 'invoicing' ), |
|
402 | - 'transaction_id'=> __( 'Transaction ID', 'invoicing' ), |
|
403 | - 'currency' => __( 'Currency', 'invoicing' ), |
|
404 | - 'due_date' => __( 'Due Date', 'invoicing' ), |
|
379 | + 'id' => __('ID', 'invoicing'), |
|
380 | + 'number' => __('Number', 'invoicing'), |
|
381 | + 'date' => __('Date', 'invoicing'), |
|
382 | + 'amount' => __('Amount', 'invoicing'), |
|
383 | + 'status_nicename' => __('Status Nicename', 'invoicing'), |
|
384 | + 'status' => __('Status', 'invoicing'), |
|
385 | + 'tax' => __('Tax', 'invoicing'), |
|
386 | + 'discount' => __('Discount', 'invoicing'), |
|
387 | + 'user_id' => __('User ID', 'invoicing'), |
|
388 | + 'email' => __('Email', 'invoicing'), |
|
389 | + 'first_name' => __('First Name', 'invoicing'), |
|
390 | + 'last_name' => __('Last Name', 'invoicing'), |
|
391 | + 'address' => __('Address', 'invoicing'), |
|
392 | + 'city' => __('City', 'invoicing'), |
|
393 | + 'state' => __('State', 'invoicing'), |
|
394 | + 'country' => __('Country', 'invoicing'), |
|
395 | + 'zip' => __('Zipcode', 'invoicing'), |
|
396 | + 'phone' => __('Phone', 'invoicing'), |
|
397 | + 'company' => __('Company', 'invoicing'), |
|
398 | + 'vat_number' => __('Vat Number', 'invoicing'), |
|
399 | + 'ip' => __('IP', 'invoicing'), |
|
400 | + 'gateway' => __('Gateway', 'invoicing'), |
|
401 | + 'gateway_nicename' => __('Gateway Nicename', 'invoicing'), |
|
402 | + 'transaction_id'=> __('Transaction ID', 'invoicing'), |
|
403 | + 'currency' => __('Currency', 'invoicing'), |
|
404 | + 'due_date' => __('Due Date', 'invoicing'), |
|
405 | 405 | ); |
406 | 406 | |
407 | 407 | return $columns; |
408 | 408 | } |
409 | 409 | |
410 | - public function get_invoices_data( $response = array() ) { |
|
410 | + public function get_invoices_data($response = array()) { |
|
411 | 411 | $args = array( |
412 | 412 | 'limit' => $this->per_page, |
413 | 413 | 'page' => $this->step, |
@@ -415,35 +415,35 @@ discard block |
||
415 | 415 | 'orderby' => 'date', |
416 | 416 | ); |
417 | 417 | |
418 | - if ( $this->status != 'any' ) { |
|
418 | + if ($this->status != 'any') { |
|
419 | 419 | $args['status'] = $this->status; |
420 | 420 | } |
421 | 421 | |
422 | - if ( !empty( $this->from_date ) || !empty( $this->to_date ) ) { |
|
422 | + if (!empty($this->from_date) || !empty($this->to_date)) { |
|
423 | 423 | $args['date_query'] = array( |
424 | 424 | array( |
425 | - 'after' => date( 'Y-n-d 00:00:00', strtotime( $this->from_date ) ), |
|
426 | - 'before' => date( 'Y-n-d 23:59:59', strtotime( $this->to_date ) ), |
|
425 | + 'after' => date('Y-n-d 00:00:00', strtotime($this->from_date)), |
|
426 | + 'before' => date('Y-n-d 23:59:59', strtotime($this->to_date)), |
|
427 | 427 | 'inclusive' => true |
428 | 428 | ) |
429 | 429 | ); |
430 | 430 | } |
431 | 431 | |
432 | - $invoices = wpinv_get_invoices( $args ); |
|
432 | + $invoices = wpinv_get_invoices($args); |
|
433 | 433 | |
434 | 434 | $data = array(); |
435 | 435 | |
436 | - if ( !empty( $invoices ) ) { |
|
437 | - foreach ( $invoices as $invoice ) { |
|
436 | + if (!empty($invoices)) { |
|
437 | + foreach ($invoices as $invoice) { |
|
438 | 438 | $row = array( |
439 | 439 | 'id' => $invoice->ID, |
440 | 440 | 'number' => $invoice->get_number(), |
441 | - 'date' => $invoice->get_invoice_date( false ), |
|
442 | - 'amount' => wpinv_round_amount( $invoice->get_total() ), |
|
443 | - 'status_nicename' => $invoice->get_status( true ), |
|
441 | + 'date' => $invoice->get_invoice_date(false), |
|
442 | + 'amount' => wpinv_round_amount($invoice->get_total()), |
|
443 | + 'status_nicename' => $invoice->get_status(true), |
|
444 | 444 | 'status' => $invoice->get_status(), |
445 | - 'tax' => $invoice->get_tax() > 0 ? wpinv_round_amount( $invoice->get_tax() ) : '', |
|
446 | - 'discount' => $invoice->get_discount() > 0 ? wpinv_round_amount( $invoice->get_discount() ) : '', |
|
445 | + 'tax' => $invoice->get_tax() > 0 ? wpinv_round_amount($invoice->get_tax()) : '', |
|
446 | + 'discount' => $invoice->get_discount() > 0 ? wpinv_round_amount($invoice->get_discount()) : '', |
|
447 | 447 | 'user_id' => $invoice->get_user_id(), |
448 | 448 | 'email' => $invoice->get_email(), |
449 | 449 | 'first_name' => $invoice->get_first_name(), |
@@ -464,7 +464,7 @@ discard block |
||
464 | 464 | 'due_date' => $invoice->needs_payment() ? $invoice->get_due_date() : '', |
465 | 465 | ); |
466 | 466 | |
467 | - $data[] = apply_filters( 'wpinv_export_invoice_row', $row, $invoice ); |
|
467 | + $data[] = apply_filters('wpinv_export_invoice_row', $row, $invoice); |
|
468 | 468 | } |
469 | 469 | |
470 | 470 | return $data; |
@@ -480,29 +480,29 @@ discard block |
||
480 | 480 | 'return' => 'ids', |
481 | 481 | ); |
482 | 482 | |
483 | - if ( $this->status != 'any' ) { |
|
483 | + if ($this->status != 'any') { |
|
484 | 484 | $args['status'] = $this->status; |
485 | 485 | } |
486 | 486 | |
487 | - if ( !empty( $this->from_date ) || !empty( $this->to_date ) ) { |
|
487 | + if (!empty($this->from_date) || !empty($this->to_date)) { |
|
488 | 488 | $args['date_query'] = array( |
489 | 489 | array( |
490 | - 'after' => date( 'Y-n-d 00:00:00', strtotime( $this->from_date ) ), |
|
491 | - 'before' => date( 'Y-n-d 23:59:59', strtotime( $this->to_date ) ), |
|
490 | + 'after' => date('Y-n-d 00:00:00', strtotime($this->from_date)), |
|
491 | + 'before' => date('Y-n-d 23:59:59', strtotime($this->to_date)), |
|
492 | 492 | 'inclusive' => true |
493 | 493 | ) |
494 | 494 | ); |
495 | 495 | } |
496 | 496 | |
497 | - $invoices = wpinv_get_invoices( $args ); |
|
498 | - $total = !empty( $invoices ) ? count( $invoices ) : 0; |
|
497 | + $invoices = wpinv_get_invoices($args); |
|
498 | + $total = !empty($invoices) ? count($invoices) : 0; |
|
499 | 499 | $status = 100; |
500 | 500 | |
501 | - if ( $total > 0 ) { |
|
502 | - $status = ( ( $this->per_page * $this->step ) / $total ) * 100; |
|
501 | + if ($total > 0) { |
|
502 | + $status = (($this->per_page * $this->step) / $total) * 100; |
|
503 | 503 | } |
504 | 504 | |
505 | - if ( $status > 100 ) { |
|
505 | + if ($status > 100) { |
|
506 | 506 | $status = 100; |
507 | 507 | } |
508 | 508 |
@@ -7,90 +7,90 @@ discard block |
||
7 | 7 | */ |
8 | 8 | |
9 | 9 | // MUST have WordPress. |
10 | -if ( !defined( 'WPINC' ) ) { |
|
11 | - exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) ); |
|
10 | +if (!defined('WPINC')) { |
|
11 | + exit('Do NOT access this file directly: ' . basename(__FILE__)); |
|
12 | 12 | } |
13 | 13 | |
14 | 14 | function wpinv_get_discount_types() { |
15 | 15 | $discount_types = array( |
16 | - 'percent' => __( 'Percentage', 'invoicing' ), |
|
17 | - 'flat' => __( 'Flat Amount', 'invoicing' ), |
|
16 | + 'percent' => __('Percentage', 'invoicing'), |
|
17 | + 'flat' => __('Flat Amount', 'invoicing'), |
|
18 | 18 | ); |
19 | - return (array)apply_filters( 'wpinv_discount_types', $discount_types ); |
|
19 | + return (array)apply_filters('wpinv_discount_types', $discount_types); |
|
20 | 20 | } |
21 | 21 | |
22 | -function wpinv_get_discount_type_name( $type = '' ) { |
|
22 | +function wpinv_get_discount_type_name($type = '') { |
|
23 | 23 | $types = wpinv_get_discount_types(); |
24 | - return isset( $types[ $type ] ) ? $types[ $type ] : ''; |
|
24 | + return isset($types[$type]) ? $types[$type] : ''; |
|
25 | 25 | } |
26 | 26 | |
27 | -function wpinv_delete_discount( $data ) { |
|
28 | - if ( ! isset( $data['_wpnonce'] ) || ! wp_verify_nonce( $data['_wpnonce'], 'wpinv_discount_nonce' ) ) { |
|
29 | - wp_die( __( 'Trying to cheat or something?', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) ); |
|
27 | +function wpinv_delete_discount($data) { |
|
28 | + if (!isset($data['_wpnonce']) || !wp_verify_nonce($data['_wpnonce'], 'wpinv_discount_nonce')) { |
|
29 | + wp_die(__('Trying to cheat or something?', 'invoicing'), __('Error', 'invoicing'), array('response' => 403)); |
|
30 | 30 | } |
31 | 31 | |
32 | - if( ! current_user_can( 'manage_options' ) ) { |
|
33 | - wp_die( __( 'You do not have permission to delete discount codes', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) ); |
|
32 | + if (!current_user_can('manage_options')) { |
|
33 | + wp_die(__('You do not have permission to delete discount codes', 'invoicing'), __('Error', 'invoicing'), array('response' => 403)); |
|
34 | 34 | } |
35 | 35 | |
36 | 36 | $discount_id = $data['discount']; |
37 | - wpinv_remove_discount( $discount_id ); |
|
37 | + wpinv_remove_discount($discount_id); |
|
38 | 38 | } |
39 | -add_action( 'wpinv_delete_discount', 'wpinv_delete_discount' ); |
|
39 | +add_action('wpinv_delete_discount', 'wpinv_delete_discount'); |
|
40 | 40 | |
41 | -function wpinv_activate_discount( $data ) { |
|
42 | - if ( ! isset( $data['_wpnonce'] ) || ! wp_verify_nonce( $data['_wpnonce'], 'wpinv_discount_nonce' ) ) { |
|
43 | - wp_die( __( 'Trying to cheat or something?', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) ); |
|
41 | +function wpinv_activate_discount($data) { |
|
42 | + if (!isset($data['_wpnonce']) || !wp_verify_nonce($data['_wpnonce'], 'wpinv_discount_nonce')) { |
|
43 | + wp_die(__('Trying to cheat or something?', 'invoicing'), __('Error', 'invoicing'), array('response' => 403)); |
|
44 | 44 | } |
45 | 45 | |
46 | - if( ! current_user_can( 'manage_options' ) ) { |
|
47 | - wp_die( __( 'You do not have permission to edit discount codes', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) ); |
|
46 | + if (!current_user_can('manage_options')) { |
|
47 | + wp_die(__('You do not have permission to edit discount codes', 'invoicing'), __('Error', 'invoicing'), array('response' => 403)); |
|
48 | 48 | } |
49 | 49 | |
50 | - $id = absint( $data['discount'] ); |
|
51 | - wpinv_update_discount_status( $id, 'publish' ); |
|
50 | + $id = absint($data['discount']); |
|
51 | + wpinv_update_discount_status($id, 'publish'); |
|
52 | 52 | } |
53 | -add_action( 'wpinv_activate_discount', 'wpinv_activate_discount' ); |
|
53 | +add_action('wpinv_activate_discount', 'wpinv_activate_discount'); |
|
54 | 54 | |
55 | -function wpinv_deactivate_discount( $data ) { |
|
56 | - if ( ! isset( $data['_wpnonce'] ) || ! wp_verify_nonce( $data['_wpnonce'], 'wpinv_discount_nonce' ) ) { |
|
57 | - wp_die( __( 'Trying to cheat or something?', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) ); |
|
55 | +function wpinv_deactivate_discount($data) { |
|
56 | + if (!isset($data['_wpnonce']) || !wp_verify_nonce($data['_wpnonce'], 'wpinv_discount_nonce')) { |
|
57 | + wp_die(__('Trying to cheat or something?', 'invoicing'), __('Error', 'invoicing'), array('response' => 403)); |
|
58 | 58 | } |
59 | 59 | |
60 | - if( ! current_user_can( 'manage_options' ) ) { |
|
61 | - wp_die( __( 'You do not have permission to create discount codes', 'invoicing' ), array( 'response' => 403 ) ); |
|
60 | + if (!current_user_can('manage_options')) { |
|
61 | + wp_die(__('You do not have permission to create discount codes', 'invoicing'), array('response' => 403)); |
|
62 | 62 | } |
63 | 63 | |
64 | - $id = absint( $data['discount'] ); |
|
65 | - wpinv_update_discount_status( $id, 'pending' ); |
|
64 | + $id = absint($data['discount']); |
|
65 | + wpinv_update_discount_status($id, 'pending'); |
|
66 | 66 | } |
67 | -add_action( 'wpinv_deactivate_discount', 'wpinv_deactivate_discount' ); |
|
67 | +add_action('wpinv_deactivate_discount', 'wpinv_deactivate_discount'); |
|
68 | 68 | |
69 | -function wpinv_get_discounts( $args = array() ) { |
|
69 | +function wpinv_get_discounts($args = array()) { |
|
70 | 70 | $defaults = array( |
71 | 71 | 'post_type' => 'wpi_discount', |
72 | 72 | 'posts_per_page' => 20, |
73 | 73 | 'paged' => null, |
74 | - 'post_status' => array( 'publish', 'pending', 'draft', 'expired' ) |
|
74 | + 'post_status' => array('publish', 'pending', 'draft', 'expired') |
|
75 | 75 | ); |
76 | 76 | |
77 | - $args = wp_parse_args( $args, $defaults ); |
|
77 | + $args = wp_parse_args($args, $defaults); |
|
78 | 78 | |
79 | - $discounts = get_posts( $args ); |
|
79 | + $discounts = get_posts($args); |
|
80 | 80 | |
81 | - if ( $discounts ) { |
|
81 | + if ($discounts) { |
|
82 | 82 | return $discounts; |
83 | 83 | } |
84 | 84 | |
85 | - if( ! $discounts && ! empty( $args['s'] ) ) { |
|
85 | + if (!$discounts && !empty($args['s'])) { |
|
86 | 86 | $args['meta_key'] = 'gd_discount_code'; |
87 | 87 | $args['meta_value'] = $args['s']; |
88 | 88 | $args['meta_compare'] = 'LIKE'; |
89 | - unset( $args['s'] ); |
|
90 | - $discounts = get_posts( $args ); |
|
89 | + unset($args['s']); |
|
90 | + $discounts = get_posts($args); |
|
91 | 91 | } |
92 | 92 | |
93 | - if( $discounts ) { |
|
93 | + if ($discounts) { |
|
94 | 94 | return $discounts; |
95 | 95 | } |
96 | 96 | |
@@ -102,9 +102,9 @@ discard block |
||
102 | 102 | |
103 | 103 | $discounts = wpinv_get_discounts(); |
104 | 104 | |
105 | - if ( $discounts) { |
|
106 | - foreach ( $discounts as $discount ) { |
|
107 | - if ( wpinv_is_discount_active( $discount->ID ) ) { |
|
105 | + if ($discounts) { |
|
106 | + foreach ($discounts as $discount) { |
|
107 | + if (wpinv_is_discount_active($discount->ID)) { |
|
108 | 108 | $has_active = true; |
109 | 109 | break; |
110 | 110 | } |
@@ -113,38 +113,38 @@ discard block |
||
113 | 113 | return $has_active; |
114 | 114 | } |
115 | 115 | |
116 | -function wpinv_get_discount( $discount_id = 0 ) { |
|
117 | - if( empty( $discount_id ) ) { |
|
116 | +function wpinv_get_discount($discount_id = 0) { |
|
117 | + if (empty($discount_id)) { |
|
118 | 118 | return false; |
119 | 119 | } |
120 | 120 | |
121 | - if ( get_post_type( $discount_id ) != 'wpi_discount' ) { |
|
121 | + if (get_post_type($discount_id) != 'wpi_discount') { |
|
122 | 122 | return false; |
123 | 123 | } |
124 | 124 | |
125 | - $discount = get_post( $discount_id ); |
|
125 | + $discount = get_post($discount_id); |
|
126 | 126 | |
127 | 127 | return $discount; |
128 | 128 | } |
129 | 129 | |
130 | -function wpinv_get_discount_by_code( $code = '' ) { |
|
131 | - if( empty( $code ) || ! is_string( $code ) ) { |
|
130 | +function wpinv_get_discount_by_code($code = '') { |
|
131 | + if (empty($code) || !is_string($code)) { |
|
132 | 132 | return false; |
133 | 133 | } |
134 | 134 | |
135 | - return wpinv_get_discount_by( 'code', $code ); |
|
135 | + return wpinv_get_discount_by('code', $code); |
|
136 | 136 | } |
137 | 137 | |
138 | -function wpinv_get_discount_by( $field = '', $value = '' ) { |
|
139 | - if( empty( $field ) || empty( $value ) ) { |
|
138 | +function wpinv_get_discount_by($field = '', $value = '') { |
|
139 | + if (empty($field) || empty($value)) { |
|
140 | 140 | return false; |
141 | 141 | } |
142 | 142 | |
143 | - if( ! is_string( $field ) ) { |
|
143 | + if (!is_string($field)) { |
|
144 | 144 | return false; |
145 | 145 | } |
146 | 146 | |
147 | - switch( strtolower( $field ) ) { |
|
147 | + switch (strtolower($field)) { |
|
148 | 148 | |
149 | 149 | case 'code': |
150 | 150 | $meta_query = array(); |
@@ -154,32 +154,32 @@ discard block |
||
154 | 154 | 'compare' => '=' |
155 | 155 | ); |
156 | 156 | |
157 | - $discount = wpinv_get_discounts( array( |
|
157 | + $discount = wpinv_get_discounts(array( |
|
158 | 158 | 'posts_per_page' => 1, |
159 | 159 | 'post_status' => 'any', |
160 | 160 | 'meta_query' => $meta_query, |
161 | - ) ); |
|
161 | + )); |
|
162 | 162 | |
163 | - if( $discount ) { |
|
163 | + if ($discount) { |
|
164 | 164 | $discount = $discount[0]; |
165 | 165 | } |
166 | 166 | |
167 | 167 | break; |
168 | 168 | |
169 | 169 | case 'id': |
170 | - $discount = wpinv_get_discount( $value ); |
|
170 | + $discount = wpinv_get_discount($value); |
|
171 | 171 | |
172 | 172 | break; |
173 | 173 | |
174 | 174 | case 'name': |
175 | - $discount = get_posts( array( |
|
175 | + $discount = get_posts(array( |
|
176 | 176 | 'post_type' => 'wpi_discount', |
177 | 177 | 'name' => $value, |
178 | 178 | 'posts_per_page' => 1, |
179 | 179 | 'post_status' => 'any' |
180 | - ) ); |
|
180 | + )); |
|
181 | 181 | |
182 | - if( $discount ) { |
|
182 | + if ($discount) { |
|
183 | 183 | $discount = $discount[0]; |
184 | 184 | } |
185 | 185 | |
@@ -189,99 +189,99 @@ discard block |
||
189 | 189 | return false; |
190 | 190 | } |
191 | 191 | |
192 | - if( ! empty( $discount ) ) { |
|
192 | + if (!empty($discount)) { |
|
193 | 193 | return $discount; |
194 | 194 | } |
195 | 195 | |
196 | 196 | return false; |
197 | 197 | } |
198 | 198 | |
199 | -function wpinv_store_discount( $post_id, $data, $post, $update = false ) { |
|
199 | +function wpinv_store_discount($post_id, $data, $post, $update = false) { |
|
200 | 200 | $meta = array( |
201 | - 'code' => isset( $data['code'] ) ? sanitize_text_field( $data['code'] ) : '', |
|
202 | - 'type' => isset( $data['type'] ) ? sanitize_text_field( $data['type'] ) : 'percent', |
|
203 | - 'amount' => isset( $data['amount'] ) ? wpinv_sanitize_amount( $data['amount'] ) : '', |
|
204 | - 'start' => isset( $data['start'] ) ? sanitize_text_field( $data['start'] ) : '', |
|
205 | - 'expiration' => isset( $data['expiration'] ) ? sanitize_text_field( $data['expiration'] ) : '', |
|
206 | - 'min_total' => isset( $data['min_total'] ) ? wpinv_sanitize_amount( $data['min_total'] ) : '', |
|
207 | - 'max_total' => isset( $data['max_total'] ) ? wpinv_sanitize_amount( $data['max_total'] ) : '', |
|
208 | - 'max_uses' => isset( $data['max_uses'] ) ? absint( $data['max_uses'] ) : '', |
|
209 | - 'items' => isset( $data['items'] ) ? $data['items'] : array(), |
|
210 | - 'excluded_items' => isset( $data['excluded_items'] ) ? $data['excluded_items'] : array(), |
|
211 | - 'is_recurring' => isset( $data['recurring'] ) ? (bool)$data['recurring'] : false, |
|
212 | - 'is_single_use' => isset( $data['single_use'] ) ? (bool)$data['single_use'] : false, |
|
213 | - 'uses' => isset( $data['uses'] ) ? (int)$data['uses'] : false, |
|
201 | + 'code' => isset($data['code']) ? sanitize_text_field($data['code']) : '', |
|
202 | + 'type' => isset($data['type']) ? sanitize_text_field($data['type']) : 'percent', |
|
203 | + 'amount' => isset($data['amount']) ? wpinv_sanitize_amount($data['amount']) : '', |
|
204 | + 'start' => isset($data['start']) ? sanitize_text_field($data['start']) : '', |
|
205 | + 'expiration' => isset($data['expiration']) ? sanitize_text_field($data['expiration']) : '', |
|
206 | + 'min_total' => isset($data['min_total']) ? wpinv_sanitize_amount($data['min_total']) : '', |
|
207 | + 'max_total' => isset($data['max_total']) ? wpinv_sanitize_amount($data['max_total']) : '', |
|
208 | + 'max_uses' => isset($data['max_uses']) ? absint($data['max_uses']) : '', |
|
209 | + 'items' => isset($data['items']) ? $data['items'] : array(), |
|
210 | + 'excluded_items' => isset($data['excluded_items']) ? $data['excluded_items'] : array(), |
|
211 | + 'is_recurring' => isset($data['recurring']) ? (bool)$data['recurring'] : false, |
|
212 | + 'is_single_use' => isset($data['single_use']) ? (bool)$data['single_use'] : false, |
|
213 | + 'uses' => isset($data['uses']) ? (int)$data['uses'] : false, |
|
214 | 214 | ); |
215 | 215 | |
216 | - $start_timestamp = strtotime( $meta['start'] ); |
|
216 | + $start_timestamp = strtotime($meta['start']); |
|
217 | 217 | |
218 | - if ( !empty( $meta['start'] ) ) { |
|
219 | - $meta['start'] = date( 'Y-m-d H:i:s', $start_timestamp ); |
|
218 | + if (!empty($meta['start'])) { |
|
219 | + $meta['start'] = date('Y-m-d H:i:s', $start_timestamp); |
|
220 | 220 | } |
221 | 221 | |
222 | - if ( $meta['type'] == 'percent' && (float)$meta['amount'] > 100 ) { |
|
222 | + if ($meta['type'] == 'percent' && (float)$meta['amount'] > 100) { |
|
223 | 223 | $meta['amount'] = 100; |
224 | 224 | } |
225 | 225 | |
226 | - if ( !empty( $meta['expiration'] ) ) { |
|
227 | - $meta['expiration'] = date( 'Y-m-d H:i:s', strtotime( date( 'Y-m-d', strtotime( $meta['expiration'] ) ) . ' 23:59:59' ) ); |
|
228 | - $end_timestamp = strtotime( $meta['expiration'] ); |
|
226 | + if (!empty($meta['expiration'])) { |
|
227 | + $meta['expiration'] = date('Y-m-d H:i:s', strtotime(date('Y-m-d', strtotime($meta['expiration'])) . ' 23:59:59')); |
|
228 | + $end_timestamp = strtotime($meta['expiration']); |
|
229 | 229 | |
230 | - if ( !empty( $meta['start'] ) && $start_timestamp > $end_timestamp ) { |
|
230 | + if (!empty($meta['start']) && $start_timestamp > $end_timestamp) { |
|
231 | 231 | $meta['expiration'] = $meta['start']; // Set the expiration date to the start date if start is later than expiration date. |
232 | 232 | } |
233 | 233 | } |
234 | 234 | |
235 | - if ( $meta['uses'] === false ) { |
|
236 | - unset( $meta['uses'] ); |
|
235 | + if ($meta['uses'] === false) { |
|
236 | + unset($meta['uses']); |
|
237 | 237 | } |
238 | 238 | |
239 | - if ( ! empty( $meta['items'] ) ) { |
|
240 | - foreach ( $meta['items'] as $key => $item ) { |
|
241 | - if ( 0 === intval( $item ) ) { |
|
242 | - unset( $meta['items'][ $key ] ); |
|
239 | + if (!empty($meta['items'])) { |
|
240 | + foreach ($meta['items'] as $key => $item) { |
|
241 | + if (0 === intval($item)) { |
|
242 | + unset($meta['items'][$key]); |
|
243 | 243 | } |
244 | 244 | } |
245 | 245 | } |
246 | 246 | |
247 | - if ( ! empty( $meta['excluded_items'] ) ) { |
|
248 | - foreach ( $meta['excluded_items'] as $key => $item ) { |
|
249 | - if ( 0 === intval( $item ) ) { |
|
250 | - unset( $meta['excluded_items'][ $key ] ); |
|
247 | + if (!empty($meta['excluded_items'])) { |
|
248 | + foreach ($meta['excluded_items'] as $key => $item) { |
|
249 | + if (0 === intval($item)) { |
|
250 | + unset($meta['excluded_items'][$key]); |
|
251 | 251 | } |
252 | 252 | } |
253 | 253 | } |
254 | 254 | |
255 | - $meta = apply_filters( 'wpinv_update_discount', $meta, $post_id, $post ); |
|
255 | + $meta = apply_filters('wpinv_update_discount', $meta, $post_id, $post); |
|
256 | 256 | |
257 | - do_action( 'wpinv_pre_update_discount', $meta, $post_id, $post ); |
|
257 | + do_action('wpinv_pre_update_discount', $meta, $post_id, $post); |
|
258 | 258 | |
259 | - foreach( $meta as $key => $value ) { |
|
260 | - update_post_meta( $post_id, '_wpi_discount_' . $key, $value ); |
|
259 | + foreach ($meta as $key => $value) { |
|
260 | + update_post_meta($post_id, '_wpi_discount_' . $key, $value); |
|
261 | 261 | } |
262 | 262 | |
263 | - do_action( 'wpinv_post_update_discount', $meta, $post_id, $post ); |
|
263 | + do_action('wpinv_post_update_discount', $meta, $post_id, $post); |
|
264 | 264 | |
265 | 265 | return $post_id; |
266 | 266 | } |
267 | 267 | |
268 | -function wpinv_remove_discount( $discount_id = 0 ) { |
|
269 | - do_action( 'wpinv_pre_delete_discount', $discount_id ); |
|
268 | +function wpinv_remove_discount($discount_id = 0) { |
|
269 | + do_action('wpinv_pre_delete_discount', $discount_id); |
|
270 | 270 | |
271 | - wp_delete_post( $discount_id, true ); |
|
271 | + wp_delete_post($discount_id, true); |
|
272 | 272 | |
273 | - do_action( 'wpinv_post_delete_discount', $discount_id ); |
|
273 | + do_action('wpinv_post_delete_discount', $discount_id); |
|
274 | 274 | } |
275 | 275 | |
276 | -function wpinv_update_discount_status( $code_id = 0, $new_status = 'publish' ) { |
|
277 | - $discount = wpinv_get_discount( $code_id ); |
|
276 | +function wpinv_update_discount_status($code_id = 0, $new_status = 'publish') { |
|
277 | + $discount = wpinv_get_discount($code_id); |
|
278 | 278 | |
279 | - if ( $discount ) { |
|
280 | - do_action( 'wpinv_pre_update_discount_status', $code_id, $new_status, $discount->post_status ); |
|
279 | + if ($discount) { |
|
280 | + do_action('wpinv_pre_update_discount_status', $code_id, $new_status, $discount->post_status); |
|
281 | 281 | |
282 | - wp_update_post( array( 'ID' => $code_id, 'post_status' => $new_status ) ); |
|
282 | + wp_update_post(array('ID' => $code_id, 'post_status' => $new_status)); |
|
283 | 283 | |
284 | - do_action( 'wpinv_post_update_discount_status', $code_id, $new_status, $discount->post_status ); |
|
284 | + do_action('wpinv_post_update_discount_status', $code_id, $new_status, $discount->post_status); |
|
285 | 285 | |
286 | 286 | return true; |
287 | 287 | } |
@@ -289,173 +289,173 @@ discard block |
||
289 | 289 | return false; |
290 | 290 | } |
291 | 291 | |
292 | -function wpinv_discount_exists( $code_id ) { |
|
293 | - if ( wpinv_get_discount( $code_id ) ) { |
|
292 | +function wpinv_discount_exists($code_id) { |
|
293 | + if (wpinv_get_discount($code_id)) { |
|
294 | 294 | return true; |
295 | 295 | } |
296 | 296 | |
297 | 297 | return false; |
298 | 298 | } |
299 | 299 | |
300 | -function wpinv_is_discount_active( $code_id = null ) { |
|
301 | - $discount = wpinv_get_discount( $code_id ); |
|
300 | +function wpinv_is_discount_active($code_id = null) { |
|
301 | + $discount = wpinv_get_discount($code_id); |
|
302 | 302 | $return = false; |
303 | 303 | |
304 | - if ( $discount ) { |
|
305 | - if ( wpinv_is_discount_expired( $code_id ) ) { |
|
306 | - if( defined( 'DOING_AJAX' ) ) { |
|
307 | - wpinv_set_error( 'wpinv-discount-error', __( 'This discount is expired.', 'invoicing' ) ); |
|
304 | + if ($discount) { |
|
305 | + if (wpinv_is_discount_expired($code_id)) { |
|
306 | + if (defined('DOING_AJAX')) { |
|
307 | + wpinv_set_error('wpinv-discount-error', __('This discount is expired.', 'invoicing')); |
|
308 | 308 | } |
309 | - } elseif ( $discount->post_status == 'publish' ) { |
|
309 | + } elseif ($discount->post_status == 'publish') { |
|
310 | 310 | $return = true; |
311 | 311 | } else { |
312 | - if( defined( 'DOING_AJAX' ) ) { |
|
313 | - wpinv_set_error( 'wpinv-discount-error', __( 'This discount is not active.', 'invoicing' ) ); |
|
312 | + if (defined('DOING_AJAX')) { |
|
313 | + wpinv_set_error('wpinv-discount-error', __('This discount is not active.', 'invoicing')); |
|
314 | 314 | } |
315 | 315 | } |
316 | 316 | } |
317 | 317 | |
318 | - return apply_filters( 'wpinv_is_discount_active', $return, $code_id ); |
|
318 | + return apply_filters('wpinv_is_discount_active', $return, $code_id); |
|
319 | 319 | } |
320 | 320 | |
321 | -function wpinv_get_discount_code( $code_id = null ) { |
|
322 | - $code = get_post_meta( $code_id, '_wpi_discount_code', true ); |
|
321 | +function wpinv_get_discount_code($code_id = null) { |
|
322 | + $code = get_post_meta($code_id, '_wpi_discount_code', true); |
|
323 | 323 | |
324 | - return apply_filters( 'wpinv_get_discount_code', $code, $code_id ); |
|
324 | + return apply_filters('wpinv_get_discount_code', $code, $code_id); |
|
325 | 325 | } |
326 | 326 | |
327 | -function wpinv_get_discount_start_date( $code_id = null ) { |
|
328 | - $start_date = get_post_meta( $code_id, '_wpi_discount_start', true ); |
|
327 | +function wpinv_get_discount_start_date($code_id = null) { |
|
328 | + $start_date = get_post_meta($code_id, '_wpi_discount_start', true); |
|
329 | 329 | |
330 | - return apply_filters( 'wpinv_get_discount_start_date', $start_date, $code_id ); |
|
330 | + return apply_filters('wpinv_get_discount_start_date', $start_date, $code_id); |
|
331 | 331 | } |
332 | 332 | |
333 | -function wpinv_get_discount_expiration( $code_id = null ) { |
|
334 | - $expiration = get_post_meta( $code_id, '_wpi_discount_expiration', true ); |
|
333 | +function wpinv_get_discount_expiration($code_id = null) { |
|
334 | + $expiration = get_post_meta($code_id, '_wpi_discount_expiration', true); |
|
335 | 335 | |
336 | - return apply_filters( 'wpinv_get_discount_expiration', $expiration, $code_id ); |
|
336 | + return apply_filters('wpinv_get_discount_expiration', $expiration, $code_id); |
|
337 | 337 | } |
338 | 338 | |
339 | -function wpinv_get_discount_max_uses( $code_id = null ) { |
|
340 | - $max_uses = get_post_meta( $code_id, '_wpi_discount_max_uses', true ); |
|
339 | +function wpinv_get_discount_max_uses($code_id = null) { |
|
340 | + $max_uses = get_post_meta($code_id, '_wpi_discount_max_uses', true); |
|
341 | 341 | |
342 | - return (int) apply_filters( 'wpinv_get_discount_max_uses', $max_uses, $code_id ); |
|
342 | + return (int)apply_filters('wpinv_get_discount_max_uses', $max_uses, $code_id); |
|
343 | 343 | } |
344 | 344 | |
345 | -function wpinv_get_discount_uses( $code_id = null ) { |
|
346 | - $uses = get_post_meta( $code_id, '_wpi_discount_uses', true ); |
|
345 | +function wpinv_get_discount_uses($code_id = null) { |
|
346 | + $uses = get_post_meta($code_id, '_wpi_discount_uses', true); |
|
347 | 347 | |
348 | - return (int) apply_filters( 'wpinv_get_discount_uses', $uses, $code_id ); |
|
348 | + return (int)apply_filters('wpinv_get_discount_uses', $uses, $code_id); |
|
349 | 349 | } |
350 | 350 | |
351 | -function wpinv_get_discount_min_total( $code_id = null ) { |
|
352 | - $min_total = get_post_meta( $code_id, '_wpi_discount_min_total', true ); |
|
351 | +function wpinv_get_discount_min_total($code_id = null) { |
|
352 | + $min_total = get_post_meta($code_id, '_wpi_discount_min_total', true); |
|
353 | 353 | |
354 | - return (float) apply_filters( 'wpinv_get_discount_min_total', $min_total, $code_id ); |
|
354 | + return (float)apply_filters('wpinv_get_discount_min_total', $min_total, $code_id); |
|
355 | 355 | } |
356 | 356 | |
357 | -function wpinv_get_discount_max_total( $code_id = null ) { |
|
358 | - $max_total = get_post_meta( $code_id, '_wpi_discount_max_total', true ); |
|
357 | +function wpinv_get_discount_max_total($code_id = null) { |
|
358 | + $max_total = get_post_meta($code_id, '_wpi_discount_max_total', true); |
|
359 | 359 | |
360 | - return (float) apply_filters( 'wpinv_get_discount_max_total', $max_total, $code_id ); |
|
360 | + return (float)apply_filters('wpinv_get_discount_max_total', $max_total, $code_id); |
|
361 | 361 | } |
362 | 362 | |
363 | -function wpinv_get_discount_amount( $code_id = null ) { |
|
364 | - $amount = get_post_meta( $code_id, '_wpi_discount_amount', true ); |
|
363 | +function wpinv_get_discount_amount($code_id = null) { |
|
364 | + $amount = get_post_meta($code_id, '_wpi_discount_amount', true); |
|
365 | 365 | |
366 | - return (float) apply_filters( 'wpinv_get_discount_amount', $amount, $code_id ); |
|
366 | + return (float)apply_filters('wpinv_get_discount_amount', $amount, $code_id); |
|
367 | 367 | } |
368 | 368 | |
369 | -function wpinv_get_discount_type( $code_id = null, $name = false ) { |
|
370 | - $type = strtolower( get_post_meta( $code_id, '_wpi_discount_type', true ) ); |
|
369 | +function wpinv_get_discount_type($code_id = null, $name = false) { |
|
370 | + $type = strtolower(get_post_meta($code_id, '_wpi_discount_type', true)); |
|
371 | 371 | |
372 | - if ( $name ) { |
|
373 | - $name = wpinv_get_discount_type_name( $type ); |
|
372 | + if ($name) { |
|
373 | + $name = wpinv_get_discount_type_name($type); |
|
374 | 374 | |
375 | - return apply_filters( 'wpinv_get_discount_type_name', $name, $code_id ); |
|
375 | + return apply_filters('wpinv_get_discount_type_name', $name, $code_id); |
|
376 | 376 | } |
377 | 377 | |
378 | - return apply_filters( 'wpinv_get_discount_type', $type, $code_id ); |
|
378 | + return apply_filters('wpinv_get_discount_type', $type, $code_id); |
|
379 | 379 | } |
380 | 380 | |
381 | -function wpinv_discount_status( $status ) { |
|
382 | - switch( $status ){ |
|
381 | +function wpinv_discount_status($status) { |
|
382 | + switch ($status) { |
|
383 | 383 | case 'expired' : |
384 | - $name = __( 'Expired', 'invoicing' ); |
|
384 | + $name = __('Expired', 'invoicing'); |
|
385 | 385 | break; |
386 | 386 | case 'publish' : |
387 | 387 | case 'active' : |
388 | - $name = __( 'Active', 'invoicing' ); |
|
388 | + $name = __('Active', 'invoicing'); |
|
389 | 389 | break; |
390 | 390 | default : |
391 | - $name = __( 'Inactive', 'invoicing' ); |
|
391 | + $name = __('Inactive', 'invoicing'); |
|
392 | 392 | break; |
393 | 393 | } |
394 | 394 | return $name; |
395 | 395 | } |
396 | 396 | |
397 | -function wpinv_get_discount_excluded_items( $code_id = null ) { |
|
398 | - $excluded_items = get_post_meta( $code_id, '_wpi_discount_excluded_items', true ); |
|
397 | +function wpinv_get_discount_excluded_items($code_id = null) { |
|
398 | + $excluded_items = get_post_meta($code_id, '_wpi_discount_excluded_items', true); |
|
399 | 399 | |
400 | - if ( empty( $excluded_items ) || ! is_array( $excluded_items ) ) { |
|
400 | + if (empty($excluded_items) || !is_array($excluded_items)) { |
|
401 | 401 | $excluded_items = array(); |
402 | 402 | } |
403 | 403 | |
404 | - return (array) apply_filters( 'wpinv_get_discount_excluded_items', $excluded_items, $code_id ); |
|
404 | + return (array)apply_filters('wpinv_get_discount_excluded_items', $excluded_items, $code_id); |
|
405 | 405 | } |
406 | 406 | |
407 | -function wpinv_get_discount_item_reqs( $code_id = null ) { |
|
408 | - $item_reqs = get_post_meta( $code_id, '_wpi_discount_items', true ); |
|
407 | +function wpinv_get_discount_item_reqs($code_id = null) { |
|
408 | + $item_reqs = get_post_meta($code_id, '_wpi_discount_items', true); |
|
409 | 409 | |
410 | - if ( empty( $item_reqs ) || ! is_array( $item_reqs ) ) { |
|
410 | + if (empty($item_reqs) || !is_array($item_reqs)) { |
|
411 | 411 | $item_reqs = array(); |
412 | 412 | } |
413 | 413 | |
414 | - return (array) apply_filters( 'wpinv_get_discount_item_reqs', $item_reqs, $code_id ); |
|
414 | + return (array)apply_filters('wpinv_get_discount_item_reqs', $item_reqs, $code_id); |
|
415 | 415 | } |
416 | 416 | |
417 | -function wpinv_get_discount_item_condition( $code_id = 0 ) { |
|
418 | - return get_post_meta( $code_id, '_wpi_discount_item_condition', true ); |
|
417 | +function wpinv_get_discount_item_condition($code_id = 0) { |
|
418 | + return get_post_meta($code_id, '_wpi_discount_item_condition', true); |
|
419 | 419 | } |
420 | 420 | |
421 | -function wpinv_is_discount_not_global( $code_id = 0 ) { |
|
422 | - return (bool) get_post_meta( $code_id, '_wpi_discount_is_not_global', true ); |
|
421 | +function wpinv_is_discount_not_global($code_id = 0) { |
|
422 | + return (bool)get_post_meta($code_id, '_wpi_discount_is_not_global', true); |
|
423 | 423 | } |
424 | 424 | |
425 | -function wpinv_is_discount_expired( $code_id = null ) { |
|
426 | - $discount = wpinv_get_discount( $code_id ); |
|
425 | +function wpinv_is_discount_expired($code_id = null) { |
|
426 | + $discount = wpinv_get_discount($code_id); |
|
427 | 427 | $return = false; |
428 | 428 | |
429 | - if ( $discount ) { |
|
430 | - $expiration = wpinv_get_discount_expiration( $code_id ); |
|
431 | - if ( $expiration ) { |
|
432 | - $expiration = strtotime( $expiration ); |
|
433 | - if ( $expiration < current_time( 'timestamp' ) ) { |
|
429 | + if ($discount) { |
|
430 | + $expiration = wpinv_get_discount_expiration($code_id); |
|
431 | + if ($expiration) { |
|
432 | + $expiration = strtotime($expiration); |
|
433 | + if ($expiration < current_time('timestamp')) { |
|
434 | 434 | // Discount is expired |
435 | - wpinv_update_discount_status( $code_id, 'pending' ); |
|
435 | + wpinv_update_discount_status($code_id, 'pending'); |
|
436 | 436 | $return = true; |
437 | 437 | } |
438 | 438 | } |
439 | 439 | } |
440 | 440 | |
441 | - return apply_filters( 'wpinv_is_discount_expired', $return, $code_id ); |
|
441 | + return apply_filters('wpinv_is_discount_expired', $return, $code_id); |
|
442 | 442 | } |
443 | 443 | |
444 | -function wpinv_is_discount_started( $code_id = null ) { |
|
445 | - $discount = wpinv_get_discount( $code_id ); |
|
444 | +function wpinv_is_discount_started($code_id = null) { |
|
445 | + $discount = wpinv_get_discount($code_id); |
|
446 | 446 | $return = false; |
447 | 447 | |
448 | - if ( $discount ) { |
|
449 | - $start_date = wpinv_get_discount_start_date( $code_id ); |
|
448 | + if ($discount) { |
|
449 | + $start_date = wpinv_get_discount_start_date($code_id); |
|
450 | 450 | |
451 | - if ( $start_date ) { |
|
452 | - $start_date = strtotime( $start_date ); |
|
451 | + if ($start_date) { |
|
452 | + $start_date = strtotime($start_date); |
|
453 | 453 | |
454 | - if ( $start_date < current_time( 'timestamp' ) ) { |
|
454 | + if ($start_date < current_time('timestamp')) { |
|
455 | 455 | // Discount has past the start date |
456 | 456 | $return = true; |
457 | 457 | } else { |
458 | - wpinv_set_error( 'wpinv-discount-error', __( 'This discount is not active yet.', 'invoicing' ) ); |
|
458 | + wpinv_set_error('wpinv-discount-error', __('This discount is not active yet.', 'invoicing')); |
|
459 | 459 | } |
460 | 460 | } else { |
461 | 461 | // No start date for this discount, so has to be true |
@@ -463,159 +463,159 @@ discard block |
||
463 | 463 | } |
464 | 464 | } |
465 | 465 | |
466 | - return apply_filters( 'wpinv_is_discount_started', $return, $code_id ); |
|
466 | + return apply_filters('wpinv_is_discount_started', $return, $code_id); |
|
467 | 467 | } |
468 | 468 | |
469 | -function wpinv_check_discount_dates( $code_id = null ) { |
|
470 | - $discount = wpinv_get_discount( $code_id ); |
|
469 | +function wpinv_check_discount_dates($code_id = null) { |
|
470 | + $discount = wpinv_get_discount($code_id); |
|
471 | 471 | $return = false; |
472 | 472 | |
473 | - if ( $discount ) { |
|
474 | - $start_date = wpinv_get_discount_start_date( $code_id ); |
|
473 | + if ($discount) { |
|
474 | + $start_date = wpinv_get_discount_start_date($code_id); |
|
475 | 475 | |
476 | - if ( $start_date ) { |
|
477 | - $start_date = strtotime( $start_date ); |
|
476 | + if ($start_date) { |
|
477 | + $start_date = strtotime($start_date); |
|
478 | 478 | |
479 | - if ( $start_date < current_time( 'timestamp' ) ) { |
|
479 | + if ($start_date < current_time('timestamp')) { |
|
480 | 480 | // Discount has past the start date |
481 | 481 | $return = true; |
482 | 482 | } else { |
483 | - wpinv_set_error( 'wpinv-discount-error', __( 'This discount is not active yet.', 'invoicing' ) ); |
|
483 | + wpinv_set_error('wpinv-discount-error', __('This discount is not active yet.', 'invoicing')); |
|
484 | 484 | } |
485 | 485 | } else { |
486 | 486 | // No start date for this discount, so has to be true |
487 | 487 | $return = true; |
488 | 488 | } |
489 | 489 | |
490 | - if ( $return ) { |
|
491 | - $expiration = wpinv_get_discount_expiration( $code_id ); |
|
490 | + if ($return) { |
|
491 | + $expiration = wpinv_get_discount_expiration($code_id); |
|
492 | 492 | |
493 | - if ( $expiration ) { |
|
494 | - $expiration = strtotime( $expiration ); |
|
495 | - if ( $expiration < current_time( 'timestamp' ) ) { |
|
493 | + if ($expiration) { |
|
494 | + $expiration = strtotime($expiration); |
|
495 | + if ($expiration < current_time('timestamp')) { |
|
496 | 496 | // Discount is expired |
497 | - wpinv_update_discount_status( $code_id, 'pending' ); |
|
497 | + wpinv_update_discount_status($code_id, 'pending'); |
|
498 | 498 | $return = true; |
499 | 499 | } |
500 | 500 | } |
501 | 501 | } |
502 | 502 | } |
503 | 503 | |
504 | - return apply_filters( 'wpinv_check_discount_dates', $return, $code_id ); |
|
504 | + return apply_filters('wpinv_check_discount_dates', $return, $code_id); |
|
505 | 505 | } |
506 | 506 | |
507 | -function wpinv_is_discount_maxed_out( $code_id = null ) { |
|
508 | - $discount = wpinv_get_discount( $code_id ); |
|
507 | +function wpinv_is_discount_maxed_out($code_id = null) { |
|
508 | + $discount = wpinv_get_discount($code_id); |
|
509 | 509 | $return = false; |
510 | 510 | |
511 | - if ( $discount ) { |
|
512 | - $uses = wpinv_get_discount_uses( $code_id ); |
|
511 | + if ($discount) { |
|
512 | + $uses = wpinv_get_discount_uses($code_id); |
|
513 | 513 | // Large number that will never be reached |
514 | - $max_uses = wpinv_get_discount_max_uses( $code_id ); |
|
514 | + $max_uses = wpinv_get_discount_max_uses($code_id); |
|
515 | 515 | // Should never be greater than, but just in case |
516 | - if ( $uses >= $max_uses && ! empty( $max_uses ) ) { |
|
516 | + if ($uses >= $max_uses && !empty($max_uses)) { |
|
517 | 517 | // Discount is maxed out |
518 | - wpinv_set_error( 'wpinv-discount-error', __( 'This discount has reached its maximum usage.', 'invoicing' ) ); |
|
518 | + wpinv_set_error('wpinv-discount-error', __('This discount has reached its maximum usage.', 'invoicing')); |
|
519 | 519 | $return = true; |
520 | 520 | } |
521 | 521 | } |
522 | 522 | |
523 | - return apply_filters( 'wpinv_is_discount_maxed_out', $return, $code_id ); |
|
523 | + return apply_filters('wpinv_is_discount_maxed_out', $return, $code_id); |
|
524 | 524 | } |
525 | 525 | |
526 | -function wpinv_discount_is_min_met( $code_id = null ) { |
|
527 | - $discount = wpinv_get_discount( $code_id ); |
|
526 | +function wpinv_discount_is_min_met($code_id = null) { |
|
527 | + $discount = wpinv_get_discount($code_id); |
|
528 | 528 | $return = false; |
529 | 529 | |
530 | - if ( $discount ) { |
|
531 | - $min = (float)wpinv_get_discount_min_total( $code_id ); |
|
532 | - $cart_amount = (float)wpinv_get_cart_discountable_subtotal( $code_id ); |
|
530 | + if ($discount) { |
|
531 | + $min = (float)wpinv_get_discount_min_total($code_id); |
|
532 | + $cart_amount = (float)wpinv_get_cart_discountable_subtotal($code_id); |
|
533 | 533 | |
534 | - if ( !$min > 0 || $cart_amount >= $min ) { |
|
534 | + if (!$min > 0 || $cart_amount >= $min) { |
|
535 | 535 | // Minimum has been met |
536 | 536 | $return = true; |
537 | 537 | } else { |
538 | - wpinv_set_error( 'wpinv-discount-error', sprintf( __( 'Minimum invoice of %s not met.', 'invoicing' ), wpinv_price( wpinv_format_amount( $min ) ) ) ); |
|
538 | + wpinv_set_error('wpinv-discount-error', sprintf(__('Minimum invoice of %s not met.', 'invoicing'), wpinv_price(wpinv_format_amount($min)))); |
|
539 | 539 | } |
540 | 540 | } |
541 | 541 | |
542 | - return apply_filters( 'wpinv_is_discount_min_met', $return, $code_id ); |
|
542 | + return apply_filters('wpinv_is_discount_min_met', $return, $code_id); |
|
543 | 543 | } |
544 | 544 | |
545 | -function wpinv_discount_is_max_met( $code_id = null ) { |
|
546 | - $discount = wpinv_get_discount( $code_id ); |
|
545 | +function wpinv_discount_is_max_met($code_id = null) { |
|
546 | + $discount = wpinv_get_discount($code_id); |
|
547 | 547 | $return = false; |
548 | 548 | |
549 | - if ( $discount ) { |
|
550 | - $max = (float)wpinv_get_discount_max_total( $code_id ); |
|
551 | - $cart_amount = (float)wpinv_get_cart_discountable_subtotal( $code_id ); |
|
549 | + if ($discount) { |
|
550 | + $max = (float)wpinv_get_discount_max_total($code_id); |
|
551 | + $cart_amount = (float)wpinv_get_cart_discountable_subtotal($code_id); |
|
552 | 552 | |
553 | - if ( !$max > 0 || $cart_amount <= $max ) { |
|
553 | + if (!$max > 0 || $cart_amount <= $max) { |
|
554 | 554 | // Minimum has been met |
555 | 555 | $return = true; |
556 | 556 | } else { |
557 | - wpinv_set_error( 'wpinv-discount-error', sprintf( __( 'Maximum invoice of %s not met.', 'invoicing' ), wpinv_price( wpinv_format_amount( $max ) ) ) ); |
|
557 | + wpinv_set_error('wpinv-discount-error', sprintf(__('Maximum invoice of %s not met.', 'invoicing'), wpinv_price(wpinv_format_amount($max)))); |
|
558 | 558 | } |
559 | 559 | } |
560 | 560 | |
561 | - return apply_filters( 'wpinv_is_discount_max_met', $return, $code_id ); |
|
561 | + return apply_filters('wpinv_is_discount_max_met', $return, $code_id); |
|
562 | 562 | } |
563 | 563 | |
564 | -function wpinv_discount_is_single_use( $code_id = 0 ) { |
|
565 | - $single_use = get_post_meta( $code_id, '_wpi_discount_is_single_use', true ); |
|
566 | - return (bool) apply_filters( 'wpinv_is_discount_single_use', $single_use, $code_id ); |
|
564 | +function wpinv_discount_is_single_use($code_id = 0) { |
|
565 | + $single_use = get_post_meta($code_id, '_wpi_discount_is_single_use', true); |
|
566 | + return (bool)apply_filters('wpinv_is_discount_single_use', $single_use, $code_id); |
|
567 | 567 | } |
568 | 568 | |
569 | -function wpinv_discount_is_recurring( $code_id = 0, $code = false ) { |
|
570 | - if ( $code ) { |
|
571 | - $discount = wpinv_get_discount_by_code( $code_id ); |
|
569 | +function wpinv_discount_is_recurring($code_id = 0, $code = false) { |
|
570 | + if ($code) { |
|
571 | + $discount = wpinv_get_discount_by_code($code_id); |
|
572 | 572 | |
573 | - if ( !empty( $discount ) ) { |
|
573 | + if (!empty($discount)) { |
|
574 | 574 | $code_id = $discount->ID; |
575 | 575 | } |
576 | 576 | } |
577 | 577 | |
578 | - $recurring = get_post_meta( $code_id, '_wpi_discount_is_recurring', true ); |
|
578 | + $recurring = get_post_meta($code_id, '_wpi_discount_is_recurring', true); |
|
579 | 579 | |
580 | - return (bool) apply_filters( 'wpinv_is_discount_recurring', $recurring, $code_id, $code ); |
|
580 | + return (bool)apply_filters('wpinv_is_discount_recurring', $recurring, $code_id, $code); |
|
581 | 581 | } |
582 | 582 | |
583 | -function wpinv_discount_item_reqs_met( $code_id = null ) { |
|
584 | - $item_reqs = wpinv_get_discount_item_reqs( $code_id ); |
|
585 | - $condition = wpinv_get_discount_item_condition( $code_id ); |
|
586 | - $excluded_ps = wpinv_get_discount_excluded_items( $code_id ); |
|
583 | +function wpinv_discount_item_reqs_met($code_id = null) { |
|
584 | + $item_reqs = wpinv_get_discount_item_reqs($code_id); |
|
585 | + $condition = wpinv_get_discount_item_condition($code_id); |
|
586 | + $excluded_ps = wpinv_get_discount_excluded_items($code_id); |
|
587 | 587 | $cart_items = wpinv_get_cart_contents(); |
588 | - $cart_ids = $cart_items ? wp_list_pluck( $cart_items, 'id' ) : null; |
|
588 | + $cart_ids = $cart_items ? wp_list_pluck($cart_items, 'id') : null; |
|
589 | 589 | $ret = false; |
590 | 590 | |
591 | - if ( empty( $item_reqs ) && empty( $excluded_ps ) ) { |
|
591 | + if (empty($item_reqs) && empty($excluded_ps)) { |
|
592 | 592 | $ret = true; |
593 | 593 | } |
594 | 594 | |
595 | 595 | // Normalize our data for item requirements, exclusions and cart data |
596 | 596 | // First absint the items, then sort, and reset the array keys |
597 | - $item_reqs = array_map( 'absint', $item_reqs ); |
|
598 | - asort( $item_reqs ); |
|
599 | - $item_reqs = array_values( $item_reqs ); |
|
597 | + $item_reqs = array_map('absint', $item_reqs); |
|
598 | + asort($item_reqs); |
|
599 | + $item_reqs = array_values($item_reqs); |
|
600 | 600 | |
601 | - $excluded_ps = array_map( 'absint', $excluded_ps ); |
|
602 | - asort( $excluded_ps ); |
|
603 | - $excluded_ps = array_values( $excluded_ps ); |
|
601 | + $excluded_ps = array_map('absint', $excluded_ps); |
|
602 | + asort($excluded_ps); |
|
603 | + $excluded_ps = array_values($excluded_ps); |
|
604 | 604 | |
605 | - $cart_ids = array_map( 'absint', $cart_ids ); |
|
606 | - asort( $cart_ids ); |
|
607 | - $cart_ids = array_values( $cart_ids ); |
|
605 | + $cart_ids = array_map('absint', $cart_ids); |
|
606 | + asort($cart_ids); |
|
607 | + $cart_ids = array_values($cart_ids); |
|
608 | 608 | |
609 | 609 | // Ensure we have requirements before proceeding |
610 | - if ( !$ret && ! empty( $item_reqs ) ) { |
|
611 | - switch( $condition ) { |
|
610 | + if (!$ret && !empty($item_reqs)) { |
|
611 | + switch ($condition) { |
|
612 | 612 | case 'all' : |
613 | 613 | // Default back to true |
614 | 614 | $ret = true; |
615 | 615 | |
616 | - foreach ( $item_reqs as $item_id ) { |
|
617 | - if ( !wpinv_item_in_cart( $item_id ) ) { |
|
618 | - wpinv_set_error( 'wpinv-discount-error', __( 'The item requirements for this discount are not met.', 'invoicing' ) ); |
|
616 | + foreach ($item_reqs as $item_id) { |
|
617 | + if (!wpinv_item_in_cart($item_id)) { |
|
618 | + wpinv_set_error('wpinv-discount-error', __('The item requirements for this discount are not met.', 'invoicing')); |
|
619 | 619 | $ret = false; |
620 | 620 | break; |
621 | 621 | } |
@@ -624,15 +624,15 @@ discard block |
||
624 | 624 | break; |
625 | 625 | |
626 | 626 | default : // Any |
627 | - foreach ( $item_reqs as $item_id ) { |
|
628 | - if ( wpinv_item_in_cart( $item_id ) ) { |
|
627 | + foreach ($item_reqs as $item_id) { |
|
628 | + if (wpinv_item_in_cart($item_id)) { |
|
629 | 629 | $ret = true; |
630 | 630 | break; |
631 | 631 | } |
632 | 632 | } |
633 | 633 | |
634 | - if( ! $ret ) { |
|
635 | - wpinv_set_error( 'wpinv-discount-error', __( 'The item requirements for this discount are not met.', 'invoicing' ) ); |
|
634 | + if (!$ret) { |
|
635 | + wpinv_set_error('wpinv-discount-error', __('The item requirements for this discount are not met.', 'invoicing')); |
|
636 | 636 | } |
637 | 637 | |
638 | 638 | break; |
@@ -641,68 +641,68 @@ discard block |
||
641 | 641 | $ret = true; |
642 | 642 | } |
643 | 643 | |
644 | - if( ! empty( $excluded_ps ) ) { |
|
644 | + if (!empty($excluded_ps)) { |
|
645 | 645 | // Check that there are items other than excluded ones in the cart |
646 | - if( $cart_ids == $excluded_ps ) { |
|
647 | - wpinv_set_error( 'wpinv-discount-error', __( 'This discount is not valid for the cart contents.', 'invoicing' ) ); |
|
646 | + if ($cart_ids == $excluded_ps) { |
|
647 | + wpinv_set_error('wpinv-discount-error', __('This discount is not valid for the cart contents.', 'invoicing')); |
|
648 | 648 | $ret = false; |
649 | 649 | } |
650 | 650 | } |
651 | 651 | |
652 | - return (bool) apply_filters( 'wpinv_is_discount_item_req_met', $ret, $code_id, $condition ); |
|
652 | + return (bool)apply_filters('wpinv_is_discount_item_req_met', $ret, $code_id, $condition); |
|
653 | 653 | } |
654 | 654 | |
655 | -function wpinv_is_discount_used( $code = null, $user = '', $code_id = 0 ) { |
|
655 | +function wpinv_is_discount_used($code = null, $user = '', $code_id = 0) { |
|
656 | 656 | global $wpi_checkout_id; |
657 | 657 | |
658 | 658 | $return = false; |
659 | 659 | |
660 | - if ( empty( $code_id ) ) { |
|
661 | - $code_id = wpinv_get_discount_id_by_code( $code ); |
|
660 | + if (empty($code_id)) { |
|
661 | + $code_id = wpinv_get_discount_id_by_code($code); |
|
662 | 662 | |
663 | - if( empty( $code_id ) ) { |
|
663 | + if (empty($code_id)) { |
|
664 | 664 | return false; // No discount was found |
665 | 665 | } |
666 | 666 | } |
667 | 667 | |
668 | - if ( wpinv_discount_is_single_use( $code_id ) ) { |
|
668 | + if (wpinv_discount_is_single_use($code_id)) { |
|
669 | 669 | $payments = array(); |
670 | 670 | |
671 | 671 | $user_id = 0; |
672 | - if ( is_int( $user ) ) { |
|
672 | + if (is_int($user)) { |
|
673 | 673 | $user_id = $user; |
674 | - } else if ( is_email( $user ) && $user_data = get_user_by( 'email', $user ) ) { |
|
674 | + } else if (is_email($user) && $user_data = get_user_by('email', $user)) { |
|
675 | 675 | $user_id = $user_data->ID; |
676 | - } else if ( $user_data = get_user_by( 'login', $user ) ) { |
|
676 | + } else if ($user_data = get_user_by('login', $user)) { |
|
677 | 677 | $user_id = $user_data->ID; |
678 | 678 | } |
679 | 679 | |
680 | - if ( !$user_id ) { |
|
681 | - $query = array( 'user' => $user_id, 'limit' => false ); |
|
682 | - $payments = wpinv_get_invoices( $query ); // Get all payments with matching email |
|
680 | + if (!$user_id) { |
|
681 | + $query = array('user' => $user_id, 'limit' => false); |
|
682 | + $payments = wpinv_get_invoices($query); // Get all payments with matching email |
|
683 | 683 | } |
684 | 684 | |
685 | - if ( $payments ) { |
|
686 | - foreach ( $payments as $payment ) { |
|
687 | - if ( $payment->has_status( array( 'wpi-cancelled', 'wpi-failed' ) ) ) { |
|
685 | + if ($payments) { |
|
686 | + foreach ($payments as $payment) { |
|
687 | + if ($payment->has_status(array('wpi-cancelled', 'wpi-failed'))) { |
|
688 | 688 | continue; |
689 | 689 | } |
690 | 690 | |
691 | 691 | // Don't count discount used for current invoice chekcout. |
692 | - if ( !empty( $wpi_checkout_id ) && $wpi_checkout_id == $payment->ID ) { |
|
692 | + if (!empty($wpi_checkout_id) && $wpi_checkout_id == $payment->ID) { |
|
693 | 693 | continue; |
694 | 694 | } |
695 | 695 | |
696 | - $discounts = $payment->get_discounts( true ); |
|
697 | - if ( empty( $discounts ) ) { |
|
696 | + $discounts = $payment->get_discounts(true); |
|
697 | + if (empty($discounts)) { |
|
698 | 698 | continue; |
699 | 699 | } |
700 | 700 | |
701 | - $discounts = $discounts && !is_array( $discounts ) ? explode( ',', $discounts ) : $discounts; |
|
701 | + $discounts = $discounts && !is_array($discounts) ? explode(',', $discounts) : $discounts; |
|
702 | 702 | |
703 | - if ( !empty( $discounts ) && is_array( $discounts ) ) { |
|
704 | - if ( in_array( strtolower( $code ), array_map( 'strtolower', $discounts ) ) ) { |
|
705 | - wpinv_set_error( 'wpinv-discount-error', __( 'This discount has already been redeemed.', 'invoicing' ) ); |
|
703 | + if (!empty($discounts) && is_array($discounts)) { |
|
704 | + if (in_array(strtolower($code), array_map('strtolower', $discounts))) { |
|
705 | + wpinv_set_error('wpinv-discount-error', __('This discount has already been redeemed.', 'invoicing')); |
|
706 | 706 | $return = true; |
707 | 707 | break; |
708 | 708 | } |
@@ -711,61 +711,61 @@ discard block |
||
711 | 711 | } |
712 | 712 | } |
713 | 713 | |
714 | - return apply_filters( 'wpinv_is_discount_used', $return, $code, $user ); |
|
714 | + return apply_filters('wpinv_is_discount_used', $return, $code, $user); |
|
715 | 715 | } |
716 | 716 | |
717 | -function wpinv_is_discount_valid( $code = '', $user = '', $set_error = true ) { |
|
717 | +function wpinv_is_discount_valid($code = '', $user = '', $set_error = true) { |
|
718 | 718 | $return = false; |
719 | - $discount_id = wpinv_get_discount_id_by_code( $code ); |
|
720 | - $user = trim( $user ); |
|
719 | + $discount_id = wpinv_get_discount_id_by_code($code); |
|
720 | + $user = trim($user); |
|
721 | 721 | |
722 | - if ( wpinv_get_cart_contents() ) { |
|
723 | - if ( $discount_id ) { |
|
722 | + if (wpinv_get_cart_contents()) { |
|
723 | + if ($discount_id) { |
|
724 | 724 | if ( |
725 | - wpinv_is_discount_active( $discount_id ) && |
|
726 | - wpinv_check_discount_dates( $discount_id ) && |
|
727 | - !wpinv_is_discount_maxed_out( $discount_id ) && |
|
728 | - !wpinv_is_discount_used( $code, $user, $discount_id ) && |
|
729 | - wpinv_discount_is_min_met( $discount_id ) && |
|
730 | - wpinv_discount_is_max_met( $discount_id ) && |
|
731 | - wpinv_discount_item_reqs_met( $discount_id ) |
|
725 | + wpinv_is_discount_active($discount_id) && |
|
726 | + wpinv_check_discount_dates($discount_id) && |
|
727 | + !wpinv_is_discount_maxed_out($discount_id) && |
|
728 | + !wpinv_is_discount_used($code, $user, $discount_id) && |
|
729 | + wpinv_discount_is_min_met($discount_id) && |
|
730 | + wpinv_discount_is_max_met($discount_id) && |
|
731 | + wpinv_discount_item_reqs_met($discount_id) |
|
732 | 732 | ) { |
733 | 733 | $return = true; |
734 | 734 | } |
735 | - } elseif( $set_error ) { |
|
736 | - wpinv_set_error( 'wpinv-discount-error', __( 'This discount is invalid.', 'invoicing' ) ); |
|
735 | + } elseif ($set_error) { |
|
736 | + wpinv_set_error('wpinv-discount-error', __('This discount is invalid.', 'invoicing')); |
|
737 | 737 | } |
738 | 738 | } |
739 | 739 | |
740 | - return apply_filters( 'wpinv_is_discount_valid', $return, $discount_id, $code, $user ); |
|
740 | + return apply_filters('wpinv_is_discount_valid', $return, $discount_id, $code, $user); |
|
741 | 741 | } |
742 | 742 | |
743 | -function wpinv_get_discount_id_by_code( $code ) { |
|
744 | - $discount = wpinv_get_discount_by_code( $code ); |
|
745 | - if( $discount ) { |
|
743 | +function wpinv_get_discount_id_by_code($code) { |
|
744 | + $discount = wpinv_get_discount_by_code($code); |
|
745 | + if ($discount) { |
|
746 | 746 | return $discount->ID; |
747 | 747 | } |
748 | 748 | return false; |
749 | 749 | } |
750 | 750 | |
751 | -function wpinv_get_discounted_amount( $code, $base_price ) { |
|
751 | +function wpinv_get_discounted_amount($code, $base_price) { |
|
752 | 752 | $amount = $base_price; |
753 | - $discount_id = wpinv_get_discount_id_by_code( $code ); |
|
753 | + $discount_id = wpinv_get_discount_id_by_code($code); |
|
754 | 754 | |
755 | - if( $discount_id ) { |
|
756 | - $type = wpinv_get_discount_type( $discount_id ); |
|
757 | - $rate = wpinv_get_discount_amount( $discount_id ); |
|
755 | + if ($discount_id) { |
|
756 | + $type = wpinv_get_discount_type($discount_id); |
|
757 | + $rate = wpinv_get_discount_amount($discount_id); |
|
758 | 758 | |
759 | - if ( $type == 'flat' ) { |
|
759 | + if ($type == 'flat') { |
|
760 | 760 | // Set amount |
761 | 761 | $amount = $base_price - $rate; |
762 | - if ( $amount < 0 ) { |
|
762 | + if ($amount < 0) { |
|
763 | 763 | $amount = 0; |
764 | 764 | } |
765 | 765 | |
766 | 766 | } else { |
767 | 767 | // Percentage discount |
768 | - $amount = $base_price - ( $base_price * ( $rate / 100 ) ); |
|
768 | + $amount = $base_price - ($base_price * ($rate / 100)); |
|
769 | 769 | } |
770 | 770 | |
771 | 771 | } else { |
@@ -774,108 +774,108 @@ discard block |
||
774 | 774 | |
775 | 775 | } |
776 | 776 | |
777 | - return apply_filters( 'wpinv_discounted_amount', $amount ); |
|
777 | + return apply_filters('wpinv_discounted_amount', $amount); |
|
778 | 778 | } |
779 | 779 | |
780 | -function wpinv_increase_discount_usage( $code ) { |
|
780 | +function wpinv_increase_discount_usage($code) { |
|
781 | 781 | |
782 | - $id = wpinv_get_discount_id_by_code( $code ); |
|
783 | - $uses = wpinv_get_discount_uses( $id ); |
|
782 | + $id = wpinv_get_discount_id_by_code($code); |
|
783 | + $uses = wpinv_get_discount_uses($id); |
|
784 | 784 | |
785 | - if ( $uses ) { |
|
785 | + if ($uses) { |
|
786 | 786 | $uses++; |
787 | 787 | } else { |
788 | 788 | $uses = 1; |
789 | 789 | } |
790 | 790 | |
791 | - update_post_meta( $id, '_wpi_discount_uses', $uses ); |
|
791 | + update_post_meta($id, '_wpi_discount_uses', $uses); |
|
792 | 792 | |
793 | - do_action( 'wpinv_discount_increase_use_count', $uses, $id, $code ); |
|
793 | + do_action('wpinv_discount_increase_use_count', $uses, $id, $code); |
|
794 | 794 | |
795 | 795 | return $uses; |
796 | 796 | |
797 | 797 | } |
798 | 798 | |
799 | -function wpinv_decrease_discount_usage( $code ) { |
|
799 | +function wpinv_decrease_discount_usage($code) { |
|
800 | 800 | |
801 | - $id = wpinv_get_discount_id_by_code( $code ); |
|
802 | - $uses = wpinv_get_discount_uses( $id ); |
|
801 | + $id = wpinv_get_discount_id_by_code($code); |
|
802 | + $uses = wpinv_get_discount_uses($id); |
|
803 | 803 | |
804 | - if ( $uses ) { |
|
804 | + if ($uses) { |
|
805 | 805 | $uses--; |
806 | 806 | } |
807 | 807 | |
808 | - if ( $uses < 0 ) { |
|
808 | + if ($uses < 0) { |
|
809 | 809 | $uses = 0; |
810 | 810 | } |
811 | 811 | |
812 | - update_post_meta( $id, '_wpi_discount_uses', $uses ); |
|
812 | + update_post_meta($id, '_wpi_discount_uses', $uses); |
|
813 | 813 | |
814 | - do_action( 'wpinv_discount_decrease_use_count', $uses, $id, $code ); |
|
814 | + do_action('wpinv_discount_decrease_use_count', $uses, $id, $code); |
|
815 | 815 | |
816 | 816 | return $uses; |
817 | 817 | |
818 | 818 | } |
819 | 819 | |
820 | -function wpinv_format_discount_rate( $type, $amount ) { |
|
821 | - if ( $type == 'flat' ) { |
|
822 | - return wpinv_price( wpinv_format_amount( $amount ) ); |
|
820 | +function wpinv_format_discount_rate($type, $amount) { |
|
821 | + if ($type == 'flat') { |
|
822 | + return wpinv_price(wpinv_format_amount($amount)); |
|
823 | 823 | } else { |
824 | 824 | return $amount . '%'; |
825 | 825 | } |
826 | 826 | } |
827 | 827 | |
828 | -function wpinv_set_cart_discount( $code = '' ) { |
|
829 | - if ( wpinv_multiple_discounts_allowed() ) { |
|
828 | +function wpinv_set_cart_discount($code = '') { |
|
829 | + if (wpinv_multiple_discounts_allowed()) { |
|
830 | 830 | // Get all active cart discounts |
831 | 831 | $discounts = wpinv_get_cart_discounts(); |
832 | 832 | } else { |
833 | 833 | $discounts = false; // Only one discount allowed per purchase, so override any existing |
834 | 834 | } |
835 | 835 | |
836 | - if ( $discounts ) { |
|
837 | - $key = array_search( strtolower( $code ), array_map( 'strtolower', $discounts ) ); |
|
838 | - if( false !== $key ) { |
|
839 | - unset( $discounts[ $key ] ); // Can't set the same discount more than once |
|
836 | + if ($discounts) { |
|
837 | + $key = array_search(strtolower($code), array_map('strtolower', $discounts)); |
|
838 | + if (false !== $key) { |
|
839 | + unset($discounts[$key]); // Can't set the same discount more than once |
|
840 | 840 | } |
841 | 841 | $discounts[] = $code; |
842 | 842 | } else { |
843 | 843 | $discounts = array(); |
844 | 844 | $discounts[] = $code; |
845 | 845 | } |
846 | - $discounts = array_values( $discounts ); |
|
846 | + $discounts = array_values($discounts); |
|
847 | 847 | |
848 | 848 | $data = wpinv_get_checkout_session(); |
849 | - if ( empty( $data ) ) { |
|
849 | + if (empty($data)) { |
|
850 | 850 | $data = array(); |
851 | 851 | } else { |
852 | - if ( !empty( $data['invoice_id'] ) && $payment_meta = wpinv_get_invoice_meta( $data['invoice_id'] ) ) { |
|
853 | - $payment_meta['user_info']['discount'] = implode( ',', $discounts ); |
|
854 | - update_post_meta( $data['invoice_id'], '_wpinv_payment_meta', $payment_meta ); |
|
852 | + if (!empty($data['invoice_id']) && $payment_meta = wpinv_get_invoice_meta($data['invoice_id'])) { |
|
853 | + $payment_meta['user_info']['discount'] = implode(',', $discounts); |
|
854 | + update_post_meta($data['invoice_id'], '_wpinv_payment_meta', $payment_meta); |
|
855 | 855 | } |
856 | 856 | } |
857 | 857 | $data['cart_discounts'] = $discounts; |
858 | 858 | |
859 | - wpinv_set_checkout_session( $data ); |
|
859 | + wpinv_set_checkout_session($data); |
|
860 | 860 | |
861 | 861 | return $discounts; |
862 | 862 | } |
863 | 863 | |
864 | -function wpinv_unset_cart_discount( $code = '' ) { |
|
864 | +function wpinv_unset_cart_discount($code = '') { |
|
865 | 865 | $discounts = wpinv_get_cart_discounts(); |
866 | 866 | |
867 | - if ( $code && !empty( $discounts ) && in_array( $code, $discounts ) ) { |
|
868 | - $key = array_search( $code, $discounts ); |
|
869 | - unset( $discounts[ $key ] ); |
|
867 | + if ($code && !empty($discounts) && in_array($code, $discounts)) { |
|
868 | + $key = array_search($code, $discounts); |
|
869 | + unset($discounts[$key]); |
|
870 | 870 | |
871 | 871 | $data = wpinv_get_checkout_session(); |
872 | 872 | $data['cart_discounts'] = $discounts; |
873 | - if ( !empty( $data['invoice_id'] ) && $payment_meta = wpinv_get_invoice_meta( $data['invoice_id'] ) ) { |
|
874 | - $payment_meta['user_info']['discount'] = !empty( $discounts ) ? implode( ',', $discounts ) : ''; |
|
875 | - update_post_meta( $data['invoice_id'], '_wpinv_payment_meta', $payment_meta ); |
|
873 | + if (!empty($data['invoice_id']) && $payment_meta = wpinv_get_invoice_meta($data['invoice_id'])) { |
|
874 | + $payment_meta['user_info']['discount'] = !empty($discounts) ? implode(',', $discounts) : ''; |
|
875 | + update_post_meta($data['invoice_id'], '_wpinv_payment_meta', $payment_meta); |
|
876 | 876 | } |
877 | 877 | |
878 | - wpinv_set_checkout_session( $data ); |
|
878 | + wpinv_set_checkout_session($data); |
|
879 | 879 | } |
880 | 880 | |
881 | 881 | return $discounts; |
@@ -884,27 +884,27 @@ discard block |
||
884 | 884 | function wpinv_unset_all_cart_discounts() { |
885 | 885 | $data = wpinv_get_checkout_session(); |
886 | 886 | |
887 | - if ( !empty( $data ) && isset( $data['cart_discounts'] ) ) { |
|
888 | - unset( $data['cart_discounts'] ); |
|
887 | + if (!empty($data) && isset($data['cart_discounts'])) { |
|
888 | + unset($data['cart_discounts']); |
|
889 | 889 | |
890 | - wpinv_set_checkout_session( $data ); |
|
890 | + wpinv_set_checkout_session($data); |
|
891 | 891 | return true; |
892 | 892 | } |
893 | 893 | |
894 | 894 | return false; |
895 | 895 | } |
896 | 896 | |
897 | -function wpinv_get_cart_discounts( $items = array() ) { |
|
897 | +function wpinv_get_cart_discounts($items = array()) { |
|
898 | 898 | $session = wpinv_get_checkout_session(); |
899 | 899 | |
900 | - $discounts = !empty( $session['cart_discounts'] ) ? $session['cart_discounts'] : false; |
|
900 | + $discounts = !empty($session['cart_discounts']) ? $session['cart_discounts'] : false; |
|
901 | 901 | return $discounts; |
902 | 902 | } |
903 | 903 | |
904 | -function wpinv_cart_has_discounts( $items = array() ) { |
|
904 | +function wpinv_cart_has_discounts($items = array()) { |
|
905 | 905 | $ret = false; |
906 | 906 | |
907 | - if ( wpinv_get_cart_discounts( $items ) ) { |
|
907 | + if (wpinv_get_cart_discounts($items)) { |
|
908 | 908 | $ret = true; |
909 | 909 | } |
910 | 910 | |
@@ -915,131 +915,131 @@ discard block |
||
915 | 915 | } |
916 | 916 | */ |
917 | 917 | |
918 | - return apply_filters( 'wpinv_cart_has_discounts', $ret ); |
|
918 | + return apply_filters('wpinv_cart_has_discounts', $ret); |
|
919 | 919 | } |
920 | 920 | |
921 | -function wpinv_get_cart_discounted_amount( $items = array(), $discounts = false ) { |
|
921 | +function wpinv_get_cart_discounted_amount($items = array(), $discounts = false) { |
|
922 | 922 | $amount = 0.00; |
923 | - $items = !empty( $items ) ? $items : wpinv_get_cart_content_details(); |
|
923 | + $items = !empty($items) ? $items : wpinv_get_cart_content_details(); |
|
924 | 924 | |
925 | - if ( $items ) { |
|
926 | - $discounts = wp_list_pluck( $items, 'discount' ); |
|
925 | + if ($items) { |
|
926 | + $discounts = wp_list_pluck($items, 'discount'); |
|
927 | 927 | |
928 | - if ( is_array( $discounts ) ) { |
|
929 | - $discounts = array_map( 'floatval', $discounts ); |
|
930 | - $amount = array_sum( $discounts ); |
|
928 | + if (is_array($discounts)) { |
|
929 | + $discounts = array_map('floatval', $discounts); |
|
930 | + $amount = array_sum($discounts); |
|
931 | 931 | } |
932 | 932 | } |
933 | 933 | |
934 | - return apply_filters( 'wpinv_get_cart_discounted_amount', $amount ); |
|
934 | + return apply_filters('wpinv_get_cart_discounted_amount', $amount); |
|
935 | 935 | } |
936 | 936 | |
937 | -function wpinv_get_cart_items_discount_amount( $items = array(), $discount = false ) { |
|
938 | - $items = !empty( $items ) ? $items : wpinv_get_cart_content_details(); |
|
937 | +function wpinv_get_cart_items_discount_amount($items = array(), $discount = false) { |
|
938 | + $items = !empty($items) ? $items : wpinv_get_cart_content_details(); |
|
939 | 939 | |
940 | - if ( empty( $discount ) || empty( $items ) ) { |
|
940 | + if (empty($discount) || empty($items)) { |
|
941 | 941 | return 0; |
942 | 942 | } |
943 | 943 | |
944 | 944 | $amount = 0; |
945 | 945 | |
946 | - foreach ( $items as $item ) { |
|
947 | - $amount += wpinv_get_cart_item_discount_amount( $item, $discount ); |
|
946 | + foreach ($items as $item) { |
|
947 | + $amount += wpinv_get_cart_item_discount_amount($item, $discount); |
|
948 | 948 | } |
949 | 949 | |
950 | - $amount = wpinv_round_amount( $amount ); |
|
950 | + $amount = wpinv_round_amount($amount); |
|
951 | 951 | |
952 | 952 | return $amount; |
953 | 953 | } |
954 | 954 | |
955 | -function wpinv_get_cart_item_discount_amount( $item = array(), $discount = false ) { |
|
955 | +function wpinv_get_cart_item_discount_amount($item = array(), $discount = false) { |
|
956 | 956 | global $wpinv_is_last_cart_item, $wpinv_flat_discount_total; |
957 | 957 | |
958 | 958 | $amount = 0; |
959 | 959 | |
960 | - if ( empty( $item ) || empty( $item['id'] ) ) { |
|
960 | + if (empty($item) || empty($item['id'])) { |
|
961 | 961 | return $amount; |
962 | 962 | } |
963 | 963 | |
964 | - if ( empty( $item['quantity'] ) ) { |
|
964 | + if (empty($item['quantity'])) { |
|
965 | 965 | return $amount; |
966 | 966 | } |
967 | 967 | |
968 | - if ( empty( $item['options'] ) ) { |
|
968 | + if (empty($item['options'])) { |
|
969 | 969 | $item['options'] = array(); |
970 | 970 | } |
971 | 971 | |
972 | - $price = wpinv_get_cart_item_price( $item['id'], $item, $item['options'] ); |
|
972 | + $price = wpinv_get_cart_item_price($item['id'], $item, $item['options']); |
|
973 | 973 | $discounted_price = $price; |
974 | 974 | |
975 | 975 | $discounts = false === $discount ? wpinv_get_cart_discounts() : $discount; |
976 | - if ( empty( $discounts ) ) { |
|
976 | + if (empty($discounts)) { |
|
977 | 977 | return $amount; |
978 | 978 | } |
979 | 979 | |
980 | - if ( $discounts ) { |
|
981 | - if ( is_array( $discounts ) ) { |
|
982 | - $discounts = array_values( $discounts ); |
|
980 | + if ($discounts) { |
|
981 | + if (is_array($discounts)) { |
|
982 | + $discounts = array_values($discounts); |
|
983 | 983 | } else { |
984 | - $discounts = explode( ',', $discounts ); |
|
984 | + $discounts = explode(',', $discounts); |
|
985 | 985 | } |
986 | 986 | } |
987 | 987 | |
988 | - if( $discounts ) { |
|
989 | - foreach ( $discounts as $discount ) { |
|
990 | - $code_id = wpinv_get_discount_id_by_code( $discount ); |
|
988 | + if ($discounts) { |
|
989 | + foreach ($discounts as $discount) { |
|
990 | + $code_id = wpinv_get_discount_id_by_code($discount); |
|
991 | 991 | |
992 | 992 | // Check discount exists |
993 | - if( ! $code_id ) { |
|
993 | + if (!$code_id) { |
|
994 | 994 | continue; |
995 | 995 | } |
996 | 996 | |
997 | - $reqs = wpinv_get_discount_item_reqs( $code_id ); |
|
998 | - $excluded_items = wpinv_get_discount_excluded_items( $code_id ); |
|
997 | + $reqs = wpinv_get_discount_item_reqs($code_id); |
|
998 | + $excluded_items = wpinv_get_discount_excluded_items($code_id); |
|
999 | 999 | |
1000 | 1000 | // Make sure requirements are set and that this discount shouldn't apply to the whole cart |
1001 | - if ( !empty( $reqs ) && wpinv_is_discount_not_global( $code_id ) ) { |
|
1002 | - foreach ( $reqs as $item_id ) { |
|
1003 | - if ( $item_id == $item['id'] && ! in_array( $item['id'], $excluded_items ) ) { |
|
1004 | - $discounted_price -= $price - wpinv_get_discounted_amount( $discount, $price ); |
|
1001 | + if (!empty($reqs) && wpinv_is_discount_not_global($code_id)) { |
|
1002 | + foreach ($reqs as $item_id) { |
|
1003 | + if ($item_id == $item['id'] && !in_array($item['id'], $excluded_items)) { |
|
1004 | + $discounted_price -= $price - wpinv_get_discounted_amount($discount, $price); |
|
1005 | 1005 | } |
1006 | 1006 | } |
1007 | 1007 | } else { |
1008 | 1008 | // This is a global cart discount |
1009 | - if ( !in_array( $item['id'], $excluded_items ) ) { |
|
1010 | - if ( 'flat' === wpinv_get_discount_type( $code_id ) ) { |
|
1009 | + if (!in_array($item['id'], $excluded_items)) { |
|
1010 | + if ('flat' === wpinv_get_discount_type($code_id)) { |
|
1011 | 1011 | $items_subtotal = 0.00; |
1012 | 1012 | $cart_items = wpinv_get_cart_contents(); |
1013 | 1013 | |
1014 | - foreach ( $cart_items as $cart_item ) { |
|
1015 | - if ( ! in_array( $cart_item['id'], $excluded_items ) ) { |
|
1016 | - $options = !empty( $cart_item['options'] ) ? $cart_item['options'] : array(); |
|
1017 | - $item_price = wpinv_get_cart_item_price( $cart_item['id'], $cart_item, $options ); |
|
1014 | + foreach ($cart_items as $cart_item) { |
|
1015 | + if (!in_array($cart_item['id'], $excluded_items)) { |
|
1016 | + $options = !empty($cart_item['options']) ? $cart_item['options'] : array(); |
|
1017 | + $item_price = wpinv_get_cart_item_price($cart_item['id'], $cart_item, $options); |
|
1018 | 1018 | $items_subtotal += $item_price * $cart_item['quantity']; |
1019 | 1019 | } |
1020 | 1020 | } |
1021 | 1021 | |
1022 | - $subtotal_percent = ( ( $price * $item['quantity'] ) / $items_subtotal ); |
|
1023 | - $code_amount = wpinv_get_discount_amount( $code_id ); |
|
1022 | + $subtotal_percent = (($price * $item['quantity']) / $items_subtotal); |
|
1023 | + $code_amount = wpinv_get_discount_amount($code_id); |
|
1024 | 1024 | $discounted_amount = $code_amount * $subtotal_percent; |
1025 | 1025 | $discounted_price -= $discounted_amount; |
1026 | 1026 | |
1027 | - $wpinv_flat_discount_total += round( $discounted_amount, wpinv_currency_decimal_filter() ); |
|
1027 | + $wpinv_flat_discount_total += round($discounted_amount, wpinv_currency_decimal_filter()); |
|
1028 | 1028 | |
1029 | - if ( $wpinv_is_last_cart_item && $wpinv_flat_discount_total < $code_amount ) { |
|
1029 | + if ($wpinv_is_last_cart_item && $wpinv_flat_discount_total < $code_amount) { |
|
1030 | 1030 | $adjustment = $code_amount - $wpinv_flat_discount_total; |
1031 | 1031 | $discounted_price -= $adjustment; |
1032 | 1032 | } |
1033 | 1033 | } else { |
1034 | - $discounted_price -= $price - wpinv_get_discounted_amount( $discount, $price ); |
|
1034 | + $discounted_price -= $price - wpinv_get_discounted_amount($discount, $price); |
|
1035 | 1035 | } |
1036 | 1036 | } |
1037 | 1037 | } |
1038 | 1038 | } |
1039 | 1039 | |
1040 | - $amount = ( $price - apply_filters( 'wpinv_get_cart_item_discounted_amount', $discounted_price, $discounts, $item, $price ) ); |
|
1040 | + $amount = ($price - apply_filters('wpinv_get_cart_item_discounted_amount', $discounted_price, $discounts, $item, $price)); |
|
1041 | 1041 | |
1042 | - if ( 'flat' !== wpinv_get_discount_type( $code_id ) ) { |
|
1042 | + if ('flat' !== wpinv_get_discount_type($code_id)) { |
|
1043 | 1043 | $amount = $amount * $item['quantity']; |
1044 | 1044 | } |
1045 | 1045 | } |
@@ -1047,59 +1047,59 @@ discard block |
||
1047 | 1047 | return $amount; |
1048 | 1048 | } |
1049 | 1049 | |
1050 | -function wpinv_cart_discounts_html( $items = array() ) { |
|
1051 | - echo wpinv_get_cart_discounts_html( $items ); |
|
1050 | +function wpinv_cart_discounts_html($items = array()) { |
|
1051 | + echo wpinv_get_cart_discounts_html($items); |
|
1052 | 1052 | } |
1053 | 1053 | |
1054 | -function wpinv_get_cart_discounts_html( $items = array(), $discounts = false ) { |
|
1054 | +function wpinv_get_cart_discounts_html($items = array(), $discounts = false) { |
|
1055 | 1055 | global $wpi_cart_columns; |
1056 | 1056 | |
1057 | - $items = !empty( $items ) ? $items : wpinv_get_cart_content_details(); |
|
1057 | + $items = !empty($items) ? $items : wpinv_get_cart_content_details(); |
|
1058 | 1058 | |
1059 | - if ( !$discounts ) { |
|
1060 | - $discounts = wpinv_get_cart_discounts( $items ); |
|
1059 | + if (!$discounts) { |
|
1060 | + $discounts = wpinv_get_cart_discounts($items); |
|
1061 | 1061 | } |
1062 | 1062 | |
1063 | - if ( !$discounts ) { |
|
1063 | + if (!$discounts) { |
|
1064 | 1064 | return; |
1065 | 1065 | } |
1066 | 1066 | |
1067 | - $discounts = is_array( $discounts ) ? $discounts : array( $discounts ); |
|
1067 | + $discounts = is_array($discounts) ? $discounts : array($discounts); |
|
1068 | 1068 | |
1069 | 1069 | $html = ''; |
1070 | 1070 | |
1071 | - foreach ( $discounts as $discount ) { |
|
1072 | - $discount_id = wpinv_get_discount_id_by_code( $discount ); |
|
1073 | - $discount_value = wpinv_get_discount_amount( $discount_id ); |
|
1074 | - $rate = wpinv_format_discount_rate( wpinv_get_discount_type( $discount_id ), $discount_value ); |
|
1075 | - $amount = wpinv_get_cart_items_discount_amount( $items, $discount ); |
|
1076 | - $remove_btn = '<a title="' . esc_attr__( 'Remove discount', 'invoicing' ) . '" data-code="' . $discount . '" data-value="' . $discount_value . '" class="wpi-discount-remove" href="javascript:void(0);">[<i class="fa fa-times" aria-hidden="true"></i>]</a> '; |
|
1071 | + foreach ($discounts as $discount) { |
|
1072 | + $discount_id = wpinv_get_discount_id_by_code($discount); |
|
1073 | + $discount_value = wpinv_get_discount_amount($discount_id); |
|
1074 | + $rate = wpinv_format_discount_rate(wpinv_get_discount_type($discount_id), $discount_value); |
|
1075 | + $amount = wpinv_get_cart_items_discount_amount($items, $discount); |
|
1076 | + $remove_btn = '<a title="' . esc_attr__('Remove discount', 'invoicing') . '" data-code="' . $discount . '" data-value="' . $discount_value . '" class="wpi-discount-remove" href="javascript:void(0);">[<i class="fa fa-times" aria-hidden="true"></i>]</a> '; |
|
1077 | 1077 | |
1078 | 1078 | $html .= '<tr class="wpinv_cart_footer_row wpinv_cart_discount_row">'; |
1079 | 1079 | ob_start(); |
1080 | - do_action( 'wpinv_checkout_table_discount_first', $items ); |
|
1080 | + do_action('wpinv_checkout_table_discount_first', $items); |
|
1081 | 1081 | $html .= ob_get_clean(); |
1082 | - $html .= '<td class="wpinv_cart_discount_label text-right" colspan="' . $wpi_cart_columns . '">' . $remove_btn . '<strong>' . wpinv_cart_discount_label( $discount, $rate, false ) . '</strong></td><td class="wpinv_cart_discount text-right"><span data-discount="' . $amount . '" class="wpinv_cart_discount_amount">–' . wpinv_price( wpinv_format_amount( $amount ) ) . '</span></td>'; |
|
1082 | + $html .= '<td class="wpinv_cart_discount_label text-right" colspan="' . $wpi_cart_columns . '">' . $remove_btn . '<strong>' . wpinv_cart_discount_label($discount, $rate, false) . '</strong></td><td class="wpinv_cart_discount text-right"><span data-discount="' . $amount . '" class="wpinv_cart_discount_amount">–' . wpinv_price(wpinv_format_amount($amount)) . '</span></td>'; |
|
1083 | 1083 | ob_start(); |
1084 | - do_action( 'wpinv_checkout_table_discount_last', $items ); |
|
1084 | + do_action('wpinv_checkout_table_discount_last', $items); |
|
1085 | 1085 | $html .= ob_get_clean(); |
1086 | 1086 | $html .= '</tr>'; |
1087 | 1087 | } |
1088 | 1088 | |
1089 | - return apply_filters( 'wpinv_get_cart_discounts_html', $html, $discounts, $rate ); |
|
1089 | + return apply_filters('wpinv_get_cart_discounts_html', $html, $discounts, $rate); |
|
1090 | 1090 | } |
1091 | 1091 | |
1092 | -function wpinv_display_cart_discount( $formatted = false, $echo = false ) { |
|
1092 | +function wpinv_display_cart_discount($formatted = false, $echo = false) { |
|
1093 | 1093 | $discounts = wpinv_get_cart_discounts(); |
1094 | 1094 | |
1095 | - if ( empty( $discounts ) ) { |
|
1095 | + if (empty($discounts)) { |
|
1096 | 1096 | return false; |
1097 | 1097 | } |
1098 | 1098 | |
1099 | - $discount_id = wpinv_get_discount_id_by_code( $discounts[0] ); |
|
1100 | - $amount = wpinv_format_discount_rate( wpinv_get_discount_type( $discount_id ), wpinv_get_discount_amount( $discount_id ) ); |
|
1099 | + $discount_id = wpinv_get_discount_id_by_code($discounts[0]); |
|
1100 | + $amount = wpinv_format_discount_rate(wpinv_get_discount_type($discount_id), wpinv_get_discount_amount($discount_id)); |
|
1101 | 1101 | |
1102 | - if ( $echo ) { |
|
1102 | + if ($echo) { |
|
1103 | 1103 | echo $amount; |
1104 | 1104 | } |
1105 | 1105 | |
@@ -1107,133 +1107,133 @@ discard block |
||
1107 | 1107 | } |
1108 | 1108 | |
1109 | 1109 | function wpinv_remove_cart_discount() { |
1110 | - if ( !isset( $_GET['discount_id'] ) || ! isset( $_GET['discount_code'] ) ) { |
|
1110 | + if (!isset($_GET['discount_id']) || !isset($_GET['discount_code'])) { |
|
1111 | 1111 | return; |
1112 | 1112 | } |
1113 | 1113 | |
1114 | - do_action( 'wpinv_pre_remove_cart_discount', absint( $_GET['discount_id'] ) ); |
|
1114 | + do_action('wpinv_pre_remove_cart_discount', absint($_GET['discount_id'])); |
|
1115 | 1115 | |
1116 | - wpinv_unset_cart_discount( urldecode( $_GET['discount_code'] ) ); |
|
1116 | + wpinv_unset_cart_discount(urldecode($_GET['discount_code'])); |
|
1117 | 1117 | |
1118 | - do_action( 'wpinv_post_remove_cart_discount', absint( $_GET['discount_id'] ) ); |
|
1118 | + do_action('wpinv_post_remove_cart_discount', absint($_GET['discount_id'])); |
|
1119 | 1119 | |
1120 | - wp_redirect( wpinv_get_checkout_uri() ); wpinv_die(); |
|
1120 | + wp_redirect(wpinv_get_checkout_uri()); wpinv_die(); |
|
1121 | 1121 | } |
1122 | -add_action( 'wpinv_remove_cart_discount', 'wpinv_remove_cart_discount' ); |
|
1122 | +add_action('wpinv_remove_cart_discount', 'wpinv_remove_cart_discount'); |
|
1123 | 1123 | |
1124 | -function wpinv_maybe_remove_cart_discount( $cart_key = 0 ) { |
|
1124 | +function wpinv_maybe_remove_cart_discount($cart_key = 0) { |
|
1125 | 1125 | $discounts = wpinv_get_cart_discounts(); |
1126 | 1126 | |
1127 | - if ( !$discounts ) { |
|
1127 | + if (!$discounts) { |
|
1128 | 1128 | return; |
1129 | 1129 | } |
1130 | 1130 | |
1131 | - foreach ( $discounts as $discount ) { |
|
1132 | - if ( !wpinv_is_discount_valid( $discount ) ) { |
|
1133 | - wpinv_unset_cart_discount( $discount ); |
|
1131 | + foreach ($discounts as $discount) { |
|
1132 | + if (!wpinv_is_discount_valid($discount)) { |
|
1133 | + wpinv_unset_cart_discount($discount); |
|
1134 | 1134 | } |
1135 | 1135 | } |
1136 | 1136 | } |
1137 | -add_action( 'wpinv_post_remove_from_cart', 'wpinv_maybe_remove_cart_discount' ); |
|
1137 | +add_action('wpinv_post_remove_from_cart', 'wpinv_maybe_remove_cart_discount'); |
|
1138 | 1138 | |
1139 | 1139 | function wpinv_multiple_discounts_allowed() { |
1140 | - $ret = wpinv_get_option( 'allow_multiple_discounts', false ); |
|
1141 | - return (bool) apply_filters( 'wpinv_multiple_discounts_allowed', $ret ); |
|
1140 | + $ret = wpinv_get_option('allow_multiple_discounts', false); |
|
1141 | + return (bool)apply_filters('wpinv_multiple_discounts_allowed', $ret); |
|
1142 | 1142 | } |
1143 | 1143 | |
1144 | 1144 | function wpinv_listen_for_cart_discount() { |
1145 | 1145 | global $wpi_session; |
1146 | 1146 | |
1147 | - if ( empty( $_REQUEST['discount'] ) || is_array( $_REQUEST['discount'] ) ) { |
|
1147 | + if (empty($_REQUEST['discount']) || is_array($_REQUEST['discount'])) { |
|
1148 | 1148 | return; |
1149 | 1149 | } |
1150 | 1150 | |
1151 | - $code = preg_replace('/[^a-zA-Z0-9-_]+/', '', $_REQUEST['discount'] ); |
|
1151 | + $code = preg_replace('/[^a-zA-Z0-9-_]+/', '', $_REQUEST['discount']); |
|
1152 | 1152 | |
1153 | - $wpi_session->set( 'preset_discount', $code ); |
|
1153 | + $wpi_session->set('preset_discount', $code); |
|
1154 | 1154 | } |
1155 | 1155 | //add_action( 'init', 'wpinv_listen_for_cart_discount', 0 ); |
1156 | 1156 | |
1157 | 1157 | function wpinv_apply_preset_discount() { |
1158 | 1158 | global $wpi_session; |
1159 | 1159 | |
1160 | - $code = $wpi_session->get( 'preset_discount' ); |
|
1160 | + $code = $wpi_session->get('preset_discount'); |
|
1161 | 1161 | |
1162 | - if ( !$code ) { |
|
1162 | + if (!$code) { |
|
1163 | 1163 | return; |
1164 | 1164 | } |
1165 | 1165 | |
1166 | - if ( !wpinv_is_discount_valid( $code, '', false ) ) { |
|
1166 | + if (!wpinv_is_discount_valid($code, '', false)) { |
|
1167 | 1167 | return; |
1168 | 1168 | } |
1169 | 1169 | |
1170 | - $code = apply_filters( 'wpinv_apply_preset_discount', $code ); |
|
1170 | + $code = apply_filters('wpinv_apply_preset_discount', $code); |
|
1171 | 1171 | |
1172 | - wpinv_set_cart_discount( $code ); |
|
1172 | + wpinv_set_cart_discount($code); |
|
1173 | 1173 | |
1174 | - $wpi_session->set( 'preset_discount', null ); |
|
1174 | + $wpi_session->set('preset_discount', null); |
|
1175 | 1175 | } |
1176 | 1176 | //add_action( 'init', 'wpinv_apply_preset_discount', 999 ); |
1177 | 1177 | |
1178 | -function wpinv_get_discount_label( $code, $echo = true ) { |
|
1179 | - $label = wp_sprintf( __( 'Discount%1$s', 'invoicing' ), ( $code != '' && $code != 'none' ? ' (<code>' . $code . '</code>)': '' ) ); |
|
1180 | - $label = apply_filters( 'wpinv_get_discount_label', $label, $code ); |
|
1178 | +function wpinv_get_discount_label($code, $echo = true) { |
|
1179 | + $label = wp_sprintf(__('Discount%1$s', 'invoicing'), ($code != '' && $code != 'none' ? ' (<code>' . $code . '</code>)' : '')); |
|
1180 | + $label = apply_filters('wpinv_get_discount_label', $label, $code); |
|
1181 | 1181 | |
1182 | - if ( $echo ) { |
|
1182 | + if ($echo) { |
|
1183 | 1183 | echo $label; |
1184 | 1184 | } else { |
1185 | 1185 | return $label; |
1186 | 1186 | } |
1187 | 1187 | } |
1188 | 1188 | |
1189 | -function wpinv_cart_discount_label( $code, $rate, $echo = true ) { |
|
1190 | - $label = wp_sprintf( __( '%1$s Discount: %2$s', 'invoicing' ), $rate, $code ); |
|
1191 | - $label = apply_filters( 'wpinv_cart_discount_label', $label, $code, $rate ); |
|
1189 | +function wpinv_cart_discount_label($code, $rate, $echo = true) { |
|
1190 | + $label = wp_sprintf(__('%1$s Discount: %2$s', 'invoicing'), $rate, $code); |
|
1191 | + $label = apply_filters('wpinv_cart_discount_label', $label, $code, $rate); |
|
1192 | 1192 | |
1193 | - if ( $echo ) { |
|
1193 | + if ($echo) { |
|
1194 | 1194 | echo $label; |
1195 | 1195 | } else { |
1196 | 1196 | return $label; |
1197 | 1197 | } |
1198 | 1198 | } |
1199 | 1199 | |
1200 | -function wpinv_check_delete_discount( $check, $post, $force_delete ) { |
|
1201 | - if ( $post->post_type == 'wpi_discount' && wpinv_get_discount_uses( $post->ID ) > 0 ) { |
|
1200 | +function wpinv_check_delete_discount($check, $post, $force_delete) { |
|
1201 | + if ($post->post_type == 'wpi_discount' && wpinv_get_discount_uses($post->ID) > 0) { |
|
1202 | 1202 | return true; |
1203 | 1203 | } |
1204 | 1204 | |
1205 | 1205 | return $check; |
1206 | 1206 | } |
1207 | -add_filter( 'pre_delete_post', 'wpinv_check_delete_discount', 10, 3 ); |
|
1207 | +add_filter('pre_delete_post', 'wpinv_check_delete_discount', 10, 3); |
|
1208 | 1208 | |
1209 | 1209 | function wpinv_checkout_form_validate_discounts() { |
1210 | 1210 | $discounts = wpinv_get_cart_discounts(); |
1211 | 1211 | |
1212 | - if ( !empty( $discounts ) ) { |
|
1212 | + if (!empty($discounts)) { |
|
1213 | 1213 | $invalid = false; |
1214 | 1214 | |
1215 | - foreach ( $discounts as $key => $code ) { |
|
1216 | - if ( !wpinv_is_discount_valid( $code, get_current_user_id() ) ) { |
|
1215 | + foreach ($discounts as $key => $code) { |
|
1216 | + if (!wpinv_is_discount_valid($code, get_current_user_id())) { |
|
1217 | 1217 | $invalid = true; |
1218 | 1218 | |
1219 | - wpinv_unset_cart_discount( $code ); |
|
1219 | + wpinv_unset_cart_discount($code); |
|
1220 | 1220 | } |
1221 | 1221 | } |
1222 | 1222 | |
1223 | - if ( $invalid ) { |
|
1223 | + if ($invalid) { |
|
1224 | 1224 | $errors = wpinv_get_errors(); |
1225 | - $error = !empty( $errors['wpinv-discount-error'] ) ? $errors['wpinv-discount-error'] . ' ' : ''; |
|
1226 | - $error .= __( 'The discount has been removed from cart.', 'invoicing' ); |
|
1227 | - wpinv_set_error( 'wpinv-discount-error', $error ); |
|
1225 | + $error = !empty($errors['wpinv-discount-error']) ? $errors['wpinv-discount-error'] . ' ' : ''; |
|
1226 | + $error .= __('The discount has been removed from cart.', 'invoicing'); |
|
1227 | + wpinv_set_error('wpinv-discount-error', $error); |
|
1228 | 1228 | |
1229 | - wpinv_recalculate_tax( true ); |
|
1229 | + wpinv_recalculate_tax(true); |
|
1230 | 1230 | } |
1231 | 1231 | } |
1232 | 1232 | } |
1233 | -add_action( 'wpinv_before_checkout_form', 'wpinv_checkout_form_validate_discounts', -10 ); |
|
1233 | +add_action('wpinv_before_checkout_form', 'wpinv_checkout_form_validate_discounts', -10); |
|
1234 | 1234 | |
1235 | 1235 | function wpinv_discount_amount() { |
1236 | 1236 | $output = 0.00; |
1237 | 1237 | |
1238 | - return apply_filters( 'wpinv_discount_amount', $output ); |
|
1238 | + return apply_filters('wpinv_discount_amount', $output); |
|
1239 | 1239 | } |
1240 | 1240 | \ No newline at end of file |