Completed
Push — master ( 9700bf...c850cb )
by Stiofan
11s
created
includes/wpinv-invoice-functions.php 1 patch
Spacing   +713 added lines, -713 removed lines patch added patch discarded remove patch
@@ -7,40 +7,40 @@  discard block
 block discarded – undo
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_invoice_cart_id() {
15 15
     $wpinv_checkout = wpinv_get_checkout_session();
16 16
     
17
-    if ( !empty( $wpinv_checkout['invoice_id'] ) ) {
17
+    if (!empty($wpinv_checkout['invoice_id'])) {
18 18
         return $wpinv_checkout['invoice_id'];
19 19
     }
20 20
     
21 21
     return NULL;
22 22
 }
23 23
 
24
-function wpinv_insert_invoice( $invoice_data = array(), $wp_error = false ) {
25
-    if ( empty( $invoice_data ) ) {
24
+function wpinv_insert_invoice($invoice_data = array(), $wp_error = false) {
25
+    if (empty($invoice_data)) {
26 26
         return false;
27 27
     }
28 28
     
29
-    if ( !( !empty( $invoice_data['cart_details'] ) && is_array( $invoice_data['cart_details'] ) ) ) {
30
-        return $wp_error ? new WP_Error( 'wpinv_invalid_items', __( 'Invoice must have atleast on item.', 'invoicing' ) ) : 0;
29
+    if (!(!empty($invoice_data['cart_details']) && is_array($invoice_data['cart_details']))) {
30
+        return $wp_error ? new WP_Error('wpinv_invalid_items', __('Invoice must have atleast on item.', 'invoicing')) : 0;
31 31
     }
32 32
     
33
-    if ( empty( $invoice_data['user_id'] ) ) {
33
+    if (empty($invoice_data['user_id'])) {
34 34
         $invoice_data['user_id'] = get_current_user_id();
35 35
     }
36 36
     
37
-    $invoice_data['invoice_id'] = !empty( $invoice_data['invoice_id'] ) ? (int)$invoice_data['invoice_id'] : 0;
37
+    $invoice_data['invoice_id'] = !empty($invoice_data['invoice_id']) ? (int)$invoice_data['invoice_id'] : 0;
38 38
     
39
-    if ( empty( $invoice_data['status'] ) ) {
39
+    if (empty($invoice_data['status'])) {
40 40
         $invoice_data['status'] = 'pending';
41 41
     }
42 42
     
43
-    if ( empty( $invoice_data['ip'] ) ) {
43
+    if (empty($invoice_data['ip'])) {
44 44
         $invoice_data['ip'] = wpinv_get_ip();
45 45
     }
46 46
 
@@ -51,12 +51,12 @@  discard block
 block discarded – undo
51 51
         'status'        => $invoice_data['status'],
52 52
     );
53 53
 
54
-    $invoice = wpinv_create_invoice( $default_args, $invoice_data, true );
55
-    if ( is_wp_error( $invoice ) ) {
54
+    $invoice = wpinv_create_invoice($default_args, $invoice_data, true);
55
+    if (is_wp_error($invoice)) {
56 56
         return $wp_error ? $invoice : 0;
57 57
     }
58 58
     
59
-    if ( empty( $invoice_data['invoice_id'] ) ) {
59
+    if (empty($invoice_data['invoice_id'])) {
60 60
         //$invoice->add_note( wp_sprintf( __( 'Invoice is created with status %s.', 'invoicing' ), wpinv_status_nicename( $invoice->status ) ) );
61 61
     }
62 62
     
@@ -79,24 +79,24 @@  discard block
 block discarded – undo
79 79
         'discount'              => array(),
80 80
     );
81 81
 
82
-    if ( $user_id = (int)$invoice->get_user_id() ) {
83
-        if ( $user_address = wpinv_get_user_address( $user_id ) ) {
84
-            $default_user_info = wp_parse_args( $user_address, $default_user_info );
82
+    if ($user_id = (int)$invoice->get_user_id()) {
83
+        if ($user_address = wpinv_get_user_address($user_id)) {
84
+            $default_user_info = wp_parse_args($user_address, $default_user_info);
85 85
         }
86 86
     }
87 87
     
88
-    if ( empty( $invoice_data['user_info'] ) ) {
88
+    if (empty($invoice_data['user_info'])) {
89 89
         $invoice_data['user_info'] = array();
90 90
     }
91 91
     
92
-    $user_info = wp_parse_args( $invoice_data['user_info'], $default_user_info );
92
+    $user_info = wp_parse_args($invoice_data['user_info'], $default_user_info);
93 93
     
94
-    if ( empty( $user_info['first_name'] ) ) {
94
+    if (empty($user_info['first_name'])) {
95 95
         $user_info['first_name'] = $default_user_info['first_name'];
96 96
         $user_info['last_name'] = $default_user_info['last_name'];
97 97
     }
98 98
     
99
-    if ( empty( $user_info['country'] ) ) {
99
+    if (empty($user_info['country'])) {
100 100
         $user_info['country'] = $default_user_info['country'];
101 101
         $user_info['state'] = $default_user_info['state'];
102 102
         $user_info['city'] = $default_user_info['city'];
@@ -105,13 +105,13 @@  discard block
 block discarded – undo
105 105
         $user_info['phone'] = $default_user_info['phone'];
106 106
     }
107 107
     
108
-    if ( !empty( $user_info['discount'] ) && !is_array( $user_info['discount'] ) ) {
108
+    if (!empty($user_info['discount']) && !is_array($user_info['discount'])) {
109 109
         $user_info['discount'] = (array)$user_info['discount'];
110 110
     }
111 111
 
112 112
     // Payment details
113 113
     $payment_details = array();
114
-    if ( !empty( $invoice_data['payment_details'] ) ) {
114
+    if (!empty($invoice_data['payment_details'])) {
115 115
         $default_payment_details = array(
116 116
             'gateway'           => 'manual',
117 117
             'gateway_title'     => '',
@@ -119,56 +119,56 @@  discard block
 block discarded – undo
119 119
             'transaction_id'    => '',
120 120
         );
121 121
         
122
-        $payment_details = wp_parse_args( $invoice_data['payment_details'], $default_payment_details );
122
+        $payment_details = wp_parse_args($invoice_data['payment_details'], $default_payment_details);
123 123
         
124
-        if ( empty( $payment_details['gateway'] ) ) {
124
+        if (empty($payment_details['gateway'])) {
125 125
             $payment_details['gateway'] = 'manual';
126 126
         }
127 127
         
128
-        if ( empty( $payment_details['currency'] ) ) {
128
+        if (empty($payment_details['currency'])) {
129 129
             $payment_details['currency'] = wpinv_get_default_country();
130 130
         }
131 131
         
132
-        if ( empty( $payment_details['gateway_title'] ) ) {
133
-            $payment_details['gateway_title'] = wpinv_get_gateway_checkout_label( $payment_details['gateway'] );
132
+        if (empty($payment_details['gateway_title'])) {
133
+            $payment_details['gateway_title'] = wpinv_get_gateway_checkout_label($payment_details['gateway']);
134 134
         }
135 135
     }
136 136
     
137
-    $invoice->set( 'status', ( !empty( $invoice_data['status'] ) ? $invoice_data['status'] : 'wpi-pending' ) );
138
-    
139
-    if ( !empty( $payment_details ) ) {
140
-        $invoice->set( 'currency', $payment_details['currency'] );
141
-        $invoice->set( 'gateway', $payment_details['gateway'] );
142
-        $invoice->set( 'gateway_title', $payment_details['gateway_title'] );
143
-        $invoice->set( 'transaction_id', $payment_details['transaction_id'] );
144
-    }
145
-    
146
-    $invoice->set( 'user_info', $user_info );
147
-    $invoice->set( 'first_name', $user_info['first_name'] );
148
-    $invoice->set( 'last_name', $user_info['last_name'] );
149
-    $invoice->set( 'address', $user_info['address'] );
150
-    $invoice->set( 'company', $user_info['company'] );
151
-    $invoice->set( 'vat_number', $user_info['vat_number'] );
152
-    $invoice->set( 'phone', $user_info['phone'] );
153
-    $invoice->set( 'city', $user_info['city'] );
154
-    $invoice->set( 'country', $user_info['country'] );
155
-    $invoice->set( 'state', $user_info['state'] );
156
-    $invoice->set( 'zip', $user_info['zip'] );
157
-    $invoice->set( 'discounts', $user_info['discount'] );
158
-    $invoice->set( 'ip', ( !empty( $invoice_data['ip'] ) ? $invoice_data['ip'] : wpinv_get_ip() ) );
159
-    $invoice->set( 'mode', ( wpinv_is_test_mode() ? 'test' : 'live' ) );
160
-    $invoice->set( 'parent_invoice', ( !empty( $invoice_data['parent'] ) ? absint( $invoice_data['parent'] ) : '' ) );
161
-    
162
-    if ( !empty( $invoice_data['cart_details'] ) && is_array( $invoice_data['cart_details'] ) ) {
163
-        foreach ( $invoice_data['cart_details'] as $key => $item ) {
164
-            $item_id        = !empty( $item['id'] ) ? $item['id'] : 0;
165
-            $quantity       = !empty( $item['quantity'] ) ? $item['quantity'] : 1;
166
-            $name           = !empty( $item['name'] ) ? $item['name'] : '';
167
-            $item_price     = isset( $item['item_price'] ) ? $item['item_price'] : '';
137
+    $invoice->set('status', (!empty($invoice_data['status']) ? $invoice_data['status'] : 'wpi-pending'));
138
+    
139
+    if (!empty($payment_details)) {
140
+        $invoice->set('currency', $payment_details['currency']);
141
+        $invoice->set('gateway', $payment_details['gateway']);
142
+        $invoice->set('gateway_title', $payment_details['gateway_title']);
143
+        $invoice->set('transaction_id', $payment_details['transaction_id']);
144
+    }
145
+    
146
+    $invoice->set('user_info', $user_info);
147
+    $invoice->set('first_name', $user_info['first_name']);
148
+    $invoice->set('last_name', $user_info['last_name']);
149
+    $invoice->set('address', $user_info['address']);
150
+    $invoice->set('company', $user_info['company']);
151
+    $invoice->set('vat_number', $user_info['vat_number']);
152
+    $invoice->set('phone', $user_info['phone']);
153
+    $invoice->set('city', $user_info['city']);
154
+    $invoice->set('country', $user_info['country']);
155
+    $invoice->set('state', $user_info['state']);
156
+    $invoice->set('zip', $user_info['zip']);
157
+    $invoice->set('discounts', $user_info['discount']);
158
+    $invoice->set('ip', (!empty($invoice_data['ip']) ? $invoice_data['ip'] : wpinv_get_ip()));
159
+    $invoice->set('mode', (wpinv_is_test_mode() ? 'test' : 'live'));
160
+    $invoice->set('parent_invoice', (!empty($invoice_data['parent']) ? absint($invoice_data['parent']) : ''));
161
+    
162
+    if (!empty($invoice_data['cart_details']) && is_array($invoice_data['cart_details'])) {
163
+        foreach ($invoice_data['cart_details'] as $key => $item) {
164
+            $item_id        = !empty($item['id']) ? $item['id'] : 0;
165
+            $quantity       = !empty($item['quantity']) ? $item['quantity'] : 1;
166
+            $name           = !empty($item['name']) ? $item['name'] : '';
167
+            $item_price     = isset($item['item_price']) ? $item['item_price'] : '';
168 168
             
169
-            $post_item  = new WPInv_Item( $item_id );
170
-            if ( !empty( $post_item ) ) {
171
-                $name       = !empty( $name ) ? $name : $post_item->get_name();
169
+            $post_item = new WPInv_Item($item_id);
170
+            if (!empty($post_item)) {
171
+                $name       = !empty($name) ? $name : $post_item->get_name();
172 172
                 $item_price = $item_price !== '' ? $item_price : $post_item->get_price();
173 173
             } else {
174 174
                 continue;
@@ -178,253 +178,253 @@  discard block
 block discarded – undo
178 178
                 'name'          => $name,
179 179
                 'quantity'      => $quantity,
180 180
                 'item_price'    => $item_price,
181
-                'custom_price'  => isset( $item['custom_price'] ) ? $item['custom_price'] : '',
182
-                'tax'           => !empty( $item['tax'] ) ? $item['tax'] : 0.00,
183
-                'discount'      => isset( $item['discount'] ) ? $item['discount'] : 0,
184
-                'meta'          => isset( $item['meta'] ) ? $item['meta'] : array(),
185
-                'fees'          => isset( $item['fees'] ) ? $item['fees'] : array(),
181
+                'custom_price'  => isset($item['custom_price']) ? $item['custom_price'] : '',
182
+                'tax'           => !empty($item['tax']) ? $item['tax'] : 0.00,
183
+                'discount'      => isset($item['discount']) ? $item['discount'] : 0,
184
+                'meta'          => isset($item['meta']) ? $item['meta'] : array(),
185
+                'fees'          => isset($item['fees']) ? $item['fees'] : array(),
186 186
             );
187 187
 
188
-            $invoice->add_item( $item_id, $args );
188
+            $invoice->add_item($item_id, $args);
189 189
         }
190 190
     }
191 191
 
192
-    $invoice->increase_tax( wpinv_get_cart_fee_tax() );
192
+    $invoice->increase_tax(wpinv_get_cart_fee_tax());
193 193
 
194
-    if ( isset( $invoice_data['post_date'] ) ) {
195
-        $invoice->set( 'date', $invoice_data['post_date'] );
194
+    if (isset($invoice_data['post_date'])) {
195
+        $invoice->set('date', $invoice_data['post_date']);
196 196
     }
197 197
     
198 198
     // Invoice due date
199
-    if ( isset( $invoice_data['due_date'] ) ) {
200
-        $invoice->set( 'due_date', $invoice_data['due_date'] );
199
+    if (isset($invoice_data['due_date'])) {
200
+        $invoice->set('due_date', $invoice_data['due_date']);
201 201
     }
202 202
     
203 203
     $invoice->save();
204 204
     
205 205
     // Add notes
206
-    if ( !empty( $invoice_data['private_note'] ) ) {
207
-        $invoice->add_note( $invoice_data['private_note'] );
206
+    if (!empty($invoice_data['private_note'])) {
207
+        $invoice->add_note($invoice_data['private_note']);
208 208
     }
209
-    if ( !empty( $invoice_data['user_note'] ) ) {
210
-        $invoice->add_note( $invoice_data['user_note'], true );
209
+    if (!empty($invoice_data['user_note'])) {
210
+        $invoice->add_note($invoice_data['user_note'], true);
211 211
     }
212 212
     
213
-    do_action( 'wpinv_insert_invoice', $invoice->ID, $invoice_data );
213
+    do_action('wpinv_insert_invoice', $invoice->ID, $invoice_data);
214 214
 
215
-    if ( ! empty( $invoice->ID ) ) {
215
+    if (!empty($invoice->ID)) {
216 216
         global $wpi_userID, $wpinv_ip_address_country;
217 217
         
218 218
         $checkout_session = wpinv_get_checkout_session();
219 219
         
220 220
         $data_session                   = array();
221 221
         $data_session['invoice_id']     = $invoice->ID;
222
-        $data_session['cart_discounts'] = $invoice->get_discounts( true );
222
+        $data_session['cart_discounts'] = $invoice->get_discounts(true);
223 223
         
224
-        wpinv_set_checkout_session( $data_session );
224
+        wpinv_set_checkout_session($data_session);
225 225
         
226 226
         $wpi_userID         = (int)$invoice->get_user_id();
227 227
         
228
-        $_POST['country']   = !empty( $invoice->country ) ? $invoice->country : wpinv_get_default_country();
228
+        $_POST['country']   = !empty($invoice->country) ? $invoice->country : wpinv_get_default_country();
229 229
         $_POST['state']     = $invoice->state;
230 230
 
231
-        $invoice->set( 'country', sanitize_text_field( $_POST['country'] ) );
232
-        $invoice->set( 'state', sanitize_text_field( $_POST['state'] ) );
231
+        $invoice->set('country', sanitize_text_field($_POST['country']));
232
+        $invoice->set('state', sanitize_text_field($_POST['state']));
233 233
         
234 234
         $wpinv_ip_address_country = $invoice->country;
235 235
         
236
-        $invoice = $invoice->recalculate_totals( true );
236
+        $invoice = $invoice->recalculate_totals(true);
237 237
         
238
-        wpinv_set_checkout_session( $checkout_session );
238
+        wpinv_set_checkout_session($checkout_session);
239 239
                     
240 240
         return $invoice;
241 241
     }
242 242
     
243
-    if ( $wp_error ) {
244
-        if ( is_wp_error( $invoice ) ) {
243
+    if ($wp_error) {
244
+        if (is_wp_error($invoice)) {
245 245
             return $invoice;
246 246
         } else {
247
-            return new WP_Error( 'wpinv_insert_invoice_error', __( 'Error in insert invoice.', 'invoicing' ) );
247
+            return new WP_Error('wpinv_insert_invoice_error', __('Error in insert invoice.', 'invoicing'));
248 248
         }
249 249
     } else {
250 250
         return 0;
251 251
     }
252 252
 }
253 253
 
254
-function wpinv_update_invoice( $invoice_data = array(), $wp_error = false ) {
255
-    $invoice_ID = !empty( $invoice_data['ID'] ) ? absint( $invoice_data['ID'] ) : NULL;
254
+function wpinv_update_invoice($invoice_data = array(), $wp_error = false) {
255
+    $invoice_ID = !empty($invoice_data['ID']) ? absint($invoice_data['ID']) : NULL;
256 256
 
257
-    if ( !$invoice_ID ) {
258
-        if ( $wp_error ) {
259
-            return new WP_Error( 'invalid_invoice_id', __( 'Invalid invoice ID.', 'invoicing' ) );
257
+    if (!$invoice_ID) {
258
+        if ($wp_error) {
259
+            return new WP_Error('invalid_invoice_id', __('Invalid invoice ID.', 'invoicing'));
260 260
         }
261 261
         return 0;
262 262
     }
263 263
 
264
-    $invoice = wpinv_get_invoice( $invoice_ID );
264
+    $invoice = wpinv_get_invoice($invoice_ID);
265 265
 
266
-    $recurring_item = $invoice->is_recurring() ? $invoice->get_recurring( true ) : NULL;
266
+    $recurring_item = $invoice->is_recurring() ? $invoice->get_recurring(true) : NULL;
267 267
 
268
-    if ( empty( $invoice->ID ) ) {
269
-        if ( $wp_error ) {
270
-            return new WP_Error( 'invalid_invoice', __( 'Invalid invoice.', 'invoicing' ) );
268
+    if (empty($invoice->ID)) {
269
+        if ($wp_error) {
270
+            return new WP_Error('invalid_invoice', __('Invalid invoice.', 'invoicing'));
271 271
         }
272 272
         return 0;
273 273
     }
274 274
 
275
-    if ( !$invoice->has_status( array( 'wpi-pending' ) ) ) {
276
-        if ( $wp_error ) {
277
-            return new WP_Error( 'invalid_invoice_status', __( 'Only invoice with pending payment is allowed to update.', 'invoicing' ) );
275
+    if (!$invoice->has_status(array('wpi-pending'))) {
276
+        if ($wp_error) {
277
+            return new WP_Error('invalid_invoice_status', __('Only invoice with pending payment is allowed to update.', 'invoicing'));
278 278
         }
279 279
         return 0;
280 280
     }
281 281
 
282 282
     // Invoice status
283
-    if ( !empty( $invoice_data['status'] ) ) {
284
-        $invoice->set( 'status', $invoice_data['status'] );
283
+    if (!empty($invoice_data['status'])) {
284
+        $invoice->set('status', $invoice_data['status']);
285 285
     }
286 286
 
287 287
     // Invoice date
288
-    if ( !empty( $invoice_data['post_date'] ) ) {
289
-        $invoice->set( 'date', $invoice_data['post_date'] );
288
+    if (!empty($invoice_data['post_date'])) {
289
+        $invoice->set('date', $invoice_data['post_date']);
290 290
     }
291 291
 
292 292
     // Invoice due date
293
-    if ( isset( $invoice_data['due_date'] ) ) {
294
-        $invoice->set( 'due_date', $invoice_data['due_date'] );
293
+    if (isset($invoice_data['due_date'])) {
294
+        $invoice->set('due_date', $invoice_data['due_date']);
295 295
     }
296 296
 
297 297
     // Invoice IP address
298
-    if ( !empty( $invoice_data['ip'] ) ) {
299
-        $invoice->set( 'ip', $invoice_data['ip'] );
298
+    if (!empty($invoice_data['ip'])) {
299
+        $invoice->set('ip', $invoice_data['ip']);
300 300
     }
301 301
     
302 302
     // User info
303
-    if ( !empty( $invoice_data['user_info'] ) && is_array( $invoice_data['user_info'] ) ) {
304
-        $user_info = wp_parse_args( $invoice_data['user_info'], $invoice->user_info );
303
+    if (!empty($invoice_data['user_info']) && is_array($invoice_data['user_info'])) {
304
+        $user_info = wp_parse_args($invoice_data['user_info'], $invoice->user_info);
305 305
 
306
-        if ( $discounts = $invoice->get_discounts() ) {
306
+        if ($discounts = $invoice->get_discounts()) {
307 307
             $set_discount = $discounts;
308 308
         } else {
309 309
             $set_discount = '';
310 310
         }
311 311
 
312 312
         // Manage discount
313
-        if ( !empty( $invoice_data['user_info']['discount'] ) ) {
313
+        if (!empty($invoice_data['user_info']['discount'])) {
314 314
             // Remove discount
315
-            if ( $invoice_data['user_info']['discount'] == 'none' ) {
315
+            if ($invoice_data['user_info']['discount'] == 'none') {
316 316
                 $set_discount = '';
317 317
             } else {
318 318
                 $set_discount = $invoice_data['user_info']['discount'];
319 319
             }
320 320
 
321
-            $invoice->set( 'discounts', $set_discount );
321
+            $invoice->set('discounts', $set_discount);
322 322
         }
323 323
 
324 324
         $user_info['discount'] = $set_discount;
325 325
 
326
-        $invoice->set( 'user_info', $user_info );
326
+        $invoice->set('user_info', $user_info);
327 327
     }
328 328
 
329
-    if ( !empty( $invoice_data['cart_details'] ) && is_array( $invoice_data['cart_details'] ) && $cart_details = $invoice_data['cart_details'] ) {
330
-        $remove_items = !empty( $cart_details['remove_items'] ) && is_array( $cart_details['remove_items'] ) ? $cart_details['remove_items'] : array();
329
+    if (!empty($invoice_data['cart_details']) && is_array($invoice_data['cart_details']) && $cart_details = $invoice_data['cart_details']) {
330
+        $remove_items = !empty($cart_details['remove_items']) && is_array($cart_details['remove_items']) ? $cart_details['remove_items'] : array();
331 331
 
332
-        if ( !empty( $remove_items[0]['id'] ) ) {
333
-            foreach ( $remove_items as $item ) {
334
-                $item_id        = !empty( $item['id'] ) ? $item['id'] : 0;
335
-                $quantity       = !empty( $item['quantity'] ) ? $item['quantity'] : 1;
336
-                if ( empty( $item_id ) ) {
332
+        if (!empty($remove_items[0]['id'])) {
333
+            foreach ($remove_items as $item) {
334
+                $item_id        = !empty($item['id']) ? $item['id'] : 0;
335
+                $quantity       = !empty($item['quantity']) ? $item['quantity'] : 1;
336
+                if (empty($item_id)) {
337 337
                     continue;
338 338
                 }
339 339
 
340
-                foreach ( $invoice->cart_details as $cart_index => $cart_item ) {
341
-                    if ( $item_id == $cart_item['id'] ) {
340
+                foreach ($invoice->cart_details as $cart_index => $cart_item) {
341
+                    if ($item_id == $cart_item['id']) {
342 342
                         $args = array(
343 343
                             'id'         => $item_id,
344 344
                             'quantity'   => $quantity,
345 345
                             'cart_index' => $cart_index
346 346
                         );
347 347
 
348
-                        $invoice->remove_item( $item_id, $args );
348
+                        $invoice->remove_item($item_id, $args);
349 349
                         break;
350 350
                     }
351 351
                 }
352 352
             }
353 353
         }
354 354
 
355
-        $add_items = !empty( $cart_details['add_items'] ) && is_array( $cart_details['add_items'] ) ? $cart_details['add_items'] : array();
355
+        $add_items = !empty($cart_details['add_items']) && is_array($cart_details['add_items']) ? $cart_details['add_items'] : array();
356 356
 
357
-        if ( !empty( $add_items[0]['id'] ) ) {
358
-            foreach ( $add_items as $item ) {
359
-                $item_id        = !empty( $item['id'] ) ? $item['id'] : 0;
360
-                $post_item      = new WPInv_Item( $item_id );
361
-                if ( empty( $post_item ) ) {
357
+        if (!empty($add_items[0]['id'])) {
358
+            foreach ($add_items as $item) {
359
+                $item_id        = !empty($item['id']) ? $item['id'] : 0;
360
+                $post_item      = new WPInv_Item($item_id);
361
+                if (empty($post_item)) {
362 362
                     continue;
363 363
                 }
364 364
 
365 365
                 $valid_item = true;
366
-                if ( !empty( $recurring_item ) ) {
367
-                    if ( $recurring_item->ID != $item_id ) {
366
+                if (!empty($recurring_item)) {
367
+                    if ($recurring_item->ID != $item_id) {
368 368
                         $valid_item = false;
369 369
                     }
370
-                } else if ( wpinv_is_recurring_item( $item_id ) ) {
370
+                } else if (wpinv_is_recurring_item($item_id)) {
371 371
                     $valid_item = false;
372 372
                 }
373 373
                 
374
-                if ( !$valid_item ) {
375
-                    if ( $wp_error ) {
376
-                        return new WP_Error( 'invalid_invoice_item', __( 'You can not add item to invoice because recurring item must be paid individually!', 'invoicing' ) );
374
+                if (!$valid_item) {
375
+                    if ($wp_error) {
376
+                        return new WP_Error('invalid_invoice_item', __('You can not add item to invoice because recurring item must be paid individually!', 'invoicing'));
377 377
                     }
378 378
                     return 0;
379 379
                 }
380 380
 
381
-                $quantity       = !empty( $item['quantity'] ) ? $item['quantity'] : 1;
382
-                $name           = !empty( $item['name'] ) ? $item['name'] : $post_item->get_name();
383
-                $item_price     = isset( $item['item_price'] ) ? $item['item_price'] : $post_item->get_price();
381
+                $quantity       = !empty($item['quantity']) ? $item['quantity'] : 1;
382
+                $name           = !empty($item['name']) ? $item['name'] : $post_item->get_name();
383
+                $item_price     = isset($item['item_price']) ? $item['item_price'] : $post_item->get_price();
384 384
 
385 385
                 $args = array(
386 386
                     'name'          => $name,
387 387
                     'quantity'      => $quantity,
388 388
                     'item_price'    => $item_price,
389
-                    'custom_price'  => isset( $item['custom_price'] ) ? $item['custom_price'] : '',
390
-                    'tax'           => !empty( $item['tax'] ) ? $item['tax'] : 0,
391
-                    'discount'      => isset( $item['discount'] ) ? $item['discount'] : 0,
392
-                    'meta'          => isset( $item['meta'] ) ? $item['meta'] : array(),
393
-                    'fees'          => isset( $item['fees'] ) ? $item['fees'] : array(),
389
+                    'custom_price'  => isset($item['custom_price']) ? $item['custom_price'] : '',
390
+                    'tax'           => !empty($item['tax']) ? $item['tax'] : 0,
391
+                    'discount'      => isset($item['discount']) ? $item['discount'] : 0,
392
+                    'meta'          => isset($item['meta']) ? $item['meta'] : array(),
393
+                    'fees'          => isset($item['fees']) ? $item['fees'] : array(),
394 394
                 );
395 395
 
396
-                $invoice->add_item( $item_id, $args );
396
+                $invoice->add_item($item_id, $args);
397 397
             }
398 398
         }
399 399
     }
400 400
     
401 401
     // Payment details
402
-    if ( !empty( $invoice_data['payment_details'] ) && $payment_details = $invoice_data['payment_details'] ) {
403
-        if ( !empty( $payment_details['gateway'] ) ) {
404
-            $invoice->set( 'gateway', $payment_details['gateway'] );
402
+    if (!empty($invoice_data['payment_details']) && $payment_details = $invoice_data['payment_details']) {
403
+        if (!empty($payment_details['gateway'])) {
404
+            $invoice->set('gateway', $payment_details['gateway']);
405 405
         }
406 406
 
407
-        if ( !empty( $payment_details['transaction_id'] ) ) {
408
-            $invoice->set( 'transaction_id', $payment_details['transaction_id'] );
407
+        if (!empty($payment_details['transaction_id'])) {
408
+            $invoice->set('transaction_id', $payment_details['transaction_id']);
409 409
         }
410 410
     }
411 411
 
412
-    do_action( 'wpinv_pre_update_invoice', $invoice->ID, $invoice_data );
412
+    do_action('wpinv_pre_update_invoice', $invoice->ID, $invoice_data);
413 413
 
414 414
     // Parent invoice
415
-    if ( !empty( $invoice_data['parent'] ) ) {
416
-        $invoice->set( 'parent_invoice', $invoice_data['parent'] );
415
+    if (!empty($invoice_data['parent'])) {
416
+        $invoice->set('parent_invoice', $invoice_data['parent']);
417 417
     }
418 418
 
419 419
     // Save invoice data.
420 420
     $invoice->save();
421 421
     
422
-    if ( empty( $invoice->ID ) || is_wp_error( $invoice ) ) {
423
-        if ( $wp_error ) {
424
-            if ( is_wp_error( $invoice ) ) {
422
+    if (empty($invoice->ID) || is_wp_error($invoice)) {
423
+        if ($wp_error) {
424
+            if (is_wp_error($invoice)) {
425 425
                 return $invoice;
426 426
             } else {
427
-                return new WP_Error( 'wpinv_update_invoice_error', __( 'Error in update invoice.', 'invoicing' ) );
427
+                return new WP_Error('wpinv_update_invoice_error', __('Error in update invoice.', 'invoicing'));
428 428
             }
429 429
         } else {
430 430
             return 0;
@@ -432,13 +432,13 @@  discard block
 block discarded – undo
432 432
     }
433 433
 
434 434
     // Add private note
435
-    if ( !empty( $invoice_data['private_note'] ) ) {
436
-        $invoice->add_note( $invoice_data['private_note'] );
435
+    if (!empty($invoice_data['private_note'])) {
436
+        $invoice->add_note($invoice_data['private_note']);
437 437
     }
438 438
 
439 439
     // Add user note
440
-    if ( !empty( $invoice_data['user_note'] ) ) {
441
-        $invoice->add_note( $invoice_data['user_note'], true );
440
+    if (!empty($invoice_data['user_note'])) {
441
+        $invoice->add_note($invoice_data['user_note'], true);
442 442
     }
443 443
 
444 444
     global $wpi_userID, $wpinv_ip_address_country;
@@ -447,445 +447,445 @@  discard block
 block discarded – undo
447 447
 
448 448
     $data_session                   = array();
449 449
     $data_session['invoice_id']     = $invoice->ID;
450
-    $data_session['cart_discounts'] = $invoice->get_discounts( true );
450
+    $data_session['cart_discounts'] = $invoice->get_discounts(true);
451 451
 
452
-    wpinv_set_checkout_session( $data_session );
452
+    wpinv_set_checkout_session($data_session);
453 453
 
454 454
     $wpi_userID         = (int)$invoice->get_user_id();
455 455
 
456
-    $_POST['country']   = !empty( $invoice->country ) ? $invoice->country : wpinv_get_default_country();
456
+    $_POST['country']   = !empty($invoice->country) ? $invoice->country : wpinv_get_default_country();
457 457
     $_POST['state']     = $invoice->state;
458 458
 
459
-    $invoice->set( 'country', sanitize_text_field( $_POST['country'] ) );
460
-    $invoice->set( 'state', sanitize_text_field( $_POST['state'] ) );
459
+    $invoice->set('country', sanitize_text_field($_POST['country']));
460
+    $invoice->set('state', sanitize_text_field($_POST['state']));
461 461
 
462 462
     $wpinv_ip_address_country = $invoice->country;
463 463
 
464
-    $invoice = $invoice->recalculate_totals( true );
464
+    $invoice = $invoice->recalculate_totals(true);
465 465
 
466
-    do_action( 'wpinv_post_update_invoice', $invoice->ID, $invoice_data );
466
+    do_action('wpinv_post_update_invoice', $invoice->ID, $invoice_data);
467 467
 
468
-    wpinv_set_checkout_session( $checkout_session );
468
+    wpinv_set_checkout_session($checkout_session);
469 469
 
470 470
     return $invoice;
471 471
 }
472 472
 
473
-function wpinv_get_invoice( $invoice_id = 0, $cart = false ) {
474
-    if ( $cart && empty( $invoice_id ) ) {
473
+function wpinv_get_invoice($invoice_id = 0, $cart = false) {
474
+    if ($cart && empty($invoice_id)) {
475 475
         $invoice_id = (int)wpinv_get_invoice_cart_id();
476 476
     }
477 477
 
478
-    $invoice = new WPInv_Invoice( $invoice_id );
478
+    $invoice = new WPInv_Invoice($invoice_id);
479 479
     return $invoice;
480 480
 }
481 481
 
482
-function wpinv_get_invoice_cart( $invoice_id = 0 ) {
483
-    return wpinv_get_invoice( $invoice_id, true );
482
+function wpinv_get_invoice_cart($invoice_id = 0) {
483
+    return wpinv_get_invoice($invoice_id, true);
484 484
 }
485 485
 
486
-function wpinv_get_invoice_description( $invoice_id = 0 ) {
487
-    $invoice = new WPInv_Invoice( $invoice_id );
486
+function wpinv_get_invoice_description($invoice_id = 0) {
487
+    $invoice = new WPInv_Invoice($invoice_id);
488 488
     return $invoice->get_description();
489 489
 }
490 490
 
491
-function wpinv_get_invoice_currency_code( $invoice_id = 0 ) {
492
-    $invoice = new WPInv_Invoice( $invoice_id );
491
+function wpinv_get_invoice_currency_code($invoice_id = 0) {
492
+    $invoice = new WPInv_Invoice($invoice_id);
493 493
     return $invoice->get_currency();
494 494
 }
495 495
 
496
-function wpinv_get_payment_user_email( $invoice_id ) {
497
-    $invoice = new WPInv_Invoice( $invoice_id );
496
+function wpinv_get_payment_user_email($invoice_id) {
497
+    $invoice = new WPInv_Invoice($invoice_id);
498 498
     return $invoice->get_email();
499 499
 }
500 500
 
501
-function wpinv_get_user_id( $invoice_id ) {
502
-    $invoice = new WPInv_Invoice( $invoice_id );
501
+function wpinv_get_user_id($invoice_id) {
502
+    $invoice = new WPInv_Invoice($invoice_id);
503 503
     return $invoice->get_user_id();
504 504
 }
505 505
 
506
-function wpinv_get_invoice_status( $invoice_id, $return_label = false ) {
507
-    $invoice = new WPInv_Invoice( $invoice_id );
506
+function wpinv_get_invoice_status($invoice_id, $return_label = false) {
507
+    $invoice = new WPInv_Invoice($invoice_id);
508 508
     
509
-    return $invoice->get_status( $return_label );
509
+    return $invoice->get_status($return_label);
510 510
 }
511 511
 
512
-function wpinv_get_payment_gateway( $invoice_id, $return_label = false ) {
513
-    $invoice = new WPInv_Invoice( $invoice_id );
512
+function wpinv_get_payment_gateway($invoice_id, $return_label = false) {
513
+    $invoice = new WPInv_Invoice($invoice_id);
514 514
     
515
-    return $invoice->get_gateway( $return_label );
515
+    return $invoice->get_gateway($return_label);
516 516
 }
517 517
 
518
-function wpinv_get_payment_gateway_name( $invoice_id ) {
519
-    $invoice = new WPInv_Invoice( $invoice_id );
518
+function wpinv_get_payment_gateway_name($invoice_id) {
519
+    $invoice = new WPInv_Invoice($invoice_id);
520 520
     
521 521
     return $invoice->get_gateway_title();
522 522
 }
523 523
 
524
-function wpinv_get_payment_transaction_id( $invoice_id ) {
525
-    $invoice = new WPInv_Invoice( $invoice_id );
524
+function wpinv_get_payment_transaction_id($invoice_id) {
525
+    $invoice = new WPInv_Invoice($invoice_id);
526 526
     
527 527
     return $invoice->get_transaction_id();
528 528
 }
529 529
 
530
-function wpinv_get_id_by_transaction_id( $key ) {
530
+function wpinv_get_id_by_transaction_id($key) {
531 531
     global $wpdb;
532 532
 
533
-    $invoice_id = $wpdb->get_var( $wpdb->prepare( "SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_wpinv_transaction_id' AND meta_value = %s LIMIT 1", $key ) );
533
+    $invoice_id = $wpdb->get_var($wpdb->prepare("SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_wpinv_transaction_id' AND meta_value = %s LIMIT 1", $key));
534 534
 
535
-    if ( $invoice_id != NULL )
535
+    if ($invoice_id != NULL)
536 536
         return $invoice_id;
537 537
 
538 538
     return 0;
539 539
 }
540 540
 
541
-function wpinv_get_invoice_meta( $invoice_id = 0, $meta_key = '_wpinv_payment_meta', $single = true ) {
542
-    $invoice = new WPInv_Invoice( $invoice_id );
541
+function wpinv_get_invoice_meta($invoice_id = 0, $meta_key = '_wpinv_payment_meta', $single = true) {
542
+    $invoice = new WPInv_Invoice($invoice_id);
543 543
 
544
-    return $invoice->get_meta( $meta_key, $single );
544
+    return $invoice->get_meta($meta_key, $single);
545 545
 }
546 546
 
547
-function wpinv_update_invoice_meta( $invoice_id = 0, $meta_key = '', $meta_value = '', $prev_value = '' ) {
548
-    $invoice = new WPInv_Invoice( $invoice_id );
547
+function wpinv_update_invoice_meta($invoice_id = 0, $meta_key = '', $meta_value = '', $prev_value = '') {
548
+    $invoice = new WPInv_Invoice($invoice_id);
549 549
     
550
-    return $invoice->update_meta( $meta_key, $meta_value, $prev_value );
550
+    return $invoice->update_meta($meta_key, $meta_value, $prev_value);
551 551
 }
552 552
 
553
-function wpinv_get_items( $invoice_id = 0 ) {
554
-    $invoice            = wpinv_get_invoice( $invoice_id );
553
+function wpinv_get_items($invoice_id = 0) {
554
+    $invoice            = wpinv_get_invoice($invoice_id);
555 555
     
556 556
     $items              = $invoice->get_items();
557 557
     $invoice_currency   = $invoice->get_currency();
558 558
 
559
-    if ( !empty( $items ) && is_array( $items ) ) {
560
-        foreach ( $items as $key => $item ) {
559
+    if (!empty($items) && is_array($items)) {
560
+        foreach ($items as $key => $item) {
561 561
             $items[$key]['currency'] = $invoice_currency;
562 562
 
563
-            if ( !isset( $cart_item['subtotal'] ) ) {
563
+            if (!isset($cart_item['subtotal'])) {
564 564
                 $items[$key]['subtotal'] = $items[$key]['amount'] * 1;
565 565
             }
566 566
         }
567 567
     }
568 568
 
569
-    return apply_filters( 'wpinv_get_items', $items, $invoice_id );
569
+    return apply_filters('wpinv_get_items', $items, $invoice_id);
570 570
 }
571 571
 
572
-function wpinv_get_fees( $invoice_id = 0 ) {
573
-    $invoice           = wpinv_get_invoice( $invoice_id );
572
+function wpinv_get_fees($invoice_id = 0) {
573
+    $invoice           = wpinv_get_invoice($invoice_id);
574 574
     $fees              = $invoice->get_fees();
575 575
 
576
-    return apply_filters( 'wpinv_get_fees', $fees, $invoice_id );
576
+    return apply_filters('wpinv_get_fees', $fees, $invoice_id);
577 577
 }
578 578
 
579
-function wpinv_get_invoice_ip( $invoice_id ) {
580
-    $invoice = new WPInv_Invoice( $invoice_id );
579
+function wpinv_get_invoice_ip($invoice_id) {
580
+    $invoice = new WPInv_Invoice($invoice_id);
581 581
     return $invoice->get_ip();
582 582
 }
583 583
 
584
-function wpinv_get_invoice_user_info( $invoice_id ) {
585
-    $invoice = new WPInv_Invoice( $invoice_id );
584
+function wpinv_get_invoice_user_info($invoice_id) {
585
+    $invoice = new WPInv_Invoice($invoice_id);
586 586
     return $invoice->get_user_info();
587 587
 }
588 588
 
589
-function wpinv_subtotal( $invoice_id = 0, $currency = false ) {
590
-    $invoice = new WPInv_Invoice( $invoice_id );
589
+function wpinv_subtotal($invoice_id = 0, $currency = false) {
590
+    $invoice = new WPInv_Invoice($invoice_id);
591 591
 
592
-    return $invoice->get_subtotal( $currency );
592
+    return $invoice->get_subtotal($currency);
593 593
 }
594 594
 
595
-function wpinv_tax( $invoice_id = 0, $currency = false ) {
596
-    $invoice = new WPInv_Invoice( $invoice_id );
595
+function wpinv_tax($invoice_id = 0, $currency = false) {
596
+    $invoice = new WPInv_Invoice($invoice_id);
597 597
 
598
-    return $invoice->get_tax( $currency );
598
+    return $invoice->get_tax($currency);
599 599
 }
600 600
 
601
-function wpinv_discount( $invoice_id = 0, $currency = false, $dash = false ) {
602
-    $invoice = wpinv_get_invoice( $invoice_id );
601
+function wpinv_discount($invoice_id = 0, $currency = false, $dash = false) {
602
+    $invoice = wpinv_get_invoice($invoice_id);
603 603
 
604
-    return $invoice->get_discount( $currency, $dash );
604
+    return $invoice->get_discount($currency, $dash);
605 605
 }
606 606
 
607
-function wpinv_discount_code( $invoice_id = 0 ) {
608
-    $invoice = new WPInv_Invoice( $invoice_id );
607
+function wpinv_discount_code($invoice_id = 0) {
608
+    $invoice = new WPInv_Invoice($invoice_id);
609 609
 
610 610
     return $invoice->get_discount_code();
611 611
 }
612 612
 
613
-function wpinv_payment_total( $invoice_id = 0, $currency = false ) {
614
-    $invoice = new WPInv_Invoice( $invoice_id );
613
+function wpinv_payment_total($invoice_id = 0, $currency = false) {
614
+    $invoice = new WPInv_Invoice($invoice_id);
615 615
 
616
-    return $invoice->get_total( $currency );
616
+    return $invoice->get_total($currency);
617 617
 }
618 618
 
619
-function wpinv_get_date_created( $invoice_id = 0 ) {
620
-    $invoice = new WPInv_Invoice( $invoice_id );
619
+function wpinv_get_date_created($invoice_id = 0) {
620
+    $invoice = new WPInv_Invoice($invoice_id);
621 621
     
622 622
     $date_created   = $invoice->get_created_date();
623
-    $date_created   = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? date_i18n( get_option( 'date_format' ), strtotime( $date_created ) ) : '';
623
+    $date_created   = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? date_i18n(get_option('date_format'), strtotime($date_created)) : '';
624 624
 
625 625
     return $date_created;
626 626
 }
627 627
 
628
-function wpinv_get_invoice_date( $invoice_id = 0, $format = '' ) {
629
-    $invoice = new WPInv_Invoice( $invoice_id );
628
+function wpinv_get_invoice_date($invoice_id = 0, $format = '') {
629
+    $invoice = new WPInv_Invoice($invoice_id);
630 630
     
631
-    $format         = !empty( $format ) ? $format : get_option( 'date_format' );
631
+    $format         = !empty($format) ? $format : get_option('date_format');
632 632
     $date_completed = $invoice->get_completed_date();
633
-    $invoice_date   = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? date_i18n( $format, strtotime( $date_completed ) ) : '';
634
-    if ( $invoice_date == '' ) {
633
+    $invoice_date   = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? date_i18n($format, strtotime($date_completed)) : '';
634
+    if ($invoice_date == '') {
635 635
         $date_created   = $invoice->get_created_date();
636
-        $invoice_date   = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? date_i18n( $format, strtotime( $date_created ) ) : '';
636
+        $invoice_date   = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? date_i18n($format, strtotime($date_created)) : '';
637 637
     }
638 638
 
639 639
     return $invoice_date;
640 640
 }
641 641
 
642
-function wpinv_get_invoice_vat_number( $invoice_id = 0 ) {
643
-    $invoice = new WPInv_Invoice( $invoice_id );
642
+function wpinv_get_invoice_vat_number($invoice_id = 0) {
643
+    $invoice = new WPInv_Invoice($invoice_id);
644 644
     
645 645
     return $invoice->vat_number;
646 646
 }
647 647
 
648
-function wpinv_insert_payment_note( $invoice_id = 0, $note = '', $user_type = false, $added_by_user = false ) {
649
-    $invoice = new WPInv_Invoice( $invoice_id );
648
+function wpinv_insert_payment_note($invoice_id = 0, $note = '', $user_type = false, $added_by_user = false) {
649
+    $invoice = new WPInv_Invoice($invoice_id);
650 650
 
651
-    return $invoice->add_note( $note, $user_type, $added_by_user );
651
+    return $invoice->add_note($note, $user_type, $added_by_user);
652 652
 }
653 653
 
654
-function wpinv_get_invoice_notes( $invoice_id = 0, $type = '' ) {
654
+function wpinv_get_invoice_notes($invoice_id = 0, $type = '') {
655 655
     global $invoicing;
656 656
     
657
-    if ( empty( $invoice_id ) ) {
657
+    if (empty($invoice_id)) {
658 658
         return NULL;
659 659
     }
660 660
     
661
-    $notes = $invoicing->notes->get_invoice_notes( $invoice_id, $type );
661
+    $notes = $invoicing->notes->get_invoice_notes($invoice_id, $type);
662 662
     
663
-    return apply_filters( 'wpinv_invoice_notes', $notes, $invoice_id, $type );
663
+    return apply_filters('wpinv_invoice_notes', $notes, $invoice_id, $type);
664 664
 }
665 665
 
666
-function wpinv_get_payment_key( $invoice_id = 0 ) {
667
-	$invoice = new WPInv_Invoice( $invoice_id );
666
+function wpinv_get_payment_key($invoice_id = 0) {
667
+	$invoice = new WPInv_Invoice($invoice_id);
668 668
     return $invoice->get_key();
669 669
 }
670 670
 
671
-function wpinv_get_invoice_number( $invoice_id = 0 ) {
672
-    $invoice = new WPInv_Invoice( $invoice_id );
671
+function wpinv_get_invoice_number($invoice_id = 0) {
672
+    $invoice = new WPInv_Invoice($invoice_id);
673 673
     return $invoice->get_number();
674 674
 }
675 675
 
676
-function wpinv_get_cart_discountable_subtotal( $code_id ) {
676
+function wpinv_get_cart_discountable_subtotal($code_id) {
677 677
     $cart_items = wpinv_get_cart_content_details();
678 678
     $items      = array();
679 679
 
680
-    $excluded_items = wpinv_get_discount_excluded_items( $code_id );
680
+    $excluded_items = wpinv_get_discount_excluded_items($code_id);
681 681
 
682
-    if( $cart_items ) {
682
+    if ($cart_items) {
683 683
 
684
-        foreach( $cart_items as $item ) {
684
+        foreach ($cart_items as $item) {
685 685
 
686
-            if( ! in_array( $item['id'], $excluded_items ) ) {
687
-                $items[] =  $item;
686
+            if (!in_array($item['id'], $excluded_items)) {
687
+                $items[] = $item;
688 688
             }
689 689
         }
690 690
     }
691 691
 
692
-    $subtotal = wpinv_get_cart_items_subtotal( $items );
692
+    $subtotal = wpinv_get_cart_items_subtotal($items);
693 693
 
694
-    return apply_filters( 'wpinv_get_cart_discountable_subtotal', $subtotal );
694
+    return apply_filters('wpinv_get_cart_discountable_subtotal', $subtotal);
695 695
 }
696 696
 
697
-function wpinv_get_cart_items_subtotal( $items ) {
697
+function wpinv_get_cart_items_subtotal($items) {
698 698
     $subtotal = 0.00;
699 699
 
700
-    if ( is_array( $items ) && ! empty( $items ) ) {
701
-        $prices = wp_list_pluck( $items, 'subtotal' );
700
+    if (is_array($items) && !empty($items)) {
701
+        $prices = wp_list_pluck($items, 'subtotal');
702 702
 
703
-        if( is_array( $prices ) ) {
704
-            $subtotal = array_sum( $prices );
703
+        if (is_array($prices)) {
704
+            $subtotal = array_sum($prices);
705 705
         } else {
706 706
             $subtotal = 0.00;
707 707
         }
708 708
 
709
-        if( $subtotal < 0 ) {
709
+        if ($subtotal < 0) {
710 710
             $subtotal = 0.00;
711 711
         }
712 712
     }
713 713
 
714
-    return apply_filters( 'wpinv_get_cart_items_subtotal', $subtotal );
714
+    return apply_filters('wpinv_get_cart_items_subtotal', $subtotal);
715 715
 }
716 716
 
717
-function wpinv_get_cart_subtotal( $items = array() ) {
718
-    $items    = !empty( $items ) ? $items : wpinv_get_cart_content_details();
719
-    $subtotal = wpinv_get_cart_items_subtotal( $items );
717
+function wpinv_get_cart_subtotal($items = array()) {
718
+    $items    = !empty($items) ? $items : wpinv_get_cart_content_details();
719
+    $subtotal = wpinv_get_cart_items_subtotal($items);
720 720
 
721
-    return apply_filters( 'wpinv_get_cart_subtotal', $subtotal );
721
+    return apply_filters('wpinv_get_cart_subtotal', $subtotal);
722 722
 }
723 723
 
724
-function wpinv_cart_subtotal( $items = array() ) {
725
-    $price = wpinv_price( wpinv_format_amount( wpinv_get_cart_subtotal( $items ) ) );
724
+function wpinv_cart_subtotal($items = array()) {
725
+    $price = wpinv_price(wpinv_format_amount(wpinv_get_cart_subtotal($items)));
726 726
 
727 727
     return $price;
728 728
 }
729 729
 
730
-function wpinv_get_cart_total( $items = array(), $discounts = false, $invoice = array() ) {
731
-    $subtotal  = (float)wpinv_get_cart_subtotal( $items );
732
-    $discounts = (float)wpinv_get_cart_discounted_amount( $items );
733
-    $cart_tax  = (float)wpinv_get_cart_tax( $items );
730
+function wpinv_get_cart_total($items = array(), $discounts = false, $invoice = array()) {
731
+    $subtotal  = (float)wpinv_get_cart_subtotal($items);
732
+    $discounts = (float)wpinv_get_cart_discounted_amount($items);
733
+    $cart_tax  = (float)wpinv_get_cart_tax($items);
734 734
     $fees      = (float)wpinv_get_cart_fee_total();
735
-    if ( !empty( $invoice ) && $invoice->is_free_trial() ) {
735
+    if (!empty($invoice) && $invoice->is_free_trial()) {
736 736
         $total = 0;
737 737
     } else {
738
-        $total     = $subtotal - $discounts + $cart_tax + $fees;
738
+        $total = $subtotal - $discounts + $cart_tax + $fees;
739 739
     }
740 740
 
741
-    if ( $total < 0 ) {
741
+    if ($total < 0) {
742 742
         $total = 0.00;
743 743
     }
744 744
     
745
-    $total = (float)apply_filters( 'wpinv_get_cart_total', $total, $items );
745
+    $total = (float)apply_filters('wpinv_get_cart_total', $total, $items);
746 746
 
747
-    return wpinv_sanitize_amount( $total );
747
+    return wpinv_sanitize_amount($total);
748 748
 }
749 749
 
750
-function wpinv_cart_total( $cart_items = array(), $echo = true, $invoice = array() ) {
750
+function wpinv_cart_total($cart_items = array(), $echo = true, $invoice = array()) {
751 751
     global $cart_total;
752
-    $total = wpinv_price( wpinv_format_amount( wpinv_get_cart_total( $cart_items, NULL, $invoice ) ) );
753
-    $total = apply_filters( 'wpinv_cart_total', $total, $cart_items, $invoice );
752
+    $total = wpinv_price(wpinv_format_amount(wpinv_get_cart_total($cart_items, NULL, $invoice)));
753
+    $total = apply_filters('wpinv_cart_total', $total, $cart_items, $invoice);
754 754
     
755 755
     $cart_total = $total;
756 756
 
757
-    if ( !$echo ) {
757
+    if (!$echo) {
758 758
         return $total;
759 759
     }
760 760
 
761 761
     echo $total;
762 762
 }
763 763
 
764
-function wpinv_get_cart_tax( $items = array() ) {
764
+function wpinv_get_cart_tax($items = array()) {
765 765
     $cart_tax = 0;
766
-    $items    = !empty( $items ) ? $items : wpinv_get_cart_content_details();
766
+    $items    = !empty($items) ? $items : wpinv_get_cart_content_details();
767 767
 
768
-    if ( $items ) {
769
-        $taxes = wp_list_pluck( $items, 'tax' );
768
+    if ($items) {
769
+        $taxes = wp_list_pluck($items, 'tax');
770 770
 
771
-        if( is_array( $taxes ) ) {
772
-            $cart_tax = array_sum( $taxes );
771
+        if (is_array($taxes)) {
772
+            $cart_tax = array_sum($taxes);
773 773
         }
774 774
     }
775 775
 
776 776
     $cart_tax += wpinv_get_cart_fee_tax();
777 777
 
778
-    return apply_filters( 'wpinv_get_cart_tax', wpinv_sanitize_amount( $cart_tax ) );
778
+    return apply_filters('wpinv_get_cart_tax', wpinv_sanitize_amount($cart_tax));
779 779
 }
780 780
 
781
-function wpinv_cart_tax( $items = array(), $echo = false ) {
782
-    $cart_tax = wpinv_get_cart_tax( $items );
783
-    $cart_tax = wpinv_price( wpinv_format_amount( $cart_tax ) );
781
+function wpinv_cart_tax($items = array(), $echo = false) {
782
+    $cart_tax = wpinv_get_cart_tax($items);
783
+    $cart_tax = wpinv_price(wpinv_format_amount($cart_tax));
784 784
 
785
-    $tax = apply_filters( 'wpinv_cart_tax', $cart_tax, $items );
785
+    $tax = apply_filters('wpinv_cart_tax', $cart_tax, $items);
786 786
 
787
-    if ( !$echo ) {
787
+    if (!$echo) {
788 788
         return $tax;
789 789
     }
790 790
 
791 791
     echo $tax;
792 792
 }
793 793
 
794
-function wpinv_get_cart_discount_code( $items = array() ) {
794
+function wpinv_get_cart_discount_code($items = array()) {
795 795
     $invoice = wpinv_get_invoice_cart();
796
-    $cart_discount_code = !empty( $invoice ) ? $invoice->get_discount_code() : '';
796
+    $cart_discount_code = !empty($invoice) ? $invoice->get_discount_code() : '';
797 797
     
798
-    return apply_filters( 'wpinv_get_cart_discount_code', $cart_discount_code );
798
+    return apply_filters('wpinv_get_cart_discount_code', $cart_discount_code);
799 799
 }
800 800
 
801
-function wpinv_cart_discount_code( $items = array(), $echo = false ) {
802
-    $cart_discount_code = wpinv_get_cart_discount_code( $items );
801
+function wpinv_cart_discount_code($items = array(), $echo = false) {
802
+    $cart_discount_code = wpinv_get_cart_discount_code($items);
803 803
 
804
-    if ( $cart_discount_code != '' ) {
804
+    if ($cart_discount_code != '') {
805 805
         $cart_discount_code = ' (' . $cart_discount_code . ')';
806 806
     }
807 807
     
808
-    $discount_code = apply_filters( 'wpinv_cart_discount_code', $cart_discount_code, $items );
808
+    $discount_code = apply_filters('wpinv_cart_discount_code', $cart_discount_code, $items);
809 809
 
810
-    if ( !$echo ) {
810
+    if (!$echo) {
811 811
         return $discount_code;
812 812
     }
813 813
 
814 814
     echo $discount_code;
815 815
 }
816 816
 
817
-function wpinv_get_cart_discount( $items = array() ) {
817
+function wpinv_get_cart_discount($items = array()) {
818 818
     $invoice = wpinv_get_invoice_cart();
819
-    $cart_discount = !empty( $invoice ) ? $invoice->get_discount() : 0;
819
+    $cart_discount = !empty($invoice) ? $invoice->get_discount() : 0;
820 820
     
821
-    return apply_filters( 'wpinv_get_cart_discount', wpinv_sanitize_amount( $cart_discount ), $items );
821
+    return apply_filters('wpinv_get_cart_discount', wpinv_sanitize_amount($cart_discount), $items);
822 822
 }
823 823
 
824
-function wpinv_cart_discount( $items = array(), $echo = false ) {
825
-    $cart_discount = wpinv_get_cart_discount( $items );
826
-    $cart_discount = wpinv_price( wpinv_format_amount( $cart_discount ) );
824
+function wpinv_cart_discount($items = array(), $echo = false) {
825
+    $cart_discount = wpinv_get_cart_discount($items);
826
+    $cart_discount = wpinv_price(wpinv_format_amount($cart_discount));
827 827
 
828
-    $discount = apply_filters( 'wpinv_cart_discount', $cart_discount, $items );
828
+    $discount = apply_filters('wpinv_cart_discount', $cart_discount, $items);
829 829
 
830
-    if ( !$echo ) {
830
+    if (!$echo) {
831 831
         return $discount;
832 832
     }
833 833
 
834 834
     echo $discount;
835 835
 }
836 836
 
837
-function wpinv_get_cart_fees( $type = 'all', $item_id = 0 ) {
838
-    $item = new WPInv_Item( $item_id );
837
+function wpinv_get_cart_fees($type = 'all', $item_id = 0) {
838
+    $item = new WPInv_Item($item_id);
839 839
     
840
-    return $item->get_fees( $type, $item_id );
840
+    return $item->get_fees($type, $item_id);
841 841
 }
842 842
 
843 843
 function wpinv_get_cart_fee_total() {
844
-    $total  = 0;
844
+    $total = 0;
845 845
     $fees = wpinv_get_cart_fees();
846 846
     
847
-    if ( $fees ) {
848
-        foreach ( $fees as $fee_id => $fee ) {
847
+    if ($fees) {
848
+        foreach ($fees as $fee_id => $fee) {
849 849
             $total += $fee['amount'];
850 850
         }
851 851
     }
852 852
 
853
-    return apply_filters( 'wpinv_get_cart_fee_total', $total );
853
+    return apply_filters('wpinv_get_cart_fee_total', $total);
854 854
 }
855 855
 
856 856
 function wpinv_get_cart_fee_tax() {
857 857
     $tax  = 0;
858 858
     $fees = wpinv_get_cart_fees();
859 859
 
860
-    if ( $fees ) {
861
-        foreach ( $fees as $fee_id => $fee ) {
862
-            if( ! empty( $fee['no_tax'] ) ) {
860
+    if ($fees) {
861
+        foreach ($fees as $fee_id => $fee) {
862
+            if (!empty($fee['no_tax'])) {
863 863
                 continue;
864 864
             }
865 865
 
866
-            $tax += wpinv_calculate_tax( $fee['amount'] );
866
+            $tax += wpinv_calculate_tax($fee['amount']);
867 867
         }
868 868
     }
869 869
 
870
-    return apply_filters( 'wpinv_get_cart_fee_tax', $tax );
870
+    return apply_filters('wpinv_get_cart_fee_tax', $tax);
871 871
 }
872 872
 
873 873
 function wpinv_cart_has_recurring_item() {
874 874
     $cart_items = wpinv_get_cart_contents();
875 875
     
876
-    if ( empty( $cart_items ) ) {
876
+    if (empty($cart_items)) {
877 877
         return false;
878 878
     }
879 879
     
880 880
     $has_subscription = false;
881
-    foreach( $cart_items as $cart_item ) {
882
-        if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
881
+    foreach ($cart_items as $cart_item) {
882
+        if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
883 883
             $has_subscription = true;
884 884
             break;
885 885
         }
886 886
     }
887 887
     
888
-    return apply_filters( 'wpinv_cart_has_recurring_item', $has_subscription, $cart_items );
888
+    return apply_filters('wpinv_cart_has_recurring_item', $has_subscription, $cart_items);
889 889
 }
890 890
 
891 891
 function wpinv_cart_has_free_trial() {
@@ -893,94 +893,94 @@  discard block
 block discarded – undo
893 893
     
894 894
     $free_trial = false;
895 895
     
896
-    if ( !empty( $invoice ) && $invoice->is_free_trial() ) {
896
+    if (!empty($invoice) && $invoice->is_free_trial()) {
897 897
         $free_trial = true;
898 898
     }
899 899
     
900
-    return apply_filters( 'wpinv_cart_has_free_trial', $free_trial, $invoice );
900
+    return apply_filters('wpinv_cart_has_free_trial', $free_trial, $invoice);
901 901
 }
902 902
 
903 903
 function wpinv_get_cart_contents() {
904 904
     $cart_details = wpinv_get_cart_details();
905 905
     
906
-    return apply_filters( 'wpinv_get_cart_contents', $cart_details );
906
+    return apply_filters('wpinv_get_cart_contents', $cart_details);
907 907
 }
908 908
 
909 909
 function wpinv_get_cart_content_details() {
910 910
     global $wpinv_euvat, $wpi_current_id, $wpi_item_id, $wpinv_is_last_cart_item, $wpinv_flat_discount_total;
911 911
     $cart_items = wpinv_get_cart_contents();
912 912
     
913
-    if ( empty( $cart_items ) ) {
913
+    if (empty($cart_items)) {
914 914
         return false;
915 915
     }
916 916
     $invoice = wpinv_get_invoice_cart();
917 917
 
918 918
     $details = array();
919
-    $length  = count( $cart_items ) - 1;
919
+    $length  = count($cart_items) - 1;
920 920
     
921
-    if ( empty( $_POST['country'] ) ) {
921
+    if (empty($_POST['country'])) {
922 922
         $_POST['country'] = $invoice->country;
923 923
     }
924
-    if ( !isset( $_POST['state'] ) ) {
924
+    if (!isset($_POST['state'])) {
925 925
         $_POST['state'] = $invoice->state;
926 926
     }
927 927
 
928
-    foreach( $cart_items as $key => $item ) {
929
-        $item_id            = isset( $item['id'] ) ? sanitize_text_field( $item['id'] ) : '';
930
-        if ( empty( $item_id ) ) {
928
+    foreach ($cart_items as $key => $item) {
929
+        $item_id = isset($item['id']) ? sanitize_text_field($item['id']) : '';
930
+        if (empty($item_id)) {
931 931
             continue;
932 932
         }
933 933
         
934 934
         $wpi_current_id         = $invoice->ID;
935 935
         $wpi_item_id            = $item_id;
936 936
         
937
-        if ( isset( $item['custom_price'] ) && $item['custom_price'] !== '' ) {
937
+        if (isset($item['custom_price']) && $item['custom_price'] !== '') {
938 938
             $item_price = $item['custom_price'];
939 939
         } else {
940
-            if ( isset( $item['item_price'] ) && $item['item_price'] !== '' && $item['item_price'] !== false ) {
940
+            if (isset($item['item_price']) && $item['item_price'] !== '' && $item['item_price'] !== false) {
941 941
                 $item_price = $item['item_price'];
942 942
             } else {
943
-                $item_price = wpinv_get_item_price( $item_id );
943
+                $item_price = wpinv_get_item_price($item_id);
944 944
             }
945 945
         }
946
-        $discount           = wpinv_get_cart_item_discount_amount( $item );
947
-        $discount           = apply_filters( 'wpinv_get_cart_content_details_item_discount_amount', $discount, $item );
948
-        $quantity           = wpinv_get_cart_item_quantity( $item );
949
-        $fees               = wpinv_get_cart_fees( 'fee', $item_id );
946
+        $discount           = wpinv_get_cart_item_discount_amount($item);
947
+        $discount           = apply_filters('wpinv_get_cart_content_details_item_discount_amount', $discount, $item);
948
+        $quantity           = wpinv_get_cart_item_quantity($item);
949
+        $fees               = wpinv_get_cart_fees('fee', $item_id);
950 950
         
951 951
         $subtotal           = $item_price * $quantity;
952
-        $tax_rate           = wpinv_get_tax_rate( $_POST['country'], $_POST['state'], $wpi_item_id );
953
-        $tax_class          = $wpinv_euvat->get_item_class( $item_id );
954
-        $tax                = wpinv_get_cart_item_tax( $item_id, $subtotal - $discount );
952
+        $tax_rate           = wpinv_get_tax_rate($_POST['country'], $_POST['state'], $wpi_item_id);
953
+        $tax_class          = $wpinv_euvat->get_item_class($item_id);
954
+        $tax                = wpinv_get_cart_item_tax($item_id, $subtotal - $discount);
955 955
         
956
-        if ( wpinv_prices_include_tax() ) {
957
-            $subtotal -= wpinv_round_amount( $tax );
956
+        if (wpinv_prices_include_tax()) {
957
+            $subtotal -= wpinv_round_amount($tax);
958 958
         }
959 959
         
960
-        $total              = $subtotal - $discount + $tax;
960
+        $total = $subtotal - $discount + $tax;
961 961
         
962 962
         // Do not allow totals to go negatve
963
-        if( $total < 0 ) {
963
+        if ($total < 0) {
964 964
             $total = 0;
965 965
         }
966 966
         
967
-        $details[ $key ]  = array(
967
+        $details[$key] = array(
968 968
             'id'                => $item_id,
969
-            'name'              => !empty($item['name']) ? $item['name'] : get_the_title( $item_id ),
970
-            'item_price'        => wpinv_round_amount( $item_price ),
971
-            'custom_price'      => isset( $item['custom_price'] ) ? $item['custom_price'] : '',
969
+            'name'              => !empty($item['name']) ? $item['name'] : get_the_title($item_id),
970
+            'item_price'        => wpinv_round_amount($item_price),
971
+            'custom_price'      => isset($item['custom_price']) ? $item['custom_price'] : '',
972 972
             'quantity'          => $quantity,
973
-            'discount'          => wpinv_round_amount( $discount ),
974
-            'subtotal'          => wpinv_round_amount( $subtotal ),
975
-            'tax'               => wpinv_round_amount( $tax ),
976
-            'price'             => wpinv_round_amount( $total ),
973
+            'discount'          => wpinv_round_amount($discount),
974
+            'subtotal'          => wpinv_round_amount($subtotal),
975
+            'tax'               => wpinv_round_amount($tax),
976
+            'price'             => wpinv_round_amount($total),
977 977
             'vat_rates_class'   => $tax_class,
978 978
             'vat_rate'          => $tax_rate,
979
-            'meta'              => isset( $item['meta'] ) ? $item['meta'] : array(),
979
+            'meta'              => isset($item['meta']) ? $item['meta'] : array(),
980 980
             'fees'              => $fees,
981 981
         );
982 982
         
983
-        if ( $wpinv_is_last_cart_item ) {
983
+        if ($wpinv_is_last_cart_item) {
984 984
             $wpinv_is_last_cart_item   = false;
985 985
             $wpinv_flat_discount_total = 0.00;
986 986
         }
@@ -989,60 +989,60 @@  discard block
 block discarded – undo
989 989
     return $details;
990 990
 }
991 991
 
992
-function wpinv_get_cart_details( $invoice_id = 0 ) {
992
+function wpinv_get_cart_details($invoice_id = 0) {
993 993
     global $ajax_cart_details;
994 994
 
995
-    $invoice      = wpinv_get_invoice_cart( $invoice_id );
996
-    $cart_details = !empty( $ajax_cart_details ) ? $ajax_cart_details : $invoice->cart_details;
995
+    $invoice      = wpinv_get_invoice_cart($invoice_id);
996
+    $cart_details = !empty($ajax_cart_details) ? $ajax_cart_details : $invoice->cart_details;
997 997
 
998 998
     $invoice_currency = $invoice->currency;
999 999
 
1000
-    if ( ! empty( $cart_details ) && is_array( $cart_details ) ) {
1001
-        foreach ( $cart_details as $key => $cart_item ) {
1002
-            $cart_details[ $key ]['currency'] = $invoice_currency;
1000
+    if (!empty($cart_details) && is_array($cart_details)) {
1001
+        foreach ($cart_details as $key => $cart_item) {
1002
+            $cart_details[$key]['currency'] = $invoice_currency;
1003 1003
 
1004
-            if ( ! isset( $cart_item['subtotal'] ) ) {
1005
-                $cart_details[ $key ]['subtotal'] = $cart_item['price'];
1004
+            if (!isset($cart_item['subtotal'])) {
1005
+                $cart_details[$key]['subtotal'] = $cart_item['price'];
1006 1006
             }
1007 1007
         }
1008 1008
     }
1009 1009
 
1010
-    return apply_filters( 'wpinv_get_cart_details', $cart_details, $invoice_id );
1010
+    return apply_filters('wpinv_get_cart_details', $cart_details, $invoice_id);
1011 1011
 }
1012 1012
 
1013
-function wpinv_record_status_change( $invoice_id, $new_status, $old_status ) {
1014
-    if ( 'wpi_invoice' != get_post_type( $invoice_id ) ) {
1013
+function wpinv_record_status_change($invoice_id, $new_status, $old_status) {
1014
+    if ('wpi_invoice' != get_post_type($invoice_id)) {
1015 1015
         return;
1016 1016
     }
1017 1017
 
1018
-    $invoice    = wpinv_get_invoice( $invoice_id );
1018
+    $invoice    = wpinv_get_invoice($invoice_id);
1019 1019
     
1020
-    $old_status = wpinv_status_nicename( $old_status );
1021
-    $new_status = wpinv_status_nicename( $new_status );
1020
+    $old_status = wpinv_status_nicename($old_status);
1021
+    $new_status = wpinv_status_nicename($new_status);
1022 1022
 
1023
-    $status_change = sprintf( __( 'Invoice status changed from %s to %s', 'invoicing' ), $old_status, $new_status );
1023
+    $status_change = sprintf(__('Invoice status changed from %s to %s', 'invoicing'), $old_status, $new_status);
1024 1024
     
1025 1025
     // Add note
1026
-    return $invoice->add_note( $status_change, false, false, true );
1026
+    return $invoice->add_note($status_change, false, false, true);
1027 1027
 }
1028
-add_action( 'wpinv_update_status', 'wpinv_record_status_change', 100, 3 );
1028
+add_action('wpinv_update_status', 'wpinv_record_status_change', 100, 3);
1029 1029
 
1030
-function wpinv_complete_payment( $invoice_id, $new_status, $old_status ) {
1030
+function wpinv_complete_payment($invoice_id, $new_status, $old_status) {
1031 1031
     global $wpi_has_free_trial;
1032 1032
     
1033 1033
     $wpi_has_free_trial = false;
1034 1034
     
1035
-    if ( $old_status == 'publish' ) {
1035
+    if ($old_status == 'publish') {
1036 1036
         return; // Make sure that payments are only paid once
1037 1037
     }
1038 1038
 
1039 1039
     // Make sure the payment completion is only processed when new status is paid
1040
-    if ( $new_status != 'publish' ) {
1040
+    if ($new_status != 'publish') {
1041 1041
         return;
1042 1042
     }
1043 1043
 
1044
-    $invoice = new WPInv_Invoice( $invoice_id );
1045
-    if ( empty( $invoice ) ) {
1044
+    $invoice = new WPInv_Invoice($invoice_id);
1045
+    if (empty($invoice)) {
1046 1046
         return;
1047 1047
     }
1048 1048
 
@@ -1050,58 +1050,58 @@  discard block
 block discarded – undo
1050 1050
     $completed_date = $invoice->completed_date;
1051 1051
     $cart_details   = $invoice->cart_details;
1052 1052
 
1053
-    do_action( 'wpinv_pre_complete_payment', $invoice_id );
1053
+    do_action('wpinv_pre_complete_payment', $invoice_id);
1054 1054
 
1055
-    if ( is_array( $cart_details ) ) {
1055
+    if (is_array($cart_details)) {
1056 1056
         // Increase purchase count and earnings
1057
-        foreach ( $cart_details as $cart_index => $item ) {
1057
+        foreach ($cart_details as $cart_index => $item) {
1058 1058
             // Ensure these actions only run once, ever
1059
-            if ( empty( $completed_date ) ) {
1060
-                do_action( 'wpinv_complete_item_payment', $item['id'], $invoice_id, $item, $cart_index );
1059
+            if (empty($completed_date)) {
1060
+                do_action('wpinv_complete_item_payment', $item['id'], $invoice_id, $item, $cart_index);
1061 1061
             }
1062 1062
         }
1063 1063
     }
1064 1064
     
1065 1065
     // Check for discount codes and increment their use counts
1066
-    if ( $discounts = $invoice->get_discounts( true ) ) {
1067
-        if( ! empty( $discounts ) ) {
1068
-            foreach( $discounts as $code ) {
1069
-                wpinv_increase_discount_usage( $code );
1066
+    if ($discounts = $invoice->get_discounts(true)) {
1067
+        if (!empty($discounts)) {
1068
+            foreach ($discounts as $code) {
1069
+                wpinv_increase_discount_usage($code);
1070 1070
             }
1071 1071
         }
1072 1072
     }
1073 1073
     
1074 1074
     // Ensure this action only runs once ever
1075
-    if( empty( $completed_date ) ) {
1075
+    if (empty($completed_date)) {
1076 1076
         // Save the completed date
1077
-        $invoice->set( 'completed_date', current_time( 'mysql', 0 ) );
1077
+        $invoice->set('completed_date', current_time('mysql', 0));
1078 1078
         $invoice->save();
1079 1079
 
1080
-        do_action( 'wpinv_complete_payment', $invoice_id );
1080
+        do_action('wpinv_complete_payment', $invoice_id);
1081 1081
     }
1082 1082
 
1083 1083
     // Empty the shopping cart
1084 1084
     wpinv_empty_cart();
1085 1085
 }
1086
-add_action( 'wpinv_update_status', 'wpinv_complete_payment', 100, 3 );
1086
+add_action('wpinv_update_status', 'wpinv_complete_payment', 100, 3);
1087 1087
 
1088
-function wpinv_update_payment_status( $invoice_id, $new_status = 'publish' ) {    
1089
-    $invoice = !empty( $invoice_id ) && is_object( $invoice_id ) ? $invoice_id : wpinv_get_invoice( (int)$invoice_id );
1088
+function wpinv_update_payment_status($invoice_id, $new_status = 'publish') {    
1089
+    $invoice = !empty($invoice_id) && is_object($invoice_id) ? $invoice_id : wpinv_get_invoice((int)$invoice_id);
1090 1090
     
1091
-    if ( empty( $invoice ) ) {
1091
+    if (empty($invoice)) {
1092 1092
         return false;
1093 1093
     }
1094 1094
     
1095
-    return $invoice->update_status( $new_status );
1095
+    return $invoice->update_status($new_status);
1096 1096
 }
1097 1097
 
1098
-function wpinv_cart_has_fees( $type = 'all' ) {
1098
+function wpinv_cart_has_fees($type = 'all') {
1099 1099
     return false;
1100 1100
 }
1101 1101
 
1102 1102
 function wpinv_validate_checkout_fields() {    
1103 1103
     // Check if there is $_POST
1104
-    if ( empty( $_POST ) ) {
1104
+    if (empty($_POST)) {
1105 1105
         return false;
1106 1106
     }
1107 1107
     
@@ -1113,7 +1113,7 @@  discard block
 block discarded – undo
1113 1113
     );
1114 1114
     
1115 1115
     // Validate agree to terms
1116
-    if ( wpinv_get_option( 'show_agree_to_terms', false ) ) {
1116
+    if (wpinv_get_option('show_agree_to_terms', false)) {
1117 1117
         wpinv_checkout_validate_agree_to_terms();
1118 1118
     }
1119 1119
     
@@ -1129,26 +1129,26 @@  discard block
 block discarded – undo
1129 1129
     
1130 1130
     $invoice = wpinv_get_invoice_cart();
1131 1131
     $has_subscription = $invoice->is_recurring();
1132
-    if ( empty( $invoice ) ) {
1133
-        wpinv_set_error( 'invalid_invoice', __( 'Your cart is empty.', 'invoicing' ) );
1132
+    if (empty($invoice)) {
1133
+        wpinv_set_error('invalid_invoice', __('Your cart is empty.', 'invoicing'));
1134 1134
         return $gateway;
1135 1135
     }
1136 1136
 
1137 1137
     // Check if a gateway value is present
1138
-    if ( !empty( $_REQUEST['wpi-gateway'] ) ) {
1139
-        $gateway = sanitize_text_field( $_REQUEST['wpi-gateway'] );
1138
+    if (!empty($_REQUEST['wpi-gateway'])) {
1139
+        $gateway = sanitize_text_field($_REQUEST['wpi-gateway']);
1140 1140
 
1141
-        if ( $invoice->is_free() ) {
1141
+        if ($invoice->is_free()) {
1142 1142
             $gateway = 'manual';
1143
-        } elseif ( !wpinv_is_gateway_active( $gateway ) ) {
1144
-            wpinv_set_error( 'invalid_gateway', __( 'The selected payment gateway is not enabled', 'invoicing' ) );
1145
-        } elseif ( $has_subscription && !wpinv_gateway_support_subscription( $gateway ) ) {
1146
-            wpinv_set_error( 'invalid_gateway', __( 'The selected payment gateway doesnot support subscription payment', 'invoicing' ) );
1143
+        } elseif (!wpinv_is_gateway_active($gateway)) {
1144
+            wpinv_set_error('invalid_gateway', __('The selected payment gateway is not enabled', 'invoicing'));
1145
+        } elseif ($has_subscription && !wpinv_gateway_support_subscription($gateway)) {
1146
+            wpinv_set_error('invalid_gateway', __('The selected payment gateway doesnot support subscription payment', 'invoicing'));
1147 1147
         }
1148 1148
     }
1149 1149
 
1150
-    if ( $has_subscription && count( wpinv_get_cart_contents() ) > 1 ) {
1151
-        wpinv_set_error( 'subscription_invalid', __( 'Only one subscription may be purchased through payment per checkout.', 'invoicing' ) );
1150
+    if ($has_subscription && count(wpinv_get_cart_contents()) > 1) {
1151
+        wpinv_set_error('subscription_invalid', __('Only one subscription may be purchased through payment per checkout.', 'invoicing'));
1152 1152
     }
1153 1153
 
1154 1154
     return $gateway;
@@ -1162,10 +1162,10 @@  discard block
 block discarded – undo
1162 1162
     
1163 1163
     $error = false;
1164 1164
     // If we have discounts, loop through them
1165
-    if ( ! empty( $discounts ) ) {
1166
-        foreach ( $discounts as $discount ) {
1165
+    if (!empty($discounts)) {
1166
+        foreach ($discounts as $discount) {
1167 1167
             // Check if valid
1168
-            if (  !wpinv_is_discount_valid( $discount, (int)$wpi_cart->get_user_id() ) ) {
1168
+            if (!wpinv_is_discount_valid($discount, (int)$wpi_cart->get_user_id())) {
1169 1169
                 // Discount is not valid
1170 1170
                 $error = true;
1171 1171
             }
@@ -1175,20 +1175,20 @@  discard block
 block discarded – undo
1175 1175
         return NULL;
1176 1176
     }
1177 1177
 
1178
-    if ( $error && !wpinv_get_errors() ) {
1179
-        wpinv_set_error( 'invalid_discount', __( 'Discount code you entered is invalid', 'invoicing' ) );
1178
+    if ($error && !wpinv_get_errors()) {
1179
+        wpinv_set_error('invalid_discount', __('Discount code you entered is invalid', 'invoicing'));
1180 1180
     }
1181 1181
 
1182
-    return implode( ',', $discounts );
1182
+    return implode(',', $discounts);
1183 1183
 }
1184 1184
 
1185 1185
 function wpinv_checkout_validate_cc() {
1186 1186
     $card_data = wpinv_checkout_get_cc_info();
1187 1187
 
1188 1188
     // Validate the card zip
1189
-    if ( !empty( $card_data['wpinv_zip'] ) ) {
1190
-        if ( !wpinv_checkout_validate_cc_zip( $card_data['wpinv_zip'], $card_data['wpinv_country'] ) ) {
1191
-            wpinv_set_error( 'invalid_cc_zip', __( 'The zip / postcode you entered for your billing address is invalid', 'invoicing' ) );
1189
+    if (!empty($card_data['wpinv_zip'])) {
1190
+        if (!wpinv_checkout_validate_cc_zip($card_data['wpinv_zip'], $card_data['wpinv_country'])) {
1191
+            wpinv_set_error('invalid_cc_zip', __('The zip / postcode you entered for your billing address is invalid', 'invoicing'));
1192 1192
         }
1193 1193
     }
1194 1194
 
@@ -1198,28 +1198,28 @@  discard block
 block discarded – undo
1198 1198
 
1199 1199
 function wpinv_checkout_get_cc_info() {
1200 1200
 	$cc_info = array();
1201
-	$cc_info['card_name']      = isset( $_POST['card_name'] )       ? sanitize_text_field( $_POST['card_name'] )       : '';
1202
-	$cc_info['card_number']    = isset( $_POST['card_number'] )     ? sanitize_text_field( $_POST['card_number'] )     : '';
1203
-	$cc_info['card_cvc']       = isset( $_POST['card_cvc'] )        ? sanitize_text_field( $_POST['card_cvc'] )        : '';
1204
-	$cc_info['card_exp_month'] = isset( $_POST['card_exp_month'] )  ? sanitize_text_field( $_POST['card_exp_month'] )  : '';
1205
-	$cc_info['card_exp_year']  = isset( $_POST['card_exp_year'] )   ? sanitize_text_field( $_POST['card_exp_year'] )   : '';
1206
-	$cc_info['card_address']   = isset( $_POST['wpinv_address'] )  ? sanitize_text_field( $_POST['wpinv_address'] ) : '';
1207
-	$cc_info['card_city']      = isset( $_POST['wpinv_city'] )     ? sanitize_text_field( $_POST['wpinv_city'] )    : '';
1208
-	$cc_info['card_state']     = isset( $_POST['wpinv_state'] )    ? sanitize_text_field( $_POST['wpinv_state'] )   : '';
1209
-	$cc_info['card_country']   = isset( $_POST['wpinv_country'] )  ? sanitize_text_field( $_POST['wpinv_country'] ) : '';
1210
-	$cc_info['card_zip']       = isset( $_POST['wpinv_zip'] )      ? sanitize_text_field( $_POST['wpinv_zip'] )     : '';
1201
+	$cc_info['card_name']      = isset($_POST['card_name']) ? sanitize_text_field($_POST['card_name']) : '';
1202
+	$cc_info['card_number']    = isset($_POST['card_number']) ? sanitize_text_field($_POST['card_number']) : '';
1203
+	$cc_info['card_cvc']       = isset($_POST['card_cvc']) ? sanitize_text_field($_POST['card_cvc']) : '';
1204
+	$cc_info['card_exp_month'] = isset($_POST['card_exp_month']) ? sanitize_text_field($_POST['card_exp_month']) : '';
1205
+	$cc_info['card_exp_year']  = isset($_POST['card_exp_year']) ? sanitize_text_field($_POST['card_exp_year']) : '';
1206
+	$cc_info['card_address']   = isset($_POST['wpinv_address']) ? sanitize_text_field($_POST['wpinv_address']) : '';
1207
+	$cc_info['card_city']      = isset($_POST['wpinv_city']) ? sanitize_text_field($_POST['wpinv_city']) : '';
1208
+	$cc_info['card_state']     = isset($_POST['wpinv_state']) ? sanitize_text_field($_POST['wpinv_state']) : '';
1209
+	$cc_info['card_country']   = isset($_POST['wpinv_country']) ? sanitize_text_field($_POST['wpinv_country']) : '';
1210
+	$cc_info['card_zip']       = isset($_POST['wpinv_zip']) ? sanitize_text_field($_POST['wpinv_zip']) : '';
1211 1211
 
1212 1212
 	// Return cc info
1213 1213
 	return $cc_info;
1214 1214
 }
1215 1215
 
1216
-function wpinv_checkout_validate_cc_zip( $zip = 0, $country_code = '' ) {
1216
+function wpinv_checkout_validate_cc_zip($zip = 0, $country_code = '') {
1217 1217
     $ret = false;
1218 1218
 
1219
-    if ( empty( $zip ) || empty( $country_code ) )
1219
+    if (empty($zip) || empty($country_code))
1220 1220
         return $ret;
1221 1221
 
1222
-    $country_code = strtoupper( $country_code );
1222
+    $country_code = strtoupper($country_code);
1223 1223
 
1224 1224
     $zip_regex = array(
1225 1225
         "AD" => "AD\d{3}",
@@ -1379,17 +1379,17 @@  discard block
 block discarded – undo
1379 1379
         "ZM" => "\d{5}"
1380 1380
     );
1381 1381
 
1382
-    if ( ! isset ( $zip_regex[ $country_code ] ) || preg_match( "/" . $zip_regex[ $country_code ] . "/i", $zip ) )
1382
+    if (!isset ($zip_regex[$country_code]) || preg_match("/" . $zip_regex[$country_code] . "/i", $zip))
1383 1383
         $ret = true;
1384 1384
 
1385
-    return apply_filters( 'wpinv_is_zip_valid', $ret, $zip, $country_code );
1385
+    return apply_filters('wpinv_is_zip_valid', $ret, $zip, $country_code);
1386 1386
 }
1387 1387
 
1388 1388
 function wpinv_checkout_validate_agree_to_terms() {
1389 1389
     // Validate agree to terms
1390
-    if ( ! isset( $_POST['wpi_agree_to_terms'] ) || $_POST['wpi_agree_to_terms'] != 1 ) {
1390
+    if (!isset($_POST['wpi_agree_to_terms']) || $_POST['wpi_agree_to_terms'] != 1) {
1391 1391
         // User did not agree
1392
-        wpinv_set_error( 'agree_to_terms', apply_filters( 'wpinv_agree_to_terms_text', __( 'You must agree to the terms of use', 'invoicing' ) ) );
1392
+        wpinv_set_error('agree_to_terms', apply_filters('wpinv_agree_to_terms_text', __('You must agree to the terms of use', 'invoicing')));
1393 1393
     }
1394 1394
 }
1395 1395
 
@@ -1401,40 +1401,40 @@  discard block
 block discarded – undo
1401 1401
     );
1402 1402
     
1403 1403
     // Verify there is a user_ID
1404
-    if ( $user_ID = (int)$wpi_cart->get_user_id() ) {
1404
+    if ($user_ID = (int)$wpi_cart->get_user_id()) {
1405 1405
         // Get the logged in user data
1406
-        $user_data = get_userdata( $user_ID );
1407
-        $required_fields  = wpinv_checkout_required_fields();
1406
+        $user_data = get_userdata($user_ID);
1407
+        $required_fields = wpinv_checkout_required_fields();
1408 1408
 
1409 1409
         // Loop through required fields and show error messages
1410
-         if ( !empty( $required_fields ) ) {
1411
-            foreach ( $required_fields as $field_name => $value ) {
1412
-                if ( in_array( $value, $required_fields ) && empty( $_POST[ 'wpinv_' . $field_name ] ) ) {
1413
-                    wpinv_set_error( $value['error_id'], $value['error_message'] );
1410
+         if (!empty($required_fields)) {
1411
+            foreach ($required_fields as $field_name => $value) {
1412
+                if (in_array($value, $required_fields) && empty($_POST['wpinv_' . $field_name])) {
1413
+                    wpinv_set_error($value['error_id'], $value['error_message']);
1414 1414
                 }
1415 1415
             }
1416 1416
         }
1417 1417
 
1418 1418
         // Verify data
1419
-        if ( $user_data ) {
1419
+        if ($user_data) {
1420 1420
             // Collected logged in user data
1421 1421
             $valid_user_data = array(
1422 1422
                 'user_id'     => $user_ID,
1423
-                'email'       => isset( $_POST['wpinv_email'] ) ? sanitize_email( $_POST['wpinv_email'] ) : $user_data->user_email,
1424
-                'first_name'  => isset( $_POST['wpinv_first_name'] ) && ! empty( $_POST['wpinv_first_name'] ) ? sanitize_text_field( $_POST['wpinv_first_name'] ) : $user_data->first_name,
1425
-                'last_name'   => isset( $_POST['wpinv_last_name'] ) && ! empty( $_POST['wpinv_last_name']  ) ? sanitize_text_field( $_POST['wpinv_last_name']  ) : $user_data->last_name,
1423
+                'email'       => isset($_POST['wpinv_email']) ? sanitize_email($_POST['wpinv_email']) : $user_data->user_email,
1424
+                'first_name'  => isset($_POST['wpinv_first_name']) && !empty($_POST['wpinv_first_name']) ? sanitize_text_field($_POST['wpinv_first_name']) : $user_data->first_name,
1425
+                'last_name'   => isset($_POST['wpinv_last_name']) && !empty($_POST['wpinv_last_name']) ? sanitize_text_field($_POST['wpinv_last_name']) : $user_data->last_name,
1426 1426
             );
1427 1427
 
1428
-            if ( !empty( $_POST[ 'wpinv_email' ] ) && !is_email( $_POST[ 'wpinv_email' ] ) ) {
1429
-                wpinv_set_error( 'invalid_email', __( 'Please enter a valid email address', 'invoicing' ) );
1428
+            if (!empty($_POST['wpinv_email']) && !is_email($_POST['wpinv_email'])) {
1429
+                wpinv_set_error('invalid_email', __('Please enter a valid email address', 'invoicing'));
1430 1430
             }
1431 1431
         } else {
1432 1432
             // Set invalid user error
1433
-            wpinv_set_error( 'invalid_user', __( 'The user billing information is invalid', 'invoicing' ) );
1433
+            wpinv_set_error('invalid_user', __('The user billing information is invalid', 'invoicing'));
1434 1434
         }
1435 1435
     } else {
1436 1436
         // Set invalid user error
1437
-        wpinv_set_error( 'invalid_user_id', __( 'The invalid invoice user id', 'invoicing' ) );
1437
+        wpinv_set_error('invalid_user_id', __('The invalid invoice user id', 'invoicing'));
1438 1438
     }
1439 1439
 
1440 1440
     // Return user data
@@ -1446,30 +1446,30 @@  discard block
 block discarded – undo
1446 1446
 
1447 1447
     $data = array();
1448 1448
     
1449
-    if ( is_user_logged_in() ) {
1450
-        if ( !wpinv_require_login_to_checkout() || ( wpinv_require_login_to_checkout() && (int)$wpi_cart->get_user_id() === (int)get_current_user_id() ) ) {
1449
+    if (is_user_logged_in()) {
1450
+        if (!wpinv_require_login_to_checkout() || (wpinv_require_login_to_checkout() && (int)$wpi_cart->get_user_id() === (int)get_current_user_id())) {
1451 1451
             $data['user_id'] = (int)get_current_user_id();
1452 1452
         } else {
1453
-            wpinv_set_error( 'logged_in_only', __( 'You are not allowed to pay for this invoice', 'invoicing' ) );
1453
+            wpinv_set_error('logged_in_only', __('You are not allowed to pay for this invoice', 'invoicing'));
1454 1454
         }
1455 1455
     } else {
1456 1456
         // If guest checkout allowed
1457
-        if ( !wpinv_require_login_to_checkout() ) {
1457
+        if (!wpinv_require_login_to_checkout()) {
1458 1458
             $data['user_id'] = 0;
1459 1459
         } else {
1460
-            wpinv_set_error( 'logged_in_only', __( 'You must be logged in to pay for this invoice', 'invoicing' ) );
1460
+            wpinv_set_error('logged_in_only', __('You must be logged in to pay for this invoice', 'invoicing'));
1461 1461
         }
1462 1462
     }
1463 1463
 
1464 1464
     return $data;
1465 1465
 }
1466 1466
 
1467
-function wpinv_checkout_form_get_user( $valid_data = array() ) {
1467
+function wpinv_checkout_form_get_user($valid_data = array()) {
1468 1468
     // Initialize user
1469 1469
     $user    = false;
1470
-    $is_ajax = defined( 'DOING_AJAX' ) && DOING_AJAX;
1470
+    $is_ajax = defined('DOING_AJAX') && DOING_AJAX;
1471 1471
 
1472
-    if ( empty( $valid_data['current_user'] ) ) {
1472
+    if (empty($valid_data['current_user'])) {
1473 1473
         $user = false;
1474 1474
     } else {
1475 1475
         // Set the valid invoice user
@@ -1477,7 +1477,7 @@  discard block
 block discarded – undo
1477 1477
     }
1478 1478
 
1479 1479
     // Verify invoice have an user
1480
-    if ( false === $user || empty( $user ) ) {
1480
+    if (false === $user || empty($user)) {
1481 1481
         return false;
1482 1482
     }
1483 1483
 
@@ -1494,11 +1494,11 @@  discard block
 block discarded – undo
1494 1494
         'zip',
1495 1495
     );
1496 1496
     
1497
-    foreach ( $address_fields as $field ) {
1498
-        $user[$field]  = !empty( $_POST['wpinv_' . $field] ) ? sanitize_text_field( $_POST['wpinv_' . $field] ) : false;
1497
+    foreach ($address_fields as $field) {
1498
+        $user[$field] = !empty($_POST['wpinv_' . $field]) ? sanitize_text_field($_POST['wpinv_' . $field]) : false;
1499 1499
         
1500
-        if ( !empty( $user['user_id'] ) && !empty( $valid_data['current_user']['user_id'] ) && $valid_data['current_user']['user_id'] == $user['user_id'] ) {
1501
-            update_user_meta( $user['user_id'], '_wpinv_' . $field, $user[$field] );
1500
+        if (!empty($user['user_id']) && !empty($valid_data['current_user']['user_id']) && $valid_data['current_user']['user_id'] == $user['user_id']) {
1501
+            update_user_meta($user['user_id'], '_wpinv_' . $field, $user[$field]);
1502 1502
         }
1503 1503
     }
1504 1504
 
@@ -1506,28 +1506,28 @@  discard block
 block discarded – undo
1506 1506
     return $user;
1507 1507
 }
1508 1508
 
1509
-function wpinv_set_checkout_session( $invoice_data = array() ) {
1509
+function wpinv_set_checkout_session($invoice_data = array()) {
1510 1510
     global $wpi_session;
1511 1511
     
1512
-    return $wpi_session->set( 'wpinv_checkout', $invoice_data );
1512
+    return $wpi_session->set('wpinv_checkout', $invoice_data);
1513 1513
 }
1514 1514
 
1515 1515
 function wpinv_get_checkout_session() {
1516 1516
 	global $wpi_session;
1517 1517
     
1518
-    return $wpi_session->get( 'wpinv_checkout' );
1518
+    return $wpi_session->get('wpinv_checkout');
1519 1519
 }
1520 1520
 
1521 1521
 function wpinv_empty_cart() {
1522 1522
     global $wpi_session;
1523 1523
 
1524 1524
     // Remove cart contents
1525
-    $wpi_session->set( 'wpinv_checkout', NULL );
1525
+    $wpi_session->set('wpinv_checkout', NULL);
1526 1526
 
1527 1527
     // Remove all cart fees
1528
-    $wpi_session->set( 'wpi_cart_fees', NULL );
1528
+    $wpi_session->set('wpi_cart_fees', NULL);
1529 1529
 
1530
-    do_action( 'wpinv_empty_cart' );
1530
+    do_action('wpinv_empty_cart');
1531 1531
 }
1532 1532
 
1533 1533
 function wpinv_process_checkout() {
@@ -1540,42 +1540,42 @@  discard block
 block discarded – undo
1540 1540
     
1541 1541
     $wpi_checkout_id = $invoice->ID;
1542 1542
     
1543
-    do_action( 'wpinv_pre_process_checkout' );
1543
+    do_action('wpinv_pre_process_checkout');
1544 1544
     
1545
-    if ( !wpinv_get_cart_contents() ) { // Make sure the cart isn't empty
1545
+    if (!wpinv_get_cart_contents()) { // Make sure the cart isn't empty
1546 1546
         $valid_data = false;
1547
-        wpinv_set_error( 'empty_cart', __( 'Your cart is empty', 'invoicing' ) );
1547
+        wpinv_set_error('empty_cart', __('Your cart is empty', 'invoicing'));
1548 1548
     } else {
1549 1549
         // Validate the form $_POST data
1550 1550
         $valid_data = wpinv_validate_checkout_fields();
1551 1551
         
1552 1552
         // Allow themes and plugins to hook to errors
1553
-        do_action( 'wpinv_checkout_error_checks', $valid_data, $_POST );
1553
+        do_action('wpinv_checkout_error_checks', $valid_data, $_POST);
1554 1554
     }
1555 1555
     
1556
-    $is_ajax    = defined( 'DOING_AJAX' ) && DOING_AJAX;
1556
+    $is_ajax = defined('DOING_AJAX') && DOING_AJAX;
1557 1557
     
1558 1558
     // Validate the user
1559
-    $user = wpinv_checkout_form_get_user( $valid_data );
1559
+    $user = wpinv_checkout_form_get_user($valid_data);
1560 1560
 
1561 1561
     // Let extensions validate fields after user is logged in if user has used login/registration form
1562
-    do_action( 'wpinv_checkout_user_error_checks', $user, $valid_data, $_POST );
1562
+    do_action('wpinv_checkout_user_error_checks', $user, $valid_data, $_POST);
1563 1563
     
1564
-    if ( false === $valid_data || wpinv_get_errors() || ! $user ) {
1565
-        if ( $is_ajax ) {
1566
-            do_action( 'wpinv_ajax_checkout_errors' );
1564
+    if (false === $valid_data || wpinv_get_errors() || !$user) {
1565
+        if ($is_ajax) {
1566
+            do_action('wpinv_ajax_checkout_errors');
1567 1567
             die();
1568 1568
         } else {
1569 1569
             return false;
1570 1570
         }
1571 1571
     }
1572 1572
 
1573
-    if ( $is_ajax ) {
1573
+    if ($is_ajax) {
1574 1574
         // Save address fields.
1575
-        $address_fields = array( 'first_name', 'last_name', 'phone', 'address', 'city', 'country', 'state', 'zip', 'company' );
1576
-        foreach ( $address_fields as $field ) {
1577
-            if ( isset( $user[$field] ) ) {
1578
-                $invoice->set( $field, $user[$field] );
1575
+        $address_fields = array('first_name', 'last_name', 'phone', 'address', 'city', 'country', 'state', 'zip', 'company');
1576
+        foreach ($address_fields as $field) {
1577
+            if (isset($user[$field])) {
1578
+                $invoice->set($field, $user[$field]);
1579 1579
             }
1580 1580
             
1581 1581
             $invoice->save();
@@ -1583,15 +1583,15 @@  discard block
 block discarded – undo
1583 1583
 
1584 1584
         $response['success']            = true;
1585 1585
         $response['data']['subtotal']   = $invoice->get_subtotal();
1586
-        $response['data']['subtotalf']  = $invoice->get_subtotal( true );
1586
+        $response['data']['subtotalf']  = $invoice->get_subtotal(true);
1587 1587
         $response['data']['discount']   = $invoice->get_discount();
1588
-        $response['data']['discountf']  = $invoice->get_discount( true );
1588
+        $response['data']['discountf']  = $invoice->get_discount(true);
1589 1589
         $response['data']['tax']        = $invoice->get_tax();
1590
-        $response['data']['taxf']       = $invoice->get_tax( true );
1590
+        $response['data']['taxf']       = $invoice->get_tax(true);
1591 1591
         $response['data']['total']      = $invoice->get_total();
1592
-        $response['data']['totalf']     = $invoice->get_total( true );
1592
+        $response['data']['totalf']     = $invoice->get_total(true);
1593 1593
         
1594
-        wp_send_json( $response );
1594
+        wp_send_json($response);
1595 1595
     }
1596 1596
     
1597 1597
     $user_info = array(
@@ -1613,42 +1613,42 @@  discard block
 block discarded – undo
1613 1613
     
1614 1614
     // Setup invoice information
1615 1615
     $invoice_data = array(
1616
-        'invoice_id'        => !empty( $invoice ) ? $invoice->ID : 0,
1616
+        'invoice_id'        => !empty($invoice) ? $invoice->ID : 0,
1617 1617
         'items'             => $cart_items,
1618 1618
         'cart_discounts'    => $discounts,
1619
-        'fees'              => wpinv_get_cart_fees(),        // Any arbitrary fees that have been added to the cart
1620
-        'subtotal'          => wpinv_get_cart_subtotal( $cart_items ),    // Amount before taxes and discounts
1621
-        'discount'          => wpinv_get_cart_items_discount_amount( $cart_items, $discounts ), // Discounted amount
1622
-        'tax'               => wpinv_get_cart_tax( $cart_items ),               // Taxed amount
1623
-        'price'             => wpinv_get_cart_total( $cart_items, $discounts ),    // Amount after taxes
1619
+        'fees'              => wpinv_get_cart_fees(), // Any arbitrary fees that have been added to the cart
1620
+        'subtotal'          => wpinv_get_cart_subtotal($cart_items), // Amount before taxes and discounts
1621
+        'discount'          => wpinv_get_cart_items_discount_amount($cart_items, $discounts), // Discounted amount
1622
+        'tax'               => wpinv_get_cart_tax($cart_items), // Taxed amount
1623
+        'price'             => wpinv_get_cart_total($cart_items, $discounts), // Amount after taxes
1624 1624
         'invoice_key'       => $invoice->get_key() ? $invoice->get_key() : $invoice->generate_key(),
1625 1625
         'user_email'        => $user['email'],
1626
-        'date'              => date( 'Y-m-d H:i:s', current_time( 'timestamp' ) ),
1627
-        'user_info'         => stripslashes_deep( $user_info ),
1626
+        'date'              => date('Y-m-d H:i:s', current_time('timestamp')),
1627
+        'user_info'         => stripslashes_deep($user_info),
1628 1628
         'post_data'         => $_POST,
1629 1629
         'cart_details'      => $cart_items,
1630 1630
         'gateway'           => $valid_data['gateway'],
1631 1631
         'card_info'         => $valid_data['cc_info']
1632 1632
     );
1633 1633
     
1634
-    $vat_info   = $wpinv_euvat->current_vat_data();
1635
-    if ( is_array( $vat_info ) ) {
1634
+    $vat_info = $wpinv_euvat->current_vat_data();
1635
+    if (is_array($vat_info)) {
1636 1636
         $invoice_data['user_info']['vat_number']        = $vat_info['number'];
1637 1637
         $invoice_data['user_info']['vat_rate']          = wpinv_get_tax_rate($invoice_data['user_info']['country'], $invoice_data['user_info']['state']);
1638
-        $invoice_data['user_info']['adddress_confirmed']    = isset($vat_info['adddress_confirmed']) ? $vat_info['adddress_confirmed'] : false;
1638
+        $invoice_data['user_info']['adddress_confirmed'] = isset($vat_info['adddress_confirmed']) ? $vat_info['adddress_confirmed'] : false;
1639 1639
 
1640 1640
         // Add the VAT rate to each item in the cart
1641
-        foreach( $invoice_data['cart_details'] as $key => $item_data) {
1641
+        foreach ($invoice_data['cart_details'] as $key => $item_data) {
1642 1642
             $rate = wpinv_get_tax_rate($invoice_data['user_info']['country'], $invoice_data['user_info']['state'], $item_data['id']);
1643
-            $invoice_data['cart_details'][$key]['vat_rate'] = wpinv_round_amount( $rate, 4 );
1643
+            $invoice_data['cart_details'][$key]['vat_rate'] = wpinv_round_amount($rate, 4);
1644 1644
         }
1645 1645
     }
1646 1646
     
1647 1647
     // Save vat fields.
1648
-    $address_fields = array( 'vat_number', 'vat_rate', 'adddress_confirmed' );
1649
-    foreach ( $address_fields as $field ) {
1650
-        if ( isset( $invoice_data['user_info'][$field] ) ) {
1651
-            $invoice->set( $field, $invoice_data['user_info'][$field] );
1648
+    $address_fields = array('vat_number', 'vat_rate', 'adddress_confirmed');
1649
+    foreach ($address_fields as $field) {
1650
+        if (isset($invoice_data['user_info'][$field])) {
1651
+            $invoice->set($field, $invoice_data['user_info'][$field]);
1652 1652
         }
1653 1653
         
1654 1654
         $invoice->save();
@@ -1658,49 +1658,49 @@  discard block
 block discarded – undo
1658 1658
     $valid_data['user'] = $user;
1659 1659
     
1660 1660
     // Allow themes and plugins to hook before the gateway
1661
-    do_action( 'wpinv_checkout_before_gateway', $_POST, $user_info, $valid_data );
1661
+    do_action('wpinv_checkout_before_gateway', $_POST, $user_info, $valid_data);
1662 1662
     
1663 1663
     // If the total amount in the cart is 0, send to the manual gateway. This emulates a free invoice
1664
-    if ( !$invoice_data['price'] ) {
1664
+    if (!$invoice_data['price']) {
1665 1665
         // Revert to manual
1666 1666
         $invoice_data['gateway'] = 'manual';
1667 1667
         $_POST['wpi-gateway'] = 'manual';
1668 1668
     }
1669 1669
     
1670 1670
     // Allow the invoice data to be modified before it is sent to the gateway
1671
-    $invoice_data = apply_filters( 'wpinv_data_before_gateway', $invoice_data, $valid_data );
1671
+    $invoice_data = apply_filters('wpinv_data_before_gateway', $invoice_data, $valid_data);
1672 1672
     
1673 1673
     // Setup the data we're storing in the purchase session
1674 1674
     $session_data = $invoice_data;
1675 1675
     // Make sure credit card numbers are never stored in sessions
1676
-    if ( !empty( $session_data['card_info']['card_number'] ) ) {
1677
-        unset( $session_data['card_info']['card_number'] );
1676
+    if (!empty($session_data['card_info']['card_number'])) {
1677
+        unset($session_data['card_info']['card_number']);
1678 1678
     }
1679 1679
     
1680 1680
     // Used for showing item links to non logged-in users after purchase, and for other plugins needing purchase data.
1681
-    wpinv_set_checkout_session( $invoice_data );
1681
+    wpinv_set_checkout_session($invoice_data);
1682 1682
     
1683 1683
     // Set gateway
1684
-    $invoice->update_meta( '_wpinv_gateway', $invoice_data['gateway'] );
1685
-    $invoice->update_meta( '_wpinv_mode', ( wpinv_is_test_mode( $invoice_data['gateway'] ) ? 'test' : 'live' ) );
1686
-    $invoice->update_meta( '_wpinv_checkout', true );
1684
+    $invoice->update_meta('_wpinv_gateway', $invoice_data['gateway']);
1685
+    $invoice->update_meta('_wpinv_mode', (wpinv_is_test_mode($invoice_data['gateway']) ? 'test' : 'live'));
1686
+    $invoice->update_meta('_wpinv_checkout', true);
1687 1687
     
1688
-    do_action( 'wpinv_checkout_before_send_to_gateway', $invoice, $invoice_data );
1688
+    do_action('wpinv_checkout_before_send_to_gateway', $invoice, $invoice_data);
1689 1689
 
1690 1690
     // Send info to the gateway for payment processing
1691
-    wpinv_send_to_gateway( $invoice_data['gateway'], $invoice_data );
1691
+    wpinv_send_to_gateway($invoice_data['gateway'], $invoice_data);
1692 1692
     die();
1693 1693
 }
1694
-add_action( 'wpinv_payment', 'wpinv_process_checkout' );
1694
+add_action('wpinv_payment', 'wpinv_process_checkout');
1695 1695
 
1696
-function wpinv_get_invoices( $args ) {
1697
-    $args = wp_parse_args( $args, array(
1698
-        'status'   => array_keys( wpinv_get_invoice_statuses() ),
1696
+function wpinv_get_invoices($args) {
1697
+    $args = wp_parse_args($args, array(
1698
+        'status'   => array_keys(wpinv_get_invoice_statuses()),
1699 1699
         'type'     => 'wpi_invoice',
1700 1700
         'parent'   => null,
1701 1701
         'user'     => null,
1702 1702
         'email'    => '',
1703
-        'limit'    => get_option( 'posts_per_page' ),
1703
+        'limit'    => get_option('posts_per_page'),
1704 1704
         'offset'   => null,
1705 1705
         'page'     => 1,
1706 1706
         'exclude'  => array(),
@@ -1708,7 +1708,7 @@  discard block
 block discarded – undo
1708 1708
         'order'    => 'DESC',
1709 1709
         'return'   => 'objects',
1710 1710
         'paginate' => false,
1711
-    ) );
1711
+    ));
1712 1712
     
1713 1713
     // Handle some BW compatibility arg names where wp_query args differ in naming.
1714 1714
     $map_legacy = array(
@@ -1721,18 +1721,18 @@  discard block
 block discarded – undo
1721 1721
         'paged'          => 'page',
1722 1722
     );
1723 1723
 
1724
-    foreach ( $map_legacy as $from => $to ) {
1725
-        if ( isset( $args[ $from ] ) ) {
1726
-            $args[ $to ] = $args[ $from ];
1724
+    foreach ($map_legacy as $from => $to) {
1725
+        if (isset($args[$from])) {
1726
+            $args[$to] = $args[$from];
1727 1727
         }
1728 1728
     }
1729 1729
 
1730
-    if ( get_query_var( 'paged' ) )
1730
+    if (get_query_var('paged'))
1731 1731
         $args['page'] = get_query_var('paged');
1732
-    else if ( get_query_var( 'page' ) )
1733
-        $args['page'] = get_query_var( 'page' );
1734
-    else if ( !empty( $args[ 'page' ] ) )
1735
-        $args['page'] = $args[ 'page' ];
1732
+    else if (get_query_var('page'))
1733
+        $args['page'] = get_query_var('page');
1734
+    else if (!empty($args['page']))
1735
+        $args['page'] = $args['page'];
1736 1736
     else
1737 1737
         $args['page'] = 1;
1738 1738
 
@@ -1745,47 +1745,47 @@  discard block
 block discarded – undo
1745 1745
         'post_status'    => $args['status'],
1746 1746
         'posts_per_page' => $args['limit'],
1747 1747
         'meta_query'     => array(),
1748
-        'date_query'     => !empty( $args['date_query'] ) ? $args['date_query'] : array(),
1748
+        'date_query'     => !empty($args['date_query']) ? $args['date_query'] : array(),
1749 1749
         'fields'         => 'ids',
1750 1750
         'orderby'        => $args['orderby'],
1751 1751
         'order'          => $args['order'],
1752 1752
     );
1753 1753
     
1754
-    if ( !empty( $args['user'] ) ) {
1755
-        $wp_query_args['author'] = absint( $args['user'] );
1754
+    if (!empty($args['user'])) {
1755
+        $wp_query_args['author'] = absint($args['user']);
1756 1756
     }
1757 1757
 
1758
-    if ( ! is_null( $args['parent'] ) ) {
1759
-        $wp_query_args['post_parent'] = absint( $args['parent'] );
1758
+    if (!is_null($args['parent'])) {
1759
+        $wp_query_args['post_parent'] = absint($args['parent']);
1760 1760
     }
1761 1761
 
1762
-    if ( ! is_null( $args['offset'] ) ) {
1763
-        $wp_query_args['offset'] = absint( $args['offset'] );
1762
+    if (!is_null($args['offset'])) {
1763
+        $wp_query_args['offset'] = absint($args['offset']);
1764 1764
     } else {
1765
-        $wp_query_args['paged'] = absint( $args['page'] );
1765
+        $wp_query_args['paged'] = absint($args['page']);
1766 1766
     }
1767 1767
 
1768
-    if ( ! empty( $args['exclude'] ) ) {
1769
-        $wp_query_args['post__not_in'] = array_map( 'absint', $args['exclude'] );
1768
+    if (!empty($args['exclude'])) {
1769
+        $wp_query_args['post__not_in'] = array_map('absint', $args['exclude']);
1770 1770
     }
1771 1771
 
1772
-    if ( ! $args['paginate' ] ) {
1772
+    if (!$args['paginate']) {
1773 1773
         $wp_query_args['no_found_rows'] = true;
1774 1774
     }
1775 1775
 
1776 1776
     // Get results.
1777
-    $invoices = new WP_Query( $wp_query_args );
1777
+    $invoices = new WP_Query($wp_query_args);
1778 1778
 
1779
-    if ( 'objects' === $args['return'] ) {
1780
-        $return = array_map( 'wpinv_get_invoice', $invoices->posts );
1781
-    } elseif ( 'self' === $args['return'] ) {
1779
+    if ('objects' === $args['return']) {
1780
+        $return = array_map('wpinv_get_invoice', $invoices->posts);
1781
+    } elseif ('self' === $args['return']) {
1782 1782
         return $invoices;
1783 1783
     } else {
1784 1784
         $return = $invoices->posts;
1785 1785
     }
1786 1786
 
1787
-    if ( $args['paginate' ] ) {
1788
-        return (object) array(
1787
+    if ($args['paginate']) {
1788
+        return (object)array(
1789 1789
             'invoices'      => $return,
1790 1790
             'total'         => $invoices->found_posts,
1791 1791
             'max_num_pages' => $invoices->max_num_pages,
@@ -1797,21 +1797,21 @@  discard block
 block discarded – undo
1797 1797
 
1798 1798
 function wpinv_get_user_invoices_columns() {
1799 1799
     $columns = array(
1800
-            'invoice-number'  => array( 'title' => __( 'ID', 'invoicing' ), 'class' => 'text-left' ),
1801
-            'invoice-date'    => array( 'title' => __( 'Date', 'invoicing' ), 'class' => 'text-left' ),
1802
-            'invoice-status'  => array( 'title' => __( 'Status', 'invoicing' ), 'class' => 'text-center' ),
1803
-            'invoice-total'   => array( 'title' => __( 'Total', 'invoicing' ), 'class' => 'text-right' ),
1804
-            'invoice-actions' => array( 'title' => '&nbsp;', 'class' => 'text-center' ),
1800
+            'invoice-number'  => array('title' => __('ID', 'invoicing'), 'class' => 'text-left'),
1801
+            'invoice-date'    => array('title' => __('Date', 'invoicing'), 'class' => 'text-left'),
1802
+            'invoice-status'  => array('title' => __('Status', 'invoicing'), 'class' => 'text-center'),
1803
+            'invoice-total'   => array('title' => __('Total', 'invoicing'), 'class' => 'text-right'),
1804
+            'invoice-actions' => array('title' => '&nbsp;', 'class' => 'text-center'),
1805 1805
         );
1806 1806
 
1807
-    return apply_filters( 'wpinv_user_invoices_columns', $columns );
1807
+    return apply_filters('wpinv_user_invoices_columns', $columns);
1808 1808
 }
1809 1809
 
1810
-function wpinv_payment_receipt( $atts, $content = null ) {
1810
+function wpinv_payment_receipt($atts, $content = null) {
1811 1811
     global $wpinv_receipt_args;
1812 1812
 
1813
-    $wpinv_receipt_args = shortcode_atts( array(
1814
-        'error'           => __( 'Sorry, trouble retrieving payment receipt.', 'invoicing' ),
1813
+    $wpinv_receipt_args = shortcode_atts(array(
1814
+        'error'           => __('Sorry, trouble retrieving payment receipt.', 'invoicing'),
1815 1815
         'price'           => true,
1816 1816
         'discount'        => true,
1817 1817
         'items'           => true,
@@ -1820,195 +1820,195 @@  discard block
 block discarded – undo
1820 1820
         'invoice_key'     => false,
1821 1821
         'payment_method'  => true,
1822 1822
         'invoice_id'      => true
1823
-    ), $atts, 'wpinv_receipt' );
1823
+    ), $atts, 'wpinv_receipt');
1824 1824
 
1825 1825
     $session = wpinv_get_checkout_session();
1826
-    if ( isset( $_GET['invoice_key'] ) ) {
1827
-        $invoice_key = urldecode( $_GET['invoice_key'] );
1828
-    } else if ( $session && isset( $session['invoice_key'] ) ) {
1826
+    if (isset($_GET['invoice_key'])) {
1827
+        $invoice_key = urldecode($_GET['invoice_key']);
1828
+    } else if ($session && isset($session['invoice_key'])) {
1829 1829
         $invoice_key = $session['invoice_key'];
1830
-    } elseif ( isset( $wpinv_receipt_args['invoice_key'] ) && $wpinv_receipt_args['invoice_key'] ) {
1830
+    } elseif (isset($wpinv_receipt_args['invoice_key']) && $wpinv_receipt_args['invoice_key']) {
1831 1831
         $invoice_key = $wpinv_receipt_args['invoice_key'];
1832
-    } else if ( isset( $_GET['invoice-id'] ) ) {
1833
-        $invoice_key = wpinv_get_payment_key( (int)$_GET['invoice-id'] );
1832
+    } else if (isset($_GET['invoice-id'])) {
1833
+        $invoice_key = wpinv_get_payment_key((int)$_GET['invoice-id']);
1834 1834
     }
1835 1835
 
1836 1836
     // No key found
1837
-    if ( ! isset( $invoice_key ) ) {
1837
+    if (!isset($invoice_key)) {
1838 1838
         return '<p class="alert alert-error">' . $wpinv_receipt_args['error'] . '</p>';
1839 1839
     }
1840 1840
 
1841
-    $invoice_id    = wpinv_get_invoice_id_by_key( $invoice_key );
1842
-    $user_can_view = wpinv_can_view_receipt( $invoice_key );
1843
-    if ( $user_can_view && isset( $_GET['invoice-id'] ) ) {
1841
+    $invoice_id    = wpinv_get_invoice_id_by_key($invoice_key);
1842
+    $user_can_view = wpinv_can_view_receipt($invoice_key);
1843
+    if ($user_can_view && isset($_GET['invoice-id'])) {
1844 1844
         $invoice_id     = (int)$_GET['invoice-id'];
1845
-        $user_can_view  = $invoice_key == wpinv_get_payment_key( (int)$_GET['invoice-id'] ) ? true : false;
1845
+        $user_can_view  = $invoice_key == wpinv_get_payment_key((int)$_GET['invoice-id']) ? true : false;
1846 1846
     }
1847 1847
 
1848 1848
     // Key was provided, but user is logged out. Offer them the ability to login and view the receipt
1849
-    if ( ! $user_can_view && ! empty( $invoice_key ) && ! is_user_logged_in() ) {
1849
+    if (!$user_can_view && !empty($invoice_key) && !is_user_logged_in()) {
1850 1850
         // login redirect
1851
-        return '<p class="alert alert-error">' . __( 'You are not allowed to access this section', 'invoicing' ) . '</p>';
1851
+        return '<p class="alert alert-error">' . __('You are not allowed to access this section', 'invoicing') . '</p>';
1852 1852
     }
1853 1853
 
1854
-    if ( ! apply_filters( 'wpinv_user_can_view_receipt', $user_can_view, $wpinv_receipt_args ) ) {
1854
+    if (!apply_filters('wpinv_user_can_view_receipt', $user_can_view, $wpinv_receipt_args)) {
1855 1855
         return '<p class="alert alert-error">' . $wpinv_receipt_args['error'] . '</p>';
1856 1856
     }
1857 1857
 
1858 1858
     ob_start();
1859 1859
 
1860
-    wpinv_get_template_part( 'wpinv-invoice-receipt' );
1860
+    wpinv_get_template_part('wpinv-invoice-receipt');
1861 1861
 
1862 1862
     $display = ob_get_clean();
1863 1863
 
1864 1864
     return $display;
1865 1865
 }
1866 1866
 
1867
-function wpinv_get_invoice_id_by_key( $key ) {
1867
+function wpinv_get_invoice_id_by_key($key) {
1868 1868
 	global $wpdb;
1869 1869
 
1870
-	$invoice_id = $wpdb->get_var( $wpdb->prepare( "SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_wpinv_key' AND meta_value = %s LIMIT 1", $key ) );
1870
+	$invoice_id = $wpdb->get_var($wpdb->prepare("SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_wpinv_key' AND meta_value = %s LIMIT 1", $key));
1871 1871
 
1872
-	if ( $invoice_id != NULL )
1872
+	if ($invoice_id != NULL)
1873 1873
 		return $invoice_id;
1874 1874
 
1875 1875
 	return 0;
1876 1876
 }
1877 1877
 
1878
-function wpinv_can_view_receipt( $invoice_key = '' ) {
1878
+function wpinv_can_view_receipt($invoice_key = '') {
1879 1879
 	$return = false;
1880 1880
 
1881
-	if ( empty( $invoice_key ) ) {
1881
+	if (empty($invoice_key)) {
1882 1882
 		return $return;
1883 1883
 	}
1884 1884
 
1885 1885
 	global $wpinv_receipt_args;
1886 1886
 
1887
-	$wpinv_receipt_args['id'] = wpinv_get_invoice_id_by_key( $invoice_key );
1888
-	if ( isset( $_GET['invoice-id'] ) ) {
1889
-		$wpinv_receipt_args['id'] = $invoice_key == wpinv_get_payment_key( (int)$_GET['invoice-id'] ) ? (int)$_GET['invoice-id'] : 0;
1887
+	$wpinv_receipt_args['id'] = wpinv_get_invoice_id_by_key($invoice_key);
1888
+	if (isset($_GET['invoice-id'])) {
1889
+		$wpinv_receipt_args['id'] = $invoice_key == wpinv_get_payment_key((int)$_GET['invoice-id']) ? (int)$_GET['invoice-id'] : 0;
1890 1890
 	}
1891 1891
 
1892
-	if ( empty( $wpinv_receipt_args['id'] ) ) {
1892
+	if (empty($wpinv_receipt_args['id'])) {
1893 1893
 		return $return;
1894 1894
 	}
1895 1895
 
1896
-	$invoice = wpinv_get_invoice( $wpinv_receipt_args['id'] );
1897
-	if ( !( !empty( $invoice->ID ) && $invoice->get_key() === $invoice_key ) ) {
1896
+	$invoice = wpinv_get_invoice($wpinv_receipt_args['id']);
1897
+	if (!(!empty($invoice->ID) && $invoice->get_key() === $invoice_key)) {
1898 1898
 		return $return;
1899 1899
 	}
1900 1900
 
1901
-	if ( is_user_logged_in() ) {
1902
-		if ( (int)$invoice->get_user_id() === (int) get_current_user_id() ) {
1901
+	if (is_user_logged_in()) {
1902
+		if ((int)$invoice->get_user_id() === (int)get_current_user_id()) {
1903 1903
 			$return = true;
1904 1904
 		}
1905 1905
 	}
1906 1906
 
1907 1907
 	$session = wpinv_get_checkout_session();
1908
-	if ( isset( $_GET['invoice_key'] ) || ( $session && isset( $session['invoice_key'] ) ) ) {
1909
-		$check_key = isset( $_GET['invoice_key'] ) ? $_GET['invoice_key'] : $session['invoice_key'];
1908
+	if (isset($_GET['invoice_key']) || ($session && isset($session['invoice_key']))) {
1909
+		$check_key = isset($_GET['invoice_key']) ? $_GET['invoice_key'] : $session['invoice_key'];
1910 1910
 
1911
-		if ( wpinv_require_login_to_checkout() ) {
1911
+		if (wpinv_require_login_to_checkout()) {
1912 1912
 			$return = $return && $check_key === $invoice_key;
1913 1913
 		} else {
1914 1914
 			$return = $check_key === $invoice_key;
1915 1915
 		}
1916 1916
 	}
1917 1917
 
1918
-	return (bool) apply_filters( 'wpinv_can_view_receipt', $return, $invoice_key );
1918
+	return (bool)apply_filters('wpinv_can_view_receipt', $return, $invoice_key);
1919 1919
 }
1920 1920
 
1921 1921
 function wpinv_pay_for_invoice() {
1922 1922
     global $wpinv_euvat;
1923 1923
     
1924
-    if ( isset( $_GET['invoice_key'] ) ) {
1924
+    if (isset($_GET['invoice_key'])) {
1925 1925
         $checkout_uri   = wpinv_get_checkout_uri();
1926
-        $invoice_key    = sanitize_text_field( $_GET['invoice_key'] );
1926
+        $invoice_key    = sanitize_text_field($_GET['invoice_key']);
1927 1927
         
1928
-        if ( empty( $invoice_key ) ) {
1929
-            wpinv_set_error( 'invalid_invoice', __( 'Invoice not found', 'invoicing' ) );
1930
-            wp_redirect( $checkout_uri );
1928
+        if (empty($invoice_key)) {
1929
+            wpinv_set_error('invalid_invoice', __('Invoice not found', 'invoicing'));
1930
+            wp_redirect($checkout_uri);
1931 1931
             wpinv_die();
1932 1932
         }
1933 1933
         
1934
-        do_action( 'wpinv_check_pay_for_invoice', $invoice_key );
1934
+        do_action('wpinv_check_pay_for_invoice', $invoice_key);
1935 1935
 
1936
-        $invoice_id    = wpinv_get_invoice_id_by_key( $invoice_key );
1937
-        $user_can_view = wpinv_can_view_receipt( $invoice_key );
1938
-        if ( $user_can_view && isset( $_GET['invoice-id'] ) ) {
1936
+        $invoice_id    = wpinv_get_invoice_id_by_key($invoice_key);
1937
+        $user_can_view = wpinv_can_view_receipt($invoice_key);
1938
+        if ($user_can_view && isset($_GET['invoice-id'])) {
1939 1939
             $invoice_id     = (int)$_GET['invoice-id'];
1940
-            $user_can_view  = $invoice_key == wpinv_get_payment_key( (int)$_GET['invoice-id'] ) ? true : false;
1940
+            $user_can_view  = $invoice_key == wpinv_get_payment_key((int)$_GET['invoice-id']) ? true : false;
1941 1941
         }
1942 1942
         
1943
-        if ( $invoice_id && $user_can_view && ( $invoice = wpinv_get_invoice( $invoice_id ) ) ) {
1944
-            if ( $invoice->needs_payment() ) {
1943
+        if ($invoice_id && $user_can_view && ($invoice = wpinv_get_invoice($invoice_id))) {
1944
+            if ($invoice->needs_payment()) {
1945 1945
                 $data                   = array();
1946 1946
                 $data['invoice_id']     = $invoice_id;
1947
-                $data['cart_discounts'] = $invoice->get_discounts( true );
1947
+                $data['cart_discounts'] = $invoice->get_discounts(true);
1948 1948
                 
1949
-                wpinv_set_checkout_session( $data );
1949
+                wpinv_set_checkout_session($data);
1950 1950
                 
1951
-                if ( wpinv_get_option( 'vat_ip_country_default' ) ) {
1951
+                if (wpinv_get_option('vat_ip_country_default')) {
1952 1952
                     $_POST['country']   = $wpinv_euvat->get_country_by_ip();
1953 1953
                     $_POST['state']     = $_POST['country'] == $invoice->country ? $invoice->state : '';
1954 1954
                     
1955
-                    wpinv_recalculate_tax( true );
1955
+                    wpinv_recalculate_tax(true);
1956 1956
                 }
1957 1957
                 
1958 1958
             } else {
1959 1959
                 $checkout_uri = $invoice->get_view_url();
1960 1960
             }
1961 1961
         } else {
1962
-            wpinv_set_error( 'invalid_invoice', __( 'You are not allowed to view this invoice', 'invoicing' ) );
1962
+            wpinv_set_error('invalid_invoice', __('You are not allowed to view this invoice', 'invoicing'));
1963 1963
             
1964
-            $checkout_uri = is_user_logged_in() ? wpinv_get_history_page_uri() : wp_login_url( get_permalink() );
1964
+            $checkout_uri = is_user_logged_in() ? wpinv_get_history_page_uri() : wp_login_url(get_permalink());
1965 1965
         }
1966 1966
         
1967
-        wp_redirect( $checkout_uri );
1967
+        wp_redirect($checkout_uri);
1968 1968
         wpinv_die();
1969 1969
     }
1970 1970
 }
1971
-add_action( 'wpinv_pay_for_invoice', 'wpinv_pay_for_invoice' );
1971
+add_action('wpinv_pay_for_invoice', 'wpinv_pay_for_invoice');
1972 1972
 
1973
-function wpinv_handle_pay_via_invoice_link( $invoice_key ) {
1974
-    if ( !empty( $invoice_key ) && !empty( $_REQUEST['_wpipay'] ) && !is_user_logged_in() && $invoice_id = wpinv_get_invoice_id_by_key( $invoice_key ) ) {
1975
-        if ( $invoice = wpinv_get_invoice( $invoice_id ) ) {
1973
+function wpinv_handle_pay_via_invoice_link($invoice_key) {
1974
+    if (!empty($invoice_key) && !empty($_REQUEST['_wpipay']) && !is_user_logged_in() && $invoice_id = wpinv_get_invoice_id_by_key($invoice_key)) {
1975
+        if ($invoice = wpinv_get_invoice($invoice_id)) {
1976 1976
             $user_id = $invoice->get_user_id();
1977
-            $secret = sanitize_text_field( $_GET['_wpipay'] );
1977
+            $secret = sanitize_text_field($_GET['_wpipay']);
1978 1978
             
1979
-            if ( $secret === md5( $user_id . '::' . $invoice->get_email() . '::' . $invoice_key ) ) { // valid invoice link
1980
-                $redirect_to = remove_query_arg( '_wpipay', get_permalink() );
1979
+            if ($secret === md5($user_id . '::' . $invoice->get_email() . '::' . $invoice_key)) { // valid invoice link
1980
+                $redirect_to = remove_query_arg('_wpipay', get_permalink());
1981 1981
                 
1982
-                wpinv_guest_redirect( $redirect_to, $user_id );
1982
+                wpinv_guest_redirect($redirect_to, $user_id);
1983 1983
                 wpinv_die();
1984 1984
             }
1985 1985
         }
1986 1986
     }
1987 1987
 }
1988
-add_action( 'wpinv_check_pay_for_invoice', 'wpinv_handle_pay_via_invoice_link' );
1988
+add_action('wpinv_check_pay_for_invoice', 'wpinv_handle_pay_via_invoice_link');
1989 1989
 
1990
-function wpinv_set_payment_transaction_id( $invoice_id = 0, $transaction_id = '' ) {
1991
-    $invoice_id = is_object( $invoice_id ) && !empty( $invoice_id->ID ) ? $invoice_id : $invoice_id;
1990
+function wpinv_set_payment_transaction_id($invoice_id = 0, $transaction_id = '') {
1991
+    $invoice_id = is_object($invoice_id) && !empty($invoice_id->ID) ? $invoice_id : $invoice_id;
1992 1992
     
1993
-    if ( empty( $invoice_id ) && $invoice_id > 0 ) {
1993
+    if (empty($invoice_id) && $invoice_id > 0) {
1994 1994
         return false;
1995 1995
     }
1996 1996
     
1997
-    if ( empty( $transaction_id ) ) {
1997
+    if (empty($transaction_id)) {
1998 1998
         $transaction_id = $invoice_id;
1999 1999
     }
2000 2000
 
2001
-    $transaction_id = apply_filters( 'wpinv_set_payment_transaction_id', $transaction_id, $invoice_id );
2001
+    $transaction_id = apply_filters('wpinv_set_payment_transaction_id', $transaction_id, $invoice_id);
2002 2002
     
2003
-    return wpinv_update_invoice_meta( $invoice_id, '_wpinv_transaction_id', $transaction_id );
2003
+    return wpinv_update_invoice_meta($invoice_id, '_wpinv_transaction_id', $transaction_id);
2004 2004
 }
2005 2005
 
2006
-function wpinv_invoice_status_label( $status, $status_display = '' ) {
2007
-    if ( empty( $status_display ) ) {
2008
-        $status_display = wpinv_status_nicename( $status );
2006
+function wpinv_invoice_status_label($status, $status_display = '') {
2007
+    if (empty($status_display)) {
2008
+        $status_display = wpinv_status_nicename($status);
2009 2009
     }
2010 2010
     
2011
-    switch ( $status ) {
2011
+    switch ($status) {
2012 2012
         case 'publish' :
2013 2013
         case 'wpi-renewal' :
2014 2014
             $class = 'label-success';
@@ -2033,178 +2033,178 @@  discard block
 block discarded – undo
2033 2033
     
2034 2034
     $label = '<span class="label label-inv-' . $status . ' ' . $class . '">' . $status_display . '</span>';
2035 2035
     
2036
-    return apply_filters( 'wpinv_invoice_status_label', $label, $status, $status_display );
2036
+    return apply_filters('wpinv_invoice_status_label', $label, $status, $status_display);
2037 2037
 }
2038 2038
 
2039
-function wpinv_format_invoice_number( $number, $type = '' ) {
2040
-    $check = apply_filters( 'wpinv_pre_format_invoice_number', null, $number, $type );
2041
-    if ( null !== $check ) {
2039
+function wpinv_format_invoice_number($number, $type = '') {
2040
+    $check = apply_filters('wpinv_pre_format_invoice_number', null, $number, $type);
2041
+    if (null !== $check) {
2042 2042
         return $check;
2043 2043
     }
2044 2044
 
2045
-    if ( !empty( $number ) && !is_numeric( $number ) ) {
2045
+    if (!empty($number) && !is_numeric($number)) {
2046 2046
         return $number;
2047 2047
     }
2048 2048
 
2049
-    $padd  = wpinv_get_option( 'invoice_number_padd' );
2050
-    $prefix  = wpinv_get_option( 'invoice_number_prefix' );
2051
-    $postfix = wpinv_get_option( 'invoice_number_postfix' );
2049
+    $padd = wpinv_get_option('invoice_number_padd');
2050
+    $prefix  = wpinv_get_option('invoice_number_prefix');
2051
+    $postfix = wpinv_get_option('invoice_number_postfix');
2052 2052
     
2053
-    $padd = absint( $padd );
2054
-    $formatted_number = absint( $number );
2053
+    $padd = absint($padd);
2054
+    $formatted_number = absint($number);
2055 2055
     
2056
-    if ( $padd > 0 ) {
2057
-        $formatted_number = zeroise( $formatted_number, $padd );
2056
+    if ($padd > 0) {
2057
+        $formatted_number = zeroise($formatted_number, $padd);
2058 2058
     }    
2059 2059
 
2060 2060
     $formatted_number = $prefix . $formatted_number . $postfix;
2061 2061
 
2062
-    return apply_filters( 'wpinv_format_invoice_number', $formatted_number, $number, $prefix, $postfix, $padd );
2062
+    return apply_filters('wpinv_format_invoice_number', $formatted_number, $number, $prefix, $postfix, $padd);
2063 2063
 }
2064 2064
 
2065
-function wpinv_get_next_invoice_number( $type = '' ) {
2066
-    $check = apply_filters( 'wpinv_get_pre_next_invoice_number', null, $type );
2067
-    if ( null !== $check ) {
2065
+function wpinv_get_next_invoice_number($type = '') {
2066
+    $check = apply_filters('wpinv_get_pre_next_invoice_number', null, $type);
2067
+    if (null !== $check) {
2068 2068
         return $check;
2069 2069
     }
2070 2070
     
2071
-    if ( !wpinv_sequential_number_active() ) {
2071
+    if (!wpinv_sequential_number_active()) {
2072 2072
         return false;
2073 2073
     }
2074 2074
 
2075
-    $number = $last_number = get_option( 'wpinv_last_invoice_number' );
2076
-    $start  = wpinv_get_option( 'invoice_sequence_start' );
2077
-    if ( !absint( $start ) > 0 ) {
2075
+    $number = $last_number = get_option('wpinv_last_invoice_number');
2076
+    $start  = wpinv_get_option('invoice_sequence_start');
2077
+    if (!absint($start) > 0) {
2078 2078
         $start = 1;
2079 2079
     }
2080 2080
     $increment_number = true;
2081 2081
     $save_number = false;
2082 2082
 
2083
-    if ( !empty( $number ) && !is_numeric( $number ) && $number == wpinv_format_invoice_number( $number ) ) {
2084
-        $number = wpinv_clean_invoice_number( $number );
2083
+    if (!empty($number) && !is_numeric($number) && $number == wpinv_format_invoice_number($number)) {
2084
+        $number = wpinv_clean_invoice_number($number);
2085 2085
     }
2086 2086
 
2087
-    if ( empty( $number ) ) {
2088
-        if ( !( $last_number === 0 || $last_number === '0' ) ) {
2089
-            $last_invoice = wpinv_get_invoices( array( 'limit' => 1, 'order' => 'DESC', 'orderby' => 'ID', 'return' => 'posts', 'fields' => 'ids', 'status' => array_keys( wpinv_get_invoice_statuses( true ) ) ) );
2087
+    if (empty($number)) {
2088
+        if (!($last_number === 0 || $last_number === '0')) {
2089
+            $last_invoice = wpinv_get_invoices(array('limit' => 1, 'order' => 'DESC', 'orderby' => 'ID', 'return' => 'posts', 'fields' => 'ids', 'status' => array_keys(wpinv_get_invoice_statuses(true))));
2090 2090
 
2091
-            if ( !empty( $last_invoice[0] ) && $invoice_number = wpinv_get_invoice_number( $last_invoice[0] ) ) {
2092
-                if ( is_numeric( $invoice_number ) ) {
2091
+            if (!empty($last_invoice[0]) && $invoice_number = wpinv_get_invoice_number($last_invoice[0])) {
2092
+                if (is_numeric($invoice_number)) {
2093 2093
                     $number = $invoice_number;
2094 2094
                 } else {
2095
-                    $number = wpinv_clean_invoice_number( $invoice_number );
2095
+                    $number = wpinv_clean_invoice_number($invoice_number);
2096 2096
                 }
2097 2097
             }
2098 2098
 
2099
-            if ( empty( $number ) ) {
2099
+            if (empty($number)) {
2100 2100
                 $increment_number = false;
2101 2101
                 $number = $start;
2102
-                $save_number = ( $number - 1 );
2102
+                $save_number = ($number - 1);
2103 2103
             } else {
2104 2104
                 $save_number = $number;
2105 2105
             }
2106 2106
         }
2107 2107
     }
2108 2108
 
2109
-    if ( $start > $number ) {
2109
+    if ($start > $number) {
2110 2110
         $increment_number = false;
2111 2111
         $number = $start;
2112
-        $save_number = ( $number - 1 );
2112
+        $save_number = ($number - 1);
2113 2113
     }
2114 2114
 
2115
-    if ( $save_number !== false ) {
2116
-        update_option( 'wpinv_last_invoice_number', $save_number );
2115
+    if ($save_number !== false) {
2116
+        update_option('wpinv_last_invoice_number', $save_number);
2117 2117
     }
2118 2118
     
2119
-    $increment_number = apply_filters( 'wpinv_increment_payment_number', $increment_number, $number );
2119
+    $increment_number = apply_filters('wpinv_increment_payment_number', $increment_number, $number);
2120 2120
 
2121
-    if ( $increment_number ) {
2121
+    if ($increment_number) {
2122 2122
         $number++;
2123 2123
     }
2124 2124
 
2125
-    return apply_filters( 'wpinv_get_next_invoice_number', $number );
2125
+    return apply_filters('wpinv_get_next_invoice_number', $number);
2126 2126
 }
2127 2127
 
2128
-function wpinv_clean_invoice_number( $number, $type = '' ) {
2129
-    $check = apply_filters( 'wpinv_pre_clean_invoice_number', null, $number, $type );
2130
-    if ( null !== $check ) {
2128
+function wpinv_clean_invoice_number($number, $type = '') {
2129
+    $check = apply_filters('wpinv_pre_clean_invoice_number', null, $number, $type);
2130
+    if (null !== $check) {
2131 2131
         return $check;
2132 2132
     }
2133 2133
     
2134
-    $prefix  = wpinv_get_option( 'invoice_number_prefix' );
2135
-    $postfix = wpinv_get_option( 'invoice_number_postfix' );
2134
+    $prefix  = wpinv_get_option('invoice_number_prefix');
2135
+    $postfix = wpinv_get_option('invoice_number_postfix');
2136 2136
 
2137
-    $number = preg_replace( '/' . $prefix . '/', '', $number, 1 );
2137
+    $number = preg_replace('/' . $prefix . '/', '', $number, 1);
2138 2138
 
2139
-    $length      = strlen( $number );
2140
-    $postfix_pos = strrpos( $number, $postfix );
2139
+    $length      = strlen($number);
2140
+    $postfix_pos = strrpos($number, $postfix);
2141 2141
     
2142
-    if ( false !== $postfix_pos ) {
2143
-        $number      = substr_replace( $number, '', $postfix_pos, $length );
2142
+    if (false !== $postfix_pos) {
2143
+        $number = substr_replace($number, '', $postfix_pos, $length);
2144 2144
     }
2145 2145
 
2146
-    $number = intval( $number );
2146
+    $number = intval($number);
2147 2147
 
2148
-    return apply_filters( 'wpinv_clean_invoice_number', $number, $prefix, $postfix );
2148
+    return apply_filters('wpinv_clean_invoice_number', $number, $prefix, $postfix);
2149 2149
 }
2150 2150
 
2151
-function wpinv_save_number_post_saved( $post_ID, $post, $update ) {
2151
+function wpinv_save_number_post_saved($post_ID, $post, $update) {
2152 2152
     global $wpdb;
2153 2153
 
2154
-    if ( !$update && !get_post_meta( $post_ID, '_wpinv_number', true ) ) {
2155
-        wpinv_update_invoice_number( $post_ID, $post->post_status != 'auto-draft', $post->post_type );
2154
+    if (!$update && !get_post_meta($post_ID, '_wpinv_number', true)) {
2155
+        wpinv_update_invoice_number($post_ID, $post->post_status != 'auto-draft', $post->post_type);
2156 2156
     }
2157 2157
 
2158
-    if ( !$update ) {
2159
-        $wpdb->update( $wpdb->posts, array( 'post_name' => wpinv_generate_post_name( $post_ID ) ), array( 'ID' => $post_ID ) );
2160
-        clean_post_cache( $post_ID );
2158
+    if (!$update) {
2159
+        $wpdb->update($wpdb->posts, array('post_name' => wpinv_generate_post_name($post_ID)), array('ID' => $post_ID));
2160
+        clean_post_cache($post_ID);
2161 2161
     }
2162 2162
 }
2163
-add_action( 'save_post_wpi_invoice', 'wpinv_save_number_post_saved', 1, 3 );
2163
+add_action('save_post_wpi_invoice', 'wpinv_save_number_post_saved', 1, 3);
2164 2164
 
2165
-function wpinv_save_number_post_updated( $post_ID, $post_after, $post_before ) {
2166
-    if ( !empty( $post_after->post_type ) && $post_after->post_type == 'wpi_invoice' && $post_before->post_status == 'auto-draft' && $post_after->post_status != $post_before->post_status ) {
2167
-        wpinv_update_invoice_number( $post_ID, true, $post_after->post_type );
2165
+function wpinv_save_number_post_updated($post_ID, $post_after, $post_before) {
2166
+    if (!empty($post_after->post_type) && $post_after->post_type == 'wpi_invoice' && $post_before->post_status == 'auto-draft' && $post_after->post_status != $post_before->post_status) {
2167
+        wpinv_update_invoice_number($post_ID, true, $post_after->post_type);
2168 2168
     }
2169 2169
 }
2170
-add_action( 'post_updated', 'wpinv_save_number_post_updated', 1, 3 );
2170
+add_action('post_updated', 'wpinv_save_number_post_updated', 1, 3);
2171 2171
 
2172
-function wpinv_update_invoice_number( $post_ID, $save_sequential = false, $type = '' ) {
2172
+function wpinv_update_invoice_number($post_ID, $save_sequential = false, $type = '') {
2173 2173
     global $wpdb;
2174 2174
     
2175
-    $check = apply_filters( 'wpinv_pre_update_invoice_number', null, $post_ID, $save_sequential, $type );
2176
-    if ( null !== $check ) {
2175
+    $check = apply_filters('wpinv_pre_update_invoice_number', null, $post_ID, $save_sequential, $type);
2176
+    if (null !== $check) {
2177 2177
         return $check;
2178 2178
     }
2179 2179
 
2180
-    if ( wpinv_sequential_number_active() ) {
2180
+    if (wpinv_sequential_number_active()) {
2181 2181
         $number = wpinv_get_next_invoice_number();
2182 2182
 
2183
-        if ( $save_sequential ) {
2184
-            update_option( 'wpinv_last_invoice_number', $number );
2183
+        if ($save_sequential) {
2184
+            update_option('wpinv_last_invoice_number', $number);
2185 2185
         }
2186 2186
     } else {
2187 2187
         $number = $post_ID;
2188 2188
     }
2189 2189
 
2190
-    $number = wpinv_format_invoice_number( $number );
2190
+    $number = wpinv_format_invoice_number($number);
2191 2191
 
2192
-    update_post_meta( $post_ID, '_wpinv_number', $number );
2192
+    update_post_meta($post_ID, '_wpinv_number', $number);
2193 2193
 
2194
-    $wpdb->update( $wpdb->posts, array( 'post_title' => $number ), array( 'ID' => $post_ID ) );
2194
+    $wpdb->update($wpdb->posts, array('post_title' => $number), array('ID' => $post_ID));
2195 2195
 
2196
-    clean_post_cache( $post_ID );
2196
+    clean_post_cache($post_ID);
2197 2197
 
2198 2198
     return $number;
2199 2199
 }
2200 2200
 
2201
-function wpinv_post_name_prefix( $post_type = 'wpi_invoice' ) {
2202
-    return apply_filters( 'wpinv_post_name_prefix', 'inv-', $post_type );
2201
+function wpinv_post_name_prefix($post_type = 'wpi_invoice') {
2202
+    return apply_filters('wpinv_post_name_prefix', 'inv-', $post_type);
2203 2203
 }
2204 2204
 
2205
-function wpinv_generate_post_name( $post_ID ) {
2206
-    $prefix = wpinv_post_name_prefix( get_post_type( $post_ID ) );
2207
-    $post_name = sanitize_title( $prefix . $post_ID );
2205
+function wpinv_generate_post_name($post_ID) {
2206
+    $prefix = wpinv_post_name_prefix(get_post_type($post_ID));
2207
+    $post_name = sanitize_title($prefix . $post_ID);
2208 2208
 
2209
-    return apply_filters( 'wpinv_generate_post_name', $post_name, $post_ID, $prefix );
2209
+    return apply_filters('wpinv_generate_post_name', $post_name, $post_ID, $prefix);
2210 2210
 }
2211 2211
\ No newline at end of file
Please login to merge, or discard this patch.
includes/class-wpinv-invoice.php 1 patch
Spacing   +804 added lines, -804 removed lines patch added patch discarded remove patch
@@ -7,12 +7,12 @@  discard block
 block discarded – undo
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
 final class WPInv_Invoice {
15
-    public $ID  = 0;
15
+    public $ID = 0;
16 16
     public $title;
17 17
     public $post_type;
18 18
     
@@ -65,17 +65,17 @@  discard block
 block discarded – undo
65 65
     public $full_name = '';
66 66
     public $parent_invoice = 0;
67 67
     
68
-    public function __construct( $invoice_id = false ) {
69
-        if( empty( $invoice_id ) ) {
68
+    public function __construct($invoice_id = false) {
69
+        if (empty($invoice_id)) {
70 70
             return false;
71 71
         }
72 72
 
73
-        $this->setup_invoice( $invoice_id );
73
+        $this->setup_invoice($invoice_id);
74 74
     }
75 75
 
76
-    public function get( $key ) {
77
-        if ( method_exists( $this, 'get_' . $key ) ) {
78
-            $value = call_user_func( array( $this, 'get_' . $key ) );
76
+    public function get($key) {
77
+        if (method_exists($this, 'get_' . $key)) {
78
+            $value = call_user_func(array($this, 'get_' . $key));
79 79
         } else {
80 80
             $value = $this->$key;
81 81
         }
@@ -83,51 +83,51 @@  discard block
 block discarded – undo
83 83
         return $value;
84 84
     }
85 85
 
86
-    public function set( $key, $value ) {
87
-        $ignore = array( 'items', 'cart_details', 'fees', '_ID' );
86
+    public function set($key, $value) {
87
+        $ignore = array('items', 'cart_details', 'fees', '_ID');
88 88
 
89
-        if ( $key === 'status' ) {
89
+        if ($key === 'status') {
90 90
             $this->old_status = $this->status;
91 91
         }
92 92
 
93
-        if ( ! in_array( $key, $ignore ) ) {
94
-            $this->pending[ $key ] = $value;
93
+        if (!in_array($key, $ignore)) {
94
+            $this->pending[$key] = $value;
95 95
         }
96 96
 
97
-        if( '_ID' !== $key ) {
97
+        if ('_ID' !== $key) {
98 98
             $this->$key = $value;
99 99
         }
100 100
     }
101 101
 
102
-    public function _isset( $name ) {
103
-        if ( property_exists( $this, $name) ) {
104
-            return false === empty( $this->$name );
102
+    public function _isset($name) {
103
+        if (property_exists($this, $name)) {
104
+            return false === empty($this->$name);
105 105
         } else {
106 106
             return null;
107 107
         }
108 108
     }
109 109
 
110
-    private function setup_invoice( $invoice_id ) {
110
+    private function setup_invoice($invoice_id) {
111 111
         $this->pending = array();
112 112
 
113
-        if ( empty( $invoice_id ) ) {
113
+        if (empty($invoice_id)) {
114 114
             return false;
115 115
         }
116 116
 
117
-        $invoice = get_post( $invoice_id );
117
+        $invoice = get_post($invoice_id);
118 118
 
119
-        if( !$invoice || is_wp_error( $invoice ) ) {
119
+        if (!$invoice || is_wp_error($invoice)) {
120 120
             return false;
121 121
         }
122 122
 
123
-        if( !('wpi_invoice' == $invoice->post_type OR 'wpi_quote' == $invoice->post_type) ) {
123
+        if (!('wpi_invoice' == $invoice->post_type OR 'wpi_quote' == $invoice->post_type)) {
124 124
             return false;
125 125
         }
126 126
 
127
-        do_action( 'wpinv_pre_setup_invoice', $this, $invoice_id );
127
+        do_action('wpinv_pre_setup_invoice', $this, $invoice_id);
128 128
         
129 129
         // Primary Identifier
130
-        $this->ID              = absint( $invoice_id );
130
+        $this->ID              = absint($invoice_id);
131 131
         $this->post_type       = $invoice->post_type;
132 132
         
133 133
         // We have a payment, get the generic payment_meta item to reduce calls to it
@@ -139,7 +139,7 @@  discard block
 block discarded – undo
139 139
         $this->post_status     = $this->status;
140 140
         $this->mode            = $this->setup_mode();
141 141
         $this->parent_invoice  = $invoice->post_parent;
142
-        $this->post_name       = $this->setup_post_name( $invoice );
142
+        $this->post_name       = $this->setup_post_name($invoice);
143 143
         $this->status_nicename = $this->setup_status_nicename($invoice->post_status);
144 144
 
145 145
         // Items
@@ -161,8 +161,8 @@  discard block
 block discarded – undo
161 161
         
162 162
         // User based
163 163
         $this->ip              = $this->setup_ip();
164
-        $this->user_id         = !empty( $invoice->post_author ) ? $invoice->post_author : get_current_user_id();///$this->setup_user_id();
165
-        $this->email           = get_the_author_meta( 'email', $this->user_id );
164
+        $this->user_id         = !empty($invoice->post_author) ? $invoice->post_author : get_current_user_id(); ///$this->setup_user_id();
165
+        $this->email           = get_the_author_meta('email', $this->user_id);
166 166
         
167 167
         $this->user_info       = $this->setup_user_info();
168 168
                 
@@ -171,7 +171,7 @@  discard block
 block discarded – undo
171 171
         $this->company         = $this->user_info['company'];
172 172
         $this->vat_number      = $this->user_info['vat_number'];
173 173
         $this->vat_rate        = $this->user_info['vat_rate'];
174
-        $this->adddress_confirmed  = $this->user_info['adddress_confirmed'];
174
+        $this->adddress_confirmed = $this->user_info['adddress_confirmed'];
175 175
         $this->address         = $this->user_info['address'];
176 176
         $this->city            = $this->user_info['city'];
177 177
         $this->country         = $this->user_info['country'];
@@ -186,35 +186,35 @@  discard block
 block discarded – undo
186 186
         // Other Identifiers
187 187
         $this->key             = $this->setup_invoice_key();
188 188
         $this->number          = $this->setup_invoice_number();
189
-        $this->title           = !empty( $invoice->post_title ) ? $invoice->post_title : $this->number;
189
+        $this->title           = !empty($invoice->post_title) ? $invoice->post_title : $this->number;
190 190
         
191
-        $this->full_name       = trim( $this->first_name . ' '. $this->last_name );
191
+        $this->full_name       = trim($this->first_name . ' ' . $this->last_name);
192 192
         
193 193
         // Allow extensions to add items to this object via hook
194
-        do_action( 'wpinv_setup_invoice', $this, $invoice_id );
194
+        do_action('wpinv_setup_invoice', $this, $invoice_id);
195 195
 
196 196
         return true;
197 197
     }
198 198
     
199 199
     private function setup_status_nicename($status) {
200
-        $all_invoice_statuses  = wpinv_get_invoice_statuses();
201
-        $status   = isset( $all_invoice_statuses[$status] ) ? $all_invoice_statuses[$status] : __( $status, 'invoicing' );
200
+        $all_invoice_statuses = wpinv_get_invoice_statuses();
201
+        $status = isset($all_invoice_statuses[$status]) ? $all_invoice_statuses[$status] : __($status, 'invoicing');
202 202
 
203
-        return apply_filters( 'setup_status_nicename', $status );
203
+        return apply_filters('setup_status_nicename', $status);
204 204
     }
205 205
     
206
-    private function setup_post_name( $post = NULL ) {
206
+    private function setup_post_name($post = NULL) {
207 207
         global $wpdb;
208 208
         
209 209
         $post_name = '';
210 210
         
211
-        if ( !empty( $post ) ) {
212
-            if( !empty( $post->post_name ) ) {
211
+        if (!empty($post)) {
212
+            if (!empty($post->post_name)) {
213 213
                 $post_name = $post->post_name;
214
-            } else if ( !empty( $post->ID ) ) {
215
-                $post_name = wpinv_generate_post_name( $post->ID );
214
+            } else if (!empty($post->ID)) {
215
+                $post_name = wpinv_generate_post_name($post->ID);
216 216
 
217
-                $wpdb->update( $wpdb->posts, array( 'post_name' => $post_name ), array( 'ID' => $post->ID ) );
217
+                $wpdb->update($wpdb->posts, array('post_name' => $post_name), array('ID' => $post->ID));
218 218
             }
219 219
         }
220 220
 
@@ -222,12 +222,12 @@  discard block
 block discarded – undo
222 222
     }
223 223
     
224 224
     private function setup_due_date() {
225
-        $due_date = $this->get_meta( '_wpinv_due_date' );
225
+        $due_date = $this->get_meta('_wpinv_due_date');
226 226
         
227
-        if ( empty( $due_date ) ) {
228
-            $overdue_time = strtotime( $this->date ) + ( DAY_IN_SECONDS * absint( wpinv_get_option( 'overdue_days' ) ) );
229
-            $due_date = date_i18n( 'Y-m-d', $overdue_time );
230
-        } else if ( $due_date == 'none' ) {
227
+        if (empty($due_date)) {
228
+            $overdue_time = strtotime($this->date) + (DAY_IN_SECONDS * absint(wpinv_get_option('overdue_days')));
229
+            $due_date = date_i18n('Y-m-d', $overdue_time);
230
+        } else if ($due_date == 'none') {
231 231
             $due_date = '';
232 232
         }
233 233
         
@@ -235,66 +235,66 @@  discard block
 block discarded – undo
235 235
     }
236 236
     
237 237
     private function setup_completed_date() {
238
-        $invoice = get_post( $this->ID );
238
+        $invoice = get_post($this->ID);
239 239
 
240
-        if ( 'wpi-pending' == $invoice->post_status || 'preapproved' == $invoice->post_status ) {
240
+        if ('wpi-pending' == $invoice->post_status || 'preapproved' == $invoice->post_status) {
241 241
             return false; // This invoice was never paid
242 242
         }
243 243
 
244
-        $date = ( $date = $this->get_meta( '_wpinv_completed_date', true ) ) ? $date : $invoice->modified_date;
244
+        $date = ($date = $this->get_meta('_wpinv_completed_date', true)) ? $date : $invoice->modified_date;
245 245
 
246 246
         return $date;
247 247
     }
248 248
     
249 249
     private function setup_cart_details() {
250
-        $cart_details = isset( $this->payment_meta['cart_details'] ) ? maybe_unserialize( $this->payment_meta['cart_details'] ) : array();
250
+        $cart_details = isset($this->payment_meta['cart_details']) ? maybe_unserialize($this->payment_meta['cart_details']) : array();
251 251
         return $cart_details;
252 252
     }
253 253
     
254 254
     public function array_convert() {
255
-        return get_object_vars( $this );
255
+        return get_object_vars($this);
256 256
     }
257 257
     
258 258
     private function setup_items() {
259
-        $items = isset( $this->payment_meta['items'] ) ? maybe_unserialize( $this->payment_meta['items'] ) : array();
259
+        $items = isset($this->payment_meta['items']) ? maybe_unserialize($this->payment_meta['items']) : array();
260 260
         return $items;
261 261
     }
262 262
     
263 263
     private function setup_fees() {
264
-        $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array();
264
+        $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array();
265 265
         return $payment_fees;
266 266
     }
267 267
         
268 268
     private function setup_currency() {
269
-        $currency = isset( $this->payment_meta['currency'] ) ? $this->payment_meta['currency'] : apply_filters( 'wpinv_currency_default', wpinv_get_currency(), $this );
269
+        $currency = isset($this->payment_meta['currency']) ? $this->payment_meta['currency'] : apply_filters('wpinv_currency_default', wpinv_get_currency(), $this);
270 270
         return $currency;
271 271
     }
272 272
     
273 273
     private function setup_discount() {
274 274
         //$discount = $this->get_meta( '_wpinv_discount', true );
275
-        $discount = (float)$this->subtotal - ( (float)$this->total - (float)$this->tax - (float)$this->fees_total );
276
-        if ( $discount < 0 ) {
275
+        $discount = (float)$this->subtotal - ((float)$this->total - (float)$this->tax - (float)$this->fees_total);
276
+        if ($discount < 0) {
277 277
             $discount = 0;
278 278
         }
279
-        $discount = wpinv_round_amount( $discount );
279
+        $discount = wpinv_round_amount($discount);
280 280
         
281 281
         return $discount;
282 282
     }
283 283
     
284 284
     private function setup_discount_code() {
285
-        $discount_code = !empty( $this->discounts ) ? $this->discounts : $this->get_meta( '_wpinv_discount_code', true );
285
+        $discount_code = !empty($this->discounts) ? $this->discounts : $this->get_meta('_wpinv_discount_code', true);
286 286
         return $discount_code;
287 287
     }
288 288
     
289 289
     private function setup_tax() {
290
-        $tax = $this->get_meta( '_wpinv_tax', true );
290
+        $tax = $this->get_meta('_wpinv_tax', true);
291 291
 
292 292
         // We don't have tax as it's own meta and no meta was passed
293
-        if ( '' === $tax ) {            
294
-            $tax = isset( $this->payment_meta['tax'] ) ? $this->payment_meta['tax'] : 0;
293
+        if ('' === $tax) {            
294
+            $tax = isset($this->payment_meta['tax']) ? $this->payment_meta['tax'] : 0;
295 295
         }
296 296
         
297
-        if ( $tax < 0 ) {
297
+        if ($tax < 0) {
298 298
             $tax = 0;
299 299
         }
300 300
 
@@ -305,9 +305,9 @@  discard block
 block discarded – undo
305 305
         $subtotal     = 0;
306 306
         $cart_details = $this->cart_details;
307 307
 
308
-        if ( is_array( $cart_details ) ) {
309
-            foreach ( $cart_details as $item ) {
310
-                if ( isset( $item['subtotal'] ) ) {
308
+        if (is_array($cart_details)) {
309
+            foreach ($cart_details as $item) {
310
+                if (isset($item['subtotal'])) {
311 311
                     $subtotal += $item['subtotal'];
312 312
                 }
313 313
             }
@@ -321,23 +321,23 @@  discard block
 block discarded – undo
321 321
     }
322 322
     
323 323
     private function setup_discounts() {
324
-        $discounts = ! empty( $this->payment_meta['user_info']['discount'] ) ? $this->payment_meta['user_info']['discount'] : array();
324
+        $discounts = !empty($this->payment_meta['user_info']['discount']) ? $this->payment_meta['user_info']['discount'] : array();
325 325
         return $discounts;
326 326
     }
327 327
     
328 328
     private function setup_total() {
329
-        $amount = $this->get_meta( '_wpinv_total', true );
329
+        $amount = $this->get_meta('_wpinv_total', true);
330 330
 
331
-        if ( empty( $amount ) && '0.00' != $amount ) {
332
-            $meta   = $this->get_meta( '_wpinv_payment_meta', true );
333
-            $meta   = maybe_unserialize( $meta );
331
+        if (empty($amount) && '0.00' != $amount) {
332
+            $meta   = $this->get_meta('_wpinv_payment_meta', true);
333
+            $meta   = maybe_unserialize($meta);
334 334
 
335
-            if ( isset( $meta['amount'] ) ) {
335
+            if (isset($meta['amount'])) {
336 336
                 $amount = $meta['amount'];
337 337
             }
338 338
         }
339 339
 
340
-        if($amount < 0){
340
+        if ($amount < 0) {
341 341
             $amount = 0;
342 342
         }
343 343
 
@@ -345,13 +345,13 @@  discard block
 block discarded – undo
345 345
     }
346 346
     
347 347
     private function setup_mode() {
348
-        return $this->get_meta( '_wpinv_mode' );
348
+        return $this->get_meta('_wpinv_mode');
349 349
     }
350 350
 
351 351
     private function setup_gateway() {
352
-        $gateway = $this->get_meta( '_wpinv_gateway' );
352
+        $gateway = $this->get_meta('_wpinv_gateway');
353 353
         
354
-        if ( empty( $gateway ) && 'publish' === $this->status ) {
354
+        if (empty($gateway) && 'publish' === $this->status) {
355 355
             $gateway = 'manual';
356 356
         }
357 357
         
@@ -359,23 +359,23 @@  discard block
 block discarded – undo
359 359
     }
360 360
     
361 361
     private function setup_gateway_title() {
362
-        $gateway_title = wpinv_get_gateway_checkout_label( $this->gateway );
362
+        $gateway_title = wpinv_get_gateway_checkout_label($this->gateway);
363 363
         return $gateway_title;
364 364
     }
365 365
 
366 366
     private function setup_transaction_id() {
367
-        $transaction_id = $this->get_meta( '_wpinv_transaction_id' );
367
+        $transaction_id = $this->get_meta('_wpinv_transaction_id');
368 368
 
369
-        if ( empty( $transaction_id ) || (int) $transaction_id === (int) $this->ID ) {
369
+        if (empty($transaction_id) || (int)$transaction_id === (int)$this->ID) {
370 370
             $gateway        = $this->gateway;
371
-            $transaction_id = apply_filters( 'wpinv_get_invoice_transaction_id-' . $gateway, $this->ID );
371
+            $transaction_id = apply_filters('wpinv_get_invoice_transaction_id-' . $gateway, $this->ID);
372 372
         }
373 373
 
374 374
         return $transaction_id;
375 375
     }
376 376
 
377 377
     private function setup_ip() {
378
-        $ip = $this->get_meta( '_wpinv_user_ip' );
378
+        $ip = $this->get_meta('_wpinv_user_ip');
379 379
         return $ip;
380 380
     }
381 381
 
@@ -385,62 +385,62 @@  discard block
 block discarded – undo
385 385
     ///}
386 386
         
387 387
     private function setup_first_name() {
388
-        $first_name = $this->get_meta( '_wpinv_first_name' );
388
+        $first_name = $this->get_meta('_wpinv_first_name');
389 389
         return $first_name;
390 390
     }
391 391
     
392 392
     private function setup_last_name() {
393
-        $last_name = $this->get_meta( '_wpinv_last_name' );
393
+        $last_name = $this->get_meta('_wpinv_last_name');
394 394
         return $last_name;
395 395
     }
396 396
     
397 397
     private function setup_company() {
398
-        $company = $this->get_meta( '_wpinv_company' );
398
+        $company = $this->get_meta('_wpinv_company');
399 399
         return $company;
400 400
     }
401 401
     
402 402
     private function setup_vat_number() {
403
-        $vat_number = $this->get_meta( '_wpinv_vat_number' );
403
+        $vat_number = $this->get_meta('_wpinv_vat_number');
404 404
         return $vat_number;
405 405
     }
406 406
     
407 407
     private function setup_vat_rate() {
408
-        $vat_rate = $this->get_meta( '_wpinv_vat_rate' );
408
+        $vat_rate = $this->get_meta('_wpinv_vat_rate');
409 409
         return $vat_rate;
410 410
     }
411 411
     
412 412
     private function setup_adddress_confirmed() {
413
-        $adddress_confirmed = $this->get_meta( '_wpinv_adddress_confirmed' );
413
+        $adddress_confirmed = $this->get_meta('_wpinv_adddress_confirmed');
414 414
         return $adddress_confirmed;
415 415
     }
416 416
     
417 417
     private function setup_phone() {
418
-        $phone = $this->get_meta( '_wpinv_phone' );
418
+        $phone = $this->get_meta('_wpinv_phone');
419 419
         return $phone;
420 420
     }
421 421
     
422 422
     private function setup_address() {
423
-        $address = $this->get_meta( '_wpinv_address', true );
423
+        $address = $this->get_meta('_wpinv_address', true);
424 424
         return $address;
425 425
     }
426 426
     
427 427
     private function setup_city() {
428
-        $city = $this->get_meta( '_wpinv_city', true );
428
+        $city = $this->get_meta('_wpinv_city', true);
429 429
         return $city;
430 430
     }
431 431
     
432 432
     private function setup_country() {
433
-        $country = $this->get_meta( '_wpinv_country', true );
433
+        $country = $this->get_meta('_wpinv_country', true);
434 434
         return $country;
435 435
     }
436 436
     
437 437
     private function setup_state() {
438
-        $state = $this->get_meta( '_wpinv_state', true );
438
+        $state = $this->get_meta('_wpinv_state', true);
439 439
         return $state;
440 440
     }
441 441
     
442 442
     private function setup_zip() {
443
-        $zip = $this->get_meta( '_wpinv_zip', true );
443
+        $zip = $this->get_meta('_wpinv_zip', true);
444 444
         return $zip;
445 445
     }
446 446
 
@@ -449,7 +449,7 @@  discard block
 block discarded – undo
449 449
             'user_id'        => $this->user_id,
450 450
             'first_name'     => $this->first_name,
451 451
             'last_name'      => $this->last_name,
452
-            'email'          => get_the_author_meta( 'email', $this->user_id ),
452
+            'email'          => get_the_author_meta('email', $this->user_id),
453 453
             'phone'          => $this->phone,
454 454
             'address'        => $this->address,
455 455
             'city'           => $this->city,
@@ -464,12 +464,12 @@  discard block
 block discarded – undo
464 464
         );
465 465
         
466 466
         $user_info = array();
467
-        if ( isset( $this->payment_meta['user_info'] ) ) {
468
-            $user_info = maybe_unserialize( $this->payment_meta['user_info'] );
467
+        if (isset($this->payment_meta['user_info'])) {
468
+            $user_info = maybe_unserialize($this->payment_meta['user_info']);
469 469
             
470
-            if ( !empty( $user_info ) && isset( $user_info['user_id'] ) && $post = get_post( $this->ID ) ) {
470
+            if (!empty($user_info) && isset($user_info['user_id']) && $post = get_post($this->ID)) {
471 471
                 $this->user_id = $post->post_author;
472
-                $this->email = get_the_author_meta( 'email', $this->user_id );
472
+                $this->email = get_the_author_meta('email', $this->user_id);
473 473
                 
474 474
                 $user_info['user_id'] = $this->user_id;
475 475
                 $user_info['email'] = $this->email;
@@ -478,13 +478,13 @@  discard block
 block discarded – undo
478 478
             }
479 479
         }
480 480
         
481
-        $user_info    = wp_parse_args( $user_info, $defaults );
481
+        $user_info = wp_parse_args($user_info, $defaults);
482 482
         
483 483
         // Get the user, but only if it's been created
484
-        $user = get_userdata( $this->user_id );
484
+        $user = get_userdata($this->user_id);
485 485
         
486
-        if ( !empty( $user ) && $user->ID > 0 ) {
487
-            if ( empty( $user_info ) ) {
486
+        if (!empty($user) && $user->ID > 0) {
487
+            if (empty($user_info)) {
488 488
                 $user_info = array(
489 489
                     'user_id'    => $user->ID,
490 490
                     'first_name' => $user->first_name,
@@ -493,23 +493,23 @@  discard block
 block discarded – undo
493 493
                     'discount'   => '',
494 494
                 );
495 495
             } else {
496
-                foreach ( $user_info as $key => $value ) {
497
-                    if ( ! empty( $value ) ) {
496
+                foreach ($user_info as $key => $value) {
497
+                    if (!empty($value)) {
498 498
                         continue;
499 499
                     }
500 500
 
501
-                    switch( $key ) {
501
+                    switch ($key) {
502 502
                         case 'user_id':
503
-                            $user_info[ $key ] = $user->ID;
503
+                            $user_info[$key] = $user->ID;
504 504
                             break;
505 505
                         case 'first_name':
506
-                            $user_info[ $key ] = $user->first_name;
506
+                            $user_info[$key] = $user->first_name;
507 507
                             break;
508 508
                         case 'last_name':
509
-                            $user_info[ $key ] = $user->last_name;
509
+                            $user_info[$key] = $user->last_name;
510 510
                             break;
511 511
                         case 'email':
512
-                            $user_info[ $key ] = $user->user_email;
512
+                            $user_info[$key] = $user->user_email;
513 513
                             break;
514 514
                     }
515 515
                 }
@@ -520,25 +520,25 @@  discard block
 block discarded – undo
520 520
     }
521 521
 
522 522
     private function setup_invoice_key() {
523
-        $key = $this->get_meta( '_wpinv_key', true );
523
+        $key = $this->get_meta('_wpinv_key', true);
524 524
         
525 525
         return $key;
526 526
     }
527 527
 
528 528
     private function setup_invoice_number() {
529
-        $number = $this->get_meta( '_wpinv_number', true );
529
+        $number = $this->get_meta('_wpinv_number', true);
530 530
 
531
-        if ( !$number ) {
531
+        if (!$number) {
532 532
             $number = $this->ID;
533 533
 
534
-            if ( $this->status == 'auto-draft' ) {
535
-                if ( wpinv_sequential_number_active( $this->post_type ) ) {
536
-                    $next_number = wpinv_get_next_invoice_number( $this->post_type );
534
+            if ($this->status == 'auto-draft') {
535
+                if (wpinv_sequential_number_active($this->post_type)) {
536
+                    $next_number = wpinv_get_next_invoice_number($this->post_type);
537 537
                     $number      = $next_number;
538 538
                 }
539 539
             }
540 540
             
541
-            $number = wpinv_format_invoice_number( $number, $this->post_type );
541
+            $number = wpinv_format_invoice_number($number, $this->post_type);
542 542
         }
543 543
 
544 544
         return $number;
@@ -547,10 +547,10 @@  discard block
 block discarded – undo
547 547
     private function insert_invoice() {
548 548
         global $wpdb;
549 549
 
550
-        if ( empty( $this->post_type ) ) {
551
-            if ( !empty( $this->ID ) && $post_type = get_post_type( $this->ID ) ) {
550
+        if (empty($this->post_type)) {
551
+            if (!empty($this->ID) && $post_type = get_post_type($this->ID)) {
552 552
                 $this->post_type = $post_type;
553
-            } else if ( !empty( $this->parent_invoice ) && $post_type = get_post_type( $this->parent_invoice ) ) {
553
+            } else if (!empty($this->parent_invoice) && $post_type = get_post_type($this->parent_invoice)) {
554 554
                 $this->post_type = $post_type;
555 555
             } else {
556 556
                 $this->post_type = 'wpi_invoice';
@@ -558,16 +558,16 @@  discard block
 block discarded – undo
558 558
         }
559 559
 
560 560
         $invoice_number = $this->ID;
561
-        if ( $number = $this->get_meta( '_wpinv_number', true ) ) {
561
+        if ($number = $this->get_meta('_wpinv_number', true)) {
562 562
             $invoice_number = $number;
563 563
         }
564 564
 
565
-        if ( empty( $this->key ) ) {
565
+        if (empty($this->key)) {
566 566
             $this->key = self::generate_key();
567 567
             $this->pending['key'] = $this->key;
568 568
         }
569 569
 
570
-        if ( empty( $this->ip ) ) {
570
+        if (empty($this->ip)) {
571 571
             $this->ip = wpinv_get_ip();
572 572
             $this->pending['ip'] = $this->ip;
573 573
         }
@@ -604,61 +604,61 @@  discard block
 block discarded – undo
604 604
                         'post_status'   => $this->status,
605 605
                         'post_author'   => $this->user_id,
606 606
                         'post_type'     => $this->post_type,
607
-                        'post_date'     => ! empty( $this->date ) && $this->date != '0000-00-00 00:00:00' ? $this->date : current_time( 'mysql' ),
608
-                        'post_date_gmt' => ! empty( $this->date ) && $this->date != '0000-00-00 00:00:00' ? get_gmt_from_date( $this->date ) : current_time( 'mysql', 1 ),
607
+                        'post_date'     => !empty($this->date) && $this->date != '0000-00-00 00:00:00' ? $this->date : current_time('mysql'),
608
+                        'post_date_gmt' => !empty($this->date) && $this->date != '0000-00-00 00:00:00' ? get_gmt_from_date($this->date) : current_time('mysql', 1),
609 609
                         'post_parent'   => $this->parent_invoice,
610 610
                     );
611
-        $args = apply_filters( 'wpinv_insert_invoice_args', $post_data, $this );
611
+        $args = apply_filters('wpinv_insert_invoice_args', $post_data, $this);
612 612
 
613 613
         // Create a blank invoice
614
-        if ( !empty( $this->ID ) ) {
615
-            $args['ID']         = $this->ID;
614
+        if (!empty($this->ID)) {
615
+            $args['ID'] = $this->ID;
616 616
 
617
-            $invoice_id = wp_update_post( $args, true );
617
+            $invoice_id = wp_update_post($args, true);
618 618
         } else {
619
-            $invoice_id = wp_insert_post( $args, true );
619
+            $invoice_id = wp_insert_post($args, true);
620 620
         }
621 621
 
622
-        if ( is_wp_error( $invoice_id ) ) {
622
+        if (is_wp_error($invoice_id)) {
623 623
             return false;
624 624
         }
625 625
 
626
-        if ( !empty( $invoice_id ) ) {
626
+        if (!empty($invoice_id)) {
627 627
             $this->ID  = $invoice_id;
628 628
             $this->_ID = $invoice_id;
629 629
 
630
-            $this->payment_meta = apply_filters( 'wpinv_payment_meta', $this->payment_meta, $payment_data );
631
-            if ( ! empty( $this->payment_meta['fees'] ) ) {
632
-                $this->fees = array_merge( $this->fees, $this->payment_meta['fees'] );
633
-                foreach( $this->fees as $fee ) {
634
-                    $this->increase_fees( $fee['amount'] );
630
+            $this->payment_meta = apply_filters('wpinv_payment_meta', $this->payment_meta, $payment_data);
631
+            if (!empty($this->payment_meta['fees'])) {
632
+                $this->fees = array_merge($this->fees, $this->payment_meta['fees']);
633
+                foreach ($this->fees as $fee) {
634
+                    $this->increase_fees($fee['amount']);
635 635
                 }
636 636
             }
637 637
 
638
-            $this->update_meta( '_wpinv_payment_meta', $this->payment_meta );            
638
+            $this->update_meta('_wpinv_payment_meta', $this->payment_meta);            
639 639
             $this->new = true;
640 640
         }
641 641
 
642 642
         return $this->ID;
643 643
     }
644 644
 
645
-    public function save( $setup = false ) {
645
+    public function save($setup = false) {
646 646
         global $wpi_session;
647 647
         
648 648
         $saved = false;
649
-        if ( empty( $this->items ) ) {
649
+        if (empty($this->items)) {
650 650
             return $saved; // Don't save empty invoice.
651 651
         }
652 652
         
653
-        if ( empty( $this->key ) ) {
653
+        if (empty($this->key)) {
654 654
             $this->key = self::generate_key();
655 655
             $this->pending['key'] = $this->key;
656 656
         }
657 657
         
658
-        if ( empty( $this->ID ) ) {
658
+        if (empty($this->ID)) {
659 659
             $invoice_id = $this->insert_invoice();
660 660
 
661
-            if ( false === $invoice_id ) {
661
+            if (false === $invoice_id) {
662 662
                 $saved = false;
663 663
             } else {
664 664
                 $this->ID = $invoice_id;
@@ -666,27 +666,27 @@  discard block
 block discarded – undo
666 666
         }
667 667
 
668 668
         // If we have something pending, let's save it
669
-        if ( !empty( $this->pending ) ) {
669
+        if (!empty($this->pending)) {
670 670
             $total_increase = 0;
671 671
             $total_decrease = 0;
672 672
 
673
-            foreach ( $this->pending as $key => $value ) {
674
-                switch( $key ) {
673
+            foreach ($this->pending as $key => $value) {
674
+                switch ($key) {
675 675
                     case 'items':
676 676
                         // Update totals for pending items
677
-                        foreach ( $this->pending[ $key ] as $item ) {
678
-                            switch( $item['action'] ) {
677
+                        foreach ($this->pending[$key] as $item) {
678
+                            switch ($item['action']) {
679 679
                                 case 'add':
680 680
                                     $price = $item['price'];
681 681
                                     $taxes = $item['tax'];
682 682
 
683
-                                    if ( 'publish' === $this->status ) {
683
+                                    if ('publish' === $this->status) {
684 684
                                         $total_increase += $price;
685 685
                                     }
686 686
                                     break;
687 687
 
688 688
                                 case 'remove':
689
-                                    if ( 'publish' === $this->status ) {
689
+                                    if ('publish' === $this->status) {
690 690
                                         $total_decrease += $item['price'];
691 691
                                     }
692 692
                                     break;
@@ -694,16 +694,16 @@  discard block
 block discarded – undo
694 694
                         }
695 695
                         break;
696 696
                     case 'fees':
697
-                        if ( 'publish' !== $this->status ) {
697
+                        if ('publish' !== $this->status) {
698 698
                             break;
699 699
                         }
700 700
 
701
-                        if ( empty( $this->pending[ $key ] ) ) {
701
+                        if (empty($this->pending[$key])) {
702 702
                             break;
703 703
                         }
704 704
 
705
-                        foreach ( $this->pending[ $key ] as $fee ) {
706
-                            switch( $fee['action'] ) {
705
+                        foreach ($this->pending[$key] as $fee) {
706
+                            switch ($fee['action']) {
707 707
                                 case 'add':
708 708
                                     $total_increase += $fee['amount'];
709 709
                                     break;
@@ -715,83 +715,83 @@  discard block
 block discarded – undo
715 715
                         }
716 716
                         break;
717 717
                     case 'status':
718
-                        $this->update_status( $this->status );
718
+                        $this->update_status($this->status);
719 719
                         break;
720 720
                     case 'gateway':
721
-                        $this->update_meta( '_wpinv_gateway', $this->gateway );
721
+                        $this->update_meta('_wpinv_gateway', $this->gateway);
722 722
                         break;
723 723
                     case 'mode':
724
-                        $this->update_meta( '_wpinv_mode', $this->mode );
724
+                        $this->update_meta('_wpinv_mode', $this->mode);
725 725
                         break;
726 726
                     case 'transaction_id':
727
-                        $this->update_meta( '_wpinv_transaction_id', $this->transaction_id );
727
+                        $this->update_meta('_wpinv_transaction_id', $this->transaction_id);
728 728
                         break;
729 729
                     case 'ip':
730
-                        $this->update_meta( '_wpinv_user_ip', $this->ip );
730
+                        $this->update_meta('_wpinv_user_ip', $this->ip);
731 731
                         break;
732 732
                     ///case 'user_id':
733 733
                         ///$this->update_meta( '_wpinv_user_id', $this->user_id );
734 734
                         ///$this->user_info['user_id'] = $this->user_id;
735 735
                         ///break;
736 736
                     case 'first_name':
737
-                        $this->update_meta( '_wpinv_first_name', $this->first_name );
737
+                        $this->update_meta('_wpinv_first_name', $this->first_name);
738 738
                         $this->user_info['first_name'] = $this->first_name;
739 739
                         break;
740 740
                     case 'last_name':
741
-                        $this->update_meta( '_wpinv_last_name', $this->last_name );
741
+                        $this->update_meta('_wpinv_last_name', $this->last_name);
742 742
                         $this->user_info['last_name'] = $this->last_name;
743 743
                         break;
744 744
                     case 'phone':
745
-                        $this->update_meta( '_wpinv_phone', $this->phone );
745
+                        $this->update_meta('_wpinv_phone', $this->phone);
746 746
                         $this->user_info['phone'] = $this->phone;
747 747
                         break;
748 748
                     case 'address':
749
-                        $this->update_meta( '_wpinv_address', $this->address );
749
+                        $this->update_meta('_wpinv_address', $this->address);
750 750
                         $this->user_info['address'] = $this->address;
751 751
                         break;
752 752
                     case 'city':
753
-                        $this->update_meta( '_wpinv_city', $this->city );
753
+                        $this->update_meta('_wpinv_city', $this->city);
754 754
                         $this->user_info['city'] = $this->city;
755 755
                         break;
756 756
                     case 'country':
757
-                        $this->update_meta( '_wpinv_country', $this->country );
757
+                        $this->update_meta('_wpinv_country', $this->country);
758 758
                         $this->user_info['country'] = $this->country;
759 759
                         break;
760 760
                     case 'state':
761
-                        $this->update_meta( '_wpinv_state', $this->state );
761
+                        $this->update_meta('_wpinv_state', $this->state);
762 762
                         $this->user_info['state'] = $this->state;
763 763
                         break;
764 764
                     case 'zip':
765
-                        $this->update_meta( '_wpinv_zip', $this->zip );
765
+                        $this->update_meta('_wpinv_zip', $this->zip);
766 766
                         $this->user_info['zip'] = $this->zip;
767 767
                         break;
768 768
                     case 'company':
769
-                        $this->update_meta( '_wpinv_company', $this->company );
769
+                        $this->update_meta('_wpinv_company', $this->company);
770 770
                         $this->user_info['company'] = $this->company;
771 771
                         break;
772 772
                     case 'vat_number':
773
-                        $this->update_meta( '_wpinv_vat_number', $this->vat_number );
773
+                        $this->update_meta('_wpinv_vat_number', $this->vat_number);
774 774
                         $this->user_info['vat_number'] = $this->vat_number;
775 775
                         
776
-                        $vat_info = $wpi_session->get( 'user_vat_data' );
777
-                        if ( $this->vat_number && !empty( $vat_info ) && isset( $vat_info['number'] ) && isset( $vat_info['valid'] ) && $vat_info['number'] == $this->vat_number ) {
778
-                            $adddress_confirmed = isset( $vat_info['adddress_confirmed'] ) ? $vat_info['adddress_confirmed'] : false;
779
-                            $this->update_meta( '_wpinv_adddress_confirmed', (bool)$adddress_confirmed );
776
+                        $vat_info = $wpi_session->get('user_vat_data');
777
+                        if ($this->vat_number && !empty($vat_info) && isset($vat_info['number']) && isset($vat_info['valid']) && $vat_info['number'] == $this->vat_number) {
778
+                            $adddress_confirmed = isset($vat_info['adddress_confirmed']) ? $vat_info['adddress_confirmed'] : false;
779
+                            $this->update_meta('_wpinv_adddress_confirmed', (bool)$adddress_confirmed);
780 780
                             $this->user_info['adddress_confirmed'] = (bool)$adddress_confirmed;
781 781
                         }
782 782
     
783 783
                         break;
784 784
                     case 'vat_rate':
785
-                        $this->update_meta( '_wpinv_vat_rate', $this->vat_rate );
785
+                        $this->update_meta('_wpinv_vat_rate', $this->vat_rate);
786 786
                         $this->user_info['vat_rate'] = $this->vat_rate;
787 787
                         break;
788 788
                     case 'adddress_confirmed':
789
-                        $this->update_meta( '_wpinv_adddress_confirmed', $this->adddress_confirmed );
789
+                        $this->update_meta('_wpinv_adddress_confirmed', $this->adddress_confirmed);
790 790
                         $this->user_info['adddress_confirmed'] = $this->adddress_confirmed;
791 791
                         break;
792 792
                     
793 793
                     case 'key':
794
-                        $this->update_meta( '_wpinv_key', $this->key );
794
+                        $this->update_meta('_wpinv_key', $this->key);
795 795
                         break;
796 796
                     case 'date':
797 797
                         $args = array(
@@ -800,49 +800,49 @@  discard block
 block discarded – undo
800 800
                             'edit_date' => true,
801 801
                         );
802 802
 
803
-                        wp_update_post( $args );
803
+                        wp_update_post($args);
804 804
                         break;
805 805
                     case 'due_date':
806
-                        if ( empty( $this->due_date ) ) {
806
+                        if (empty($this->due_date)) {
807 807
                             $this->due_date = 'none';
808 808
                         }
809 809
                         
810
-                        $this->update_meta( '_wpinv_due_date', $this->due_date );
810
+                        $this->update_meta('_wpinv_due_date', $this->due_date);
811 811
                         break;
812 812
                     case 'completed_date':
813
-                        $this->update_meta( '_wpinv_completed_date', $this->completed_date );
813
+                        $this->update_meta('_wpinv_completed_date', $this->completed_date);
814 814
                         break;
815 815
                     case 'discounts':
816
-                        if ( ! is_array( $this->discounts ) ) {
817
-                            $this->discounts = explode( ',', $this->discounts );
816
+                        if (!is_array($this->discounts)) {
817
+                            $this->discounts = explode(',', $this->discounts);
818 818
                         }
819 819
 
820
-                        $this->user_info['discount'] = implode( ',', $this->discounts );
820
+                        $this->user_info['discount'] = implode(',', $this->discounts);
821 821
                         break;
822 822
                     case 'discount':
823
-                        $this->update_meta( '_wpinv_discount', wpinv_round_amount( $this->discount ) );
823
+                        $this->update_meta('_wpinv_discount', wpinv_round_amount($this->discount));
824 824
                         break;
825 825
                     case 'discount_code':
826
-                        $this->update_meta( '_wpinv_discount_code', $this->discount_code );
826
+                        $this->update_meta('_wpinv_discount_code', $this->discount_code);
827 827
                         break;
828 828
                     case 'parent_invoice':
829 829
                         $args = array(
830 830
                             'ID'          => $this->ID,
831 831
                             'post_parent' => $this->parent_invoice,
832 832
                         );
833
-                        wp_update_post( $args );
833
+                        wp_update_post($args);
834 834
                         break;
835 835
                     default:
836
-                        do_action( 'wpinv_save', $this, $key );
836
+                        do_action('wpinv_save', $this, $key);
837 837
                         break;
838 838
                 }
839 839
             }
840 840
 
841
-            $this->update_meta( '_wpinv_subtotal', wpinv_round_amount( $this->subtotal ) );
842
-            $this->update_meta( '_wpinv_total', wpinv_round_amount( $this->total ) );
843
-            $this->update_meta( '_wpinv_tax', wpinv_round_amount( $this->tax ) );
841
+            $this->update_meta('_wpinv_subtotal', wpinv_round_amount($this->subtotal));
842
+            $this->update_meta('_wpinv_total', wpinv_round_amount($this->total));
843
+            $this->update_meta('_wpinv_tax', wpinv_round_amount($this->tax));
844 844
             
845
-            $this->items    = array_values( $this->items );
845
+            $this->items = array_values($this->items);
846 846
             
847 847
             $new_meta = array(
848 848
                 'items'         => $this->items,
@@ -853,12 +853,12 @@  discard block
 block discarded – undo
853 853
             );
854 854
             
855 855
             $meta        = $this->get_meta();
856
-            $merged_meta = array_merge( $meta, $new_meta );
856
+            $merged_meta = array_merge($meta, $new_meta);
857 857
 
858 858
             // Only save the payment meta if it's changed
859
-            if ( md5( serialize( $meta ) ) !== md5( serialize( $merged_meta) ) ) {
860
-                $updated     = $this->update_meta( '_wpinv_payment_meta', $merged_meta );
861
-                if ( false !== $updated ) {
859
+            if (md5(serialize($meta)) !== md5(serialize($merged_meta))) {
860
+                $updated = $this->update_meta('_wpinv_payment_meta', $merged_meta);
861
+                if (false !== $updated) {
862 862
                     $saved = true;
863 863
                 }
864 864
             }
@@ -866,15 +866,15 @@  discard block
 block discarded – undo
866 866
             $this->pending = array();
867 867
             $saved         = true;
868 868
         } else {
869
-            $this->update_meta( '_wpinv_subtotal', wpinv_round_amount( $this->subtotal ) );
870
-            $this->update_meta( '_wpinv_total', wpinv_round_amount( $this->total ) );
871
-            $this->update_meta( '_wpinv_tax', wpinv_round_amount( $this->tax ) );
869
+            $this->update_meta('_wpinv_subtotal', wpinv_round_amount($this->subtotal));
870
+            $this->update_meta('_wpinv_total', wpinv_round_amount($this->total));
871
+            $this->update_meta('_wpinv_tax', wpinv_round_amount($this->tax));
872 872
         }
873 873
         
874
-        do_action( 'wpinv_invoice_save', $this, $saved );
874
+        do_action('wpinv_invoice_save', $this, $saved);
875 875
 
876
-        if ( true === $saved || $setup ) {
877
-            $this->setup_invoice( $this->ID );
876
+        if (true === $saved || $setup) {
877
+            $this->setup_invoice($this->ID);
878 878
         }
879 879
         
880 880
         $this->refresh_item_ids();
@@ -882,7 +882,7 @@  discard block
 block discarded – undo
882 882
         return $saved;
883 883
     }
884 884
     
885
-    public function add_fee( $args, $global = true ) {
885
+    public function add_fee($args, $global = true) {
886 886
         $default_args = array(
887 887
             'label'       => '',
888 888
             'amount'      => 0,
@@ -892,75 +892,75 @@  discard block
 block discarded – undo
892 892
             'item_id'     => 0,
893 893
         );
894 894
 
895
-        $fee = wp_parse_args( $args, $default_args );
895
+        $fee = wp_parse_args($args, $default_args);
896 896
         
897
-        if ( !empty( $fee['label'] ) ) {
897
+        if (!empty($fee['label'])) {
898 898
             return false;
899 899
         }
900 900
         
901
-        $fee['id']  = sanitize_title( $fee['label'] );
901
+        $fee['id'] = sanitize_title($fee['label']);
902 902
         
903
-        $this->fees[]               = $fee;
903
+        $this->fees[] = $fee;
904 904
         
905 905
         $added_fee               = $fee;
906 906
         $added_fee['action']     = 'add';
907 907
         $this->pending['fees'][] = $added_fee;
908
-        reset( $this->fees );
908
+        reset($this->fees);
909 909
 
910
-        $this->increase_fees( $fee['amount'] );
910
+        $this->increase_fees($fee['amount']);
911 911
         return true;
912 912
     }
913 913
 
914
-    public function remove_fee( $key ) {
914
+    public function remove_fee($key) {
915 915
         $removed = false;
916 916
 
917
-        if ( is_numeric( $key ) ) {
918
-            $removed = $this->remove_fee_by( 'index', $key );
917
+        if (is_numeric($key)) {
918
+            $removed = $this->remove_fee_by('index', $key);
919 919
         }
920 920
 
921 921
         return $removed;
922 922
     }
923 923
 
924
-    public function remove_fee_by( $key, $value, $global = false ) {
925
-        $allowed_fee_keys = apply_filters( 'wpinv_fee_keys', array(
924
+    public function remove_fee_by($key, $value, $global = false) {
925
+        $allowed_fee_keys = apply_filters('wpinv_fee_keys', array(
926 926
             'index', 'label', 'amount', 'type',
927
-        ) );
927
+        ));
928 928
 
929
-        if ( ! in_array( $key, $allowed_fee_keys ) ) {
929
+        if (!in_array($key, $allowed_fee_keys)) {
930 930
             return false;
931 931
         }
932 932
 
933 933
         $removed = false;
934
-        if ( 'index' === $key && array_key_exists( $value, $this->fees ) ) {
935
-            $removed_fee             = $this->fees[ $value ];
934
+        if ('index' === $key && array_key_exists($value, $this->fees)) {
935
+            $removed_fee             = $this->fees[$value];
936 936
             $removed_fee['action']   = 'remove';
937 937
             $this->pending['fees'][] = $removed_fee;
938 938
 
939
-            $this->decrease_fees( $removed_fee['amount'] );
939
+            $this->decrease_fees($removed_fee['amount']);
940 940
 
941
-            unset( $this->fees[ $value ] );
941
+            unset($this->fees[$value]);
942 942
             $removed = true;
943
-        } else if ( 'index' !== $key ) {
944
-            foreach ( $this->fees as $index => $fee ) {
945
-                if ( isset( $fee[ $key ] ) && $fee[ $key ] == $value ) {
943
+        } else if ('index' !== $key) {
944
+            foreach ($this->fees as $index => $fee) {
945
+                if (isset($fee[$key]) && $fee[$key] == $value) {
946 946
                     $removed_fee             = $fee;
947 947
                     $removed_fee['action']   = 'remove';
948 948
                     $this->pending['fees'][] = $removed_fee;
949 949
 
950
-                    $this->decrease_fees( $removed_fee['amount'] );
950
+                    $this->decrease_fees($removed_fee['amount']);
951 951
 
952
-                    unset( $this->fees[ $index ] );
952
+                    unset($this->fees[$index]);
953 953
                     $removed = true;
954 954
 
955
-                    if ( false === $global ) {
955
+                    if (false === $global) {
956 956
                         break;
957 957
                     }
958 958
                 }
959 959
             }
960 960
         }
961 961
 
962
-        if ( true === $removed ) {
963
-            $this->fees = array_values( $this->fees );
962
+        if (true === $removed) {
963
+            $this->fees = array_values($this->fees);
964 964
         }
965 965
 
966 966
         return $removed;
@@ -968,35 +968,35 @@  discard block
 block discarded – undo
968 968
 
969 969
     
970 970
 
971
-    public function add_note( $note = '', $customer_type = false, $added_by_user = false, $system = false ) {
971
+    public function add_note($note = '', $customer_type = false, $added_by_user = false, $system = false) {
972 972
         // Bail if no note specified
973
-        if( !$note ) {
973
+        if (!$note) {
974 974
             return false;
975 975
         }
976 976
 
977
-        if ( empty( $this->ID ) )
977
+        if (empty($this->ID))
978 978
             return false;
979 979
         
980
-        if ( ( ( is_user_logged_in() && current_user_can( 'manage_options' ) ) || $added_by_user ) && !$system ) {
981
-            $user                 = get_user_by( 'id', get_current_user_id() );
980
+        if (((is_user_logged_in() && current_user_can('manage_options')) || $added_by_user) && !$system) {
981
+            $user                 = get_user_by('id', get_current_user_id());
982 982
             $comment_author       = $user->display_name;
983 983
             $comment_author_email = $user->user_email;
984 984
         } else {
985
-            $comment_author       = __( 'System', 'invoicing' );
986
-            $comment_author_email = strtolower( __( 'System', 'invoicing' ) ) . '@';
987
-            $comment_author_email .= isset( $_SERVER['HTTP_HOST'] ) ? str_replace( 'www.', '', $_SERVER['HTTP_HOST'] ) : 'noreply.com';
988
-            $comment_author_email = sanitize_email( $comment_author_email );
985
+            $comment_author       = __('System', 'invoicing');
986
+            $comment_author_email = strtolower(__('System', 'invoicing')) . '@';
987
+            $comment_author_email .= isset($_SERVER['HTTP_HOST']) ? str_replace('www.', '', $_SERVER['HTTP_HOST']) : 'noreply.com';
988
+            $comment_author_email = sanitize_email($comment_author_email);
989 989
         }
990 990
 
991
-        do_action( 'wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type );
991
+        do_action('wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type);
992 992
 
993
-        $note_id = wp_insert_comment( wp_filter_comment( array(
993
+        $note_id = wp_insert_comment(wp_filter_comment(array(
994 994
             'comment_post_ID'      => $this->ID,
995 995
             'comment_content'      => $note,
996 996
             'comment_agent'        => 'WPInvoicing',
997 997
             'user_id'              => is_admin() ? get_current_user_id() : 0,
998
-            'comment_date'         => current_time( 'mysql' ),
999
-            'comment_date_gmt'     => current_time( 'mysql', 1 ),
998
+            'comment_date'         => current_time('mysql'),
999
+            'comment_date_gmt'     => current_time('mysql', 1),
1000 1000
             'comment_approved'     => 1,
1001 1001
             'comment_parent'       => 0,
1002 1002
             'comment_author'       => $comment_author,
@@ -1004,53 +1004,53 @@  discard block
 block discarded – undo
1004 1004
             'comment_author_url'   => '',
1005 1005
             'comment_author_email' => $comment_author_email,
1006 1006
             'comment_type'         => 'wpinv_note'
1007
-        ) ) );
1007
+        )));
1008 1008
 
1009
-        do_action( 'wpinv_insert_payment_note', $note_id, $this->ID, $note );
1009
+        do_action('wpinv_insert_payment_note', $note_id, $this->ID, $note);
1010 1010
         
1011
-        if ( $customer_type ) {
1012
-            add_comment_meta( $note_id, '_wpi_customer_note', 1 );
1011
+        if ($customer_type) {
1012
+            add_comment_meta($note_id, '_wpi_customer_note', 1);
1013 1013
 
1014
-            do_action( 'wpinv_new_customer_note', array( 'invoice_id' => $this->ID, 'user_note' => $note ) );
1014
+            do_action('wpinv_new_customer_note', array('invoice_id' => $this->ID, 'user_note' => $note));
1015 1015
         }
1016 1016
 
1017 1017
         return $note_id;
1018 1018
     }
1019 1019
 
1020
-    private function increase_subtotal( $amount = 0.00 ) {
1021
-        $amount          = (float) $amount;
1020
+    private function increase_subtotal($amount = 0.00) {
1021
+        $amount          = (float)$amount;
1022 1022
         $this->subtotal += $amount;
1023
-        $this->subtotal  = wpinv_round_amount( $this->subtotal );
1023
+        $this->subtotal  = wpinv_round_amount($this->subtotal);
1024 1024
 
1025 1025
         $this->recalculate_total();
1026 1026
     }
1027 1027
 
1028
-    private function decrease_subtotal( $amount = 0.00 ) {
1029
-        $amount          = (float) $amount;
1028
+    private function decrease_subtotal($amount = 0.00) {
1029
+        $amount          = (float)$amount;
1030 1030
         $this->subtotal -= $amount;
1031
-        $this->subtotal  = wpinv_round_amount( $this->subtotal );
1031
+        $this->subtotal  = wpinv_round_amount($this->subtotal);
1032 1032
 
1033
-        if ( $this->subtotal < 0 ) {
1033
+        if ($this->subtotal < 0) {
1034 1034
             $this->subtotal = 0;
1035 1035
         }
1036 1036
 
1037 1037
         $this->recalculate_total();
1038 1038
     }
1039 1039
 
1040
-    private function increase_fees( $amount = 0.00 ) {
1040
+    private function increase_fees($amount = 0.00) {
1041 1041
         $amount            = (float)$amount;
1042 1042
         $this->fees_total += $amount;
1043
-        $this->fees_total  = wpinv_round_amount( $this->fees_total );
1043
+        $this->fees_total  = wpinv_round_amount($this->fees_total);
1044 1044
 
1045 1045
         $this->recalculate_total();
1046 1046
     }
1047 1047
 
1048
-    private function decrease_fees( $amount = 0.00 ) {
1049
-        $amount            = (float) $amount;
1048
+    private function decrease_fees($amount = 0.00) {
1049
+        $amount            = (float)$amount;
1050 1050
         $this->fees_total -= $amount;
1051
-        $this->fees_total  = wpinv_round_amount( $this->fees_total );
1051
+        $this->fees_total  = wpinv_round_amount($this->fees_total);
1052 1052
 
1053
-        if ( $this->fees_total < 0 ) {
1053
+        if ($this->fees_total < 0) {
1054 1054
             $this->fees_total = 0;
1055 1055
         }
1056 1056
 
@@ -1061,54 +1061,54 @@  discard block
 block discarded – undo
1061 1061
         global $wpi_nosave;
1062 1062
         
1063 1063
         $this->total = $this->subtotal + $this->tax + $this->fees_total;
1064
-        $this->total = wpinv_round_amount( $this->total );
1064
+        $this->total = wpinv_round_amount($this->total);
1065 1065
         
1066
-        do_action( 'wpinv_invoice_recalculate_total', $this, $wpi_nosave );
1066
+        do_action('wpinv_invoice_recalculate_total', $this, $wpi_nosave);
1067 1067
     }
1068 1068
     
1069
-    public function increase_tax( $amount = 0.00 ) {
1070
-        $amount       = (float) $amount;
1069
+    public function increase_tax($amount = 0.00) {
1070
+        $amount       = (float)$amount;
1071 1071
         $this->tax   += $amount;
1072 1072
 
1073 1073
         $this->recalculate_total();
1074 1074
     }
1075 1075
 
1076
-    public function decrease_tax( $amount = 0.00 ) {
1077
-        $amount     = (float) $amount;
1076
+    public function decrease_tax($amount = 0.00) {
1077
+        $amount     = (float)$amount;
1078 1078
         $this->tax -= $amount;
1079 1079
 
1080
-        if ( $this->tax < 0 ) {
1080
+        if ($this->tax < 0) {
1081 1081
             $this->tax = 0;
1082 1082
         }
1083 1083
 
1084 1084
         $this->recalculate_total();
1085 1085
     }
1086 1086
 
1087
-    public function update_status( $new_status = false, $note = '', $manual = false ) {
1088
-        $old_status = ! empty( $this->old_status ) ? $this->old_status : get_post_status( $this->ID );
1087
+    public function update_status($new_status = false, $note = '', $manual = false) {
1088
+        $old_status = !empty($this->old_status) ? $this->old_status : get_post_status($this->ID);
1089 1089
         
1090
-        if ( $old_status === $new_status && in_array( $new_status, array_keys( wpinv_get_invoice_statuses() ) ) ) {
1090
+        if ($old_status === $new_status && in_array($new_status, array_keys(wpinv_get_invoice_statuses()))) {
1091 1091
             return false; // Don't permit status changes that aren't changes
1092 1092
         }
1093 1093
 
1094
-        $do_change = apply_filters( 'wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status );
1094
+        $do_change = apply_filters('wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status);
1095 1095
         $updated = false;
1096 1096
 
1097
-        if ( $do_change ) {
1098
-            do_action( 'wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status );
1097
+        if ($do_change) {
1098
+            do_action('wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status);
1099 1099
 
1100 1100
             $update_post_data                   = array();
1101 1101
             $update_post_data['ID']             = $this->ID;
1102 1102
             $update_post_data['post_status']    = $new_status;
1103
-            $update_post_data['edit_date']      = current_time( 'mysql', 0 );
1104
-            $update_post_data['edit_date_gmt']  = current_time( 'mysql', 1 );
1103
+            $update_post_data['edit_date']      = current_time('mysql', 0);
1104
+            $update_post_data['edit_date_gmt']  = current_time('mysql', 1);
1105 1105
             
1106
-            $update_post_data = apply_filters( 'wpinv_update_invoice_status_fields', $update_post_data, $this->ID );
1106
+            $update_post_data = apply_filters('wpinv_update_invoice_status_fields', $update_post_data, $this->ID);
1107 1107
 
1108
-            $updated = wp_update_post( $update_post_data );     
1108
+            $updated = wp_update_post($update_post_data);     
1109 1109
            
1110 1110
             // Process any specific status functions
1111
-            switch( $new_status ) {
1111
+            switch ($new_status) {
1112 1112
                 case 'wpi-refunded':
1113 1113
                     $this->process_refund();
1114 1114
                     break;
@@ -1121,9 +1121,9 @@  discard block
 block discarded – undo
1121 1121
             }
1122 1122
             
1123 1123
             // Status was changed.
1124
-            do_action( 'wpinv_status_' . $new_status, $this->ID, $old_status );
1125
-            do_action( 'wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status );
1126
-            do_action( 'wpinv_update_status', $this->ID, $new_status, $old_status );
1124
+            do_action('wpinv_status_' . $new_status, $this->ID, $old_status);
1125
+            do_action('wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status);
1126
+            do_action('wpinv_update_status', $this->ID, $new_status, $old_status);
1127 1127
         }
1128 1128
 
1129 1129
         return $updated;
@@ -1137,72 +1137,72 @@  discard block
 block discarded – undo
1137 1137
         $this->save();
1138 1138
     }
1139 1139
 
1140
-    public function update_meta( $meta_key = '', $meta_value = '', $prev_value = '' ) {
1141
-        if ( empty( $meta_key ) ) {
1140
+    public function update_meta($meta_key = '', $meta_value = '', $prev_value = '') {
1141
+        if (empty($meta_key)) {
1142 1142
             return false;
1143 1143
         }
1144 1144
 
1145
-        if ( $meta_key == 'key' || $meta_key == 'date' ) {
1145
+        if ($meta_key == 'key' || $meta_key == 'date') {
1146 1146
             $current_meta = $this->get_meta();
1147
-            $current_meta[ $meta_key ] = $meta_value;
1147
+            $current_meta[$meta_key] = $meta_value;
1148 1148
 
1149 1149
             $meta_key     = '_wpinv_payment_meta';
1150 1150
             $meta_value   = $current_meta;
1151 1151
         }
1152 1152
 
1153
-        $meta_value = apply_filters( 'wpinv_update_payment_meta_' . $meta_key, $meta_value, $this->ID );
1153
+        $meta_value = apply_filters('wpinv_update_payment_meta_' . $meta_key, $meta_value, $this->ID);
1154 1154
         
1155
-        if ( $meta_key == '_wpinv_completed_date' && !empty( $meta_value ) ) {
1155
+        if ($meta_key == '_wpinv_completed_date' && !empty($meta_value)) {
1156 1156
             $args = array(
1157 1157
                 'ID'                => $this->ID,
1158 1158
                 'post_date'         => $meta_value,
1159 1159
                 'edit_date'         => true,
1160
-                'post_date_gmt'     => get_gmt_from_date( $meta_value ),
1160
+                'post_date_gmt'     => get_gmt_from_date($meta_value),
1161 1161
                 'post_modified'     => $meta_value,
1162
-                'post_modified_gmt' => get_gmt_from_date( $meta_value )
1162
+                'post_modified_gmt' => get_gmt_from_date($meta_value)
1163 1163
             );
1164
-            wp_update_post( $args );
1164
+            wp_update_post($args);
1165 1165
         }
1166 1166
         
1167
-        return update_post_meta( $this->ID, $meta_key, $meta_value, $prev_value );
1167
+        return update_post_meta($this->ID, $meta_key, $meta_value, $prev_value);
1168 1168
     }
1169 1169
 
1170 1170
     private function process_refund() {
1171 1171
         $process_refund = true;
1172 1172
 
1173 1173
         // If the payment was not in publish, don't decrement stats as they were never incremented
1174
-        if ( 'publish' != $this->old_status || 'wpi-refunded' != $this->status ) {
1174
+        if ('publish' != $this->old_status || 'wpi-refunded' != $this->status) {
1175 1175
             $process_refund = false;
1176 1176
         }
1177 1177
 
1178 1178
         // Allow extensions to filter for their own payment types, Example: Recurring Payments
1179
-        $process_refund = apply_filters( 'wpinv_should_process_refund', $process_refund, $this );
1179
+        $process_refund = apply_filters('wpinv_should_process_refund', $process_refund, $this);
1180 1180
 
1181
-        if ( false === $process_refund ) {
1181
+        if (false === $process_refund) {
1182 1182
             return;
1183 1183
         }
1184 1184
 
1185
-        do_action( 'wpinv_pre_refund_invoice', $this );
1185
+        do_action('wpinv_pre_refund_invoice', $this);
1186 1186
         
1187
-        $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_refund', true, $this );
1188
-        $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_refund', true, $this );
1189
-        $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_refund', true, $this );
1187
+        $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_refund', true, $this);
1188
+        $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_refund', true, $this);
1189
+        $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_refund', true, $this);
1190 1190
         
1191
-        do_action( 'wpinv_post_refund_invoice', $this );
1191
+        do_action('wpinv_post_refund_invoice', $this);
1192 1192
     }
1193 1193
 
1194 1194
     private function process_failure() {
1195 1195
         $discounts = $this->discounts;
1196
-        if ( empty( $discounts ) ) {
1196
+        if (empty($discounts)) {
1197 1197
             return;
1198 1198
         }
1199 1199
 
1200
-        if ( ! is_array( $discounts ) ) {
1201
-            $discounts = array_map( 'trim', explode( ',', $discounts ) );
1200
+        if (!is_array($discounts)) {
1201
+            $discounts = array_map('trim', explode(',', $discounts));
1202 1202
         }
1203 1203
 
1204
-        foreach ( $discounts as $discount ) {
1205
-            wpinv_decrease_discount_usage( $discount );
1204
+        foreach ($discounts as $discount) {
1205
+            wpinv_decrease_discount_usage($discount);
1206 1206
         }
1207 1207
     }
1208 1208
     
@@ -1210,92 +1210,92 @@  discard block
 block discarded – undo
1210 1210
         $process_pending = true;
1211 1211
 
1212 1212
         // If the payment was not in publish or revoked status, don't decrement stats as they were never incremented
1213
-        if ( ( 'publish' != $this->old_status && 'revoked' != $this->old_status ) || 'wpi-pending' != $this->status ) {
1213
+        if (('publish' != $this->old_status && 'revoked' != $this->old_status) || 'wpi-pending' != $this->status) {
1214 1214
             $process_pending = false;
1215 1215
         }
1216 1216
 
1217 1217
         // Allow extensions to filter for their own payment types, Example: Recurring Payments
1218
-        $process_pending = apply_filters( 'wpinv_should_process_pending', $process_pending, $this );
1218
+        $process_pending = apply_filters('wpinv_should_process_pending', $process_pending, $this);
1219 1219
 
1220
-        if ( false === $process_pending ) {
1220
+        if (false === $process_pending) {
1221 1221
             return;
1222 1222
         }
1223 1223
 
1224
-        $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_pending', true, $this );
1225
-        $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_pending', true, $this );
1226
-        $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_pending', true, $this );
1224
+        $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_pending', true, $this);
1225
+        $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_pending', true, $this);
1226
+        $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_pending', true, $this);
1227 1227
 
1228 1228
         $this->completed_date = '';
1229
-        $this->update_meta( '_wpinv_completed_date', '' );
1229
+        $this->update_meta('_wpinv_completed_date', '');
1230 1230
     }
1231 1231
     
1232 1232
     // get data
1233
-    public function get_meta( $meta_key = '_wpinv_payment_meta', $single = true ) {
1234
-        $meta = get_post_meta( $this->ID, $meta_key, $single );
1233
+    public function get_meta($meta_key = '_wpinv_payment_meta', $single = true) {
1234
+        $meta = get_post_meta($this->ID, $meta_key, $single);
1235 1235
 
1236
-        if ( $meta_key === '_wpinv_payment_meta' ) {
1236
+        if ($meta_key === '_wpinv_payment_meta') {
1237 1237
 
1238
-            if(!is_array($meta)){$meta = array();} // we need this to be an array so make sure it is.
1238
+            if (!is_array($meta)) {$meta = array(); } // we need this to be an array so make sure it is.
1239 1239
 
1240
-            if ( empty( $meta['key'] ) ) {
1240
+            if (empty($meta['key'])) {
1241 1241
                 $meta['key'] = $this->setup_invoice_key();
1242 1242
             }
1243 1243
 
1244
-            if ( empty( $meta['date'] ) ) {
1245
-                $meta['date'] = get_post_field( 'post_date', $this->ID );
1244
+            if (empty($meta['date'])) {
1245
+                $meta['date'] = get_post_field('post_date', $this->ID);
1246 1246
             }
1247 1247
         }
1248 1248
 
1249
-        $meta = apply_filters( 'wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID );
1249
+        $meta = apply_filters('wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID);
1250 1250
 
1251
-        return apply_filters( 'wpinv_get_invoice_meta', $meta, $this->ID, $meta_key );
1251
+        return apply_filters('wpinv_get_invoice_meta', $meta, $this->ID, $meta_key);
1252 1252
     }
1253 1253
     
1254 1254
     public function get_description() {
1255
-        $post = get_post( $this->ID );
1255
+        $post = get_post($this->ID);
1256 1256
         
1257
-        $description = !empty( $post ) ? $post->post_content : '';
1258
-        return apply_filters( 'wpinv_get_description', $description, $this->ID, $this );
1257
+        $description = !empty($post) ? $post->post_content : '';
1258
+        return apply_filters('wpinv_get_description', $description, $this->ID, $this);
1259 1259
     }
1260 1260
     
1261
-    public function get_status( $nicename = false ) {
1262
-        if ( !$nicename ) {
1261
+    public function get_status($nicename = false) {
1262
+        if (!$nicename) {
1263 1263
             $status = $this->status;
1264 1264
         } else {
1265 1265
             $status = $this->status_nicename;
1266 1266
         }
1267 1267
         
1268
-        return apply_filters( 'wpinv_get_status', $status, $nicename, $this->ID, $this );
1268
+        return apply_filters('wpinv_get_status', $status, $nicename, $this->ID, $this);
1269 1269
     }
1270 1270
     
1271 1271
     public function get_cart_details() {
1272
-        return apply_filters( 'wpinv_cart_details', $this->cart_details, $this->ID, $this );
1272
+        return apply_filters('wpinv_cart_details', $this->cart_details, $this->ID, $this);
1273 1273
     }
1274 1274
     
1275
-    public function get_subtotal( $currency = false ) {
1276
-        $subtotal = wpinv_round_amount( $this->subtotal );
1275
+    public function get_subtotal($currency = false) {
1276
+        $subtotal = wpinv_round_amount($this->subtotal);
1277 1277
         
1278
-        if ( $currency ) {
1279
-            $subtotal = wpinv_price( wpinv_format_amount( $subtotal, NULL, !$currency ), $this->get_currency() );
1278
+        if ($currency) {
1279
+            $subtotal = wpinv_price(wpinv_format_amount($subtotal, NULL, !$currency), $this->get_currency());
1280 1280
         }
1281 1281
         
1282
-        return apply_filters( 'wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency );
1282
+        return apply_filters('wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency);
1283 1283
     }
1284 1284
     
1285
-    public function get_total( $currency = false ) {        
1286
-        if ( $this->is_free_trial() ) {
1287
-            $total = wpinv_round_amount( 0 );
1285
+    public function get_total($currency = false) {        
1286
+        if ($this->is_free_trial()) {
1287
+            $total = wpinv_round_amount(0);
1288 1288
         } else {
1289
-            $total = wpinv_round_amount( $this->total );
1289
+            $total = wpinv_round_amount($this->total);
1290 1290
         }
1291
-        if ( $currency ) {
1292
-            $total = wpinv_price( wpinv_format_amount( $total, NULL, !$currency ), $this->get_currency() );
1291
+        if ($currency) {
1292
+            $total = wpinv_price(wpinv_format_amount($total, NULL, !$currency), $this->get_currency());
1293 1293
         }
1294 1294
         
1295
-        return apply_filters( 'wpinv_get_invoice_total', $total, $this->ID, $this, $currency );
1295
+        return apply_filters('wpinv_get_invoice_total', $total, $this->ID, $this, $currency);
1296 1296
     }
1297 1297
     
1298
-    public function get_recurring_details( $field = '', $currency = false ) {        
1298
+    public function get_recurring_details($field = '', $currency = false) {        
1299 1299
         $data                 = array();
1300 1300
         $data['cart_details'] = $this->cart_details;
1301 1301
         $data['subtotal']     = $this->get_subtotal();
@@ -1303,45 +1303,45 @@  discard block
 block discarded – undo
1303 1303
         $data['tax']          = $this->get_tax();
1304 1304
         $data['total']        = $this->get_total();
1305 1305
     
1306
-        if ( !empty( $this->cart_details ) && ( $this->is_parent() || $this->is_renewal() ) ) {
1306
+        if (!empty($this->cart_details) && ($this->is_parent() || $this->is_renewal())) {
1307 1307
             $is_free_trial = $this->is_free_trial();
1308
-            $discounts = $this->get_discounts( true );
1308
+            $discounts = $this->get_discounts(true);
1309 1309
             
1310
-            if ( $is_free_trial || !empty( $discounts ) ) {
1310
+            if ($is_free_trial || !empty($discounts)) {
1311 1311
                 $first_use_only = false;
1312 1312
                 
1313
-                if ( !empty( $discounts ) ) {
1314
-                    foreach ( $discounts as $key => $code ) {
1315
-                        if ( wpinv_discount_is_recurring( $code, true ) ) {
1313
+                if (!empty($discounts)) {
1314
+                    foreach ($discounts as $key => $code) {
1315
+                        if (wpinv_discount_is_recurring($code, true)) {
1316 1316
                             $first_use_only = true;
1317 1317
                             break;
1318 1318
                         }
1319 1319
                     }
1320 1320
                 }
1321 1321
                     
1322
-                if ( !$first_use_only ) {
1323
-                    $data['subtotal'] = wpinv_round_amount( $this->subtotal );
1324
-                    $data['discount'] = wpinv_round_amount( $this->discount );
1325
-                    $data['tax']      = wpinv_round_amount( $this->tax );
1326
-                    $data['total']    = wpinv_round_amount( $this->total );
1322
+                if (!$first_use_only) {
1323
+                    $data['subtotal'] = wpinv_round_amount($this->subtotal);
1324
+                    $data['discount'] = wpinv_round_amount($this->discount);
1325
+                    $data['tax']      = wpinv_round_amount($this->tax);
1326
+                    $data['total']    = wpinv_round_amount($this->total);
1327 1327
                 } else {
1328 1328
                     $cart_subtotal   = 0;
1329 1329
                     $cart_discount   = 0;
1330 1330
                     $cart_tax        = 0;
1331 1331
 
1332
-                    foreach ( $this->cart_details as $key => $item ) {
1333
-                        $item_quantity  = $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1;
1334
-                        $item_subtotal  = !empty( $item['subtotal'] ) ? $item['subtotal'] : $item['item_price'] * $item_quantity;
1332
+                    foreach ($this->cart_details as $key => $item) {
1333
+                        $item_quantity  = $item['quantity'] > 0 ? absint($item['quantity']) : 1;
1334
+                        $item_subtotal  = !empty($item['subtotal']) ? $item['subtotal'] : $item['item_price'] * $item_quantity;
1335 1335
                         $item_discount  = 0;
1336
-                        $item_tax       = $item_subtotal > 0 && !empty( $item['vat_rate'] ) ? ( $item_subtotal * 0.01 * (float)$item['vat_rate'] ) : 0;
1336
+                        $item_tax       = $item_subtotal > 0 && !empty($item['vat_rate']) ? ($item_subtotal * 0.01 * (float)$item['vat_rate']) : 0;
1337 1337
                         
1338
-                        if ( wpinv_prices_include_tax() ) {
1339
-                            $item_subtotal -= wpinv_round_amount( $item_tax );
1338
+                        if (wpinv_prices_include_tax()) {
1339
+                            $item_subtotal -= wpinv_round_amount($item_tax);
1340 1340
                         }
1341 1341
                         
1342 1342
                         $item_total     = $item_subtotal - $item_discount + $item_tax;
1343 1343
                         // Do not allow totals to go negative
1344
-                        if ( $item_total < 0 ) {
1344
+                        if ($item_total < 0) {
1345 1345
                             $item_total = 0;
1346 1346
                         }
1347 1347
                         
@@ -1349,113 +1349,113 @@  discard block
 block discarded – undo
1349 1349
                         $cart_discount  += (float)($item_discount);
1350 1350
                         $cart_tax       += (float)($item_tax);
1351 1351
                         
1352
-                        $data['cart_details'][$key]['discount']   = wpinv_round_amount( $item_discount );
1353
-                        $data['cart_details'][$key]['tax']        = wpinv_round_amount( $item_tax );
1354
-                        $data['cart_details'][$key]['price']      = wpinv_round_amount( $item_total );
1352
+                        $data['cart_details'][$key]['discount']   = wpinv_round_amount($item_discount);
1353
+                        $data['cart_details'][$key]['tax']        = wpinv_round_amount($item_tax);
1354
+                        $data['cart_details'][$key]['price']      = wpinv_round_amount($item_total);
1355 1355
                     }
1356 1356
                     
1357
-                    $data['subtotal'] = wpinv_round_amount( $cart_subtotal );
1358
-                    $data['discount'] = wpinv_round_amount( $cart_discount );
1359
-                    $data['tax']      = wpinv_round_amount( $cart_tax );
1360
-                    $data['total']    = wpinv_round_amount( $data['subtotal'] + $data['tax'] );
1357
+                    $data['subtotal'] = wpinv_round_amount($cart_subtotal);
1358
+                    $data['discount'] = wpinv_round_amount($cart_discount);
1359
+                    $data['tax']      = wpinv_round_amount($cart_tax);
1360
+                    $data['total']    = wpinv_round_amount($data['subtotal'] + $data['tax']);
1361 1361
                 }
1362 1362
             }
1363 1363
         }
1364 1364
         
1365
-        $data = apply_filters( 'wpinv_get_invoice_recurring_details', $data, $this, $field, $currency );
1365
+        $data = apply_filters('wpinv_get_invoice_recurring_details', $data, $this, $field, $currency);
1366 1366
 
1367
-        if ( isset( $data[$field] ) ) {
1368
-            return ( $currency ? wpinv_price( $data[$field], $this->get_currency() ) : $data[$field] );
1367
+        if (isset($data[$field])) {
1368
+            return ($currency ? wpinv_price($data[$field], $this->get_currency()) : $data[$field]);
1369 1369
         }
1370 1370
         
1371 1371
         return $data;
1372 1372
     }
1373 1373
     
1374
-    public function get_final_tax( $currency = false ) {        
1375
-        $final_total = wpinv_round_amount( $this->tax );
1376
-        if ( $currency ) {
1377
-            $final_total = wpinv_price( wpinv_format_amount( $final_total, NULL, !$currency ), $this->get_currency() );
1374
+    public function get_final_tax($currency = false) {        
1375
+        $final_total = wpinv_round_amount($this->tax);
1376
+        if ($currency) {
1377
+            $final_total = wpinv_price(wpinv_format_amount($final_total, NULL, !$currency), $this->get_currency());
1378 1378
         }
1379 1379
         
1380
-        return apply_filters( 'wpinv_get_invoice_final_total', $final_total, $this, $currency );
1380
+        return apply_filters('wpinv_get_invoice_final_total', $final_total, $this, $currency);
1381 1381
     }
1382 1382
     
1383
-    public function get_discounts( $array = false ) {
1383
+    public function get_discounts($array = false) {
1384 1384
         $discounts = $this->discounts;
1385
-        if ( $array && $discounts ) {
1386
-            $discounts = explode( ',', $discounts );
1385
+        if ($array && $discounts) {
1386
+            $discounts = explode(',', $discounts);
1387 1387
         }
1388
-        return apply_filters( 'wpinv_payment_discounts', $discounts, $this->ID, $this, $array );
1388
+        return apply_filters('wpinv_payment_discounts', $discounts, $this->ID, $this, $array);
1389 1389
     }
1390 1390
     
1391
-    public function get_discount( $currency = false, $dash = false ) {
1392
-        if ( !empty( $this->discounts ) ) {
1391
+    public function get_discount($currency = false, $dash = false) {
1392
+        if (!empty($this->discounts)) {
1393 1393
             global $ajax_cart_details;
1394 1394
             $ajax_cart_details = $this->get_cart_details();
1395 1395
             
1396
-            if ( !empty( $ajax_cart_details ) && count( $ajax_cart_details ) == count( $this->items ) ) {
1396
+            if (!empty($ajax_cart_details) && count($ajax_cart_details) == count($this->items)) {
1397 1397
                 $cart_items = $ajax_cart_details;
1398 1398
             } else {
1399 1399
                 $cart_items = $this->items;
1400 1400
             }
1401 1401
 
1402
-            $this->discount = wpinv_get_cart_items_discount_amount( $cart_items , $this->discounts );
1402
+            $this->discount = wpinv_get_cart_items_discount_amount($cart_items, $this->discounts);
1403 1403
         }
1404
-        $discount   = wpinv_round_amount( $this->discount );
1404
+        $discount   = wpinv_round_amount($this->discount);
1405 1405
         $dash       = $dash && $discount > 0 ? '&ndash;' : '';
1406 1406
         
1407
-        if ( $currency ) {
1408
-            $discount = wpinv_price( wpinv_format_amount( $discount, NULL, !$currency ), $this->get_currency() );
1407
+        if ($currency) {
1408
+            $discount = wpinv_price(wpinv_format_amount($discount, NULL, !$currency), $this->get_currency());
1409 1409
         }
1410 1410
         
1411
-        $discount   = $dash . $discount;
1411
+        $discount = $dash . $discount;
1412 1412
         
1413
-        return apply_filters( 'wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash );
1413
+        return apply_filters('wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash);
1414 1414
     }
1415 1415
     
1416 1416
     public function get_discount_code() {
1417 1417
         return $this->discount_code;
1418 1418
     }
1419 1419
     
1420
-    public function get_tax( $currency = false ) {
1421
-        $tax = wpinv_round_amount( $this->tax );
1420
+    public function get_tax($currency = false) {
1421
+        $tax = wpinv_round_amount($this->tax);
1422 1422
         
1423
-        if ( $currency ) {
1424
-            $tax = wpinv_price( wpinv_format_amount( $tax, NULL, !$currency ), $this->get_currency() );
1423
+        if ($currency) {
1424
+            $tax = wpinv_price(wpinv_format_amount($tax, NULL, !$currency), $this->get_currency());
1425 1425
         }
1426 1426
         
1427
-        return apply_filters( 'wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency );
1427
+        return apply_filters('wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency);
1428 1428
     }
1429 1429
     
1430
-    public function get_fees( $type = 'all' ) {
1431
-        $fees    = array();
1430
+    public function get_fees($type = 'all') {
1431
+        $fees = array();
1432 1432
 
1433
-        if ( ! empty( $this->fees ) && is_array( $this->fees ) ) {
1434
-            foreach ( $this->fees as $fee ) {
1435
-                if( 'all' != $type && ! empty( $fee['type'] ) && $type != $fee['type'] ) {
1433
+        if (!empty($this->fees) && is_array($this->fees)) {
1434
+            foreach ($this->fees as $fee) {
1435
+                if ('all' != $type && !empty($fee['type']) && $type != $fee['type']) {
1436 1436
                     continue;
1437 1437
                 }
1438 1438
 
1439
-                $fee['label'] = stripslashes( $fee['label'] );
1440
-                $fee['amount_display'] = wpinv_price( $fee['amount'], $this->get_currency() );
1441
-                $fees[]    = $fee;
1439
+                $fee['label'] = stripslashes($fee['label']);
1440
+                $fee['amount_display'] = wpinv_price($fee['amount'], $this->get_currency());
1441
+                $fees[] = $fee;
1442 1442
             }
1443 1443
         }
1444 1444
 
1445
-        return apply_filters( 'wpinv_get_invoice_fees', $fees, $this->ID, $this );
1445
+        return apply_filters('wpinv_get_invoice_fees', $fees, $this->ID, $this);
1446 1446
     }
1447 1447
     
1448
-    public function get_fees_total( $type = 'all' ) {
1449
-        $fees_total = (float) 0.00;
1448
+    public function get_fees_total($type = 'all') {
1449
+        $fees_total = (float)0.00;
1450 1450
 
1451
-        $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array();
1452
-        if ( ! empty( $payment_fees ) ) {
1453
-            foreach ( $payment_fees as $fee ) {
1454
-                $fees_total += (float) $fee['amount'];
1451
+        $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array();
1452
+        if (!empty($payment_fees)) {
1453
+            foreach ($payment_fees as $fee) {
1454
+                $fees_total += (float)$fee['amount'];
1455 1455
             }
1456 1456
         }
1457 1457
 
1458
-        return apply_filters( 'wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this );
1458
+        return apply_filters('wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this);
1459 1459
         /*
1460 1460
         $fees = $this->get_fees( $type );
1461 1461
 
@@ -1475,116 +1475,116 @@  discard block
 block discarded – undo
1475 1475
     }
1476 1476
 
1477 1477
     public function get_user_id() {
1478
-        return apply_filters( 'wpinv_user_id', $this->user_id, $this->ID, $this );
1478
+        return apply_filters('wpinv_user_id', $this->user_id, $this->ID, $this);
1479 1479
     }
1480 1480
     
1481 1481
     public function get_first_name() {
1482
-        return apply_filters( 'wpinv_first_name', $this->first_name, $this->ID, $this );
1482
+        return apply_filters('wpinv_first_name', $this->first_name, $this->ID, $this);
1483 1483
     }
1484 1484
     
1485 1485
     public function get_last_name() {
1486
-        return apply_filters( 'wpinv_last_name', $this->last_name, $this->ID, $this );
1486
+        return apply_filters('wpinv_last_name', $this->last_name, $this->ID, $this);
1487 1487
     }
1488 1488
     
1489 1489
     public function get_user_full_name() {
1490
-        return apply_filters( 'wpinv_user_full_name', $this->full_name, $this->ID, $this );
1490
+        return apply_filters('wpinv_user_full_name', $this->full_name, $this->ID, $this);
1491 1491
     }
1492 1492
     
1493 1493
     public function get_user_info() {
1494
-        return apply_filters( 'wpinv_user_info', $this->user_info, $this->ID, $this );
1494
+        return apply_filters('wpinv_user_info', $this->user_info, $this->ID, $this);
1495 1495
     }
1496 1496
     
1497 1497
     public function get_email() {
1498
-        return apply_filters( 'wpinv_user_email', $this->email, $this->ID, $this );
1498
+        return apply_filters('wpinv_user_email', $this->email, $this->ID, $this);
1499 1499
     }
1500 1500
     
1501 1501
     public function get_address() {
1502
-        return apply_filters( 'wpinv_address', $this->address, $this->ID, $this );
1502
+        return apply_filters('wpinv_address', $this->address, $this->ID, $this);
1503 1503
     }
1504 1504
     
1505 1505
     public function get_phone() {
1506
-        return apply_filters( 'wpinv_phone', $this->phone, $this->ID, $this );
1506
+        return apply_filters('wpinv_phone', $this->phone, $this->ID, $this);
1507 1507
     }
1508 1508
     
1509 1509
     public function get_number() {
1510
-        return apply_filters( 'wpinv_number', $this->number, $this->ID, $this );
1510
+        return apply_filters('wpinv_number', $this->number, $this->ID, $this);
1511 1511
     }
1512 1512
     
1513 1513
     public function get_items() {
1514
-        return apply_filters( 'wpinv_payment_meta_items', $this->items, $this->ID, $this );
1514
+        return apply_filters('wpinv_payment_meta_items', $this->items, $this->ID, $this);
1515 1515
     }
1516 1516
     
1517 1517
     public function get_key() {
1518
-        return apply_filters( 'wpinv_key', $this->key, $this->ID, $this );
1518
+        return apply_filters('wpinv_key', $this->key, $this->ID, $this);
1519 1519
     }
1520 1520
     
1521 1521
     public function get_transaction_id() {
1522
-        return apply_filters( 'wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this );
1522
+        return apply_filters('wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this);
1523 1523
     }
1524 1524
     
1525 1525
     public function get_gateway() {
1526
-        return apply_filters( 'wpinv_gateway', $this->gateway, $this->ID, $this );
1526
+        return apply_filters('wpinv_gateway', $this->gateway, $this->ID, $this);
1527 1527
     }
1528 1528
     
1529 1529
     public function get_gateway_title() {
1530
-        $this->gateway_title = !empty( $this->gateway_title ) ? $this->gateway_title : wpinv_get_gateway_checkout_label( $this->gateway );
1530
+        $this->gateway_title = !empty($this->gateway_title) ? $this->gateway_title : wpinv_get_gateway_checkout_label($this->gateway);
1531 1531
         
1532
-        return apply_filters( 'wpinv_gateway_title', $this->gateway_title, $this->ID, $this );
1532
+        return apply_filters('wpinv_gateway_title', $this->gateway_title, $this->ID, $this);
1533 1533
     }
1534 1534
     
1535 1535
     public function get_currency() {
1536
-        return apply_filters( 'wpinv_currency_code', $this->currency, $this->ID, $this );
1536
+        return apply_filters('wpinv_currency_code', $this->currency, $this->ID, $this);
1537 1537
     }
1538 1538
     
1539 1539
     public function get_created_date() {
1540
-        return apply_filters( 'wpinv_created_date', $this->date, $this->ID, $this );
1540
+        return apply_filters('wpinv_created_date', $this->date, $this->ID, $this);
1541 1541
     }
1542 1542
     
1543
-    public function get_due_date( $display = false ) {
1544
-        $due_date = apply_filters( 'wpinv_due_date', $this->due_date, $this->ID, $this );
1543
+    public function get_due_date($display = false) {
1544
+        $due_date = apply_filters('wpinv_due_date', $this->due_date, $this->ID, $this);
1545 1545
         
1546
-        if ( !$display || empty( $due_date ) ) {
1546
+        if (!$display || empty($due_date)) {
1547 1547
             return $due_date;
1548 1548
         }
1549 1549
         
1550
-        return date_i18n( get_option( 'date_format' ), strtotime( $due_date ) );
1550
+        return date_i18n(get_option('date_format'), strtotime($due_date));
1551 1551
     }
1552 1552
     
1553 1553
     public function get_completed_date() {
1554
-        return apply_filters( 'wpinv_completed_date', $this->completed_date, $this->ID, $this );
1554
+        return apply_filters('wpinv_completed_date', $this->completed_date, $this->ID, $this);
1555 1555
     }
1556 1556
     
1557
-    public function get_invoice_date( $formatted = true ) {
1557
+    public function get_invoice_date($formatted = true) {
1558 1558
         $date_completed = $this->completed_date;
1559 1559
         $invoice_date   = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? $date_completed : '';
1560 1560
         
1561
-        if ( $invoice_date == '' ) {
1561
+        if ($invoice_date == '') {
1562 1562
             $date_created   = $this->date;
1563 1563
             $invoice_date   = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? $date_created : '';
1564 1564
         }
1565 1565
         
1566
-        if ( $formatted && $invoice_date ) {
1567
-            $invoice_date   = date_i18n( get_option( 'date_format' ), strtotime( $invoice_date ) );
1566
+        if ($formatted && $invoice_date) {
1567
+            $invoice_date = date_i18n(get_option('date_format'), strtotime($invoice_date));
1568 1568
         }
1569 1569
 
1570
-        return apply_filters( 'wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this );
1570
+        return apply_filters('wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this);
1571 1571
     }
1572 1572
     
1573 1573
     public function get_ip() {
1574
-        return apply_filters( 'wpinv_user_ip', $this->ip, $this->ID, $this );
1574
+        return apply_filters('wpinv_user_ip', $this->ip, $this->ID, $this);
1575 1575
     }
1576 1576
         
1577
-    public function has_status( $status ) {
1578
-        return apply_filters( 'wpinv_has_status', ( is_array( $status ) && in_array( $this->get_status(), $status ) ) || $this->get_status() === $status ? true : false, $this, $status );
1577
+    public function has_status($status) {
1578
+        return apply_filters('wpinv_has_status', (is_array($status) && in_array($this->get_status(), $status)) || $this->get_status() === $status ? true : false, $this, $status);
1579 1579
     }
1580 1580
     
1581
-    public function add_item( $item_id = 0, $args = array() ) {
1581
+    public function add_item($item_id = 0, $args = array()) {
1582 1582
         global $wpi_current_id, $wpi_item_id;
1583 1583
         
1584
-        $item = new WPInv_Item( $item_id );
1584
+        $item = new WPInv_Item($item_id);
1585 1585
 
1586 1586
         // Bail if this post isn't a item
1587
-        if( !$item || $item->post_type !== 'wpi_item' ) {
1587
+        if (!$item || $item->post_type !== 'wpi_item') {
1588 1588
             return false;
1589 1589
         }
1590 1590
         
@@ -1603,8 +1603,8 @@  discard block
 block discarded – undo
1603 1603
             'fees'          => array()
1604 1604
         );
1605 1605
 
1606
-        $args = wp_parse_args( apply_filters( 'wpinv_add_item_args', $args, $item->ID ), $defaults );
1607
-        $args['quantity']   = $has_quantities && $args['quantity'] > 0 ? absint( $args['quantity'] ) : 1;
1606
+        $args = wp_parse_args(apply_filters('wpinv_add_item_args', $args, $item->ID), $defaults);
1607
+        $args['quantity'] = $has_quantities && $args['quantity'] > 0 ? absint($args['quantity']) : 1;
1608 1608
 
1609 1609
         $wpi_current_id         = $this->ID;
1610 1610
         $wpi_item_id            = $item->ID;
@@ -1616,19 +1616,19 @@  discard block
 block discarded – undo
1616 1616
         $found_cart_key         = false;
1617 1617
         
1618 1618
         if ($has_quantities) {
1619
-            $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details;
1619
+            $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details;
1620 1620
             
1621
-            foreach ( $this->items as $key => $cart_item ) {
1622
-                if ( (int)$item_id !== (int)$cart_item['id'] ) {
1621
+            foreach ($this->items as $key => $cart_item) {
1622
+                if ((int)$item_id !== (int)$cart_item['id']) {
1623 1623
                     continue;
1624 1624
                 }
1625 1625
 
1626
-                $this->items[ $key ]['quantity'] += $args['quantity'];
1626
+                $this->items[$key]['quantity'] += $args['quantity'];
1627 1627
                 break;
1628 1628
             }
1629 1629
             
1630
-            foreach ( $this->cart_details as $cart_key => $cart_item ) {
1631
-                if ( $item_id != $cart_item['id'] ) {
1630
+            foreach ($this->cart_details as $cart_key => $cart_item) {
1631
+                if ($item_id != $cart_item['id']) {
1632 1632
                     continue;
1633 1633
                 }
1634 1634
 
@@ -1640,29 +1640,29 @@  discard block
 block discarded – undo
1640 1640
         if ($has_quantities && $found_cart_key !== false) {
1641 1641
             $cart_item          = $this->cart_details[$found_cart_key];
1642 1642
             $item_price         = $cart_item['item_price'];
1643
-            $quantity           = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1;
1644
-            $tax_rate           = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0;
1643
+            $quantity           = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1;
1644
+            $tax_rate           = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0;
1645 1645
             
1646 1646
             $new_quantity       = $quantity + $args['quantity'];
1647 1647
             $subtotal           = $item_price * $new_quantity;
1648 1648
             
1649 1649
             $args['quantity']   = $new_quantity;
1650
-            $discount           = !empty( $args['discount'] ) ? $args['discount'] : 0;
1651
-            $tax                = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1650
+            $discount           = !empty($args['discount']) ? $args['discount'] : 0;
1651
+            $tax                = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0;
1652 1652
             
1653 1653
             $discount_increased = $discount > 0 && $subtotal > 0 && $discount > (float)$cart_item['discount'] ? $discount - (float)$cart_item['discount'] : 0;
1654 1654
             $tax_increased      = $tax > 0 && $subtotal > 0 && $tax > (float)$cart_item['tax'] ? $tax - (float)$cart_item['tax'] : 0;
1655 1655
             // The total increase equals the number removed * the item_price
1656
-            $total_increased    = wpinv_round_amount( $item_price );
1656
+            $total_increased    = wpinv_round_amount($item_price);
1657 1657
             
1658
-            if ( wpinv_prices_include_tax() ) {
1659
-                $subtotal -= wpinv_round_amount( $tax );
1658
+            if (wpinv_prices_include_tax()) {
1659
+                $subtotal -= wpinv_round_amount($tax);
1660 1660
             }
1661 1661
 
1662
-            $total              = $subtotal - $discount + $tax;
1662
+            $total = $subtotal - $discount + $tax;
1663 1663
 
1664 1664
             // Do not allow totals to go negative
1665
-            if( $total < 0 ) {
1665
+            if ($total < 0) {
1666 1666
                 $total = 0;
1667 1667
             }
1668 1668
             
@@ -1678,25 +1678,25 @@  discard block
 block discarded – undo
1678 1678
             $this->cart_details[$found_cart_key] = $cart_item;
1679 1679
         } else {
1680 1680
             // Set custom price.
1681
-            if ( $args['custom_price'] !== '' ) {
1681
+            if ($args['custom_price'] !== '') {
1682 1682
                 $item_price = $args['custom_price'];
1683 1683
             } else {
1684 1684
                 // Allow overriding the price
1685
-                if ( false !== $args['item_price'] ) {
1685
+                if (false !== $args['item_price']) {
1686 1686
                     $item_price = $args['item_price'];
1687 1687
                 } else {
1688
-                    $item_price = wpinv_get_item_price( $item->ID );
1688
+                    $item_price = wpinv_get_item_price($item->ID);
1689 1689
                 }
1690 1690
             }
1691 1691
 
1692 1692
             // Sanitizing the price here so we don't have a dozen calls later
1693
-            $item_price = wpinv_sanitize_amount( $item_price );
1694
-            $subtotal   = wpinv_round_amount( $item_price * $args['quantity'] );
1693
+            $item_price = wpinv_sanitize_amount($item_price);
1694
+            $subtotal   = wpinv_round_amount($item_price * $args['quantity']);
1695 1695
         
1696
-            $discount   = !empty( $args['discount'] ) ? $args['discount'] : 0;
1697
-            $tax_class  = !empty( $args['vat_class'] ) ? $args['vat_class'] : '';
1698
-            $tax_rate   = !empty( $args['vat_rate'] ) ? $args['vat_rate'] : 0;
1699
-            $tax        = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1696
+            $discount   = !empty($args['discount']) ? $args['discount'] : 0;
1697
+            $tax_class  = !empty($args['vat_class']) ? $args['vat_class'] : '';
1698
+            $tax_rate   = !empty($args['vat_rate']) ? $args['vat_rate'] : 0;
1699
+            $tax        = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0;
1700 1700
 
1701 1701
             // Setup the items meta item
1702 1702
             $new_item = array(
@@ -1704,29 +1704,29 @@  discard block
 block discarded – undo
1704 1704
                 'quantity' => $args['quantity'],
1705 1705
             );
1706 1706
 
1707
-            $this->items[]  = $new_item;
1707
+            $this->items[] = $new_item;
1708 1708
 
1709
-            if ( wpinv_prices_include_tax() ) {
1710
-                $subtotal -= wpinv_round_amount( $tax );
1709
+            if (wpinv_prices_include_tax()) {
1710
+                $subtotal -= wpinv_round_amount($tax);
1711 1711
             }
1712 1712
 
1713
-            $total      = $subtotal - $discount + $tax;
1713
+            $total = $subtotal - $discount + $tax;
1714 1714
 
1715 1715
             // Do not allow totals to go negative
1716
-            if( $total < 0 ) {
1716
+            if ($total < 0) {
1717 1717
                 $total = 0;
1718 1718
             }
1719 1719
         
1720 1720
             $this->cart_details[] = array(
1721 1721
                 'name'          => !empty($args['name']) ? $args['name'] : $item->get_name(),
1722 1722
                 'id'            => $item->ID,
1723
-                'item_price'    => wpinv_round_amount( $item_price ),
1724
-                'custom_price'  => ( $args['custom_price'] !== '' ? wpinv_round_amount( $args['custom_price'] ) : '' ),
1723
+                'item_price'    => wpinv_round_amount($item_price),
1724
+                'custom_price'  => ($args['custom_price'] !== '' ? wpinv_round_amount($args['custom_price']) : ''),
1725 1725
                 'quantity'      => $args['quantity'],
1726 1726
                 'discount'      => $discount,
1727
-                'subtotal'      => wpinv_round_amount( $subtotal ),
1728
-                'tax'           => wpinv_round_amount( $tax ),
1729
-                'price'         => wpinv_round_amount( $total ),
1727
+                'subtotal'      => wpinv_round_amount($subtotal),
1728
+                'tax'           => wpinv_round_amount($tax),
1729
+                'price'         => wpinv_round_amount($total),
1730 1730
                 'vat_rate'      => $tax_rate,
1731 1731
                 'vat_class'     => $tax_class,
1732 1732
                 'meta'          => $args['meta'],
@@ -1736,18 +1736,18 @@  discard block
 block discarded – undo
1736 1736
             $subtotal = $subtotal - $discount;
1737 1737
         }
1738 1738
         
1739
-        $added_item = end( $this->cart_details );
1740
-        $added_item['action']  = 'add';
1739
+        $added_item = end($this->cart_details);
1740
+        $added_item['action'] = 'add';
1741 1741
         
1742 1742
         $this->pending['items'][] = $added_item;
1743 1743
         
1744
-        $this->increase_subtotal( $subtotal );
1745
-        $this->increase_tax( $tax );
1744
+        $this->increase_subtotal($subtotal);
1745
+        $this->increase_tax($tax);
1746 1746
 
1747 1747
         return true;
1748 1748
     }
1749 1749
     
1750
-    public function remove_item( $item_id, $args = array() ) {
1750
+    public function remove_item($item_id, $args = array()) {
1751 1751
         // Set some defaults
1752 1752
         $defaults = array(
1753 1753
             'quantity'      => 1,
@@ -1755,51 +1755,51 @@  discard block
 block discarded – undo
1755 1755
             'custom_price'  => '',
1756 1756
             'cart_index'    => false,
1757 1757
         );
1758
-        $args = wp_parse_args( $args, $defaults );
1758
+        $args = wp_parse_args($args, $defaults);
1759 1759
 
1760 1760
         // Bail if this post isn't a item
1761
-        if ( get_post_type( $item_id ) !== 'wpi_item' ) {
1761
+        if (get_post_type($item_id) !== 'wpi_item') {
1762 1762
             return false;
1763 1763
         }
1764 1764
         
1765
-        $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details;
1765
+        $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details;
1766 1766
 
1767
-        foreach ( $this->items as $key => $item ) {
1768
-            if ( !empty($item['id']) && (int)$item_id !== (int)$item['id'] ) {
1767
+        foreach ($this->items as $key => $item) {
1768
+            if (!empty($item['id']) && (int)$item_id !== (int)$item['id']) {
1769 1769
                 continue;
1770 1770
             }
1771 1771
 
1772
-            if ( false !== $args['cart_index'] ) {
1773
-                $cart_index = absint( $args['cart_index'] );
1774
-                $cart_item  = ! empty( $this->cart_details[ $cart_index ] ) ? $this->cart_details[ $cart_index ] : false;
1772
+            if (false !== $args['cart_index']) {
1773
+                $cart_index = absint($args['cart_index']);
1774
+                $cart_item  = !empty($this->cart_details[$cart_index]) ? $this->cart_details[$cart_index] : false;
1775 1775
 
1776
-                if ( ! empty( $cart_item ) ) {
1776
+                if (!empty($cart_item)) {
1777 1777
                     // If the cart index item isn't the same item ID, don't remove it
1778
-                    if ( !empty($cart_item['id']) && $cart_item['id'] != $item['id'] ) {
1778
+                    if (!empty($cart_item['id']) && $cart_item['id'] != $item['id']) {
1779 1779
                         continue;
1780 1780
                     }
1781 1781
                 }
1782 1782
             }
1783 1783
 
1784
-            $item_quantity = $this->items[ $key ]['quantity'];
1785
-            if ( $item_quantity > $args['quantity'] ) {
1786
-                $this->items[ $key ]['quantity'] -= $args['quantity'];
1784
+            $item_quantity = $this->items[$key]['quantity'];
1785
+            if ($item_quantity > $args['quantity']) {
1786
+                $this->items[$key]['quantity'] -= $args['quantity'];
1787 1787
                 break;
1788 1788
             } else {
1789
-                unset( $this->items[ $key ] );
1789
+                unset($this->items[$key]);
1790 1790
                 break;
1791 1791
             }
1792 1792
         }
1793 1793
 
1794 1794
         $found_cart_key = false;
1795
-        if ( false === $args['cart_index'] ) {
1796
-            foreach ( $this->cart_details as $cart_key => $item ) {
1797
-                if ( $item_id != $item['id'] ) {
1795
+        if (false === $args['cart_index']) {
1796
+            foreach ($this->cart_details as $cart_key => $item) {
1797
+                if ($item_id != $item['id']) {
1798 1798
                     continue;
1799 1799
                 }
1800 1800
 
1801
-                if ( false !== $args['item_price'] ) {
1802
-                    if ( isset( $item['item_price'] ) && (float) $args['item_price'] != (float) $item['item_price'] ) {
1801
+                if (false !== $args['item_price']) {
1802
+                    if (isset($item['item_price']) && (float)$args['item_price'] != (float)$item['item_price']) {
1803 1803
                         continue;
1804 1804
                     }
1805 1805
                 }
@@ -1808,13 +1808,13 @@  discard block
 block discarded – undo
1808 1808
                 break;
1809 1809
             }
1810 1810
         } else {
1811
-            $cart_index = absint( $args['cart_index'] );
1811
+            $cart_index = absint($args['cart_index']);
1812 1812
 
1813
-            if ( ! array_key_exists( $cart_index, $this->cart_details ) ) {
1813
+            if (!array_key_exists($cart_index, $this->cart_details)) {
1814 1814
                 return false; // Invalid cart index passed.
1815 1815
             }
1816 1816
 
1817
-            if ( (int) $this->cart_details[ $cart_index ]['id'] > 0 && (int) $this->cart_details[ $cart_index ]['id'] !== (int) $item_id ) {
1817
+            if ((int)$this->cart_details[$cart_index]['id'] > 0 && (int)$this->cart_details[$cart_index]['id'] !== (int)$item_id) {
1818 1818
                 return false; // We still need the proper Item ID to be sure.
1819 1819
             }
1820 1820
 
@@ -1822,41 +1822,41 @@  discard block
 block discarded – undo
1822 1822
         }
1823 1823
         
1824 1824
         $cart_item  = $this->cart_details[$found_cart_key];
1825
-        $quantity   = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1;
1825
+        $quantity   = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1;
1826 1826
         
1827
-        if ( count( $this->cart_details ) == 1 && ( $quantity - $args['quantity'] ) < 1 ) {
1827
+        if (count($this->cart_details) == 1 && ($quantity - $args['quantity']) < 1) {
1828 1828
             return false; // Invoice must contain at least one item.
1829 1829
         }
1830 1830
         
1831
-        $discounts  = $this->get_discounts();
1831
+        $discounts = $this->get_discounts();
1832 1832
         
1833
-        if ( $quantity > $args['quantity'] ) {
1833
+        if ($quantity > $args['quantity']) {
1834 1834
             $item_price         = $cart_item['item_price'];
1835
-            $tax_rate           = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0;
1835
+            $tax_rate           = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0;
1836 1836
             
1837
-            $new_quantity       = max( $quantity - $args['quantity'], 1);
1837
+            $new_quantity       = max($quantity - $args['quantity'], 1);
1838 1838
             $subtotal           = $item_price * $new_quantity;
1839 1839
             
1840 1840
             $args['quantity']   = $new_quantity;
1841
-            $discount           = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0;
1842
-            $tax                = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1841
+            $discount           = !empty($cart_item['discount']) ? $cart_item['discount'] : 0;
1842
+            $tax                = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0;
1843 1843
             
1844
-            $discount_decrease  = (float)$cart_item['discount'] > 0 && $quantity > 0 ? wpinv_round_amount( ( (float)$cart_item['discount'] / $quantity ) ) : 0;
1844
+            $discount_decrease  = (float)$cart_item['discount'] > 0 && $quantity > 0 ? wpinv_round_amount(((float)$cart_item['discount'] / $quantity)) : 0;
1845 1845
             $discount_decrease  = $discount > 0 && $subtotal > 0 && (float)$cart_item['discount'] > $discount ? (float)$cart_item['discount'] - $discount : $discount_decrease; 
1846
-            $tax_decrease       = (float)$cart_item['tax'] > 0 && $quantity > 0 ? wpinv_round_amount( ( (float)$cart_item['tax'] / $quantity ) ) : 0;
1846
+            $tax_decrease       = (float)$cart_item['tax'] > 0 && $quantity > 0 ? wpinv_round_amount(((float)$cart_item['tax'] / $quantity)) : 0;
1847 1847
             $tax_decrease       = $tax > 0 && $subtotal > 0 && (float)$cart_item['tax'] > $tax ? (float)$cart_item['tax'] - $tax : $tax_decrease;
1848 1848
             
1849 1849
             // The total increase equals the number removed * the item_price
1850
-            $total_decrease     = wpinv_round_amount( $item_price );
1850
+            $total_decrease     = wpinv_round_amount($item_price);
1851 1851
             
1852
-            if ( wpinv_prices_include_tax() ) {
1853
-                $subtotal -= wpinv_round_amount( $tax );
1852
+            if (wpinv_prices_include_tax()) {
1853
+                $subtotal -= wpinv_round_amount($tax);
1854 1854
             }
1855 1855
 
1856
-            $total              = $subtotal - $discount + $tax;
1856
+            $total = $subtotal - $discount + $tax;
1857 1857
 
1858 1858
             // Do not allow totals to go negative
1859
-            if( $total < 0 ) {
1859
+            if ($total < 0) {
1860 1860
                 $total = 0;
1861 1861
             }
1862 1862
             
@@ -1875,16 +1875,16 @@  discard block
 block discarded – undo
1875 1875
             
1876 1876
             $this->cart_details[$found_cart_key] = $cart_item;
1877 1877
             
1878
-            $remove_item = end( $this->cart_details );
1878
+            $remove_item = end($this->cart_details);
1879 1879
         } else {
1880 1880
             $item_price     = $cart_item['item_price'];
1881
-            $discount       = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0;
1882
-            $tax            = !empty( $cart_item['tax'] ) ? $cart_item['tax'] : 0;
1881
+            $discount       = !empty($cart_item['discount']) ? $cart_item['discount'] : 0;
1882
+            $tax            = !empty($cart_item['tax']) ? $cart_item['tax'] : 0;
1883 1883
         
1884
-            $subtotal_decrease  = ( $item_price * $quantity ) - $discount;
1884
+            $subtotal_decrease  = ($item_price * $quantity) - $discount;
1885 1885
             $tax_decrease       = $tax;
1886 1886
 
1887
-            unset( $this->cart_details[$found_cart_key] );
1887
+            unset($this->cart_details[$found_cart_key]);
1888 1888
             
1889 1889
             $remove_item             = $args;
1890 1890
             $remove_item['id']       = $item_id;
@@ -1895,8 +1895,8 @@  discard block
 block discarded – undo
1895 1895
         $remove_item['action']      = 'remove';
1896 1896
         $this->pending['items'][]   = $remove_item;
1897 1897
                
1898
-        $this->decrease_subtotal( $subtotal_decrease );
1899
-        $this->decrease_tax( $tax_decrease );
1898
+        $this->decrease_subtotal($subtotal_decrease);
1899
+        $this->decrease_tax($tax_decrease);
1900 1900
         
1901 1901
         return true;
1902 1902
     }
@@ -1904,7 +1904,7 @@  discard block
 block discarded – undo
1904 1904
     public function update_items($temp = false) {
1905 1905
         global $wpinv_euvat, $wpi_current_id, $wpi_item_id, $wpi_nosave;
1906 1906
         
1907
-        if ( !empty( $this->cart_details ) ) {
1907
+        if (!empty($this->cart_details)) {
1908 1908
             $wpi_nosave             = $temp;
1909 1909
             $cart_subtotal          = 0;
1910 1910
             $cart_discount          = 0;
@@ -1914,42 +1914,42 @@  discard block
 block discarded – undo
1914 1914
             $_POST['wpinv_country'] = $this->country;
1915 1915
             $_POST['wpinv_state']   = $this->state;
1916 1916
             
1917
-            foreach ( $this->cart_details as $key => $item ) {
1917
+            foreach ($this->cart_details as $key => $item) {
1918 1918
                 $item_price = $item['item_price'];
1919
-                $quantity   = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1;
1920
-                $amount     = wpinv_round_amount( $item_price * $quantity );
1919
+                $quantity   = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint($item['quantity']) : 1;
1920
+                $amount     = wpinv_round_amount($item_price * $quantity);
1921 1921
                 $subtotal   = $item_price * $quantity;
1922 1922
                 
1923 1923
                 $wpi_current_id         = $this->ID;
1924 1924
                 $wpi_item_id            = $item['id'];
1925 1925
                 
1926
-                $discount   = wpinv_get_cart_item_discount_amount( $item, $this->get_discounts() );
1926
+                $discount   = wpinv_get_cart_item_discount_amount($item, $this->get_discounts());
1927 1927
                 
1928
-                $tax_rate   = wpinv_get_tax_rate( $this->country, $this->state, $wpi_item_id );
1929
-                $tax_class  = $wpinv_euvat->get_item_class( $wpi_item_id );
1930
-                $tax        = $item_price > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1928
+                $tax_rate   = wpinv_get_tax_rate($this->country, $this->state, $wpi_item_id);
1929
+                $tax_class  = $wpinv_euvat->get_item_class($wpi_item_id);
1930
+                $tax        = $item_price > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0;
1931 1931
 
1932
-                if ( wpinv_prices_include_tax() ) {
1933
-                    $subtotal -= wpinv_round_amount( $tax );
1932
+                if (wpinv_prices_include_tax()) {
1933
+                    $subtotal -= wpinv_round_amount($tax);
1934 1934
                 }
1935 1935
 
1936
-                $total      = $subtotal - $discount + $tax;
1936
+                $total = $subtotal - $discount + $tax;
1937 1937
 
1938 1938
                 // Do not allow totals to go negative
1939
-                if( $total < 0 ) {
1939
+                if ($total < 0) {
1940 1940
                     $total = 0;
1941 1941
                 }
1942 1942
 
1943 1943
                 $cart_details[] = array(
1944 1944
                     'id'          => $item['id'],
1945 1945
                     'name'        => $item['name'],
1946
-                    'item_price'  => wpinv_round_amount( $item_price ),
1947
-                    'custom_price'=> ( isset( $item['custom_price'] ) ? $item['custom_price'] : '' ),
1946
+                    'item_price'  => wpinv_round_amount($item_price),
1947
+                    'custom_price'=> (isset($item['custom_price']) ? $item['custom_price'] : ''),
1948 1948
                     'quantity'    => $quantity,
1949 1949
                     'discount'    => $discount,
1950
-                    'subtotal'    => wpinv_round_amount( $subtotal ),
1951
-                    'tax'         => wpinv_round_amount( $tax ),
1952
-                    'price'       => wpinv_round_amount( $total ),
1950
+                    'subtotal'    => wpinv_round_amount($subtotal),
1951
+                    'tax'         => wpinv_round_amount($tax),
1952
+                    'price'       => wpinv_round_amount($total),
1953 1953
                     'vat_rate'    => $tax_rate,
1954 1954
                     'vat_class'   => $tax_class,
1955 1955
                     'meta'        => isset($item['meta']) ? $item['meta'] : array(),
@@ -1960,15 +1960,15 @@  discard block
 block discarded – undo
1960 1960
                 $cart_discount  += (float)($discount);
1961 1961
                 $cart_tax       += (float)($tax);
1962 1962
             }
1963
-            if ( $cart_subtotal < 0 ) {
1963
+            if ($cart_subtotal < 0) {
1964 1964
                 $cart_subtotal = 0;
1965 1965
             }
1966
-            if ( $cart_tax < 0 ) {
1966
+            if ($cart_tax < 0) {
1967 1967
                 $cart_tax = 0;
1968 1968
             }
1969
-            $this->subtotal = wpinv_round_amount( $cart_subtotal );
1970
-            $this->tax      = wpinv_round_amount( $cart_tax );
1971
-            $this->discount = wpinv_round_amount( $cart_discount );
1969
+            $this->subtotal = wpinv_round_amount($cart_subtotal);
1970
+            $this->tax      = wpinv_round_amount($cart_tax);
1971
+            $this->discount = wpinv_round_amount($cart_discount);
1972 1972
             
1973 1973
             $this->recalculate_total();
1974 1974
             
@@ -1980,226 +1980,226 @@  discard block
 block discarded – undo
1980 1980
     
1981 1981
     public function recalculate_totals($temp = false) {        
1982 1982
         $this->update_items($temp);
1983
-        $this->save( true );
1983
+        $this->save(true);
1984 1984
         
1985 1985
         return $this;
1986 1986
     }
1987 1987
     
1988 1988
     public function needs_payment() {
1989
-        $valid_invoice_statuses = apply_filters( 'wpinv_valid_invoice_statuses_for_payment', array( 'wpi-pending' ), $this );
1989
+        $valid_invoice_statuses = apply_filters('wpinv_valid_invoice_statuses_for_payment', array('wpi-pending'), $this);
1990 1990
 
1991
-        if ( $this->has_status( $valid_invoice_statuses ) && ( $this->get_total() > 0 || $this->is_free_trial() || $this->is_free() ) ) {
1991
+        if ($this->has_status($valid_invoice_statuses) && ($this->get_total() > 0 || $this->is_free_trial() || $this->is_free())) {
1992 1992
             $needs_payment = true;
1993 1993
         } else {
1994 1994
             $needs_payment = false;
1995 1995
         }
1996 1996
 
1997
-        return apply_filters( 'wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses );
1997
+        return apply_filters('wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses);
1998 1998
     }
1999 1999
     
2000
-    public function get_checkout_payment_url( $with_key = false, $secret = false ) {
2000
+    public function get_checkout_payment_url($with_key = false, $secret = false) {
2001 2001
         $pay_url = wpinv_get_checkout_uri();
2002 2002
 
2003
-        if ( is_ssl() ) {
2004
-            $pay_url = str_replace( 'http:', 'https:', $pay_url );
2003
+        if (is_ssl()) {
2004
+            $pay_url = str_replace('http:', 'https:', $pay_url);
2005 2005
         }
2006 2006
         
2007 2007
         $key = $this->get_key();
2008 2008
 
2009
-        if ( $with_key ) {
2010
-            $pay_url = add_query_arg( 'invoice_key', $key, $pay_url );
2009
+        if ($with_key) {
2010
+            $pay_url = add_query_arg('invoice_key', $key, $pay_url);
2011 2011
         } else {
2012
-            $pay_url = add_query_arg( array( 'wpi_action' => 'pay_for_invoice', 'invoice_key' => $key ), $pay_url );
2012
+            $pay_url = add_query_arg(array('wpi_action' => 'pay_for_invoice', 'invoice_key' => $key), $pay_url);
2013 2013
         }
2014 2014
         
2015
-        if ( $secret ) {
2016
-            $pay_url = add_query_arg( array( '_wpipay' => md5( $this->get_user_id() . '::' . $this->get_email() . '::' . $key ) ), $pay_url );
2015
+        if ($secret) {
2016
+            $pay_url = add_query_arg(array('_wpipay' => md5($this->get_user_id() . '::' . $this->get_email() . '::' . $key)), $pay_url);
2017 2017
         }
2018 2018
 
2019
-        return apply_filters( 'wpinv_get_checkout_payment_url', $pay_url, $this, $with_key, $secret );
2019
+        return apply_filters('wpinv_get_checkout_payment_url', $pay_url, $this, $with_key, $secret);
2020 2020
     }
2021 2021
     
2022
-    public function get_view_url( $with_key = false ) {
2023
-        $invoice_url = get_permalink( $this->ID );
2022
+    public function get_view_url($with_key = false) {
2023
+        $invoice_url = get_permalink($this->ID);
2024 2024
 
2025
-        if ( $with_key ) {
2026
-            $invoice_url = add_query_arg( 'invoice_key', $this->get_key(), $invoice_url );
2025
+        if ($with_key) {
2026
+            $invoice_url = add_query_arg('invoice_key', $this->get_key(), $invoice_url);
2027 2027
         }
2028 2028
 
2029
-        return apply_filters( 'wpinv_get_view_url', $invoice_url, $this, $with_key );
2029
+        return apply_filters('wpinv_get_view_url', $invoice_url, $this, $with_key);
2030 2030
     }
2031 2031
     
2032
-    public function generate_key( $string = '' ) {
2033
-        $auth_key  = defined( 'AUTH_KEY' ) ? AUTH_KEY : '';
2034
-        return strtolower( md5( $string . date( 'Y-m-d H:i:s' ) . $auth_key . uniqid( 'wpinv', true ) ) );  // Unique key
2032
+    public function generate_key($string = '') {
2033
+        $auth_key = defined('AUTH_KEY') ? AUTH_KEY : '';
2034
+        return strtolower(md5($string . date('Y-m-d H:i:s') . $auth_key . uniqid('wpinv', true))); // Unique key
2035 2035
     }
2036 2036
     
2037 2037
     public function is_recurring() {
2038
-        if ( empty( $this->cart_details ) ) {
2038
+        if (empty($this->cart_details)) {
2039 2039
             return false;
2040 2040
         }
2041 2041
         
2042 2042
         $has_subscription = false;
2043
-        foreach( $this->cart_details as $cart_item ) {
2044
-            if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
2043
+        foreach ($this->cart_details as $cart_item) {
2044
+            if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
2045 2045
                 $has_subscription = true;
2046 2046
                 break;
2047 2047
             }
2048 2048
         }
2049 2049
         
2050
-        if ( count( $this->cart_details ) > 1 ) {
2050
+        if (count($this->cart_details) > 1) {
2051 2051
             $has_subscription = false;
2052 2052
         }
2053 2053
 
2054
-        return apply_filters( 'wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details );
2054
+        return apply_filters('wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details);
2055 2055
     }
2056 2056
     
2057 2057
     public function is_free_trial() {
2058 2058
         $is_free_trial = false;
2059 2059
         
2060
-        if ( $this->is_parent() && $item = $this->get_recurring( true ) ) {
2061
-            if ( !empty( $item ) && $item->has_free_trial() ) {
2060
+        if ($this->is_parent() && $item = $this->get_recurring(true)) {
2061
+            if (!empty($item) && $item->has_free_trial()) {
2062 2062
                 $is_free_trial = true;
2063 2063
             }
2064 2064
         }
2065 2065
 
2066
-        return apply_filters( 'wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details );
2066
+        return apply_filters('wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details);
2067 2067
     }
2068 2068
     
2069
-    public function get_recurring( $object = false ) {
2069
+    public function get_recurring($object = false) {
2070 2070
         $item = NULL;
2071 2071
         
2072
-        if ( empty( $this->cart_details ) ) {
2072
+        if (empty($this->cart_details)) {
2073 2073
             return $item;
2074 2074
         }
2075 2075
         
2076
-        foreach( $this->cart_details as $cart_item ) {
2077
-            if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
2076
+        foreach ($this->cart_details as $cart_item) {
2077
+            if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
2078 2078
                 $item = $cart_item['id'];
2079 2079
                 break;
2080 2080
             }
2081 2081
         }
2082 2082
         
2083
-        if ( $object ) {
2084
-            $item = $item ? new WPInv_Item( $item ) : NULL;
2083
+        if ($object) {
2084
+            $item = $item ? new WPInv_Item($item) : NULL;
2085 2085
             
2086
-            apply_filters( 'wpinv_invoice_get_recurring_item', $item, $this );
2086
+            apply_filters('wpinv_invoice_get_recurring_item', $item, $this);
2087 2087
         }
2088 2088
 
2089
-        return apply_filters( 'wpinv_invoice_get_recurring_item_id', $item, $this );
2089
+        return apply_filters('wpinv_invoice_get_recurring_item_id', $item, $this);
2090 2090
     }
2091 2091
     
2092 2092
     public function get_subscription_name() {
2093
-        $item = $this->get_recurring( true );
2093
+        $item = $this->get_recurring(true);
2094 2094
         
2095
-        if ( empty( $item ) ) {
2095
+        if (empty($item)) {
2096 2096
             return NULL;
2097 2097
         }
2098 2098
         
2099
-        if ( !($name = $item->get_name()) ) {
2099
+        if (!($name = $item->get_name())) {
2100 2100
             $name = $item->post_name;
2101 2101
         }
2102 2102
 
2103
-        return apply_filters( 'wpinv_invoice_get_subscription_name', $name, $this );
2103
+        return apply_filters('wpinv_invoice_get_subscription_name', $name, $this);
2104 2104
     }
2105 2105
         
2106 2106
     public function get_expiration() {
2107
-        $expiration = $this->get_meta( '_wpinv_subscr_expiration', true );
2107
+        $expiration = $this->get_meta('_wpinv_subscr_expiration', true);
2108 2108
         return $expiration;
2109 2109
     }
2110 2110
     
2111
-    public function get_cancelled_date( $formatted = true ) {
2112
-        $cancelled_date = $this->get_subscription_status() == 'cancelled' ? $this->get_meta( '_wpinv_subscr_cancelled_on', true ) : '';
2111
+    public function get_cancelled_date($formatted = true) {
2112
+        $cancelled_date = $this->get_subscription_status() == 'cancelled' ? $this->get_meta('_wpinv_subscr_cancelled_on', true) : '';
2113 2113
         
2114
-        if ( $formatted && $cancelled_date ) {
2115
-            $cancelled_date = date_i18n( get_option( 'date_format' ), strtotime( $cancelled_date ) );
2114
+        if ($formatted && $cancelled_date) {
2115
+            $cancelled_date = date_i18n(get_option('date_format'), strtotime($cancelled_date));
2116 2116
         }
2117 2117
         
2118 2118
         return $cancelled_date;
2119 2119
     }
2120 2120
     
2121
-    public function get_trial_end_date( $formatted = true ) {
2122
-        if ( !$this->is_free_trial() || ! ( $this->is_paid() || $this->is_refunded() ) ) {
2121
+    public function get_trial_end_date($formatted = true) {
2122
+        if (!$this->is_free_trial() || !($this->is_paid() || $this->is_refunded())) {
2123 2123
             return NULL;
2124 2124
         }
2125 2125
         
2126
-        $trial_end_date = $this->get_subscription_status() == 'trialing' ? $this->get_meta( '_wpinv_subscr_trial_end', true ) : '';
2126
+        $trial_end_date = $this->get_subscription_status() == 'trialing' ? $this->get_meta('_wpinv_subscr_trial_end', true) : '';
2127 2127
         
2128
-        if ( empty( $trial_end_date ) ) {
2129
-            $trial_start_time = strtotime( $this->get_subscription_start() );
2130
-            $trial_start_time += ( wpinv_period_in_days( $this->get_subscription_trial_interval(), $this->get_subscription_trial_period() ) * DAY_IN_SECONDS ) ;
2128
+        if (empty($trial_end_date)) {
2129
+            $trial_start_time = strtotime($this->get_subscription_start());
2130
+            $trial_start_time += (wpinv_period_in_days($this->get_subscription_trial_interval(), $this->get_subscription_trial_period()) * DAY_IN_SECONDS);
2131 2131
             
2132
-            $trial_end_date = date_i18n( 'Y-m-d H:i:s', $trial_start_time );
2132
+            $trial_end_date = date_i18n('Y-m-d H:i:s', $trial_start_time);
2133 2133
         }
2134 2134
         
2135
-        if ( $formatted && $trial_end_date ) {
2136
-            $trial_end_date = date_i18n( get_option( 'date_format' ), strtotime( $trial_end_date ) );
2135
+        if ($formatted && $trial_end_date) {
2136
+            $trial_end_date = date_i18n(get_option('date_format'), strtotime($trial_end_date));
2137 2137
         }
2138 2138
         
2139 2139
         return $trial_end_date;
2140 2140
     }
2141 2141
     
2142
-    public function get_subscription_created( $default = true ) {
2143
-        $created = $this->get_meta( '_wpinv_subscr_created', true );
2142
+    public function get_subscription_created($default = true) {
2143
+        $created = $this->get_meta('_wpinv_subscr_created', true);
2144 2144
         
2145
-        if ( empty( $created ) && $default ) {
2145
+        if (empty($created) && $default) {
2146 2146
             $created = $this->date;
2147 2147
         }
2148 2148
         return $created;
2149 2149
     }
2150 2150
     
2151
-    public function get_subscription_start( $formatted = true ) {
2152
-        if ( ! ( $this->is_paid() || $this->is_refunded() ) ) {
2151
+    public function get_subscription_start($formatted = true) {
2152
+        if (!($this->is_paid() || $this->is_refunded())) {
2153 2153
             return '-';
2154 2154
         }
2155
-        $start   = $this->get_subscription_created();
2155
+        $start = $this->get_subscription_created();
2156 2156
         
2157
-        if ( $formatted ) {
2158
-            $date = date_i18n( get_option( 'date_format' ), strtotime( $start ) );
2157
+        if ($formatted) {
2158
+            $date = date_i18n(get_option('date_format'), strtotime($start));
2159 2159
         } else {
2160
-            $date = date_i18n( 'Y-m-d H:i:s', strtotime( $start ) );
2160
+            $date = date_i18n('Y-m-d H:i:s', strtotime($start));
2161 2161
         }
2162 2162
 
2163 2163
         return $date;
2164 2164
     }
2165 2165
     
2166
-    public function get_subscription_end( $formatted = true ) {
2167
-        if ( ! ( $this->is_paid() || $this->is_refunded() ) ) {
2166
+    public function get_subscription_end($formatted = true) {
2167
+        if (!($this->is_paid() || $this->is_refunded())) {
2168 2168
             return '-';
2169 2169
         }
2170 2170
 
2171
-        if ( $this->get_subscription_status() == 'cancelled' ) {
2172
-            return $this->get_cancelled_date( $formatted );
2171
+        if ($this->get_subscription_status() == 'cancelled') {
2172
+            return $this->get_cancelled_date($formatted);
2173 2173
         }
2174 2174
 
2175 2175
         $start          = $this->get_subscription_created();
2176 2176
         $interval       = $this->get_subscription_interval();
2177
-        $period         = $this->get_subscription_period( true );
2177
+        $period         = $this->get_subscription_period(true);
2178 2178
         $bill_times     = (int)$this->get_bill_times();
2179 2179
         
2180
-        if ( $bill_times == 0 ) {
2181
-            return $formatted ? __( 'Until cancelled', 'invoicing' ) : $bill_times;
2180
+        if ($bill_times == 0) {
2181
+            return $formatted ? __('Until cancelled', 'invoicing') : $bill_times;
2182 2182
         }
2183 2183
         
2184
-        $total_period = $start . '+' . ( $interval * $bill_times ) . ' ' . $period;
2184
+        $total_period = $start . '+' . ($interval * $bill_times) . ' ' . $period;
2185 2185
         
2186
-        $end_time = strtotime( $start . '+' . ( $interval * $bill_times ) . ' ' . $period );
2186
+        $end_time = strtotime($start . '+' . ($interval * $bill_times) . ' ' . $period);
2187 2187
         
2188
-        if ( $this->is_free_trial() ) {
2189
-            $end_time += ( wpinv_period_in_days( $this->get_subscription_trial_interval(), $this->get_subscription_trial_period() ) * DAY_IN_SECONDS ) ;
2188
+        if ($this->is_free_trial()) {
2189
+            $end_time += (wpinv_period_in_days($this->get_subscription_trial_interval(), $this->get_subscription_trial_period()) * DAY_IN_SECONDS);
2190 2190
         }
2191 2191
         
2192
-        if ( $formatted ) {
2193
-            $date = date_i18n( get_option( 'date_format' ), $end_time );
2192
+        if ($formatted) {
2193
+            $date = date_i18n(get_option('date_format'), $end_time);
2194 2194
         } else {
2195
-            $date = date_i18n( 'Y-m-d H:i:s', $end_time );
2195
+            $date = date_i18n('Y-m-d H:i:s', $end_time);
2196 2196
         }
2197 2197
 
2198 2198
         return $date;
2199 2199
     }
2200 2200
     
2201 2201
     public function get_expiration_time() {
2202
-        return strtotime( $this->get_expiration(), current_time( 'timestamp' ) );
2202
+        return strtotime($this->get_expiration(), current_time('timestamp'));
2203 2203
     }
2204 2204
     
2205 2205
     public function get_original_invoice_id() {        
@@ -2211,125 +2211,125 @@  discard block
 block discarded – undo
2211 2211
         return $subscription_data['bill_times'];
2212 2212
     }
2213 2213
 
2214
-    public function get_child_payments( $self = false ) {
2215
-        $invoices = get_posts( array(
2214
+    public function get_child_payments($self = false) {
2215
+        $invoices = get_posts(array(
2216 2216
             'post_type'         => $this->post_type,
2217 2217
             'post_parent'       => (int)$this->ID,
2218 2218
             'posts_per_page'    => '999',
2219
-            'post_status'       => array( 'publish', 'wpi-processing', 'wpi-renewal' ),
2219
+            'post_status'       => array('publish', 'wpi-processing', 'wpi-renewal'),
2220 2220
             'orderby'           => 'ID',
2221 2221
             'order'             => 'DESC',
2222 2222
             'fields'            => 'ids'
2223
-        ) );
2223
+        ));
2224 2224
         
2225
-        if ( $this->is_free_trial() ) {
2225
+        if ($this->is_free_trial()) {
2226 2226
             $self = false;
2227 2227
         }
2228 2228
         
2229
-        if ( $self && $this->is_paid() ) {
2230
-            if ( !empty( $invoices ) ) {
2229
+        if ($self && $this->is_paid()) {
2230
+            if (!empty($invoices)) {
2231 2231
                 $invoices[] = (int)$this->ID;
2232 2232
             } else {
2233
-                $invoices = array( $this->ID );
2233
+                $invoices = array($this->ID);
2234 2234
             }
2235 2235
             
2236
-            $invoices = array_unique( $invoices );
2236
+            $invoices = array_unique($invoices);
2237 2237
         }
2238 2238
 
2239 2239
         return $invoices;
2240 2240
     }
2241 2241
 
2242
-    public function get_total_payments( $self = true ) {
2243
-        return count( $this->get_child_payments( $self ) );
2242
+    public function get_total_payments($self = true) {
2243
+        return count($this->get_child_payments($self));
2244 2244
     }
2245 2245
     
2246
-    public function get_subscriptions( $limit = -1 ) {
2247
-        $subscriptions = wpinv_get_subscriptions( array( 'parent_invoice_id' => $this->ID, 'numberposts' => $limit ) );
2246
+    public function get_subscriptions($limit = -1) {
2247
+        $subscriptions = wpinv_get_subscriptions(array('parent_invoice_id' => $this->ID, 'numberposts' => $limit));
2248 2248
 
2249 2249
         return $subscriptions;
2250 2250
     }
2251 2251
     
2252 2252
     public function get_subscription_id() {
2253
-        $subscription_id = $this->get_meta( '_wpinv_subscr_profile_id', true );
2253
+        $subscription_id = $this->get_meta('_wpinv_subscr_profile_id', true);
2254 2254
         
2255
-        if ( empty( $subscription_id ) && !empty( $this->parent_invoice ) ) {
2256
-            $parent_invoice = wpinv_get_invoice( $this->parent_invoice );
2255
+        if (empty($subscription_id) && !empty($this->parent_invoice)) {
2256
+            $parent_invoice = wpinv_get_invoice($this->parent_invoice);
2257 2257
             
2258
-            $subscription_id = $parent_invoice->get_meta( '_wpinv_subscr_profile_id', true );
2258
+            $subscription_id = $parent_invoice->get_meta('_wpinv_subscr_profile_id', true);
2259 2259
         }
2260 2260
         
2261 2261
         return $subscription_id;
2262 2262
     }
2263 2263
     
2264 2264
     public function get_subscription_status() {
2265
-        $subscription_status = $this->get_meta( '_wpinv_subscr_status', true );
2265
+        $subscription_status = $this->get_meta('_wpinv_subscr_status', true);
2266 2266
 
2267
-        if ( empty( $subscription_status ) ) {
2267
+        if (empty($subscription_status)) {
2268 2268
             $status = 'pending';
2269 2269
             
2270
-            if ( $this->is_paid() ) {        
2270
+            if ($this->is_paid()) {        
2271 2271
                 $bill_times   = (int)$this->get_bill_times();
2272 2272
                 $times_billed = (int)$this->get_total_payments();
2273
-                $expiration = $this->get_subscription_end( false );
2274
-                $expired = $bill_times != 0 && $expiration != '' && $expiration != '-' && strtotime( date_i18n( 'Y-m-d', strtotime( $expiration ) ) ) < strtotime( date_i18n( 'Y-m-d', current_time( 'timestamp' ) ) ) ? true : false;
2273
+                $expiration = $this->get_subscription_end(false);
2274
+                $expired = $bill_times != 0 && $expiration != '' && $expiration != '-' && strtotime(date_i18n('Y-m-d', strtotime($expiration))) < strtotime(date_i18n('Y-m-d', current_time('timestamp'))) ? true : false;
2275 2275
                 
2276
-                if ( (int)$bill_times == 0 ) {
2276
+                if ((int)$bill_times == 0) {
2277 2277
                     $status = $expired ? 'expired' : 'active';
2278
-                } else if ( $bill_times > 0 && $times_billed >= $bill_times ) {
2278
+                } else if ($bill_times > 0 && $times_billed >= $bill_times) {
2279 2279
                     $status = 'completed';
2280
-                } else if ( $expired ) {
2280
+                } else if ($expired) {
2281 2281
                     $status = 'expired';
2282
-                } else if ( $bill_times > 0 ) {
2282
+                } else if ($bill_times > 0) {
2283 2283
                     $status = 'active';
2284 2284
                 } else {
2285 2285
                     $status = 'pending';
2286 2286
                 }
2287 2287
             }
2288 2288
             
2289
-            if ( $status && $status != $subscription_status ) {
2289
+            if ($status && $status != $subscription_status) {
2290 2290
                 $subscription_status = $status;
2291 2291
                 
2292
-                $this->update_meta( '_wpinv_subscr_status', $status );
2292
+                $this->update_meta('_wpinv_subscr_status', $status);
2293 2293
             }
2294 2294
         }
2295 2295
         
2296 2296
         return $subscription_status;
2297 2297
     }
2298 2298
     
2299
-    public function get_subscription_status_label( $status = '' ) {
2300
-        $status = !empty( $status ) ? $status : $this->get_subscription_status();
2299
+    public function get_subscription_status_label($status = '') {
2300
+        $status = !empty($status) ? $status : $this->get_subscription_status();
2301 2301
 
2302
-        switch( $status ) {
2302
+        switch ($status) {
2303 2303
             case 'active' :
2304
-                $status_label = __( 'Active', 'invoicing' );
2304
+                $status_label = __('Active', 'invoicing');
2305 2305
                 break;
2306 2306
 
2307 2307
             case 'cancelled' :
2308
-                $status_label = __( 'Cancelled', 'invoicing' );
2308
+                $status_label = __('Cancelled', 'invoicing');
2309 2309
                 break;
2310 2310
                 
2311 2311
             case 'completed' :
2312
-                $status_label = __( 'Completed', 'invoicing' );
2312
+                $status_label = __('Completed', 'invoicing');
2313 2313
                 break;
2314 2314
 
2315 2315
             case 'expired' :
2316
-                $status_label = __( 'Expired', 'invoicing' );
2316
+                $status_label = __('Expired', 'invoicing');
2317 2317
                 break;
2318 2318
 
2319 2319
             case 'pending' :
2320
-                $status_label = __( 'Pending', 'invoicing' );
2320
+                $status_label = __('Pending', 'invoicing');
2321 2321
                 break;
2322 2322
 
2323 2323
             case 'failing' :
2324
-                $status_label = __( 'Failing', 'invoicing' );
2324
+                $status_label = __('Failing', 'invoicing');
2325 2325
                 break;
2326 2326
                 
2327 2327
             case 'stopped' :
2328
-                $status_label = __( 'Stopped', 'invoicing' );
2328
+                $status_label = __('Stopped', 'invoicing');
2329 2329
                 break;
2330 2330
                 
2331 2331
             case 'trialing' :
2332
-                $status_label = __( 'Trialing', 'invoicing' );
2332
+                $status_label = __('Trialing', 'invoicing');
2333 2333
                 break;
2334 2334
 
2335 2335
             default:
@@ -2340,26 +2340,26 @@  discard block
 block discarded – undo
2340 2340
         return $status_label;
2341 2341
     }
2342 2342
     
2343
-    public function get_subscription_period( $full = false ) {
2344
-        $period = $this->get_meta( '_wpinv_subscr_period', true );
2343
+    public function get_subscription_period($full = false) {
2344
+        $period = $this->get_meta('_wpinv_subscr_period', true);
2345 2345
         
2346 2346
         // Fix period for old invoices
2347
-        if ( $period == 'day' ) {
2347
+        if ($period == 'day') {
2348 2348
             $period = 'D';
2349
-        } else if ( $period == 'week' ) {
2349
+        } else if ($period == 'week') {
2350 2350
             $period = 'W';
2351
-        } else if ( $period == 'month' ) {
2351
+        } else if ($period == 'month') {
2352 2352
             $period = 'M';
2353
-        } else if ( $period == 'year' ) {
2353
+        } else if ($period == 'year') {
2354 2354
             $period = 'Y';
2355 2355
         }
2356 2356
         
2357
-        if ( !in_array( $period, array( 'D', 'W', 'M', 'Y' ) ) ) {
2357
+        if (!in_array($period, array('D', 'W', 'M', 'Y'))) {
2358 2358
             $period = 'D';
2359 2359
         }
2360 2360
         
2361
-        if ( $full ) {
2362
-            switch( $period ) {
2361
+        if ($full) {
2362
+            switch ($period) {
2363 2363
                 case 'D':
2364 2364
                     $period = 'day';
2365 2365
                 break;
@@ -2379,39 +2379,39 @@  discard block
 block discarded – undo
2379 2379
     }
2380 2380
     
2381 2381
     public function get_subscription_interval() {
2382
-        $interval = (int)$this->get_meta( '_wpinv_subscr_interval', true );
2382
+        $interval = (int)$this->get_meta('_wpinv_subscr_interval', true);
2383 2383
         
2384
-        if ( !$interval > 0 ) {
2384
+        if (!$interval > 0) {
2385 2385
             $interval = 1;
2386 2386
         }
2387 2387
         
2388 2388
         return $interval;
2389 2389
     }
2390 2390
     
2391
-    public function get_subscription_trial_period( $full = false ) {
2392
-        if ( !$this->is_free_trial() ) {
2391
+    public function get_subscription_trial_period($full = false) {
2392
+        if (!$this->is_free_trial()) {
2393 2393
             return '';
2394 2394
         }
2395 2395
         
2396
-        $period = $this->get_meta( '_wpinv_subscr_trial_period', true );
2396
+        $period = $this->get_meta('_wpinv_subscr_trial_period', true);
2397 2397
         
2398 2398
         // Fix period for old invoices
2399
-        if ( $period == 'day' ) {
2399
+        if ($period == 'day') {
2400 2400
             $period = 'D';
2401
-        } else if ( $period == 'week' ) {
2401
+        } else if ($period == 'week') {
2402 2402
             $period = 'W';
2403
-        } else if ( $period == 'month' ) {
2403
+        } else if ($period == 'month') {
2404 2404
             $period = 'M';
2405
-        } else if ( $period == 'year' ) {
2405
+        } else if ($period == 'year') {
2406 2406
             $period = 'Y';
2407 2407
         }
2408 2408
         
2409
-        if ( !in_array( $period, array( 'D', 'W', 'M', 'Y' ) ) ) {
2409
+        if (!in_array($period, array('D', 'W', 'M', 'Y'))) {
2410 2410
             $period = 'D';
2411 2411
         }
2412 2412
         
2413
-        if ( $full ) {
2414
-            switch( $period ) {
2413
+        if ($full) {
2414
+            switch ($period) {
2415 2415
                 case 'D':
2416 2416
                     $period = 'day';
2417 2417
                 break;
@@ -2431,13 +2431,13 @@  discard block
 block discarded – undo
2431 2431
     }
2432 2432
     
2433 2433
     public function get_subscription_trial_interval() {
2434
-        if ( !$this->is_free_trial() ) {
2434
+        if (!$this->is_free_trial()) {
2435 2435
             return 0;
2436 2436
         }
2437 2437
         
2438
-        $interval = (int)$this->get_meta( '_wpinv_subscr_trial_interval', true );
2438
+        $interval = (int)$this->get_meta('_wpinv_subscr_trial_interval', true);
2439 2439
         
2440
-        if ( !$interval > 0 ) {
2440
+        if (!$interval > 0) {
2441 2441
             $interval = 1;
2442 2442
         }
2443 2443
         
@@ -2449,8 +2449,8 @@  discard block
 block discarded – undo
2449 2449
             'status' => 'failing'
2450 2450
         );
2451 2451
 
2452
-        if ( $this->update_subscription( $args ) ) {
2453
-            do_action( 'wpinv_subscription_failing', $this->ID, $this );
2452
+        if ($this->update_subscription($args)) {
2453
+            do_action('wpinv_subscription_failing', $this->ID, $this);
2454 2454
             return true;
2455 2455
         }
2456 2456
 
@@ -2462,8 +2462,8 @@  discard block
 block discarded – undo
2462 2462
             'status' => 'stopped'
2463 2463
         );
2464 2464
 
2465
-        if ( $this->update_subscription( $args ) ) {
2466
-            do_action( 'wpinv_subscription_stopped', $this->ID, $this );
2465
+        if ($this->update_subscription($args)) {
2466
+            do_action('wpinv_subscription_stopped', $this->ID, $this);
2467 2467
             return true;
2468 2468
         }
2469 2469
 
@@ -2475,8 +2475,8 @@  discard block
 block discarded – undo
2475 2475
             'status' => 'active'
2476 2476
         );
2477 2477
 
2478
-        if ( $this->update_subscription( $args ) ) {
2479
-            do_action( 'wpinv_subscription_restarted', $this->ID, $this );
2478
+        if ($this->update_subscription($args)) {
2479
+            do_action('wpinv_subscription_restarted', $this->ID, $this);
2480 2480
             return true;
2481 2481
         }
2482 2482
 
@@ -2488,23 +2488,23 @@  discard block
 block discarded – undo
2488 2488
             'status' => 'cancelled'
2489 2489
         );
2490 2490
 
2491
-        if ( $this->update_subscription( $args ) ) {
2492
-            if ( is_user_logged_in() ) {
2493
-                $userdata = get_userdata( get_current_user_id() );
2491
+        if ($this->update_subscription($args)) {
2492
+            if (is_user_logged_in()) {
2493
+                $userdata = get_userdata(get_current_user_id());
2494 2494
                 $user     = $userdata->user_login;
2495 2495
             } else {
2496
-                $user = __( 'gateway', 'invoicing' );
2496
+                $user = __('gateway', 'invoicing');
2497 2497
             }
2498 2498
             
2499 2499
             $subscription_id = $this->get_subscription_id();
2500
-            if ( !$subscription_id ) {
2500
+            if (!$subscription_id) {
2501 2501
                 $subscription_id = $this->ID;
2502 2502
             }
2503 2503
 
2504
-            $note = sprintf( __( 'Subscription %s has been cancelled by %s', 'invoicing' ), $subscription_id, $user );
2505
-            $this->add_note( $note );
2504
+            $note = sprintf(__('Subscription %s has been cancelled by %s', 'invoicing'), $subscription_id, $user);
2505
+            $this->add_note($note);
2506 2506
 
2507
-            do_action( 'wpinv_subscription_cancelled', $this->ID, $this );
2507
+            do_action('wpinv_subscription_cancelled', $this->ID, $this);
2508 2508
             return true;
2509 2509
         }
2510 2510
 
@@ -2512,11 +2512,11 @@  discard block
 block discarded – undo
2512 2512
     }
2513 2513
 
2514 2514
     public function can_cancel() {
2515
-        return apply_filters( 'wpinv_subscription_can_cancel', false, $this );
2515
+        return apply_filters('wpinv_subscription_can_cancel', false, $this);
2516 2516
     }
2517 2517
     
2518
-    public function add_subscription( $data = array() ) {
2519
-        if ( empty( $this->ID ) ) {
2518
+    public function add_subscription($data = array()) {
2519
+        if (empty($this->ID)) {
2520 2520
             return false;
2521 2521
         }
2522 2522
 
@@ -2535,85 +2535,85 @@  discard block
 block discarded – undo
2535 2535
             'profile_id'        => '',
2536 2536
         );
2537 2537
 
2538
-        $args = wp_parse_args( $data, $defaults );
2538
+        $args = wp_parse_args($data, $defaults);
2539 2539
 
2540
-        if ( $args['expiration'] && strtotime( 'NOW', current_time( 'timestamp' ) ) > strtotime( $args['expiration'], current_time( 'timestamp' ) ) ) {
2541
-            if ( 'active' == $args['status'] || $args['status'] == 'trialing' ) {
2540
+        if ($args['expiration'] && strtotime('NOW', current_time('timestamp')) > strtotime($args['expiration'], current_time('timestamp'))) {
2541
+            if ('active' == $args['status'] || $args['status'] == 'trialing') {
2542 2542
                 $args['status'] = 'expired';
2543 2543
             }
2544 2544
         }
2545 2545
 
2546
-        do_action( 'wpinv_subscription_pre_create', $args, $data, $this );
2546
+        do_action('wpinv_subscription_pre_create', $args, $data, $this);
2547 2547
         
2548
-        if ( !empty( $args ) ) {
2549
-            foreach ( $args as $key => $value ) {
2550
-                $this->update_meta( '_wpinv_subscr_' . $key, $value );
2548
+        if (!empty($args)) {
2549
+            foreach ($args as $key => $value) {
2550
+                $this->update_meta('_wpinv_subscr_' . $key, $value);
2551 2551
             }
2552 2552
         }
2553 2553
 
2554
-        do_action( 'wpinv_subscription_post_create', $args, $data, $this );
2554
+        do_action('wpinv_subscription_post_create', $args, $data, $this);
2555 2555
 
2556 2556
         return true;
2557 2557
     }
2558 2558
     
2559
-    public function update_subscription( $args = array() ) {
2560
-        if ( empty( $this->ID ) ) {
2559
+    public function update_subscription($args = array()) {
2560
+        if (empty($this->ID)) {
2561 2561
             return false;
2562 2562
         }
2563 2563
 
2564
-        if ( !empty( $args['expiration'] ) && $args['expiration'] && strtotime( 'NOW', current_time( 'timestamp' ) ) > strtotime( $args['expiration'], current_time( 'timestamp' ) ) ) {
2565
-            if ( !isset( $args['status'] ) || ( isset( $args['status'] ) && ( 'active' == $args['status'] || $args['status'] == 'trialing' ) ) ) {
2564
+        if (!empty($args['expiration']) && $args['expiration'] && strtotime('NOW', current_time('timestamp')) > strtotime($args['expiration'], current_time('timestamp'))) {
2565
+            if (!isset($args['status']) || (isset($args['status']) && ('active' == $args['status'] || $args['status'] == 'trialing'))) {
2566 2566
                 $args['status'] = 'expired';
2567 2567
             }
2568 2568
         }
2569 2569
 
2570
-        if ( isset( $args['status'] ) && $args['status'] == 'cancelled' && empty( $args['cancelled_on'] ) ) {
2571
-            $args['cancelled_on'] = date_i18n( 'Y-m-d H:i:s', current_time( 'timestamp' ) );
2570
+        if (isset($args['status']) && $args['status'] == 'cancelled' && empty($args['cancelled_on'])) {
2571
+            $args['cancelled_on'] = date_i18n('Y-m-d H:i:s', current_time('timestamp'));
2572 2572
         }
2573 2573
 
2574
-        do_action( 'wpinv_subscription_pre_update', $args, $this );
2574
+        do_action('wpinv_subscription_pre_update', $args, $this);
2575 2575
         
2576
-        if ( !empty( $args ) ) {
2577
-            foreach ( $args as $key => $value ) {
2578
-                $this->update_meta( '_wpinv_subscr_' . $key, $value );
2576
+        if (!empty($args)) {
2577
+            foreach ($args as $key => $value) {
2578
+                $this->update_meta('_wpinv_subscr_' . $key, $value);
2579 2579
             }
2580 2580
         }
2581 2581
 
2582
-        do_action( 'wpinv_subscription_post_update', $args, $this );
2582
+        do_action('wpinv_subscription_post_update', $args, $this);
2583 2583
 
2584 2584
         return true;
2585 2585
     }
2586 2586
     
2587 2587
     public function renew_subscription() {
2588 2588
         $parent_invoice = $this->get_parent_payment();
2589
-        $parent_invoice = empty( $parent_invoice ) ? $this : $parent_invoice;
2589
+        $parent_invoice = empty($parent_invoice) ? $this : $parent_invoice;
2590 2590
         
2591
-        $current_time   = current_time( 'timestamp' );
2591
+        $current_time   = current_time('timestamp');
2592 2592
         $start          = $this->get_subscription_created();
2593
-        $start          = $start ? strtotime( $start ) : $current_time;
2593
+        $start          = $start ? strtotime($start) : $current_time;
2594 2594
         $expires        = $this->get_expiration_time();
2595 2595
         
2596
-        if ( !$expires ) {
2597
-            $expires    = strtotime( '+' . $parent_invoice->get_subscription_interval() . ' ' . $parent_invoice->get_subscription_period( true ), $start );
2596
+        if (!$expires) {
2597
+            $expires    = strtotime('+' . $parent_invoice->get_subscription_interval() . ' ' . $parent_invoice->get_subscription_period(true), $start);
2598 2598
         }
2599 2599
         
2600
-        $expiration     = date_i18n( 'Y-m-d 23:59:59', $expires );
2601
-        $expiration     = apply_filters( 'wpinv_subscription_renewal_expiration', $expiration, $this->ID, $this );
2600
+        $expiration     = date_i18n('Y-m-d 23:59:59', $expires);
2601
+        $expiration     = apply_filters('wpinv_subscription_renewal_expiration', $expiration, $this->ID, $this);
2602 2602
         $bill_times     = $parent_invoice->get_bill_times();
2603 2603
         $times_billed   = $parent_invoice->get_total_payments();
2604 2604
         
2605
-        if ( $parent_invoice->get_subscription_status() == 'trialing' && ( $times_billed > 0 || strtotime( date_i18n( 'Y-m-d' ) ) < strtotime( $parent_invoice->get_trial_end_date( false ) ) ) ) {
2605
+        if ($parent_invoice->get_subscription_status() == 'trialing' && ($times_billed > 0 || strtotime(date_i18n('Y-m-d')) < strtotime($parent_invoice->get_trial_end_date(false)))) {
2606 2606
             $args = array(
2607 2607
                 'status'     => 'active',
2608 2608
             );
2609 2609
 
2610
-            $parent_invoice->update_subscription( $args );
2610
+            $parent_invoice->update_subscription($args);
2611 2611
         }
2612 2612
         
2613
-        do_action( 'wpinv_subscription_pre_renew', $this->ID, $expiration, $this );
2613
+        do_action('wpinv_subscription_pre_renew', $this->ID, $expiration, $this);
2614 2614
 
2615
-        $status       = 'active';
2616
-        if ( $bill_times > 0 && $times_billed >= $bill_times ) {
2615
+        $status = 'active';
2616
+        if ($bill_times > 0 && $times_billed >= $bill_times) {
2617 2617
             $this->complete_subscription();
2618 2618
             $status = 'completed';
2619 2619
         }
@@ -2623,10 +2623,10 @@  discard block
 block discarded – undo
2623 2623
             'status'     => $status,
2624 2624
         );
2625 2625
 
2626
-        $this->update_subscription( $args );
2626
+        $this->update_subscription($args);
2627 2627
 
2628
-        do_action( 'wpinv_subscription_post_renew', $this->ID, $expiration, $this );
2629
-        do_action( 'wpinv_recurring_set_subscription_status', $this->ID, $status, $this );
2628
+        do_action('wpinv_subscription_post_renew', $this->ID, $expiration, $this);
2629
+        do_action('wpinv_recurring_set_subscription_status', $this->ID, $status, $this);
2630 2630
     }
2631 2631
     
2632 2632
     public function complete_subscription() {
@@ -2634,8 +2634,8 @@  discard block
 block discarded – undo
2634 2634
             'status' => 'completed'
2635 2635
         );
2636 2636
 
2637
-        if ( $this->update_subscription( $args ) ) {
2638
-            do_action( 'wpinv_subscription_completed', $this->ID, $this );
2637
+        if ($this->update_subscription($args)) {
2638
+            do_action('wpinv_subscription_completed', $this->ID, $this);
2639 2639
         }
2640 2640
     }
2641 2641
     
@@ -2644,44 +2644,44 @@  discard block
 block discarded – undo
2644 2644
             'status' => 'expired'
2645 2645
         );
2646 2646
 
2647
-        if ( $this->update_subscription( $args ) ) {
2648
-            do_action( 'wpinv_subscription_expired', $this->ID, $this );
2647
+        if ($this->update_subscription($args)) {
2648
+            do_action('wpinv_subscription_expired', $this->ID, $this);
2649 2649
         }
2650 2650
     }
2651 2651
 
2652 2652
     public function get_cancel_url() {
2653
-        $url = wp_nonce_url( add_query_arg( array( 'wpi_action' => 'cancel_subscription', 'sub_id' => $this->ID ) ), 'wpinv-recurring-cancel' );
2653
+        $url = wp_nonce_url(add_query_arg(array('wpi_action' => 'cancel_subscription', 'sub_id' => $this->ID)), 'wpinv-recurring-cancel');
2654 2654
 
2655
-        return apply_filters( 'wpinv_subscription_cancel_url', $url, $this );
2655
+        return apply_filters('wpinv_subscription_cancel_url', $url, $this);
2656 2656
     }
2657 2657
 
2658 2658
     public function can_update() {
2659
-        return apply_filters( 'wpinv_subscription_can_update', false, $this );
2659
+        return apply_filters('wpinv_subscription_can_update', false, $this);
2660 2660
     }
2661 2661
 
2662 2662
     public function get_update_url() {
2663
-        $url = add_query_arg( array( 'action' => 'update', 'sub_id' => $this->ID ) );
2663
+        $url = add_query_arg(array('action' => 'update', 'sub_id' => $this->ID));
2664 2664
 
2665
-        return apply_filters( 'wpinv_subscription_update_url', $url, $this );
2665
+        return apply_filters('wpinv_subscription_update_url', $url, $this);
2666 2666
     }
2667 2667
 
2668 2668
     public function is_parent() {
2669
-        $is_parent = empty( $this->parent_invoice ) ? true : false;
2669
+        $is_parent = empty($this->parent_invoice) ? true : false;
2670 2670
 
2671
-        return apply_filters( 'wpinv_invoice_is_parent', $is_parent, $this );
2671
+        return apply_filters('wpinv_invoice_is_parent', $is_parent, $this);
2672 2672
     }
2673 2673
     
2674 2674
     public function is_renewal() {
2675 2675
         $is_renewal = $this->parent_invoice && $this->parent_invoice != $this->ID ? true : false;
2676 2676
 
2677
-        return apply_filters( 'wpinv_invoice_is_renewal', $is_renewal, $this );
2677
+        return apply_filters('wpinv_invoice_is_renewal', $is_renewal, $this);
2678 2678
     }
2679 2679
     
2680 2680
     public function get_parent_payment() {
2681 2681
         $parent_payment = NULL;
2682 2682
         
2683
-        if ( $this->is_renewal() ) {
2684
-            $parent_payment = wpinv_get_invoice( $this->parent_invoice );
2683
+        if ($this->is_renewal()) {
2684
+            $parent_payment = wpinv_get_invoice($this->parent_invoice);
2685 2685
         }
2686 2686
         
2687 2687
         return $parent_payment;
@@ -2692,100 +2692,100 @@  discard block
 block discarded – undo
2692 2692
         
2693 2693
         $subscription_status = $this->get_subscription_status();
2694 2694
 
2695
-        if( ! $this->is_subscription_expired() && ( $subscription_status == 'active' || $subscription_status == 'cancelled' || $subscription_status == 'trialing' ) ) {
2695
+        if (!$this->is_subscription_expired() && ($subscription_status == 'active' || $subscription_status == 'cancelled' || $subscription_status == 'trialing')) {
2696 2696
             $ret = true;
2697 2697
         }
2698 2698
 
2699
-        return apply_filters( 'wpinv_subscription_is_active', $ret, $this->ID, $this );
2699
+        return apply_filters('wpinv_subscription_is_active', $ret, $this->ID, $this);
2700 2700
     }
2701 2701
 
2702 2702
     public function is_subscription_expired() {
2703 2703
         $ret = false;
2704 2704
         $subscription_status = $this->get_subscription_status();
2705 2705
 
2706
-        if ( $subscription_status == 'expired' ) {
2706
+        if ($subscription_status == 'expired') {
2707 2707
             $ret = true;
2708
-        } else if ( 'active' === $subscription_status || 'cancelled' === $subscription_status || 'trialing' == $subscription_status ) {
2708
+        } else if ('active' === $subscription_status || 'cancelled' === $subscription_status || 'trialing' == $subscription_status) {
2709 2709
             $ret        = false;
2710 2710
             $expiration = $this->get_expiration_time();
2711 2711
 
2712
-            if ( $expiration && strtotime( 'NOW', current_time( 'timestamp' ) ) > $expiration ) {
2712
+            if ($expiration && strtotime('NOW', current_time('timestamp')) > $expiration) {
2713 2713
                 $ret = true;
2714 2714
 
2715
-                if ( 'active' === $subscription_status || 'trialing' === $subscription_status ) {
2715
+                if ('active' === $subscription_status || 'trialing' === $subscription_status) {
2716 2716
                     $this->expire_subscription();
2717 2717
                 }
2718 2718
             }
2719 2719
         }
2720 2720
 
2721
-        return apply_filters( 'wpinv_subscription_is_expired', $ret, $this->ID, $this );
2721
+        return apply_filters('wpinv_subscription_is_expired', $ret, $this->ID, $this);
2722 2722
     }
2723 2723
     
2724
-    public function get_new_expiration( $item_id = 0, $trial = true ) {
2725
-        $item   = new WPInv_Item( $item_id );
2724
+    public function get_new_expiration($item_id = 0, $trial = true) {
2725
+        $item   = new WPInv_Item($item_id);
2726 2726
         $interval = $item->get_recurring_interval();
2727
-        $period = $item->get_recurring_period( true );
2727
+        $period = $item->get_recurring_period(true);
2728 2728
         
2729
-        $expiration_time = strtotime( '+' . $interval . ' ' . $period );
2729
+        $expiration_time = strtotime('+' . $interval . ' ' . $period);
2730 2730
         
2731
-        if ( $trial && $this->is_free_trial() && $item->has_free_trial() ) {
2732
-            $expiration_time += ( wpinv_period_in_days( $item->get_trial_interval(), $item->get_trial_period() ) * DAY_IN_SECONDS ) ;
2731
+        if ($trial && $this->is_free_trial() && $item->has_free_trial()) {
2732
+            $expiration_time += (wpinv_period_in_days($item->get_trial_interval(), $item->get_trial_period()) * DAY_IN_SECONDS);
2733 2733
         }
2734 2734
 
2735
-        return date_i18n( 'Y-m-d 23:59:59', $expiration_time );
2735
+        return date_i18n('Y-m-d 23:59:59', $expiration_time);
2736 2736
     }
2737 2737
     
2738
-    public function get_subscription_data( $filed = '' ) {
2739
-        $fields = array( 'item_id', 'status', 'period', 'initial_amount', 'recurring_amount', 'interval', 'bill_times', 'trial_period', 'trial_interval', 'expiration', 'profile_id', 'created', 'cancelled_on' );
2738
+    public function get_subscription_data($filed = '') {
2739
+        $fields = array('item_id', 'status', 'period', 'initial_amount', 'recurring_amount', 'interval', 'bill_times', 'trial_period', 'trial_interval', 'expiration', 'profile_id', 'created', 'cancelled_on');
2740 2740
         
2741 2741
         $subscription_meta = array();
2742
-        foreach ( $fields as $field ) {
2743
-            $subscription_meta[ $field ] = $this->get_meta( '_wpinv_subscr_' . $field );
2742
+        foreach ($fields as $field) {
2743
+            $subscription_meta[$field] = $this->get_meta('_wpinv_subscr_' . $field);
2744 2744
         }
2745 2745
         
2746
-        $item = $this->get_recurring( true );
2746
+        $item = $this->get_recurring(true);
2747 2747
         
2748
-        if ( !empty( $item ) ) {
2749
-            if ( empty( $subscription_meta['item_id'] ) ) {
2748
+        if (!empty($item)) {
2749
+            if (empty($subscription_meta['item_id'])) {
2750 2750
                 $subscription_meta['item_id'] = $item->ID;
2751 2751
             }
2752
-            if ( empty( $subscription_meta['period'] ) ) {
2752
+            if (empty($subscription_meta['period'])) {
2753 2753
                 $subscription_meta['period'] = $item->get_recurring_period();
2754 2754
             }
2755
-            if ( empty( $subscription_meta['interval'] ) ) {
2755
+            if (empty($subscription_meta['interval'])) {
2756 2756
                 $subscription_meta['interval'] = $item->get_recurring_interval();
2757 2757
             }
2758
-            if ( $item->has_free_trial() ) {
2759
-                if ( empty( $subscription_meta['trial_period'] ) ) {
2758
+            if ($item->has_free_trial()) {
2759
+                if (empty($subscription_meta['trial_period'])) {
2760 2760
                     $subscription_meta['trial_period'] = $item->get_trial_period();
2761 2761
                 }
2762
-                if ( empty( $subscription_meta['trial_interval'] ) ) {
2762
+                if (empty($subscription_meta['trial_interval'])) {
2763 2763
                     $subscription_meta['trial_interval'] = $item->get_trial_interval();
2764 2764
                 }
2765 2765
             } else {
2766 2766
                 $subscription_meta['trial_period']      = '';
2767 2767
                 $subscription_meta['trial_interval']    = 0;
2768 2768
             }
2769
-            if ( !$subscription_meta['bill_times'] && $subscription_meta['bill_times'] !== 0 ) {
2769
+            if (!$subscription_meta['bill_times'] && $subscription_meta['bill_times'] !== 0) {
2770 2770
                 $subscription_meta['bill_times'] = $item->get_recurring_limit();
2771 2771
             }
2772
-            if ( $subscription_meta['initial_amount'] === '' || $subscription_meta['recurring_amount'] === '' ) {
2773
-                $subscription_meta['initial_amount']    = wpinv_round_amount( $this->get_total() );
2774
-                $subscription_meta['recurring_amount']  = wpinv_round_amount( $this->get_recurring_details( 'total' ) );
2772
+            if ($subscription_meta['initial_amount'] === '' || $subscription_meta['recurring_amount'] === '') {
2773
+                $subscription_meta['initial_amount']    = wpinv_round_amount($this->get_total());
2774
+                $subscription_meta['recurring_amount']  = wpinv_round_amount($this->get_recurring_details('total'));
2775 2775
             }
2776 2776
         }
2777 2777
         
2778
-        if ( $filed === '' ) {
2779
-            return apply_filters( 'wpinv_get_invoice_subscription_data', $subscription_meta, $this );
2778
+        if ($filed === '') {
2779
+            return apply_filters('wpinv_get_invoice_subscription_data', $subscription_meta, $this);
2780 2780
         }
2781 2781
         
2782
-        $value = isset( $subscription_meta[$filed] ) ? $subscription_meta[$filed] : '';
2782
+        $value = isset($subscription_meta[$filed]) ? $subscription_meta[$filed] : '';
2783 2783
         
2784
-        return apply_filters( 'wpinv_invoice_subscription_data_value', $value, $subscription_meta, $this );
2784
+        return apply_filters('wpinv_invoice_subscription_data_value', $value, $subscription_meta, $this);
2785 2785
     }
2786 2786
     
2787 2787
     public function is_paid() {
2788
-        if ( $this->has_status( array( 'publish', 'wpi-processing', 'wpi-renewal' ) ) ) {
2788
+        if ($this->has_status(array('publish', 'wpi-processing', 'wpi-renewal'))) {
2789 2789
             return true;
2790 2790
         }
2791 2791
         
@@ -2793,23 +2793,23 @@  discard block
 block discarded – undo
2793 2793
     }
2794 2794
     
2795 2795
     public function is_refunded() {
2796
-        $is_refunded = $this->has_status( array( 'wpi-refunded' ) );
2796
+        $is_refunded = $this->has_status(array('wpi-refunded'));
2797 2797
 
2798
-        return apply_filters( 'wpinv_invoice_is_refunded', $is_refunded, $this );
2798
+        return apply_filters('wpinv_invoice_is_refunded', $is_refunded, $this);
2799 2799
     }
2800 2800
     
2801 2801
     public function is_free() {
2802 2802
         $is_free = false;
2803 2803
         
2804
-        if ( !( (float)wpinv_round_amount( $this->get_total() ) > 0 ) ) {
2805
-            if ( $this->is_parent() && $this->is_recurring() ) {
2806
-                $is_free = (float)wpinv_round_amount( $this->get_recurring_details( 'total' ) ) > 0 ? false : true;
2804
+        if (!((float)wpinv_round_amount($this->get_total()) > 0)) {
2805
+            if ($this->is_parent() && $this->is_recurring()) {
2806
+                $is_free = (float)wpinv_round_amount($this->get_recurring_details('total')) > 0 ? false : true;
2807 2807
             } else {
2808 2808
                 $is_free = true;
2809 2809
             }
2810 2810
         }
2811 2811
         
2812
-        return apply_filters( 'wpinv_invoice_is_free', $is_free, $this );
2812
+        return apply_filters('wpinv_invoice_is_free', $is_free, $this);
2813 2813
     }
2814 2814
     
2815 2815
     public function has_vat() {
@@ -2817,41 +2817,41 @@  discard block
 block discarded – undo
2817 2817
         
2818 2818
         $requires_vat = false;
2819 2819
         
2820
-        if ( $this->country ) {
2820
+        if ($this->country) {
2821 2821
             $wpi_country        = $this->country;
2822 2822
             
2823
-            $requires_vat       = $wpinv_euvat->requires_vat( $requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule( $this ) );
2823
+            $requires_vat       = $wpinv_euvat->requires_vat($requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule($this));
2824 2824
         }
2825 2825
         
2826
-        return apply_filters( 'wpinv_invoice_has_vat', $requires_vat, $this );
2826
+        return apply_filters('wpinv_invoice_has_vat', $requires_vat, $this);
2827 2827
     }
2828 2828
     
2829 2829
     public function refresh_item_ids() {
2830 2830
         $item_ids = array();
2831 2831
         
2832
-        if ( !empty( $this->cart_details ) ) {
2833
-            foreach ( $this->cart_details as $key => $item ) {
2834
-                if ( !empty( $item['id'] ) ) {
2832
+        if (!empty($this->cart_details)) {
2833
+            foreach ($this->cart_details as $key => $item) {
2834
+                if (!empty($item['id'])) {
2835 2835
                     $item_ids[] = $item['id'];
2836 2836
                 }
2837 2837
             }
2838 2838
         }
2839 2839
         
2840
-        $item_ids = !empty( $item_ids ) ? implode( ',', array_unique( $item_ids ) ) : '';
2840
+        $item_ids = !empty($item_ids) ? implode(',', array_unique($item_ids)) : '';
2841 2841
         
2842
-        update_post_meta( $this->ID, '_wpinv_item_ids', $item_ids );
2842
+        update_post_meta($this->ID, '_wpinv_item_ids', $item_ids);
2843 2843
     }
2844 2844
     
2845
-    public function get_invoice_quote_type( $post_id ) {
2846
-        if ( empty( $post_id ) ) {
2845
+    public function get_invoice_quote_type($post_id) {
2846
+        if (empty($post_id)) {
2847 2847
             return '';
2848 2848
         }
2849 2849
 
2850
-        $type = get_post_type( $post_id );
2850
+        $type = get_post_type($post_id);
2851 2851
 
2852
-        if ( 'wpi_invoice' === $type ) {
2852
+        if ('wpi_invoice' === $type) {
2853 2853
             $post_type = __('Invoice', 'invoicing');
2854
-        } else{
2854
+        } else {
2855 2855
             $post_type = __('Quote', 'invoicing');
2856 2856
         }
2857 2857
 
Please login to merge, or discard this patch.