Passed
Pull Request — master (#126)
by Kiran
07:22 queued 03:36
created
includes/wpinv-tax-functions.php 1 patch
Spacing   +164 added lines, -164 removed lines patch added patch discarded remove patch
@@ -1,121 +1,121 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7 7
 function wpinv_use_taxes() {
8
-    $ret = wpinv_get_option( 'enable_taxes', false );
8
+    $ret = wpinv_get_option('enable_taxes', false);
9 9
     
10
-    return (bool) apply_filters( 'wpinv_use_taxes', $ret );
10
+    return (bool)apply_filters('wpinv_use_taxes', $ret);
11 11
 }
12 12
 
13 13
 function wpinv_get_tax_rates() {
14
-    $rates = get_option( 'wpinv_tax_rates', array() );
14
+    $rates = get_option('wpinv_tax_rates', array());
15 15
     
16
-    return apply_filters( 'wpinv_get_tax_rates', $rates );
16
+    return apply_filters('wpinv_get_tax_rates', $rates);
17 17
 }
18 18
 
19
-function wpinv_get_tax_rate( $country = false, $state = false, $item_id = 0 ) {
19
+function wpinv_get_tax_rate($country = false, $state = false, $item_id = 0) {
20 20
     global $wpinv_euvat, $wpi_tax_rates, $wpi_userID;
21
-    $wpi_tax_rates = !empty( $wpi_tax_rates ) ? $wpi_tax_rates : array();
21
+    $wpi_tax_rates = !empty($wpi_tax_rates) ? $wpi_tax_rates : array();
22 22
     
23
-    if ( !empty( $wpi_tax_rates ) && !empty( $item_id ) && isset( $wpi_tax_rates[$item_id] ) ) {
23
+    if (!empty($wpi_tax_rates) && !empty($item_id) && isset($wpi_tax_rates[$item_id])) {
24 24
         return $wpi_tax_rates[$item_id];
25 25
     }
26 26
     
27
-    if ( !$wpinv_euvat->item_is_taxable( $item_id, $country, $state ) ) {
27
+    if (!$wpinv_euvat->item_is_taxable($item_id, $country, $state)) {
28 28
         $wpi_tax_rates[$item_id] = 0;
29 29
         return 0;
30 30
     }
31 31
     
32 32
     $is_global = false;
33
-    if ( $item_id == 'global' ) {
33
+    if ($item_id == 'global') {
34 34
         $is_global = true;
35 35
         $item_id = 0;
36 36
     }
37 37
     
38
-    $rate           = (float)wpinv_get_option( 'tax_rate', 0 );
39
-    $user_address   = wpinv_get_user_address( $wpi_userID );
38
+    $rate           = (float)wpinv_get_option('tax_rate', 0);
39
+    $user_address   = wpinv_get_user_address($wpi_userID);
40 40
     
41
-    if( empty( $country ) ) {
42
-        if( !empty( $_POST['wpinv_country'] ) ) {
41
+    if (empty($country)) {
42
+        if (!empty($_POST['wpinv_country'])) {
43 43
             $country = $_POST['wpinv_country'];
44
-        } elseif( !empty( $_POST['wpinv_country'] ) ) {
44
+        } elseif (!empty($_POST['wpinv_country'])) {
45 45
             $country = $_POST['wpinv_country'];
46
-        } elseif( !empty( $_POST['country'] ) ) {
46
+        } elseif (!empty($_POST['country'])) {
47 47
             $country = $_POST['country'];
48
-        } elseif( is_user_logged_in() && !empty( $user_address ) ) {
48
+        } elseif (is_user_logged_in() && !empty($user_address)) {
49 49
             $country = $user_address['country'];
50 50
         }
51
-        $country = !empty( $country ) ? $country : wpinv_get_default_country();
51
+        $country = !empty($country) ? $country : wpinv_get_default_country();
52 52
     }
53 53
 
54
-    if( empty( $state ) ) {
55
-        if( !empty( $_POST['wpinv_state'] ) ) {
54
+    if (empty($state)) {
55
+        if (!empty($_POST['wpinv_state'])) {
56 56
             $state = $_POST['wpinv_state'];
57
-        } elseif( !empty( $_POST['wpinv_state'] ) ) {
57
+        } elseif (!empty($_POST['wpinv_state'])) {
58 58
             $state = $_POST['wpinv_state'];
59
-        } elseif( !empty( $_POST['state'] ) ) {
59
+        } elseif (!empty($_POST['state'])) {
60 60
             $state = $_POST['state'];
61
-        } elseif( is_user_logged_in() && !empty( $user_address ) ) {
61
+        } elseif (is_user_logged_in() && !empty($user_address)) {
62 62
             $state = $user_address['state'];
63 63
         }
64
-        $state = !empty( $state ) ? $state : wpinv_get_default_state();
64
+        $state = !empty($state) ? $state : wpinv_get_default_state();
65 65
     }
66 66
     
67
-    if( !empty( $country ) ) {
68
-        $tax_rates   = wpinv_get_tax_rates();
67
+    if (!empty($country)) {
68
+        $tax_rates = wpinv_get_tax_rates();
69 69
 
70
-        if( !empty( $tax_rates ) ) {
70
+        if (!empty($tax_rates)) {
71 71
             // Locate the tax rate for this country / state, if it exists
72
-            foreach( $tax_rates as $key => $tax_rate ) {
73
-                if( $country != $tax_rate['country'] )
72
+            foreach ($tax_rates as $key => $tax_rate) {
73
+                if ($country != $tax_rate['country'])
74 74
                     continue;
75 75
 
76
-                if( !empty( $tax_rate['global'] ) ) {
77
-                    if( !empty( $tax_rate['rate'] ) ) {
78
-                        $rate = number_format( $tax_rate['rate'], 4 );
76
+                if (!empty($tax_rate['global'])) {
77
+                    if (!empty($tax_rate['rate'])) {
78
+                        $rate = number_format($tax_rate['rate'], 4);
79 79
                     }
80 80
                 } else {
81 81
 
82
-                    if( empty( $tax_rate['state'] ) || strtolower( $state ) != strtolower( $tax_rate['state'] ) )
82
+                    if (empty($tax_rate['state']) || strtolower($state) != strtolower($tax_rate['state']))
83 83
                         continue;
84 84
 
85 85
                     $state_rate = $tax_rate['rate'];
86
-                    if( 0 !== $state_rate || !empty( $state_rate ) ) {
87
-                        $rate = number_format( $state_rate, 4 );
86
+                    if (0 !== $state_rate || !empty($state_rate)) {
87
+                        $rate = number_format($state_rate, 4);
88 88
                     }
89 89
                 }
90 90
             }
91 91
         }
92 92
     }
93 93
     
94
-    $rate = apply_filters( 'wpinv_tax_rate', $rate, $country, $state, $item_id );
94
+    $rate = apply_filters('wpinv_tax_rate', $rate, $country, $state, $item_id);
95 95
     
96
-    if ( !empty( $item_id ) ) {
96
+    if (!empty($item_id)) {
97 97
         $wpi_tax_rates[$item_id] = $rate;
98
-    } else if ( $is_global ) {
98
+    } else if ($is_global) {
99 99
         $wpi_tax_rates['global'] = $rate;
100 100
     }
101 101
     
102 102
     return $rate;
103 103
 }
104 104
 
105
-function wpinv_get_formatted_tax_rate( $country = false, $state = false, $item_id ) {
106
-    $rate = wpinv_get_tax_rate( $country, $state, $item_id );
107
-    $rate = round( $rate, 4 );
105
+function wpinv_get_formatted_tax_rate($country = false, $state = false, $item_id) {
106
+    $rate = wpinv_get_tax_rate($country, $state, $item_id);
107
+    $rate = round($rate, 4);
108 108
     $formatted = $rate .= '%';
109
-    return apply_filters( 'wpinv_formatted_tax_rate', $formatted, $rate, $country, $state, $item_id );
109
+    return apply_filters('wpinv_formatted_tax_rate', $formatted, $rate, $country, $state, $item_id);
110 110
 }
111 111
 
112
-function wpinv_calculate_tax( $amount = 0, $country = false, $state = false, $item_id = 0 ) {
113
-    $rate = wpinv_get_tax_rate( $country, $state, $item_id );
112
+function wpinv_calculate_tax($amount = 0, $country = false, $state = false, $item_id = 0) {
113
+    $rate = wpinv_get_tax_rate($country, $state, $item_id);
114 114
     $tax  = 0.00;
115 115
 
116
-    if ( wpinv_use_taxes() ) {        
117
-        if ( wpinv_prices_include_tax() ) {
118
-            $pre_tax = ( $amount / ( ( 1 + $rate ) * 0.01 ) );
116
+    if (wpinv_use_taxes()) {        
117
+        if (wpinv_prices_include_tax()) {
118
+            $pre_tax = ($amount / ((1 + $rate) * 0.01));
119 119
             $tax     = $amount - $pre_tax;
120 120
         } else {
121 121
             $tax = $amount * $rate * 0.01;
@@ -123,46 +123,46 @@  discard block
 block discarded – undo
123 123
 
124 124
     }
125 125
 
126
-    return apply_filters( 'wpinv_taxed_amount', $tax, $rate, $country, $state, $item_id );
126
+    return apply_filters('wpinv_taxed_amount', $tax, $rate, $country, $state, $item_id);
127 127
 }
128 128
 
129 129
 function wpinv_prices_include_tax() {
130 130
     return false; // TODO
131
-    $ret = ( wpinv_get_option( 'prices_include_tax', false ) == 'yes' && wpinv_use_taxes() );
131
+    $ret = (wpinv_get_option('prices_include_tax', false) == 'yes' && wpinv_use_taxes());
132 132
 
133
-    return apply_filters( 'wpinv_prices_include_tax', $ret );
133
+    return apply_filters('wpinv_prices_include_tax', $ret);
134 134
 }
135 135
 
136
-function wpinv_sales_tax_for_year( $year = null ) {
137
-    return wpinv_price( wpinv_format_amount( wpinv_get_sales_tax_for_year( $year ) ) );
136
+function wpinv_sales_tax_for_year($year = null) {
137
+    return wpinv_price(wpinv_format_amount(wpinv_get_sales_tax_for_year($year)));
138 138
 }
139 139
 
140
-function wpinv_get_sales_tax_for_year( $year = null ) {
140
+function wpinv_get_sales_tax_for_year($year = null) {
141 141
     global $wpdb;
142 142
 
143 143
     // Start at zero
144 144
     $tax = 0;
145 145
 
146
-    if ( ! empty( $year ) ) {
146
+    if (!empty($year)) {
147 147
         $args = array(
148 148
             'post_type'      => 'wpi_invoice',
149
-            'post_status'    => array( 'publish' ),
149
+            'post_status'    => array('publish'),
150 150
             'posts_per_page' => -1,
151 151
             'year'           => $year,
152 152
             'fields'         => 'ids'
153 153
         );
154 154
 
155
-        $payments    = get_posts( $args );
156
-        $payment_ids = implode( ',', $payments );
155
+        $payments    = get_posts($args);
156
+        $payment_ids = implode(',', $payments);
157 157
 
158
-        if ( count( $payments ) > 0 ) {
158
+        if (count($payments) > 0) {
159 159
             $sql = "SELECT SUM( meta_value ) FROM $wpdb->postmeta WHERE meta_key = '_wpinv_tax' AND post_id IN( $payment_ids )";
160
-            $tax = $wpdb->get_var( $sql );
160
+            $tax = $wpdb->get_var($sql);
161 161
         }
162 162
 
163 163
     }
164 164
 
165
-    return apply_filters( 'wpinv_get_sales_tax_for_year', $tax, $year );
165
+    return apply_filters('wpinv_get_sales_tax_for_year', $tax, $year);
166 166
 }
167 167
 
168 168
 function wpinv_is_cart_taxed() {
@@ -171,33 +171,33 @@  discard block
 block discarded – undo
171 171
 
172 172
 function wpinv_prices_show_tax_on_checkout() {
173 173
     return false; // TODO
174
-    $ret = ( wpinv_get_option( 'checkout_include_tax', false ) == 'yes' && wpinv_use_taxes() );
174
+    $ret = (wpinv_get_option('checkout_include_tax', false) == 'yes' && wpinv_use_taxes());
175 175
 
176
-    return apply_filters( 'wpinv_taxes_on_prices_on_checkout', $ret );
176
+    return apply_filters('wpinv_taxes_on_prices_on_checkout', $ret);
177 177
 }
178 178
 
179 179
 function wpinv_display_tax_rate() {
180
-    $ret = wpinv_use_taxes() && wpinv_get_option( 'display_tax_rate', false );
180
+    $ret = wpinv_use_taxes() && wpinv_get_option('display_tax_rate', false);
181 181
 
182
-    return apply_filters( 'wpinv_display_tax_rate', $ret );
182
+    return apply_filters('wpinv_display_tax_rate', $ret);
183 183
 }
184 184
 
185 185
 function wpinv_cart_needs_tax_address_fields() {
186
-    if( !wpinv_is_cart_taxed() )
186
+    if (!wpinv_is_cart_taxed())
187 187
         return false;
188 188
 
189
-    return ! did_action( 'wpinv_after_cc_fields', 'wpinv_default_cc_address_fields' );
189
+    return !did_action('wpinv_after_cc_fields', 'wpinv_default_cc_address_fields');
190 190
 }
191 191
 
192
-function wpinv_item_is_tax_exclusive( $item_id = 0 ) {
193
-    $ret = (bool)get_post_meta( $item_id, '_wpinv_tax_exclusive', false );
194
-    return apply_filters( 'wpinv_is_tax_exclusive', $ret, $item_id );
192
+function wpinv_item_is_tax_exclusive($item_id = 0) {
193
+    $ret = (bool)get_post_meta($item_id, '_wpinv_tax_exclusive', false);
194
+    return apply_filters('wpinv_is_tax_exclusive', $ret, $item_id);
195 195
 }
196 196
 
197
-function wpinv_currency_decimal_filter( $decimals = 2 ) {
197
+function wpinv_currency_decimal_filter($decimals = 2) {
198 198
     $currency = wpinv_get_currency();
199 199
 
200
-    switch ( $currency ) {
200
+    switch ($currency) {
201 201
         case 'RIAL' :
202 202
         case 'JPY' :
203 203
         case 'TWD' :
@@ -206,48 +206,48 @@  discard block
 block discarded – undo
206 206
             break;
207 207
     }
208 208
 
209
-    return apply_filters( 'wpinv_currency_decimal_count', $decimals, $currency );
209
+    return apply_filters('wpinv_currency_decimal_count', $decimals, $currency);
210 210
 }
211 211
 
212 212
 function wpinv_tax_amount() {
213 213
     $output = 0.00;
214 214
     
215
-    return apply_filters( 'wpinv_tax_amount', $output );
215
+    return apply_filters('wpinv_tax_amount', $output);
216 216
 }
217 217
 
218 218
 function wpinv_recalculated_tax() {
219
-    define( 'WPINV_RECALCTAX', true );
219
+    define('WPINV_RECALCTAX', true);
220 220
 }
221
-add_action( 'wp_ajax_wpinv_recalculate_tax', 'wpinv_recalculated_tax', 1 );
221
+add_action('wp_ajax_wpinv_recalculate_tax', 'wpinv_recalculated_tax', 1);
222 222
 
223
-function wpinv_recalculate_tax( $return = false ) {
223
+function wpinv_recalculate_tax($return = false) {
224 224
     $invoice_id = (int)wpinv_get_invoice_cart_id();
225
-    if ( empty( $invoice_id ) ) {
225
+    if (empty($invoice_id)) {
226 226
         return false;
227 227
     }
228 228
     
229
-    $invoice = wpinv_get_invoice_cart( $invoice_id );
229
+    $invoice = wpinv_get_invoice_cart($invoice_id);
230 230
 
231
-    if ( empty( $invoice ) ) {
231
+    if (empty($invoice)) {
232 232
         return false;
233 233
     }
234 234
 
235
-    if ( empty( $_POST['country'] ) ) {
235
+    if (empty($_POST['country'])) {
236 236
         $_POST['country'] = !empty($invoice->country) ? $invoice->country : wpinv_get_default_country();
237 237
     }
238 238
         
239 239
     $invoice->country = sanitize_text_field($_POST['country']);
240
-    $invoice->set( 'country', sanitize_text_field( $_POST['country'] ) );
240
+    $invoice->set('country', sanitize_text_field($_POST['country']));
241 241
     if (isset($_POST['state'])) {
242 242
         $invoice->state = sanitize_text_field($_POST['state']);
243
-        $invoice->set( 'state', sanitize_text_field( $_POST['state'] ) );
243
+        $invoice->set('state', sanitize_text_field($_POST['state']));
244 244
     }
245 245
 
246 246
     $invoice->cart_details  = wpinv_get_cart_content_details();
247 247
     
248
-    $subtotal               = wpinv_get_cart_subtotal( $invoice->cart_details );
249
-    $tax                    = wpinv_get_cart_tax( $invoice->cart_details );
250
-    $total                  = wpinv_get_cart_total( $invoice->cart_details );
248
+    $subtotal               = wpinv_get_cart_subtotal($invoice->cart_details);
249
+    $tax                    = wpinv_get_cart_tax($invoice->cart_details);
250
+    $total                  = wpinv_get_cart_total($invoice->cart_details);
251 251
 
252 252
     $invoice->tax           = $tax;
253 253
     $invoice->subtotal      = $subtotal;
@@ -255,61 +255,61 @@  discard block
 block discarded – undo
255 255
 
256 256
     $invoice->save();
257 257
     
258
-    if ( $invoice->is_free_trial() ) {
258
+    if ($invoice->is_free_trial()) {
259 259
         $total = 0;
260 260
     }
261 261
     
262 262
     $response = array(
263
-        'total'        => html_entity_decode( wpinv_price( wpinv_format_amount( $total ) ), ENT_COMPAT, 'UTF-8' ),
263
+        'total'        => html_entity_decode(wpinv_price(wpinv_format_amount($total)), ENT_COMPAT, 'UTF-8'),
264 264
         'total_raw'    => $total,
265
-        'free'         => !( (float)$total > 0 ) && $invoice->is_free() ? true : false,
266
-        'html'         => wpinv_checkout_cart( $invoice->cart_details, false ),
265
+        'free'         => !((float)$total > 0) && $invoice->is_free() ? true : false,
266
+        'html'         => wpinv_checkout_cart($invoice->cart_details, false),
267 267
     );
268 268
     
269
-    if ( $return ) {
269
+    if ($return) {
270 270
         return $response;
271 271
     }
272 272
 
273
-    wp_send_json( $response );
273
+    wp_send_json($response);
274 274
 }
275
-add_action( 'wp_ajax_wpinv_recalculate_tax', 'wpinv_recalculate_tax' );
276
-add_action( 'wp_ajax_nopriv_wpinv_recalculate_tax', 'wpinv_recalculate_tax' );
275
+add_action('wp_ajax_wpinv_recalculate_tax', 'wpinv_recalculate_tax');
276
+add_action('wp_ajax_nopriv_wpinv_recalculate_tax', 'wpinv_recalculate_tax');
277 277
 
278 278
 // VAT Settings
279
-function wpinv_vat_rate_add_callback( $args ) {
279
+function wpinv_vat_rate_add_callback($args) {
280 280
     ?>
281
-    <p class="wpi-vat-rate-actions"><input id="wpi_vat_rate_add" type="button" value="<?php esc_attr_e( 'Add', 'invoicing' );?>" class="button button-primary" />&nbsp;&nbsp;<i style="display:none;" class="fa fa-refresh fa-spin"></i></p>
281
+    <p class="wpi-vat-rate-actions"><input id="wpi_vat_rate_add" type="button" value="<?php esc_attr_e('Add', 'invoicing'); ?>" class="button button-primary" />&nbsp;&nbsp;<i style="display:none;" class="fa fa-refresh fa-spin"></i></p>
282 282
     <?php
283 283
 }
284 284
 
285
-function wpinv_vat_rate_delete_callback( $args ) {
285
+function wpinv_vat_rate_delete_callback($args) {
286 286
     global $wpinv_euvat;
287 287
     
288 288
     $vat_classes = $wpinv_euvat->get_rate_classes();
289
-    $vat_class = isset( $_REQUEST['wpi_sub'] ) && $_REQUEST['wpi_sub'] !== '' && isset( $vat_classes[$_REQUEST['wpi_sub']] )? sanitize_text_field( $_REQUEST['wpi_sub'] ) : '';
290
-    if ( isset( $vat_classes[$vat_class] ) ) {
289
+    $vat_class = isset($_REQUEST['wpi_sub']) && $_REQUEST['wpi_sub'] !== '' && isset($vat_classes[$_REQUEST['wpi_sub']]) ? sanitize_text_field($_REQUEST['wpi_sub']) : '';
290
+    if (isset($vat_classes[$vat_class])) {
291 291
     ?>
292
-    <p class="wpi-vat-rate-actions"><input id="wpi_vat_rate_delete" type="button" value="<?php echo wp_sprintf( esc_attr__( 'Delete class "%s"', 'invoicing' ), $vat_classes[$vat_class] );?>" class="button button-primary" />&nbsp;&nbsp;<i style="display:none;" class="fa fa-refresh fa-spin"></i></p>
292
+    <p class="wpi-vat-rate-actions"><input id="wpi_vat_rate_delete" type="button" value="<?php echo wp_sprintf(esc_attr__('Delete class "%s"', 'invoicing'), $vat_classes[$vat_class]); ?>" class="button button-primary" />&nbsp;&nbsp;<i style="display:none;" class="fa fa-refresh fa-spin"></i></p>
293 293
     <?php
294 294
     }
295 295
 }
296 296
 
297
-function wpinv_vat_rates_callback( $args ) {
297
+function wpinv_vat_rates_callback($args) {
298 298
     global $wpinv_euvat;
299 299
     
300 300
     $vat_classes    = $wpinv_euvat->get_rate_classes();
301
-    $vat_class      = isset( $_REQUEST['wpi_sub'] ) && $_REQUEST['wpi_sub'] !== '' && isset( $vat_classes[$_REQUEST['wpi_sub']] )? sanitize_text_field( $_REQUEST['wpi_sub'] ) : '_standard';
301
+    $vat_class      = isset($_REQUEST['wpi_sub']) && $_REQUEST['wpi_sub'] !== '' && isset($vat_classes[$_REQUEST['wpi_sub']]) ? sanitize_text_field($_REQUEST['wpi_sub']) : '_standard';
302 302
     
303 303
     $eu_states      = $wpinv_euvat->get_eu_states();
304 304
     $countries      = wpinv_get_country_list();
305 305
     $vat_groups     = $wpinv_euvat->get_vat_groups();
306
-    $rates          = $wpinv_euvat->get_vat_rates( $vat_class );
306
+    $rates          = $wpinv_euvat->get_vat_rates($vat_class);
307 307
     ob_start();
308 308
 ?>
309 309
 </td><tr>
310 310
     <td colspan="2" class="wpinv_vat_tdbox">
311
-    <input type="hidden" name="wpi_vat_class" value="<?php echo $vat_class;?>" />
312
-    <p><?php echo ( isset( $args['desc'] ) ? $args['desc'] : '' ); ?></p>
311
+    <input type="hidden" name="wpi_vat_class" value="<?php echo $vat_class; ?>" />
312
+    <p><?php echo (isset($args['desc']) ? $args['desc'] : ''); ?></p>
313 313
     <table id="wpinv_vat_rates" class="wp-list-table widefat fixed posts">
314 314
         <colgroup>
315 315
             <col width="50px" />
@@ -321,43 +321,43 @@  discard block
 block discarded – undo
321 321
         </colgroup>
322 322
         <thead>
323 323
             <tr>
324
-                <th scope="col" colspan="2" class="wpinv_vat_country_name"><?php _e( 'Country', 'invoicing' ); ?></th>
325
-                <th scope="col" class="wpinv_vat_global" title="<?php esc_attr_e( 'Apply rate to whole country', 'invoicing' ); ?>"><?php _e( 'Country Wide', 'invoicing' ); ?></th>
326
-                <th scope="col" class="wpinv_vat_rate"><?php _e( 'Rate %', 'invoicing' ); ?></th> 
327
-                <th scope="col" class="wpinv_vat_name"><?php _e( 'VAT Name', 'invoicing' ); ?></th>
328
-                <th scope="col" class="wpinv_vat_group"><?php _e( 'Tax Group', 'invoicing' ); ?></th>
324
+                <th scope="col" colspan="2" class="wpinv_vat_country_name"><?php _e('Country', 'invoicing'); ?></th>
325
+                <th scope="col" class="wpinv_vat_global" title="<?php esc_attr_e('Apply rate to whole country', 'invoicing'); ?>"><?php _e('Country Wide', 'invoicing'); ?></th>
326
+                <th scope="col" class="wpinv_vat_rate"><?php _e('Rate %', 'invoicing'); ?></th> 
327
+                <th scope="col" class="wpinv_vat_name"><?php _e('VAT Name', 'invoicing'); ?></th>
328
+                <th scope="col" class="wpinv_vat_group"><?php _e('Tax Group', 'invoicing'); ?></th>
329 329
             </tr>
330 330
         </thead>
331 331
         <tbody>
332
-        <?php if( !empty( $eu_states ) ) { ?>
332
+        <?php if (!empty($eu_states)) { ?>
333 333
         <?php 
334
-        foreach ( $eu_states as $state ) { 
335
-            $country_name = isset( $countries[$state] ) ? $countries[$state] : '';
334
+        foreach ($eu_states as $state) { 
335
+            $country_name = isset($countries[$state]) ? $countries[$state] : '';
336 336
             
337 337
             // Filter the rate for each country
338
-            $country_rate = array_filter( $rates, function( $rate ) use( $state ) { return $rate['country'] === $state; } );
338
+            $country_rate = array_filter($rates, function($rate) use($state) { return $rate['country'] === $state; } );
339 339
             
340 340
             // If one does not exist create a default
341
-            $country_rate = is_array( $country_rate ) && count( $country_rate ) > 0 ? reset( $country_rate ) : array();
341
+            $country_rate = is_array($country_rate) && count($country_rate) > 0 ? reset($country_rate) : array();
342 342
             
343
-            $vat_global = isset( $country_rate['global'] ) ? !empty( $country_rate['global'] ) : true;
344
-            $vat_rate = isset( $country_rate['rate'] ) ? $country_rate['rate'] : '';
345
-            $vat_name = !empty( $country_rate['name'] ) ? esc_attr( stripslashes( $country_rate['name'] ) ) : '';
346
-            $vat_group = !empty( $country_rate['group'] ) ? $country_rate['group'] : ( $vat_class === '_standard' ? 'standard' : 'reduced' );
343
+            $vat_global = isset($country_rate['global']) ? !empty($country_rate['global']) : true;
344
+            $vat_rate = isset($country_rate['rate']) ? $country_rate['rate'] : '';
345
+            $vat_name = !empty($country_rate['name']) ? esc_attr(stripslashes($country_rate['name'])) : '';
346
+            $vat_group = !empty($country_rate['group']) ? $country_rate['group'] : ($vat_class === '_standard' ? 'standard' : 'reduced');
347 347
         ?>
348 348
         <tr>
349 349
             <td class="wpinv_vat_country"><?php echo $state; ?><input type="hidden" name="vat_rates[<?php echo $state; ?>][country]" value="<?php echo $state; ?>" /><input type="hidden" name="vat_rates[<?php echo $state; ?>][state]" value="" /></td>
350 350
             <td class="wpinv_vat_country_name"><?php echo $country_name; ?></td>
351 351
             <td class="wpinv_vat_global">
352
-                <input type="checkbox" name="vat_rates[<?php echo $state;?>][global]" id="vat_rates[<?php echo $state;?>][global]" value="1" <?php checked( true, $vat_global );?> disabled="disabled" />
353
-                <label for="tax_rates[<?php echo $state;?>][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
354
-                <input type="hidden" name="vat_rates[<?php echo $state;?>][global]" value="1" checked="checked" />
352
+                <input type="checkbox" name="vat_rates[<?php echo $state; ?>][global]" id="vat_rates[<?php echo $state; ?>][global]" value="1" <?php checked(true, $vat_global); ?> disabled="disabled" />
353
+                <label for="tax_rates[<?php echo $state; ?>][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
354
+                <input type="hidden" name="vat_rates[<?php echo $state; ?>][global]" value="1" checked="checked" />
355 355
             </td>
356
-            <td class="wpinv_vat_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="vat_rates[<?php echo $state;?>][rate]" value="<?php echo $vat_rate; ?>" /></td>
357
-            <td class="wpinv_vat_name"><input type="text" class="regular-text" name="vat_rates[<?php echo $state;?>][name]" value="<?php echo $vat_name; ?>" /></td>
356
+            <td class="wpinv_vat_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="vat_rates[<?php echo $state; ?>][rate]" value="<?php echo $vat_rate; ?>" /></td>
357
+            <td class="wpinv_vat_name"><input type="text" class="regular-text" name="vat_rates[<?php echo $state; ?>][name]" value="<?php echo $vat_name; ?>" /></td>
358 358
             <td class="wpinv_vat_group">
359 359
             <?php
360
-            echo wpinv_html_select( array(
360
+            echo wpinv_html_select(array(
361 361
                                         'name'             => 'vat_rates[' . $state . '][group]',
362 362
                                         'selected'         => $vat_group,
363 363
                                         'id'               => 'vat_rates[' . $state . '][group]',
@@ -366,14 +366,14 @@  discard block
 block discarded – undo
366 366
                                         'multiple'         => false,
367 367
                                         'show_option_all'  => false,
368 368
                                         'show_option_none' => false
369
-                                    ) );
369
+                                    ));
370 370
             ?>
371 371
             </td>
372 372
         </tr>
373 373
         <?php } ?>
374 374
         <tr>
375 375
             <td colspan="6" style="background-color:#fafafa;">
376
-                <span><input id="wpi_vat_get_rates_group" type="button" class="button-secondary" value="<?php esc_attr_e( 'Update EU VAT Rates', 'invoicing' ); ?>" />&nbsp;&nbsp;<i style="display:none" class="fa fa-refresh fa-spin"></i></span><span id="wpinv-rates-error-wrap" class="wpinv_errors" style="display:none;"></span>
376
+                <span><input id="wpi_vat_get_rates_group" type="button" class="button-secondary" value="<?php esc_attr_e('Update EU VAT Rates', 'invoicing'); ?>" />&nbsp;&nbsp;<i style="display:none" class="fa fa-refresh fa-spin"></i></span><span id="wpinv-rates-error-wrap" class="wpinv_errors" style="display:none;"></span>
377 377
             </td>
378 378
         </tr>
379 379
         <?php } ?>
@@ -385,35 +385,35 @@  discard block
 block discarded – undo
385 385
     echo $content;
386 386
 }
387 387
 
388
-function wpinv_vat_number_callback( $args ) {
388
+function wpinv_vat_number_callback($args) {
389 389
     global $wpinv_euvat;
390 390
     
391 391
     $vat_number     = $wpinv_euvat->get_vat_number();
392 392
     $vat_valid      = $wpinv_euvat->is_vat_validated();
393 393
 
394
-    $size           = ( isset( $args['size'] ) && !is_null( $args['size'] ) ) ? $args['size'] : 'regular';
395
-    $validated_text = $vat_valid ? __( 'VAT number validated', 'invoicing' ) : __( 'VAT number not validated', 'invoicing' );
394
+    $size           = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
395
+    $validated_text = $vat_valid ? __('VAT number validated', 'invoicing') : __('VAT number not validated', 'invoicing');
396 396
     $disabled       = $vat_valid ? 'disabled="disabled"' : " ";
397 397
     
398
-    $html = '<input type="text" class="' . $size . '-text" id="wpinv_settings[' . $args['id'] . ']" name="wpinv_settings[' . $args['id'] . ']" placeholder="GB123456789" value="' . esc_attr( stripslashes( $vat_number ) ) . '"/>';
399
-    $html .= '<span>&nbsp;<input type="button" id="wpinv_vat_validate" class="wpinv_validate_vat_button button-secondary" ' . $disabled . ' value="' . esc_attr__( 'Validate VAT Number', 'invoicing' ) . '" /></span>';
398
+    $html = '<input type="text" class="' . $size . '-text" id="wpinv_settings[' . $args['id'] . ']" name="wpinv_settings[' . $args['id'] . ']" placeholder="GB123456789" value="' . esc_attr(stripslashes($vat_number)) . '"/>';
399
+    $html .= '<span>&nbsp;<input type="button" id="wpinv_vat_validate" class="wpinv_validate_vat_button button-secondary" ' . $disabled . ' value="' . esc_attr__('Validate VAT Number', 'invoicing') . '" /></span>';
400 400
     $html .= '<span class="wpinv-vat-stat wpinv-vat-stat-' . (int)$vat_valid . '"><i class="fa"></i> <font>' . $validated_text . '</font></span>';
401
-    $html .= '<label for="wpinv_settings[' . $args['id'] . ']">' . '<p>' . __( 'Enter your VAT number including country identifier, eg: GB123456789 (Settings must be saved after validation)', 'invoicing' ).'</p>' . '</label>';
402
-    $html .= '<input type="hidden" name="_wpi_nonce" value="' . wp_create_nonce( 'vat_validation' ) . '">';
401
+    $html .= '<label for="wpinv_settings[' . $args['id'] . ']">' . '<p>' . __('Enter your VAT number including country identifier, eg: GB123456789 (Settings must be saved after validation)', 'invoicing') . '</p>' . '</label>';
402
+    $html .= '<input type="hidden" name="_wpi_nonce" value="' . wp_create_nonce('vat_validation') . '">';
403 403
 
404 404
     echo $html;
405 405
 }
406 406
 
407
-function wpinv_eu_fallback_rate_callback( $args ) {
407
+function wpinv_eu_fallback_rate_callback($args) {
408 408
     global $wpinv_options;
409 409
 
410
-    $value = isset( $wpinv_options[$args['id']] ) ? $wpinv_options[ $args['id'] ] : ( isset( $args['std'] ) ? $args['std'] : '' );
411
-    $size = ( isset( $args['size'] ) && !is_null( $args['size'] ) ) ? $args['size'] : 'small';
410
+    $value = isset($wpinv_options[$args['id']]) ? $wpinv_options[$args['id']] : (isset($args['std']) ? $args['std'] : '');
411
+    $size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'small';
412 412
     
413
-    $html = '<input type="number" min="0" max="99" step="any" class="' . $size . '-text" id="wpinv_settings_' . $args['section'] . '_' . $args['id'] . '" name="wpinv_settings[' . $args['id'] . ']" value="' . esc_attr( stripslashes( $value ) ) . '" />';
414
-    $html .= '<span>&nbsp;<input id="wpi_add_eu_states" type="button" class="button-secondary" value="' . esc_attr__( 'Add EU Member States', 'invoicing' ) . '" /></span>';
415
-    $html .= '<span>&nbsp;<input id="wpi_remove_eu_states" type="button" class="button-secondary" value="' . esc_attr__( 'Remove EU Member States', 'invoicing' ) . '" /></span>';
416
-    $html .= '<span>&nbsp;<input id="wpi_vat_get_rates" type="button" class="button-secondary" value="' . esc_attr__( 'Update EU VAT Rates', 'invoicing' ) . '" />&nbsp;&nbsp;<i style="display:none" class="fa fa-refresh fa-spin"></i></span>';
413
+    $html = '<input type="number" min="0" max="99" step="any" class="' . $size . '-text" id="wpinv_settings_' . $args['section'] . '_' . $args['id'] . '" name="wpinv_settings[' . $args['id'] . ']" value="' . esc_attr(stripslashes($value)) . '" />';
414
+    $html .= '<span>&nbsp;<input id="wpi_add_eu_states" type="button" class="button-secondary" value="' . esc_attr__('Add EU Member States', 'invoicing') . '" /></span>';
415
+    $html .= '<span>&nbsp;<input id="wpi_remove_eu_states" type="button" class="button-secondary" value="' . esc_attr__('Remove EU Member States', 'invoicing') . '" /></span>';
416
+    $html .= '<span>&nbsp;<input id="wpi_vat_get_rates" type="button" class="button-secondary" value="' . esc_attr__('Update EU VAT Rates', 'invoicing') . '" />&nbsp;&nbsp;<i style="display:none" class="fa fa-refresh fa-spin"></i></span>';
417 417
     $html .= '<p><label for="wpinv_settings_' . $args['section'] . '_' . $args['id'] . '">' . $args['desc'] . '</label></p>';
418 418
     echo $html;
419 419
     ?>
@@ -421,36 +421,36 @@  discard block
 block discarded – undo
421 421
     <?php
422 422
 }
423 423
 
424
-function wpinv_vat_ip_lookup_callback( $args ) {
424
+function wpinv_vat_ip_lookup_callback($args) {
425 425
     global $wpinv_options, $wpinv_euvat;
426 426
 
427
-    $value =  isset( $wpinv_options[ $args['id'] ] ) ? $wpinv_options[ $args['id'] ]  : ( isset( $args['std'] ) ? $args['std'] : 'default' );
427
+    $value = isset($wpinv_options[$args['id']]) ? $wpinv_options[$args['id']] : (isset($args['std']) ? $args['std'] : 'default');
428 428
     
429 429
     $options = array();
430
-    if ( function_exists( 'geoip_country_code_by_name' ) ) {
431
-        $options['geoip'] = __( 'PHP GeoIP extension', 'invoicing' );
430
+    if (function_exists('geoip_country_code_by_name')) {
431
+        $options['geoip'] = __('PHP GeoIP extension', 'invoicing');
432 432
     }
433 433
     
434 434
     $geoip2_database = $wpinv_euvat->geoip2_country_dbfile();
435 435
     
436
-    if ( !function_exists( 'bcadd' ) ) {
437
-        $geoip2_message = __( 'GeoIP2 service requires the BC Math PHP extension, it is not loaded in your version of PHP!', 'invoicing' );
436
+    if (!function_exists('bcadd')) {
437
+        $geoip2_message = __('GeoIP2 service requires the BC Math PHP extension, it is not loaded in your version of PHP!', 'invoicing');
438 438
     } else {
439
-        $geoip2_message = ini_get('safe_mode') ? __( 'GeoIP2 is not supported with PHP safe mode enabled!', 'invoicing' ) : '';
439
+        $geoip2_message = ini_get('safe_mode') ? __('GeoIP2 is not supported with PHP safe mode enabled!', 'invoicing') : '';
440 440
     }
441 441
     
442
-    if ( $geoip2_database !== false && empty( $geoip2_message ) ) {
443
-        $options['geoip2'] = __( 'GeoIP2 Database', 'invoicing' );
442
+    if ($geoip2_database !== false && empty($geoip2_message)) {
443
+        $options['geoip2'] = __('GeoIP2 Database', 'invoicing');
444 444
     }
445 445
     
446
-    if ( function_exists( 'simplexml_load_file' ) ) {
447
-        $options['geoplugin'] = __( 'geoPlugin Web Service', 'invoicing' );
446
+    if (function_exists('simplexml_load_file')) {
447
+        $options['geoplugin'] = __('geoPlugin Web Service', 'invoicing');
448 448
     }
449 449
     
450
-    $options['site']    = __( 'Use default country', 'invoicing' );
451
-    $options['default'] = __( 'Auto', 'invoicing' );
450
+    $options['site']    = __('Use default country', 'invoicing');
451
+    $options['default'] = __('Auto', 'invoicing');
452 452
 
453
-    $html = wpinv_html_select( array(
453
+    $html = wpinv_html_select(array(
454 454
         'name'             => "wpinv_settings[{$args['id']}]",
455 455
         'selected'         => $value,
456 456
         'id'               => "wpinv_settings[{$args['id']}]",
@@ -462,23 +462,23 @@  discard block
 block discarded – undo
462 462
     ));
463 463
     
464 464
     $desc = '<label for="wpinv_settings[' . $args['id'] . ']">';
465
-    $desc .= __( 'Select the option Invoicing should use to determine the country from the IP address of the user.', 'invoicing' );
465
+    $desc .= __('Select the option Invoicing should use to determine the country from the IP address of the user.', 'invoicing');
466 466
     $desc .= '<p>';
467
-    if ( empty( $geoip2_message ) ) {
468
-        if ( $geoip2_database ) {
467
+    if (empty($geoip2_message)) {
468
+        if ($geoip2_database) {
469 469
             $last_updated = '';
470
-            if ( $time_updated = wpinv_get_option( 'wpinv_geoip2_date_updated' ) ) {
471
-                $date_updated = date_i18n( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ), $time_updated );
472
-                $last_updated = '<br>' . sprintf( __( 'The GeoIP2 database was last updated on: <b>%s</b>', 'invoicing' ), $date_updated );
470
+            if ($time_updated = wpinv_get_option('wpinv_geoip2_date_updated')) {
471
+                $date_updated = date_i18n(get_option('date_format') . ' ' . get_option('time_format'), $time_updated);
472
+                $last_updated = '<br>' . sprintf(__('The GeoIP2 database was last updated on: <b>%s</b>', 'invoicing'), $date_updated);
473 473
             }
474
-            $desc .= __(  'GeoIP2 database exists:', 'invoicing' ) . $last_updated . '&nbsp;<input type="button" id="wpi_geoip2" action="update" class="wpinv-refresh-geoip2-btn button-secondary" value="' . __( 'Update GeoIP2 database now (~55MB)', 'invoicing' ) . '"></input>';
474
+            $desc .= __('GeoIP2 database exists:', 'invoicing') . $last_updated . '&nbsp;<input type="button" id="wpi_geoip2" action="update" class="wpinv-refresh-geoip2-btn button-secondary" value="' . __('Update GeoIP2 database now (~55MB)', 'invoicing') . '"></input>';
475 475
         } else {
476
-            $desc .= __( 'GeoIP2 database does not exist:', 'invoicing' ) . '&nbsp;<input type="button" id="wpi_geoip2" action="download" class="wpinv-download-geoip2-btn button-secondary" value="' . __( 'Download GeoIP2 database now', 'invoicing' ) . ' (~53MB)"></input><br>' . __(  'After downloading the GeoIP2 database the GeoIP2 lookup option will show.', 'invoicing' );
476
+            $desc .= __('GeoIP2 database does not exist:', 'invoicing') . '&nbsp;<input type="button" id="wpi_geoip2" action="download" class="wpinv-download-geoip2-btn button-secondary" value="' . __('Download GeoIP2 database now', 'invoicing') . ' (~53MB)"></input><br>' . __('After downloading the GeoIP2 database the GeoIP2 lookup option will show.', 'invoicing');
477 477
         }
478 478
     } else {
479 479
         $desc .= $geoip2_message;
480 480
     }
481
-    $desc .= '</p><p>'. __( 'GeoPlugin is a great free service please consider supporting them: ', 'invoicing' ) . ' <a href="http://www.geoplugin.com/" target="_blank">GeoPlugin.com</a></p>';
481
+    $desc .= '</p><p>' . __('GeoPlugin is a great free service please consider supporting them: ', 'invoicing') . ' <a href="http://www.geoplugin.com/" target="_blank">GeoPlugin.com</a></p>';
482 482
     $desc .= '</label>';
483 483
     
484 484
     $html .= $desc;
Please login to merge, or discard this patch.
includes/admin/admin-meta-boxes.php 1 patch
Spacing   +126 added lines, -126 removed lines patch added patch discarded remove patch
@@ -1,65 +1,65 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7
-function wpinv_add_meta_boxes( $post_type, $post ) {
7
+function wpinv_add_meta_boxes($post_type, $post) {
8 8
     global $wpi_mb_invoice;
9
-    if ( $post_type == 'wpi_invoice' && !empty( $post->ID ) ) {
10
-        $wpi_mb_invoice = wpinv_get_invoice( $post->ID );
9
+    if ($post_type == 'wpi_invoice' && !empty($post->ID)) {
10
+        $wpi_mb_invoice = wpinv_get_invoice($post->ID);
11 11
     }
12 12
     
13
-    if ( !empty( $wpi_mb_invoice ) && !$wpi_mb_invoice->has_status( array( 'draft', 'auto-draft' ) ) ) {
14
-        add_meta_box( 'wpinv-mb-resend-invoice', __( 'Resend Invoice', 'invoicing' ), 'WPInv_Meta_Box_Details::resend_invoice', 'wpi_invoice', 'side', 'high' );
13
+    if (!empty($wpi_mb_invoice) && !$wpi_mb_invoice->has_status(array('draft', 'auto-draft'))) {
14
+        add_meta_box('wpinv-mb-resend-invoice', __('Resend Invoice', 'invoicing'), 'WPInv_Meta_Box_Details::resend_invoice', 'wpi_invoice', 'side', 'high');
15 15
     }
16 16
     
17
-    if ( !empty( $wpi_mb_invoice ) && $wpi_mb_invoice->is_recurring() && $wpi_mb_invoice->is_parent() ) {
18
-        add_meta_box( 'wpinv-mb-subscriptions', __( 'Subscriptions', 'invoicing' ), 'WPInv_Meta_Box_Details::subscriptions', 'wpi_invoice', 'side', 'high' );
17
+    if (!empty($wpi_mb_invoice) && $wpi_mb_invoice->is_recurring() && $wpi_mb_invoice->is_parent()) {
18
+        add_meta_box('wpinv-mb-subscriptions', __('Subscriptions', 'invoicing'), 'WPInv_Meta_Box_Details::subscriptions', 'wpi_invoice', 'side', 'high');
19 19
     }
20 20
     
21
-    if ( wpinv_is_subscription_payment( $wpi_mb_invoice ) ) {
22
-        add_meta_box( 'wpinv-mb-renewals', __( 'Renewal Payment', 'invoicing' ), 'WPInv_Meta_Box_Details::renewals', 'wpi_invoice', 'side', 'high' );
21
+    if (wpinv_is_subscription_payment($wpi_mb_invoice)) {
22
+        add_meta_box('wpinv-mb-renewals', __('Renewal Payment', 'invoicing'), 'WPInv_Meta_Box_Details::renewals', 'wpi_invoice', 'side', 'high');
23 23
     }
24 24
     
25
-    add_meta_box( 'wpinv-details', __( 'Invoice Details', 'invoicing' ), 'WPInv_Meta_Box_Details::output', 'wpi_invoice', 'side', 'default' );
26
-    add_meta_box( 'wpinv-payment-meta', __( 'Payment Meta', 'invoicing' ), 'WPInv_Meta_Box_Details::payment_meta', 'wpi_invoice', 'side', 'default' );
25
+    add_meta_box('wpinv-details', __('Invoice Details', 'invoicing'), 'WPInv_Meta_Box_Details::output', 'wpi_invoice', 'side', 'default');
26
+    add_meta_box('wpinv-payment-meta', __('Payment Meta', 'invoicing'), 'WPInv_Meta_Box_Details::payment_meta', 'wpi_invoice', 'side', 'default');
27 27
    
28
-    add_meta_box( 'wpinv-address', __( 'Billing Details', 'invoicing' ), 'WPInv_Meta_Box_Billing_Details::output', 'wpi_invoice', 'normal', 'high' );
29
-    add_meta_box( 'wpinv-items', __( 'Invoice Items', 'invoicing' ), 'WPInv_Meta_Box_Items::output', 'wpi_invoice', 'normal', 'high' );
30
-    add_meta_box( 'wpinv-notes', __( 'Invoice Notes', 'invoicing' ), 'WPInv_Meta_Box_Notes::output', 'wpi_invoice', 'normal', 'high' );
28
+    add_meta_box('wpinv-address', __('Billing Details', 'invoicing'), 'WPInv_Meta_Box_Billing_Details::output', 'wpi_invoice', 'normal', 'high');
29
+    add_meta_box('wpinv-items', __('Invoice Items', 'invoicing'), 'WPInv_Meta_Box_Items::output', 'wpi_invoice', 'normal', 'high');
30
+    add_meta_box('wpinv-notes', __('Invoice Notes', 'invoicing'), 'WPInv_Meta_Box_Notes::output', 'wpi_invoice', 'normal', 'high');
31 31
 }
32
-add_action( 'add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2 );
32
+add_action('add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2);
33 33
 
34
-function wpinv_save_meta_boxes( $post_id, $post, $update = false ) {
35
-    remove_action( 'save_post', __FUNCTION__ );
34
+function wpinv_save_meta_boxes($post_id, $post, $update = false) {
35
+    remove_action('save_post', __FUNCTION__);
36 36
     
37 37
     // $post_id and $post are required
38
-    if ( empty( $post_id ) || empty( $post ) ) {
38
+    if (empty($post_id) || empty($post)) {
39 39
         return;
40 40
     }
41 41
         
42
-    if ( !current_user_can( 'edit_post', $post_id ) || empty( $post->post_type ) ) {
42
+    if (!current_user_can('edit_post', $post_id) || empty($post->post_type)) {
43 43
         return;
44 44
     }
45 45
     
46 46
     // Dont' save meta boxes for revisions or autosaves
47
-    if ( defined( 'DOING_AUTOSAVE' ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) {
47
+    if (defined('DOING_AUTOSAVE') || is_int(wp_is_post_revision($post)) || is_int(wp_is_post_autosave($post))) {
48 48
         return;
49 49
     }
50 50
         
51
-    if ( $post->post_type == 'wpi_invoice' or $post->post_type == 'wpi_quote' ) {
52
-        if ( ( defined( 'DOING_AJAX') && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) {
51
+    if ($post->post_type == 'wpi_invoice' or $post->post_type == 'wpi_quote') {
52
+        if ((defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) {
53 53
             return;
54 54
         }
55 55
     
56
-        if ( isset( $_POST['wpinv_save_invoice'] ) && wp_verify_nonce( $_POST['wpinv_save_invoice'], 'wpinv_save_invoice' ) ) {
57
-            WPInv_Meta_Box_Items::save( $post_id, $_POST, $post );
56
+        if (isset($_POST['wpinv_save_invoice']) && wp_verify_nonce($_POST['wpinv_save_invoice'], 'wpinv_save_invoice')) {
57
+            WPInv_Meta_Box_Items::save($post_id, $_POST, $post);
58 58
         }
59
-    } else if ( $post->post_type == 'wpi_item' ) {
59
+    } else if ($post->post_type == 'wpi_item') {
60 60
         // verify nonce
61
-        if ( isset( $_POST['wpinv_vat_meta_box_nonce'] ) && wp_verify_nonce( $_POST['wpinv_vat_meta_box_nonce'], 'wpinv_item_meta_box_save' ) ) {
62
-            $fields                                 = array();
61
+        if (isset($_POST['wpinv_vat_meta_box_nonce']) && wp_verify_nonce($_POST['wpinv_vat_meta_box_nonce'], 'wpinv_item_meta_box_save')) {
62
+            $fields = array();
63 63
             $fields['_wpinv_price']              = 'wpinv_item_price';
64 64
             $fields['_wpinv_vat_class']          = 'wpinv_vat_class';
65 65
             $fields['_wpinv_vat_rule']           = 'wpinv_vat_rules';
@@ -72,256 +72,256 @@  discard block
 block discarded – undo
72 72
             $fields['_wpinv_trial_period']       = 'wpinv_trial_period';
73 73
             $fields['_wpinv_trial_interval']     = 'wpinv_trial_interval';
74 74
             
75
-            if ( !isset( $_POST['wpinv_is_recurring'] ) ) {
75
+            if (!isset($_POST['wpinv_is_recurring'])) {
76 76
                 $_POST['wpinv_is_recurring'] = 0;
77 77
             }
78 78
             
79
-            if ( !isset( $_POST['wpinv_free_trial'] ) || empty( $_POST['wpinv_is_recurring'] ) ) {
79
+            if (!isset($_POST['wpinv_free_trial']) || empty($_POST['wpinv_is_recurring'])) {
80 80
                 $_POST['wpinv_free_trial'] = 0;
81 81
             }
82 82
             
83
-            foreach ( $fields as $field => $name ) {
84
-                if ( isset( $_POST[ $name ] ) ) {
85
-                    $allowed = apply_filters( 'wpinv_item_allowed_save_meta_value', true, $field, $post_id );
83
+            foreach ($fields as $field => $name) {
84
+                if (isset($_POST[$name])) {
85
+                    $allowed = apply_filters('wpinv_item_allowed_save_meta_value', true, $field, $post_id);
86 86
 
87
-                    if ( !$allowed ) {
87
+                    if (!$allowed) {
88 88
                         continue;
89 89
                     }
90 90
 
91
-                    if ( $field == '_wpinv_price' ) {
92
-                        $value = wpinv_sanitize_amount( $_POST[ $name ] );
91
+                    if ($field == '_wpinv_price') {
92
+                        $value = wpinv_sanitize_amount($_POST[$name]);
93 93
                     } else {
94
-                        $value = is_string( $_POST[ $name ] ) ? sanitize_text_field( $_POST[ $name ] ) : $_POST[ $name ];
94
+                        $value = is_string($_POST[$name]) ? sanitize_text_field($_POST[$name]) : $_POST[$name];
95 95
                     }
96 96
                     
97
-                    $value = apply_filters( 'wpinv_item_metabox_save_' . $field, $value, $name );
98
-                    update_post_meta( $post_id, $field, $value );
97
+                    $value = apply_filters('wpinv_item_metabox_save_' . $field, $value, $name);
98
+                    update_post_meta($post_id, $field, $value);
99 99
                 }
100 100
             }
101 101
             
102
-            if ( !get_post_meta( $post_id, '_wpinv_custom_id', true ) ) {
103
-                update_post_meta( $post_id, '_wpinv_custom_id', $post_id );
102
+            if (!get_post_meta($post_id, '_wpinv_custom_id', true)) {
103
+                update_post_meta($post_id, '_wpinv_custom_id', $post_id);
104 104
             }
105 105
         }
106 106
     }
107 107
 }
108
-add_action( 'save_post', 'wpinv_save_meta_boxes', 10, 3 );
108
+add_action('save_post', 'wpinv_save_meta_boxes', 10, 3);
109 109
 
110 110
 function wpinv_register_item_meta_boxes() {    
111 111
     global $wpinv_euvat;
112 112
     
113
-    add_meta_box( 'wpinv_field_prices', __( 'Item Price', 'invoicing' ), 'WPInv_Meta_Box_Items::prices', 'wpi_item', 'normal', 'high' );
113
+    add_meta_box('wpinv_field_prices', __('Item Price', 'invoicing'), 'WPInv_Meta_Box_Items::prices', 'wpi_item', 'normal', 'high');
114 114
 
115
-    if ( $wpinv_euvat->allow_vat_rules() ) {
116
-        add_meta_box( 'wpinv_field_vat_rules', __( 'VAT rules type to use', 'invoicing' ), 'WPInv_Meta_Box_Items::vat_rules', 'wpi_item', 'normal', 'high' );
115
+    if ($wpinv_euvat->allow_vat_rules()) {
116
+        add_meta_box('wpinv_field_vat_rules', __('VAT rules type to use', 'invoicing'), 'WPInv_Meta_Box_Items::vat_rules', 'wpi_item', 'normal', 'high');
117 117
     }
118 118
     
119
-    if ( $wpinv_euvat->allow_vat_classes() ) {
120
-        add_meta_box( 'wpinv_field_vat_classes', __( 'VAT rates class to use', 'invoicing' ), 'WPInv_Meta_Box_Items::vat_classes', 'wpi_item', 'normal', 'high' );
119
+    if ($wpinv_euvat->allow_vat_classes()) {
120
+        add_meta_box('wpinv_field_vat_classes', __('VAT rates class to use', 'invoicing'), 'WPInv_Meta_Box_Items::vat_classes', 'wpi_item', 'normal', 'high');
121 121
     }
122 122
     
123
-    add_meta_box( 'wpinv_field_item_info', __( 'Item info', 'invoicing' ), 'WPInv_Meta_Box_Items::item_info', 'wpi_item', 'side', 'core' );
124
-    add_meta_box( 'wpinv_field_meta_values', __( 'Item Meta Values', 'invoicing' ), 'WPInv_Meta_Box_Items::meta_values', 'wpi_item', 'side', 'core' );
123
+    add_meta_box('wpinv_field_item_info', __('Item info', 'invoicing'), 'WPInv_Meta_Box_Items::item_info', 'wpi_item', 'side', 'core');
124
+    add_meta_box('wpinv_field_meta_values', __('Item Meta Values', 'invoicing'), 'WPInv_Meta_Box_Items::meta_values', 'wpi_item', 'side', 'core');
125 125
 }
126 126
 
127 127
 function wpinv_register_discount_meta_boxes() {
128
-    add_meta_box( 'wpinv_discount_fields', __( 'Discount Details', 'invoicing' ), 'wpinv_discount_metabox_details', 'wpi_discount', 'normal', 'high' );
128
+    add_meta_box('wpinv_discount_fields', __('Discount Details', 'invoicing'), 'wpinv_discount_metabox_details', 'wpi_discount', 'normal', 'high');
129 129
 }
130 130
 
131
-function wpinv_discount_metabox_details( $post ) {
131
+function wpinv_discount_metabox_details($post) {
132 132
     $discount_id    = $post->ID;
133
-    $discount       = wpinv_get_discount( $discount_id );
133
+    $discount       = wpinv_get_discount($discount_id);
134 134
     
135
-    $type           = wpinv_get_discount_type( $discount_id );
136
-    $item_reqs      = wpinv_get_discount_item_reqs( $discount_id );
137
-    $excluded_items = wpinv_get_discount_excluded_items( $discount_id );
138
-    $min_total      = wpinv_get_discount_min_total( $discount_id );
139
-    $max_total      = wpinv_get_discount_max_total( $discount_id );
140
-    $max_uses       = wpinv_get_discount_max_uses( $discount_id );
141
-    $single_use     = wpinv_discount_is_single_use( $discount_id );
142
-    $recurring      = (bool)wpinv_discount_is_recurring( $discount_id );
135
+    $type           = wpinv_get_discount_type($discount_id);
136
+    $item_reqs      = wpinv_get_discount_item_reqs($discount_id);
137
+    $excluded_items = wpinv_get_discount_excluded_items($discount_id);
138
+    $min_total      = wpinv_get_discount_min_total($discount_id);
139
+    $max_total      = wpinv_get_discount_max_total($discount_id);
140
+    $max_uses       = wpinv_get_discount_max_uses($discount_id);
141
+    $single_use     = wpinv_discount_is_single_use($discount_id);
142
+    $recurring      = (bool)wpinv_discount_is_recurring($discount_id);
143 143
     
144 144
     $min_total      = $min_total > 0 ? $min_total : '';
145 145
     $max_total      = $max_total > 0 ? $max_total : '';
146 146
     $max_uses       = $max_uses > 0 ? $max_uses : '';
147 147
 ?>
148
-<?php do_action( 'wpinv_discount_form_top', $post ); ?>
149
-<?php wp_nonce_field( 'wpinv_discount_metabox_nonce', 'wpinv_discount_metabox_nonce' ); ;?>
148
+<?php do_action('wpinv_discount_form_top', $post); ?>
149
+<?php wp_nonce_field('wpinv_discount_metabox_nonce', 'wpinv_discount_metabox_nonce'); ;?>
150 150
 <table class="form-table wpi-form-table">
151 151
     <tbody>
152
-        <?php do_action( 'wpinv_discount_form_first', $post ); ?>
153
-        <?php do_action( 'wpinv_discount_form_before_code', $post ); ?>
152
+        <?php do_action('wpinv_discount_form_first', $post); ?>
153
+        <?php do_action('wpinv_discount_form_before_code', $post); ?>
154 154
         <tr>
155 155
             <th valign="top" scope="row">
156
-                <label for="wpinv_discount_code"><?php _e( 'Discount Code', 'invoicing' ); ?></label>
156
+                <label for="wpinv_discount_code"><?php _e('Discount Code', 'invoicing'); ?></label>
157 157
             </th>
158 158
             <td>
159
-                <input type="text" name="code" id="wpinv_discount_code" class="medium-text" value="<?php echo esc_attr( wpinv_get_discount_code( $discount_id ) ); ?>" required>
160
-                <p class="description"><?php _e( 'Enter a code for this discount, such as 10OFF', 'invoicing' ); ?></p>
159
+                <input type="text" name="code" id="wpinv_discount_code" class="medium-text" value="<?php echo esc_attr(wpinv_get_discount_code($discount_id)); ?>" required>
160
+                <p class="description"><?php _e('Enter a code for this discount, such as 10OFF', 'invoicing'); ?></p>
161 161
             </td>
162 162
         </tr>
163
-        <?php do_action( 'wpinv_discount_form_before_type', $post ); ?>
163
+        <?php do_action('wpinv_discount_form_before_type', $post); ?>
164 164
         <tr>
165 165
             <th valign="top" scope="row">
166
-                <label for="wpinv_discount_type"><?php _e( 'Discount Type', 'invoicing' ); ?></label>
166
+                <label for="wpinv_discount_type"><?php _e('Discount Type', 'invoicing'); ?></label>
167 167
             </th>
168 168
             <td>
169 169
                 <select id="wpinv_discount_type" name="type" class="medium-text">
170
-                    <?php foreach ( wpinv_get_discount_types() as $value => $label ) { ?>
171
-                    <option value="<?php echo $value ;?>" <?php selected( $type, $value ); ?>><?php echo $label; ?></option>
170
+                    <?php foreach (wpinv_get_discount_types() as $value => $label) { ?>
171
+                    <option value="<?php echo $value; ?>" <?php selected($type, $value); ?>><?php echo $label; ?></option>
172 172
                     <?php } ?>
173 173
                 </select>
174
-                <p class="description"><?php _e( 'The kind of discount to apply for this discount.', 'invoicing' ); ?></p>
174
+                <p class="description"><?php _e('The kind of discount to apply for this discount.', 'invoicing'); ?></p>
175 175
             </td>
176 176
         </tr>
177
-        <?php do_action( 'wpinv_discount_form_before_amount', $post ); ?>
177
+        <?php do_action('wpinv_discount_form_before_amount', $post); ?>
178 178
         <tr>
179 179
             <th valign="top" scope="row">
180
-                <label for="wpinv_discount_amount"><?php _e( 'Amount', 'invoicing' ); ?></label>
180
+                <label for="wpinv_discount_amount"><?php _e('Amount', 'invoicing'); ?></label>
181 181
             </th>
182 182
             <td>
183
-                <input type="text" name="amount" id="wpinv_discount_amount" class="wpi-field-price wpi-price" value="<?php echo esc_attr( wpinv_get_discount_amount( $discount_id ) ); ?>" required> <font class="wpi-discount-p">%</font><font class="wpi-discount-f" style="display:none;"><?php echo wpinv_currency_symbol() ;?></font>
184
-                <p style="display:none;" class="description"><?php _e( 'Enter the discount amount in USD', 'invoicing' ); ?></p>
185
-                <p class="description"><?php _e( 'Enter the discount value. Ex: 10', 'invoicing' ); ?></p>
183
+                <input type="text" name="amount" id="wpinv_discount_amount" class="wpi-field-price wpi-price" value="<?php echo esc_attr(wpinv_get_discount_amount($discount_id)); ?>" required> <font class="wpi-discount-p">%</font><font class="wpi-discount-f" style="display:none;"><?php echo wpinv_currency_symbol(); ?></font>
184
+                <p style="display:none;" class="description"><?php _e('Enter the discount amount in USD', 'invoicing'); ?></p>
185
+                <p class="description"><?php _e('Enter the discount value. Ex: 10', 'invoicing'); ?></p>
186 186
             </td>
187 187
         </tr>
188
-        <?php do_action( 'wpinv_discount_form_before_items', $post ); ?>
188
+        <?php do_action('wpinv_discount_form_before_items', $post); ?>
189 189
         <tr>
190 190
             <th valign="top" scope="row">
191
-                <label for="wpinv_discount_items"><?php _e( 'Items', 'invoicing' ); ?></label>
191
+                <label for="wpinv_discount_items"><?php _e('Items', 'invoicing'); ?></label>
192 192
             </th>
193 193
             <td>
194
-                <p><?php echo wpinv_item_dropdown( array(
194
+                <p><?php echo wpinv_item_dropdown(array(
195 195
                         'name'              => 'items[]',
196 196
                         'id'                => 'items',
197 197
                         'selected'          => $item_reqs,
198 198
                         'multiple'          => true,
199 199
                         'class'             => 'medium-text',
200
-                        'placeholder'       => __( 'Select one or more Items', 'invoicing' ),
200
+                        'placeholder'       => __('Select one or more Items', 'invoicing'),
201 201
                         'show_recurring'    => true,
202
-                    ) ); ?>
202
+                    )); ?>
203 203
                 </p>
204
-                <p class="description"><?php _e( 'Items which need to be in the cart to use this discount or, for "Item Discounts", which items are discounted. If left blank, this discount can be used on any item.', 'invoicing' ); ?></p>
204
+                <p class="description"><?php _e('Items which need to be in the cart to use this discount or, for "Item Discounts", which items are discounted. If left blank, this discount can be used on any item.', 'invoicing'); ?></p>
205 205
             </td>
206 206
         </tr>
207
-        <?php do_action( 'wpinv_discount_form_before_excluded_items', $post ); ?>
207
+        <?php do_action('wpinv_discount_form_before_excluded_items', $post); ?>
208 208
         <tr>
209 209
             <th valign="top" scope="row">
210
-                <label for="wpinv_discount_excluded_items"><?php _e( 'Excluded Items', 'invoicing' ); ?></label>
210
+                <label for="wpinv_discount_excluded_items"><?php _e('Excluded Items', 'invoicing'); ?></label>
211 211
             </th>
212 212
             <td>
213
-                <p><?php echo wpinv_item_dropdown( array(
213
+                <p><?php echo wpinv_item_dropdown(array(
214 214
                         'name'              => 'excluded_items[]',
215 215
                         'id'                => 'excluded_items',
216 216
                         'selected'          => $excluded_items,
217 217
                         'multiple'          => true,
218 218
                         'class'             => 'medium-text',
219
-                        'placeholder'       => __( 'Select one or more Items', 'invoicing' ),
219
+                        'placeholder'       => __('Select one or more Items', 'invoicing'),
220 220
                         'show_recurring'    => true,
221
-                    ) ); ?>
221
+                    )); ?>
222 222
                 </p>
223
-                <p class="description"><?php _e( 'Items which are NOT allowed to use this discount.', 'invoicing' ); ?></p>
223
+                <p class="description"><?php _e('Items which are NOT allowed to use this discount.', 'invoicing'); ?></p>
224 224
             </td>
225 225
         </tr>
226
-        <?php do_action( 'wpinv_discount_form_before_start', $post ); ?>
226
+        <?php do_action('wpinv_discount_form_before_start', $post); ?>
227 227
         <tr>
228 228
             <th valign="top" scope="row">
229
-                <label for="wpinv_discount_start"><?php _e( 'Start Date', 'invoicing' ); ?></label>
229
+                <label for="wpinv_discount_start"><?php _e('Start Date', 'invoicing'); ?></label>
230 230
             </th>
231 231
             <td>
232
-                <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_start" data-dateFormat="yy-mm-dd" name="start" value="<?php echo esc_attr( wpinv_get_discount_start_date( $discount_id ) ); ?>">
233
-                <p class="description"><?php _e( 'Enter the start date for this discount code in the format of yyyy-mm-dd. For no start date, leave blank. If entered, the discount can only be used after or on this date.', 'invoicing' ); ?></p>
232
+                <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_start" data-dateFormat="yy-mm-dd" name="start" value="<?php echo esc_attr(wpinv_get_discount_start_date($discount_id)); ?>">
233
+                <p class="description"><?php _e('Enter the start date for this discount code in the format of yyyy-mm-dd. For no start date, leave blank. If entered, the discount can only be used after or on this date.', 'invoicing'); ?></p>
234 234
             </td>
235 235
         </tr>
236
-        <?php do_action( 'wpinv_discount_form_before_expiration', $post ); ?>
236
+        <?php do_action('wpinv_discount_form_before_expiration', $post); ?>
237 237
         <tr>
238 238
             <th valign="top" scope="row">
239
-                <label for="wpinv_discount_expiration"><?php _e( 'Expiration Date', 'invoicing' ); ?></label>
239
+                <label for="wpinv_discount_expiration"><?php _e('Expiration Date', 'invoicing'); ?></label>
240 240
             </th>
241 241
             <td>
242
-                <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_expiration" data-dateFormat="yy-mm-dd" name="expiration" value="<?php echo esc_attr( wpinv_get_discount_expiration( $discount_id ) ); ?>">
243
-                <p class="description"><?php _e( 'Enter the expiration date for this discount code in the format of yyyy-mm-dd. Leave blank for no expiration.', 'invoicing' ); ?></p>
242
+                <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_expiration" data-dateFormat="yy-mm-dd" name="expiration" value="<?php echo esc_attr(wpinv_get_discount_expiration($discount_id)); ?>">
243
+                <p class="description"><?php _e('Enter the expiration date for this discount code in the format of yyyy-mm-dd. Leave blank for no expiration.', 'invoicing'); ?></p>
244 244
             </td>
245 245
         </tr>
246
-        <?php do_action( 'wpinv_discount_form_before_min_total', $post ); ?>
246
+        <?php do_action('wpinv_discount_form_before_min_total', $post); ?>
247 247
         <tr>
248 248
             <th valign="top" scope="row">
249
-                <label for="wpinv_discount_min_total"><?php _e( 'Minimum Amount', 'invoicing' ); ?></label>
249
+                <label for="wpinv_discount_min_total"><?php _e('Minimum Amount', 'invoicing'); ?></label>
250 250
             </th>
251 251
             <td>
252 252
                 <input type="text" name="min_total" id="wpinv_discount_min_total" class="wpi-field-price wpi-price" value="<?php echo $min_total; ?>">
253
-                <p class="description"><?php _e( 'This allows you to set the minimum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing' ); ?></p>
253
+                <p class="description"><?php _e('This allows you to set the minimum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing'); ?></p>
254 254
             </td>
255 255
         </tr>
256
-        <?php do_action( 'wpinv_discount_form_before_max_total', $post ); ?>
256
+        <?php do_action('wpinv_discount_form_before_max_total', $post); ?>
257 257
         <tr>
258 258
             <th valign="top" scope="row">
259
-                <label for="wpinv_discount_max_total"><?php _e( 'Maximum Amount', 'invoicing' ); ?></label>
259
+                <label for="wpinv_discount_max_total"><?php _e('Maximum Amount', 'invoicing'); ?></label>
260 260
             </th>
261 261
             <td>
262 262
                 <input type="text" name="max_total" id="wpinv_discount_max_total" class="wpi-field-price wpi-price" value="<?php echo $max_total; ?>">
263
-                <p class="description"><?php _e( 'This allows you to set the maximum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing' ); ?></p>
263
+                <p class="description"><?php _e('This allows you to set the maximum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing'); ?></p>
264 264
             </td>
265 265
         </tr>
266
-        <?php do_action( 'wpinv_discount_form_before_recurring', $post ); ?>
266
+        <?php do_action('wpinv_discount_form_before_recurring', $post); ?>
267 267
         <tr>
268 268
             <th valign="top" scope="row">
269
-                <label for="wpinv_discount_recurring"><?php _e( 'For recurring apply to', 'invoicing' ); ?></label>
269
+                <label for="wpinv_discount_recurring"><?php _e('For recurring apply to', 'invoicing'); ?></label>
270 270
             </th>
271 271
             <td>
272 272
                 <select id="wpinv_discount_recurring" name="recurring" class="medium-text">
273
-                    <option value="0" <?php selected( false, $recurring ); ?>><?php _e( 'All payments', 'invoicing' ); ?></option>
274
-                    <option value="1" <?php selected( true, $recurring ); ?>><?php _e( 'First payment only', 'invoicing' ); ?></option>
273
+                    <option value="0" <?php selected(false, $recurring); ?>><?php _e('All payments', 'invoicing'); ?></option>
274
+                    <option value="1" <?php selected(true, $recurring); ?>><?php _e('First payment only', 'invoicing'); ?></option>
275 275
                 </select>
276
-                <p class="description"><?php _e( '<b>All payments:</b> Apply this discount to all recurring payments of the recurring invoice. <br><b>First payment only:</b> Apply this discount to only first payment of the recurring invoice.', 'invoicing' ); ?></p>
276
+                <p class="description"><?php _e('<b>All payments:</b> Apply this discount to all recurring payments of the recurring invoice. <br><b>First payment only:</b> Apply this discount to only first payment of the recurring invoice.', 'invoicing'); ?></p>
277 277
             </td>
278 278
         </tr>
279
-        <?php do_action( 'wpinv_discount_form_before_max_uses', $post ); ?>
279
+        <?php do_action('wpinv_discount_form_before_max_uses', $post); ?>
280 280
         <tr>
281 281
             <th valign="top" scope="row">
282
-                <label for="wpinv_discount_max_uses"><?php _e( 'Max Uses', 'invoicing' ); ?></label>
282
+                <label for="wpinv_discount_max_uses"><?php _e('Max Uses', 'invoicing'); ?></label>
283 283
             </th>
284 284
             <td>
285 285
                 <input type="number" min="0" step="1" id="wpinv_discount_max_uses" name="max_uses" class="medium-text" value="<?php echo $max_uses; ?>">
286
-                <p class="description"><?php _e( 'The maximum number of times this discount can be used. Leave blank for unlimited.', 'invoicing' ); ?></p>
286
+                <p class="description"><?php _e('The maximum number of times this discount can be used. Leave blank for unlimited.', 'invoicing'); ?></p>
287 287
             </td>
288 288
         </tr>
289
-        <?php do_action( 'wpinv_discount_form_before_single_use', $post ); ?>
289
+        <?php do_action('wpinv_discount_form_before_single_use', $post); ?>
290 290
         <tr>
291 291
             <th valign="top" scope="row">
292
-                <label for="wpinv_discount_single_use"><?php _e( 'Use Once Per User', 'invoicing' ); ?></label>
292
+                <label for="wpinv_discount_single_use"><?php _e('Use Once Per User', 'invoicing'); ?></label>
293 293
             </th>
294 294
             <td>
295
-                <input type="checkbox" value="1" name="single_use" id="wpinv_discount_single_use" <?php checked( true, $single_use ); ?>>
296
-                <span class="description"><?php _e( 'Limit this discount to a single use per user?', 'invoicing' ); ?></span>
295
+                <input type="checkbox" value="1" name="single_use" id="wpinv_discount_single_use" <?php checked(true, $single_use); ?>>
296
+                <span class="description"><?php _e('Limit this discount to a single use per user?', 'invoicing'); ?></span>
297 297
             </td>
298 298
         </tr>
299
-        <?php do_action( 'wpinv_discount_form_last', $post ); ?>
299
+        <?php do_action('wpinv_discount_form_last', $post); ?>
300 300
     </tbody>
301 301
 </table>
302
-<?php do_action( 'wpinv_discount_form_bottom', $post ); ?>
302
+<?php do_action('wpinv_discount_form_bottom', $post); ?>
303 303
     <?php
304 304
 }
305 305
 
306
-function wpinv_discount_metabox_save( $post_id, $post, $update = false ) {
307
-    $post_type = !empty( $post ) ? $post->post_type : '';
306
+function wpinv_discount_metabox_save($post_id, $post, $update = false) {
307
+    $post_type = !empty($post) ? $post->post_type : '';
308 308
     
309
-    if ( $post_type != 'wpi_discount' ) {
309
+    if ($post_type != 'wpi_discount') {
310 310
         return;
311 311
     }
312 312
     
313
-    if ( !isset( $_POST['wpinv_discount_metabox_nonce'] ) || ( isset( $_POST['wpinv_discount_metabox_nonce'] ) && !wp_verify_nonce( $_POST['wpinv_discount_metabox_nonce'], 'wpinv_discount_metabox_nonce' ) ) ) {
313
+    if (!isset($_POST['wpinv_discount_metabox_nonce']) || (isset($_POST['wpinv_discount_metabox_nonce']) && !wp_verify_nonce($_POST['wpinv_discount_metabox_nonce'], 'wpinv_discount_metabox_nonce'))) {
314 314
         return;
315 315
     }
316 316
     
317
-    if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ( defined( 'DOING_AJAX') && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) {
317
+    if ((defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) || (defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) {
318 318
         return;
319 319
     }
320 320
     
321
-    if ( !current_user_can( 'manage_options', $post_id ) ) {
321
+    if (!current_user_can('manage_options', $post_id)) {
322 322
         return;
323 323
     }
324 324
     
325
-    return wpinv_store_discount( $post_id, $_POST, $post, $update );
325
+    return wpinv_store_discount($post_id, $_POST, $post, $update);
326 326
 }
327
-add_action( 'save_post', 'wpinv_discount_metabox_save', 10, 3 );
328 327
\ No newline at end of file
328
+add_action('save_post', 'wpinv_discount_metabox_save', 10, 3);
329 329
\ No newline at end of file
Please login to merge, or discard this patch.
includes/admin/meta-boxes/class-mb-invoice-address.php 1 patch
Spacing   +49 added lines, -49 removed lines patch added patch discarded remove patch
@@ -1,34 +1,34 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7 7
 class WPInv_Meta_Box_Billing_Details {
8
-    public static function output( $post ) {
8
+    public static function output($post) {
9 9
         global $user_ID;
10
-        $post_id    = !empty( $post->ID ) ? $post->ID : 0;
11
-        $invoice    = new WPInv_Invoice( $post_id );
10
+        $post_id    = !empty($post->ID) ? $post->ID : 0;
11
+        $invoice    = new WPInv_Invoice($post_id);
12 12
 ?>
13 13
 <div class="gdmbx2-wrap form-table">
14 14
     <div id="gdmbx2-metabox-wpinv_address" class="gdmbx2-metabox gdmbx-field-list wpinv-address gdmbx-row">
15 15
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-user-id table-layout">
16 16
             <div class="gdmbx-th">
17
-                <label for="post_author_override"><?php _e( 'Customer', 'invoicing' );?></label>
17
+                <label for="post_author_override"><?php _e('Customer', 'invoicing'); ?></label>
18 18
             </div>
19 19
             <div class="gdmbx-td gdmbx-customer-div">
20
-            <?php wpinv_dropdown_users( array(
20
+            <?php wpinv_dropdown_users(array(
21 21
                             'name' => 'post_author_override',
22 22
                             'selected' => empty($post->ID) ? $user_ID : $post->post_author,
23 23
                             'include_selected' => true,
24 24
                             'show' => 'user_email',
25 25
                             'orderby' => 'user_email',
26 26
                             'class' => 'gdmbx2-text-large'
27
-                        ) ); ?>
27
+                        )); ?>
28 28
             </div>
29 29
         </div>
30 30
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-email table-layout" style="display:none">
31
-            <div class="gdmbx-th"><label for="wpinv_email"><?php _e( 'Email', 'invoicing' );?> <span class="required">*</span></label>
31
+            <div class="gdmbx-th"><label for="wpinv_email"><?php _e('Email', 'invoicing'); ?> <span class="required">*</span></label>
32 32
             </div>
33 33
             <div class="gdmbx-td">
34 34
                 <input type="hidden" id="wpinv_new_user" name="wpinv_new_user" value="" />
@@ -36,122 +36,122 @@  discard block
 block discarded – undo
36 36
             </div>
37 37
         </div>
38 38
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-btns table-layout">
39
-            <div class="gdmbx-th"><label><?php _e( 'Actions', 'invoicing' );?></label>
39
+            <div class="gdmbx-th"><label><?php _e('Actions', 'invoicing'); ?></label>
40 40
             </div>
41
-            <?php if($invoice->has_status(array('auto-draft', 'wpi-pending', 'wpi-quote-pending'))){ ?>
41
+            <?php if ($invoice->has_status(array('auto-draft', 'wpi-pending', 'wpi-quote-pending'))) { ?>
42 42
                 <div class="gdmbx-td">
43
-                    <a id="wpinv-fill-user-details" class="button button-small button-secondary" title="<?php esc_attr_e( 'Fill User Details', 'invoicing' );?>" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-refresh"></i><?php _e( 'Fill User Details', 'invoicing' );?></a>
44
-                    <a class="wpinv-new-user button button-small button-secondary" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-plus"></i><?php _e( 'Add New User', 'invoicing' );?></a>
45
-                    <a style="display:none" class="wpinv-new-cancel button button-small button-secondary" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-close"></i><?php _e( 'Cancel', 'invoicing' );?> </a>
43
+                    <a id="wpinv-fill-user-details" class="button button-small button-secondary" title="<?php esc_attr_e('Fill User Details', 'invoicing'); ?>" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-refresh"></i><?php _e('Fill User Details', 'invoicing'); ?></a>
44
+                    <a class="wpinv-new-user button button-small button-secondary" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-plus"></i><?php _e('Add New User', 'invoicing'); ?></a>
45
+                    <a style="display:none" class="wpinv-new-cancel button button-small button-secondary" href="javascript:void(0)"><i aria-hidden="true" class="fa fa-close"></i><?php _e('Cancel', 'invoicing'); ?> </a>
46 46
                 </div>
47 47
             <?php } ?>
48 48
         </div>
49 49
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-first-name table-layout">
50
-            <div class="gdmbx-th"><label for="wpinv_first_name"><?php _e( 'First Name', 'invoicing' );?></label></div>
50
+            <div class="gdmbx-th"><label for="wpinv_first_name"><?php _e('First Name', 'invoicing'); ?></label></div>
51 51
             <div class="gdmbx-td">
52
-                <input type="text" class="gdmbx2-text-large" name="wpinv_first_name" id="wpinv_first_name" value="<?php echo esc_attr( $invoice->first_name );?>" />
52
+                <input type="text" class="gdmbx2-text-large" name="wpinv_first_name" id="wpinv_first_name" value="<?php echo esc_attr($invoice->first_name); ?>" />
53 53
             </div>
54 54
         </div>
55 55
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-last-name table-layout">
56
-            <div class="gdmbx-th"><label for="wpinv_last_name"><?php _e( 'Last Name', 'invoicing' );?></label></div>
56
+            <div class="gdmbx-th"><label for="wpinv_last_name"><?php _e('Last Name', 'invoicing'); ?></label></div>
57 57
             <div class="gdmbx-td">
58
-                <input type="text" class="gdmbx2-text-large" name="wpinv_last_name" id="wpinv_last_name" value="<?php echo esc_attr( $invoice->last_name );?>" />
58
+                <input type="text" class="gdmbx2-text-large" name="wpinv_last_name" id="wpinv_last_name" value="<?php echo esc_attr($invoice->last_name); ?>" />
59 59
             </div>
60 60
         </div>
61 61
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-company table-layout">
62
-            <div class="gdmbx-th"><label for="wpinv_company"><?php _e( 'Company', 'invoicing' );?></label></div>
62
+            <div class="gdmbx-th"><label for="wpinv_company"><?php _e('Company', 'invoicing'); ?></label></div>
63 63
             <div class="gdmbx-td">
64
-                <input type="text" class="gdmbx2-text-large" name="wpinv_company" id="wpinv_company" value="<?php echo esc_attr( $invoice->company );?>" />
64
+                <input type="text" class="gdmbx2-text-large" name="wpinv_company" id="wpinv_company" value="<?php echo esc_attr($invoice->company); ?>" />
65 65
             </div>
66 66
         </div>
67 67
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-vat-number table-layout">
68
-            <div class="gdmbx-th"><label for="wpinv_vat_number"><?php _e( 'Vat Number', 'invoicing' );?></label></div>
68
+            <div class="gdmbx-th"><label for="wpinv_vat_number"><?php _e('Vat Number', 'invoicing'); ?></label></div>
69 69
             <div class="gdmbx-td">
70
-                <input type="text" class="gdmbx2-text-large" name="wpinv_vat_number" id="wpinv_vat_number" value="<?php echo esc_attr( $invoice->vat_number );?>" />
70
+                <input type="text" class="gdmbx2-text-large" name="wpinv_vat_number" id="wpinv_vat_number" value="<?php echo esc_attr($invoice->vat_number); ?>" />
71 71
             </div>
72 72
         </div>
73 73
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-address table-layout">
74
-            <div class="gdmbx-th"><label for="wpinv_address"><?php _e( 'Address', 'invoicing' );?></label></div>
74
+            <div class="gdmbx-th"><label for="wpinv_address"><?php _e('Address', 'invoicing'); ?></label></div>
75 75
             <div class="gdmbx-td">
76
-                <input type="text" class="gdmbx2-text-large" name="wpinv_address" id="wpinv_address" value="<?php echo esc_attr( $invoice->address );?>" />
76
+                <input type="text" class="gdmbx2-text-large" name="wpinv_address" id="wpinv_address" value="<?php echo esc_attr($invoice->address); ?>" />
77 77
             </div>
78 78
         </div>
79 79
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-city table-layout">
80
-            <div class="gdmbx-th"><label for="wpinv_city"><?php _e( 'City', 'invoicing' );?></label></div>
80
+            <div class="gdmbx-th"><label for="wpinv_city"><?php _e('City', 'invoicing'); ?></label></div>
81 81
             <div class="gdmbx-td">
82
-                <input type="text" class="gdmbx2-text-large" name="wpinv_city" id="wpinv_city" value="<?php echo esc_attr( $invoice->city );?>" />
82
+                <input type="text" class="gdmbx2-text-large" name="wpinv_city" id="wpinv_city" value="<?php echo esc_attr($invoice->city); ?>" />
83 83
             </div>
84 84
         </div>
85 85
         <div class="gdmbx-row gdmbx-type-select gdmbx-wpinv-country table-layout">
86
-            <div class="gdmbx-th"><label for="wpinv_country"><?php _e( 'Country', 'invoicing' );?> <span class="wpi-loader"><i class="fa fa-refresh fa-spin"></i></span></label></div>
86
+            <div class="gdmbx-th"><label for="wpinv_country"><?php _e('Country', 'invoicing'); ?> <span class="wpi-loader"><i class="fa fa-refresh fa-spin"></i></span></label></div>
87 87
             <div class="gdmbx-td">
88 88
                 <?php
89
-                echo wpinv_html_select( array(
90
-                    'options'          => array_merge( array( '' => __( 'Choose a country', 'invoicing' ) ), wpinv_get_country_list() ),
89
+                echo wpinv_html_select(array(
90
+                    'options'          => array_merge(array('' => __('Choose a country', 'invoicing')), wpinv_get_country_list()),
91 91
                     'name'             => 'wpinv_country',
92 92
                     'id'               => 'wpinv_country',
93 93
                     'selected'         => $invoice->country,
94 94
                     'show_option_all'  => false,
95 95
                     'show_option_none' => false,
96 96
                     'class'            => 'gdmbx2-text-large',
97
-                    'placeholder'      => __( 'Choose a country', 'invoicing' ),
97
+                    'placeholder'      => __('Choose a country', 'invoicing'),
98 98
                     'required'         => false,
99
-                ) );
99
+                ));
100 100
                 ?>
101 101
             </div>
102 102
         </div>
103 103
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-state table-layout">
104
-            <div class="gdmbx-th"><label for="wpinv_state"><?php _e( 'State', 'invoicing' );?></label></div>
104
+            <div class="gdmbx-th"><label for="wpinv_state"><?php _e('State', 'invoicing'); ?></label></div>
105 105
             <div class="gdmbx-td">
106 106
                 <?php
107
-                $states = wpinv_get_country_states( $invoice->country );
108
-                if( !empty( $states ) ) {
109
-                    echo wpinv_html_select( array(
110
-                        'options'          => array_merge( array( '' => __( 'Choose a state', 'invoicing' ) ), $states ),
107
+                $states = wpinv_get_country_states($invoice->country);
108
+                if (!empty($states)) {
109
+                    echo wpinv_html_select(array(
110
+                        'options'          => array_merge(array('' => __('Choose a state', 'invoicing')), $states),
111 111
                         'name'             => 'wpinv_state',
112 112
                         'id'               => 'wpinv_state',
113 113
                         'selected'         => $invoice->state,
114 114
                         'show_option_all'  => false,
115 115
                         'show_option_none' => false,
116 116
                         'class'            => 'gdmbx2-text-large',
117
-                        'placeholder'      => __( 'Choose a state', 'invoicing' ),
117
+                        'placeholder'      => __('Choose a state', 'invoicing'),
118 118
                         'required'         => false,
119
-                    ) );
119
+                    ));
120 120
                 } else {
121
-                    echo wpinv_html_text( array(
121
+                    echo wpinv_html_text(array(
122 122
                         'name'  => 'wpinv_state',
123
-                        'value' => ! empty( $invoice->state ) ? $invoice->state : '',
123
+                        'value' => !empty($invoice->state) ? $invoice->state : '',
124 124
                         'id'    => 'wpinv_state',
125 125
                         'class' => 'gdmbx2-text-large',
126 126
                         'required' => false,
127
-                    ) );
127
+                    ));
128 128
                 }
129 129
                 ?>
130 130
             </div>
131 131
         </div>
132 132
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-zip table-layout">
133
-            <div class="gdmbx-th"><label for="wpinv_zip"><?php _e( 'Zipcode', 'invoicing' );?></label></div>
133
+            <div class="gdmbx-th"><label for="wpinv_zip"><?php _e('Zipcode', 'invoicing'); ?></label></div>
134 134
             <div class="gdmbx-td">
135
-                <input type="text" class="gdmbx2-text-large" name="wpinv_zip" id="wpinv_zip" value="<?php echo esc_attr( $invoice->zip );?>" />
135
+                <input type="text" class="gdmbx2-text-large" name="wpinv_zip" id="wpinv_zip" value="<?php echo esc_attr($invoice->zip); ?>" />
136 136
             </div>
137 137
         </div>
138 138
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-phone table-layout">
139
-            <div class="gdmbx-th"><label for="wpinv_phone"><?php _e( 'Phone', 'invoicing' );?></label></div>
139
+            <div class="gdmbx-th"><label for="wpinv_phone"><?php _e('Phone', 'invoicing'); ?></label></div>
140 140
             <div class="gdmbx-td">
141
-                <input type="text" class="gdmbx2-text-large" name="wpinv_phone" id="wpinv_phone" value="<?php echo esc_attr( $invoice->phone );?>" />
141
+                <input type="text" class="gdmbx2-text-large" name="wpinv_phone" id="wpinv_phone" value="<?php echo esc_attr($invoice->phone); ?>" />
142 142
             </div>
143 143
         </div>
144 144
         <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-ip table-layout">
145
-            <div class="gdmbx-th"><label for="wpinv_ip"><?php _e( 'IP Address', 'invoicing' );?><?php if ($invoice->ip) { ?>
146
-                &nbsp;&nbsp;<a href="<?php echo admin_url( 'admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $invoice->ip ); ?>" title="<?php esc_attr_e( 'View IP information', 'invoicing' );?>" target="_blank"><i class="fa fa-external-link" aria-hidden="true"></i></a>
145
+            <div class="gdmbx-th"><label for="wpinv_ip"><?php _e('IP Address', 'invoicing'); ?><?php if ($invoice->ip) { ?>
146
+                &nbsp;&nbsp;<a href="<?php echo admin_url('admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $invoice->ip); ?>" title="<?php esc_attr_e('View IP information', 'invoicing'); ?>" target="_blank"><i class="fa fa-external-link" aria-hidden="true"></i></a>
147 147
                 <?php } ?></label></div>
148 148
             <div class="gdmbx-td">
149
-                <input type="text" class="gdmbx2-text-large" value="<?php echo esc_attr( $invoice->ip );?>" readonly />
149
+                <input type="text" class="gdmbx2-text-large" value="<?php echo esc_attr($invoice->ip); ?>" readonly />
150 150
             </div>
151 151
         </div>
152 152
     </div>
153 153
 </div>
154
-<?php wp_nonce_field( 'wpinv_save_invoice', 'wpinv_save_invoice' ) ;?>
154
+<?php wp_nonce_field('wpinv_save_invoice', 'wpinv_save_invoice'); ?>
155 155
 <?php
156 156
     }
157 157
 }
Please login to merge, or discard this patch.
includes/admin/register-settings.php 1 patch
Spacing   +506 added lines, -506 removed lines patch added patch discarded remove patch
@@ -1,66 +1,66 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7
-function wpinv_get_option( $key = '', $default = false ) {
7
+function wpinv_get_option($key = '', $default = false) {
8 8
     global $wpinv_options;
9 9
 
10
-    $value = isset( $wpinv_options[ $key ] ) ? $wpinv_options[ $key ] : $default;
11
-    $value = apply_filters( 'wpinv_get_option', $value, $key, $default );
10
+    $value = isset($wpinv_options[$key]) ? $wpinv_options[$key] : $default;
11
+    $value = apply_filters('wpinv_get_option', $value, $key, $default);
12 12
 
13
-    return apply_filters( 'wpinv_get_option_' . $key, $value, $key, $default );
13
+    return apply_filters('wpinv_get_option_' . $key, $value, $key, $default);
14 14
 }
15 15
 
16
-function wpinv_update_option( $key = '', $value = false ) {
16
+function wpinv_update_option($key = '', $value = false) {
17 17
     // If no key, exit
18
-    if ( empty( $key ) ) {
18
+    if (empty($key)) {
19 19
         return false;
20 20
     }
21 21
 
22
-    if ( empty( $value ) ) {
23
-        $remove_option = wpinv_delete_option( $key );
22
+    if (empty($value)) {
23
+        $remove_option = wpinv_delete_option($key);
24 24
         return $remove_option;
25 25
     }
26 26
 
27 27
     // First let's grab the current settings
28
-    $options = get_option( 'wpinv_settings' );
28
+    $options = get_option('wpinv_settings');
29 29
 
30 30
     // Let other plugin alter the value
31
-    $value = apply_filters( 'wpinv_update_option', $value, $key );
31
+    $value = apply_filters('wpinv_update_option', $value, $key);
32 32
 
33 33
     // Next let's try to update the value
34
-    $options[ $key ] = $value;
35
-    $did_update = update_option( 'wpinv_settings', $options );
34
+    $options[$key] = $value;
35
+    $did_update = update_option('wpinv_settings', $options);
36 36
 
37 37
     // If it's updated, let's update the global variable
38
-    if ( $did_update ) {
38
+    if ($did_update) {
39 39
         global $wpinv_options;
40
-        $wpinv_options[ $key ] = $value;
40
+        $wpinv_options[$key] = $value;
41 41
     }
42 42
 
43 43
     return $did_update;
44 44
 }
45 45
 
46
-function wpinv_delete_option( $key = '' ) {
46
+function wpinv_delete_option($key = '') {
47 47
     // If no key, exit
48
-    if ( empty( $key ) ) {
48
+    if (empty($key)) {
49 49
         return false;
50 50
     }
51 51
 
52 52
     // First let's grab the current settings
53
-    $options = get_option( 'wpinv_settings' );
53
+    $options = get_option('wpinv_settings');
54 54
 
55 55
     // Next let's try to update the value
56
-    if( isset( $options[ $key ] ) ) {
57
-        unset( $options[ $key ] );
56
+    if (isset($options[$key])) {
57
+        unset($options[$key]);
58 58
     }
59 59
 
60
-    $did_update = update_option( 'wpinv_settings', $options );
60
+    $did_update = update_option('wpinv_settings', $options);
61 61
 
62 62
     // If it updated, let's update the global variable
63
-    if ( $did_update ){
63
+    if ($did_update) {
64 64
         global $wpinv_options;
65 65
         $wpinv_options = $options;
66 66
     }
@@ -69,37 +69,37 @@  discard block
 block discarded – undo
69 69
 }
70 70
 
71 71
 function wpinv_get_settings() {
72
-    $settings = get_option( 'wpinv_settings' );
72
+    $settings = get_option('wpinv_settings');
73 73
 
74
-    if ( empty( $settings ) ) {
74
+    if (empty($settings)) {
75 75
         // Update old settings with new single option
76
-        $general_settings   = is_array( get_option( 'wpinv_settings_general' ) )    ? get_option( 'wpinv_settings_general' )    : array();
77
-        $gateways_settings  = is_array( get_option( 'wpinv_settings_gateways' ) )   ? get_option( 'wpinv_settings_gateways' )   : array();
78
-        $email_settings     = is_array( get_option( 'wpinv_settings_emails' ) )     ? get_option( 'wpinv_settings_emails' )     : array();
79
-        $tax_settings       = is_array( get_option( 'wpinv_settings_taxes' ) )      ? get_option( 'wpinv_settings_taxes' )      : array();
80
-        $misc_settings      = is_array( get_option( 'wpinv_settings_misc' ) )       ? get_option( 'wpinv_settings_misc' )       : array();
81
-        $tool_settings      = is_array( get_option( 'wpinv_settings_tools' ) )      ? get_option( 'wpinv_settings_tools' )      : array();
76
+        $general_settings   = is_array(get_option('wpinv_settings_general')) ? get_option('wpinv_settings_general') : array();
77
+        $gateways_settings  = is_array(get_option('wpinv_settings_gateways')) ? get_option('wpinv_settings_gateways') : array();
78
+        $email_settings     = is_array(get_option('wpinv_settings_emails')) ? get_option('wpinv_settings_emails') : array();
79
+        $tax_settings       = is_array(get_option('wpinv_settings_taxes')) ? get_option('wpinv_settings_taxes') : array();
80
+        $misc_settings      = is_array(get_option('wpinv_settings_misc')) ? get_option('wpinv_settings_misc') : array();
81
+        $tool_settings      = is_array(get_option('wpinv_settings_tools')) ? get_option('wpinv_settings_tools') : array();
82 82
 
83
-        $settings = array_merge( $general_settings, $gateways_settings, $tax_settings, $tool_settings );
83
+        $settings = array_merge($general_settings, $gateways_settings, $tax_settings, $tool_settings);
84 84
 
85
-        update_option( 'wpinv_settings', $settings );
85
+        update_option('wpinv_settings', $settings);
86 86
 
87 87
     }
88
-    return apply_filters( 'wpinv_get_settings', $settings );
88
+    return apply_filters('wpinv_get_settings', $settings);
89 89
 }
90 90
 
91 91
 function wpinv_register_settings() {
92
-    if ( false == get_option( 'wpinv_settings' ) ) {
93
-        add_option( 'wpinv_settings' );
92
+    if (false == get_option('wpinv_settings')) {
93
+        add_option('wpinv_settings');
94 94
     }
95 95
     
96 96
     $register_settings = wpinv_get_registered_settings();
97 97
     
98
-    foreach ( $register_settings as $tab => $sections ) {
99
-        foreach ( $sections as $section => $settings) {
98
+    foreach ($register_settings as $tab => $sections) {
99
+        foreach ($sections as $section => $settings) {
100 100
             // Check for backwards compatibility
101
-            $section_tabs = wpinv_get_settings_tab_sections( $tab );
102
-            if ( ! is_array( $section_tabs ) || ! array_key_exists( $section, $section_tabs ) ) {
101
+            $section_tabs = wpinv_get_settings_tab_sections($tab);
102
+            if (!is_array($section_tabs) || !array_key_exists($section, $section_tabs)) {
103 103
                 $section = 'main';
104 104
                 $settings = $sections;
105 105
             }
@@ -111,41 +111,41 @@  discard block
 block discarded – undo
111 111
                 'wpinv_settings_' . $tab . '_' . $section
112 112
             );
113 113
 
114
-            foreach ( $settings as $option ) {
114
+            foreach ($settings as $option) {
115 115
                 // For backwards compatibility
116
-                if ( empty( $option['id'] ) ) {
116
+                if (empty($option['id'])) {
117 117
                     continue;
118 118
                 }
119 119
 
120
-                $name = isset( $option['name'] ) ? $option['name'] : '';
120
+                $name = isset($option['name']) ? $option['name'] : '';
121 121
 
122 122
                 add_settings_field(
123 123
                     'wpinv_settings[' . $option['id'] . ']',
124 124
                     $name,
125
-                    function_exists( 'wpinv_' . $option['type'] . '_callback' ) ? 'wpinv_' . $option['type'] . '_callback' : 'wpinv_missing_callback',
125
+                    function_exists('wpinv_' . $option['type'] . '_callback') ? 'wpinv_' . $option['type'] . '_callback' : 'wpinv_missing_callback',
126 126
                     'wpinv_settings_' . $tab . '_' . $section,
127 127
                     'wpinv_settings_' . $tab . '_' . $section,
128 128
                     array(
129 129
                         'section'     => $section,
130
-                        'id'          => isset( $option['id'] )          ? $option['id']          : null,
131
-                        'desc'        => ! empty( $option['desc'] )      ? $option['desc']        : '',
132
-                        'name'        => isset( $option['name'] )        ? $option['name']        : null,
133
-                        'size'        => isset( $option['size'] )        ? $option['size']        : null,
134
-                        'options'     => isset( $option['options'] )     ? $option['options']     : '',
135
-                        'selected'    => isset( $option['selected'] )    ? $option['selected']    : null,
136
-                        'std'         => isset( $option['std'] )         ? $option['std']         : '',
137
-                        'min'         => isset( $option['min'] )         ? $option['min']         : null,
138
-                        'max'         => isset( $option['max'] )         ? $option['max']         : null,
139
-                        'step'        => isset( $option['step'] )        ? $option['step']        : null,
140
-                        'placeholder' => isset( $option['placeholder'] ) ? $option['placeholder'] : null,
141
-                        'allow_blank' => isset( $option['allow_blank'] ) ? $option['allow_blank'] : true,
142
-                        'readonly'    => isset( $option['readonly'] )    ? $option['readonly']    : false,
143
-                        'faux'        => isset( $option['faux'] )        ? $option['faux']        : false,
144
-                        'onchange'    => !empty( $option['onchange'] )   ? $option['onchange']    : '',
145
-                        'custom'      => !empty( $option['custom'] )     ? $option['custom']      : '',
146
-                        'class'       =>  !empty( $option['class'] )     ? $option['class']      : '',
147
-                        'cols'        => !empty( $option['cols'] ) && (int)$option['cols'] > 0 ? (int)$option['cols'] : 50,
148
-                        'rows'        => !empty( $option['rows'] ) && (int)$option['rows'] > 0 ? (int)$option['rows'] : 5,
130
+                        'id'          => isset($option['id']) ? $option['id'] : null,
131
+                        'desc'        => !empty($option['desc']) ? $option['desc'] : '',
132
+                        'name'        => isset($option['name']) ? $option['name'] : null,
133
+                        'size'        => isset($option['size']) ? $option['size'] : null,
134
+                        'options'     => isset($option['options']) ? $option['options'] : '',
135
+                        'selected'    => isset($option['selected']) ? $option['selected'] : null,
136
+                        'std'         => isset($option['std']) ? $option['std'] : '',
137
+                        'min'         => isset($option['min']) ? $option['min'] : null,
138
+                        'max'         => isset($option['max']) ? $option['max'] : null,
139
+                        'step'        => isset($option['step']) ? $option['step'] : null,
140
+                        'placeholder' => isset($option['placeholder']) ? $option['placeholder'] : null,
141
+                        'allow_blank' => isset($option['allow_blank']) ? $option['allow_blank'] : true,
142
+                        'readonly'    => isset($option['readonly']) ? $option['readonly'] : false,
143
+                        'faux'        => isset($option['faux']) ? $option['faux'] : false,
144
+                        'onchange'    => !empty($option['onchange']) ? $option['onchange'] : '',
145
+                        'custom'      => !empty($option['custom']) ? $option['custom'] : '',
146
+                        'class'       =>  !empty($option['class']) ? $option['class'] : '',
147
+                        'cols'        => !empty($option['cols']) && (int)$option['cols'] > 0 ? (int)$option['cols'] : 50,
148
+                        'rows'        => !empty($option['rows']) && (int)$option['rows'] > 0 ? (int)$option['rows'] : 5,
149 149
                     )
150 150
                 );
151 151
             }
@@ -153,174 +153,174 @@  discard block
 block discarded – undo
153 153
     }
154 154
 
155 155
     // Creates our settings in the options table
156
-    register_setting( 'wpinv_settings', 'wpinv_settings', 'wpinv_settings_sanitize' );
156
+    register_setting('wpinv_settings', 'wpinv_settings', 'wpinv_settings_sanitize');
157 157
 }
158
-add_action( 'admin_init', 'wpinv_register_settings' );
158
+add_action('admin_init', 'wpinv_register_settings');
159 159
 
160 160
 function wpinv_get_registered_settings() {
161
-    $pages = wpinv_get_pages( true );
161
+    $pages = wpinv_get_pages(true);
162 162
     
163 163
     $currencies = wpinv_get_currencies();
164 164
     
165 165
     $currency_code_options = array();
166
-    foreach ( $currencies as $code => $name ) {
167
-        $currency_code_options[ $code ] = $code . ' - ' . $name . ' (' . wpinv_currency_symbol( $code ) . ')';
166
+    foreach ($currencies as $code => $name) {
167
+        $currency_code_options[$code] = $code . ' - ' . $name . ' (' . wpinv_currency_symbol($code) . ')';
168 168
     }
169 169
     
170 170
     $due_payment_options       = array();
171
-    $due_payment_options[0]    = __( 'Now', 'invoicing' );
172
-    for ( $i = 1; $i <= 30; $i++ ) {
171
+    $due_payment_options[0]    = __('Now', 'invoicing');
172
+    for ($i = 1; $i <= 30; $i++) {
173 173
         $due_payment_options[$i] = $i;
174 174
     }
175 175
     
176 176
     $invoice_number_padd_options = array();
177
-    for ( $i = 0; $i <= 20; $i++ ) {
177
+    for ($i = 0; $i <= 20; $i++) {
178 178
         $invoice_number_padd_options[$i] = $i;
179 179
     }
180 180
     
181 181
     $currency_symbol = wpinv_currency_symbol();
182 182
     
183 183
     $last_number = '';
184
-    if ( $last_invoice_number = get_option( 'wpinv_last_invoice_number' ) ) {
185
-        $last_invoice_number = is_numeric( $last_invoice_number ) ? $last_invoice_number : wpinv_clean_invoice_number( $last_invoice_number );
184
+    if ($last_invoice_number = get_option('wpinv_last_invoice_number')) {
185
+        $last_invoice_number = is_numeric($last_invoice_number) ? $last_invoice_number : wpinv_clean_invoice_number($last_invoice_number);
186 186
 
187
-        if ( !empty( $last_invoice_number ) ) {
188
-            $last_number = ' ' . wp_sprintf( __( "( Last Invoice's sequential number: <b>%s</b> )", 'invoicing' ), $last_invoice_number );
187
+        if (!empty($last_invoice_number)) {
188
+            $last_number = ' ' . wp_sprintf(__("( Last Invoice's sequential number: <b>%s</b> )", 'invoicing'), $last_invoice_number);
189 189
         }
190 190
     }
191 191
     
192 192
     $alert_wrapper_start = '<p style="color: #F00">';
193 193
     $alert_wrapper_close = '</p>';
194 194
     $wpinv_settings = array(
195
-        'general' => apply_filters( 'wpinv_settings_general',
195
+        'general' => apply_filters('wpinv_settings_general',
196 196
             array(
197 197
                 'main' => array(
198 198
                     'location_settings' => array(
199 199
                         'id'   => 'location_settings',
200
-                        'name' => '<h3>' . __( 'Default Location', 'invoicing' ) . '</h3>',
200
+                        'name' => '<h3>' . __('Default Location', 'invoicing') . '</h3>',
201 201
                         'desc' => '',
202 202
                         'type' => 'header',
203 203
                     ),
204 204
                     'default_country' => array(
205 205
                         'id'      => 'default_country',
206
-                        'name'    => __( 'Default Country', 'invoicing' ),
207
-                        'desc'    => __( 'Where does your store operate from?', 'invoicing' ),
206
+                        'name'    => __('Default Country', 'invoicing'),
207
+                        'desc'    => __('Where does your store operate from?', 'invoicing'),
208 208
                         'type'    => 'select',
209 209
                         'options' => wpinv_get_country_list(),
210 210
                         'std'     => 'GB',
211
-                        'placeholder' => __( 'Select a country', 'invoicing' ),
211
+                        'placeholder' => __('Select a country', 'invoicing'),
212 212
                     ),
213 213
                     'default_state' => array(
214 214
                         'id'      => 'default_state',
215
-                        'name'    => __( 'Default State / Province', 'invoicing' ),
216
-                        'desc'    => __( 'What state / province does your store operate from?', 'invoicing' ),
215
+                        'name'    => __('Default State / Province', 'invoicing'),
216
+                        'desc'    => __('What state / province does your store operate from?', 'invoicing'),
217 217
                         'type'    => 'country_states',
218
-                        'placeholder' => __( 'Select a state', 'invoicing' ),
218
+                        'placeholder' => __('Select a state', 'invoicing'),
219 219
                     ),
220 220
                     'store_name' => array(
221 221
                         'id'   => 'store_name',
222
-                        'name' => __( 'Store Name', 'invoicing' ),
223
-                        'desc' => __( 'Store name to print on invoices.', 'invoicing' ),
222
+                        'name' => __('Store Name', 'invoicing'),
223
+                        'desc' => __('Store name to print on invoices.', 'invoicing'),
224 224
                         'std'     => get_option('blogname'),
225 225
                         'type' => 'text',
226 226
                     ),
227 227
                     'logo' => array(
228 228
                         'id'   => 'logo',
229
-                        'name' => __( 'Logo URL', 'invoicing' ),
230
-                        'desc' => __( 'Store logo to print on invoices.', 'invoicing' ),
229
+                        'name' => __('Logo URL', 'invoicing'),
230
+                        'desc' => __('Store logo to print on invoices.', 'invoicing'),
231 231
                         'type' => 'text',
232 232
                     ),
233 233
                     'store_address' => array(
234 234
                         'id'   => 'store_address',
235
-                        'name' => __( 'Store Address', 'invoicing' ),
236
-                        'desc' => __( 'Enter the store address to display on invoice', 'invoicing' ),
235
+                        'name' => __('Store Address', 'invoicing'),
236
+                        'desc' => __('Enter the store address to display on invoice', 'invoicing'),
237 237
                         'type' => 'textarea',
238 238
                     ),
239 239
                     'page_settings' => array(
240 240
                         'id'   => 'page_settings',
241
-                        'name' => '<h3>' . __( 'Page Settings', 'invoicing' ) . '</h3>',
241
+                        'name' => '<h3>' . __('Page Settings', 'invoicing') . '</h3>',
242 242
                         'desc' => '',
243 243
                         'type' => 'header',
244 244
                     ),
245 245
                     'checkout_page' => array(
246 246
                         'id'          => 'checkout_page',
247
-                        'name'        => __( 'Checkout Page', 'invoicing' ),
248
-                        'desc'        => __( 'This is the checkout page where buyers will complete their payments. The <b>[wpinv_checkout]</b> short code must be on this page.', 'invoicing' ),
247
+                        'name'        => __('Checkout Page', 'invoicing'),
248
+                        'desc'        => __('This is the checkout page where buyers will complete their payments. The <b>[wpinv_checkout]</b> short code must be on this page.', 'invoicing'),
249 249
                         'type'        => 'select',
250 250
                         'options'     => $pages,
251
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
251
+                        'placeholder' => __('Select a page', 'invoicing'),
252 252
                     ),
253 253
                     'success_page' => array(
254 254
                         'id'          => 'success_page',
255
-                        'name'        => __( 'Success Page', 'invoicing' ),
256
-                        'desc'        => __( 'This is the page buyers are sent to after completing their payments. The <b>[wpinv_receipt]</b> short code should be on this page.', 'invoicing' ),
255
+                        'name'        => __('Success Page', 'invoicing'),
256
+                        'desc'        => __('This is the page buyers are sent to after completing their payments. The <b>[wpinv_receipt]</b> short code should be on this page.', 'invoicing'),
257 257
                         'type'        => 'select',
258 258
                         'options'     => $pages,
259
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
259
+                        'placeholder' => __('Select a page', 'invoicing'),
260 260
                     ),
261 261
                     'failure_page' => array(
262 262
                         'id'          => 'failure_page',
263
-                        'name'        => __( 'Failed Transaction Page', 'invoicing' ),
264
-                        'desc'        => __( 'This is the page buyers are sent to if their transaction is cancelled or fails', 'invoicing' ),
263
+                        'name'        => __('Failed Transaction Page', 'invoicing'),
264
+                        'desc'        => __('This is the page buyers are sent to if their transaction is cancelled or fails', 'invoicing'),
265 265
                         'type'        => 'select',
266 266
                         'options'     => $pages,
267
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
267
+                        'placeholder' => __('Select a page', 'invoicing'),
268 268
                     ),
269 269
                     'invoice_history_page' => array(
270 270
                         'id'          => 'invoice_history_page',
271
-                        'name'        => __( 'Invoice History Page', 'invoicing' ),
272
-                        'desc'        => __( 'This page shows an invoice history for the current user', 'invoicing' ),
271
+                        'name'        => __('Invoice History Page', 'invoicing'),
272
+                        'desc'        => __('This page shows an invoice history for the current user', 'invoicing'),
273 273
                         'type'        => 'select',
274 274
                         'options'     => $pages,
275
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
275
+                        'placeholder' => __('Select a page', 'invoicing'),
276 276
                     )
277 277
                 ),
278 278
                 'currency_section' => array(
279 279
                     'currency_settings' => array(
280 280
                         'id'   => 'currency_settings',
281
-                        'name' => '<h3>' . __( 'Currency Settings', 'invoicing' ) . '</h3>',
281
+                        'name' => '<h3>' . __('Currency Settings', 'invoicing') . '</h3>',
282 282
                         'desc' => '',
283 283
                         'type' => 'header',
284 284
                     ),
285 285
                     'currency' => array(
286 286
                         'id'      => 'currency',
287
-                        'name'    => __( 'Currency', 'invoicing' ),
288
-                        'desc'    => __( 'Choose your currency. Note that some payment gateways have currency restrictions.', 'invoicing' ),
287
+                        'name'    => __('Currency', 'invoicing'),
288
+                        'desc'    => __('Choose your currency. Note that some payment gateways have currency restrictions.', 'invoicing'),
289 289
                         'type'    => 'select',
290 290
                         'options' => $currency_code_options,
291 291
                     ),
292 292
                     'currency_position' => array(
293 293
                         'id'      => 'currency_position',
294
-                        'name'    => __( 'Currency Position', 'invoicing' ),
295
-                        'desc'    => __( 'Choose the location of the currency sign.', 'invoicing' ),
294
+                        'name'    => __('Currency Position', 'invoicing'),
295
+                        'desc'    => __('Choose the location of the currency sign.', 'invoicing'),
296 296
                         'type'    => 'select',
297 297
                         'options'  => array(
298
-                            'left'        => __( 'Left', 'invoicing' ) . ' (' . $currency_symbol . wpinv_format_amount( '99.99' ) . ')',
299
-                            'right'       => __( 'Right', 'invoicing' ) . ' ('. wpinv_format_amount( '99.99' ) . $currency_symbol . ')',
300
-                            'left_space'  => __( 'Left with space', 'invoicing' ) . ' (' . $currency_symbol . ' ' . wpinv_format_amount( '99.99' ) . ')',
301
-                            'right_space' => __( 'Right with space', 'invoicing' ) . ' (' . wpinv_format_amount( '99.99' ) . ' ' . $currency_symbol . ')'
298
+                            'left'        => __('Left', 'invoicing') . ' (' . $currency_symbol . wpinv_format_amount('99.99') . ')',
299
+                            'right'       => __('Right', 'invoicing') . ' (' . wpinv_format_amount('99.99') . $currency_symbol . ')',
300
+                            'left_space'  => __('Left with space', 'invoicing') . ' (' . $currency_symbol . ' ' . wpinv_format_amount('99.99') . ')',
301
+                            'right_space' => __('Right with space', 'invoicing') . ' (' . wpinv_format_amount('99.99') . ' ' . $currency_symbol . ')'
302 302
                         )
303 303
                     ),
304 304
                     'thousands_separator' => array(
305 305
                         'id'   => 'thousands_separator',
306
-                        'name' => __( 'Thousands Separator', 'invoicing' ),
307
-                        'desc' => __( 'The symbol (usually , or .) to separate thousands', 'invoicing' ),
306
+                        'name' => __('Thousands Separator', 'invoicing'),
307
+                        'desc' => __('The symbol (usually , or .) to separate thousands', 'invoicing'),
308 308
                         'type' => 'text',
309 309
                         'size' => 'small',
310 310
                         'std'  => ',',
311 311
                     ),
312 312
                     'decimal_separator' => array(
313 313
                         'id'   => 'decimal_separator',
314
-                        'name' => __( 'Decimal Separator', 'invoicing' ),
315
-                        'desc' => __( 'The symbol (usually , or .) to separate decimal points', 'invoicing' ),
314
+                        'name' => __('Decimal Separator', 'invoicing'),
315
+                        'desc' => __('The symbol (usually , or .) to separate decimal points', 'invoicing'),
316 316
                         'type' => 'text',
317 317
                         'size' => 'small',
318 318
                         'std'  => '.',
319 319
                     ),
320 320
                     'decimals' => array(
321 321
                         'id'   => 'decimals',
322
-                        'name' => __( 'Number of Decimals', 'invoicing' ),
323
-                        'desc' => __( 'This sets the number of decimal points shown in displayed prices.', 'invoicing' ),
322
+                        'name' => __('Number of Decimals', 'invoicing'),
323
+                        'desc' => __('This sets the number of decimal points shown in displayed prices.', 'invoicing'),
324 324
                         'type' => 'number',
325 325
                         'size' => 'small',
326 326
                         'std'  => '2',
@@ -332,29 +332,29 @@  discard block
 block discarded – undo
332 332
                 'labels' => array(
333 333
                     'labels' => array(
334 334
                         'id'   => 'labels_settings',
335
-                        'name' => '<h3>' . __( 'Invoice Labels', 'invoicing' ) . '</h3>',
335
+                        'name' => '<h3>' . __('Invoice Labels', 'invoicing') . '</h3>',
336 336
                         'desc' => '',
337 337
                         'type' => 'header',
338 338
                     ),
339 339
                     'vat_name' => array(
340 340
                         'id' => 'vat_name',
341
-                        'name' => __( 'VAT Name', 'invoicing' ),
342
-                        'desc' => __( 'Enter the VAT name', 'invoicing' ),
341
+                        'name' => __('VAT Name', 'invoicing'),
342
+                        'desc' => __('Enter the VAT name', 'invoicing'),
343 343
                         'type' => 'text',
344 344
                         'size' => 'regular',
345 345
                         'std' => 'VAT'
346 346
                     ),
347 347
                     'vat_invoice_notice_label' => array(
348 348
                         'id' => 'vat_invoice_notice_label',
349
-                        'name' => __( 'Invoice Notice Label', 'invoicing' ),
350
-                        'desc' => __( 'Use this to add an invoice notice section (label) to your invoices', 'invoicing' ),
349
+                        'name' => __('Invoice Notice Label', 'invoicing'),
350
+                        'desc' => __('Use this to add an invoice notice section (label) to your invoices', 'invoicing'),
351 351
                         'type' => 'text',
352 352
                         'size' => 'regular',
353 353
                     ),
354 354
                     'vat_invoice_notice' => array(
355 355
                         'id' => 'vat_invoice_notice',
356
-                        'name' => __( 'Invoice notice', 'invoicing' ),
357
-                        'desc' =>   __( 'Use this to add an invoice notice section (description) to your invoices', 'invoicing' ),
356
+                        'name' => __('Invoice notice', 'invoicing'),
357
+                        'desc' =>   __('Use this to add an invoice notice section (description) to your invoices', 'invoicing'),
358 358
                         'type' => 'text',
359 359
                         'size' => 'regular',
360 360
                     )
@@ -366,22 +366,22 @@  discard block
 block discarded – undo
366 366
                 'main' => array(
367 367
                     'gateway_settings' => array(
368 368
                         'id'   => 'api_header',
369
-                        'name' => '<h3>' . __( 'Gateway Settings', 'invoicing' ) . '</h3>',
369
+                        'name' => '<h3>' . __('Gateway Settings', 'invoicing') . '</h3>',
370 370
                         'desc' => '',
371 371
                         'type' => 'header',
372 372
                     ),
373 373
                     'gateways' => array(
374 374
                         'id'      => 'gateways',
375
-                        'name'    => __( 'Payment Gateways', 'invoicing' ),
376
-                        'desc'    => __( 'Choose the payment gateways you want to enable.', 'invoicing' ),
375
+                        'name'    => __('Payment Gateways', 'invoicing'),
376
+                        'desc'    => __('Choose the payment gateways you want to enable.', 'invoicing'),
377 377
                         'type'    => 'gateways',
378 378
                         'std'     => array('manual'=>1),
379 379
                         'options' => wpinv_get_payment_gateways(),
380 380
                     ),
381 381
                     'default_gateway' => array(
382 382
                         'id'      => 'default_gateway',
383
-                        'name'    => __( 'Default Gateway', 'invoicing' ),
384
-                        'desc'    => __( 'This gateway will be loaded automatically with the checkout page.', 'invoicing' ),
383
+                        'name'    => __('Default Gateway', 'invoicing'),
384
+                        'desc'    => __('This gateway will be loaded automatically with the checkout page.', 'invoicing'),
385 385
                         'type'    => 'gateway_select',
386 386
                         'std'     => 'manual',
387 387
                         'options' => wpinv_get_payment_gateways(),
@@ -395,19 +395,19 @@  discard block
 block discarded – undo
395 395
                 'main' => array(
396 396
                     'tax_settings' => array(
397 397
                         'id'   => 'tax_settings',
398
-                        'name' => '<h3>' . __( 'Tax Settings', 'invoicing' ) . '</h3>',
398
+                        'name' => '<h3>' . __('Tax Settings', 'invoicing') . '</h3>',
399 399
                         'type' => 'header',
400 400
                     ),
401 401
                     'enable_taxes' => array(
402 402
                         'id'   => 'enable_taxes',
403
-                        'name' => __( 'Enable Taxes', 'invoicing' ),
404
-                        'desc' => __( 'Check this to enable taxes on invoices.', 'invoicing' ),
403
+                        'name' => __('Enable Taxes', 'invoicing'),
404
+                        'desc' => __('Check this to enable taxes on invoices.', 'invoicing'),
405 405
                         'type' => 'checkbox',
406 406
                     ),
407 407
                     'tax_rate' => array(
408 408
                         'id'   => 'tax_rate',
409
-                        'name' => __( 'Fallback Tax Rate', 'invoicing' ),
410
-                        'desc' => __( 'Enter a percentage, such as 6.5. Customers not in a specific rate will be charged this rate.', 'invoicing' ),
409
+                        'name' => __('Fallback Tax Rate', 'invoicing'),
410
+                        'desc' => __('Enter a percentage, such as 6.5. Customers not in a specific rate will be charged this rate.', 'invoicing'),
411 411
                         'type' => 'number',
412 412
                         'size' => 'small',
413 413
                         'min'  => '0',
@@ -419,8 +419,8 @@  discard block
 block discarded – undo
419 419
                 'rates' => array(
420 420
                     'tax_rates' => array(
421 421
                         'id'   => 'tax_rates',
422
-                        'name' => '<h3>' . __( 'Tax Rates', 'invoicing' ) . '</h3>',
423
-                        'desc' => __( 'Enter tax rates for specific regions.', 'invoicing' ),
422
+                        'name' => '<h3>' . __('Tax Rates', 'invoicing') . '</h3>',
423
+                        'desc' => __('Enter tax rates for specific regions.', 'invoicing'),
424 424
                         'type' => 'tax_rates',
425 425
                     ),
426 426
                 )
@@ -432,61 +432,61 @@  discard block
 block discarded – undo
432 432
                 'main' => array(
433 433
                     'email_settings_header' => array(
434 434
                         'id'   => 'email_settings_header',
435
-                        'name' => '<h3>' . __( 'Email Sender Options', 'invoicing' ) . '</h3>',
435
+                        'name' => '<h3>' . __('Email Sender Options', 'invoicing') . '</h3>',
436 436
                         'type' => 'header',
437 437
                     ),
438 438
                     'email_from_name' => array(
439 439
                         'id'   => 'email_from_name',
440
-                        'name' => __( 'From Name', 'invoicing' ),
441
-                        'desc' => __( 'Enter the sender\'s name appears in outgoing invoice emails. This should be your site name.', 'invoicing' ),
442
-                        'std' => esc_attr( get_bloginfo( 'name', 'display' ) ),
440
+                        'name' => __('From Name', 'invoicing'),
441
+                        'desc' => __('Enter the sender\'s name appears in outgoing invoice emails. This should be your site name.', 'invoicing'),
442
+                        'std' => esc_attr(get_bloginfo('name', 'display')),
443 443
                         'type' => 'text',
444 444
                     ),
445 445
                     'email_from' => array(
446 446
                         'id'   => 'email_from',
447
-                        'name' => __( 'From Email', 'invoicing' ),
448
-                        'desc' => sprintf (__( 'Email address to send invoice emails from. This will act as the "from" and "reply-to" address. %s If emails are not being sent it may be that your hosting prevents emails being sent if the email domains do not match.%s', 'invoicing' ), $alert_wrapper_start, $alert_wrapper_close),
449
-                        'std' => get_option( 'admin_email' ),
447
+                        'name' => __('From Email', 'invoicing'),
448
+                        'desc' => sprintf(__('Email address to send invoice emails from. This will act as the "from" and "reply-to" address. %s If emails are not being sent it may be that your hosting prevents emails being sent if the email domains do not match.%s', 'invoicing'), $alert_wrapper_start, $alert_wrapper_close),
449
+                        'std' => get_option('admin_email'),
450 450
                         'type' => 'text',
451 451
                     ),
452 452
                     'overdue_settings_header' => array(
453 453
                         'id'   => 'overdue_settings_header',
454
-                        'name' => '<h3>' . __( 'Due Date Settings', 'invoicing' ) . '</h3>',
454
+                        'name' => '<h3>' . __('Due Date Settings', 'invoicing') . '</h3>',
455 455
                         'type' => 'header',
456 456
                     ),
457 457
                     'overdue_active' => array(
458 458
                         'id'   => 'overdue_active',
459
-                        'name' => __( 'Enable Due Date', 'invoicing' ),
460
-                        'desc' => __( 'Check this to enable due date option for invoices.', 'invoicing' ),
459
+                        'name' => __('Enable Due Date', 'invoicing'),
460
+                        'desc' => __('Check this to enable due date option for invoices.', 'invoicing'),
461 461
                         'type' => 'checkbox',
462 462
                         'std'  => false,
463 463
                     ),
464 464
                     'overdue_days' => array(
465 465
                         'id'          => 'overdue_days',
466
-                        'name'        => __( 'Default Due Date', 'invoicing' ),
467
-                        'desc'        => __( 'Number of days each Invoice is due after the created date. This will automatically set the date in the "Due Date" field. Can be overridden on individual Invoices.', 'invoicing' ),
466
+                        'name'        => __('Default Due Date', 'invoicing'),
467
+                        'desc'        => __('Number of days each Invoice is due after the created date. This will automatically set the date in the "Due Date" field. Can be overridden on individual Invoices.', 'invoicing'),
468 468
                         'type'        => 'select',
469 469
                         'options'     => $due_payment_options,
470 470
                         'std'         => 0,
471
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
471
+                        'placeholder' => __('Select a page', 'invoicing'),
472 472
                     ),
473 473
                     'email_template_header' => array(
474 474
                         'id'   => 'email_template_header',
475
-                        'name' => '<h3>' . __( 'Email Template', 'invoicing' ) . '</h3>',
475
+                        'name' => '<h3>' . __('Email Template', 'invoicing') . '</h3>',
476 476
                         'type' => 'header',
477 477
                     ),
478 478
                     'email_header_image' => array(
479 479
                         'id'   => 'email_header_image',
480
-                        'name' => __( 'Header Image', 'invoicing' ),
481
-                        'desc' => __( 'URL to an image you want to show in the email header. Upload images using the media uploader (Admin > Media).', 'invoicing' ),
480
+                        'name' => __('Header Image', 'invoicing'),
481
+                        'desc' => __('URL to an image you want to show in the email header. Upload images using the media uploader (Admin > Media).', 'invoicing'),
482 482
                         'std' => '',
483 483
                         'type' => 'text',
484 484
                     ),
485 485
                     'email_footer_text' => array(
486 486
                         'id'   => 'email_footer_text',
487
-                        'name' => __( 'Footer Text', 'invoicing' ),
488
-                        'desc' => __( 'The text to appear in the footer of all invoice emails.', 'invoicing' ),
489
-                        'std' => get_bloginfo( 'name', 'display' ) . ' - ' . __( 'Powered by GeoDirectory', 'invoicing' ),
487
+                        'name' => __('Footer Text', 'invoicing'),
488
+                        'desc' => __('The text to appear in the footer of all invoice emails.', 'invoicing'),
489
+                        'std' => get_bloginfo('name', 'display') . ' - ' . __('Powered by GeoDirectory', 'invoicing'),
490 490
                         'type' => 'textarea',
491 491
                         'class' => 'regular-text',
492 492
                         'rows' => 2,
@@ -494,29 +494,29 @@  discard block
 block discarded – undo
494 494
                     ),
495 495
                     'email_base_color' => array(
496 496
                         'id'   => 'email_base_color',
497
-                        'name' => __( 'Base Color', 'invoicing' ),
498
-                        'desc' => __( 'The base color for invoice email template. Default <code>#557da2</code>.', 'invoicing' ),
497
+                        'name' => __('Base Color', 'invoicing'),
498
+                        'desc' => __('The base color for invoice email template. Default <code>#557da2</code>.', 'invoicing'),
499 499
                         'std' => '#557da2',
500 500
                         'type' => 'color',
501 501
                     ),
502 502
                     'email_background_color' => array(
503 503
                         'id'   => 'email_background_color',
504
-                        'name' => __( 'Background Color', 'invoicing' ),
505
-                        'desc' => __( 'The background color of email template. Default <code>#f5f5f5</code>.', 'invoicing' ),
504
+                        'name' => __('Background Color', 'invoicing'),
505
+                        'desc' => __('The background color of email template. Default <code>#f5f5f5</code>.', 'invoicing'),
506 506
                         'std' => '#f5f5f5',
507 507
                         'type' => 'color',
508 508
                     ),
509 509
                     'email_body_background_color' => array(
510 510
                         'id'   => 'email_body_background_color',
511
-                        'name' => __( 'Body Background Color', 'invoicing' ),
512
-                        'desc' => __( 'The main body background color of email template. Default <code>#fdfdfd</code>.', 'invoicing' ),
511
+                        'name' => __('Body Background Color', 'invoicing'),
512
+                        'desc' => __('The main body background color of email template. Default <code>#fdfdfd</code>.', 'invoicing'),
513 513
                         'std' => '#fdfdfd',
514 514
                         'type' => 'color',
515 515
                     ),
516 516
                     'email_text_color' => array(
517 517
                         'id'   => 'email_text_color',
518
-                        'name' => __( 'Body Text Color', 'invoicing' ),
519
-                        'desc' => __( 'The main body text color. Default <code>#505050</code>.', 'invoicing' ),
518
+                        'name' => __('Body Text Color', 'invoicing'),
519
+                        'desc' => __('The main body text color. Default <code>#505050</code>.', 'invoicing'),
520 520
                         'std' => '#505050',
521 521
                         'type' => 'color',
522 522
                     ),
@@ -535,19 +535,19 @@  discard block
 block discarded – undo
535 535
                 'main' => array(
536 536
                     'invoice_number_format_settings' => array(
537 537
                         'id'   => 'invoice_number_format_settings',
538
-                        'name' => '<h3>' . __( 'Invoice Number', 'invoicing' ) . '</h3>',
538
+                        'name' => '<h3>' . __('Invoice Number', 'invoicing') . '</h3>',
539 539
                         'type' => 'header',
540 540
                     ),
541 541
                     'sequential_invoice_number' => array(
542 542
                         'id'   => 'sequential_invoice_number',
543
-                        'name' => __( 'Sequential Invoice Numbers', 'invoicing' ),
544
-                        'desc' => __( 'Check this box to enable sequential invoice numbers.', 'invoicing' ),
543
+                        'name' => __('Sequential Invoice Numbers', 'invoicing'),
544
+                        'desc' => __('Check this box to enable sequential invoice numbers.', 'invoicing'),
545 545
                         'type' => 'checkbox',
546 546
                     ),
547 547
                     'invoice_sequence_start' => array(
548 548
                         'id'   => 'invoice_sequence_start',
549
-                        'name' => __( 'Sequential Starting Number', 'invoicing' ),
550
-                        'desc' => __( 'The number at which the invoice number sequence should begin.', 'invoicing' ) . $last_number,
549
+                        'name' => __('Sequential Starting Number', 'invoicing'),
550
+                        'desc' => __('The number at which the invoice number sequence should begin.', 'invoicing') . $last_number,
551 551
                         'type' => 'number',
552 552
                         'size' => 'small',
553 553
                         'std'  => '1',
@@ -555,16 +555,16 @@  discard block
 block discarded – undo
555 555
                     ),
556 556
                     'invoice_number_padd' => array(
557 557
                         'id'      => 'invoice_number_padd',
558
-                        'name'    => __( 'Minimum Digits', 'invoicing' ),
559
-                        'desc'    => __( 'If the invoice number has less digits than this number, it is left padded with 0s. Ex: invoice number 108 will padded to 00108 if digits set to 5. The default 0 means no padding.', 'invoicing' ),
558
+                        'name'    => __('Minimum Digits', 'invoicing'),
559
+                        'desc'    => __('If the invoice number has less digits than this number, it is left padded with 0s. Ex: invoice number 108 will padded to 00108 if digits set to 5. The default 0 means no padding.', 'invoicing'),
560 560
                         'type'    => 'select',
561 561
                         'options' => $invoice_number_padd_options,
562 562
                         'std'     => 5,
563 563
                     ),
564 564
                     'invoice_number_prefix' => array(
565 565
                         'id' => 'invoice_number_prefix',
566
-                        'name' => __( 'Invoice Number Prefix', 'invoicing' ),
567
-                        'desc' => __( 'Prefix for all invoice numbers. Ex: WPINV-', 'invoicing' ),
566
+                        'name' => __('Invoice Number Prefix', 'invoicing'),
567
+                        'desc' => __('Prefix for all invoice numbers. Ex: WPINV-', 'invoicing'),
568 568
                         'type' => 'text',
569 569
                         'size' => 'regular',
570 570
                         'std' => 'WPINV-',
@@ -572,32 +572,32 @@  discard block
 block discarded – undo
572 572
                     ),
573 573
                     'invoice_number_postfix' => array(
574 574
                         'id' => 'invoice_number_postfix',
575
-                        'name' => __( 'Invoice Number Postfix', 'invoicing' ),
576
-                        'desc' => __( 'Postfix for all invoice numbers.', 'invoicing' ),
575
+                        'name' => __('Invoice Number Postfix', 'invoicing'),
576
+                        'desc' => __('Postfix for all invoice numbers.', 'invoicing'),
577 577
                         'type' => 'text',
578 578
                         'size' => 'regular',
579 579
                         'std' => ''
580 580
                     ),
581 581
                     'checkout_settings' => array(
582 582
                         'id'   => 'checkout_settings',
583
-                        'name' => '<h3>' . __( 'Checkout Settings', 'invoicing' ) . '</h3>',
583
+                        'name' => '<h3>' . __('Checkout Settings', 'invoicing') . '</h3>',
584 584
                         'type' => 'header',
585 585
                     ),
586 586
                     'login_to_checkout' => array(
587 587
                         'id'   => 'login_to_checkout',
588
-                        'name' => __( 'Require Login To Checkout', 'invoicing' ),
589
-                        'desc' => __( 'If ticked then user needs to be logged in to view or pay invoice, can only view or pay their own invoice. If unticked then anyone can view or pay the invoice.', 'invoicing' ),
588
+                        'name' => __('Require Login To Checkout', 'invoicing'),
589
+                        'desc' => __('If ticked then user needs to be logged in to view or pay invoice, can only view or pay their own invoice. If unticked then anyone can view or pay the invoice.', 'invoicing'),
590 590
                         'type' => 'checkbox',
591 591
                     ),
592 592
                     'uninstall_settings' => array(
593 593
                         'id'   => 'uninstall_settings',
594
-                        'name' => '<h3>' . __( 'Uninstall Settings', 'invoicing' ) . '</h3>',
594
+                        'name' => '<h3>' . __('Uninstall Settings', 'invoicing') . '</h3>',
595 595
                         'type' => 'header',
596 596
                     ),
597 597
                     'remove_data_on_unistall' => array(
598 598
                         'id'   => 'remove_data_on_unistall',
599
-                        'name' => __( 'Remove Data on Uninstall?', 'invoicing' ),
600
-                        'desc' => __( 'Check this box if you would like Invoicing plugin to completely remove all of its data when the plugin is deleted/uninstalled.', 'invoicing' ),
599
+                        'name' => __('Remove Data on Uninstall?', 'invoicing'),
600
+                        'desc' => __('Check this box if you would like Invoicing plugin to completely remove all of its data when the plugin is deleted/uninstalled.', 'invoicing'),
601 601
                         'type' => 'checkbox',
602 602
                         'std'  => ''
603 603
                     ),
@@ -605,74 +605,74 @@  discard block
 block discarded – undo
605 605
                 'fields' => array(
606 606
                     'fields_settings' => array(
607 607
                         'id'   => 'fields_settings',
608
-                        'name' => '<h3>' . __( 'Address Fields', 'invoicing' ) . '</h3>',
609
-                        'desc' => __( 'Tick fields which are mandatory in invoice address fields.', 'invoicing' ),
608
+                        'name' => '<h3>' . __('Address Fields', 'invoicing') . '</h3>',
609
+                        'desc' => __('Tick fields which are mandatory in invoice address fields.', 'invoicing'),
610 610
                         'type' => 'header',
611 611
                     ),
612 612
                     'fname_mandatory' => array(
613 613
                         'id'   => 'fname_mandatory',
614
-                        'name' => __( 'First Name', 'invoicing' ),
614
+                        'name' => __('First Name', 'invoicing'),
615 615
                         'type' => 'checkbox',
616 616
                         'std'  => true,
617 617
                     ),
618 618
                     'lname_mandatory' => array(
619 619
                         'id'   => 'lname_mandatory',
620
-                        'name' => __( 'Last Name', 'invoicing' ),
620
+                        'name' => __('Last Name', 'invoicing'),
621 621
                         'type' => 'checkbox',
622 622
                         'std'  => true,
623 623
                     ),
624 624
                     'address_mandatory' => array(
625 625
                         'id'   => 'address_mandatory',
626
-                        'name' => __( 'Address', 'invoicing' ),
626
+                        'name' => __('Address', 'invoicing'),
627 627
                         'type' => 'checkbox',
628 628
                         'std'  => true,
629 629
                     ),
630 630
                     'city_mandatory' => array(
631 631
                         'id'   => 'city_mandatory',
632
-                        'name' => __( 'City', 'invoicing' ),
632
+                        'name' => __('City', 'invoicing'),
633 633
                         'type' => 'checkbox',
634 634
                         'std'  => true,
635 635
                     ),
636 636
                     'country_mandatory' => array(
637 637
                         'id'   => 'country_mandatory',
638
-                        'name' => __( 'Country', 'invoicing' ),
638
+                        'name' => __('Country', 'invoicing'),
639 639
                         'type' => 'checkbox',
640 640
                         'std'  => true,
641 641
                     ),
642 642
                     'state_mandatory' => array(
643 643
                         'id'   => 'state_mandatory',
644
-                        'name' => __( 'State / Province', 'invoicing' ),
644
+                        'name' => __('State / Province', 'invoicing'),
645 645
                         'type' => 'checkbox',
646 646
                         'std'  => true,
647 647
                     ),
648 648
                     'zip_mandatory' => array(
649 649
                         'id'   => 'zip_mandatory',
650
-                        'name' => __( 'ZIP / Postcode', 'invoicing' ),
650
+                        'name' => __('ZIP / Postcode', 'invoicing'),
651 651
                         'type' => 'checkbox',
652 652
                         'std'  => true,
653 653
                     ),
654 654
                     'phone_mandatory' => array(
655 655
                         'id'   => 'phone_mandatory',
656
-                        'name' => __( 'Phone Number', 'invoicing' ),
656
+                        'name' => __('Phone Number', 'invoicing'),
657 657
                         'type' => 'checkbox',
658 658
                         'std'  => true,
659 659
                     ),
660 660
                     'address_autofill_settings' => array(
661 661
                         'id'   => 'address_autofill_settings',
662
-                        'name' => '<h3>' . __( 'Google Address Auto Complete', 'invoicing' ) . '</h3>',
662
+                        'name' => '<h3>' . __('Google Address Auto Complete', 'invoicing') . '</h3>',
663 663
                         'type' => 'header',
664 664
                     ),
665 665
                     'address_autofill_active' => array(
666 666
                         'id'   => 'address_autofill_active',
667
-                        'name' => __( 'Enable/Disable', 'invoicing' ),
668
-                        'desc' => __( 'Enable google address auto complete', 'invoicing' ),
667
+                        'name' => __('Enable/Disable', 'invoicing'),
668
+                        'desc' => __('Enable google address auto complete', 'invoicing'),
669 669
                         'type' => 'checkbox',
670 670
                         'std'  => 0
671 671
                     ),
672 672
                     'address_autofill_api' => array(
673 673
                         'id' => 'address_autofill_api',
674
-                        'name' => __( 'Google Place API Key', 'invoicing' ),
675
-                        'desc' => wp_sprintf(__( 'Enter google place API key. For more information go to google place API %sdocumenation%s', 'invoicing' ), '<a href="https://developers.google.com/maps/documentation/javascript/places-autocomplete" target="_blank">', '</a>' ),
674
+                        'name' => __('Google Place API Key', 'invoicing'),
675
+                        'desc' => wp_sprintf(__('Enter google place API key. For more information go to google place API %sdocumenation%s', 'invoicing'), '<a href="https://developers.google.com/maps/documentation/javascript/places-autocomplete" target="_blank">', '</a>'),
676 676
                         'type' => 'text',
677 677
                         'size' => 'regular',
678 678
                         'std' => ''
@@ -686,8 +686,8 @@  discard block
 block discarded – undo
686 686
                 'main' => array(
687 687
                     'tool_settings' => array(
688 688
                         'id'   => 'tool_settings',
689
-                        'name' => '<h3>' . __( 'Diagnostic Tools', 'invoicing' ) . '</h3>',
690
-                        'desc' => __( 'Invoicing diagnostic tools', 'invoicing' ),
689
+                        'name' => '<h3>' . __('Diagnostic Tools', 'invoicing') . '</h3>',
690
+                        'desc' => __('Invoicing diagnostic tools', 'invoicing'),
691 691
                         'type' => 'tools',
692 692
                     ),
693 693
                 ),
@@ -695,135 +695,135 @@  discard block
 block discarded – undo
695 695
         )
696 696
     );
697 697
 
698
-    return apply_filters( 'wpinv_registered_settings', $wpinv_settings );
698
+    return apply_filters('wpinv_registered_settings', $wpinv_settings);
699 699
 }
700 700
 
701
-function wpinv_settings_sanitize( $input = array() ) {
701
+function wpinv_settings_sanitize($input = array()) {
702 702
     global $wpinv_options;
703 703
 
704
-    if ( empty( $_POST['_wp_http_referer'] ) ) {
704
+    if (empty($_POST['_wp_http_referer'])) {
705 705
         return $input;
706 706
     }
707 707
 
708
-    parse_str( $_POST['_wp_http_referer'], $referrer );
708
+    parse_str($_POST['_wp_http_referer'], $referrer);
709 709
 
710 710
     $settings = wpinv_get_registered_settings();
711
-    $tab      = isset( $referrer['tab'] ) ? $referrer['tab'] : 'general';
712
-    $section  = isset( $referrer['section'] ) ? $referrer['section'] : 'main';
711
+    $tab      = isset($referrer['tab']) ? $referrer['tab'] : 'general';
712
+    $section  = isset($referrer['section']) ? $referrer['section'] : 'main';
713 713
 
714 714
     $input = $input ? $input : array();
715
-    $input = apply_filters( 'wpinv_settings_tab_' . $tab . '_sanitize', $input );
716
-    $input = apply_filters( 'wpinv_settings_' . $tab . '-' . $section . '_sanitize', $input );
715
+    $input = apply_filters('wpinv_settings_tab_' . $tab . '_sanitize', $input);
716
+    $input = apply_filters('wpinv_settings_' . $tab . '-' . $section . '_sanitize', $input);
717 717
 
718 718
     // Loop through each setting being saved and pass it through a sanitization filter
719
-    foreach ( $input as $key => $value ) {
719
+    foreach ($input as $key => $value) {
720 720
         // Get the setting type (checkbox, select, etc)
721
-        $type = isset( $settings[ $tab ][ $key ]['type'] ) ? $settings[ $tab ][ $key ]['type'] : false;
721
+        $type = isset($settings[$tab][$key]['type']) ? $settings[$tab][$key]['type'] : false;
722 722
 
723
-        if ( $type ) {
723
+        if ($type) {
724 724
             // Field type specific filter
725
-            $input[$key] = apply_filters( 'wpinv_settings_sanitize_' . $type, $value, $key );
725
+            $input[$key] = apply_filters('wpinv_settings_sanitize_' . $type, $value, $key);
726 726
         }
727 727
 
728 728
         // General filter
729
-        $input[ $key ] = apply_filters( 'wpinv_settings_sanitize', $input[ $key ], $key );
729
+        $input[$key] = apply_filters('wpinv_settings_sanitize', $input[$key], $key);
730 730
     }
731 731
 
732 732
     // Loop through the whitelist and unset any that are empty for the tab being saved
733
-    $main_settings    = $section == 'main' ? $settings[ $tab ] : array(); // Check for extensions that aren't using new sections
734
-    $section_settings = ! empty( $settings[ $tab ][ $section ] ) ? $settings[ $tab ][ $section ] : array();
733
+    $main_settings    = $section == 'main' ? $settings[$tab] : array(); // Check for extensions that aren't using new sections
734
+    $section_settings = !empty($settings[$tab][$section]) ? $settings[$tab][$section] : array();
735 735
 
736
-    $found_settings = array_merge( $main_settings, $section_settings );
736
+    $found_settings = array_merge($main_settings, $section_settings);
737 737
 
738
-    if ( ! empty( $found_settings ) ) {
739
-        foreach ( $found_settings as $key => $value ) {
738
+    if (!empty($found_settings)) {
739
+        foreach ($found_settings as $key => $value) {
740 740
 
741 741
             // settings used to have numeric keys, now they have keys that match the option ID. This ensures both methods work
742
-            if ( is_numeric( $key ) ) {
742
+            if (is_numeric($key)) {
743 743
                 $key = $value['id'];
744 744
             }
745 745
 
746
-            if ( empty( $input[ $key ] ) ) {
747
-                unset( $wpinv_options[ $key ] );
746
+            if (empty($input[$key])) {
747
+                unset($wpinv_options[$key]);
748 748
             }
749 749
         }
750 750
     }
751 751
 
752 752
     // Merge our new settings with the existing
753
-    $output = array_merge( $wpinv_options, $input );
753
+    $output = array_merge($wpinv_options, $input);
754 754
 
755
-    add_settings_error( 'wpinv-notices', '', __( 'Settings updated.', 'invoicing' ), 'updated' );
755
+    add_settings_error('wpinv-notices', '', __('Settings updated.', 'invoicing'), 'updated');
756 756
 
757 757
     return $output;
758 758
 }
759 759
 
760
-function wpinv_settings_sanitize_misc_accounting( $input ) {
760
+function wpinv_settings_sanitize_misc_accounting($input) {
761 761
     global $wpinv_options, $wpi_session;
762 762
 
763
-    if ( !current_user_can( 'manage_options' ) ) {
763
+    if (!current_user_can('manage_options')) {
764 764
         return $input;
765 765
     }
766 766
 
767
-    if( ! empty( $input['enable_sequential'] ) && !wpinv_get_option( 'enable_sequential' ) ) {
767
+    if (!empty($input['enable_sequential']) && !wpinv_get_option('enable_sequential')) {
768 768
         // Shows an admin notice about upgrading previous order numbers
769
-        $wpi_session->set( 'upgrade_sequential', '1' );
769
+        $wpi_session->set('upgrade_sequential', '1');
770 770
     }
771 771
 
772 772
     return $input;
773 773
 }
774
-add_filter( 'wpinv_settings_misc-accounting_sanitize', 'wpinv_settings_sanitize_misc_accounting' );
774
+add_filter('wpinv_settings_misc-accounting_sanitize', 'wpinv_settings_sanitize_misc_accounting');
775 775
 
776
-function wpinv_settings_sanitize_tax_rates( $input ) {
777
-    if( !current_user_can( 'manage_options' ) ) {
776
+function wpinv_settings_sanitize_tax_rates($input) {
777
+    if (!current_user_can('manage_options')) {
778 778
         return $input;
779 779
     }
780 780
 
781
-    $new_rates = !empty( $_POST['tax_rates'] ) ? array_values( $_POST['tax_rates'] ) : array();
781
+    $new_rates = !empty($_POST['tax_rates']) ? array_values($_POST['tax_rates']) : array();
782 782
 
783 783
     $tax_rates = array();
784 784
 
785
-    if ( !empty( $new_rates ) ) {
786
-        foreach ( $new_rates as $rate ) {
787
-            if ( isset( $rate['country'] ) && empty( $rate['country'] ) && empty( $rate['state'] ) ) {
785
+    if (!empty($new_rates)) {
786
+        foreach ($new_rates as $rate) {
787
+            if (isset($rate['country']) && empty($rate['country']) && empty($rate['state'])) {
788 788
                 continue;
789 789
             }
790 790
             
791
-            $rate['rate'] = wpinv_sanitize_amount( $rate['rate'], 4 );
791
+            $rate['rate'] = wpinv_sanitize_amount($rate['rate'], 4);
792 792
             
793 793
             $tax_rates[] = $rate;
794 794
         }
795 795
     }
796 796
 
797
-    update_option( 'wpinv_tax_rates', $tax_rates );
797
+    update_option('wpinv_tax_rates', $tax_rates);
798 798
 
799 799
     return $input;
800 800
 }
801
-add_filter( 'wpinv_settings_taxes-rates_sanitize', 'wpinv_settings_sanitize_tax_rates' );
801
+add_filter('wpinv_settings_taxes-rates_sanitize', 'wpinv_settings_sanitize_tax_rates');
802 802
 
803
-function wpinv_sanitize_text_field( $input ) {
804
-    return trim( $input );
803
+function wpinv_sanitize_text_field($input) {
804
+    return trim($input);
805 805
 }
806
-add_filter( 'wpinv_settings_sanitize_text', 'wpinv_sanitize_text_field' );
806
+add_filter('wpinv_settings_sanitize_text', 'wpinv_sanitize_text_field');
807 807
 
808 808
 function wpinv_get_settings_tabs() {
809 809
     $tabs             = array();
810
-    $tabs['general']  = __( 'General', 'invoicing' );
811
-    $tabs['gateways'] = __( 'Payment Gateways', 'invoicing' );
812
-    $tabs['taxes']    = __( 'Taxes', 'invoicing' );
813
-    $tabs['emails']   = __( 'Emails', 'invoicing' );
814
-    $tabs['misc']     = __( 'Misc', 'invoicing' );
815
-    $tabs['tools']    = __( 'Tools', 'invoicing' );
816
-
817
-    return apply_filters( 'wpinv_settings_tabs', $tabs );
810
+    $tabs['general']  = __('General', 'invoicing');
811
+    $tabs['gateways'] = __('Payment Gateways', 'invoicing');
812
+    $tabs['taxes']    = __('Taxes', 'invoicing');
813
+    $tabs['emails']   = __('Emails', 'invoicing');
814
+    $tabs['misc']     = __('Misc', 'invoicing');
815
+    $tabs['tools']    = __('Tools', 'invoicing');
816
+
817
+    return apply_filters('wpinv_settings_tabs', $tabs);
818 818
 }
819 819
 
820
-function wpinv_get_settings_tab_sections( $tab = false ) {
820
+function wpinv_get_settings_tab_sections($tab = false) {
821 821
     $tabs     = false;
822 822
     $sections = wpinv_get_registered_settings_sections();
823 823
 
824
-    if( $tab && ! empty( $sections[ $tab ] ) ) {
825
-        $tabs = $sections[ $tab ];
826
-    } else if ( $tab ) {
824
+    if ($tab && !empty($sections[$tab])) {
825
+        $tabs = $sections[$tab];
826
+    } else if ($tab) {
827 827
         $tabs = false;
828 828
     }
829 829
 
@@ -833,136 +833,136 @@  discard block
 block discarded – undo
833 833
 function wpinv_get_registered_settings_sections() {
834 834
     static $sections = false;
835 835
 
836
-    if ( false !== $sections ) {
836
+    if (false !== $sections) {
837 837
         return $sections;
838 838
     }
839 839
 
840 840
     $sections = array(
841
-        'general' => apply_filters( 'wpinv_settings_sections_general', array(
842
-            'main' => __( 'General Settings', 'invoicing' ),
843
-            'currency_section' => __( 'Currency Settings', 'invoicing' ),
844
-            'labels' => __( 'Label Texts', 'invoicing' ),
845
-        ) ),
846
-        'gateways' => apply_filters( 'wpinv_settings_sections_gateways', array(
847
-            'main' => __( 'Gateway Settings', 'invoicing' ),
848
-        ) ),
849
-        'taxes' => apply_filters( 'wpinv_settings_sections_taxes', array(
850
-            'main' => __( 'Tax Settings', 'invoicing' ),
851
-            'rates' => __( 'Tax Rates', 'invoicing' ),
852
-        ) ),
853
-        'emails' => apply_filters( 'wpinv_settings_sections_emails', array(
854
-            'main' => __( 'Email Settings', 'invoicing' ),
855
-        ) ),
856
-        'misc' => apply_filters( 'wpinv_settings_sections_misc', array(
857
-            'main' => __( 'Miscellaneous', 'invoicing' ),
858
-            'fields' => __( 'Fields Settings', 'invoicing' ),
859
-        ) ),
860
-        'tools' => apply_filters( 'wpinv_settings_sections_tools', array(
861
-            'main' => __( 'Diagnostic Tools', 'invoicing' ),
862
-        ) ),
841
+        'general' => apply_filters('wpinv_settings_sections_general', array(
842
+            'main' => __('General Settings', 'invoicing'),
843
+            'currency_section' => __('Currency Settings', 'invoicing'),
844
+            'labels' => __('Label Texts', 'invoicing'),
845
+        )),
846
+        'gateways' => apply_filters('wpinv_settings_sections_gateways', array(
847
+            'main' => __('Gateway Settings', 'invoicing'),
848
+        )),
849
+        'taxes' => apply_filters('wpinv_settings_sections_taxes', array(
850
+            'main' => __('Tax Settings', 'invoicing'),
851
+            'rates' => __('Tax Rates', 'invoicing'),
852
+        )),
853
+        'emails' => apply_filters('wpinv_settings_sections_emails', array(
854
+            'main' => __('Email Settings', 'invoicing'),
855
+        )),
856
+        'misc' => apply_filters('wpinv_settings_sections_misc', array(
857
+            'main' => __('Miscellaneous', 'invoicing'),
858
+            'fields' => __('Fields Settings', 'invoicing'),
859
+        )),
860
+        'tools' => apply_filters('wpinv_settings_sections_tools', array(
861
+            'main' => __('Diagnostic Tools', 'invoicing'),
862
+        )),
863 863
     );
864 864
 
865
-    $sections = apply_filters( 'wpinv_settings_sections', $sections );
865
+    $sections = apply_filters('wpinv_settings_sections', $sections);
866 866
 
867 867
     return $sections;
868 868
 }
869 869
 
870
-function wpinv_get_pages( $with_slug = false, $default_label = NULL ) {
870
+function wpinv_get_pages($with_slug = false, $default_label = NULL) {
871 871
 	$pages_options = array();
872 872
 
873
-	if( $default_label !== NULL && $default_label !== false ) {
874
-		$pages_options = array( '' => $default_label ); // Blank option
873
+	if ($default_label !== NULL && $default_label !== false) {
874
+		$pages_options = array('' => $default_label); // Blank option
875 875
 	}
876 876
 
877 877
 	$pages = get_pages();
878
-	if ( $pages ) {
879
-		foreach ( $pages as $page ) {
878
+	if ($pages) {
879
+		foreach ($pages as $page) {
880 880
 			$title = $with_slug ? $page->post_title . ' (' . $page->post_name . ')' : $page->post_title;
881
-            $pages_options[ $page->ID ] = $title;
881
+            $pages_options[$page->ID] = $title;
882 882
 		}
883 883
 	}
884 884
 
885 885
 	return $pages_options;
886 886
 }
887 887
 
888
-function wpinv_header_callback( $args ) {
889
-	if ( !empty( $args['desc'] ) ) {
888
+function wpinv_header_callback($args) {
889
+	if (!empty($args['desc'])) {
890 890
         echo $args['desc'];
891 891
     }
892 892
 }
893 893
 
894
-function wpinv_hidden_callback( $args ) {
894
+function wpinv_hidden_callback($args) {
895 895
 	global $wpinv_options;
896 896
 
897
-	if ( isset( $args['set_value'] ) ) {
897
+	if (isset($args['set_value'])) {
898 898
 		$value = $args['set_value'];
899
-	} elseif ( isset( $wpinv_options[ $args['id'] ] ) ) {
900
-		$value = $wpinv_options[ $args['id'] ];
899
+	} elseif (isset($wpinv_options[$args['id']])) {
900
+		$value = $wpinv_options[$args['id']];
901 901
 	} else {
902
-		$value = isset( $args['std'] ) ? $args['std'] : '';
902
+		$value = isset($args['std']) ? $args['std'] : '';
903 903
 	}
904 904
 
905
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
905
+	if (isset($args['faux']) && true === $args['faux']) {
906 906
 		$args['readonly'] = true;
907
-		$value = isset( $args['std'] ) ? $args['std'] : '';
907
+		$value = isset($args['std']) ? $args['std'] : '';
908 908
 		$name  = '';
909 909
 	} else {
910
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
910
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
911 911
 	}
912 912
 
913
-	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key( $args['id'] ) . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '" />';
913
+	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key($args['id']) . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '" />';
914 914
     
915 915
 	echo $html;
916 916
 }
917 917
 
918
-function wpinv_checkbox_callback( $args ) {
918
+function wpinv_checkbox_callback($args) {
919 919
 	global $wpinv_options;
920 920
     
921
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
921
+    $sanitize_id = wpinv_sanitize_key($args['id']);
922 922
 
923
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
923
+	if (isset($args['faux']) && true === $args['faux']) {
924 924
 		$name = '';
925 925
 	} else {
926 926
 		$name = 'name="wpinv_settings[' . $sanitize_id . ']"';
927 927
 	}
928 928
 
929
-	$checked = isset( $wpinv_options[ $args['id'] ] ) ? checked( 1, $wpinv_options[ $args['id'] ], false ) : '';
929
+	$checked = isset($wpinv_options[$args['id']]) ? checked(1, $wpinv_options[$args['id']], false) : '';
930 930
 	$html = '<input type="checkbox" id="wpinv_settings[' . $sanitize_id . ']"' . $name . ' value="1" ' . $checked . '/>';
931
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
931
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
932 932
 
933 933
 	echo $html;
934 934
 }
935 935
 
936
-function wpinv_multicheck_callback( $args ) {
936
+function wpinv_multicheck_callback($args) {
937 937
 	global $wpinv_options;
938 938
 	
939
-	$sanitize_id = wpinv_sanitize_key( $args['id'] );
939
+	$sanitize_id = wpinv_sanitize_key($args['id']);
940 940
 	
941
-	if ( ! empty( $args['options'] ) ) {
942
-		foreach( $args['options'] as $key => $option ):
943
-			$sanitize_key = wpinv_sanitize_key( $key );
944
-			if ( isset( $wpinv_options[$args['id']][$sanitize_key] ) ) { 
941
+	if (!empty($args['options'])) {
942
+		foreach ($args['options'] as $key => $option):
943
+			$sanitize_key = wpinv_sanitize_key($key);
944
+			if (isset($wpinv_options[$args['id']][$sanitize_key])) { 
945 945
 				$enabled = $sanitize_key;
946 946
 			} else { 
947 947
 				$enabled = NULL; 
948 948
 			}
949
-			echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $sanitize_key ) . '" ' . checked( $sanitize_key, $enabled, false ) . '/>&nbsp;';
950
-			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post( $option ) . '</label><br/>';
949
+			echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr($sanitize_key) . '" ' . checked($sanitize_key, $enabled, false) . '/>&nbsp;';
950
+			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post($option) . '</label><br/>';
951 951
 		endforeach;
952 952
 		echo '<p class="description">' . $args['desc'] . '</p>';
953 953
 	}
954 954
 }
955 955
 
956
-function wpinv_payment_icons_callback( $args ) {
956
+function wpinv_payment_icons_callback($args) {
957 957
 	global $wpinv_options;
958 958
     
959
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
959
+    $sanitize_id = wpinv_sanitize_key($args['id']);
960 960
 
961
-	if ( ! empty( $args['options'] ) ) {
962
-		foreach( $args['options'] as $key => $option ) {
963
-            $sanitize_key = wpinv_sanitize_key( $key );
961
+	if (!empty($args['options'])) {
962
+		foreach ($args['options'] as $key => $option) {
963
+            $sanitize_key = wpinv_sanitize_key($key);
964 964
             
965
-			if( isset( $wpinv_options[$args['id']][$key] ) ) {
965
+			if (isset($wpinv_options[$args['id']][$key])) {
966 966
 				$enabled = $option;
967 967
 			} else {
968 968
 				$enabled = NULL;
@@ -970,196 +970,196 @@  discard block
 block discarded – undo
970 970
 
971 971
 			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" style="margin-right:10px;line-height:16px;height:16px;display:inline-block;">';
972 972
 
973
-				echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $option ) . '" ' . checked( $option, $enabled, false ) . '/>&nbsp;';
973
+				echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr($option) . '" ' . checked($option, $enabled, false) . '/>&nbsp;';
974 974
 
975
-				if ( wpinv_string_is_image_url( $key ) ) {
976
-					echo '<img class="payment-icon" src="' . esc_url( $key ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
975
+				if (wpinv_string_is_image_url($key)) {
976
+					echo '<img class="payment-icon" src="' . esc_url($key) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
977 977
 				} else {
978
-					$card = strtolower( str_replace( ' ', '', $option ) );
978
+					$card = strtolower(str_replace(' ', '', $option));
979 979
 
980
-					if ( has_filter( 'wpinv_accepted_payment_' . $card . '_image' ) ) {
981
-						$image = apply_filters( 'wpinv_accepted_payment_' . $card . '_image', '' );
980
+					if (has_filter('wpinv_accepted_payment_' . $card . '_image')) {
981
+						$image = apply_filters('wpinv_accepted_payment_' . $card . '_image', '');
982 982
 					} else {
983
-						$image       = wpinv_locate_template( 'images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false );
983
+						$image       = wpinv_locate_template('images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false);
984 984
 						$content_dir = WP_CONTENT_DIR;
985 985
 
986
-						if ( function_exists( 'wp_normalize_path' ) ) {
986
+						if (function_exists('wp_normalize_path')) {
987 987
 							// Replaces backslashes with forward slashes for Windows systems
988
-							$image = wp_normalize_path( $image );
989
-							$content_dir = wp_normalize_path( $content_dir );
988
+							$image = wp_normalize_path($image);
989
+							$content_dir = wp_normalize_path($content_dir);
990 990
 						}
991 991
 
992
-						$image = str_replace( $content_dir, content_url(), $image );
992
+						$image = str_replace($content_dir, content_url(), $image);
993 993
 					}
994 994
 
995
-					echo '<img class="payment-icon" src="' . esc_url( $image ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
995
+					echo '<img class="payment-icon" src="' . esc_url($image) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
996 996
 				}
997 997
 			echo $option . '</label>';
998 998
 		}
999
-		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post( $args['desc'] ) . '</p>';
999
+		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post($args['desc']) . '</p>';
1000 1000
 	}
1001 1001
 }
1002 1002
 
1003
-function wpinv_radio_callback( $args ) {
1003
+function wpinv_radio_callback($args) {
1004 1004
 	global $wpinv_options;
1005 1005
     
1006
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1006
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1007 1007
     
1008
-    foreach ( $args['options'] as $key => $option ) :
1009
-		$sanitize_key = wpinv_sanitize_key( $key );
1008
+    foreach ($args['options'] as $key => $option) :
1009
+		$sanitize_key = wpinv_sanitize_key($key);
1010 1010
         
1011 1011
         $checked = false;
1012 1012
 
1013
-		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1013
+		if (isset($wpinv_options[$args['id']]) && $wpinv_options[$args['id']] == $key)
1014 1014
 			$checked = true;
1015
-		elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1015
+		elseif (isset($args['std']) && $args['std'] == $key && !isset($wpinv_options[$args['id']]))
1016 1016
 			$checked = true;
1017 1017
 
1018 1018
 		echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1019
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
1019
+		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html($option) . '</label><br/>';
1020 1020
 	endforeach;
1021 1021
 
1022
-	echo '<p class="description">' . wp_kses_post( $args['desc'] ) . '</p>';
1022
+	echo '<p class="description">' . wp_kses_post($args['desc']) . '</p>';
1023 1023
 }
1024 1024
 
1025
-function wpinv_gateways_callback( $args ) {
1025
+function wpinv_gateways_callback($args) {
1026 1026
 	global $wpinv_options;
1027 1027
     
1028
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1028
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1029 1029
 
1030
-	foreach ( $args['options'] as $key => $option ) :
1031
-		$sanitize_key = wpinv_sanitize_key( $key );
1030
+	foreach ($args['options'] as $key => $option) :
1031
+		$sanitize_key = wpinv_sanitize_key($key);
1032 1032
         
1033
-        if ( isset( $wpinv_options['gateways'][ $key ] ) )
1033
+        if (isset($wpinv_options['gateways'][$key]))
1034 1034
 			$enabled = '1';
1035 1035
 		else
1036 1036
 			$enabled = null;
1037 1037
 
1038
-		echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1039
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
1038
+		echo '<input name="wpinv_settings[' . esc_attr($args['id']) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1039
+		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html($option['admin_label']) . '</label><br/>';
1040 1040
 	endforeach;
1041 1041
 }
1042 1042
 
1043 1043
 function wpinv_gateway_select_callback($args) {
1044 1044
 	global $wpinv_options;
1045 1045
     
1046
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1046
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1047 1047
 
1048 1048
 	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']">';
1049 1049
 
1050
-	foreach ( $args['options'] as $key => $option ) :
1051
-		if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1052
-            $selected = selected( $key, $args['selected'], false );
1050
+	foreach ($args['options'] as $key => $option) :
1051
+		if (isset($args['selected']) && $args['selected'] !== null && $args['selected'] !== false) {
1052
+            $selected = selected($key, $args['selected'], false);
1053 1053
         } else {
1054
-            $selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $key, $wpinv_options[$args['id']], false ) : '';
1054
+            $selected = isset($wpinv_options[$args['id']]) ? selected($key, $wpinv_options[$args['id']], false) : '';
1055 1055
         }
1056
-		echo '<option value="' . wpinv_sanitize_key( $key ) . '"' . $selected . '>' . esc_html( $option['admin_label'] ) . '</option>';
1056
+		echo '<option value="' . wpinv_sanitize_key($key) . '"' . $selected . '>' . esc_html($option['admin_label']) . '</option>';
1057 1057
 	endforeach;
1058 1058
 
1059 1059
 	echo '</select>';
1060
-	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1060
+	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1061 1061
 }
1062 1062
 
1063
-function wpinv_text_callback( $args ) {
1063
+function wpinv_text_callback($args) {
1064 1064
 	global $wpinv_options;
1065 1065
     
1066
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1066
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1067 1067
 
1068
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1069
-		$value = $wpinv_options[ $args['id'] ];
1068
+	if (isset($wpinv_options[$args['id']])) {
1069
+		$value = $wpinv_options[$args['id']];
1070 1070
 	} else {
1071
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1071
+		$value = isset($args['std']) ? $args['std'] : '';
1072 1072
 	}
1073 1073
 
1074
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1074
+	if (isset($args['faux']) && true === $args['faux']) {
1075 1075
 		$args['readonly'] = true;
1076
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1076
+		$value = isset($args['std']) ? $args['std'] : '';
1077 1077
 		$name  = '';
1078 1078
 	} else {
1079
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1079
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1080 1080
 	}
1081
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1081
+	$class = !empty($args['class']) ? sanitize_html_class($args['class']) : '';
1082 1082
 
1083 1083
 	$readonly = $args['readonly'] === true ? ' readonly="readonly"' : '';
1084
-	$size     = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1085
-	$html     = '<input type="text" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"' . $readonly . '/>';
1086
-	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1084
+	$size     = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1085
+	$html     = '<input type="text" class="' . sanitize_html_class($size) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '"' . $readonly . '/>';
1086
+	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1087 1087
 
1088 1088
 	echo $html;
1089 1089
 }
1090 1090
 
1091
-function wpinv_number_callback( $args ) {
1091
+function wpinv_number_callback($args) {
1092 1092
 	global $wpinv_options;
1093 1093
     
1094
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1094
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1095 1095
 
1096
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1097
-		$value = $wpinv_options[ $args['id'] ];
1096
+	if (isset($wpinv_options[$args['id']])) {
1097
+		$value = $wpinv_options[$args['id']];
1098 1098
 	} else {
1099
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1099
+		$value = isset($args['std']) ? $args['std'] : '';
1100 1100
 	}
1101 1101
 
1102
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1102
+	if (isset($args['faux']) && true === $args['faux']) {
1103 1103
 		$args['readonly'] = true;
1104
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1104
+		$value = isset($args['std']) ? $args['std'] : '';
1105 1105
 		$name  = '';
1106 1106
 	} else {
1107
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1107
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1108 1108
 	}
1109 1109
 
1110
-	$max  = isset( $args['max'] ) ? $args['max'] : 999999;
1111
-	$min  = isset( $args['min'] ) ? $args['min'] : 0;
1112
-	$step = isset( $args['step'] ) ? $args['step'] : 1;
1113
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1110
+	$max  = isset($args['max']) ? $args['max'] : 999999;
1111
+	$min  = isset($args['min']) ? $args['min'] : 0;
1112
+	$step = isset($args['step']) ? $args['step'] : 1;
1113
+	$class = !empty($args['class']) ? sanitize_html_class($args['class']) : '';
1114 1114
 
1115
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1116
-	$html = '<input type="number" step="' . esc_attr( $step ) . '" max="' . esc_attr( $max ) . '" min="' . esc_attr( $min ) . '" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1117
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1115
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1116
+	$html = '<input type="number" step="' . esc_attr($step) . '" max="' . esc_attr($max) . '" min="' . esc_attr($min) . '" class="' . sanitize_html_class($size) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '"/>';
1117
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1118 1118
 
1119 1119
 	echo $html;
1120 1120
 }
1121 1121
 
1122
-function wpinv_textarea_callback( $args ) {
1122
+function wpinv_textarea_callback($args) {
1123 1123
 	global $wpinv_options;
1124 1124
     
1125
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1125
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1126 1126
 
1127
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1128
-		$value = $wpinv_options[ $args['id'] ];
1127
+	if (isset($wpinv_options[$args['id']])) {
1128
+		$value = $wpinv_options[$args['id']];
1129 1129
 	} else {
1130
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1130
+		$value = isset($args['std']) ? $args['std'] : '';
1131 1131
 	}
1132 1132
     
1133
-    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1134
-    $class = ( isset( $args['class'] ) && ! is_null( $args['class'] ) ) ? $args['class'] : 'large-text';
1133
+    $size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1134
+    $class = (isset($args['class']) && !is_null($args['class'])) ? $args['class'] : 'large-text';
1135 1135
 
1136
-	$html = '<textarea class="' . sanitize_html_class( $class ) . ' txtarea-' . sanitize_html_class( $size ) . ' wpi-' . esc_attr( sanitize_html_class( $sanitize_id ) ) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1137
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1136
+	$html = '<textarea class="' . sanitize_html_class($class) . ' txtarea-' . sanitize_html_class($size) . ' wpi-' . esc_attr(sanitize_html_class($sanitize_id)) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']">' . esc_textarea(stripslashes($value)) . '</textarea>';
1137
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1138 1138
 
1139 1139
 	echo $html;
1140 1140
 }
1141 1141
 
1142
-function wpinv_password_callback( $args ) {
1142
+function wpinv_password_callback($args) {
1143 1143
 	global $wpinv_options;
1144 1144
     
1145
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1145
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1146 1146
 
1147
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1148
-		$value = $wpinv_options[ $args['id'] ];
1147
+	if (isset($wpinv_options[$args['id']])) {
1148
+		$value = $wpinv_options[$args['id']];
1149 1149
 	} else {
1150
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1150
+		$value = isset($args['std']) ? $args['std'] : '';
1151 1151
 	}
1152 1152
 
1153
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1154
-	$html = '<input type="password" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '"/>';
1155
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1153
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1154
+	$html = '<input type="password" class="' . sanitize_html_class($size) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr($value) . '"/>';
1155
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1156 1156
 
1157 1157
 	echo $html;
1158 1158
 }
1159 1159
 
1160 1160
 function wpinv_missing_callback($args) {
1161 1161
 	printf(
1162
-		__( 'The callback function used for the %s setting is missing.', 'invoicing' ),
1162
+		__('The callback function used for the %s setting is missing.', 'invoicing'),
1163 1163
 		'<strong>' . $args['id'] . '</strong>'
1164 1164
 	);
1165 1165
 }
@@ -1167,131 +1167,131 @@  discard block
 block discarded – undo
1167 1167
 function wpinv_select_callback($args) {
1168 1168
 	global $wpinv_options;
1169 1169
     
1170
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1170
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1171 1171
 
1172
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1173
-		$value = $wpinv_options[ $args['id'] ];
1172
+	if (isset($wpinv_options[$args['id']])) {
1173
+		$value = $wpinv_options[$args['id']];
1174 1174
 	} else {
1175
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1175
+		$value = isset($args['std']) ? $args['std'] : '';
1176 1176
 	}
1177 1177
     
1178
-    if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1178
+    if (isset($args['selected']) && $args['selected'] !== null && $args['selected'] !== false) {
1179 1179
         $value = $args['selected'];
1180 1180
     }
1181 1181
 
1182
-	if ( isset( $args['placeholder'] ) ) {
1182
+	if (isset($args['placeholder'])) {
1183 1183
 		$placeholder = $args['placeholder'];
1184 1184
 	} else {
1185 1185
 		$placeholder = '';
1186 1186
 	}
1187 1187
     
1188
-    if( !empty( $args['onchange'] ) ) {
1189
-        $onchange = ' onchange="' . esc_attr( $args['onchange'] ) . '"';
1188
+    if (!empty($args['onchange'])) {
1189
+        $onchange = ' onchange="' . esc_attr($args['onchange']) . '"';
1190 1190
     } else {
1191 1191
         $onchange = '';
1192 1192
     }
1193 1193
 
1194
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" data-placeholder="' . esc_html( $placeholder ) . '"' . $onchange . ' />';
1194
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" data-placeholder="' . esc_html($placeholder) . '"' . $onchange . ' />';
1195 1195
 
1196
-	foreach ( $args['options'] as $option => $name ) {
1197
-		$selected = selected( $option, $value, false );
1198
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1196
+	foreach ($args['options'] as $option => $name) {
1197
+		$selected = selected($option, $value, false);
1198
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($name) . '</option>';
1199 1199
 	}
1200 1200
 
1201 1201
 	$html .= '</select>';
1202
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1202
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1203 1203
 
1204 1204
 	echo $html;
1205 1205
 }
1206 1206
 
1207
-function wpinv_color_select_callback( $args ) {
1207
+function wpinv_color_select_callback($args) {
1208 1208
 	global $wpinv_options;
1209 1209
     
1210
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1210
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1211 1211
 
1212
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1213
-		$value = $wpinv_options[ $args['id'] ];
1212
+	if (isset($wpinv_options[$args['id']])) {
1213
+		$value = $wpinv_options[$args['id']];
1214 1214
 	} else {
1215
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1215
+		$value = isset($args['std']) ? $args['std'] : '';
1216 1216
 	}
1217 1217
 
1218
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"/>';
1218
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']"/>';
1219 1219
 
1220
-	foreach ( $args['options'] as $option => $color ) {
1221
-		$selected = selected( $option, $value, false );
1222
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $color['label'] ) . '</option>';
1220
+	foreach ($args['options'] as $option => $color) {
1221
+		$selected = selected($option, $value, false);
1222
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($color['label']) . '</option>';
1223 1223
 	}
1224 1224
 
1225 1225
 	$html .= '</select>';
1226
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1226
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1227 1227
 
1228 1228
 	echo $html;
1229 1229
 }
1230 1230
 
1231
-function wpinv_rich_editor_callback( $args ) {
1231
+function wpinv_rich_editor_callback($args) {
1232 1232
 	global $wpinv_options, $wp_version;
1233 1233
     
1234
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1234
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1235 1235
 
1236
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1237
-		$value = $wpinv_options[ $args['id'] ];
1236
+	if (isset($wpinv_options[$args['id']])) {
1237
+		$value = $wpinv_options[$args['id']];
1238 1238
 
1239
-		if( empty( $args['allow_blank'] ) && empty( $value ) ) {
1240
-			$value = isset( $args['std'] ) ? $args['std'] : '';
1239
+		if (empty($args['allow_blank']) && empty($value)) {
1240
+			$value = isset($args['std']) ? $args['std'] : '';
1241 1241
 		}
1242 1242
 	} else {
1243
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1243
+		$value = isset($args['std']) ? $args['std'] : '';
1244 1244
 	}
1245 1245
 
1246
-	$rows = isset( $args['size'] ) ? $args['size'] : 20;
1246
+	$rows = isset($args['size']) ? $args['size'] : 20;
1247 1247
 
1248
-	if ( $wp_version >= 3.3 && function_exists( 'wp_editor' ) ) {
1248
+	if ($wp_version >= 3.3 && function_exists('wp_editor')) {
1249 1249
 		ob_start();
1250
-		wp_editor( stripslashes( $value ), 'wpinv_settings_' . esc_attr( $args['id'] ), array( 'textarea_name' => 'wpinv_settings[' . esc_attr( $args['id'] ) . ']', 'textarea_rows' => absint( $rows ) ) );
1250
+		wp_editor(stripslashes($value), 'wpinv_settings_' . esc_attr($args['id']), array('textarea_name' => 'wpinv_settings[' . esc_attr($args['id']) . ']', 'textarea_rows' => absint($rows)));
1251 1251
 		$html = ob_get_clean();
1252 1252
 	} else {
1253
-		$html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" class="wpi-' . esc_attr( sanitize_html_class( $args['id'] ) ) . '">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1253
+		$html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" class="wpi-' . esc_attr(sanitize_html_class($args['id'])) . '">' . esc_textarea(stripslashes($value)) . '</textarea>';
1254 1254
 	}
1255 1255
 
1256
-	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1256
+	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1257 1257
 
1258 1258
 	echo $html;
1259 1259
 }
1260 1260
 
1261
-function wpinv_upload_callback( $args ) {
1261
+function wpinv_upload_callback($args) {
1262 1262
 	global $wpinv_options;
1263 1263
     
1264
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1264
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1265 1265
 
1266
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1266
+	if (isset($wpinv_options[$args['id']])) {
1267 1267
 		$value = $wpinv_options[$args['id']];
1268 1268
 	} else {
1269 1269
 		$value = isset($args['std']) ? $args['std'] : '';
1270 1270
 	}
1271 1271
 
1272
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1273
-	$html = '<input type="text" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1274
-	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __( 'Upload File', 'invoicing' ) . '"/></span>';
1275
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1272
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1273
+	$html = '<input type="text" class="' . sanitize_html_class($size) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr(stripslashes($value)) . '"/>';
1274
+	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __('Upload File', 'invoicing') . '"/></span>';
1275
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1276 1276
 
1277 1277
 	echo $html;
1278 1278
 }
1279 1279
 
1280
-function wpinv_color_callback( $args ) {
1280
+function wpinv_color_callback($args) {
1281 1281
 	global $wpinv_options;
1282 1282
     
1283
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1283
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1284 1284
 
1285
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1286
-		$value = $wpinv_options[ $args['id'] ];
1285
+	if (isset($wpinv_options[$args['id']])) {
1286
+		$value = $wpinv_options[$args['id']];
1287 1287
 	} else {
1288
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1288
+		$value = isset($args['std']) ? $args['std'] : '';
1289 1289
 	}
1290 1290
 
1291
-	$default = isset( $args['std'] ) ? $args['std'] : '';
1291
+	$default = isset($args['std']) ? $args['std'] : '';
1292 1292
 
1293
-	$html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '" data-default-color="' . esc_attr( $default ) . '" />';
1294
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1293
+	$html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr($value) . '" data-default-color="' . esc_attr($default) . '" />';
1294
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1295 1295
 
1296 1296
 	echo $html;
1297 1297
 }
@@ -1299,9 +1299,9 @@  discard block
 block discarded – undo
1299 1299
 function wpinv_country_states_callback($args) {
1300 1300
 	global $wpinv_options;
1301 1301
     
1302
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1302
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1303 1303
 
1304
-	if ( isset( $args['placeholder'] ) ) {
1304
+	if (isset($args['placeholder'])) {
1305 1305
 		$placeholder = $args['placeholder'];
1306 1306
 	} else {
1307 1307
 		$placeholder = '';
@@ -1309,16 +1309,16 @@  discard block
 block discarded – undo
1309 1309
 
1310 1310
 	$states = wpinv_get_country_states();
1311 1311
 
1312
-	$class = empty( $states ) ? ' class="wpinv-no-states"' : '';
1313
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"' . $class . 'data-placeholder="' . esc_html( $placeholder ) . '"/>';
1312
+	$class = empty($states) ? ' class="wpinv-no-states"' : '';
1313
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']"' . $class . 'data-placeholder="' . esc_html($placeholder) . '"/>';
1314 1314
 
1315
-	foreach ( $states as $option => $name ) {
1316
-		$selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $option, $wpinv_options[$args['id']], false ) : '';
1317
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1315
+	foreach ($states as $option => $name) {
1316
+		$selected = isset($wpinv_options[$args['id']]) ? selected($option, $wpinv_options[$args['id']], false) : '';
1317
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($name) . '</option>';
1318 1318
 	}
1319 1319
 
1320 1320
 	$html .= '</select>';
1321
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1321
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1322 1322
 
1323 1323
 	echo $html;
1324 1324
 }
@@ -1333,95 +1333,95 @@  discard block
 block discarded – undo
1333 1333
 	<table id="wpinv_tax_rates" class="wp-list-table widefat fixed posts">
1334 1334
 		<thead>
1335 1335
 			<tr>
1336
-				<th scope="col" class="wpinv_tax_country"><?php _e( 'Country', 'invoicing' ); ?></th>
1337
-				<th scope="col" class="wpinv_tax_state"><?php _e( 'State / Province', 'invoicing' ); ?></th>
1338
-                <th scope="col" class="wpinv_tax_global" title="<?php esc_attr_e( 'Apply rate to whole country, regardless of state / province', 'invoicing' ); ?>"><?php _e( 'Country Wide', 'invoicing' ); ?></th>
1339
-                <th scope="col" class="wpinv_tax_rate"><?php _e( 'Rate %', 'invoicing' ); ?></th> 
1340
-                <th scope="col" class="wpinv_tax_name"><?php _e( 'Tax Name', 'invoicing' ); ?></th>
1341
-				<th scope="col" class="wpinv_tax_action"><?php _e( 'Remove', 'invoicing' ); ?></th>
1336
+				<th scope="col" class="wpinv_tax_country"><?php _e('Country', 'invoicing'); ?></th>
1337
+				<th scope="col" class="wpinv_tax_state"><?php _e('State / Province', 'invoicing'); ?></th>
1338
+                <th scope="col" class="wpinv_tax_global" title="<?php esc_attr_e('Apply rate to whole country, regardless of state / province', 'invoicing'); ?>"><?php _e('Country Wide', 'invoicing'); ?></th>
1339
+                <th scope="col" class="wpinv_tax_rate"><?php _e('Rate %', 'invoicing'); ?></th> 
1340
+                <th scope="col" class="wpinv_tax_name"><?php _e('Tax Name', 'invoicing'); ?></th>
1341
+				<th scope="col" class="wpinv_tax_action"><?php _e('Remove', 'invoicing'); ?></th>
1342 1342
 			</tr>
1343 1343
 		</thead>
1344 1344
         <tbody>
1345
-		<?php if( !empty( $rates ) ) : ?>
1346
-			<?php foreach( $rates as $key => $rate ) : ?>
1345
+		<?php if (!empty($rates)) : ?>
1346
+			<?php foreach ($rates as $key => $rate) : ?>
1347 1347
             <?php 
1348
-            $sanitized_key = wpinv_sanitize_key( $key );
1348
+            $sanitized_key = wpinv_sanitize_key($key);
1349 1349
             ?>
1350 1350
 			<tr>
1351 1351
 				<td class="wpinv_tax_country">
1352 1352
 					<?php
1353
-					echo wpinv_html_select( array(
1354
-						'options'          => wpinv_get_country_list( true ),
1353
+					echo wpinv_html_select(array(
1354
+						'options'          => wpinv_get_country_list(true),
1355 1355
 						'name'             => 'tax_rates[' . $sanitized_key . '][country]',
1356 1356
                         'id'               => 'tax_rates[' . $sanitized_key . '][country]',
1357 1357
 						'selected'         => $rate['country'],
1358 1358
 						'show_option_all'  => false,
1359 1359
 						'show_option_none' => false,
1360 1360
 						'class'            => 'wpinv-tax-country',
1361
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1362
-					) );
1361
+						'placeholder'      => __('Choose a country', 'invoicing')
1362
+					));
1363 1363
 					?>
1364 1364
 				</td>
1365 1365
 				<td class="wpinv_tax_state">
1366 1366
 					<?php
1367
-					$states = wpinv_get_country_states( $rate['country'] );
1368
-					if( !empty( $states ) ) {
1369
-						echo wpinv_html_select( array(
1370
-							'options'          => array_merge( array( '' => '' ), $states ),
1367
+					$states = wpinv_get_country_states($rate['country']);
1368
+					if (!empty($states)) {
1369
+						echo wpinv_html_select(array(
1370
+							'options'          => array_merge(array('' => ''), $states),
1371 1371
 							'name'             => 'tax_rates[' . $sanitized_key . '][state]',
1372 1372
                             'id'               => 'tax_rates[' . $sanitized_key . '][state]',
1373 1373
 							'selected'         => $rate['state'],
1374 1374
 							'show_option_all'  => false,
1375 1375
 							'show_option_none' => false,
1376
-							'placeholder'      => __( 'Choose a state', 'invoicing' )
1377
-						) );
1376
+							'placeholder'      => __('Choose a state', 'invoicing')
1377
+						));
1378 1378
 					} else {
1379
-						echo wpinv_html_text( array(
1379
+						echo wpinv_html_text(array(
1380 1380
 							'name'  => 'tax_rates[' . $sanitized_key . '][state]', $rate['state'],
1381
-							'value' => ! empty( $rate['state'] ) ? $rate['state'] : '',
1381
+							'value' => !empty($rate['state']) ? $rate['state'] : '',
1382 1382
                             'id'    => 'tax_rates[' . $sanitized_key . '][state]',
1383
-						) );
1383
+						));
1384 1384
 					}
1385 1385
 					?>
1386 1386
 				</td>
1387 1387
 				<td class="wpinv_tax_global">
1388
-					<input type="checkbox" name="tax_rates[<?php echo $sanitized_key; ?>][global]" id="tax_rates[<?php echo $sanitized_key; ?>][global]" value="1"<?php checked( true, ! empty( $rate['global'] ) ); ?>/>
1389
-					<label for="tax_rates[<?php echo $sanitized_key; ?>][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
1388
+					<input type="checkbox" name="tax_rates[<?php echo $sanitized_key; ?>][global]" id="tax_rates[<?php echo $sanitized_key; ?>][global]" value="1"<?php checked(true, !empty($rate['global'])); ?>/>
1389
+					<label for="tax_rates[<?php echo $sanitized_key; ?>][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
1390 1390
 				</td>
1391
-				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[<?php echo $sanitized_key; ?>][rate]" value="<?php echo esc_html( $rate['rate'] ); ?>"/></td>
1392
-                <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[<?php echo $sanitized_key; ?>][name]" value="<?php echo esc_html( $rate['name'] ); ?>"/></td>
1393
-				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1391
+				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[<?php echo $sanitized_key; ?>][rate]" value="<?php echo esc_html($rate['rate']); ?>"/></td>
1392
+                <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[<?php echo $sanitized_key; ?>][name]" value="<?php echo esc_html($rate['name']); ?>"/></td>
1393
+				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e('Remove Rate', 'invoicing'); ?></span></td>
1394 1394
 			</tr>
1395 1395
 			<?php endforeach; ?>
1396 1396
 		<?php else : ?>
1397 1397
 			<tr>
1398 1398
 				<td class="wpinv_tax_country">
1399 1399
 					<?php
1400
-					echo wpinv_html_select( array(
1401
-						'options'          => wpinv_get_country_list( true ),
1400
+					echo wpinv_html_select(array(
1401
+						'options'          => wpinv_get_country_list(true),
1402 1402
 						'name'             => 'tax_rates[0][country]',
1403 1403
 						'show_option_all'  => false,
1404 1404
 						'show_option_none' => false,
1405 1405
 						'class'            => 'wpinv-tax-country',
1406
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1407
-					) ); ?>
1406
+						'placeholder'      => __('Choose a country', 'invoicing')
1407
+					)); ?>
1408 1408
 				</td>
1409 1409
 				<td class="wpinv_tax_state">
1410
-					<?php echo wpinv_html_text( array(
1410
+					<?php echo wpinv_html_text(array(
1411 1411
 						'name' => 'tax_rates[0][state]'
1412
-					) ); ?>
1412
+					)); ?>
1413 1413
 				</td>
1414 1414
 				<td class="wpinv_tax_global">
1415 1415
 					<input type="checkbox" name="tax_rates[0][global]" id="tax_rates[0][global]" value="1"/>
1416
-					<label for="tax_rates[0][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
1416
+					<label for="tax_rates[0][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
1417 1417
 				</td>
1418
-				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[0][rate]" placeholder="<?php echo (float)wpinv_get_option( 'tax_rate', 0 ) ;?>" value="<?php echo (float)wpinv_get_option( 'tax_rate', 0 ) ;?>"/></td>
1418
+				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[0][rate]" placeholder="<?php echo (float)wpinv_get_option('tax_rate', 0); ?>" value="<?php echo (float)wpinv_get_option('tax_rate', 0); ?>"/></td>
1419 1419
                 <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[0][name]" /></td>
1420
-				<td><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1420
+				<td><span class="wpinv_remove_tax_rate button-secondary"><?php _e('Remove Rate', 'invoicing'); ?></span></td>
1421 1421
 			</tr>
1422 1422
 		<?php endif; ?>
1423 1423
         </tbody>
1424
-        <tfoot><tr><td colspan="5"></td><td class="wpinv_tax_action"><span class="button-secondary" id="wpinv_add_tax_rate"><?php _e( 'Add Tax Rate', 'invoicing' ); ?></span></td></tr></tfoot>
1424
+        <tfoot><tr><td colspan="5"></td><td class="wpinv_tax_action"><span class="button-secondary" id="wpinv_add_tax_rate"><?php _e('Add Tax Rate', 'invoicing'); ?></span></td></tr></tfoot>
1425 1425
 	</table>
1426 1426
 	<?php
1427 1427
 	echo ob_get_clean();
@@ -1432,54 +1432,54 @@  discard block
 block discarded – undo
1432 1432
     ob_start(); ?>
1433 1433
     </td><tr>
1434 1434
     <td colspan="2" class="wpinv_tools_tdbox">
1435
-    <?php if ( $args['desc'] ) { ?><p><?php echo $args['desc']; ?></p><?php } ?>
1436
-    <?php do_action( 'wpinv_tools_before' ); ?>
1435
+    <?php if ($args['desc']) { ?><p><?php echo $args['desc']; ?></p><?php } ?>
1436
+    <?php do_action('wpinv_tools_before'); ?>
1437 1437
     <table id="wpinv_tools_table" class="wp-list-table widefat fixed posts">
1438 1438
         <thead>
1439 1439
             <tr>
1440
-                <th scope="col" class="wpinv-th-tool"><?php _e( 'Tool', 'invoicing' ); ?></th>
1441
-                <th scope="col" class="wpinv-th-desc"><?php _e( 'Description', 'invoicing' ); ?></th>
1442
-                <th scope="col" class="wpinv-th-action"><?php _e( 'Action', 'invoicing' ); ?></th>
1440
+                <th scope="col" class="wpinv-th-tool"><?php _e('Tool', 'invoicing'); ?></th>
1441
+                <th scope="col" class="wpinv-th-desc"><?php _e('Description', 'invoicing'); ?></th>
1442
+                <th scope="col" class="wpinv-th-action"><?php _e('Action', 'invoicing'); ?></th>
1443 1443
             </tr>
1444 1444
         </thead>
1445
-            <?php do_action( 'wpinv_tools_row' ); ?>
1445
+            <?php do_action('wpinv_tools_row'); ?>
1446 1446
         <tbody>
1447 1447
         </tbody>
1448 1448
     </table>
1449
-    <?php do_action( 'wpinv_tools_after' ); ?>
1449
+    <?php do_action('wpinv_tools_after'); ?>
1450 1450
     <?php
1451 1451
     echo ob_get_clean();
1452 1452
 }
1453 1453
 
1454
-function wpinv_descriptive_text_callback( $args ) {
1455
-	echo wp_kses_post( $args['desc'] );
1454
+function wpinv_descriptive_text_callback($args) {
1455
+	echo wp_kses_post($args['desc']);
1456 1456
 }
1457 1457
 
1458
-function wpinv_hook_callback( $args ) {
1459
-	do_action( 'wpinv_' . $args['id'], $args );
1458
+function wpinv_hook_callback($args) {
1459
+	do_action('wpinv_' . $args['id'], $args);
1460 1460
 }
1461 1461
 
1462 1462
 function wpinv_set_settings_cap() {
1463 1463
 	return 'manage_options';
1464 1464
 }
1465
-add_filter( 'option_page_capability_wpinv_settings', 'wpinv_set_settings_cap' );
1465
+add_filter('option_page_capability_wpinv_settings', 'wpinv_set_settings_cap');
1466 1466
 
1467
-function wpinv_settings_sanitize_input( $value, $key ) {
1468
-    if ( $key == 'tax_rate' || $key == 'eu_fallback_rate' ) {
1469
-        $value = wpinv_sanitize_amount( $value, 4 );
1467
+function wpinv_settings_sanitize_input($value, $key) {
1468
+    if ($key == 'tax_rate' || $key == 'eu_fallback_rate') {
1469
+        $value = wpinv_sanitize_amount($value, 4);
1470 1470
         $value = $value >= 100 ? 99 : $value;
1471 1471
     }
1472 1472
         
1473 1473
     return $value;
1474 1474
 }
1475
-add_filter( 'wpinv_settings_sanitize', 'wpinv_settings_sanitize_input', 10, 2 );
1475
+add_filter('wpinv_settings_sanitize', 'wpinv_settings_sanitize_input', 10, 2);
1476 1476
 
1477
-function wpinv_on_update_settings( $old_value, $value, $option ) {
1478
-    $old = !empty( $old_value['remove_data_on_unistall'] ) ? 1 : '';
1479
-    $new = !empty( $value['remove_data_on_unistall'] ) ? 1 : '';
1477
+function wpinv_on_update_settings($old_value, $value, $option) {
1478
+    $old = !empty($old_value['remove_data_on_unistall']) ? 1 : '';
1479
+    $new = !empty($value['remove_data_on_unistall']) ? 1 : '';
1480 1480
     
1481
-    if ( $old != $new ) {
1482
-        update_option( 'wpinv_remove_data_on_invoice_unistall', $new );
1481
+    if ($old != $new) {
1482
+        update_option('wpinv_remove_data_on_invoice_unistall', $new);
1483 1483
     }
1484 1484
 }
1485
-add_action( 'update_option_wpinv_settings', 'wpinv_on_update_settings', 10, 3 );
1486 1485
\ No newline at end of file
1486
+add_action('update_option_wpinv_settings', 'wpinv_on_update_settings', 10, 3);
1487 1487
\ No newline at end of file
Please login to merge, or discard this patch.
includes/wpinv-template-functions.php 1 patch
Spacing   +686 added lines, -686 removed lines patch added patch discarded remove patch
@@ -7,91 +7,91 @@  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
-if ( !is_admin() ) {
15
-    add_filter( 'template_include', 'wpinv_template', 10, 1 );
16
-    add_action( 'wpinv_invoice_print_body_start', 'wpinv_display_invoice_top_bar' );
17
-    add_action( 'wpinv_invoice_top_bar_left', 'wpinv_invoice_display_left_actions' );
18
-    add_action( 'wpinv_invoice_top_bar_right', 'wpinv_invoice_display_right_actions' );
14
+if (!is_admin()) {
15
+    add_filter('template_include', 'wpinv_template', 10, 1);
16
+    add_action('wpinv_invoice_print_body_start', 'wpinv_display_invoice_top_bar');
17
+    add_action('wpinv_invoice_top_bar_left', 'wpinv_invoice_display_left_actions');
18
+    add_action('wpinv_invoice_top_bar_right', 'wpinv_invoice_display_right_actions');
19 19
 }
20 20
 
21 21
 function wpinv_template_path() {
22
-    return apply_filters( 'wpinv_template_path', wpinv_get_theme_template_dir_name() );
22
+    return apply_filters('wpinv_template_path', wpinv_get_theme_template_dir_name());
23 23
 }
24 24
 
25
-function wpinv_display_invoice_top_bar( $invoice ) {
26
-    if ( empty( $invoice ) ) {
25
+function wpinv_display_invoice_top_bar($invoice) {
26
+    if (empty($invoice)) {
27 27
         return;
28 28
     }
29 29
     ?>
30 30
     <div class="row wpinv-top-bar no-print">
31 31
         <div class="container">
32 32
             <div class="col-xs-6">
33
-                <?php do_action( 'wpinv_invoice_top_bar_left', $invoice );?>
33
+                <?php do_action('wpinv_invoice_top_bar_left', $invoice); ?>
34 34
             </div>
35 35
             <div class="col-xs-6 text-right">
36
-                <?php do_action( 'wpinv_invoice_top_bar_right', $invoice );?>
36
+                <?php do_action('wpinv_invoice_top_bar_right', $invoice); ?>
37 37
             </div>
38 38
         </div>
39 39
     </div>
40 40
     <?php
41 41
 }
42 42
 
43
-function wpinv_invoice_display_left_actions( $invoice ) {
44
-    if ( empty( $invoice ) ) {
43
+function wpinv_invoice_display_left_actions($invoice) {
44
+    if (empty($invoice)) {
45 45
         return; // Exit if invoice is not set.
46 46
     }
47 47
     
48
-    if ( $invoice->post_type == 'wpi_invoice' ) {
49
-        if ( $invoice->needs_payment() ) {
50
-            ?> <a class="btn btn-success btn-sm" title="<?php esc_attr_e( 'Pay This Invoice', 'invoicing' ); ?>" href="<?php echo esc_url( $invoice->get_checkout_payment_url() ); ?>"><?php _e( 'Pay For Invoice', 'invoicing' ); ?></a><?php
48
+    if ($invoice->post_type == 'wpi_invoice') {
49
+        if ($invoice->needs_payment()) {
50
+            ?> <a class="btn btn-success btn-sm" title="<?php esc_attr_e('Pay This Invoice', 'invoicing'); ?>" href="<?php echo esc_url($invoice->get_checkout_payment_url()); ?>"><?php _e('Pay For Invoice', 'invoicing'); ?></a><?php
51 51
         }
52 52
     }
53 53
     do_action('wpinv_invoice_display_left_actions', $invoice);
54 54
 }
55 55
 
56
-function wpinv_invoice_display_right_actions( $invoice ) {
57
-    if ( empty( $invoice ) ) {
56
+function wpinv_invoice_display_right_actions($invoice) {
57
+    if (empty($invoice)) {
58 58
         return; // Exit if invoice is not set.
59 59
     }
60 60
 
61
-    if ( $invoice->post_type == 'wpi_invoice' ) { ?>
62
-        <a class="btn btn-primary btn-sm" onclick="window.print();" href="javascript:void(0)"><?php _e( 'Print Invoice', 'invoicing' ); ?></a>
63
-        <?php if ( is_user_logged_in() ) { ?>
64
-        &nbsp;&nbsp;<a class="btn btn-warning btn-sm" href="<?php echo esc_url( wpinv_get_history_page_uri() ); ?>"><?php _e( 'Invoice History', 'invoicing' ); ?></a>
61
+    if ($invoice->post_type == 'wpi_invoice') { ?>
62
+        <a class="btn btn-primary btn-sm" onclick="window.print();" href="javascript:void(0)"><?php _e('Print Invoice', 'invoicing'); ?></a>
63
+        <?php if (is_user_logged_in()) { ?>
64
+        &nbsp;&nbsp;<a class="btn btn-warning btn-sm" href="<?php echo esc_url(wpinv_get_history_page_uri()); ?>"><?php _e('Invoice History', 'invoicing'); ?></a>
65 65
         <?php }
66 66
     }
67 67
     do_action('wpinv_invoice_display_right_actions', $invoice);
68 68
 }
69 69
 
70
-function wpinv_before_invoice_content( $content ) {
70
+function wpinv_before_invoice_content($content) {
71 71
     global $post;
72 72
 
73
-    if ( !empty( $post ) && $post->post_type == 'wpi_invoice' && is_singular( 'wpi_invoice' ) && is_main_query() ) {
73
+    if (!empty($post) && $post->post_type == 'wpi_invoice' && is_singular('wpi_invoice') && is_main_query()) {
74 74
         ob_start();
75
-        do_action( 'wpinv_before_invoice_content', $post->ID );
75
+        do_action('wpinv_before_invoice_content', $post->ID);
76 76
         $content = ob_get_clean() . $content;
77 77
     }
78 78
 
79 79
     return $content;
80 80
 }
81
-add_filter( 'the_content', 'wpinv_before_invoice_content' );
81
+add_filter('the_content', 'wpinv_before_invoice_content');
82 82
 
83
-function wpinv_after_invoice_content( $content ) {
83
+function wpinv_after_invoice_content($content) {
84 84
     global $post;
85 85
 
86
-    if ( !empty( $post ) && $post->post_type == 'wpi_invoice' && is_singular( 'wpi_invoice' ) && is_main_query() ) {
86
+    if (!empty($post) && $post->post_type == 'wpi_invoice' && is_singular('wpi_invoice') && is_main_query()) {
87 87
         ob_start();
88
-        do_action( 'wpinv_after_invoice_content', $post->ID );
88
+        do_action('wpinv_after_invoice_content', $post->ID);
89 89
         $content .= ob_get_clean();
90 90
     }
91 91
 
92 92
     return $content;
93 93
 }
94
-add_filter( 'the_content', 'wpinv_after_invoice_content' );
94
+add_filter('the_content', 'wpinv_after_invoice_content');
95 95
 
96 96
 function wpinv_get_templates_dir() {
97 97
     return WPINV_PLUGIN_DIR . 'templates';
@@ -101,105 +101,105 @@  discard block
 block discarded – undo
101 101
     return WPINV_PLUGIN_URL . 'templates';
102 102
 }
103 103
 
104
-function wpinv_get_template( $template_name, $args = array(), $template_path = '', $default_path = '' ) {
105
-    if ( ! empty( $args ) && is_array( $args ) ) {
106
-		extract( $args );
104
+function wpinv_get_template($template_name, $args = array(), $template_path = '', $default_path = '') {
105
+    if (!empty($args) && is_array($args)) {
106
+		extract($args);
107 107
 	}
108 108
 
109
-	$located = wpinv_locate_template( $template_name, $template_path, $default_path );
109
+	$located = wpinv_locate_template($template_name, $template_path, $default_path);
110 110
 	// Allow 3rd party plugin filter template file from their plugin.
111
-	$located = apply_filters( 'wpinv_get_template', $located, $template_name, $args, $template_path, $default_path );
111
+	$located = apply_filters('wpinv_get_template', $located, $template_name, $args, $template_path, $default_path);
112 112
 
113
-	if ( ! file_exists( $located ) ) {
114
-        _doing_it_wrong( __FUNCTION__, sprintf( '<code>%s</code> does not exist.', $located ), '2.1' );
113
+	if (!file_exists($located)) {
114
+        _doing_it_wrong(__FUNCTION__, sprintf('<code>%s</code> does not exist.', $located), '2.1');
115 115
 		return;
116 116
 	}
117 117
 
118
-	do_action( 'wpinv_before_template_part', $template_name, $template_path, $located, $args );
118
+	do_action('wpinv_before_template_part', $template_name, $template_path, $located, $args);
119 119
 
120
-	include( $located );
120
+	include($located);
121 121
 
122
-	do_action( 'wpinv_after_template_part', $template_name, $template_path, $located, $args );
122
+	do_action('wpinv_after_template_part', $template_name, $template_path, $located, $args);
123 123
 }
124 124
 
125
-function wpinv_get_template_html( $template_name, $args = array(), $template_path = '', $default_path = '' ) {
125
+function wpinv_get_template_html($template_name, $args = array(), $template_path = '', $default_path = '') {
126 126
 	ob_start();
127
-	wpinv_get_template( $template_name, $args, $template_path, $default_path );
127
+	wpinv_get_template($template_name, $args, $template_path, $default_path);
128 128
 	return ob_get_clean();
129 129
 }
130 130
 
131
-function wpinv_locate_template( $template_name, $template_path = '', $default_path = '' ) {
132
-    if ( ! $template_path ) {
131
+function wpinv_locate_template($template_name, $template_path = '', $default_path = '') {
132
+    if (!$template_path) {
133 133
         $template_path = wpinv_template_path();
134 134
     }
135 135
 
136
-    if ( ! $default_path ) {
136
+    if (!$default_path) {
137 137
         $default_path = WPINV_PLUGIN_DIR . 'templates/';
138 138
     }
139 139
 
140 140
     // Look within passed path within the theme - this is priority.
141 141
     $template = locate_template(
142 142
         array(
143
-            trailingslashit( $template_path ) . $template_name,
143
+            trailingslashit($template_path) . $template_name,
144 144
             $template_name
145 145
         )
146 146
     );
147 147
 
148 148
     // Get default templates/
149
-    if ( !$template && $default_path ) {
150
-        $template = trailingslashit( $default_path ) . $template_name;
149
+    if (!$template && $default_path) {
150
+        $template = trailingslashit($default_path) . $template_name;
151 151
     }
152 152
 
153 153
     // Return what we found.
154
-    return apply_filters( 'wpinv_locate_template', $template, $template_name, $template_path );
154
+    return apply_filters('wpinv_locate_template', $template, $template_name, $template_path);
155 155
 }
156 156
 
157
-function wpinv_get_template_part( $slug, $name = null, $load = true ) {
158
-	do_action( 'get_template_part_' . $slug, $slug, $name );
157
+function wpinv_get_template_part($slug, $name = null, $load = true) {
158
+	do_action('get_template_part_' . $slug, $slug, $name);
159 159
 
160 160
 	// Setup possible parts
161 161
 	$templates = array();
162
-	if ( isset( $name ) )
162
+	if (isset($name))
163 163
 		$templates[] = $slug . '-' . $name . '.php';
164 164
 	$templates[] = $slug . '.php';
165 165
 
166 166
 	// Allow template parts to be filtered
167
-	$templates = apply_filters( 'wpinv_get_template_part', $templates, $slug, $name );
167
+	$templates = apply_filters('wpinv_get_template_part', $templates, $slug, $name);
168 168
 
169 169
 	// Return the part that is found
170
-	return wpinv_locate_tmpl( $templates, $load, false );
170
+	return wpinv_locate_tmpl($templates, $load, false);
171 171
 }
172 172
 
173
-function wpinv_locate_tmpl( $template_names, $load = false, $require_once = true ) {
173
+function wpinv_locate_tmpl($template_names, $load = false, $require_once = true) {
174 174
 	// No file found yet
175 175
 	$located = false;
176 176
 
177 177
 	// Try to find a template file
178
-	foreach ( (array)$template_names as $template_name ) {
178
+	foreach ((array)$template_names as $template_name) {
179 179
 
180 180
 		// Continue if template is empty
181
-		if ( empty( $template_name ) )
181
+		if (empty($template_name))
182 182
 			continue;
183 183
 
184 184
 		// Trim off any slashes from the template name
185
-		$template_name = ltrim( $template_name, '/' );
185
+		$template_name = ltrim($template_name, '/');
186 186
 
187 187
 		// try locating this template file by looping through the template paths
188
-		foreach( wpinv_get_theme_template_paths() as $template_path ) {
188
+		foreach (wpinv_get_theme_template_paths() as $template_path) {
189 189
 
190
-			if( file_exists( $template_path . $template_name ) ) {
190
+			if (file_exists($template_path . $template_name)) {
191 191
 				$located = $template_path . $template_name;
192 192
 				break;
193 193
 			}
194 194
 		}
195 195
 
196
-		if( !empty( $located ) ) {
196
+		if (!empty($located)) {
197 197
 			break;
198 198
 		}
199 199
 	}
200 200
 
201
-	if ( ( true == $load ) && ! empty( $located ) )
202
-		load_template( $located, $require_once );
201
+	if ((true == $load) && !empty($located))
202
+		load_template($located, $require_once);
203 203
 
204 204
 	return $located;
205 205
 }
@@ -208,143 +208,143 @@  discard block
 block discarded – undo
208 208
 	$template_dir = wpinv_get_theme_template_dir_name();
209 209
 
210 210
 	$file_paths = array(
211
-		1 => trailingslashit( get_stylesheet_directory() ) . $template_dir,
212
-		10 => trailingslashit( get_template_directory() ) . $template_dir,
211
+		1 => trailingslashit(get_stylesheet_directory()) . $template_dir,
212
+		10 => trailingslashit(get_template_directory()) . $template_dir,
213 213
 		100 => wpinv_get_templates_dir()
214 214
 	);
215 215
 
216
-	$file_paths = apply_filters( 'wpinv_template_paths', $file_paths );
216
+	$file_paths = apply_filters('wpinv_template_paths', $file_paths);
217 217
 
218 218
 	// sort the file paths based on priority
219
-	ksort( $file_paths, SORT_NUMERIC );
219
+	ksort($file_paths, SORT_NUMERIC);
220 220
 
221
-	return array_map( 'trailingslashit', $file_paths );
221
+	return array_map('trailingslashit', $file_paths);
222 222
 }
223 223
 
224 224
 function wpinv_get_theme_template_dir_name() {
225
-	return trailingslashit( apply_filters( 'wpinv_templates_dir', 'invoicing' ) );
225
+	return trailingslashit(apply_filters('wpinv_templates_dir', 'invoicing'));
226 226
 }
227 227
 
228 228
 function wpinv_checkout_meta_tags() {
229 229
 
230 230
 	$pages   = array();
231
-	$pages[] = wpinv_get_option( 'success_page' );
232
-	$pages[] = wpinv_get_option( 'failure_page' );
233
-	$pages[] = wpinv_get_option( 'invoice_history_page' );
231
+	$pages[] = wpinv_get_option('success_page');
232
+	$pages[] = wpinv_get_option('failure_page');
233
+	$pages[] = wpinv_get_option('invoice_history_page');
234 234
 
235
-	if( !wpinv_is_checkout() && !is_page( $pages ) ) {
235
+	if (!wpinv_is_checkout() && !is_page($pages)) {
236 236
 		return;
237 237
 	}
238 238
 
239 239
 	echo '<meta name="robots" content="noindex,nofollow" />' . "\n";
240 240
 }
241
-add_action( 'wp_head', 'wpinv_checkout_meta_tags' );
241
+add_action('wp_head', 'wpinv_checkout_meta_tags');
242 242
 
243
-function wpinv_add_body_classes( $class ) {
243
+function wpinv_add_body_classes($class) {
244 244
 	$classes = (array)$class;
245 245
 
246
-	if( wpinv_is_checkout() ) {
246
+	if (wpinv_is_checkout()) {
247 247
 		$classes[] = 'wpinv-checkout';
248 248
 		$classes[] = 'wpinv-page';
249 249
 	}
250 250
 
251
-	if( wpinv_is_success_page() ) {
251
+	if (wpinv_is_success_page()) {
252 252
 		$classes[] = 'wpinv-success';
253 253
 		$classes[] = 'wpinv-page';
254 254
 	}
255 255
 
256
-	if( wpinv_is_failed_transaction_page() ) {
256
+	if (wpinv_is_failed_transaction_page()) {
257 257
 		$classes[] = 'wpinv-failed-transaction';
258 258
 		$classes[] = 'wpinv-page';
259 259
 	}
260 260
 
261
-	if( wpinv_is_invoice_history_page() ) {
261
+	if (wpinv_is_invoice_history_page()) {
262 262
 		$classes[] = 'wpinv-history';
263 263
 		$classes[] = 'wpinv-page';
264 264
 	}
265 265
 
266
-	if( wpinv_is_test_mode() ) {
266
+	if (wpinv_is_test_mode()) {
267 267
 		$classes[] = 'wpinv-test-mode';
268 268
 		$classes[] = 'wpinv-page';
269 269
 	}
270 270
 
271
-	return array_unique( $classes );
271
+	return array_unique($classes);
272 272
 }
273
-add_filter( 'body_class', 'wpinv_add_body_classes' );
273
+add_filter('body_class', 'wpinv_add_body_classes');
274 274
 
275
-function wpinv_html_dropdown( $name = 'wpinv_discounts', $selected = 0, $status = '' ) {
276
-    $args = array( 'nopaging' => true );
275
+function wpinv_html_dropdown($name = 'wpinv_discounts', $selected = 0, $status = '') {
276
+    $args = array('nopaging' => true);
277 277
 
278
-    if ( ! empty( $status ) )
278
+    if (!empty($status))
279 279
         $args['post_status'] = $status;
280 280
 
281
-    $discounts = wpinv_get_discounts( $args );
281
+    $discounts = wpinv_get_discounts($args);
282 282
     $options   = array();
283 283
 
284
-    if ( $discounts ) {
285
-        foreach ( $discounts as $discount ) {
286
-            $options[ absint( $discount->ID ) ] = esc_html( get_the_title( $discount->ID ) );
284
+    if ($discounts) {
285
+        foreach ($discounts as $discount) {
286
+            $options[absint($discount->ID)] = esc_html(get_the_title($discount->ID));
287 287
         }
288 288
     } else {
289
-        $options[0] = __( 'No discounts found', 'invoicing' );
289
+        $options[0] = __('No discounts found', 'invoicing');
290 290
     }
291 291
 
292
-    $output = wpinv_html_select( array(
292
+    $output = wpinv_html_select(array(
293 293
         'name'             => $name,
294 294
         'selected'         => $selected,
295 295
         'options'          => $options,
296 296
         'show_option_all'  => false,
297 297
         'show_option_none' => false,
298
-    ) );
298
+    ));
299 299
 
300 300
     return $output;
301 301
 }
302 302
 
303
-function wpinv_html_year_dropdown( $name = 'year', $selected = 0, $years_before = 5, $years_after = 0 ) {
304
-    $current     = date( 'Y' );
305
-    $start_year  = $current - absint( $years_before );
306
-    $end_year    = $current + absint( $years_after );
307
-    $selected    = empty( $selected ) ? date( 'Y' ) : $selected;
303
+function wpinv_html_year_dropdown($name = 'year', $selected = 0, $years_before = 5, $years_after = 0) {
304
+    $current     = date('Y');
305
+    $start_year  = $current - absint($years_before);
306
+    $end_year    = $current + absint($years_after);
307
+    $selected    = empty($selected) ? date('Y') : $selected;
308 308
     $options     = array();
309 309
 
310
-    while ( $start_year <= $end_year ) {
311
-        $options[ absint( $start_year ) ] = $start_year;
310
+    while ($start_year <= $end_year) {
311
+        $options[absint($start_year)] = $start_year;
312 312
         $start_year++;
313 313
     }
314 314
 
315
-    $output = wpinv_html_select( array(
315
+    $output = wpinv_html_select(array(
316 316
         'name'             => $name,
317 317
         'selected'         => $selected,
318 318
         'options'          => $options,
319 319
         'show_option_all'  => false,
320 320
         'show_option_none' => false
321
-    ) );
321
+    ));
322 322
 
323 323
     return $output;
324 324
 }
325 325
 
326
-function wpinv_html_month_dropdown( $name = 'month', $selected = 0 ) {
326
+function wpinv_html_month_dropdown($name = 'month', $selected = 0) {
327 327
     $month   = 1;
328 328
     $options = array();
329
-    $selected = empty( $selected ) ? date( 'n' ) : $selected;
329
+    $selected = empty($selected) ? date('n') : $selected;
330 330
 
331
-    while ( $month <= 12 ) {
332
-        $options[ absint( $month ) ] = wpinv_month_num_to_name( $month );
331
+    while ($month <= 12) {
332
+        $options[absint($month)] = wpinv_month_num_to_name($month);
333 333
         $month++;
334 334
     }
335 335
 
336
-    $output = wpinv_html_select( array(
336
+    $output = wpinv_html_select(array(
337 337
         'name'             => $name,
338 338
         'selected'         => $selected,
339 339
         'options'          => $options,
340 340
         'show_option_all'  => false,
341 341
         'show_option_none' => false
342
-    ) );
342
+    ));
343 343
 
344 344
     return $output;
345 345
 }
346 346
 
347
-function wpinv_html_select( $args = array() ) {
347
+function wpinv_html_select($args = array()) {
348 348
     $defaults = array(
349 349
         'options'          => array(),
350 350
         'name'             => null,
@@ -353,8 +353,8 @@  discard block
 block discarded – undo
353 353
         'selected'         => 0,
354 354
         'placeholder'      => null,
355 355
         'multiple'         => false,
356
-        'show_option_all'  => _x( 'All', 'all dropdown items', 'invoicing' ),
357
-        'show_option_none' => _x( 'None', 'no dropdown items', 'invoicing' ),
356
+        'show_option_all'  => _x('All', 'all dropdown items', 'invoicing'),
357
+        'show_option_none' => _x('None', 'no dropdown items', 'invoicing'),
358 358
         'data'             => array(),
359 359
         'onchange'         => null,
360 360
         'required'         => false,
@@ -362,74 +362,74 @@  discard block
 block discarded – undo
362 362
         'readonly'         => false,
363 363
     );
364 364
 
365
-    $args = wp_parse_args( $args, $defaults );
365
+    $args = wp_parse_args($args, $defaults);
366 366
 
367 367
     $data_elements = '';
368
-    foreach ( $args['data'] as $key => $value ) {
369
-        $data_elements .= ' data-' . esc_attr( $key ) . '="' . esc_attr( $value ) . '"';
368
+    foreach ($args['data'] as $key => $value) {
369
+        $data_elements .= ' data-' . esc_attr($key) . '="' . esc_attr($value) . '"';
370 370
     }
371 371
 
372
-    if( $args['multiple'] ) {
372
+    if ($args['multiple']) {
373 373
         $multiple = ' MULTIPLE';
374 374
     } else {
375 375
         $multiple = '';
376 376
     }
377 377
 
378
-    if( $args['placeholder'] ) {
378
+    if ($args['placeholder']) {
379 379
         $placeholder = $args['placeholder'];
380 380
     } else {
381 381
         $placeholder = '';
382 382
     }
383 383
     
384 384
     $options = '';
385
-    if( !empty( $args['onchange'] ) ) {
386
-        $options .= ' onchange="' . esc_attr( $args['onchange'] ) . '"';
385
+    if (!empty($args['onchange'])) {
386
+        $options .= ' onchange="' . esc_attr($args['onchange']) . '"';
387 387
     }
388 388
     
389
-    if( !empty( $args['required'] ) ) {
389
+    if (!empty($args['required'])) {
390 390
         $options .= ' required="required"';
391 391
     }
392 392
     
393
-    if( !empty( $args['disabled'] ) ) {
393
+    if (!empty($args['disabled'])) {
394 394
         $options .= ' disabled';
395 395
     }
396 396
     
397
-    if( !empty( $args['readonly'] ) ) {
397
+    if (!empty($args['readonly'])) {
398 398
         $options .= ' readonly';
399 399
     }
400 400
 
401
-    $class  = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) );
402
-    $output = '<select name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['id'] ) . '" class="wpinv-select ' . $class . '"' . $multiple . ' data-placeholder="' . $placeholder . '" ' . trim( $options ) . $data_elements . '>';
401
+    $class  = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class'])));
402
+    $output = '<select name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['id']) . '" class="wpinv-select ' . $class . '"' . $multiple . ' data-placeholder="' . $placeholder . '" ' . trim($options) . $data_elements . '>';
403 403
 
404
-    if ( $args['show_option_all'] ) {
405
-        if( $args['multiple'] ) {
406
-            $selected = selected( true, in_array( 0, $args['selected'] ), false );
404
+    if ($args['show_option_all']) {
405
+        if ($args['multiple']) {
406
+            $selected = selected(true, in_array(0, $args['selected']), false);
407 407
         } else {
408
-            $selected = selected( $args['selected'], 0, false );
408
+            $selected = selected($args['selected'], 0, false);
409 409
         }
410
-        $output .= '<option value="all"' . $selected . '>' . esc_html( $args['show_option_all'] ) . '</option>';
410
+        $output .= '<option value="all"' . $selected . '>' . esc_html($args['show_option_all']) . '</option>';
411 411
     }
412 412
 
413
-    if ( !empty( $args['options'] ) ) {
413
+    if (!empty($args['options'])) {
414 414
 
415
-        if ( $args['show_option_none'] ) {
416
-            if( $args['multiple'] ) {
417
-                $selected = selected( true, in_array( "", $args['selected'] ), false );
415
+        if ($args['show_option_none']) {
416
+            if ($args['multiple']) {
417
+                $selected = selected(true, in_array("", $args['selected']), false);
418 418
             } else {
419
-                $selected = selected( $args['selected'] === "", true, false );
419
+                $selected = selected($args['selected'] === "", true, false);
420 420
             }
421
-            $output .= '<option value=""' . $selected . '>' . esc_html( $args['show_option_none'] ) . '</option>';
421
+            $output .= '<option value=""' . $selected . '>' . esc_html($args['show_option_none']) . '</option>';
422 422
         }
423 423
 
424
-        foreach( $args['options'] as $key => $option ) {
424
+        foreach ($args['options'] as $key => $option) {
425 425
 
426
-            if( $args['multiple'] && is_array( $args['selected'] ) ) {
427
-                $selected = selected( true, (bool)in_array( $key, $args['selected'] ), false );
426
+            if ($args['multiple'] && is_array($args['selected'])) {
427
+                $selected = selected(true, (bool)in_array($key, $args['selected']), false);
428 428
             } else {
429
-                $selected = selected( $args['selected'], $key, false );
429
+                $selected = selected($args['selected'], $key, false);
430 430
             }
431 431
 
432
-            $output .= '<option value="' . esc_attr( $key ) . '"' . $selected . '>' . esc_html( $option ) . '</option>';
432
+            $output .= '<option value="' . esc_attr($key) . '"' . $selected . '>' . esc_html($option) . '</option>';
433 433
         }
434 434
     }
435 435
 
@@ -438,7 +438,7 @@  discard block
 block discarded – undo
438 438
     return $output;
439 439
 }
440 440
 
441
-function wpinv_item_dropdown( $args = array() ) {
441
+function wpinv_item_dropdown($args = array()) {
442 442
     $defaults = array(
443 443
         'name'              => 'wpi_item',
444 444
         'id'                => 'wpi_item',
@@ -446,14 +446,14 @@  discard block
 block discarded – undo
446 446
         'multiple'          => false,
447 447
         'selected'          => 0,
448 448
         'number'            => 100,
449
-        'placeholder'       => __( 'Choose a item', 'invoicing' ),
450
-        'data'              => array( 'search-type' => 'item' ),
449
+        'placeholder'       => __('Choose a item', 'invoicing'),
450
+        'data'              => array('search-type' => 'item'),
451 451
         'show_option_all'   => false,
452 452
         'show_option_none'  => false,
453 453
         'show_recurring'    => false,
454 454
     );
455 455
 
456
-    $args = wp_parse_args( $args, $defaults );
456
+    $args = wp_parse_args($args, $defaults);
457 457
 
458 458
     $item_args = array(
459 459
         'post_type'      => 'wpi_item',
@@ -462,44 +462,44 @@  discard block
 block discarded – undo
462 462
         'posts_per_page' => $args['number']
463 463
     );
464 464
     
465
-    $item_args  = apply_filters( 'wpinv_item_dropdown_query_args', $item_args, $args, $defaults );
465
+    $item_args  = apply_filters('wpinv_item_dropdown_query_args', $item_args, $args, $defaults);
466 466
 
467
-    $items      = get_posts( $item_args );
467
+    $items      = get_posts($item_args);
468 468
     $options    = array();
469
-    if ( $items ) {
470
-        foreach ( $items as $item ) {
471
-            $title = esc_html( $item->post_title );
469
+    if ($items) {
470
+        foreach ($items as $item) {
471
+            $title = esc_html($item->post_title);
472 472
             
473
-            if ( !empty( $args['show_recurring'] ) ) {
474
-                $title .= wpinv_get_item_suffix( $item->ID, false );
473
+            if (!empty($args['show_recurring'])) {
474
+                $title .= wpinv_get_item_suffix($item->ID, false);
475 475
             }
476 476
             
477
-            $options[ absint( $item->ID ) ] = $title;
477
+            $options[absint($item->ID)] = $title;
478 478
         }
479 479
     }
480 480
 
481 481
     // This ensures that any selected items are included in the drop down
482
-    if( is_array( $args['selected'] ) ) {
483
-        foreach( $args['selected'] as $item ) {
484
-            if( ! in_array( $item, $options ) ) {
485
-                $title = get_the_title( $item );
486
-                if ( !empty( $args['show_recurring'] ) ) {
487
-                    $title .= wpinv_get_item_suffix( $item, false );
482
+    if (is_array($args['selected'])) {
483
+        foreach ($args['selected'] as $item) {
484
+            if (!in_array($item, $options)) {
485
+                $title = get_the_title($item);
486
+                if (!empty($args['show_recurring'])) {
487
+                    $title .= wpinv_get_item_suffix($item, false);
488 488
                 }
489 489
                 $options[$item] = $title;
490 490
             }
491 491
         }
492
-    } elseif ( is_numeric( $args['selected'] ) && $args['selected'] !== 0 ) {
493
-        if ( ! in_array( $args['selected'], $options ) ) {
494
-            $title = get_the_title( $args['selected'] );
495
-            if ( !empty( $args['show_recurring'] ) ) {
496
-                $title .= wpinv_get_item_suffix( $args['selected'], false );
492
+    } elseif (is_numeric($args['selected']) && $args['selected'] !== 0) {
493
+        if (!in_array($args['selected'], $options)) {
494
+            $title = get_the_title($args['selected']);
495
+            if (!empty($args['show_recurring'])) {
496
+                $title .= wpinv_get_item_suffix($args['selected'], false);
497 497
             }
498
-            $options[$args['selected']] = get_the_title( $args['selected'] );
498
+            $options[$args['selected']] = get_the_title($args['selected']);
499 499
         }
500 500
     }
501 501
 
502
-    $output = wpinv_html_select( array(
502
+    $output = wpinv_html_select(array(
503 503
         'name'             => $args['name'],
504 504
         'selected'         => $args['selected'],
505 505
         'id'               => $args['id'],
@@ -510,12 +510,12 @@  discard block
 block discarded – undo
510 510
         'show_option_all'  => $args['show_option_all'],
511 511
         'show_option_none' => $args['show_option_none'],
512 512
         'data'             => $args['data'],
513
-    ) );
513
+    ));
514 514
 
515 515
     return $output;
516 516
 }
517 517
 
518
-function wpinv_html_checkbox( $args = array() ) {
518
+function wpinv_html_checkbox($args = array()) {
519 519
     $defaults = array(
520 520
         'name'     => null,
521 521
         'current'  => null,
@@ -526,38 +526,38 @@  discard block
 block discarded – undo
526 526
         )
527 527
     );
528 528
 
529
-    $args = wp_parse_args( $args, $defaults );
529
+    $args = wp_parse_args($args, $defaults);
530 530
 
531
-    $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) );
531
+    $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class'])));
532 532
     $options = '';
533
-    if ( ! empty( $args['options']['disabled'] ) ) {
533
+    if (!empty($args['options']['disabled'])) {
534 534
         $options .= ' disabled="disabled"';
535
-    } elseif ( ! empty( $args['options']['readonly'] ) ) {
535
+    } elseif (!empty($args['options']['readonly'])) {
536 536
         $options .= ' readonly';
537 537
     }
538 538
 
539
-    $output = '<input type="checkbox"' . $options . ' name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['name'] ) . '" class="' . $class . ' ' . esc_attr( $args['name'] ) . '" ' . checked( 1, $args['current'], false ) . ' />';
539
+    $output = '<input type="checkbox"' . $options . ' name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['name']) . '" class="' . $class . ' ' . esc_attr($args['name']) . '" ' . checked(1, $args['current'], false) . ' />';
540 540
 
541 541
     return $output;
542 542
 }
543 543
 
544
-function wpinv_html_text( $args = array() ) {
544
+function wpinv_html_text($args = array()) {
545 545
     // Backwards compatibility
546
-    if ( func_num_args() > 1 ) {
546
+    if (func_num_args() > 1) {
547 547
         $args = func_get_args();
548 548
 
549 549
         $name  = $args[0];
550
-        $value = isset( $args[1] ) ? $args[1] : '';
551
-        $label = isset( $args[2] ) ? $args[2] : '';
552
-        $desc  = isset( $args[3] ) ? $args[3] : '';
550
+        $value = isset($args[1]) ? $args[1] : '';
551
+        $label = isset($args[2]) ? $args[2] : '';
552
+        $desc  = isset($args[3]) ? $args[3] : '';
553 553
     }
554 554
 
555 555
     $defaults = array(
556 556
         'id'           => '',
557
-        'name'         => isset( $name )  ? $name  : 'text',
558
-        'value'        => isset( $value ) ? $value : null,
559
-        'label'        => isset( $label ) ? $label : null,
560
-        'desc'         => isset( $desc )  ? $desc  : null,
557
+        'name'         => isset($name) ? $name : 'text',
558
+        'value'        => isset($value) ? $value : null,
559
+        'label'        => isset($label) ? $label : null,
560
+        'desc'         => isset($desc) ? $desc : null,
561 561
         'placeholder'  => '',
562 562
         'class'        => 'regular-text',
563 563
         'disabled'     => false,
@@ -567,51 +567,51 @@  discard block
 block discarded – undo
567 567
         'data'         => false
568 568
     );
569 569
 
570
-    $args = wp_parse_args( $args, $defaults );
570
+    $args = wp_parse_args($args, $defaults);
571 571
 
572
-    $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) );
572
+    $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class'])));
573 573
     $options = '';
574
-    if( $args['required'] ) {
574
+    if ($args['required']) {
575 575
         $options .= ' required="required"';
576 576
     }
577
-    if( $args['readonly'] ) {
577
+    if ($args['readonly']) {
578 578
         $options .= ' readonly';
579 579
     }
580
-    if( $args['readonly'] ) {
580
+    if ($args['readonly']) {
581 581
         $options .= ' readonly';
582 582
     }
583 583
 
584 584
     $data = '';
585
-    if ( !empty( $args['data'] ) ) {
586
-        foreach ( $args['data'] as $key => $value ) {
587
-            $data .= 'data-' . wpinv_sanitize_key( $key ) . '="' . esc_attr( $value ) . '" ';
585
+    if (!empty($args['data'])) {
586
+        foreach ($args['data'] as $key => $value) {
587
+            $data .= 'data-' . wpinv_sanitize_key($key) . '="' . esc_attr($value) . '" ';
588 588
         }
589 589
     }
590 590
 
591
-    $output = '<span id="wpinv-' . wpinv_sanitize_key( $args['name'] ) . '-wrap">';
592
-    $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key( $args['id'] ) . '">' . esc_html( $args['label'] ) . '</label>';
593
-    if ( ! empty( $args['desc'] ) ) {
594
-        $output .= '<span class="wpinv-description">' . esc_html( $args['desc'] ) . '</span>';
591
+    $output = '<span id="wpinv-' . wpinv_sanitize_key($args['name']) . '-wrap">';
592
+    $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key($args['id']) . '">' . esc_html($args['label']) . '</label>';
593
+    if (!empty($args['desc'])) {
594
+        $output .= '<span class="wpinv-description">' . esc_html($args['desc']) . '</span>';
595 595
     }
596 596
 
597
-    $output .= '<input type="text" name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['id'] )  . '" autocomplete="' . esc_attr( $args['autocomplete'] )  . '" value="' . esc_attr( $args['value'] ) . '" placeholder="' . esc_attr( $args['placeholder'] ) . '" class="' . $class . '" ' . $data . ' ' . trim( $options ) . '/>';
597
+    $output .= '<input type="text" name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['id']) . '" autocomplete="' . esc_attr($args['autocomplete']) . '" value="' . esc_attr($args['value']) . '" placeholder="' . esc_attr($args['placeholder']) . '" class="' . $class . '" ' . $data . ' ' . trim($options) . '/>';
598 598
 
599 599
     $output .= '</span>';
600 600
 
601 601
     return $output;
602 602
 }
603 603
 
604
-function wpinv_html_date_field( $args = array() ) {
605
-    if( empty( $args['class'] ) ) {
604
+function wpinv_html_date_field($args = array()) {
605
+    if (empty($args['class'])) {
606 606
         $args['class'] = 'wpiDatepicker';
607
-    } elseif( ! strpos( $args['class'], 'wpiDatepicker' ) ) {
607
+    } elseif (!strpos($args['class'], 'wpiDatepicker')) {
608 608
         $args['class'] .= ' wpiDatepicker';
609 609
     }
610 610
 
611
-    return wpinv_html_text( $args );
611
+    return wpinv_html_text($args);
612 612
 }
613 613
 
614
-function wpinv_html_textarea( $args = array() ) {
614
+function wpinv_html_textarea($args = array()) {
615 615
     $defaults = array(
616 616
         'name'        => 'textarea',
617 617
         'value'       => null,
@@ -621,31 +621,31 @@  discard block
 block discarded – undo
621 621
         'disabled'    => false
622 622
     );
623 623
 
624
-    $args = wp_parse_args( $args, $defaults );
624
+    $args = wp_parse_args($args, $defaults);
625 625
 
626
-    $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) );
626
+    $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class'])));
627 627
     $disabled = '';
628
-    if( $args['disabled'] ) {
628
+    if ($args['disabled']) {
629 629
         $disabled = ' disabled="disabled"';
630 630
     }
631 631
 
632
-    $output = '<span id="wpinv-' . wpinv_sanitize_key( $args['name'] ) . '-wrap">';
633
-    $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key( $args['name'] ) . '">' . esc_html( $args['label'] ) . '</label>';
634
-    $output .= '<textarea name="' . esc_attr( $args['name'] ) . '" id="' . wpinv_sanitize_key( $args['name'] ) . '" class="' . $class . '"' . $disabled . '>' . esc_attr( $args['value'] ) . '</textarea>';
632
+    $output = '<span id="wpinv-' . wpinv_sanitize_key($args['name']) . '-wrap">';
633
+    $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key($args['name']) . '">' . esc_html($args['label']) . '</label>';
634
+    $output .= '<textarea name="' . esc_attr($args['name']) . '" id="' . wpinv_sanitize_key($args['name']) . '" class="' . $class . '"' . $disabled . '>' . esc_attr($args['value']) . '</textarea>';
635 635
 
636
-    if ( ! empty( $args['desc'] ) ) {
637
-        $output .= '<span class="wpinv-description">' . esc_html( $args['desc'] ) . '</span>';
636
+    if (!empty($args['desc'])) {
637
+        $output .= '<span class="wpinv-description">' . esc_html($args['desc']) . '</span>';
638 638
     }
639 639
     $output .= '</span>';
640 640
 
641 641
     return $output;
642 642
 }
643 643
 
644
-function wpinv_html_ajax_user_search( $args = array() ) {
644
+function wpinv_html_ajax_user_search($args = array()) {
645 645
     $defaults = array(
646 646
         'name'        => 'user_id',
647 647
         'value'       => null,
648
-        'placeholder' => __( 'Enter username', 'invoicing' ),
648
+        'placeholder' => __('Enter username', 'invoicing'),
649 649
         'label'       => null,
650 650
         'desc'        => null,
651 651
         'class'       => '',
@@ -654,13 +654,13 @@  discard block
 block discarded – undo
654 654
         'data'        => false
655 655
     );
656 656
 
657
-    $args = wp_parse_args( $args, $defaults );
657
+    $args = wp_parse_args($args, $defaults);
658 658
 
659 659
     $args['class'] = 'wpinv-ajax-user-search ' . $args['class'];
660 660
 
661 661
     $output  = '<span class="wpinv_user_search_wrap">';
662
-        $output .= wpinv_html_text( $args );
663
-        $output .= '<span class="wpinv_user_search_results hidden"><a class="wpinv-ajax-user-cancel" title="' . __( 'Cancel', 'invoicing' ) . '" aria-label="' . __( 'Cancel', 'invoicing' ) . '" href="#">x</a><span></span></span>';
662
+        $output .= wpinv_html_text($args);
663
+        $output .= '<span class="wpinv_user_search_results hidden"><a class="wpinv-ajax-user-cancel" title="' . __('Cancel', 'invoicing') . '" aria-label="' . __('Cancel', 'invoicing') . '" href="#">x</a><span></span></span>';
664 664
     $output .= '</span>';
665 665
 
666 666
     return $output;
@@ -669,7 +669,7 @@  discard block
 block discarded – undo
669 669
 function wpinv_ip_geolocation() {
670 670
     global $wpinv_euvat;
671 671
     
672
-    $ip         = !empty( $_GET['ip'] ) ? sanitize_text_field( $_GET['ip'] ) : '';    
672
+    $ip         = !empty($_GET['ip']) ? sanitize_text_field($_GET['ip']) : '';    
673 673
     $content    = '';
674 674
     $iso        = '';
675 675
     $country    = '';
@@ -680,69 +680,69 @@  discard block
 block discarded – undo
680 680
     $credit     = '';
681 681
     $address    = '';
682 682
     
683
-    if ( wpinv_get_option( 'vat_ip_lookup' ) == 'geoip2' && $geoip2_city = $wpinv_euvat->geoip2_city_record( $ip ) ) {
683
+    if (wpinv_get_option('vat_ip_lookup') == 'geoip2' && $geoip2_city = $wpinv_euvat->geoip2_city_record($ip)) {
684 684
         try {
685 685
             $iso        = $geoip2_city->country->isoCode;
686 686
             $country    = $geoip2_city->country->name;
687
-            $region     = !empty( $geoip2_city->subdivisions ) && !empty( $geoip2_city->subdivisions[0]->name ) ? $geoip2_city->subdivisions[0]->name : '';
687
+            $region     = !empty($geoip2_city->subdivisions) && !empty($geoip2_city->subdivisions[0]->name) ? $geoip2_city->subdivisions[0]->name : '';
688 688
             $city       = $geoip2_city->city->name;
689 689
             $longitude  = $geoip2_city->location->longitude;
690 690
             $latitude   = $geoip2_city->location->latitude;
691
-            $credit     = __( 'Geolocated using the information by MaxMind, available from <a href="http://www.maxmind.com" target="_blank">www.maxmind.com</a>', 'invoicing' );
692
-        } catch( Exception $e ) { }
691
+            $credit     = __('Geolocated using the information by MaxMind, available from <a href="http://www.maxmind.com" target="_blank">www.maxmind.com</a>', 'invoicing');
692
+        } catch (Exception $e) { }
693 693
     }
694 694
     
695
-    if ( !( $iso && $longitude && $latitude ) && function_exists( 'simplexml_load_file' ) ) {
695
+    if (!($iso && $longitude && $latitude) && function_exists('simplexml_load_file')) {
696 696
         try {
697
-            $load_xml = simplexml_load_file( 'http://www.geoplugin.net/xml.gp?ip=' . $ip );
697
+            $load_xml = simplexml_load_file('http://www.geoplugin.net/xml.gp?ip=' . $ip);
698 698
             
699
-            if ( !empty( $load_xml ) && isset( $load_xml->geoplugin_countryCode ) && !empty( $load_xml->geoplugin_latitude ) && !empty( $load_xml->geoplugin_longitude ) ) {
699
+            if (!empty($load_xml) && isset($load_xml->geoplugin_countryCode) && !empty($load_xml->geoplugin_latitude) && !empty($load_xml->geoplugin_longitude)) {
700 700
                 $iso        = $load_xml->geoplugin_countryCode;
701 701
                 $country    = $load_xml->geoplugin_countryName;
702
-                $region     = !empty( $load_xml->geoplugin_regionName ) ? $load_xml->geoplugin_regionName : '';
703
-                $city       = !empty( $load_xml->geoplugin_city ) ? $load_xml->geoplugin_city : '';
702
+                $region     = !empty($load_xml->geoplugin_regionName) ? $load_xml->geoplugin_regionName : '';
703
+                $city       = !empty($load_xml->geoplugin_city) ? $load_xml->geoplugin_city : '';
704 704
                 $longitude  = $load_xml->geoplugin_longitude;
705 705
                 $latitude   = $load_xml->geoplugin_latitude;
706 706
                 $credit     = $load_xml->geoplugin_credit;
707
-                $credit     = __( 'Geolocated using the information by geoPlugin, available from <a href="http://www.geoplugin.com" target="_blank">www.geoplugin.com</a>', 'invoicing' ) . '<br>' . $load_xml->geoplugin_credit;
707
+                $credit     = __('Geolocated using the information by geoPlugin, available from <a href="http://www.geoplugin.com" target="_blank">www.geoplugin.com</a>', 'invoicing') . '<br>' . $load_xml->geoplugin_credit;
708 708
             }
709
-        } catch( Exception $e ) { }
709
+        } catch (Exception $e) { }
710 710
     }
711 711
     
712
-    if ( $iso && $longitude && $latitude ) {
713
-        if ( $city ) {
712
+    if ($iso && $longitude && $latitude) {
713
+        if ($city) {
714 714
             $address .= $city . ', ';
715 715
         }
716 716
         
717
-        if ( $region ) {
717
+        if ($region) {
718 718
             $address .= $region . ', ';
719 719
         }
720 720
         
721 721
         $address .= $country . ' (' . $iso . ')';
722
-        $content = '<p>'. sprintf( __( '<b>Address:</b> %s', 'invoicing' ), $address ) . '</p>';
723
-        $content .= '<p>'. $credit . '</p>';
722
+        $content = '<p>' . sprintf(__('<b>Address:</b> %s', 'invoicing'), $address) . '</p>';
723
+        $content .= '<p>' . $credit . '</p>';
724 724
     } else {
725
-        $content = '<p>'. sprintf( __( 'Unable to find geolocation for the IP address: %s', 'invoicing' ), $ip ) . '</p>';
725
+        $content = '<p>' . sprintf(__('Unable to find geolocation for the IP address: %s', 'invoicing'), $ip) . '</p>';
726 726
     }
727 727
     ?>
728 728
 <!DOCTYPE html>
729
-<html><head><title><?php echo sprintf( __( 'IP: %s', 'invoicing' ), $ip );?></title><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-rc.1/leaflet.css" /><style>html,body{height:100%;margin:0;padding:0;width:100%}body{text-align:center;background:#fff;color:#222;font-size:small;}body,p{font-family: arial,sans-serif}#map{margin:auto;width:100%;height:calc(100% - 120px);min-height:240px}</style></head>
729
+<html><head><title><?php echo sprintf(__('IP: %s', 'invoicing'), $ip); ?></title><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-rc.1/leaflet.css" /><style>html,body{height:100%;margin:0;padding:0;width:100%}body{text-align:center;background:#fff;color:#222;font-size:small;}body,p{font-family: arial,sans-serif}#map{margin:auto;width:100%;height:calc(100% - 120px);min-height:240px}</style></head>
730 730
 <body>
731
-    <?php if ( $latitude && $latitude ) { ?>
731
+    <?php if ($latitude && $latitude) { ?>
732 732
     <div id="map"></div>
733 733
         <script src="//cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-rc.1/leaflet.js"></script>
734 734
         <script type="text/javascript">
735 735
         var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
736 736
             osmAttrib = '&copy; <a href="http://openstreetmap.org/copyright">OpenStreetMap</a> contributors',
737 737
             osm = L.tileLayer(osmUrl, {maxZoom: 18, attribution: osmAttrib}),
738
-            latlng = new L.LatLng(<?php echo $latitude;?>, <?php echo $longitude;?>);
738
+            latlng = new L.LatLng(<?php echo $latitude; ?>, <?php echo $longitude; ?>);
739 739
 
740 740
         var map = new L.Map('map', {center: latlng, zoom: 12, layers: [osm]});
741 741
 
742 742
         var marker = new L.Marker(latlng);
743 743
         map.addLayer(marker);
744 744
 
745
-        marker.bindPopup("<p><?php esc_attr_e( $address );?></p>");
745
+        marker.bindPopup("<p><?php esc_attr_e($address); ?></p>");
746 746
     </script>
747 747
     <?php } ?>
748 748
     <div style="height:100px"><?php echo $content; ?></div>
@@ -750,18 +750,18 @@  discard block
 block discarded – undo
750 750
 <?php
751 751
     exit;
752 752
 }
753
-add_action( 'wp_ajax_wpinv_ip_geolocation', 'wpinv_ip_geolocation' );
754
-add_action( 'wp_ajax_nopriv_wpinv_ip_geolocation', 'wpinv_ip_geolocation' );
753
+add_action('wp_ajax_wpinv_ip_geolocation', 'wpinv_ip_geolocation');
754
+add_action('wp_ajax_nopriv_wpinv_ip_geolocation', 'wpinv_ip_geolocation');
755 755
 
756 756
 // Set up the template for the invoice.
757
-function wpinv_template( $template ) {
757
+function wpinv_template($template) {
758 758
     global $post, $wp_query;
759 759
     
760
-    if ( ( is_single() || is_404() ) && !empty( $post->ID ) && (get_post_type( $post->ID ) == 'wpi_invoice' or get_post_type( $post->ID ) == 'wpi_quote')) {
761
-        if ( wpinv_user_can_view_invoice( $post->ID ) ) {
762
-            $template = wpinv_get_template_part( 'wpinv-invoice-print', false, false );
760
+    if ((is_single() || is_404()) && !empty($post->ID) && (get_post_type($post->ID) == 'wpi_invoice' or get_post_type($post->ID) == 'wpi_quote')) {
761
+        if (wpinv_user_can_view_invoice($post->ID)) {
762
+            $template = wpinv_get_template_part('wpinv-invoice-print', false, false);
763 763
         } else {
764
-            $template = wpinv_get_template_part( 'wpinv-invalid-access', false, false );
764
+            $template = wpinv_get_template_part('wpinv-invalid-access', false, false);
765 765
         }
766 766
     }
767 767
 
@@ -770,7 +770,7 @@  discard block
 block discarded – undo
770 770
 
771 771
 function wpinv_get_business_address() {
772 772
     $business_address   = wpinv_store_address();
773
-    $business_address   = !empty( $business_address ) ? wpautop( wp_kses_post( $business_address ) ) : '';
773
+    $business_address   = !empty($business_address) ? wpautop(wp_kses_post($business_address)) : '';
774 774
     
775 775
     /*
776 776
     $default_country    = wpinv_get_default_country();
@@ -794,7 +794,7 @@  discard block
 block discarded – undo
794 794
     
795 795
     $business_address = $business_address ? '<div class="address">' . $business_address . '</div>' : '';
796 796
     
797
-    return apply_filters( 'wpinv_get_business_address', $business_address );
797
+    return apply_filters('wpinv_get_business_address', $business_address);
798 798
 }
799 799
 
800 800
 function wpinv_display_from_address() {
@@ -804,187 +804,187 @@  discard block
 block discarded – undo
804 804
     if (empty($from_name)) {
805 805
         $from_name = wpinv_get_business_name();
806 806
     }
807
-    ?><div class="from col-xs-2"><strong><?php _e( 'From:', 'invoicing' ) ?></strong></div>
807
+    ?><div class="from col-xs-2"><strong><?php _e('From:', 'invoicing') ?></strong></div>
808 808
     <div class="wrapper col-xs-10">
809
-        <div class="name"><?php echo esc_html( $from_name ); ?></div>
810
-        <?php if ( $address = wpinv_get_business_address() ) { ?>
811
-        <div class="address"><?php echo wpautop( wp_kses_post( $address ) );?></div>
809
+        <div class="name"><?php echo esc_html($from_name); ?></div>
810
+        <?php if ($address = wpinv_get_business_address()) { ?>
811
+        <div class="address"><?php echo wpautop(wp_kses_post($address)); ?></div>
812 812
         <?php } ?>
813
-        <?php if ( $email_from = wpinv_mail_get_from_address() ) { ?>
814
-        <div class="email_from"><?php echo wp_sprintf( __( 'Email: %s', 'invoicing' ), $email_from );?></div>
813
+        <?php if ($email_from = wpinv_mail_get_from_address()) { ?>
814
+        <div class="email_from"><?php echo wp_sprintf(__('Email: %s', 'invoicing'), $email_from); ?></div>
815 815
         <?php } ?>
816 816
     </div>
817 817
     <?php
818 818
 }
819 819
 
820
-function wpinv_watermark( $id = 0 ) {
821
-    $output = wpinv_get_watermark( $id );
820
+function wpinv_watermark($id = 0) {
821
+    $output = wpinv_get_watermark($id);
822 822
     
823
-    return apply_filters( 'wpinv_get_watermark', $output, $id );
823
+    return apply_filters('wpinv_get_watermark', $output, $id);
824 824
 }
825 825
 
826
-function wpinv_get_watermark( $id ) {
827
-    if ( !$id > 0 ) {
826
+function wpinv_get_watermark($id) {
827
+    if (!$id > 0) {
828 828
         return NULL;
829 829
     }
830
-    $invoice = wpinv_get_invoice( $id );
830
+    $invoice = wpinv_get_invoice($id);
831 831
     
832
-    if ( !empty( $invoice ) && "wpi_invoice" === $invoice->post_type ) {
833
-        if ( $invoice->is_paid() ) {
834
-            return __( 'Paid', 'invoicing' );
832
+    if (!empty($invoice) && "wpi_invoice" === $invoice->post_type) {
833
+        if ($invoice->is_paid()) {
834
+            return __('Paid', 'invoicing');
835 835
         }
836
-        if ( $invoice->is_refunded() ) {
837
-            return __( 'Refunded', 'invoicing' );
836
+        if ($invoice->is_refunded()) {
837
+            return __('Refunded', 'invoicing');
838 838
         }
839
-        if ( $invoice->has_status( array( 'wpi-cancelled' ) ) ) {
840
-            return __( 'Cancelled', 'invoicing' );
839
+        if ($invoice->has_status(array('wpi-cancelled'))) {
840
+            return __('Cancelled', 'invoicing');
841 841
         }
842 842
     }
843 843
     
844 844
     return NULL;
845 845
 }
846 846
 
847
-function wpinv_display_invoice_details( $invoice ) {
847
+function wpinv_display_invoice_details($invoice) {
848 848
     global $wpinv_euvat;
849 849
     
850 850
     $invoice_id = $invoice->ID;
851 851
     $vat_name   = $wpinv_euvat->get_vat_name();
852 852
     $use_taxes  = wpinv_use_taxes();
853 853
     
854
-    $invoice_status = wpinv_get_invoice_status( $invoice_id );
854
+    $invoice_status = wpinv_get_invoice_status($invoice_id);
855 855
     ?>
856 856
     <table class="table table-bordered table-sm">
857
-        <?php if ( $invoice_number = wpinv_get_invoice_number( $invoice_id ) ) { ?>
857
+        <?php if ($invoice_number = wpinv_get_invoice_number($invoice_id)) { ?>
858 858
             <tr class="wpi-row-number">
859
-                <th><?php echo apply_filters( 'wpinv_invoice_number_label', __( 'Invoice Number', 'invoicing' ), $invoice ); ?></th>
860
-                <td><?php echo esc_html( $invoice_number ); ?></td>
859
+                <th><?php echo apply_filters('wpinv_invoice_number_label', __('Invoice Number', 'invoicing'), $invoice); ?></th>
860
+                <td><?php echo esc_html($invoice_number); ?></td>
861 861
             </tr>
862 862
         <?php } ?>
863 863
         <tr class="wpi-row-status">
864
-            <th><?php echo apply_filters( 'wpinv_invoice_status_label', __( 'Invoice Status', 'invoicing' ), $invoice ); ?></th>
865
-            <td><?php echo wpinv_invoice_status_label( $invoice_status, wpinv_get_invoice_status( $invoice_id, true ) ); ?></td>
864
+            <th><?php echo apply_filters('wpinv_invoice_status_label', __('Invoice Status', 'invoicing'), $invoice); ?></th>
865
+            <td><?php echo wpinv_invoice_status_label($invoice_status, wpinv_get_invoice_status($invoice_id, true)); ?></td>
866 866
         </tr>
867
-        <?php if ( $invoice->is_renewal() ) { ?>
867
+        <?php if ($invoice->is_renewal()) { ?>
868 868
         <tr class="wpi-row-parent">
869
-            <th><?php echo apply_filters( 'wpinv_invoice_parent_invoice_label', __( 'Parent Invoice', 'invoicing' ), $invoice ); ?></th>
870
-            <td><?php echo wpinv_invoice_link( $invoice->parent_invoice ); ?></td>
869
+            <th><?php echo apply_filters('wpinv_invoice_parent_invoice_label', __('Parent Invoice', 'invoicing'), $invoice); ?></th>
870
+            <td><?php echo wpinv_invoice_link($invoice->parent_invoice); ?></td>
871 871
         </tr>
872 872
         <?php } ?>
873
-        <?php if ( ( $gateway_name = wpinv_get_payment_gateway_name( $invoice_id ) ) && ( $invoice->is_paid() || $invoice->is_refunded() ) ) { ?>
873
+        <?php if (($gateway_name = wpinv_get_payment_gateway_name($invoice_id)) && ($invoice->is_paid() || $invoice->is_refunded())) { ?>
874 874
             <tr class="wpi-row-gateway">
875
-                <th><?php echo apply_filters( 'wpinv_invoice_payment_method_label', __( 'Payment Method', 'invoicing' ), $invoice ); ?></th>
875
+                <th><?php echo apply_filters('wpinv_invoice_payment_method_label', __('Payment Method', 'invoicing'), $invoice); ?></th>
876 876
                 <td><?php echo $gateway_name; ?></td>
877 877
             </tr>
878 878
         <?php } ?>
879
-        <?php if ( $invoice_date = wpinv_get_invoice_date( $invoice_id ) ) { ?>
879
+        <?php if ($invoice_date = wpinv_get_invoice_date($invoice_id)) { ?>
880 880
             <tr class="wpi-row-date">
881
-                <th><?php echo apply_filters( 'wpinv_invoice_date_label', __( 'Invoice Date', 'invoicing' ), $invoice ); ?></th>
881
+                <th><?php echo apply_filters('wpinv_invoice_date_label', __('Invoice Date', 'invoicing'), $invoice); ?></th>
882 882
                 <td><?php echo $invoice_date; ?></td>
883 883
             </tr>
884 884
         <?php } ?>
885
-        <?php if ( wpinv_get_option( 'overdue_active' ) && $invoice->needs_payment() && ( $due_date = $invoice->get_due_date( true ) ) ) { ?>
885
+        <?php if (wpinv_get_option('overdue_active') && $invoice->needs_payment() && ($due_date = $invoice->get_due_date(true))) { ?>
886 886
             <tr class="wpi-row-date">
887
-                <th><?php echo apply_filters( 'wpinv_invoice_due_date_label', __( 'Due Date', 'invoicing' ), $invoice ); ?></th>
887
+                <th><?php echo apply_filters('wpinv_invoice_due_date_label', __('Due Date', 'invoicing'), $invoice); ?></th>
888 888
                 <td><?php echo $due_date; ?></td>
889 889
             </tr>
890 890
         <?php } ?>
891
-        <?php if ( $owner_vat_number = $wpinv_euvat->get_vat_number() ) { ?>
891
+        <?php if ($owner_vat_number = $wpinv_euvat->get_vat_number()) { ?>
892 892
             <tr class="wpi-row-ovatno">
893
-                <th><?php echo apply_filters( 'wpinv_invoice_owner_vat_number_label', wp_sprintf( __( 'Owner %s Number', 'invoicing' ), $vat_name ), $invoice, $vat_name ); ?></th>
893
+                <th><?php echo apply_filters('wpinv_invoice_owner_vat_number_label', wp_sprintf(__('Owner %s Number', 'invoicing'), $vat_name), $invoice, $vat_name); ?></th>
894 894
                 <td><?php echo $owner_vat_number; ?></td>
895 895
             </tr>
896 896
         <?php } ?>
897
-        <?php if ( $use_taxes && ( $user_vat_number = wpinv_get_invoice_vat_number( $invoice_id ) ) ) { ?>
897
+        <?php if ($use_taxes && ($user_vat_number = wpinv_get_invoice_vat_number($invoice_id))) { ?>
898 898
             <tr class="wpi-row-uvatno">
899
-                <th><?php echo apply_filters( 'wpinv_invoice_user_vat_number_label', wp_sprintf( __( 'Invoice %s Number', 'invoicing' ), $vat_name ), $invoice, $vat_name ); ?></th>
899
+                <th><?php echo apply_filters('wpinv_invoice_user_vat_number_label', wp_sprintf(__('Invoice %s Number', 'invoicing'), $vat_name), $invoice, $vat_name); ?></th>
900 900
                 <td><?php echo $user_vat_number; ?></td>
901 901
             </tr>
902 902
         <?php } ?>
903 903
         <tr class="table-active tr-total wpi-row-total">
904
-            <th><strong><?php _e( 'Total Amount', 'invoicing' ) ?></strong></th>
905
-            <td><strong><?php echo wpinv_payment_total( $invoice_id, true ); ?></strong></td>
904
+            <th><strong><?php _e('Total Amount', 'invoicing') ?></strong></th>
905
+            <td><strong><?php echo wpinv_payment_total($invoice_id, true); ?></strong></td>
906 906
         </tr>
907 907
     </table>
908 908
 <?php
909 909
 }
910 910
 
911
-function wpinv_display_to_address( $invoice_id = 0 ) {
912
-    $invoice = wpinv_get_invoice( $invoice_id );
911
+function wpinv_display_to_address($invoice_id = 0) {
912
+    $invoice = wpinv_get_invoice($invoice_id);
913 913
     
914
-    if ( empty( $invoice ) ) {
914
+    if (empty($invoice)) {
915 915
         return NULL;
916 916
     }
917 917
     
918 918
     $billing_details = $invoice->get_user_info();
919
-    $output = '<div class="to col-xs-2"><strong>' . __( 'To:', 'invoicing' ) . '</strong></div>';
919
+    $output = '<div class="to col-xs-2"><strong>' . __('To:', 'invoicing') . '</strong></div>';
920 920
     $output .= '<div class="wrapper col-xs-10">';
921 921
     
922 922
     ob_start();
923
-    do_action( 'wpinv_display_to_address_top', $invoice );
923
+    do_action('wpinv_display_to_address_top', $invoice);
924 924
     $output .= ob_get_clean();
925 925
     
926
-    $output .= '<div class="name">' . esc_html( trim( $billing_details['first_name'] . ' ' . $billing_details['last_name'] ) ) . '</div>';
927
-    if ( $company = $billing_details['company'] ) {
928
-        $output .= '<div class="company">' . wpautop( wp_kses_post( $company ) ) . '</div>';
926
+    $output .= '<div class="name">' . esc_html(trim($billing_details['first_name'] . ' ' . $billing_details['last_name'])) . '</div>';
927
+    if ($company = $billing_details['company']) {
928
+        $output .= '<div class="company">' . wpautop(wp_kses_post($company)) . '</div>';
929 929
     }
930 930
     $address_row = '';
931
-    if ( $address = $billing_details['address'] ) {
932
-        $address_row .= wpautop( wp_kses_post( $address ) );
931
+    if ($address = $billing_details['address']) {
932
+        $address_row .= wpautop(wp_kses_post($address));
933 933
     }
934 934
     
935 935
     $address_fields = array();
936
-    if ( !empty( $billing_details['city'] ) ) {
936
+    if (!empty($billing_details['city'])) {
937 937
         $address_fields[] = $billing_details['city'];
938 938
     }
939 939
     
940
-    $billing_country = !empty( $billing_details['country'] ) ? $billing_details['country'] : '';
941
-    if ( !empty( $billing_details['state'] ) ) {
942
-        $address_fields[] = wpinv_state_name( $billing_details['state'], $billing_country );
940
+    $billing_country = !empty($billing_details['country']) ? $billing_details['country'] : '';
941
+    if (!empty($billing_details['state'])) {
942
+        $address_fields[] = wpinv_state_name($billing_details['state'], $billing_country);
943 943
     }
944 944
     
945
-    if ( !empty( $billing_country ) ) {
946
-        $address_fields[] = wpinv_country_name( $billing_country );
945
+    if (!empty($billing_country)) {
946
+        $address_fields[] = wpinv_country_name($billing_country);
947 947
     }
948 948
     
949
-    if ( !empty( $address_fields ) ) {
950
-        $address_fields = implode( ", ", $address_fields );
949
+    if (!empty($address_fields)) {
950
+        $address_fields = implode(", ", $address_fields);
951 951
         
952
-        if ( !empty( $billing_details['zip'] ) ) {
952
+        if (!empty($billing_details['zip'])) {
953 953
             $address_fields .= ' ' . $billing_details['zip'];
954 954
         }
955 955
         
956
-        $address_row .= wpautop( wp_kses_post( $address_fields ) );
956
+        $address_row .= wpautop(wp_kses_post($address_fields));
957 957
     }
958 958
     
959
-    if ( $address_row ) {
959
+    if ($address_row) {
960 960
         $output .= '<div class="address">' . $address_row . '</div>';
961 961
     }
962 962
     
963
-    if ( $phone = $invoice->get_phone() ) {
964
-        $output .= '<div class="phone">' . wp_sprintf( __( 'Phone: %s', 'invoicing' ), esc_html( $phone ) ) . '</div>';
963
+    if ($phone = $invoice->get_phone()) {
964
+        $output .= '<div class="phone">' . wp_sprintf(__('Phone: %s', 'invoicing'), esc_html($phone)) . '</div>';
965 965
     }
966
-    if ( $email = $invoice->get_email() ) {
967
-        $output .= '<div class="email">' . wp_sprintf( __( 'Email: %s' , 'invoicing'), esc_html( $email ) ) . '</div>';
966
+    if ($email = $invoice->get_email()) {
967
+        $output .= '<div class="email">' . wp_sprintf(__('Email: %s', 'invoicing'), esc_html($email)) . '</div>';
968 968
     }
969 969
     
970 970
     ob_start();
971
-    do_action( 'wpinv_display_to_address_bottom', $invoice );
971
+    do_action('wpinv_display_to_address_bottom', $invoice);
972 972
     $output .= ob_get_clean();
973 973
     
974 974
     $output .= '</div>';
975
-    $output = apply_filters( 'wpinv_display_to_address', $output, $invoice );
975
+    $output = apply_filters('wpinv_display_to_address', $output, $invoice);
976 976
 
977 977
     echo $output;
978 978
 }
979 979
 
980
-function wpinv_display_line_items( $invoice_id = 0 ) {
980
+function wpinv_display_line_items($invoice_id = 0) {
981 981
     global $wpinv_euvat, $ajax_cart_details;
982
-    $invoice            = wpinv_get_invoice( $invoice_id );
982
+    $invoice            = wpinv_get_invoice($invoice_id);
983 983
     $quantities_enabled = wpinv_item_quantities_enabled();
984 984
     $use_taxes          = wpinv_use_taxes();
985 985
     $zero_tax           = !(float)$invoice->get_tax() > 0 ? true : false;
986
-    $tax_label           = $use_taxes && $invoice->has_vat() ? $wpinv_euvat->get_vat_name() : __( 'Tax', 'invoicing' );
987
-    $tax_title          = !$zero_tax && $use_taxes ? ( wpinv_prices_include_tax() ? wp_sprintf( __( '(%s Incl.)', 'invoicing' ), $tax_label ) : wp_sprintf( __( '(%s Excl.)', 'invoicing' ), $tax_label ) ) : '';
986
+    $tax_label = $use_taxes && $invoice->has_vat() ? $wpinv_euvat->get_vat_name() : __('Tax', 'invoicing');
987
+    $tax_title          = !$zero_tax && $use_taxes ? (wpinv_prices_include_tax() ? wp_sprintf(__('(%s Incl.)', 'invoicing'), $tax_label) : wp_sprintf(__('(%s Excl.)', 'invoicing'), $tax_label)) : '';
988 988
     
989 989
     $cart_details       = $invoice->get_cart_details();
990 990
     $ajax_cart_details  = $cart_details;
@@ -993,64 +993,64 @@  discard block
 block discarded – undo
993 993
     <table class="table table-sm table-bordered table-responsive">
994 994
         <thead>
995 995
             <tr>
996
-                <th class="name"><strong><?php _e( "Item Name", "invoicing" );?></strong></th>
997
-                <th class="rate"><strong><?php _e( "Price", "invoicing" );?></strong></th>
996
+                <th class="name"><strong><?php _e("Item Name", "invoicing"); ?></strong></th>
997
+                <th class="rate"><strong><?php _e("Price", "invoicing"); ?></strong></th>
998 998
                 <?php if ($quantities_enabled) { ?>
999
-                    <th class="qty"><strong><?php _e( "Qty", "invoicing" );?></strong></th>
999
+                    <th class="qty"><strong><?php _e("Qty", "invoicing"); ?></strong></th>
1000 1000
                 <?php } ?>
1001 1001
                 <?php if ($use_taxes && !$zero_tax) { ?>
1002 1002
                     <th class="tax"><strong><?php echo $tax_label . ' <span class="normal small">(%)</span>'; ?></strong></th>
1003 1003
                 <?php } ?>
1004
-                <th class="total"><strong><?php echo __( "Item Total", "invoicing" ) . ' <span class="normal small">' . $tax_title . '<span>';?></strong></th>
1004
+                <th class="total"><strong><?php echo __("Item Total", "invoicing") . ' <span class="normal small">' . $tax_title . '<span>'; ?></strong></th>
1005 1005
             </tr>
1006 1006
         </thead>
1007 1007
         <tbody>
1008 1008
         <?php 
1009
-            if ( !empty( $cart_details ) ) {
1010
-                do_action( 'wpinv_display_line_items_start', $invoice );
1009
+            if (!empty($cart_details)) {
1010
+                do_action('wpinv_display_line_items_start', $invoice);
1011 1011
                 
1012 1012
                 $count = 0;
1013 1013
                 $cols  = 3;
1014
-                foreach ( $cart_details as $key => $cart_item ) {
1015
-                    $item_id    = !empty($cart_item['id']) ? absint( $cart_item['id'] ) : '';
1016
-                    $item_price = isset($cart_item["item_price"]) ? wpinv_round_amount( $cart_item["item_price"] ) : 0;
1017
-                    $line_total = isset($cart_item["subtotal"]) ? wpinv_round_amount( $cart_item["subtotal"] ) : 0;
1018
-                    $quantity   = !empty($cart_item['quantity']) && (int)$cart_item['quantity'] > 0 ? absint( $cart_item['quantity'] ) : 1;
1014
+                foreach ($cart_details as $key => $cart_item) {
1015
+                    $item_id    = !empty($cart_item['id']) ? absint($cart_item['id']) : '';
1016
+                    $item_price = isset($cart_item["item_price"]) ? wpinv_round_amount($cart_item["item_price"]) : 0;
1017
+                    $line_total = isset($cart_item["subtotal"]) ? wpinv_round_amount($cart_item["subtotal"]) : 0;
1018
+                    $quantity   = !empty($cart_item['quantity']) && (int)$cart_item['quantity'] > 0 ? absint($cart_item['quantity']) : 1;
1019 1019
                     
1020
-                    $item       = $item_id ? new WPInv_Item( $item_id ) : NULL;
1020
+                    $item       = $item_id ? new WPInv_Item($item_id) : NULL;
1021 1021
                     $summary    = '';
1022 1022
                     $cols       = 3;
1023
-                    if ( !empty($item) ) {
1023
+                    if (!empty($item)) {
1024 1024
                         $item_name  = $item->get_name();
1025 1025
                         $summary    = $item->get_summary();
1026 1026
                     }
1027
-                    $item_name  = !empty($cart_item['name']) ? $cart_item['name'] : $item_name;
1027
+                    $item_name = !empty($cart_item['name']) ? $cart_item['name'] : $item_name;
1028 1028
                     
1029
-                    $summary = apply_filters( 'wpinv_print_invoice_line_item_summary', $summary, $cart_item, $item, $invoice );
1029
+                    $summary = apply_filters('wpinv_print_invoice_line_item_summary', $summary, $cart_item, $item, $invoice);
1030 1030
                     
1031 1031
                     $item_tax       = '';
1032 1032
                     $tax_rate       = '';
1033
-                    if ( $use_taxes && $cart_item['tax'] > 0 && $cart_item['subtotal'] > 0 ) {
1034
-                        $item_tax = wpinv_price( wpinv_format_amount( $cart_item['tax'] ), $invoice->get_currency() );
1035
-                        $tax_rate = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : ( $cart_item['tax'] / $cart_item['subtotal'] ) * 100;
1036
-                        $tax_rate = $tax_rate > 0 ? (float)wpinv_round_amount( $tax_rate, 4 ) : '';
1033
+                    if ($use_taxes && $cart_item['tax'] > 0 && $cart_item['subtotal'] > 0) {
1034
+                        $item_tax = wpinv_price(wpinv_format_amount($cart_item['tax']), $invoice->get_currency());
1035
+                        $tax_rate = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : ($cart_item['tax'] / $cart_item['subtotal']) * 100;
1036
+                        $tax_rate = $tax_rate > 0 ? (float)wpinv_round_amount($tax_rate, 4) : '';
1037 1037
                         $tax_rate = $tax_rate != '' ? ' <small class="tax-rate">(' . $tax_rate . '%)</small>' : '';
1038 1038
                     }
1039 1039
                     
1040 1040
                     $line_item_tax = $item_tax . $tax_rate;
1041 1041
                     
1042
-                    if ( $line_item_tax === '' ) {
1042
+                    if ($line_item_tax === '') {
1043 1043
                         $line_item_tax = 0; // Zero tax
1044 1044
                     }
1045 1045
                     
1046
-                    $line_item = '<tr class="row-' . ( ($count % 2 == 0) ? 'even' : 'odd' ) . ' wpinv-item">';
1047
-                        $line_item .= '<td class="name">' . esc_html__( $item_name, 'invoicing' ) . wpinv_get_item_suffix( $item );
1048
-                        if ( $summary !== '' ) {
1049
-                            $line_item .= '<br/><small class="meta">' . wpautop( wp_kses_post( $summary ) ) . '</small>';
1046
+                    $line_item = '<tr class="row-' . (($count % 2 == 0) ? 'even' : 'odd') . ' wpinv-item">';
1047
+                        $line_item .= '<td class="name">' . esc_html__($item_name, 'invoicing') . wpinv_get_item_suffix($item);
1048
+                        if ($summary !== '') {
1049
+                            $line_item .= '<br/><small class="meta">' . wpautop(wp_kses_post($summary)) . '</small>';
1050 1050
                         }
1051 1051
                         $line_item .= '</td>';
1052 1052
                         
1053
-                        $line_item .= '<td class="rate">' . esc_html__( wpinv_price( wpinv_format_amount( $item_price ), $invoice->get_currency() ) ) . '</td>';
1053
+                        $line_item .= '<td class="rate">' . esc_html__(wpinv_price(wpinv_format_amount($item_price), $invoice->get_currency())) . '</td>';
1054 1054
                         if ($quantities_enabled) {
1055 1055
                             $cols++;
1056 1056
                             $line_item .= '<td class="qty">' . $quantity . '</td>';
@@ -1059,55 +1059,55 @@  discard block
 block discarded – undo
1059 1059
                             $cols++;
1060 1060
                             $line_item .= '<td class="tax">' . $line_item_tax . '</td>';
1061 1061
                         }
1062
-                        $line_item .= '<td class="total">' . esc_html__( wpinv_price( wpinv_format_amount( $line_total ), $invoice->get_currency() ) ) . '</td>';
1062
+                        $line_item .= '<td class="total">' . esc_html__(wpinv_price(wpinv_format_amount($line_total), $invoice->get_currency())) . '</td>';
1063 1063
                     $line_item .= '</tr>';
1064 1064
                     
1065
-                    echo apply_filters( 'wpinv_display_line_item', $line_item, $cart_item, $invoice, $cols );
1065
+                    echo apply_filters('wpinv_display_line_item', $line_item, $cart_item, $invoice, $cols);
1066 1066
 
1067 1067
                     $count++;
1068 1068
                 }
1069 1069
                 
1070
-                do_action( 'wpinv_display_before_subtotal', $invoice, $cols );
1070
+                do_action('wpinv_display_before_subtotal', $invoice, $cols);
1071 1071
                 ?>
1072 1072
                 <tr class="row-sub-total row_odd">
1073
-                    <td class="rate" colspan="<?php echo ( $cols - 1 ); ?>"><?php echo apply_filters( 'wpinv_print_cart_subtotal_label', '<strong>' . __( 'Sub Total', 'invoicing' ) . ':</strong>', $invoice ); ?></td>
1074
-                    <td class="total"><strong><?php _e( wpinv_subtotal( $invoice_id, true ) ) ?></strong></td>
1073
+                    <td class="rate" colspan="<?php echo ($cols - 1); ?>"><?php echo apply_filters('wpinv_print_cart_subtotal_label', '<strong>' . __('Sub Total', 'invoicing') . ':</strong>', $invoice); ?></td>
1074
+                    <td class="total"><strong><?php _e(wpinv_subtotal($invoice_id, true)) ?></strong></td>
1075 1075
                 </tr>
1076 1076
                 <?php
1077
-                do_action( 'wpinv_display_after_subtotal', $invoice, $cols );
1077
+                do_action('wpinv_display_after_subtotal', $invoice, $cols);
1078 1078
                 
1079
-                if ( wpinv_discount( $invoice_id, false ) > 0 ) {
1080
-                    do_action( 'wpinv_display_before_discount', $invoice, $cols );
1079
+                if (wpinv_discount($invoice_id, false) > 0) {
1080
+                    do_action('wpinv_display_before_discount', $invoice, $cols);
1081 1081
                     ?>
1082 1082
                         <tr class="row-discount">
1083
-                            <td class="rate" colspan="<?php echo ( $cols - 1 ); ?>"><?php wpinv_get_discount_label( wpinv_discount_code( $invoice_id ) ); ?>:</td>
1084
-                            <td class="total"><?php echo wpinv_discount( $invoice_id, true, true ); ?></td>
1083
+                            <td class="rate" colspan="<?php echo ($cols - 1); ?>"><?php wpinv_get_discount_label(wpinv_discount_code($invoice_id)); ?>:</td>
1084
+                            <td class="total"><?php echo wpinv_discount($invoice_id, true, true); ?></td>
1085 1085
                         </tr>
1086 1086
                     <?php
1087
-                    do_action( 'wpinv_display_after_discount', $invoice, $cols );
1087
+                    do_action('wpinv_display_after_discount', $invoice, $cols);
1088 1088
                 }
1089 1089
                 
1090
-                if ( $use_taxes ) {
1091
-                    do_action( 'wpinv_display_before_tax', $invoice, $cols );
1090
+                if ($use_taxes) {
1091
+                    do_action('wpinv_display_before_tax', $invoice, $cols);
1092 1092
                     ?>
1093 1093
                     <tr class="row-tax">
1094
-                        <td class="rate" colspan="<?php echo ( $cols - 1 ); ?>"><?php echo apply_filters( 'wpinv_print_cart_tax_label', '<strong>' . $tax_label . ':</strong>', $invoice ); ?></td>
1095
-                        <td class="total"><?php _e( wpinv_tax( $invoice_id, true ) ) ?></td>
1094
+                        <td class="rate" colspan="<?php echo ($cols - 1); ?>"><?php echo apply_filters('wpinv_print_cart_tax_label', '<strong>' . $tax_label . ':</strong>', $invoice); ?></td>
1095
+                        <td class="total"><?php _e(wpinv_tax($invoice_id, true)) ?></td>
1096 1096
                     </tr>
1097 1097
                     <?php
1098
-                    do_action( 'wpinv_display_after_tax', $invoice, $cols );
1098
+                    do_action('wpinv_display_after_tax', $invoice, $cols);
1099 1099
                 }
1100 1100
                 
1101
-                do_action( 'wpinv_display_before_total', $invoice, $cols );
1101
+                do_action('wpinv_display_before_total', $invoice, $cols);
1102 1102
                 ?>
1103 1103
                 <tr class="table-active row-total">
1104
-                    <td class="rate" colspan="<?php echo ( $cols - 1 ); ?>"><?php echo apply_filters( 'wpinv_print_cart_total_label', '<strong>' . __( 'Total', 'invoicing' ) . ':</strong>', $invoice ); ?></td>
1105
-                    <td class="total"><strong><?php _e( wpinv_payment_total( $invoice_id, true ) ) ?></strong></td>
1104
+                    <td class="rate" colspan="<?php echo ($cols - 1); ?>"><?php echo apply_filters('wpinv_print_cart_total_label', '<strong>' . __('Total', 'invoicing') . ':</strong>', $invoice); ?></td>
1105
+                    <td class="total"><strong><?php _e(wpinv_payment_total($invoice_id, true)) ?></strong></td>
1106 1106
                 </tr>
1107 1107
                 <?php
1108
-                do_action( 'wpinv_display_after_total', $invoice, $cols );
1108
+                do_action('wpinv_display_after_total', $invoice, $cols);
1109 1109
                 
1110
-                do_action( 'wpinv_display_line_end', $invoice, $cols );
1110
+                do_action('wpinv_display_line_end', $invoice, $cols);
1111 1111
             }
1112 1112
         ?>
1113 1113
         </tbody>
@@ -1116,35 +1116,35 @@  discard block
 block discarded – undo
1116 1116
     echo ob_get_clean();
1117 1117
 }
1118 1118
 
1119
-function wpinv_display_invoice_totals( $invoice_id = 0 ) {    
1119
+function wpinv_display_invoice_totals($invoice_id = 0) {    
1120 1120
     $use_taxes = wpinv_use_taxes();
1121 1121
     
1122
-    do_action( 'wpinv_before_display_totals_table', $invoice_id ); 
1122
+    do_action('wpinv_before_display_totals_table', $invoice_id); 
1123 1123
     ?>
1124 1124
     <table class="table table-sm table-bordered table-responsive">
1125 1125
         <tbody>
1126
-            <?php do_action( 'wpinv_before_display_totals' ); ?>
1126
+            <?php do_action('wpinv_before_display_totals'); ?>
1127 1127
             <tr class="row-sub-total">
1128
-                <td class="rate"><strong><?php _e( 'Sub Total', 'invoicing' ); ?></strong></td>
1129
-                <td class="total"><strong><?php _e( wpinv_subtotal( $invoice_id, true ) ) ?></strong></td>
1128
+                <td class="rate"><strong><?php _e('Sub Total', 'invoicing'); ?></strong></td>
1129
+                <td class="total"><strong><?php _e(wpinv_subtotal($invoice_id, true)) ?></strong></td>
1130 1130
             </tr>
1131
-            <?php do_action( 'wpinv_after_display_totals' ); ?>
1132
-            <?php if ( wpinv_discount( $invoice_id, false ) > 0 ) { ?>
1131
+            <?php do_action('wpinv_after_display_totals'); ?>
1132
+            <?php if (wpinv_discount($invoice_id, false) > 0) { ?>
1133 1133
                 <tr class="row-discount">
1134
-                    <td class="rate"><?php wpinv_get_discount_label( wpinv_discount_code( $invoice_id ) ); ?></td>
1135
-                    <td class="total"><?php echo wpinv_discount( $invoice_id, true, true ); ?></td>
1134
+                    <td class="rate"><?php wpinv_get_discount_label(wpinv_discount_code($invoice_id)); ?></td>
1135
+                    <td class="total"><?php echo wpinv_discount($invoice_id, true, true); ?></td>
1136 1136
                 </tr>
1137
-            <?php do_action( 'wpinv_after_display_discount' ); ?>
1137
+            <?php do_action('wpinv_after_display_discount'); ?>
1138 1138
             <?php } ?>
1139
-            <?php if ( $use_taxes ) { ?>
1139
+            <?php if ($use_taxes) { ?>
1140 1140
             <tr class="row-tax">
1141
-                <td class="rate"><?php _e( 'Tax', 'invoicing' ); ?></td>
1142
-                <td class="total"><?php _e( wpinv_tax( $invoice_id, true ) ) ?></td>
1141
+                <td class="rate"><?php _e('Tax', 'invoicing'); ?></td>
1142
+                <td class="total"><?php _e(wpinv_tax($invoice_id, true)) ?></td>
1143 1143
             </tr>
1144
-            <?php do_action( 'wpinv_after_display_tax' ); ?>
1144
+            <?php do_action('wpinv_after_display_tax'); ?>
1145 1145
             <?php } ?>
1146
-            <?php if ( $fees = wpinv_get_fees( $invoice_id ) ) { ?>
1147
-                <?php foreach ( $fees as $fee ) { ?>
1146
+            <?php if ($fees = wpinv_get_fees($invoice_id)) { ?>
1147
+                <?php foreach ($fees as $fee) { ?>
1148 1148
                     <tr class="row-fee">
1149 1149
                         <td class="rate"><?php echo $fee['label']; ?></td>
1150 1150
                         <td class="total"><?php echo $fee['amount_display']; ?></td>
@@ -1152,73 +1152,73 @@  discard block
 block discarded – undo
1152 1152
                 <?php } ?>
1153 1153
             <?php } ?>
1154 1154
             <tr class="table-active row-total">
1155
-                <td class="rate"><strong><?php _e( 'Total', 'invoicing' ) ?></strong></td>
1156
-                <td class="total"><strong><?php _e( wpinv_payment_total( $invoice_id, true ) ) ?></strong></td>
1155
+                <td class="rate"><strong><?php _e('Total', 'invoicing') ?></strong></td>
1156
+                <td class="total"><strong><?php _e(wpinv_payment_total($invoice_id, true)) ?></strong></td>
1157 1157
             </tr>
1158
-            <?php do_action( 'wpinv_after_totals' ); ?>
1158
+            <?php do_action('wpinv_after_totals'); ?>
1159 1159
         </tbody>
1160 1160
 
1161 1161
     </table>
1162 1162
 
1163
-    <?php do_action( 'wpinv_after_totals_table' );
1163
+    <?php do_action('wpinv_after_totals_table');
1164 1164
 }
1165 1165
 
1166
-function wpinv_display_payments_info( $invoice_id = 0, $echo = true ) {
1167
-    $invoice = wpinv_get_invoice( $invoice_id );
1166
+function wpinv_display_payments_info($invoice_id = 0, $echo = true) {
1167
+    $invoice = wpinv_get_invoice($invoice_id);
1168 1168
     
1169 1169
     ob_start();
1170
-    do_action( 'wpinv_before_display_payments_info', $invoice_id );
1171
-    if ( ( $gateway_title = $invoice->get_gateway_title() ) || $invoice->is_paid() || $invoice->is_refunded() ) {
1170
+    do_action('wpinv_before_display_payments_info', $invoice_id);
1171
+    if (($gateway_title = $invoice->get_gateway_title()) || $invoice->is_paid() || $invoice->is_refunded()) {
1172 1172
         ?>
1173 1173
         <div class="wpi-payment-info">
1174
-            <p class="wpi-payment-gateway"><?php echo wp_sprintf( __( 'Payment via %s', 'invoicing' ), $gateway_title ? $gateway_title : __( 'Manually', 'invoicing' ) ); ?></p>
1175
-            <?php if ( $gateway_title ) { ?>
1176
-            <p class="wpi-payment-transid"><?php echo wp_sprintf( __( 'Transaction ID: %s', 'invoicing' ), $invoice->get_transaction_id() ); ?></p>
1174
+            <p class="wpi-payment-gateway"><?php echo wp_sprintf(__('Payment via %s', 'invoicing'), $gateway_title ? $gateway_title : __('Manually', 'invoicing')); ?></p>
1175
+            <?php if ($gateway_title) { ?>
1176
+            <p class="wpi-payment-transid"><?php echo wp_sprintf(__('Transaction ID: %s', 'invoicing'), $invoice->get_transaction_id()); ?></p>
1177 1177
             <?php } ?>
1178 1178
         </div>
1179 1179
         <?php
1180 1180
     }
1181
-    do_action( 'wpinv_after_display_payments_info', $invoice_id );
1181
+    do_action('wpinv_after_display_payments_info', $invoice_id);
1182 1182
     $outout = ob_get_clean();
1183 1183
     
1184
-    if ( $echo ) {
1184
+    if ($echo) {
1185 1185
         echo $outout;
1186 1186
     } else {
1187 1187
         return $outout;
1188 1188
     }
1189 1189
 }
1190 1190
 
1191
-function wpinv_display_style( $invoice ) {
1192
-    wp_register_style( 'wpinv-single-style', WPINV_PLUGIN_URL . 'assets/css/invoice.css', array(), WPINV_VERSION );
1191
+function wpinv_display_style($invoice) {
1192
+    wp_register_style('wpinv-single-style', WPINV_PLUGIN_URL . 'assets/css/invoice.css', array(), WPINV_VERSION);
1193 1193
     
1194
-    wp_print_styles( 'open-sans' );
1195
-    wp_print_styles( 'wpinv-single-style' );
1194
+    wp_print_styles('open-sans');
1195
+    wp_print_styles('wpinv-single-style');
1196 1196
 }
1197
-add_action( 'wpinv_invoice_print_head', 'wpinv_display_style' );
1198
-add_action( 'wpinv_invalid_invoice_head', 'wpinv_display_style' );
1197
+add_action('wpinv_invoice_print_head', 'wpinv_display_style');
1198
+add_action('wpinv_invalid_invoice_head', 'wpinv_display_style');
1199 1199
 
1200 1200
 function wpinv_checkout_billing_details() {  
1201 1201
     $invoice_id = (int)wpinv_get_invoice_cart_id();
1202 1202
     if (empty($invoice_id)) {
1203
-        wpinv_error_log( 'Invoice id not found', 'ERROR', __FILE__, __LINE__ );
1203
+        wpinv_error_log('Invoice id not found', 'ERROR', __FILE__, __LINE__);
1204 1204
         return null;
1205 1205
     }
1206 1206
     
1207
-    $invoice = wpinv_get_invoice_cart( $invoice_id );
1207
+    $invoice = wpinv_get_invoice_cart($invoice_id);
1208 1208
     if (empty($invoice)) {
1209
-        wpinv_error_log( 'Invoice not found', 'ERROR', __FILE__, __LINE__ );
1209
+        wpinv_error_log('Invoice not found', 'ERROR', __FILE__, __LINE__);
1210 1210
         return null;
1211 1211
     }
1212 1212
     $user_id        = $invoice->get_user_id();
1213 1213
     $user_info      = $invoice->get_user_info();
1214
-    $address_info   = wpinv_get_user_address( $user_id );
1214
+    $address_info   = wpinv_get_user_address($user_id);
1215 1215
     
1216
-    if ( empty( $user_info['first_name'] ) && !empty( $user_info['first_name'] ) ) {
1216
+    if (empty($user_info['first_name']) && !empty($user_info['first_name'])) {
1217 1217
         $user_info['first_name'] = $user_info['first_name'];
1218 1218
         $user_info['last_name'] = $user_info['last_name'];
1219 1219
     }
1220 1220
     
1221
-    if ( ( ( empty( $user_info['country'] ) && !empty( $address_info['country'] ) ) || ( empty( $user_info['state'] ) && !empty( $address_info['state'] ) && $user_info['country'] == $address_info['country'] ) ) ) {
1221
+    if (((empty($user_info['country']) && !empty($address_info['country'])) || (empty($user_info['state']) && !empty($address_info['state']) && $user_info['country'] == $address_info['country']))) {
1222 1222
         $user_info['country']   = $address_info['country'];
1223 1223
         $user_info['state']     = $address_info['state'];
1224 1224
         $user_info['city']      = $address_info['city'];
@@ -1234,98 +1234,98 @@  discard block
 block discarded – undo
1234 1234
         'address'
1235 1235
     );
1236 1236
     
1237
-    foreach ( $address_fields as $field ) {
1238
-        if ( empty( $user_info[$field] ) ) {
1237
+    foreach ($address_fields as $field) {
1238
+        if (empty($user_info[$field])) {
1239 1239
             $user_info[$field] = $address_info[$field];
1240 1240
         }
1241 1241
     }
1242 1242
     
1243
-    return apply_filters( 'wpinv_checkout_billing_details', $user_info, $invoice );
1243
+    return apply_filters('wpinv_checkout_billing_details', $user_info, $invoice);
1244 1244
 }
1245 1245
 
1246 1246
 function wpinv_admin_get_line_items($invoice = array()) {
1247 1247
     $item_quantities    = wpinv_item_quantities_enabled();
1248 1248
     $use_taxes          = wpinv_use_taxes();
1249 1249
     
1250
-    if ( empty( $invoice ) ) {
1250
+    if (empty($invoice)) {
1251 1251
         return NULL;
1252 1252
     }
1253 1253
     
1254 1254
     $cart_items = $invoice->get_cart_details();
1255
-    if ( empty( $cart_items ) ) {
1255
+    if (empty($cart_items)) {
1256 1256
         return NULL;
1257 1257
     }
1258 1258
     ob_start();
1259 1259
     
1260
-    do_action( 'wpinv_admin_before_line_items', $cart_items, $invoice );
1260
+    do_action('wpinv_admin_before_line_items', $cart_items, $invoice);
1261 1261
     
1262 1262
     $count = 0;
1263
-    foreach ( $cart_items as $key => $cart_item ) {
1263
+    foreach ($cart_items as $key => $cart_item) {
1264 1264
         $item_id    = $cart_item['id'];
1265
-        $wpi_item   = $item_id > 0 ? new WPInv_Item( $item_id ) : NULL;
1265
+        $wpi_item   = $item_id > 0 ? new WPInv_Item($item_id) : NULL;
1266 1266
         
1267 1267
         if (empty($wpi_item)) {
1268 1268
             continue;
1269 1269
         }
1270 1270
         
1271
-        $item_price     = wpinv_price( wpinv_format_amount( $cart_item['item_price'] ), $invoice->get_currency() );
1272
-        $quantity       = !empty( $cart_item['quantity'] ) && $cart_item['quantity'] > 0 ? $cart_item['quantity'] : 1;
1273
-        $item_subtotal  = wpinv_price( wpinv_format_amount( $cart_item['subtotal'] ), $invoice->get_currency() );
1271
+        $item_price     = wpinv_price(wpinv_format_amount($cart_item['item_price']), $invoice->get_currency());
1272
+        $quantity       = !empty($cart_item['quantity']) && $cart_item['quantity'] > 0 ? $cart_item['quantity'] : 1;
1273
+        $item_subtotal  = wpinv_price(wpinv_format_amount($cart_item['subtotal']), $invoice->get_currency());
1274 1274
         $can_remove     = true;
1275 1275
         
1276
-        $summary = apply_filters( 'wpinv_admin_invoice_line_item_summary', '', $cart_item, $wpi_item, $invoice );
1276
+        $summary = apply_filters('wpinv_admin_invoice_line_item_summary', '', $cart_item, $wpi_item, $invoice);
1277 1277
         
1278 1278
         $item_tax       = '';
1279 1279
         $tax_rate       = '';
1280
-        if ( $cart_item['tax'] > 0 && $cart_item['subtotal'] > 0 ) {
1281
-            $item_tax = wpinv_price( wpinv_format_amount( $cart_item['tax'] ), $invoice->get_currency() );
1282
-            $tax_rate = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : ( $cart_item['tax'] / $cart_item['subtotal'] ) * 100;
1283
-            $tax_rate = $tax_rate > 0 ? (float)wpinv_round_amount( $tax_rate, 4 ) : '';
1280
+        if ($cart_item['tax'] > 0 && $cart_item['subtotal'] > 0) {
1281
+            $item_tax = wpinv_price(wpinv_format_amount($cart_item['tax']), $invoice->get_currency());
1282
+            $tax_rate = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : ($cart_item['tax'] / $cart_item['subtotal']) * 100;
1283
+            $tax_rate = $tax_rate > 0 ? (float)wpinv_round_amount($tax_rate, 4) : '';
1284 1284
             $tax_rate = $tax_rate != '' ? ' <span class="tax-rate">(' . $tax_rate . '%)</span>' : '';
1285 1285
         }
1286 1286
         $line_item_tax = $item_tax . $tax_rate;
1287 1287
         
1288
-        if ( $line_item_tax === '' ) {
1288
+        if ($line_item_tax === '') {
1289 1289
             $line_item_tax = 0; // Zero tax
1290 1290
         }
1291 1291
 
1292
-        $line_item = '<tr class="item item-' . ( ($count % 2 == 0) ? 'even' : 'odd' ) . '" data-item-id="' . $item_id . '">';
1292
+        $line_item = '<tr class="item item-' . (($count % 2 == 0) ? 'even' : 'odd') . '" data-item-id="' . $item_id . '">';
1293 1293
             $line_item .= '<td class="id">' . $item_id . '</td>';
1294
-            $line_item .= '<td class="title"><a href="' . get_edit_post_link( $item_id ) . '" target="_blank">' . $cart_item['name'] . '</a>' . wpinv_get_item_suffix( $wpi_item );
1295
-            if ( $summary !== '' ) {
1296
-                $line_item .= '<span class="meta">' . wpautop( wp_kses_post( $summary ) ) . '</span>';
1294
+            $line_item .= '<td class="title"><a href="' . get_edit_post_link($item_id) . '" target="_blank">' . $cart_item['name'] . '</a>' . wpinv_get_item_suffix($wpi_item);
1295
+            if ($summary !== '') {
1296
+                $line_item .= '<span class="meta">' . wpautop(wp_kses_post($summary)) . '</span>';
1297 1297
             }
1298 1298
             $line_item .= '</td>';
1299 1299
             $line_item .= '<td class="price">' . $item_price . '</td>';
1300 1300
             
1301
-            if ( $item_quantities ) {
1302
-                if ( count( $cart_items ) == 1 && $quantity <= 1 ) {
1301
+            if ($item_quantities) {
1302
+                if (count($cart_items) == 1 && $quantity <= 1) {
1303 1303
                     $can_remove = false;
1304 1304
                 }
1305 1305
                 $line_item .= '<td class="qty" data-quantity="' . $quantity . '">&nbsp;&times;&nbsp;' . $quantity . '</td>';
1306 1306
             } else {
1307
-                if ( count( $cart_items ) == 1 ) {
1307
+                if (count($cart_items) == 1) {
1308 1308
                     $can_remove = false;
1309 1309
                 }
1310 1310
             }
1311 1311
             $line_item .= '<td class="total">' . $item_subtotal . '</td>';
1312 1312
             
1313
-            if ( $use_taxes ) {
1313
+            if ($use_taxes) {
1314 1314
                 $line_item .= '<td class="tax">' . $line_item_tax . '</td>';
1315 1315
             }
1316 1316
             $line_item .= '<td class="action">';
1317
-            if ( !$invoice->is_paid() && !$invoice->is_refunded() && $can_remove ) {
1317
+            if (!$invoice->is_paid() && !$invoice->is_refunded() && $can_remove) {
1318 1318
                 $line_item .= '<i class="fa fa-remove wpinv-item-remove"></i>';
1319 1319
             }
1320 1320
             $line_item .= '</td>';
1321 1321
         $line_item .= '</tr>';
1322 1322
         
1323
-        echo apply_filters( 'wpinv_admin_line_item', $line_item, $cart_item, $invoice );
1323
+        echo apply_filters('wpinv_admin_line_item', $line_item, $cart_item, $invoice);
1324 1324
         
1325 1325
         $count++;
1326 1326
     } 
1327 1327
     
1328
-    do_action( 'wpinv_admin_after_line_items', $cart_items, $invoice );
1328
+    do_action('wpinv_admin_after_line_items', $cart_items, $invoice);
1329 1329
     
1330 1330
     return ob_get_clean();
1331 1331
 }
@@ -1336,35 +1336,35 @@  discard block
 block discarded – undo
1336 1336
     // Set current invoice id.
1337 1337
     $wpi_checkout_id = wpinv_get_invoice_cart_id();
1338 1338
     
1339
-    $form_action  = esc_url( wpinv_get_checkout_uri() );
1339
+    $form_action = esc_url(wpinv_get_checkout_uri());
1340 1340
 
1341 1341
     ob_start();
1342 1342
         echo '<div id="wpinv_checkout_wrap">';
1343 1343
         
1344
-        if ( wpinv_get_cart_contents() || wpinv_cart_has_fees() ) {
1344
+        if (wpinv_get_cart_contents() || wpinv_cart_has_fees()) {
1345 1345
             ?>
1346 1346
             <div id="wpinv_checkout_form_wrap" class="wpinv_clearfix table-responsive">
1347
-                <?php do_action( 'wpinv_before_checkout_form' ); ?>
1347
+                <?php do_action('wpinv_before_checkout_form'); ?>
1348 1348
                 <form id="wpinv_checkout_form" class="wpi-form" action="<?php echo $form_action; ?>" method="POST">
1349 1349
                     <?php
1350
-                    do_action( 'wpinv_checkout_form_top' );
1351
-                    do_action( 'wpinv_checkout_billing_info' );
1352
-                    do_action( 'wpinv_checkout_cart' );
1353
-                    do_action( 'wpinv_payment_mode_select'  );
1354
-                    do_action( 'wpinv_checkout_form_bottom' )
1350
+                    do_action('wpinv_checkout_form_top');
1351
+                    do_action('wpinv_checkout_billing_info');
1352
+                    do_action('wpinv_checkout_cart');
1353
+                    do_action('wpinv_payment_mode_select');
1354
+                    do_action('wpinv_checkout_form_bottom')
1355 1355
                     ?>
1356 1356
                 </form>
1357
-                <?php do_action( 'wpinv_after_purchase_form' ); ?>
1357
+                <?php do_action('wpinv_after_purchase_form'); ?>
1358 1358
             </div><!--end #wpinv_checkout_form_wrap-->
1359 1359
         <?php
1360 1360
         } else {
1361
-            do_action( 'wpinv_cart_empty' );
1361
+            do_action('wpinv_cart_empty');
1362 1362
         }
1363 1363
         echo '</div><!--end #wpinv_checkout_wrap-->';
1364 1364
     return ob_get_clean();
1365 1365
 }
1366 1366
 
1367
-function wpinv_checkout_cart( $cart_details = array(), $echo = true ) {
1367
+function wpinv_checkout_cart($cart_details = array(), $echo = true) {
1368 1368
     global $ajax_cart_details;
1369 1369
     $ajax_cart_details = $cart_details;
1370 1370
     /*
@@ -1379,25 +1379,25 @@  discard block
 block discarded – undo
1379 1379
     }
1380 1380
     */
1381 1381
     ob_start();
1382
-    do_action( 'wpinv_before_checkout_cart' );
1382
+    do_action('wpinv_before_checkout_cart');
1383 1383
     echo '<div id="wpinv_checkout_cart_form" method="post">';
1384 1384
         echo '<div id="wpinv_checkout_cart_wrap">';
1385
-            wpinv_get_template_part( 'wpinv-checkout-cart' );
1385
+            wpinv_get_template_part('wpinv-checkout-cart');
1386 1386
         echo '</div>';
1387 1387
     echo '</div>';
1388
-    do_action( 'wpinv_after_checkout_cart' );
1388
+    do_action('wpinv_after_checkout_cart');
1389 1389
     $content = ob_get_clean();
1390 1390
     
1391
-    if ( $echo ) {
1391
+    if ($echo) {
1392 1392
         echo $content;
1393 1393
     } else {
1394 1394
         return $content;
1395 1395
     }
1396 1396
 }
1397
-add_action( 'wpinv_checkout_cart', 'wpinv_checkout_cart', 10 );
1397
+add_action('wpinv_checkout_cart', 'wpinv_checkout_cart', 10);
1398 1398
 
1399 1399
 function wpinv_empty_cart_message() {
1400
-	return apply_filters( 'wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __( 'Your cart is empty.', 'invoicing' ) . '</span>' );
1400
+	return apply_filters('wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __('Your cart is empty.', 'invoicing') . '</span>');
1401 1401
 }
1402 1402
 
1403 1403
 /**
@@ -1409,91 +1409,91 @@  discard block
 block discarded – undo
1409 1409
 function wpinv_empty_checkout_cart() {
1410 1410
 	echo wpinv_empty_cart_message();
1411 1411
 }
1412
-add_action( 'wpinv_cart_empty', 'wpinv_empty_checkout_cart' );
1412
+add_action('wpinv_cart_empty', 'wpinv_empty_checkout_cart');
1413 1413
 
1414 1414
 function wpinv_save_cart_button() {
1415
-    if ( wpinv_is_cart_saving_disabled() )
1415
+    if (wpinv_is_cart_saving_disabled())
1416 1416
         return;
1417 1417
 ?>
1418
-    <a class="wpinv-cart-saving-button wpinv-submit button" id="wpinv-save-cart-button" href="<?php echo esc_url( add_query_arg( 'wpi_action', 'save_cart' ) ); ?>"><?php _e( 'Save Cart', 'invoicing' ); ?></a>
1418
+    <a class="wpinv-cart-saving-button wpinv-submit button" id="wpinv-save-cart-button" href="<?php echo esc_url(add_query_arg('wpi_action', 'save_cart')); ?>"><?php _e('Save Cart', 'invoicing'); ?></a>
1419 1419
 <?php
1420 1420
 }
1421 1421
 
1422 1422
 function wpinv_update_cart_button() {
1423
-    if ( !wpinv_item_quantities_enabled() )
1423
+    if (!wpinv_item_quantities_enabled())
1424 1424
         return;
1425 1425
 ?>
1426
-    <input type="submit" name="wpinv_update_cart_submit" class="wpinv-submit wpinv-no-js button" value="<?php _e( 'Update Cart', 'invoicing' ); ?>"/>
1426
+    <input type="submit" name="wpinv_update_cart_submit" class="wpinv-submit wpinv-no-js button" value="<?php _e('Update Cart', 'invoicing'); ?>"/>
1427 1427
     <input type="hidden" name="wpi_action" value="update_cart"/>
1428 1428
 <?php
1429 1429
 }
1430 1430
 
1431 1431
 function wpinv_checkout_cart_columns() {
1432 1432
     $default = 3;
1433
-    if ( wpinv_item_quantities_enabled() ) {
1433
+    if (wpinv_item_quantities_enabled()) {
1434 1434
         $default++;
1435 1435
     }
1436 1436
     
1437
-    if ( wpinv_use_taxes() ) {
1437
+    if (wpinv_use_taxes()) {
1438 1438
         $default++;
1439 1439
     }
1440 1440
 
1441
-    return apply_filters( 'wpinv_checkout_cart_columns', $default );
1441
+    return apply_filters('wpinv_checkout_cart_columns', $default);
1442 1442
 }
1443 1443
 
1444 1444
 function wpinv_display_cart_messages() {
1445 1445
     global $wpi_session;
1446 1446
 
1447
-    $messages = $wpi_session->get( 'wpinv_cart_messages' );
1447
+    $messages = $wpi_session->get('wpinv_cart_messages');
1448 1448
 
1449
-    if ( $messages ) {
1450
-        foreach ( $messages as $message_id => $message ) {
1449
+    if ($messages) {
1450
+        foreach ($messages as $message_id => $message) {
1451 1451
             // Try and detect what type of message this is
1452
-            if ( strpos( strtolower( $message ), 'error' ) ) {
1452
+            if (strpos(strtolower($message), 'error')) {
1453 1453
                 $type = 'error';
1454
-            } elseif ( strpos( strtolower( $message ), 'success' ) ) {
1454
+            } elseif (strpos(strtolower($message), 'success')) {
1455 1455
                 $type = 'success';
1456 1456
             } else {
1457 1457
                 $type = 'info';
1458 1458
             }
1459 1459
 
1460
-            $classes = apply_filters( 'wpinv_' . $type . '_class', array( 'wpinv_errors', 'wpinv-alert', 'wpinv-alert-' . $type ) );
1460
+            $classes = apply_filters('wpinv_' . $type . '_class', array('wpinv_errors', 'wpinv-alert', 'wpinv-alert-' . $type));
1461 1461
 
1462
-            echo '<div class="' . implode( ' ', $classes ) . '">';
1462
+            echo '<div class="' . implode(' ', $classes) . '">';
1463 1463
                 // Loop message codes and display messages
1464 1464
                     echo '<p class="wpinv_error" id="wpinv_msg_' . $message_id . '">' . $message . '</p>';
1465 1465
             echo '</div>';
1466 1466
         }
1467 1467
 
1468 1468
         // Remove all of the cart saving messages
1469
-        $wpi_session->set( 'wpinv_cart_messages', null );
1469
+        $wpi_session->set('wpinv_cart_messages', null);
1470 1470
     }
1471 1471
 }
1472
-add_action( 'wpinv_before_checkout_cart', 'wpinv_display_cart_messages' );
1472
+add_action('wpinv_before_checkout_cart', 'wpinv_display_cart_messages');
1473 1473
 
1474 1474
 function wpinv_discount_field() {
1475
-    if ( isset( $_GET['wpi-gateway'] ) && wpinv_is_ajax_disabled() ) {
1475
+    if (isset($_GET['wpi-gateway']) && wpinv_is_ajax_disabled()) {
1476 1476
         return; // Only show before a payment method has been selected if ajax is disabled
1477 1477
     }
1478 1478
 
1479
-    if ( !wpinv_is_checkout() ) {
1479
+    if (!wpinv_is_checkout()) {
1480 1480
         return;
1481 1481
     }
1482 1482
 
1483
-    if ( wpinv_has_active_discounts() && wpinv_get_cart_total() ) {
1483
+    if (wpinv_has_active_discounts() && wpinv_get_cart_total()) {
1484 1484
     ?>
1485 1485
     <div id="wpinv-discount-field" class="panel panel-default">
1486 1486
         <div class="panel-body">
1487 1487
             <p>
1488
-                <label class="wpinv-label" for="wpinv_discount_code"><strong><?php _e( 'Discount', 'invoicing' ); ?></strong></label>
1489
-                <span class="wpinv-description"><?php _e( 'Enter a discount code if you have one.', 'invoicing' ); ?></span>
1488
+                <label class="wpinv-label" for="wpinv_discount_code"><strong><?php _e('Discount', 'invoicing'); ?></strong></label>
1489
+                <span class="wpinv-description"><?php _e('Enter a discount code if you have one.', 'invoicing'); ?></span>
1490 1490
             </p>
1491 1491
             <div class="form-group row">
1492 1492
                 <div class="col-sm-4">
1493
-                    <input class="wpinv-input form-control" type="text" id="wpinv_discount_code" name="wpinv_discount_code" placeholder="<?php _e( 'Enter discount code', 'invoicing' ); ?>"/>
1493
+                    <input class="wpinv-input form-control" type="text" id="wpinv_discount_code" name="wpinv_discount_code" placeholder="<?php _e('Enter discount code', 'invoicing'); ?>"/>
1494 1494
                 </div>
1495 1495
                 <div class="col-sm-3">
1496
-                    <button id="wpi-apply-discount" type="button" class="btn btn-success btn-sm"><?php _e( 'Apply Discount', 'invoicing' ); ?></button>
1496
+                    <button id="wpi-apply-discount" type="button" class="btn btn-success btn-sm"><?php _e('Apply Discount', 'invoicing'); ?></button>
1497 1497
                 </div>
1498 1498
                 <div style="clear:both"></div>
1499 1499
                 <div class="col-sm-12 wpinv-discount-msg">
@@ -1506,10 +1506,10 @@  discard block
 block discarded – undo
1506 1506
 <?php
1507 1507
     }
1508 1508
 }
1509
-add_action( 'wpinv_after_checkout_cart', 'wpinv_discount_field', -10 );
1509
+add_action('wpinv_after_checkout_cart', 'wpinv_discount_field', -10);
1510 1510
 
1511 1511
 function wpinv_agree_to_terms_js() {
1512
-    if ( wpinv_get_option( 'show_agree_to_terms', false ) ) {
1512
+    if (wpinv_get_option('show_agree_to_terms', false)) {
1513 1513
 ?>
1514 1514
 <script type="text/javascript">
1515 1515
     jQuery(document).ready(function($){
@@ -1524,126 +1524,126 @@  discard block
 block discarded – undo
1524 1524
 <?php
1525 1525
     }
1526 1526
 }
1527
-add_action( 'wpinv_checkout_form_top', 'wpinv_agree_to_terms_js' );
1527
+add_action('wpinv_checkout_form_top', 'wpinv_agree_to_terms_js');
1528 1528
 
1529 1529
 function wpinv_payment_mode_select() {
1530
-    $gateways = wpinv_get_enabled_payment_gateways( true );
1531
-    $gateways = apply_filters( 'wpinv_payment_gateways_on_cart', $gateways );
1530
+    $gateways = wpinv_get_enabled_payment_gateways(true);
1531
+    $gateways = apply_filters('wpinv_payment_gateways_on_cart', $gateways);
1532 1532
     $page_URL = wpinv_get_current_page_url();
1533
-    $invoice = wpinv_get_invoice( 0, true );
1533
+    $invoice = wpinv_get_invoice(0, true);
1534 1534
     
1535 1535
     do_action('wpinv_payment_mode_top');
1536 1536
     $invoice_id = (int)$invoice->ID;
1537
-    $chosen_gateway = wpinv_get_chosen_gateway( $invoice_id );
1537
+    $chosen_gateway = wpinv_get_chosen_gateway($invoice_id);
1538 1538
     ?>
1539
-    <div id="wpinv_payment_mode_select" data-gateway="<?php echo $chosen_gateway; ?>" <?php echo ( $invoice->is_free() ? 'style="display:none;" data-free="1"' : '' ); ?>>
1540
-            <?php do_action( 'wpinv_payment_mode_before_gateways_wrap' ); ?>
1539
+    <div id="wpinv_payment_mode_select" data-gateway="<?php echo $chosen_gateway; ?>" <?php echo ($invoice->is_free() ? 'style="display:none;" data-free="1"' : ''); ?>>
1540
+            <?php do_action('wpinv_payment_mode_before_gateways_wrap'); ?>
1541 1541
             <div id="wpinv-payment-mode-wrap" class="panel panel-default">
1542
-                <div class="panel-heading"><h3 class="panel-title"><?php _e( 'Select Payment Method', 'invoicing' ); ?></h3></div>
1542
+                <div class="panel-heading"><h3 class="panel-title"><?php _e('Select Payment Method', 'invoicing'); ?></h3></div>
1543 1543
                 <div class="panel-body list-group wpi-payment_methods">
1544 1544
                     <?php
1545
-                    do_action( 'wpinv_payment_mode_before_gateways' );
1545
+                    do_action('wpinv_payment_mode_before_gateways');
1546 1546
                     
1547
-                    if(!empty($gateways)){
1548
-	                    foreach ( $gateways as $gateway_id => $gateway ) {
1549
-		                    $checked = checked( $gateway_id, $chosen_gateway, false );
1550
-		                    $button_label = wpinv_get_gateway_button_label( $gateway_id );
1551
-		                    $description = wpinv_get_gateway_description( $gateway_id );
1547
+                    if (!empty($gateways)) {
1548
+	                    foreach ($gateways as $gateway_id => $gateway) {
1549
+		                    $checked = checked($gateway_id, $chosen_gateway, false);
1550
+		                    $button_label = wpinv_get_gateway_button_label($gateway_id);
1551
+		                    $description = wpinv_get_gateway_description($gateway_id);
1552 1552
 		                    ?>
1553 1553
 		                    <div class="list-group-item">
1554 1554
 			                    <div class="radio">
1555
-				                    <label><input type="radio" data-button-text="<?php echo esc_attr( $button_label );?>" value="<?php echo esc_attr( $gateway_id ) ;?>" <?php echo $checked ;?> id="wpi_gateway_<?php echo esc_attr( $gateway_id );?>" name="wpi-gateway" class="wpi-pmethod"><?php echo esc_html( $gateway['checkout_label'] ); ?></label>
1555
+				                    <label><input type="radio" data-button-text="<?php echo esc_attr($button_label); ?>" value="<?php echo esc_attr($gateway_id); ?>" <?php echo $checked; ?> id="wpi_gateway_<?php echo esc_attr($gateway_id); ?>" name="wpi-gateway" class="wpi-pmethod"><?php echo esc_html($gateway['checkout_label']); ?></label>
1556 1556
 			                    </div>
1557
-			                    <div style="display:none;" class="payment_box wpi_gateway_<?php echo esc_attr( $gateway_id );?>" role="alert">
1558
-				                    <?php if ( !empty( $description ) ) { ?>
1559
-					                    <div class="wpi-gateway-desc alert alert-info"><?php echo $description;?></div>
1557
+			                    <div style="display:none;" class="payment_box wpi_gateway_<?php echo esc_attr($gateway_id); ?>" role="alert">
1558
+				                    <?php if (!empty($description)) { ?>
1559
+					                    <div class="wpi-gateway-desc alert alert-info"><?php echo $description; ?></div>
1560 1560
 				                    <?php } ?>
1561
-				                    <?php do_action( 'wpinv_' . $gateway_id . '_cc_form', $invoice_id ) ;?>
1561
+				                    <?php do_action('wpinv_' . $gateway_id . '_cc_form', $invoice_id); ?>
1562 1562
 			                    </div>
1563 1563
 		                    </div>
1564 1564
 		                    <?php
1565 1565
 	                    }
1566
-                    }else{
1567
-	                    echo '<div class="alert alert-warning">'. __('No payment gateway active','invoicing') .'</div>';
1566
+                    } else {
1567
+	                    echo '<div class="alert alert-warning">' . __('No payment gateway active', 'invoicing') . '</div>';
1568 1568
                     }
1569 1569
 
1570
-                    do_action( 'wpinv_payment_mode_after_gateways' );
1570
+                    do_action('wpinv_payment_mode_after_gateways');
1571 1571
                     ?>
1572 1572
                 </div>
1573 1573
             </div>
1574
-            <?php do_action( 'wpinv_payment_mode_after_gateways_wrap' ); ?>
1574
+            <?php do_action('wpinv_payment_mode_after_gateways_wrap'); ?>
1575 1575
     </div>
1576 1576
     <?php
1577 1577
     do_action('wpinv_payment_mode_bottom');
1578 1578
 }
1579
-add_action( 'wpinv_payment_mode_select', 'wpinv_payment_mode_select' );
1579
+add_action('wpinv_payment_mode_select', 'wpinv_payment_mode_select');
1580 1580
 
1581 1581
 function wpinv_checkout_billing_info() {    
1582
-    if ( wpinv_is_checkout() ) {
1582
+    if (wpinv_is_checkout()) {
1583 1583
         $logged_in          = is_user_logged_in();
1584 1584
         $billing_details    = wpinv_checkout_billing_details();
1585
-        $selected_country   = !empty( $billing_details['country'] ) ? $billing_details['country'] : wpinv_default_billing_country();
1585
+        $selected_country   = !empty($billing_details['country']) ? $billing_details['country'] : wpinv_default_billing_country();
1586 1586
         ?>
1587 1587
         <div id="wpinv-fields" class="clearfix">
1588 1588
             <div id="wpi-billing" class="wpi-billing clearfix panel panel-default">
1589
-                <div class="panel-heading"><h3 class="panel-title"><?php _e( 'Billing Details', 'invoicing' );?></h3></div>
1589
+                <div class="panel-heading"><h3 class="panel-title"><?php _e('Billing Details', 'invoicing'); ?></h3></div>
1590 1590
                 <div id="wpinv-fields-box" class="panel-body">
1591
-                    <?php do_action( 'wpinv_checkout_billing_fields_first', $billing_details ); ?>
1591
+                    <?php do_action('wpinv_checkout_billing_fields_first', $billing_details); ?>
1592 1592
                     <p class="wpi-cart-field wpi-col2 wpi-colf">
1593
-                        <label for="wpinv_first_name" class="wpi-label"><?php _e( 'First Name', 'invoicing' );?><?php if ( wpinv_get_option( 'fname_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label>
1593
+                        <label for="wpinv_first_name" class="wpi-label"><?php _e('First Name', 'invoicing'); ?><?php if (wpinv_get_option('fname_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label>
1594 1594
                         <?php
1595
-                        echo wpinv_html_text( array(
1595
+                        echo wpinv_html_text(array(
1596 1596
                                 'id'            => 'wpinv_first_name',
1597 1597
                                 'name'          => 'wpinv_first_name',
1598 1598
                                 'value'         => $billing_details['first_name'],
1599 1599
                                 'class'         => 'wpi-input form-control',
1600
-                                'placeholder'   => __( 'First name', 'invoicing' ),
1601
-                                'required'      => (bool)wpinv_get_option( 'fname_mandatory' ),
1602
-                            ) );
1600
+                                'placeholder'   => __('First name', 'invoicing'),
1601
+                                'required'      => (bool)wpinv_get_option('fname_mandatory'),
1602
+                            ));
1603 1603
                         ?>
1604 1604
                     </p>
1605 1605
                     <p class="wpi-cart-field wpi-col2 wpi-coll">
1606
-                        <label for="wpinv_last_name" class="wpi-label"><?php _e( 'Last Name', 'invoicing' );?><?php if ( wpinv_get_option( 'lname_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label>
1606
+                        <label for="wpinv_last_name" class="wpi-label"><?php _e('Last Name', 'invoicing'); ?><?php if (wpinv_get_option('lname_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label>
1607 1607
                         <?php
1608
-                        echo wpinv_html_text( array(
1608
+                        echo wpinv_html_text(array(
1609 1609
                                 'id'            => 'wpinv_last_name',
1610 1610
                                 'name'          => 'wpinv_last_name',
1611 1611
                                 'value'         => $billing_details['last_name'],
1612 1612
                                 'class'         => 'wpi-input form-control',
1613
-                                'placeholder'   => __( 'Last name', 'invoicing' ),
1614
-                                'required'      => (bool)wpinv_get_option( 'lname_mandatory' ),
1615
-                            ) );
1613
+                                'placeholder'   => __('Last name', 'invoicing'),
1614
+                                'required'      => (bool)wpinv_get_option('lname_mandatory'),
1615
+                            ));
1616 1616
                         ?>
1617 1617
                     </p>
1618 1618
                     <p class="wpi-cart-field wpi-col2 wpi-colf">
1619
-                        <label for="wpinv_address" class="wpi-label"><?php _e( 'Address', 'invoicing' );?><?php if ( wpinv_get_option( 'address_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label>
1619
+                        <label for="wpinv_address" class="wpi-label"><?php _e('Address', 'invoicing'); ?><?php if (wpinv_get_option('address_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label>
1620 1620
                         <?php
1621
-                        echo wpinv_html_text( array(
1621
+                        echo wpinv_html_text(array(
1622 1622
                                 'id'            => 'wpinv_address',
1623 1623
                                 'name'          => 'wpinv_address',
1624 1624
                                 'value'         => $billing_details['address'],
1625 1625
                                 'class'         => 'wpi-input form-control',
1626
-                                'placeholder'   => __( 'Address', 'invoicing' ),
1627
-                                'required'      => (bool)wpinv_get_option( 'address_mandatory' ),
1628
-                            ) );
1626
+                                'placeholder'   => __('Address', 'invoicing'),
1627
+                                'required'      => (bool)wpinv_get_option('address_mandatory'),
1628
+                            ));
1629 1629
                         ?>
1630 1630
                     </p>
1631 1631
                     <p class="wpi-cart-field wpi-col2 wpi-coll">
1632
-                        <label for="wpinv_city" class="wpi-label"><?php _e( 'City', 'invoicing' );?><?php if ( wpinv_get_option( 'city_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label>
1632
+                        <label for="wpinv_city" class="wpi-label"><?php _e('City', 'invoicing'); ?><?php if (wpinv_get_option('city_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label>
1633 1633
                         <?php
1634
-                        echo wpinv_html_text( array(
1634
+                        echo wpinv_html_text(array(
1635 1635
                                 'id'            => 'wpinv_city',
1636 1636
                                 'name'          => 'wpinv_city',
1637 1637
                                 'value'         => $billing_details['city'],
1638 1638
                                 'class'         => 'wpi-input form-control',
1639
-                                'placeholder'   => __( 'City', 'invoicing' ),
1640
-                                'required'      => (bool)wpinv_get_option( 'city_mandatory' ),
1641
-                            ) );
1639
+                                'placeholder'   => __('City', 'invoicing'),
1640
+                                'required'      => (bool)wpinv_get_option('city_mandatory'),
1641
+                            ));
1642 1642
                         ?>
1643 1643
                     </p>
1644 1644
                     <p id="wpinv_country_box" class="wpi-cart-field wpi-col2 wpi-colf">
1645
-                        <label for="wpinv_country" class="wpi-label"><?php _e( 'Country', 'invoicing' );?><?php if ( wpinv_get_option( 'country_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label>
1646
-                        <?php echo wpinv_html_select( array(
1645
+                        <label for="wpinv_country" class="wpi-label"><?php _e('Country', 'invoicing'); ?><?php if (wpinv_get_option('country_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label>
1646
+                        <?php echo wpinv_html_select(array(
1647 1647
                             'options'          => wpinv_get_country_list(),
1648 1648
                             'name'             => 'wpinv_country',
1649 1649
                             'id'               => 'wpinv_country',
@@ -1651,16 +1651,16 @@  discard block
 block discarded – undo
1651 1651
                             'show_option_all'  => false,
1652 1652
                             'show_option_none' => false,
1653 1653
                             'class'            => 'wpi-input form-control',
1654
-                            'placeholder'      => __( 'Choose a country', 'invoicing' ),
1655
-                            'required'         => (bool)wpinv_get_option( 'country_mandatory' ),
1656
-                        ) ); ?>
1654
+                            'placeholder'      => __('Choose a country', 'invoicing'),
1655
+                            'required'         => (bool)wpinv_get_option('country_mandatory'),
1656
+                        )); ?>
1657 1657
                     </p>
1658 1658
                     <p id="wpinv_state_box" class="wpi-cart-field wpi-col2 wpi-coll">
1659
-                        <label for="wpinv_state" class="wpi-label"><?php _e( 'State / Province', 'invoicing' );?><?php if ( wpinv_get_option( 'state_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label>
1659
+                        <label for="wpinv_state" class="wpi-label"><?php _e('State / Province', 'invoicing'); ?><?php if (wpinv_get_option('state_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label>
1660 1660
                         <?php
1661
-                        $states = wpinv_get_country_states( $selected_country );
1662
-                        if( !empty( $states ) ) {
1663
-                            echo wpinv_html_select( array(
1661
+                        $states = wpinv_get_country_states($selected_country);
1662
+                        if (!empty($states)) {
1663
+                            echo wpinv_html_select(array(
1664 1664
                                 'options'          => $states,
1665 1665
                                 'name'             => 'wpinv_state',
1666 1666
                                 'id'               => 'wpinv_state',
@@ -1668,61 +1668,61 @@  discard block
 block discarded – undo
1668 1668
                                 'show_option_all'  => false,
1669 1669
                                 'show_option_none' => false,
1670 1670
                                 'class'            => 'wpi-input form-control',
1671
-                                'placeholder'      => __( 'Choose a state', 'invoicing' ),
1672
-                                'required'         => (bool)wpinv_get_option( 'state_mandatory' ),
1673
-                            ) );
1671
+                                'placeholder'      => __('Choose a state', 'invoicing'),
1672
+                                'required'         => (bool)wpinv_get_option('state_mandatory'),
1673
+                            ));
1674 1674
                         } else {
1675
-                            echo wpinv_html_text( array(
1675
+                            echo wpinv_html_text(array(
1676 1676
                                 'name'          => 'wpinv_state',
1677 1677
                                 'value'         => $billing_details['state'],
1678 1678
                                 'id'            => 'wpinv_state',
1679 1679
                                 'class'         => 'wpi-input form-control',
1680
-                                'placeholder'   => __( 'State / Province', 'invoicing' ),
1681
-                                'required'      => (bool)wpinv_get_option( 'state_mandatory' ),
1682
-                            ) );
1680
+                                'placeholder'   => __('State / Province', 'invoicing'),
1681
+                                'required'      => (bool)wpinv_get_option('state_mandatory'),
1682
+                            ));
1683 1683
                         }
1684 1684
                         ?>
1685 1685
                     </p>
1686 1686
                     <p class="wpi-cart-field wpi-col2 wpi-colf">
1687
-                        <label for="wpinv_zip" class="wpi-label"><?php _e( 'ZIP / Postcode', 'invoicing' );?><?php if ( wpinv_get_option( 'zip_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label>
1687
+                        <label for="wpinv_zip" class="wpi-label"><?php _e('ZIP / Postcode', 'invoicing'); ?><?php if (wpinv_get_option('zip_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label>
1688 1688
                         <?php
1689
-                        echo wpinv_html_text( array(
1689
+                        echo wpinv_html_text(array(
1690 1690
                                 'name'          => 'wpinv_zip',
1691 1691
                                 'value'         => $billing_details['zip'],
1692 1692
                                 'id'            => 'wpinv_zip',
1693 1693
                                 'class'         => 'wpi-input form-control',
1694
-                                'placeholder'   => __( 'ZIP / Postcode', 'invoicing' ),
1695
-                                'required'      => (bool)wpinv_get_option( 'zip_mandatory' ),
1696
-                            ) );
1694
+                                'placeholder'   => __('ZIP / Postcode', 'invoicing'),
1695
+                                'required'      => (bool)wpinv_get_option('zip_mandatory'),
1696
+                            ));
1697 1697
                         ?>
1698 1698
                     </p>
1699 1699
                     <p class="wpi-cart-field wpi-col2 wpi-coll">
1700
-                        <label for="wpinv_phone" class="wpi-label"><?php _e( 'Phone', 'invoicing' );?><?php if ( wpinv_get_option( 'phone_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label>
1700
+                        <label for="wpinv_phone" class="wpi-label"><?php _e('Phone', 'invoicing'); ?><?php if (wpinv_get_option('phone_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label>
1701 1701
                         <?php
1702
-                        echo wpinv_html_text( array(
1702
+                        echo wpinv_html_text(array(
1703 1703
                                 'id'            => 'wpinv_phone',
1704 1704
                                 'name'          => 'wpinv_phone',
1705 1705
                                 'value'         => $billing_details['phone'],
1706 1706
                                 'class'         => 'wpi-input form-control',
1707
-                                'placeholder'   => __( 'Phone', 'invoicing' ),
1708
-                                'required'      => (bool)wpinv_get_option( 'phone_mandatory' ),
1709
-                            ) );
1707
+                                'placeholder'   => __('Phone', 'invoicing'),
1708
+                                'required'      => (bool)wpinv_get_option('phone_mandatory'),
1709
+                            ));
1710 1710
                         ?>
1711 1711
                     </p>
1712
-                    <?php do_action( 'wpinv_checkout_billing_fields_last', $billing_details ); ?>
1712
+                    <?php do_action('wpinv_checkout_billing_fields_last', $billing_details); ?>
1713 1713
                     <div class="clearfix"></div>
1714 1714
                 </div>
1715 1715
             </div>
1716
-            <?php do_action( 'wpinv_after_billing_fields', $billing_details ); ?>
1716
+            <?php do_action('wpinv_after_billing_fields', $billing_details); ?>
1717 1717
         </div>
1718 1718
         <?php
1719 1719
     }
1720 1720
 }
1721
-add_action( 'wpinv_checkout_billing_info', 'wpinv_checkout_billing_info' );
1721
+add_action('wpinv_checkout_billing_info', 'wpinv_checkout_billing_info');
1722 1722
 
1723 1723
 function wpinv_checkout_hidden_fields() {
1724 1724
 ?>
1725
-    <?php if ( is_user_logged_in() ) { ?>
1725
+    <?php if (is_user_logged_in()) { ?>
1726 1726
     <input type="hidden" name="wpinv_user_id" value="<?php echo get_current_user_id(); ?>"/>
1727 1727
     <?php } ?>
1728 1728
     <input type="hidden" name="wpi_action" value="payment" />
@@ -1732,9 +1732,9 @@  discard block
 block discarded – undo
1732 1732
 function wpinv_checkout_button_purchase() {
1733 1733
     ob_start();
1734 1734
 ?>
1735
-    <input type="submit" class="btn btn-success wpinv-submit" id="wpinv-payment-button" data-value="<?php esc_attr_e( 'Proceed to Pay', 'invoicing' ) ?>" name="wpinv_payment" value="<?php esc_attr_e( 'Proceed to Pay', 'invoicing' ) ?>"/>
1735
+    <input type="submit" class="btn btn-success wpinv-submit" id="wpinv-payment-button" data-value="<?php esc_attr_e('Proceed to Pay', 'invoicing') ?>" name="wpinv_payment" value="<?php esc_attr_e('Proceed to Pay', 'invoicing') ?>"/>
1736 1736
 <?php
1737
-    return apply_filters( 'wpinv_checkout_button_purchase', ob_get_clean() );
1737
+    return apply_filters('wpinv_checkout_button_purchase', ob_get_clean());
1738 1738
 }
1739 1739
 
1740 1740
 function wpinv_checkout_total() {
@@ -1743,96 +1743,96 @@  discard block
 block discarded – undo
1743 1743
 <div id="wpinv_checkout_total" class="panel panel-info">
1744 1744
     <div class="panel-body">
1745 1745
     <?php
1746
-    do_action( 'wpinv_purchase_form_before_checkout_total' );
1746
+    do_action('wpinv_purchase_form_before_checkout_total');
1747 1747
     ?>
1748
-    <strong><?php _e( 'Invoice Total:', 'invoicing' ) ?></strong> <span class="wpinv-chdeckout-total"><?php echo $cart_total;?></span>
1748
+    <strong><?php _e('Invoice Total:', 'invoicing') ?></strong> <span class="wpinv-chdeckout-total"><?php echo $cart_total; ?></span>
1749 1749
     <?php
1750
-    do_action( 'wpinv_purchase_form_after_checkout_total' );
1750
+    do_action('wpinv_purchase_form_after_checkout_total');
1751 1751
     ?>
1752 1752
     </div>
1753 1753
 </div>
1754 1754
 <?php
1755 1755
 }
1756
-add_action( 'wpinv_checkout_form_bottom', 'wpinv_checkout_total', 9998 );
1756
+add_action('wpinv_checkout_form_bottom', 'wpinv_checkout_total', 9998);
1757 1757
 
1758 1758
 function wpinv_checkout_submit() {
1759 1759
 ?>
1760 1760
 <div id="wpinv_purchase_submit" class="panel panel-success">
1761 1761
     <div class="panel-body text-center">
1762 1762
     <?php
1763
-    do_action( 'wpinv_purchase_form_before_submit' );
1763
+    do_action('wpinv_purchase_form_before_submit');
1764 1764
     wpinv_checkout_hidden_fields();
1765 1765
     echo wpinv_checkout_button_purchase();
1766
-    do_action( 'wpinv_purchase_form_after_submit' );
1766
+    do_action('wpinv_purchase_form_after_submit');
1767 1767
     ?>
1768 1768
     </div>
1769 1769
 </div>
1770 1770
 <?php
1771 1771
 }
1772
-add_action( 'wpinv_checkout_form_bottom', 'wpinv_checkout_submit', 9999 );
1772
+add_action('wpinv_checkout_form_bottom', 'wpinv_checkout_submit', 9999);
1773 1773
 
1774
-function wpinv_receipt_billing_address( $invoice_id = 0 ) {
1775
-    $invoice = wpinv_get_invoice( $invoice_id );
1774
+function wpinv_receipt_billing_address($invoice_id = 0) {
1775
+    $invoice = wpinv_get_invoice($invoice_id);
1776 1776
     
1777
-    if ( empty( $invoice ) ) {
1777
+    if (empty($invoice)) {
1778 1778
         return NULL;
1779 1779
     }
1780 1780
     
1781 1781
     $billing_details = $invoice->get_user_info();
1782 1782
     $address_row = '';
1783
-    if ( $address = $billing_details['address'] ) {
1784
-        $address_row .= wpautop( wp_kses_post( $address ) );
1783
+    if ($address = $billing_details['address']) {
1784
+        $address_row .= wpautop(wp_kses_post($address));
1785 1785
     }
1786 1786
     
1787 1787
     $address_fields = array();
1788
-    if ( !empty( $billing_details['city'] ) ) {
1788
+    if (!empty($billing_details['city'])) {
1789 1789
         $address_fields[] = $billing_details['city'];
1790 1790
     }
1791 1791
     
1792
-    $billing_country = !empty( $billing_details['country'] ) ? $billing_details['country'] : '';
1793
-    if ( !empty( $billing_details['state'] ) ) {
1794
-        $address_fields[] = wpinv_state_name( $billing_details['state'], $billing_country );
1792
+    $billing_country = !empty($billing_details['country']) ? $billing_details['country'] : '';
1793
+    if (!empty($billing_details['state'])) {
1794
+        $address_fields[] = wpinv_state_name($billing_details['state'], $billing_country);
1795 1795
     }
1796 1796
     
1797
-    if ( !empty( $billing_country ) ) {
1798
-        $address_fields[] = wpinv_country_name( $billing_country );
1797
+    if (!empty($billing_country)) {
1798
+        $address_fields[] = wpinv_country_name($billing_country);
1799 1799
     }
1800 1800
     
1801
-    if ( !empty( $address_fields ) ) {
1802
-        $address_fields = implode( ", ", $address_fields );
1801
+    if (!empty($address_fields)) {
1802
+        $address_fields = implode(", ", $address_fields);
1803 1803
         
1804
-        if ( !empty( $billing_details['zip'] ) ) {
1804
+        if (!empty($billing_details['zip'])) {
1805 1805
             $address_fields .= ' ' . $billing_details['zip'];
1806 1806
         }
1807 1807
         
1808
-        $address_row .= wpautop( wp_kses_post( $address_fields ) );
1808
+        $address_row .= wpautop(wp_kses_post($address_fields));
1809 1809
     }
1810 1810
     ob_start();
1811 1811
     ?>
1812 1812
     <table class="table table-bordered table-sm wpi-billing-details">
1813 1813
         <tbody>
1814 1814
             <tr class="wpi-receipt-name">
1815
-                <th class="text-left"><?php _e( 'Name', 'invoicing' ); ?></th>
1816
-                <td><?php echo esc_html( trim( $billing_details['first_name'] . ' ' . $billing_details['last_name'] ) ) ;?></td>
1815
+                <th class="text-left"><?php _e('Name', 'invoicing'); ?></th>
1816
+                <td><?php echo esc_html(trim($billing_details['first_name'] . ' ' . $billing_details['last_name'])); ?></td>
1817 1817
             </tr>
1818 1818
             <tr class="wpi-receipt-email">
1819
-                <th class="text-left"><?php _e( 'Email', 'invoicing' ); ?></th>
1820
-                <td><?php echo $billing_details['email'] ;?></td>
1819
+                <th class="text-left"><?php _e('Email', 'invoicing'); ?></th>
1820
+                <td><?php echo $billing_details['email']; ?></td>
1821 1821
             </tr>
1822
-            <?php if ( $billing_details['company'] ) { ?>
1822
+            <?php if ($billing_details['company']) { ?>
1823 1823
             <tr class="wpi-receipt-company">
1824
-                <th class="text-left"><?php _e( 'Company', 'invoicing' ); ?></th>
1825
-                <td><?php echo esc_html( $billing_details['company'] ) ;?></td>
1824
+                <th class="text-left"><?php _e('Company', 'invoicing'); ?></th>
1825
+                <td><?php echo esc_html($billing_details['company']); ?></td>
1826 1826
             </tr>
1827 1827
             <?php } ?>
1828 1828
             <tr class="wpi-receipt-address">
1829
-                <th class="text-left"><?php _e( 'Address', 'invoicing' ); ?></th>
1830
-                <td><?php echo $address_row ;?></td>
1829
+                <th class="text-left"><?php _e('Address', 'invoicing'); ?></th>
1830
+                <td><?php echo $address_row; ?></td>
1831 1831
             </tr>
1832
-            <?php if ( $billing_details['phone'] ) { ?>
1832
+            <?php if ($billing_details['phone']) { ?>
1833 1833
             <tr class="wpi-receipt-phone">
1834
-                <th class="text-left"><?php _e( 'Phone', 'invoicing' ); ?></th>
1835
-                <td><?php echo esc_html( $billing_details['phone'] ) ;?></td>
1834
+                <th class="text-left"><?php _e('Phone', 'invoicing'); ?></th>
1835
+                <td><?php echo esc_html($billing_details['phone']); ?></td>
1836 1836
             </tr>
1837 1837
             <?php } ?>
1838 1838
         </tbody>
@@ -1840,103 +1840,103 @@  discard block
 block discarded – undo
1840 1840
     <?php
1841 1841
     $output = ob_get_clean();
1842 1842
     
1843
-    $output = apply_filters( 'wpinv_receipt_billing_address', $output, $invoice_id );
1843
+    $output = apply_filters('wpinv_receipt_billing_address', $output, $invoice_id);
1844 1844
 
1845 1845
     echo $output;
1846 1846
 }
1847 1847
 
1848
-function wpinv_filter_success_page_content( $content ) {
1849
-    if ( isset( $_GET['payment-confirm'] ) && wpinv_is_success_page() ) {
1850
-        if ( has_filter( 'wpinv_payment_confirm_' . sanitize_text_field( $_GET['payment-confirm'] ) ) ) {
1851
-            $content = apply_filters( 'wpinv_payment_confirm_' . sanitize_text_field( $_GET['payment-confirm'] ), $content );
1848
+function wpinv_filter_success_page_content($content) {
1849
+    if (isset($_GET['payment-confirm']) && wpinv_is_success_page()) {
1850
+        if (has_filter('wpinv_payment_confirm_' . sanitize_text_field($_GET['payment-confirm']))) {
1851
+            $content = apply_filters('wpinv_payment_confirm_' . sanitize_text_field($_GET['payment-confirm']), $content);
1852 1852
         }
1853 1853
     }
1854 1854
 
1855 1855
     return $content;
1856 1856
 }
1857
-add_filter( 'the_content', 'wpinv_filter_success_page_content', 99999 );
1857
+add_filter('the_content', 'wpinv_filter_success_page_content', 99999);
1858 1858
 
1859
-function wpinv_receipt_actions( $invoice ) {
1860
-    if ( !empty( $invoice ) ) {
1859
+function wpinv_receipt_actions($invoice) {
1860
+    if (!empty($invoice)) {
1861 1861
         $actions = array();
1862 1862
 
1863
-        if ( wpinv_user_can_view_invoice( $invoice->ID ) ) {
1864
-            $actions['print']   = array(
1865
-                'url'  => $invoice->get_view_url( true ),
1866
-                'name' => __( 'Print Invoice', 'invoicing' ),
1863
+        if (wpinv_user_can_view_invoice($invoice->ID)) {
1864
+            $actions['print'] = array(
1865
+                'url'  => $invoice->get_view_url(true),
1866
+                'name' => __('Print Invoice', 'invoicing'),
1867 1867
                 'class' => 'btn-primary',
1868 1868
             );
1869 1869
         }
1870 1870
 
1871
-        if ( is_user_logged_in() ) {
1871
+        if (is_user_logged_in()) {
1872 1872
             $actions['history'] = array(
1873 1873
                 'url'  => wpinv_get_history_page_uri(),
1874
-                'name' => __( 'Invoice History', 'invoicing' ),
1874
+                'name' => __('Invoice History', 'invoicing'),
1875 1875
                 'class' => 'btn-warning',
1876 1876
             );
1877 1877
         }
1878 1878
 
1879
-        $actions = apply_filters( 'wpinv_invoice_receipt_actions', $actions, $invoice );
1879
+        $actions = apply_filters('wpinv_invoice_receipt_actions', $actions, $invoice);
1880 1880
         
1881
-        if ( !empty( $actions ) ) {
1881
+        if (!empty($actions)) {
1882 1882
         ?>
1883 1883
         <div class="wpinv-receipt-actions text-right">
1884
-            <?php foreach ( $actions as $key => $action ) { $class = !empty($action['class']) ? sanitize_html_class( $action['class'] ) : ''; ?>
1885
-            <a href="<?php echo esc_url( $action['url'] );?>" class="btn btn-sm <?php echo $class . ' ' . sanitize_html_class( $key );?>" <?php echo ( !empty($action['attrs']) ? $action['attrs'] : '' ) ;?>><?php echo esc_html( $action['name'] );?></a>
1884
+            <?php foreach ($actions as $key => $action) { $class = !empty($action['class']) ? sanitize_html_class($action['class']) : ''; ?>
1885
+            <a href="<?php echo esc_url($action['url']); ?>" class="btn btn-sm <?php echo $class . ' ' . sanitize_html_class($key); ?>" <?php echo (!empty($action['attrs']) ? $action['attrs'] : ''); ?>><?php echo esc_html($action['name']); ?></a>
1886 1886
             <?php } ?>
1887 1887
         </div>
1888 1888
         <?php
1889 1889
         }
1890 1890
     }
1891 1891
 }
1892
-add_action( 'wpinv_receipt_start', 'wpinv_receipt_actions', -10, 1 );
1892
+add_action('wpinv_receipt_start', 'wpinv_receipt_actions', -10, 1);
1893 1893
 
1894
-function wpinv_invoice_link( $invoice_id ) {
1895
-    $invoice = wpinv_get_invoice( $invoice_id );
1894
+function wpinv_invoice_link($invoice_id) {
1895
+    $invoice = wpinv_get_invoice($invoice_id);
1896 1896
     
1897
-    if ( empty( $invoice ) ) {
1897
+    if (empty($invoice)) {
1898 1898
         return NULL;
1899 1899
     }
1900 1900
     
1901
-    $invoice_link = '<a href="' . esc_url( $invoice->get_view_url() ) . '">' . $invoice->get_number() . '</a>';
1901
+    $invoice_link = '<a href="' . esc_url($invoice->get_view_url()) . '">' . $invoice->get_number() . '</a>';
1902 1902
     
1903
-    return apply_filters( 'wpinv_get_invoice_link', $invoice_link, $invoice );
1903
+    return apply_filters('wpinv_get_invoice_link', $invoice_link, $invoice);
1904 1904
 }
1905 1905
 
1906
-function wpinv_invoice_subscription_details( $invoice ) {
1907
-    if ( !empty( $invoice ) && $invoice->is_recurring() && !wpinv_is_subscription_payment( $invoice ) ) {
1906
+function wpinv_invoice_subscription_details($invoice) {
1907
+    if (!empty($invoice) && $invoice->is_recurring() && !wpinv_is_subscription_payment($invoice)) {
1908 1908
         $total_payments = (int)$invoice->get_total_payments();
1909 1909
         $payments       = $invoice->get_child_payments();
1910 1910
         
1911 1911
         $subscription   = $invoice->get_subscription_data();
1912 1912
         
1913
-        if ( !( !empty( $subscription ) && !empty( $subscription['item_id'] ) ) ) {
1913
+        if (!(!empty($subscription) && !empty($subscription['item_id']))) {
1914 1914
             return;
1915 1915
         }
1916 1916
         
1917
-        $billing_cycle  = wpinv_get_billing_cycle( $subscription['initial_amount'], $subscription['recurring_amount'], $subscription['period'], $subscription['interval'], $subscription['bill_times'], $subscription['trial_period'], $subscription['trial_interval'], $invoice->get_currency() );
1918
-        $times_billed   = $total_payments . ' / ' . ( ( (int)$subscription['bill_times'] == 0 ) ? __( 'Until cancelled', 'invoicing' ) : $subscription['bill_times'] );
1917
+        $billing_cycle  = wpinv_get_billing_cycle($subscription['initial_amount'], $subscription['recurring_amount'], $subscription['period'], $subscription['interval'], $subscription['bill_times'], $subscription['trial_period'], $subscription['trial_interval'], $invoice->get_currency());
1918
+        $times_billed   = $total_payments . ' / ' . (((int)$subscription['bill_times'] == 0) ? __('Until cancelled', 'invoicing') : $subscription['bill_times']);
1919 1919
         
1920 1920
         $subscription_status = $invoice->get_subscription_status();
1921 1921
         
1922 1922
         $status_desc = '';
1923
-        if ( $subscription_status == 'trialing' && $trial_end_date = $invoice->get_trial_end_date() ) {
1924
-            $status_desc = wp_sprintf( __( 'Until: %s', 'invoicing' ), $trial_end_date );
1925
-        } else if ( $subscription_status == 'cancelled' && $cancelled_date = $invoice->get_cancelled_date() ) {
1926
-            $status_desc = wp_sprintf( __( 'On: %s', 'invoicing' ), $cancelled_date );
1923
+        if ($subscription_status == 'trialing' && $trial_end_date = $invoice->get_trial_end_date()) {
1924
+            $status_desc = wp_sprintf(__('Until: %s', 'invoicing'), $trial_end_date);
1925
+        } else if ($subscription_status == 'cancelled' && $cancelled_date = $invoice->get_cancelled_date()) {
1926
+            $status_desc = wp_sprintf(__('On: %s', 'invoicing'), $cancelled_date);
1927 1927
         }
1928 1928
         $status_desc = $status_desc != '' ? '<span class="meta">' . $status_desc . '</span>' : '';
1929 1929
         ?>
1930 1930
         <div class="wpinv-subscriptions-details">
1931
-            <h3 class="wpinv-subscriptions-t"><?php echo apply_filters( 'wpinv_subscription_details_title', __( 'Subscription Details', 'invoicing' ) ); ?></h3>
1931
+            <h3 class="wpinv-subscriptions-t"><?php echo apply_filters('wpinv_subscription_details_title', __('Subscription Details', 'invoicing')); ?></h3>
1932 1932
             <table class="table">
1933 1933
                 <thead>
1934 1934
                     <tr>
1935
-                        <th><?php _e( 'Billing Cycle', 'invoicing' ) ;?></th>
1936
-                        <th><?php _e( 'Start Date', 'invoicing' ) ;?></th>
1937
-                        <th><?php _e( 'Expiration Date', 'invoicing' ) ;?></th>
1938
-                        <th class="text-center"><?php _e( 'Times Billed', 'invoicing' ) ;?></th>
1939
-                        <th class="text-center"><?php _e( 'Status', 'invoicing' ) ;?></th>
1935
+                        <th><?php _e('Billing Cycle', 'invoicing'); ?></th>
1936
+                        <th><?php _e('Start Date', 'invoicing'); ?></th>
1937
+                        <th><?php _e('Expiration Date', 'invoicing'); ?></th>
1938
+                        <th class="text-center"><?php _e('Times Billed', 'invoicing'); ?></th>
1939
+                        <th class="text-center"><?php _e('Status', 'invoicing'); ?></th>
1940 1940
                     </tr>
1941 1941
                 </thead>
1942 1942
                 <tbody>
@@ -1945,32 +1945,32 @@  discard block
 block discarded – undo
1945 1945
                         <td><?php echo $invoice->get_subscription_start(); ?></td>
1946 1946
                         <td><?php echo $invoice->get_subscription_end(); ?></td>
1947 1947
                         <td class="text-center"><?php echo $times_billed; ?></td>
1948
-                        <td class="text-center wpi-sub-status"><?php echo $invoice->get_subscription_status_label() ;?>
1948
+                        <td class="text-center wpi-sub-status"><?php echo $invoice->get_subscription_status_label(); ?>
1949 1949
                         <?php echo $status_desc; ?>
1950 1950
                         </td>
1951 1951
                     </tr>
1952 1952
                 </tbody>
1953 1953
             </table>
1954 1954
         </div>
1955
-        <?php if ( !empty( $payments ) ) { ?>
1955
+        <?php if (!empty($payments)) { ?>
1956 1956
         <div class="wpinv-renewal-payments">
1957
-            <h3 class="wpinv-renewals-t"><?php echo apply_filters( 'wpinv_renewal_payments_title', __( 'Renewal Payments', 'invoicing' ) ); ?></h3>
1957
+            <h3 class="wpinv-renewals-t"><?php echo apply_filters('wpinv_renewal_payments_title', __('Renewal Payments', 'invoicing')); ?></h3>
1958 1958
             <table class="table">
1959 1959
                 <thead>
1960 1960
                     <tr>
1961 1961
                         <th>#</th>
1962
-                        <th><?php _e( 'Invoice', 'invoicing' ) ;?></th>
1963
-                        <th><?php _e( 'Date', 'invoicing' ) ;?></th>
1964
-                        <th class="text-right"><?php _e( 'Amount', 'invoicing' ) ;?></th>
1962
+                        <th><?php _e('Invoice', 'invoicing'); ?></th>
1963
+                        <th><?php _e('Date', 'invoicing'); ?></th>
1964
+                        <th class="text-right"><?php _e('Amount', 'invoicing'); ?></th>
1965 1965
                     </tr>
1966 1966
                 </thead>
1967 1967
                 <tbody>
1968
-                    <?php foreach ( $payments as $key => $invoice_id ) { ?>
1968
+                    <?php foreach ($payments as $key => $invoice_id) { ?>
1969 1969
                     <tr>
1970
-                        <th scope="row"><?php echo ( $key + 1 );?></th>
1971
-                        <td><?php echo wpinv_invoice_link( $invoice_id ) ;?></td>
1972
-                        <td><?php echo wpinv_get_invoice_date( $invoice_id ); ?></td>
1973
-                        <td class="text-right"><?php echo wpinv_payment_total( $invoice_id, true ); ?></td>
1970
+                        <th scope="row"><?php echo ($key + 1); ?></th>
1971
+                        <td><?php echo wpinv_invoice_link($invoice_id); ?></td>
1972
+                        <td><?php echo wpinv_get_invoice_date($invoice_id); ?></td>
1973
+                        <td class="text-right"><?php echo wpinv_payment_total($invoice_id, true); ?></td>
1974 1974
                     </tr>
1975 1975
                     <?php } ?>
1976 1976
                     <tr><td colspan="4" style="padding:0"></td></tr>
@@ -1982,52 +1982,52 @@  discard block
 block discarded – undo
1982 1982
     }
1983 1983
 }
1984 1984
 
1985
-function wpinv_cart_total_label( $label, $invoice ) {
1986
-    if ( empty( $invoice ) ) {
1985
+function wpinv_cart_total_label($label, $invoice) {
1986
+    if (empty($invoice)) {
1987 1987
         return $label;
1988 1988
     }
1989 1989
     
1990 1990
     $prefix_label = '';
1991
-    if ( $invoice->is_parent() && $item_id = $invoice->get_recurring() ) {        
1992
-        $prefix_label   = '<span class="label label-primary label-recurring">' . __( 'Recurring Payment', 'invoicing' ) . '</span> ' . wpinv_subscription_payment_desc( $invoice );
1993
-    } else if ( $invoice->is_renewal() ) {
1994
-        $prefix_label   = '<span class="label label-primary label-renewal">' . __( 'Renewal Payment', 'invoicing' ) . '</span> ';        
1991
+    if ($invoice->is_parent() && $item_id = $invoice->get_recurring()) {        
1992
+        $prefix_label   = '<span class="label label-primary label-recurring">' . __('Recurring Payment', 'invoicing') . '</span> ' . wpinv_subscription_payment_desc($invoice);
1993
+    } else if ($invoice->is_renewal()) {
1994
+        $prefix_label   = '<span class="label label-primary label-renewal">' . __('Renewal Payment', 'invoicing') . '</span> ';        
1995 1995
     }
1996 1996
     
1997
-    if ( $prefix_label != '' ) {
1998
-        $label  = '<span class="wpinv-cart-sub-desc">' . $prefix_label . '</span> ' . $label;
1997
+    if ($prefix_label != '') {
1998
+        $label = '<span class="wpinv-cart-sub-desc">' . $prefix_label . '</span> ' . $label;
1999 1999
     }
2000 2000
     
2001 2001
     return $label;
2002 2002
 }
2003
-add_filter( 'wpinv_cart_total_label', 'wpinv_cart_total_label', 10, 2 );
2004
-add_filter( 'wpinv_email_cart_total_label', 'wpinv_cart_total_label', 10, 2 );
2005
-add_filter( 'wpinv_print_cart_total_label', 'wpinv_cart_total_label', 10, 2 );
2003
+add_filter('wpinv_cart_total_label', 'wpinv_cart_total_label', 10, 2);
2004
+add_filter('wpinv_email_cart_total_label', 'wpinv_cart_total_label', 10, 2);
2005
+add_filter('wpinv_print_cart_total_label', 'wpinv_cart_total_label', 10, 2);
2006 2006
 
2007
-add_action( 'wpinv_invoice_print_middle', 'wpinv_invoice_subscription_details', 10, 1 );
2007
+add_action('wpinv_invoice_print_middle', 'wpinv_invoice_subscription_details', 10, 1);
2008 2008
 
2009
-function wpinv_invoice_print_description( $invoice ) {
2010
-    if ( empty( $invoice ) ) {
2009
+function wpinv_invoice_print_description($invoice) {
2010
+    if (empty($invoice)) {
2011 2011
         return NULL;
2012 2012
     }
2013
-    if ( $description = wpinv_get_invoice_description( $invoice->ID ) ) {
2013
+    if ($description = wpinv_get_invoice_description($invoice->ID)) {
2014 2014
         ?>
2015 2015
         <div class="row wpinv-lower">
2016 2016
             <div class="col-sm-12 wpinv-description">
2017
-                <?php echo wpautop( $description ); ?>
2017
+                <?php echo wpautop($description); ?>
2018 2018
             </div>
2019 2019
         </div>
2020 2020
         <?php
2021 2021
     }
2022 2022
 }
2023
-add_action( 'wpinv_invoice_print_middle', 'wpinv_invoice_print_description', 10.1, 1 );
2023
+add_action('wpinv_invoice_print_middle', 'wpinv_invoice_print_description', 10.1, 1);
2024 2024
 
2025
-function wpinv_invoice_print_payment_info( $invoice ) {
2026
-    if ( empty( $invoice ) ) {
2025
+function wpinv_invoice_print_payment_info($invoice) {
2026
+    if (empty($invoice)) {
2027 2027
         return NULL;
2028 2028
     }
2029 2029
     
2030
-    if ( $payments_info = wpinv_display_payments_info( $invoice->ID, false ) ) {
2030
+    if ($payments_info = wpinv_display_payments_info($invoice->ID, false)) {
2031 2031
         ?>
2032 2032
         <div class="row wpinv-payments">
2033 2033
             <div class="col-sm-12">
@@ -2039,43 +2039,43 @@  discard block
 block discarded – undo
2039 2039
 }
2040 2040
 // add_action( 'wpinv_invoice_print_after_line_items', 'wpinv_invoice_print_payment_info', 10, 1 );
2041 2041
 
2042
-function wpinv_get_invoice_note_line_item( $note, $echo = true ) {
2043
-    if ( empty( $note ) ) {
2042
+function wpinv_get_invoice_note_line_item($note, $echo = true) {
2043
+    if (empty($note)) {
2044 2044
         return NULL;
2045 2045
     }
2046 2046
     
2047
-    if ( is_int( $note ) ) {
2048
-        $note = get_comment( $note );
2047
+    if (is_int($note)) {
2048
+        $note = get_comment($note);
2049 2049
     }
2050 2050
     
2051
-    if ( !( is_object( $note ) && is_a( $note, 'WP_Comment' ) ) ) {
2051
+    if (!(is_object($note) && is_a($note, 'WP_Comment'))) {
2052 2052
         return NULL;
2053 2053
     }
2054 2054
     
2055
-    $note_classes   = array( 'note' );
2056
-    $note_classes[] = get_comment_meta( $note->comment_ID, '_wpi_customer_note', true ) ? 'customer-note' : '';
2057
-    $note_classes[] = $note->comment_author === __( 'System', 'invoicing' ) ? 'system-note' : '';
2058
-    $note_classes   = apply_filters( 'wpinv_invoice_note_class', array_filter( $note_classes ), $note );
2059
-    $note_classes   = !empty( $note_classes ) ? implode( ' ', $note_classes ) : '';
2055
+    $note_classes   = array('note');
2056
+    $note_classes[] = get_comment_meta($note->comment_ID, '_wpi_customer_note', true) ? 'customer-note' : '';
2057
+    $note_classes[] = $note->comment_author === __('System', 'invoicing') ? 'system-note' : '';
2058
+    $note_classes   = apply_filters('wpinv_invoice_note_class', array_filter($note_classes), $note);
2059
+    $note_classes   = !empty($note_classes) ? implode(' ', $note_classes) : '';
2060 2060
     
2061 2061
     ob_start();
2062 2062
     ?>
2063
-    <li rel="<?php echo absint( $note->comment_ID ) ; ?>" class="<?php echo esc_attr( $note_classes ); ?>">
2063
+    <li rel="<?php echo absint($note->comment_ID); ?>" class="<?php echo esc_attr($note_classes); ?>">
2064 2064
         <div class="note_content">
2065
-            <?php echo wpautop( wptexturize( wp_kses_post( $note->comment_content ) ) ); ?>
2065
+            <?php echo wpautop(wptexturize(wp_kses_post($note->comment_content))); ?>
2066 2066
         </div>
2067 2067
         <p class="meta">
2068
-            <abbr class="exact-date" title="<?php echo $note->comment_date; ?>"><?php printf( __( '%1$s - %2$s at %3$s', 'invoicing' ), $note->comment_author, date_i18n( get_option( 'date_format' ), strtotime( $note->comment_date ) ), date_i18n( get_option( 'time_format' ), strtotime( $note->comment_date ) ) ); ?></abbr>&nbsp;&nbsp;
2069
-            <?php if($note->comment_author !== 'System') {?>
2070
-                <a href="#" class="delete_note"><?php _e( 'Delete note', 'invoicing' ); ?></a>
2068
+            <abbr class="exact-date" title="<?php echo $note->comment_date; ?>"><?php printf(__('%1$s - %2$s at %3$s', 'invoicing'), $note->comment_author, date_i18n(get_option('date_format'), strtotime($note->comment_date)), date_i18n(get_option('time_format'), strtotime($note->comment_date))); ?></abbr>&nbsp;&nbsp;
2069
+            <?php if ($note->comment_author !== 'System') {?>
2070
+                <a href="#" class="delete_note"><?php _e('Delete note', 'invoicing'); ?></a>
2071 2071
             <?php } ?>
2072 2072
         </p>
2073 2073
     </li>
2074 2074
     <?php
2075 2075
     $note_content = ob_get_clean();
2076
-    $note_content = apply_filters( 'wpinv_get_invoice_note_line_item', $note_content, $note, $echo );
2076
+    $note_content = apply_filters('wpinv_get_invoice_note_line_item', $note_content, $note, $echo);
2077 2077
     
2078
-    if ( $echo ) {
2078
+    if ($echo) {
2079 2079
         echo $note_content;
2080 2080
     } else {
2081 2081
         return $note_content;
@@ -2085,33 +2085,33 @@  discard block
 block discarded – undo
2085 2085
 function wpinv_invalid_invoice_content() {
2086 2086
     global $post;
2087 2087
 
2088
-    $invoice = wpinv_get_invoice( $post->ID );
2088
+    $invoice = wpinv_get_invoice($post->ID);
2089 2089
 
2090
-    $error = __( 'This invoice is only viewable by clicking on the invoice link that sent to you via email.', 'invoicing' );
2091
-    if ( !empty( $invoice->ID ) && $invoice->has_status( array_keys( wpinv_get_invoice_statuses() ) ) ) {
2092
-        if ( is_user_logged_in() ) {
2093
-            if ( wpinv_require_login_to_checkout() ) {
2094
-                if ( isset( $_GET['invoice_key'] ) && $_GET['invoice_key'] === $invoice->get_key() ) {
2095
-                    $error = __( 'You are not allowed to view this invoice.', 'invoicing' );
2090
+    $error = __('This invoice is only viewable by clicking on the invoice link that sent to you via email.', 'invoicing');
2091
+    if (!empty($invoice->ID) && $invoice->has_status(array_keys(wpinv_get_invoice_statuses()))) {
2092
+        if (is_user_logged_in()) {
2093
+            if (wpinv_require_login_to_checkout()) {
2094
+                if (isset($_GET['invoice_key']) && $_GET['invoice_key'] === $invoice->get_key()) {
2095
+                    $error = __('You are not allowed to view this invoice.', 'invoicing');
2096 2096
                 }
2097 2097
             }
2098 2098
         } else {
2099
-            if ( wpinv_require_login_to_checkout() ) {
2100
-                if ( isset( $_GET['invoice_key'] ) && $_GET['invoice_key'] === $invoice->get_key() ) {
2101
-                    $error = __( 'You must be logged in to view this invoice.', 'invoicing' );
2099
+            if (wpinv_require_login_to_checkout()) {
2100
+                if (isset($_GET['invoice_key']) && $_GET['invoice_key'] === $invoice->get_key()) {
2101
+                    $error = __('You must be logged in to view this invoice.', 'invoicing');
2102 2102
                 }
2103 2103
             }
2104 2104
         }
2105 2105
     } else {
2106
-        $error = __( 'This invoice is deleted or does not exist.', 'invoicing' );
2106
+        $error = __('This invoice is deleted or does not exist.', 'invoicing');
2107 2107
     }
2108 2108
     ?>
2109 2109
     <div class="row wpinv-row-invalid">
2110 2110
         <div class="col-md-6 col-md-offset-3 wpinv-message error">
2111
-            <h3><?php _e( 'Access Denied', 'invoicing' ); ?></h3>
2111
+            <h3><?php _e('Access Denied', 'invoicing'); ?></h3>
2112 2112
             <p class="wpinv-msg-text"><?php echo $error; ?></p>
2113 2113
         </div>
2114 2114
     </div>
2115 2115
     <?php
2116 2116
 }
2117
-add_action( 'wpinv_invalid_invoice_content', 'wpinv_invalid_invoice_content' );
2118 2117
\ No newline at end of file
2118
+add_action('wpinv_invalid_invoice_content', 'wpinv_invalid_invoice_content');
2119 2119
\ No newline at end of file
Please login to merge, or discard this patch.
includes/libraries/wpinv-euvat/class-wpinv-euvat.php 1 patch
Spacing   +710 added lines, -710 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly.
3
-if (!defined( 'ABSPATH' ) ) exit;
3
+if (!defined('ABSPATH')) exit;
4 4
 
5 5
 class WPInv_EUVat {
6 6
     private static $is_ajax = false;
@@ -8,7 +8,7 @@  discard block
 block discarded – undo
8 8
     private static $instance = false;
9 9
     
10 10
     public static function get_instance() {
11
-        if ( !self::$instance ) {
11
+        if (!self::$instance) {
12 12
             self::$instance = new self();
13 13
             self::$instance->actions();
14 14
         }
@@ -17,132 +17,132 @@  discard block
 block discarded – undo
17 17
     }
18 18
     
19 19
     public function __construct() {
20
-        self::$is_ajax          = defined( 'DOING_AJAX' ) && DOING_AJAX;
20
+        self::$is_ajax          = defined('DOING_AJAX') && DOING_AJAX;
21 21
         self::$default_country  = wpinv_get_default_country();
22 22
     }
23 23
     
24 24
     public static function actions() {
25
-        if ( is_admin() ) {
26
-            add_action( 'admin_enqueue_scripts', array( self::$instance, 'enqueue_admin_scripts' ) );
27
-            add_action( 'wpinv_settings_sections_taxes', array( self::$instance, 'section_vat_settings' ) ); 
28
-            add_action( 'wpinv_settings_taxes', array( self::$instance, 'vat_settings' ) );
29
-            add_filter( 'wpinv_settings_taxes-vat_sanitize', array( self::$instance, 'sanitize_vat_settings' ) );
30
-            add_filter( 'wpinv_settings_taxes-vat_rates_sanitize', array( self::$instance, 'sanitize_vat_rates' ) );
31
-            add_action( 'wp_ajax_wpinv_add_vat_class', array( self::$instance, 'add_class' ) );
32
-            add_action( 'wp_ajax_nopriv_wpinv_add_vat_class', array( self::$instance, 'add_class' ) );
33
-            add_action( 'wp_ajax_wpinv_delete_vat_class', array( self::$instance, 'delete_class' ) );
34
-            add_action( 'wp_ajax_nopriv_wpinv_delete_vat_class', array( self::$instance, 'delete_class' ) );
35
-            add_action( 'wp_ajax_wpinv_update_vat_rates', array( self::$instance, 'update_eu_rates' ) );
36
-            add_action( 'wp_ajax_nopriv_wpinv_update_vat_rates', array( self::$instance, 'update_eu_rates' ) );
37
-            add_action( 'wp_ajax_wpinv_geoip2', array( self::$instance, 'geoip2_download_database' ) );
38
-            add_action( 'wp_ajax_nopriv_wpinv_geoip2', array( self::$instance, 'geoip2_download_database' ) );
39
-        }
40
-        
41
-        add_action( 'wp_enqueue_scripts', array( self::$instance, 'enqueue_vat_scripts' ) );
42
-        add_filter( 'wpinv_default_billing_country', array( self::$instance, 'get_user_country' ), 10 );
43
-        add_filter( 'wpinv_get_user_country', array( self::$instance, 'set_user_country' ), 10 );
44
-        add_action( 'wp_ajax_wpinv_vat_validate', array( self::$instance, 'ajax_vat_validate' ) );
45
-        add_action( 'wp_ajax_nopriv_wpinv_vat_validate', array( self::$instance, 'ajax_vat_validate' ) );
46
-        add_action( 'wp_ajax_wpinv_vat_reset', array( self::$instance, 'ajax_vat_reset' ) );
47
-        add_action( 'wp_ajax_nopriv_wpinv_vat_reset', array( self::$instance, 'ajax_vat_reset' ) );
48
-        add_action( 'wpinv_invoice_print_after_line_items', array( self::$instance, 'show_vat_notice' ), 999, 1 );
49
-        if ( wpinv_use_taxes() ) {
50
-            add_action( 'wpinv_after_billing_fields', array( self::$instance, 'checkout_vat_fields' ) );
51
-            if ( self::allow_vat_rules() ) {
52
-                add_action( 'wpinv_checkout_error_checks', array( self::$instance, 'checkout_vat_validate' ), 10, 2 );
53
-                add_filter( 'wpinv_tax_rate', array( self::$instance, 'get_rate' ), 10, 4 );
25
+        if (is_admin()) {
26
+            add_action('admin_enqueue_scripts', array(self::$instance, 'enqueue_admin_scripts'));
27
+            add_action('wpinv_settings_sections_taxes', array(self::$instance, 'section_vat_settings')); 
28
+            add_action('wpinv_settings_taxes', array(self::$instance, 'vat_settings'));
29
+            add_filter('wpinv_settings_taxes-vat_sanitize', array(self::$instance, 'sanitize_vat_settings'));
30
+            add_filter('wpinv_settings_taxes-vat_rates_sanitize', array(self::$instance, 'sanitize_vat_rates'));
31
+            add_action('wp_ajax_wpinv_add_vat_class', array(self::$instance, 'add_class'));
32
+            add_action('wp_ajax_nopriv_wpinv_add_vat_class', array(self::$instance, 'add_class'));
33
+            add_action('wp_ajax_wpinv_delete_vat_class', array(self::$instance, 'delete_class'));
34
+            add_action('wp_ajax_nopriv_wpinv_delete_vat_class', array(self::$instance, 'delete_class'));
35
+            add_action('wp_ajax_wpinv_update_vat_rates', array(self::$instance, 'update_eu_rates'));
36
+            add_action('wp_ajax_nopriv_wpinv_update_vat_rates', array(self::$instance, 'update_eu_rates'));
37
+            add_action('wp_ajax_wpinv_geoip2', array(self::$instance, 'geoip2_download_database'));
38
+            add_action('wp_ajax_nopriv_wpinv_geoip2', array(self::$instance, 'geoip2_download_database'));
39
+        }
40
+        
41
+        add_action('wp_enqueue_scripts', array(self::$instance, 'enqueue_vat_scripts'));
42
+        add_filter('wpinv_default_billing_country', array(self::$instance, 'get_user_country'), 10);
43
+        add_filter('wpinv_get_user_country', array(self::$instance, 'set_user_country'), 10);
44
+        add_action('wp_ajax_wpinv_vat_validate', array(self::$instance, 'ajax_vat_validate'));
45
+        add_action('wp_ajax_nopriv_wpinv_vat_validate', array(self::$instance, 'ajax_vat_validate'));
46
+        add_action('wp_ajax_wpinv_vat_reset', array(self::$instance, 'ajax_vat_reset'));
47
+        add_action('wp_ajax_nopriv_wpinv_vat_reset', array(self::$instance, 'ajax_vat_reset'));
48
+        add_action('wpinv_invoice_print_after_line_items', array(self::$instance, 'show_vat_notice'), 999, 1);
49
+        if (wpinv_use_taxes()) {
50
+            add_action('wpinv_after_billing_fields', array(self::$instance, 'checkout_vat_fields'));
51
+            if (self::allow_vat_rules()) {
52
+                add_action('wpinv_checkout_error_checks', array(self::$instance, 'checkout_vat_validate'), 10, 2);
53
+                add_filter('wpinv_tax_rate', array(self::$instance, 'get_rate'), 10, 4);
54 54
             }
55 55
         }
56 56
     }        
57 57
     
58
-    public static function get_eu_states( $sort = true ) {
59
-        $eu_states = array( 'AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GB', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE' );
60
-        if ( $sort ) {
61
-            $sort = sort( $eu_states );
58
+    public static function get_eu_states($sort = true) {
59
+        $eu_states = array('AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GB', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE');
60
+        if ($sort) {
61
+            $sort = sort($eu_states);
62 62
         }
63 63
         
64
-        return apply_filters( 'wpinv_get_eu_states', $eu_states, $sort );
64
+        return apply_filters('wpinv_get_eu_states', $eu_states, $sort);
65 65
     }
66 66
     
67
-    public static function get_gst_countries( $sort = true ) {
68
-        $gst_countries  = array( 'AU', 'NZ', 'CA', 'CN' );
67
+    public static function get_gst_countries($sort = true) {
68
+        $gst_countries = array('AU', 'NZ', 'CA', 'CN');
69 69
         
70
-        if ( $sort ) {
71
-            $sort = sort( $gst_countries );
70
+        if ($sort) {
71
+            $sort = sort($gst_countries);
72 72
         }
73 73
         
74
-        return apply_filters( 'wpinv_get_gst_countries', $gst_countries, $sort );
74
+        return apply_filters('wpinv_get_gst_countries', $gst_countries, $sort);
75 75
     }
76 76
     
77
-    public static function is_eu_state( $country_code ) {
78
-        $return = !empty( $country_code ) && in_array( strtoupper( $country_code ), self::get_eu_states() ) ? true : false;
77
+    public static function is_eu_state($country_code) {
78
+        $return = !empty($country_code) && in_array(strtoupper($country_code), self::get_eu_states()) ? true : false;
79 79
                 
80
-        return apply_filters( 'wpinv_is_eu_state', $return, $country_code );
80
+        return apply_filters('wpinv_is_eu_state', $return, $country_code);
81 81
     }
82 82
     
83
-    public static function is_gst_country( $country_code ) {
84
-        $return = !empty( $country_code ) && in_array( strtoupper( $country_code ), self::get_gst_countries() ) ? true : false;
83
+    public static function is_gst_country($country_code) {
84
+        $return = !empty($country_code) && in_array(strtoupper($country_code), self::get_gst_countries()) ? true : false;
85 85
                 
86
-        return apply_filters( 'wpinv_is_gst_country', $return, $country_code );
86
+        return apply_filters('wpinv_is_gst_country', $return, $country_code);
87 87
     }
88 88
     
89 89
     public static function enqueue_vat_scripts() {
90
-        $suffix     = '';//defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
90
+        $suffix = ''; //defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
91 91
         
92
-        wp_register_script( 'wpinv-vat-validation-script', WPINV_PLUGIN_URL . 'assets/js/jsvat' . $suffix . '.js', array( 'jquery' ),  WPINV_VERSION );
93
-        wp_register_script( 'wpinv-vat-script', WPINV_PLUGIN_URL . 'assets/js/euvat' . $suffix . '.js', array( 'jquery' ),  WPINV_VERSION );
92
+        wp_register_script('wpinv-vat-validation-script', WPINV_PLUGIN_URL . 'assets/js/jsvat' . $suffix . '.js', array('jquery'), WPINV_VERSION);
93
+        wp_register_script('wpinv-vat-script', WPINV_PLUGIN_URL . 'assets/js/euvat' . $suffix . '.js', array('jquery'), WPINV_VERSION);
94 94
         
95
-        $vat_name   = self::get_vat_name();
95
+        $vat_name = self::get_vat_name();
96 96
         
97 97
         $vars = array();
98 98
         $vars['UseTaxes'] = wpinv_use_taxes();
99 99
         $vars['EUStates'] = self::get_eu_states();
100
-        $vars['NoRateSet'] = __( 'You have not set a rate. Do you want to continue?', 'invoicing' );
101
-        $vars['EmptyCompany'] = __( 'Please enter your registered company name!', 'invoicing' );
102
-        $vars['EmptyVAT'] = wp_sprintf( __( 'Please enter your %s number!', 'invoicing' ), $vat_name );
103
-        $vars['TotalsRefreshed'] = wp_sprintf( __( 'The invoice totals will be refreshed to update the %s.', 'invoicing' ), $vat_name );
104
-        $vars['ErrValidateVAT'] = wp_sprintf( __( 'Fail to validate the %s number!', 'invoicing' ), $vat_name );
105
-        $vars['ErrResetVAT'] = wp_sprintf( __( 'Fail to reset the %s number!', 'invoicing' ), $vat_name );
106
-        $vars['ErrInvalidVat'] = wp_sprintf( __( 'The %s number supplied does not have a valid format!', 'invoicing' ), $vat_name );
107
-        $vars['ErrInvalidResponse'] = __( 'An invalid response has been received from the server!', 'invoicing' );
100
+        $vars['NoRateSet'] = __('You have not set a rate. Do you want to continue?', 'invoicing');
101
+        $vars['EmptyCompany'] = __('Please enter your registered company name!', 'invoicing');
102
+        $vars['EmptyVAT'] = wp_sprintf(__('Please enter your %s number!', 'invoicing'), $vat_name);
103
+        $vars['TotalsRefreshed'] = wp_sprintf(__('The invoice totals will be refreshed to update the %s.', 'invoicing'), $vat_name);
104
+        $vars['ErrValidateVAT'] = wp_sprintf(__('Fail to validate the %s number!', 'invoicing'), $vat_name);
105
+        $vars['ErrResetVAT'] = wp_sprintf(__('Fail to reset the %s number!', 'invoicing'), $vat_name);
106
+        $vars['ErrInvalidVat'] = wp_sprintf(__('The %s number supplied does not have a valid format!', 'invoicing'), $vat_name);
107
+        $vars['ErrInvalidResponse'] = __('An invalid response has been received from the server!', 'invoicing');
108 108
         $vars['ApplyVATRules'] = $vars['UseTaxes'] ? self::allow_vat_rules() : false;
109 109
         $vars['HideVatFields'] = $vars['ApplyVATRules'] ? self::hide_vat_fields() : true;
110
-        $vars['ErrResponse'] = __( 'The request response is invalid!', 'invoicing' );
111
-        $vars['ErrRateResponse'] = __( 'The get rate request response is invalid', 'invoicing' );
112
-        $vars['PageRefresh'] = __( 'The page will be refreshed in 10 seconds to show the new options.', 'invoicing' );
113
-        $vars['RequestResponseNotValidJSON'] = __( 'The get rate request response is not valid JSON', 'invoicing' );
114
-        $vars['GetRateRequestFailed'] = __( 'The get rate request failed: ', 'invoicing' );
115
-        $vars['NoRateInformationInResponse'] = __( 'The get rate request response does not contain any rate information', 'invoicing' );
116
-        $vars['RatesUpdated'] = __( 'The rates have been updated. Press the save button to record these new rates.', 'invoicing' );
117
-        $vars['IPAddressInformation'] = __( 'IP Address Information', 'invoicing' );
118
-        $vars['VatValidating'] = wp_sprintf( __( 'Validating %s number...', 'invoicing' ), $vat_name );
119
-        $vars['VatReseting'] = __( 'Reseting...', 'invoicing' );
120
-        $vars['VatValidated'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name );
121
-        $vars['VatNotValidated'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name );
122
-        $vars['ConfirmDeleteClass'] = __( 'Are you sure you wish to delete this rates class?', 'invoicing' );
110
+        $vars['ErrResponse'] = __('The request response is invalid!', 'invoicing');
111
+        $vars['ErrRateResponse'] = __('The get rate request response is invalid', 'invoicing');
112
+        $vars['PageRefresh'] = __('The page will be refreshed in 10 seconds to show the new options.', 'invoicing');
113
+        $vars['RequestResponseNotValidJSON'] = __('The get rate request response is not valid JSON', 'invoicing');
114
+        $vars['GetRateRequestFailed'] = __('The get rate request failed: ', 'invoicing');
115
+        $vars['NoRateInformationInResponse'] = __('The get rate request response does not contain any rate information', 'invoicing');
116
+        $vars['RatesUpdated'] = __('The rates have been updated. Press the save button to record these new rates.', 'invoicing');
117
+        $vars['IPAddressInformation'] = __('IP Address Information', 'invoicing');
118
+        $vars['VatValidating'] = wp_sprintf(__('Validating %s number...', 'invoicing'), $vat_name);
119
+        $vars['VatReseting'] = __('Reseting...', 'invoicing');
120
+        $vars['VatValidated'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name);
121
+        $vars['VatNotValidated'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name);
122
+        $vars['ConfirmDeleteClass'] = __('Are you sure you wish to delete this rates class?', 'invoicing');
123 123
         $vars['isFront'] = is_admin() ? false : true;
124
-        $vars['checkoutNonce'] = wp_create_nonce( 'wpinv_checkout_nonce' );
124
+        $vars['checkoutNonce'] = wp_create_nonce('wpinv_checkout_nonce');
125 125
         $vars['baseCountry'] = wpinv_get_default_country();
126
-        $vars['disableVATSameCountry'] = ( self::same_country_rule() == 'no' ? true : false );
127
-        $vars['disableVATSimpleCheck'] = wpinv_get_option( 'vat_offline_check' ) ? true : false;
126
+        $vars['disableVATSameCountry'] = (self::same_country_rule() == 'no' ? true : false);
127
+        $vars['disableVATSimpleCheck'] = wpinv_get_option('vat_offline_check') ? true : false;
128 128
         
129
-        wp_enqueue_script( 'wpinv-vat-validation-script' );
130
-        wp_enqueue_script( 'wpinv-vat-script' );
131
-        wp_localize_script( 'wpinv-vat-script', 'WPInv_VAT_Vars', $vars );
129
+        wp_enqueue_script('wpinv-vat-validation-script');
130
+        wp_enqueue_script('wpinv-vat-script');
131
+        wp_localize_script('wpinv-vat-script', 'WPInv_VAT_Vars', $vars);
132 132
     }
133 133
 
134 134
     public static function enqueue_admin_scripts() {
135
-        if( isset( $_GET['page'] ) && 'wpinv-settings' == $_GET['page'] ) {
135
+        if (isset($_GET['page']) && 'wpinv-settings' == $_GET['page']) {
136 136
             self::enqueue_vat_scripts();
137 137
         }
138 138
     }
139 139
     
140
-    public static function section_vat_settings( $sections ) {
141
-        if ( !empty( $sections ) ) {
142
-            $sections['vat'] = __( 'EU VAT Settings', 'invoicing' );
140
+    public static function section_vat_settings($sections) {
141
+        if (!empty($sections)) {
142
+            $sections['vat'] = __('EU VAT Settings', 'invoicing');
143 143
             
144
-            if ( self::allow_vat_classes() ) {
145
-                $sections['vat_rates'] = __( 'EU VAT Rates', 'invoicing' );
144
+            if (self::allow_vat_classes()) {
145
+                $sections['vat_rates'] = __('EU VAT Rates', 'invoicing');
146 146
             }
147 147
         }
148 148
         return $sections;
@@ -151,51 +151,51 @@  discard block
 block discarded – undo
151 151
     public static function vat_rates_settings() {
152 152
         $vat_classes = self::get_rate_classes();
153 153
         $vat_rates = array();
154
-        $vat_class = isset( $_REQUEST['wpi_sub'] ) && $_REQUEST['wpi_sub'] !== '' && isset( $vat_classes[$_REQUEST['wpi_sub']] )? sanitize_text_field( $_REQUEST['wpi_sub'] ) : '_new';
155
-        $current_url = remove_query_arg( 'wpi_sub' );
154
+        $vat_class = isset($_REQUEST['wpi_sub']) && $_REQUEST['wpi_sub'] !== '' && isset($vat_classes[$_REQUEST['wpi_sub']]) ? sanitize_text_field($_REQUEST['wpi_sub']) : '_new';
155
+        $current_url = remove_query_arg('wpi_sub');
156 156
         
157 157
         $vat_rates['vat_rates_header'] = array(
158 158
             'id' => 'vat_rates_header',
159
-            'name' => '<h3>' . __( 'Manage VAT Rates', 'invoicing' ) . '</h3>',
159
+            'name' => '<h3>' . __('Manage VAT Rates', 'invoicing') . '</h3>',
160 160
             'desc' => '',
161 161
             'type' => 'header',
162 162
             'size' => 'regular'
163 163
         );
164 164
         $vat_rates['vat_rates_class'] = array(
165 165
             'id'          => 'vat_rates_class',
166
-            'name'        => __( 'Edit VAT Rates', 'invoicing' ),
167
-            'desc'        => __( 'The standard rate will apply where no explicit rate is provided.', 'invoicing' ),
166
+            'name'        => __('Edit VAT Rates', 'invoicing'),
167
+            'desc'        => __('The standard rate will apply where no explicit rate is provided.', 'invoicing'),
168 168
             'type'        => 'select',
169
-            'options'     => array_merge( $vat_classes, array( '_new' => __( 'Add New Rate Class', 'invoicing' ) ) ),
170
-            'placeholder' => __( 'Select a VAT Rate', 'invoicing' ),
169
+            'options'     => array_merge($vat_classes, array('_new' => __('Add New Rate Class', 'invoicing'))),
170
+            'placeholder' => __('Select a VAT Rate', 'invoicing'),
171 171
             'selected'    => $vat_class,
172 172
             'onchange'    => 'document.location.href="' . $current_url . '&wpi_sub=" + this.value;',
173 173
         );
174 174
         
175
-        if ( $vat_class != '_standard' && $vat_class != '_new' ) {
175
+        if ($vat_class != '_standard' && $vat_class != '_new') {
176 176
             $vat_rates['vat_rate_delete'] = array(
177 177
                 'id'   => 'vat_rate_delete',
178 178
                 'type' => 'vat_rate_delete',
179 179
             );
180 180
         }
181 181
                     
182
-        if ( $vat_class == '_new' ) {
182
+        if ($vat_class == '_new') {
183 183
             $vat_rates['vat_rates_settings'] = array(
184 184
                 'id' => 'vat_rates_settings',
185
-                'name' => '<h3>' . __( 'Add New Rate Class', 'invoicing' ) . '</h3>',
185
+                'name' => '<h3>' . __('Add New Rate Class', 'invoicing') . '</h3>',
186 186
                 'type' => 'header',
187 187
             );
188 188
             $vat_rates['vat_rate_name'] = array(
189 189
                 'id'   => 'vat_rate_name',
190
-                'name' => __( 'Name', 'invoicing' ),
191
-                'desc' => __( 'A short name for the new VAT Rate class', 'invoicing' ),
190
+                'name' => __('Name', 'invoicing'),
191
+                'desc' => __('A short name for the new VAT Rate class', 'invoicing'),
192 192
                 'type' => 'text',
193 193
                 'size' => 'regular',
194 194
             );
195 195
             $vat_rates['vat_rate_desc'] = array(
196 196
                 'id'   => 'vat_rate_desc',
197
-                'name' => __( 'Description', 'invoicing' ),
198
-                'desc' => __( 'Manage VAT Rate class', 'invoicing' ),
197
+                'name' => __('Description', 'invoicing'),
198
+                'desc' => __('Manage VAT Rate class', 'invoicing'),
199 199
                 'type' => 'text',
200 200
                 'size' => 'regular',
201 201
             );
@@ -207,7 +207,7 @@  discard block
 block discarded – undo
207 207
             $vat_rates['vat_rates'] = array(
208 208
                 'id'   => 'vat_rates',
209 209
                 'name' => '<h3>' . $vat_classes[$vat_class] . '</h3>',
210
-                'desc' => self::get_class_desc( $vat_class ),
210
+                'desc' => self::get_class_desc($vat_class),
211 211
                 'type' => 'vat_rates',
212 212
             );
213 213
         }
@@ -215,12 +215,12 @@  discard block
 block discarded – undo
215 215
         return $vat_rates;
216 216
     }
217 217
     
218
-    public static function vat_settings( $settings ) {
219
-        if ( !empty( $settings ) ) {    
218
+    public static function vat_settings($settings) {
219
+        if (!empty($settings)) {    
220 220
             $vat_settings = array();
221 221
             $vat_settings['vat_company_title'] = array(
222 222
                 'id' => 'vat_company_title',
223
-                'name' => '<h3>' . __( 'Your Company Details', 'invoicing' ) . '</h3>',
223
+                'name' => '<h3>' . __('Your Company Details', 'invoicing') . '</h3>',
224 224
                 'desc' => '',
225 225
                 'type' => 'header',
226 226
                 'size' => 'regular'
@@ -228,22 +228,22 @@  discard block
 block discarded – undo
228 228
             
229 229
             $vat_settings['vat_company_name'] = array(
230 230
                 'id' => 'vat_company_name',
231
-                'name' => __( 'Your Company Name', 'invoicing' ),
232
-                'desc' => wp_sprintf(__( 'Your company name as it appears on your VAT return, you can verify it via your VAT ID on the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ),
231
+                'name' => __('Your Company Name', 'invoicing'),
232
+                'desc' => wp_sprintf(__('Your company name as it appears on your VAT return, you can verify it via your VAT ID on the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'),
233 233
                 'type' => 'text',
234 234
                 'size' => 'regular',
235 235
             );
236 236
             
237 237
             $vat_settings['vat_number'] = array(
238 238
                 'id'   => 'vat_number',
239
-                'name' => __( 'Your VAT Number', 'invoicing' ),
239
+                'name' => __('Your VAT Number', 'invoicing'),
240 240
                 'type' => 'vat_number',
241 241
                 'size' => 'regular',
242 242
             );
243 243
 
244 244
             $vat_settings['vat_settings_title'] = array(
245 245
                 'id' => 'vat_settings_title',
246
-                'name' => '<h3>' . __( 'Apply VAT Settings', 'invoicing' ) . '</h3>',
246
+                'name' => '<h3>' . __('Apply VAT Settings', 'invoicing') . '</h3>',
247 247
                 'desc' => '',
248 248
                 'type' => 'header',
249 249
                 'size' => 'regular'
@@ -251,8 +251,8 @@  discard block
 block discarded – undo
251 251
 
252 252
             $vat_settings['apply_vat_rules'] = array(
253 253
                 'id' => 'apply_vat_rules',
254
-                'name' => __( 'Enable VAT Rules', 'invoicing' ),
255
-                'desc' => __( 'Apply VAT to consumer sales from IP addresses within the EU, even if the billing address is outside the EU.', 'invoicing' ) . '<br><font style="color:red">' . __( 'Do not disable unless you know what you are doing.', 'invoicing' ) . '</font>',
254
+                'name' => __('Enable VAT Rules', 'invoicing'),
255
+                'desc' => __('Apply VAT to consumer sales from IP addresses within the EU, even if the billing address is outside the EU.', 'invoicing') . '<br><font style="color:red">' . __('Do not disable unless you know what you are doing.', 'invoicing') . '</font>',
256 256
                 'type' => 'checkbox',
257 257
                 'std' => '1'
258 258
             );
@@ -268,8 +268,8 @@  discard block
 block discarded – undo
268 268
 
269 269
             $vat_settings['vat_prevent_b2c_purchase'] = array(
270 270
                 'id' => 'vat_prevent_b2c_purchase',
271
-                'name' => __( 'Prevent EU B2C Sales', 'invoicing' ),
272
-                'desc' => __( 'Enable this option if you are not registered for VAT in the EU.', 'invoicing' ),
271
+                'name' => __('Prevent EU B2C Sales', 'invoicing'),
272
+                'desc' => __('Enable this option if you are not registered for VAT in the EU.', 'invoicing'),
273 273
                 'type' => 'checkbox'
274 274
             );
275 275
 
@@ -277,21 +277,21 @@  discard block
 block discarded – undo
277 277
 
278 278
             $vat_settings['vat_same_country_rule'] = array(
279 279
                 'id'          => 'vat_same_country_rule',
280
-                'name'        => __( 'Same Country Rule', 'invoicing' ),
281
-                'desc'        => __( 'Select how you want to handle VAT charge if sales are in the same country as the base country.', 'invoicing' ),
280
+                'name'        => __('Same Country Rule', 'invoicing'),
281
+                'desc'        => __('Select how you want to handle VAT charge if sales are in the same country as the base country.', 'invoicing'),
282 282
                 'type'        => 'select',
283 283
                 'options'     => array(
284
-                    ''          => __( 'Normal', 'invoicing' ),
285
-                    'no'        => __( 'No VAT', 'invoicing' ),
286
-                    'always'    => __( 'Always apply VAT', 'invoicing' ),
284
+                    ''          => __('Normal', 'invoicing'),
285
+                    'no'        => __('No VAT', 'invoicing'),
286
+                    'always'    => __('Always apply VAT', 'invoicing'),
287 287
                 ),
288
-                'placeholder' => __( 'Select an option', 'invoicing' ),
288
+                'placeholder' => __('Select an option', 'invoicing'),
289 289
                 'std'         => ''
290 290
             );
291 291
 
292 292
             $vat_settings['vat_checkout_title'] = array(
293 293
                 'id' => 'vat_checkout_title',
294
-                'name' => '<h3>' . __( 'Checkout Fields', 'invoicing' ) . '</h3>',
294
+                'name' => '<h3>' . __('Checkout Fields', 'invoicing') . '</h3>',
295 295
                 'desc' => '',
296 296
                 'type' => 'header',
297 297
                 'size' => 'regular'
@@ -299,14 +299,14 @@  discard block
 block discarded – undo
299 299
 
300 300
             $vat_settings['vat_disable_fields'] = array(
301 301
                 'id' => 'vat_disable_fields',
302
-                'name' => __( 'Disable VAT Fields', 'invoicing' ),
303
-                'desc' => __( 'Disable VAT fields if Invoicing is being used for GST.', 'invoicing' ) . '<br><font style="color:red">' . __( 'Do not disable if you have enabled Prevent EU B2C sales, otherwise Prevent EU B2C sales setting will not work.', 'invoicing' ) . '</font>',
302
+                'name' => __('Disable VAT Fields', 'invoicing'),
303
+                'desc' => __('Disable VAT fields if Invoicing is being used for GST.', 'invoicing') . '<br><font style="color:red">' . __('Do not disable if you have enabled Prevent EU B2C sales, otherwise Prevent EU B2C sales setting will not work.', 'invoicing') . '</font>',
304 304
                 'type' => 'checkbox'
305 305
             );
306 306
 
307 307
             $vat_settings['vat_ip_lookup'] = array(
308 308
                 'id'   => 'vat_ip_lookup',
309
-                'name' => __( 'IP Country Look-up', 'invoicing' ),
309
+                'name' => __('IP Country Look-up', 'invoicing'),
310 310
                 'type' => 'vat_ip_lookup',
311 311
                 'size' => 'regular',
312 312
                 'std' => 'default'
@@ -314,21 +314,21 @@  discard block
 block discarded – undo
314 314
 
315 315
             $vat_settings['hide_ip_address'] = array(
316 316
                 'id' => 'hide_ip_address',
317
-                'name' => __( 'Hide IP Info at Checkout', 'invoicing' ),
318
-                'desc' => __( 'Hide the user IP info at checkout.', 'invoicing' ),
317
+                'name' => __('Hide IP Info at Checkout', 'invoicing'),
318
+                'desc' => __('Hide the user IP info at checkout.', 'invoicing'),
319 319
                 'type' => 'checkbox'
320 320
             );
321 321
 
322 322
             $vat_settings['vat_ip_country_default'] = array(
323 323
                 'id' => 'vat_ip_country_default',
324
-                'name' => __( 'Enable IP Country as Default', 'invoicing' ),
325
-                'desc' => __( 'Show the country of the users IP as the default country, otherwise the site default country will be used.', 'invoicing' ),
324
+                'name' => __('Enable IP Country as Default', 'invoicing'),
325
+                'desc' => __('Show the country of the users IP as the default country, otherwise the site default country will be used.', 'invoicing'),
326 326
                 'type' => 'checkbox'
327 327
             );
328 328
 
329 329
             $vat_settings['vies_validation_title'] = array(
330 330
                 'id' => 'vies_validation_title',
331
-                'name' => '<h3>' . __( 'VIES Validation', 'invoicing' ) . '</h3>',
331
+                'name' => '<h3>' . __('VIES Validation', 'invoicing') . '</h3>',
332 332
                 'desc' => '',
333 333
                 'type' => 'header',
334 334
                 'size' => 'regular'
@@ -336,37 +336,37 @@  discard block
 block discarded – undo
336 336
 
337 337
             $vat_settings['vat_vies_check'] = array(
338 338
                 'id' => 'vat_vies_check',
339
-                'name' => __( 'Disable VIES VAT ID Check', 'invoicing' ),
340
-                'desc' => wp_sprintf( __( 'Prevent VAT numbers from being validated by the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ),
339
+                'name' => __('Disable VIES VAT ID Check', 'invoicing'),
340
+                'desc' => wp_sprintf(__('Prevent VAT numbers from being validated by the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'),
341 341
                 'type' => 'checkbox'
342 342
             );
343 343
 
344 344
             $vat_settings['vat_disable_company_name_check'] = array(
345 345
                 'id' => 'vat_disable_company_name_check',
346
-                'name' => __( 'Disable VIES Name Check', 'invoicing' ),
347
-                'desc' => wp_sprintf( __( 'Prevent company name from being validated by the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ),
346
+                'name' => __('Disable VIES Name Check', 'invoicing'),
347
+                'desc' => wp_sprintf(__('Prevent company name from being validated by the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'),
348 348
                 'type' => 'checkbox'
349 349
             );
350 350
 
351 351
             $vat_settings['vat_offline_check'] = array(
352 352
                 'id' => 'vat_offline_check',
353
-                'name' => __( 'Disable Basic Checks', 'invoicing' ),
354
-                'desc' => __( 'This will disable basic JS correct format validation attempts, it is very rare this should need to be disabled.', 'invoicing' ),
353
+                'name' => __('Disable Basic Checks', 'invoicing'),
354
+                'desc' => __('This will disable basic JS correct format validation attempts, it is very rare this should need to be disabled.', 'invoicing'),
355 355
                 'type' => 'checkbox'
356 356
             );
357 357
             
358 358
 
359 359
             $settings['vat'] = $vat_settings;
360 360
             
361
-            if ( self::allow_vat_classes() ) {
361
+            if (self::allow_vat_classes()) {
362 362
                 $settings['vat_rates'] = self::vat_rates_settings();
363 363
             }
364 364
             
365 365
             $eu_fallback_rate = array(
366 366
                 'id'   => 'eu_fallback_rate',
367
-                'name' => '<h3>' . __( 'VAT rate for EU member states', 'invoicing' ) . '</h3>',
367
+                'name' => '<h3>' . __('VAT rate for EU member states', 'invoicing') . '</h3>',
368 368
                 'type' => 'eu_fallback_rate',
369
-                'desc' => __( 'Enter the VAT rate to be charged for EU member states. You can edit the rates for each member state when a country rate has been set up by pressing this button.', 'invoicing' ),
369
+                'desc' => __('Enter the VAT rate to be charged for EU member states. You can edit the rates for each member state when a country rate has been set up by pressing this button.', 'invoicing'),
370 370
                 'std'  => '20',
371 371
                 'size' => 'small'
372 372
             );
@@ -382,11 +382,11 @@  discard block
 block discarded – undo
382 382
         $database_url       = 'http' . (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] === 'on' ? 's' : '') . '://geolite.maxmind.com/download/geoip/database/';
383 383
         $destination_dir    = $upload_dir['basedir'] . '/invoicing';
384 384
         
385
-        if ( !is_dir( $destination_dir ) ) { 
386
-            mkdir( $destination_dir );
385
+        if (!is_dir($destination_dir)) { 
386
+            mkdir($destination_dir);
387 387
         }
388 388
         
389
-        $database_files     = array(
389
+        $database_files = array(
390 390
             'country'   => array(
391 391
                 'source'        => $database_url . 'GeoLite2-Country.mmdb.gz',
392 392
                 'destination'   => $destination_dir . '/GeoLite2-Country.mmdb',
@@ -397,57 +397,57 @@  discard block
 block discarded – undo
397 397
             )
398 398
         );
399 399
 
400
-        foreach( $database_files as $database => $files ) {
401
-            $result = self::geoip2_download_file( $files['source'], $files['destination'] );
400
+        foreach ($database_files as $database => $files) {
401
+            $result = self::geoip2_download_file($files['source'], $files['destination']);
402 402
             
403
-            if ( empty( $result['success'] ) ) {
403
+            if (empty($result['success'])) {
404 404
                 echo $result['message'];
405 405
                 exit;
406 406
             }
407 407
             
408
-            wpinv_update_option( 'wpinv_geoip2_date_updated', current_time( 'timestamp' ) );
409
-            echo sprintf(__( 'GeoIp2 %s database updated successfully.', 'invoicing' ), $database ) . ' ';
408
+            wpinv_update_option('wpinv_geoip2_date_updated', current_time('timestamp'));
409
+            echo sprintf(__('GeoIp2 %s database updated successfully.', 'invoicing'), $database) . ' ';
410 410
         }
411 411
         
412 412
         exit;
413 413
     }
414 414
     
415
-    public static function geoip2_download_file( $source_url, $destination_file ) {
415
+    public static function geoip2_download_file($source_url, $destination_file) {
416 416
         $success    = false;
417 417
         $message    = '';
418 418
         
419
-        if ( !function_exists( 'download_url' ) ) {
420
-            require_once( ABSPATH . 'wp-admin/includes/file.php' );
419
+        if (!function_exists('download_url')) {
420
+            require_once(ABSPATH . 'wp-admin/includes/file.php');
421 421
         }
422 422
 
423
-        $temp_file  = download_url( $source_url );
423
+        $temp_file = download_url($source_url);
424 424
         
425
-        if ( is_wp_error( $temp_file ) ) {
426
-            $message = sprintf( __( 'Error while downloading GeoIp2 database( %s ): %s', 'invoicing' ), $source_url, $temp_file->get_error_message() );
425
+        if (is_wp_error($temp_file)) {
426
+            $message = sprintf(__('Error while downloading GeoIp2 database( %s ): %s', 'invoicing'), $source_url, $temp_file->get_error_message());
427 427
         } else {
428
-            $handle = gzopen( $temp_file, 'rb' );
428
+            $handle = gzopen($temp_file, 'rb');
429 429
             
430
-            if ( $handle ) {
431
-                $fopen  = fopen( $destination_file, 'wb' );
432
-                if ( $fopen ) {
433
-                    while ( ( $data = gzread( $handle, 4096 ) ) != false ) {
434
-                        fwrite( $fopen, $data );
430
+            if ($handle) {
431
+                $fopen = fopen($destination_file, 'wb');
432
+                if ($fopen) {
433
+                    while (($data = gzread($handle, 4096)) != false) {
434
+                        fwrite($fopen, $data);
435 435
                     }
436 436
 
437
-                    gzclose( $handle );
438
-                    fclose( $fopen );
437
+                    gzclose($handle);
438
+                    fclose($fopen);
439 439
                         
440 440
                     $success = true;
441 441
                 } else {
442
-                    gzclose( $handle );
443
-                    $message = sprintf( __( 'Error could not open destination GeoIp2 database file for writing: %s', 'invoicing' ), $destination_file );
442
+                    gzclose($handle);
443
+                    $message = sprintf(__('Error could not open destination GeoIp2 database file for writing: %s', 'invoicing'), $destination_file);
444 444
                 }
445 445
             } else {
446
-                $message = sprintf( __( 'Error could not open GeoIp2 database file for reading: %s', 'invoicing' ), $temp_file );
446
+                $message = sprintf(__('Error could not open GeoIp2 database file for reading: %s', 'invoicing'), $temp_file);
447 447
             }
448 448
             
449
-            if ( file_exists( $temp_file ) ) {
450
-                unlink( $temp_file );
449
+            if (file_exists($temp_file)) {
450
+                unlink($temp_file);
451 451
             }
452 452
         }
453 453
         
@@ -459,11 +459,11 @@  discard block
 block discarded – undo
459 459
     }
460 460
     
461 461
     public static function load_geoip2() {
462
-        if ( defined( 'WPINV_GEOIP2_LODDED' ) ) {
462
+        if (defined('WPINV_GEOIP2_LODDED')) {
463 463
             return;
464 464
         }
465 465
         
466
-        if ( !class_exists( '\MaxMind\Db\Reader' ) ) {
466
+        if (!class_exists('\MaxMind\Db\Reader')) {
467 467
             $maxmind_db_files = array(
468 468
                 'Reader/Decoder.php',
469 469
                 'Reader/InvalidDatabaseException.php',
@@ -472,12 +472,12 @@  discard block
 block discarded – undo
472 472
                 'Reader.php',
473 473
             );
474 474
             
475
-            foreach ( $maxmind_db_files as $key => $file ) {
476
-                require_once( WPINV_PLUGIN_DIR . 'includes/libraries/MaxMind/Db/' . $file );
475
+            foreach ($maxmind_db_files as $key => $file) {
476
+                require_once(WPINV_PLUGIN_DIR . 'includes/libraries/MaxMind/Db/' . $file);
477 477
             }
478 478
         }
479 479
         
480
-        if ( !class_exists( '\GeoIp2\Database\Reader' ) ) {        
480
+        if (!class_exists('\GeoIp2\Database\Reader')) {        
481 481
             $geoip2_files = array(
482 482
                 'ProviderInterface.php',
483 483
                 'Compat/JsonSerializable.php',
@@ -511,23 +511,23 @@  discard block
 block discarded – undo
511 511
                 'WebService/Client.php',
512 512
             );
513 513
             
514
-            foreach ( $geoip2_files as $key => $file ) {
515
-                require_once( WPINV_PLUGIN_DIR . 'includes/libraries/GeoIp2/' . $file );
514
+            foreach ($geoip2_files as $key => $file) {
515
+                require_once(WPINV_PLUGIN_DIR . 'includes/libraries/GeoIp2/' . $file);
516 516
             }
517 517
         }
518 518
 
519
-        define( 'WPINV_GEOIP2_LODDED', true );
519
+        define('WPINV_GEOIP2_LODDED', true);
520 520
     }
521 521
 
522 522
     public static function geoip2_country_dbfile() {
523 523
         $upload_dir = wp_upload_dir();
524 524
 
525
-        if ( !isset( $upload_dir['basedir'] ) ) {
525
+        if (!isset($upload_dir['basedir'])) {
526 526
             return false;
527 527
         }
528 528
 
529 529
         $filename = $upload_dir['basedir'] . '/invoicing/GeoLite2-Country.mmdb';
530
-        if ( !file_exists( $filename ) ) {
530
+        if (!file_exists($filename)) {
531 531
             return false;
532 532
         }
533 533
         
@@ -537,12 +537,12 @@  discard block
 block discarded – undo
537 537
     public static function geoip2_city_dbfile() {
538 538
         $upload_dir = wp_upload_dir();
539 539
 
540
-        if ( !isset( $upload_dir['basedir'] ) ) {
540
+        if (!isset($upload_dir['basedir'])) {
541 541
             return false;
542 542
         }
543 543
 
544 544
         $filename = $upload_dir['basedir'] . '/invoicing/GeoLite2-City.mmdb';
545
-        if ( !file_exists( $filename ) ) {
545
+        if (!file_exists($filename)) {
546 546
             return false;
547 547
         }
548 548
         
@@ -553,10 +553,10 @@  discard block
 block discarded – undo
553 553
         try {
554 554
             self::load_geoip2();
555 555
 
556
-            if ( $filename = self::geoip2_country_dbfile() ) {
557
-                return new \GeoIp2\Database\Reader( $filename );
556
+            if ($filename = self::geoip2_country_dbfile()) {
557
+                return new \GeoIp2\Database\Reader($filename);
558 558
             }
559
-        } catch( Exception $e ) {
559
+        } catch (Exception $e) {
560 560
             return false;
561 561
         }
562 562
         
@@ -567,173 +567,173 @@  discard block
 block discarded – undo
567 567
         try {
568 568
             self::load_geoip2();
569 569
 
570
-            if ( $filename = self::geoip2_city_dbfile() ) {
571
-                return new \GeoIp2\Database\Reader( $filename );
570
+            if ($filename = self::geoip2_city_dbfile()) {
571
+                return new \GeoIp2\Database\Reader($filename);
572 572
             }
573
-        } catch( Exception $e ) {
573
+        } catch (Exception $e) {
574 574
             return false;
575 575
         }
576 576
         
577 577
         return false;
578 578
     }
579 579
 
580
-    public static function geoip2_country_record( $ip_address ) {
580
+    public static function geoip2_country_record($ip_address) {
581 581
         try {
582 582
             $reader = self::geoip2_country_reader();
583 583
 
584
-            if ( $reader ) {
585
-                $record = $reader->country( $ip_address );
584
+            if ($reader) {
585
+                $record = $reader->country($ip_address);
586 586
                 
587
-                if ( !empty( $record->country->isoCode ) ) {
587
+                if (!empty($record->country->isoCode)) {
588 588
                     return $record;
589 589
                 }
590 590
             }
591
-        } catch(\InvalidArgumentException $e) {
592
-            wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' );
591
+        } catch (\InvalidArgumentException $e) {
592
+            wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )');
593 593
             
594 594
             return false;
595
-        } catch(\GeoIp2\Exception\AddressNotFoundException $e) {
596
-            wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' );
595
+        } catch (\GeoIp2\Exception\AddressNotFoundException $e) {
596
+            wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )');
597 597
             
598 598
             return false;
599
-        } catch( Exception $e ) {
599
+        } catch (Exception $e) {
600 600
             return false;
601 601
         }
602 602
         
603 603
         return false;
604 604
     }
605 605
 
606
-    public static function geoip2_city_record( $ip_address ) {
606
+    public static function geoip2_city_record($ip_address) {
607 607
         try {
608 608
             $reader = self::geoip2_city_reader();
609 609
 
610
-            if ( $reader ) {
611
-                $record = $reader->city( $ip_address );
610
+            if ($reader) {
611
+                $record = $reader->city($ip_address);
612 612
                 
613
-                if ( !empty( $record->country->isoCode ) ) {
613
+                if (!empty($record->country->isoCode)) {
614 614
                     return $record;
615 615
                 }
616 616
             }
617
-        } catch(\InvalidArgumentException $e) {
618
-            wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' );
617
+        } catch (\InvalidArgumentException $e) {
618
+            wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )');
619 619
             
620 620
             return false;
621
-        } catch(\GeoIp2\Exception\AddressNotFoundException $e) {
622
-            wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' );
621
+        } catch (\GeoIp2\Exception\AddressNotFoundException $e) {
622
+            wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )');
623 623
             
624 624
             return false;
625
-        } catch( Exception $e ) {
625
+        } catch (Exception $e) {
626 626
             return false;
627 627
         }
628 628
         
629 629
         return false;
630 630
     }
631 631
 
632
-    public static function geoip2_country_code( $ip_address ) {
633
-        $record = self::geoip2_country_record( $ip_address );
634
-        return !empty( $record->country->isoCode ) ? $record->country->isoCode : wpinv_get_default_country();
632
+    public static function geoip2_country_code($ip_address) {
633
+        $record = self::geoip2_country_record($ip_address);
634
+        return !empty($record->country->isoCode) ? $record->country->isoCode : wpinv_get_default_country();
635 635
     }
636 636
 
637 637
     // Find country by IP address.
638
-    public static function get_country_by_ip( $ip = '' ) {
638
+    public static function get_country_by_ip($ip = '') {
639 639
         global $wpinv_ip_address_country;
640 640
         
641
-        if ( !empty( $wpinv_ip_address_country ) ) {
641
+        if (!empty($wpinv_ip_address_country)) {
642 642
             return $wpinv_ip_address_country;
643 643
         }
644 644
         
645
-        if ( empty( $ip ) ) {
645
+        if (empty($ip)) {
646 646
             $ip = wpinv_get_ip();
647 647
         }
648 648
 
649
-        $ip_country_service = wpinv_get_option( 'vat_ip_lookup' );
650
-        $is_default         = empty( $ip_country_service ) || $ip_country_service === 'default' ? true : false;
649
+        $ip_country_service = wpinv_get_option('vat_ip_lookup');
650
+        $is_default         = empty($ip_country_service) || $ip_country_service === 'default' ? true : false;
651 651
 
652
-        if ( !empty( $ip ) && $ip !== '127.0.0.1' ) { // For 127.0.0.1(localhost) use default country.
653
-            if ( function_exists( 'geoip_country_code_by_name') && ( $ip_country_service === 'geoip' || $is_default ) ) {
652
+        if (!empty($ip) && $ip !== '127.0.0.1') { // For 127.0.0.1(localhost) use default country.
653
+            if (function_exists('geoip_country_code_by_name') && ($ip_country_service === 'geoip' || $is_default)) {
654 654
                 try {
655
-                    $wpinv_ip_address_country = geoip_country_code_by_name( $ip );
656
-                } catch( Exception $e ) {
657
-                    wpinv_error_log( $e->getMessage(), 'GeoIP Lookup( ' . $ip . ' )' );
655
+                    $wpinv_ip_address_country = geoip_country_code_by_name($ip);
656
+                } catch (Exception $e) {
657
+                    wpinv_error_log($e->getMessage(), 'GeoIP Lookup( ' . $ip . ' )');
658 658
                 }
659
-            } else if ( self::geoip2_country_dbfile() && ( $ip_country_service === 'geoip2' || $is_default ) ) {
660
-                $wpinv_ip_address_country = self::geoip2_country_code( $ip );
661
-            } else if ( function_exists( 'simplexml_load_file' ) && ( $ip_country_service === 'geoplugin' || $is_default ) ) {
662
-                $load_xml = simplexml_load_file( 'http://www.geoplugin.net/xml.gp?ip=' . $ip );
659
+            } else if (self::geoip2_country_dbfile() && ($ip_country_service === 'geoip2' || $is_default)) {
660
+                $wpinv_ip_address_country = self::geoip2_country_code($ip);
661
+            } else if (function_exists('simplexml_load_file') && ($ip_country_service === 'geoplugin' || $is_default)) {
662
+                $load_xml = simplexml_load_file('http://www.geoplugin.net/xml.gp?ip=' . $ip);
663 663
                 
664
-                if ( !empty( $load_xml ) && !empty( $load_xml->geoplugin_countryCode ) ) {
664
+                if (!empty($load_xml) && !empty($load_xml->geoplugin_countryCode)) {
665 665
                     $wpinv_ip_address_country = (string)$load_xml->geoplugin_countryCode;
666 666
                 }
667 667
             }
668 668
         }
669 669
 
670
-        if ( empty( $wpinv_ip_address_country ) ) {
670
+        if (empty($wpinv_ip_address_country)) {
671 671
             $wpinv_ip_address_country = wpinv_get_default_country();
672 672
         }
673 673
 
674 674
         return $wpinv_ip_address_country;
675 675
     }
676 676
     
677
-    public static function sanitize_vat_settings( $input ) {
677
+    public static function sanitize_vat_settings($input) {
678 678
         global $wpinv_options;
679 679
         
680 680
         $valid      = false;
681 681
         $message    = '';
682 682
         
683
-        if ( !empty( $wpinv_options['vat_vies_check'] ) ) {
684
-            if ( empty( $wpinv_options['vat_offline_check'] ) ) {
685
-                $valid = self::offline_check( $input['vat_number'] );
683
+        if (!empty($wpinv_options['vat_vies_check'])) {
684
+            if (empty($wpinv_options['vat_offline_check'])) {
685
+                $valid = self::offline_check($input['vat_number']);
686 686
             } else {
687 687
                 $valid = true;
688 688
             }
689 689
             
690
-            $message = $valid ? '' : __( 'VAT number not validated', 'invoicing' );
690
+            $message = $valid ? '' : __('VAT number not validated', 'invoicing');
691 691
         } else {
692
-            $result = self::check_vat( $input['vat_number'] );
692
+            $result = self::check_vat($input['vat_number']);
693 693
             
694
-            if ( empty( $result['valid'] ) ) {
694
+            if (empty($result['valid'])) {
695 695
                 $valid      = false;
696 696
                 $message    = $result['message'];
697 697
             } else {
698
-                $valid      = ( isset( $result['company'] ) && ( $result['company'] == '---' || ( strcasecmp( trim( $result['company'] ), trim( $input['vat_company_name'] ) ) == 0 ) ) ) || !empty( $wpinv_options['vat_disable_company_name_check'] );
699
-                $message    = $valid ? '' : __( 'The company name associated with the VAT number provided is not the same as the company name provided.', 'invoicing' );
698
+                $valid      = (isset($result['company']) && ($result['company'] == '---' || (strcasecmp(trim($result['company']), trim($input['vat_company_name'])) == 0))) || !empty($wpinv_options['vat_disable_company_name_check']);
699
+                $message    = $valid ? '' : __('The company name associated with the VAT number provided is not the same as the company name provided.', 'invoicing');
700 700
             }
701 701
         }
702 702
 
703
-        if ( $message && self::is_vat_validated() != $valid ) {
704
-            add_settings_error( 'wpinv-notices', '', $message, ( $valid ? 'updated' : 'error' ) );
703
+        if ($message && self::is_vat_validated() != $valid) {
704
+            add_settings_error('wpinv-notices', '', $message, ($valid ? 'updated' : 'error'));
705 705
         }
706 706
 
707 707
         $input['vat_valid'] = $valid;
708 708
         return $input;
709 709
     }
710 710
     
711
-    public static function sanitize_vat_rates( $input ) {
712
-        if( !current_user_can( 'manage_options' ) ) {
713
-            add_settings_error( 'wpinv-notices', '', __( 'Your account does not have permission to add rate classes.', 'invoicing' ), 'error' );
711
+    public static function sanitize_vat_rates($input) {
712
+        if (!current_user_can('manage_options')) {
713
+            add_settings_error('wpinv-notices', '', __('Your account does not have permission to add rate classes.', 'invoicing'), 'error');
714 714
             return $input;
715 715
         }
716 716
         
717 717
         $vat_classes = self::get_rate_classes();
718
-        $vat_class = !empty( $_REQUEST['wpi_vat_class'] ) && isset( $vat_classes[$_REQUEST['wpi_vat_class']] )? sanitize_text_field( $_REQUEST['wpi_vat_class'] ) : '';
718
+        $vat_class = !empty($_REQUEST['wpi_vat_class']) && isset($vat_classes[$_REQUEST['wpi_vat_class']]) ? sanitize_text_field($_REQUEST['wpi_vat_class']) : '';
719 719
         
720
-        if ( empty( $vat_class ) ) {
721
-            add_settings_error( 'wpinv-notices', '', __( 'No valid VAT rates class contained in the request to save rates.', 'invoicing' ), 'error' );
720
+        if (empty($vat_class)) {
721
+            add_settings_error('wpinv-notices', '', __('No valid VAT rates class contained in the request to save rates.', 'invoicing'), 'error');
722 722
             
723 723
             return $input;
724 724
         }
725 725
 
726
-        $new_rates = ! empty( $_POST['vat_rates'] ) ? array_values( $_POST['vat_rates'] ) : array();
726
+        $new_rates = !empty($_POST['vat_rates']) ? array_values($_POST['vat_rates']) : array();
727 727
 
728
-        if ( $vat_class === '_standard' ) {
728
+        if ($vat_class === '_standard') {
729 729
             // Save the active rates in the invoice settings
730
-            update_option( 'wpinv_tax_rates', $new_rates );
730
+            update_option('wpinv_tax_rates', $new_rates);
731 731
         } else {
732 732
             // Get the existing set of rates
733 733
             $rates = self::get_non_standard_rates();
734 734
             $rates[$vat_class] = $new_rates;
735 735
 
736
-            update_option( 'wpinv_vat_rates', $rates );
736
+            update_option('wpinv_vat_rates', $rates);
737 737
         }
738 738
         
739 739
         return $input;
@@ -743,71 +743,71 @@  discard block
 block discarded – undo
743 743
         $response = array();
744 744
         $response['success'] = false;
745 745
         
746
-        if ( !current_user_can( 'manage_options' ) ) {
747
-            $response['error'] = __( 'Invalid access!', 'invoicing' );
748
-            wp_send_json( $response );
746
+        if (!current_user_can('manage_options')) {
747
+            $response['error'] = __('Invalid access!', 'invoicing');
748
+            wp_send_json($response);
749 749
         }
750 750
         
751
-        $vat_class_name = !empty( $_POST['name'] ) ? sanitize_text_field( $_POST['name'] ) : false;
752
-        $vat_class_desc = !empty( $_POST['desc'] ) ? sanitize_text_field( $_POST['desc'] ) : false;
751
+        $vat_class_name = !empty($_POST['name']) ? sanitize_text_field($_POST['name']) : false;
752
+        $vat_class_desc = !empty($_POST['desc']) ? sanitize_text_field($_POST['desc']) : false;
753 753
         
754
-        if ( empty( $vat_class_name ) ) {
755
-            $response['error'] = __( 'Select the VAT rate name', 'invoicing' );
756
-            wp_send_json( $response );
754
+        if (empty($vat_class_name)) {
755
+            $response['error'] = __('Select the VAT rate name', 'invoicing');
756
+            wp_send_json($response);
757 757
         }
758 758
         
759 759
         $vat_classes = (array)self::get_rate_classes();
760 760
 
761
-        if ( !empty( $vat_classes ) && in_array( strtolower( $vat_class_name ), array_map( 'strtolower', array_values( $vat_classes ) ) ) ) {
762
-            $response['error'] = wp_sprintf( __( 'A VAT Rate name "%s" already exists', 'invoicing' ), $vat_class_name );
763
-            wp_send_json( $response );
761
+        if (!empty($vat_classes) && in_array(strtolower($vat_class_name), array_map('strtolower', array_values($vat_classes)))) {
762
+            $response['error'] = wp_sprintf(__('A VAT Rate name "%s" already exists', 'invoicing'), $vat_class_name);
763
+            wp_send_json($response);
764 764
         }
765 765
         
766
-        $rate_class_key = normalize_whitespace( 'wpi-' . $vat_class_name );
767
-        $rate_class_key = sanitize_key( str_replace( " ", "-", $rate_class_key ) );
766
+        $rate_class_key = normalize_whitespace('wpi-' . $vat_class_name);
767
+        $rate_class_key = sanitize_key(str_replace(" ", "-", $rate_class_key));
768 768
         
769
-        $vat_classes = (array)self::get_rate_classes( true );
770
-        $vat_classes[$rate_class_key] = array( 'name' => $vat_class_name, 'desc' => $vat_class_desc );
769
+        $vat_classes = (array)self::get_rate_classes(true);
770
+        $vat_classes[$rate_class_key] = array('name' => $vat_class_name, 'desc' => $vat_class_desc);
771 771
         
772
-        update_option( '_wpinv_vat_rate_classes', $vat_classes );
772
+        update_option('_wpinv_vat_rate_classes', $vat_classes);
773 773
         
774 774
         $response['success'] = true;
775
-        $response['redirect'] = admin_url( 'admin.php?page=wpinv-settings&tab=taxes&section=vat_rates&wpi_sub=' . $rate_class_key );
775
+        $response['redirect'] = admin_url('admin.php?page=wpinv-settings&tab=taxes&section=vat_rates&wpi_sub=' . $rate_class_key);
776 776
         
777
-        wp_send_json( $response );
777
+        wp_send_json($response);
778 778
     }
779 779
     
780 780
     public static function delete_class() {
781 781
         $response = array();
782 782
         $response['success'] = false;
783 783
         
784
-        if ( !current_user_can( 'manage_options' ) || !isset( $_POST['class'] ) ) {
785
-            $response['error'] = __( 'Invalid access!', 'invoicing' );
786
-            wp_send_json( $response );
784
+        if (!current_user_can('manage_options') || !isset($_POST['class'])) {
785
+            $response['error'] = __('Invalid access!', 'invoicing');
786
+            wp_send_json($response);
787 787
         }
788 788
         
789
-        $vat_class = isset( $_POST['class'] ) && $_POST['class'] !== '' ? sanitize_text_field( $_POST['class'] ) : false;
789
+        $vat_class = isset($_POST['class']) && $_POST['class'] !== '' ? sanitize_text_field($_POST['class']) : false;
790 790
         $vat_classes = (array)self::get_rate_classes();
791 791
 
792
-        if ( !isset( $vat_classes[$vat_class] ) ) {
793
-            $response['error'] = __( 'Requested class does not exists', 'invoicing' );
794
-            wp_send_json( $response );
792
+        if (!isset($vat_classes[$vat_class])) {
793
+            $response['error'] = __('Requested class does not exists', 'invoicing');
794
+            wp_send_json($response);
795 795
         }
796 796
         
797
-        if ( $vat_class == '_new' || $vat_class == '_standard' ) {
798
-            $response['error'] = __( 'You can not delete standard rates class', 'invoicing' );
799
-            wp_send_json( $response );
797
+        if ($vat_class == '_new' || $vat_class == '_standard') {
798
+            $response['error'] = __('You can not delete standard rates class', 'invoicing');
799
+            wp_send_json($response);
800 800
         }
801 801
             
802
-        $vat_classes = (array)self::get_rate_classes( true );
803
-        unset( $vat_classes[$vat_class] );
802
+        $vat_classes = (array)self::get_rate_classes(true);
803
+        unset($vat_classes[$vat_class]);
804 804
         
805
-        update_option( '_wpinv_vat_rate_classes', $vat_classes );
805
+        update_option('_wpinv_vat_rate_classes', $vat_classes);
806 806
         
807 807
         $response['success'] = true;
808
-        $response['redirect'] = admin_url( 'admin.php?page=wpinv-settings&tab=taxes&section=vat_rates&wpi_sub=_new' );
808
+        $response['redirect'] = admin_url('admin.php?page=wpinv-settings&tab=taxes&section=vat_rates&wpi_sub=_new');
809 809
         
810
-        wp_send_json( $response );
810
+        wp_send_json($response);
811 811
     }
812 812
     
813 813
     public static function update_eu_rates() {        
@@ -816,72 +816,72 @@  discard block
 block discarded – undo
816 816
         $response['error']      = null;
817 817
         $response['data']       = null;
818 818
         
819
-        if ( !current_user_can( 'manage_options' ) ) {
820
-            $response['error'] = __( 'Invalid access!', 'invoicing' );
821
-            wp_send_json( $response );
819
+        if (!current_user_can('manage_options')) {
820
+            $response['error'] = __('Invalid access!', 'invoicing');
821
+            wp_send_json($response);
822 822
         }
823 823
         
824
-        $group      = !empty( $_POST['group'] ) ? sanitize_text_field( $_POST['group'] ) : '';
825
-        $euvatrates = self::request_euvatrates( $group );
824
+        $group      = !empty($_POST['group']) ? sanitize_text_field($_POST['group']) : '';
825
+        $euvatrates = self::request_euvatrates($group);
826 826
         
827
-        if ( !empty( $euvatrates ) ) {
828
-            if ( !empty( $euvatrates['success'] ) && !empty( $euvatrates['rates'] ) ) {
827
+        if (!empty($euvatrates)) {
828
+            if (!empty($euvatrates['success']) && !empty($euvatrates['rates'])) {
829 829
                 $response['success']        = true;
830 830
                 $response['data']['rates']  = $euvatrates['rates'];
831
-            } else if ( !empty( $euvatrates['error'] ) ) {
831
+            } else if (!empty($euvatrates['error'])) {
832 832
                 $response['error']          = $euvatrates['error'];
833 833
             }
834 834
         }
835 835
             
836
-        wp_send_json( $response );
836
+        wp_send_json($response);
837 837
     }
838 838
     
839 839
     public static function hide_vat_fields() {
840
-        $hide = wpinv_get_option( 'vat_disable_fields' );
840
+        $hide = wpinv_get_option('vat_disable_fields');
841 841
         
842
-        return apply_filters( 'wpinv_hide_vat_fields', $hide );
842
+        return apply_filters('wpinv_hide_vat_fields', $hide);
843 843
     }
844 844
     
845 845
     public static function same_country_rule() {
846
-        $same_country_rule = wpinv_get_option( 'vat_same_country_rule' );
846
+        $same_country_rule = wpinv_get_option('vat_same_country_rule');
847 847
         
848
-        return apply_filters( 'wpinv_vat_same_country_rule', $same_country_rule );
848
+        return apply_filters('wpinv_vat_same_country_rule', $same_country_rule);
849 849
     }
850 850
     
851 851
     public static function get_vat_name() {
852
-        $vat_name   = wpinv_get_option( 'vat_name' );
853
-        $vat_name   = !empty( $vat_name ) ? $vat_name : 'VAT';
852
+        $vat_name   = wpinv_get_option('vat_name');
853
+        $vat_name   = !empty($vat_name) ? $vat_name : 'VAT';
854 854
         
855
-        return apply_filters( 'wpinv_get_owner_vat_name', $vat_name );
855
+        return apply_filters('wpinv_get_owner_vat_name', $vat_name);
856 856
     }
857 857
     
858 858
     public static function get_company_name() {
859
-        $company_name = wpinv_get_option( 'vat_company_name' );
859
+        $company_name = wpinv_get_option('vat_company_name');
860 860
         
861
-        return apply_filters( 'wpinv_get_owner_company_name', $company_name );
861
+        return apply_filters('wpinv_get_owner_company_name', $company_name);
862 862
     }
863 863
     
864 864
     public static function get_vat_number() {
865
-        $vat_number = wpinv_get_option( 'vat_number' );
865
+        $vat_number = wpinv_get_option('vat_number');
866 866
         
867
-        return apply_filters( 'wpinv_get_owner_vat_number', $vat_number );
867
+        return apply_filters('wpinv_get_owner_vat_number', $vat_number);
868 868
     }
869 869
     
870 870
     public static function is_vat_validated() {
871
-        $validated = self::get_vat_number() && wpinv_get_option( 'vat_valid' );
871
+        $validated = self::get_vat_number() && wpinv_get_option('vat_valid');
872 872
         
873
-        return apply_filters( 'wpinv_is_owner_vat_validated', $validated );
873
+        return apply_filters('wpinv_is_owner_vat_validated', $validated);
874 874
     }
875 875
     
876
-    public static function sanitize_vat( $vat_number, $country_code = '' ) {        
877
-        $vat_number = str_replace( array(' ', '.', '-', '_', ',' ), '', strtoupper( trim( $vat_number ) ) );
876
+    public static function sanitize_vat($vat_number, $country_code = '') {        
877
+        $vat_number = str_replace(array(' ', '.', '-', '_', ','), '', strtoupper(trim($vat_number)));
878 878
         
879
-        if ( empty( $country_code ) ) {
880
-            $country_code = substr( $vat_number, 0, 2 );
879
+        if (empty($country_code)) {
880
+            $country_code = substr($vat_number, 0, 2);
881 881
         }
882 882
         
883
-        if ( strpos( $vat_number , $country_code ) === 0 ) {
884
-            $vat = str_replace( $country_code, '', $vat_number );
883
+        if (strpos($vat_number, $country_code) === 0) {
884
+            $vat = str_replace($country_code, '', $vat_number);
885 885
         } else {
886 886
             $vat = $country_code . $vat_number;
887 887
         }
@@ -894,140 +894,140 @@  discard block
 block discarded – undo
894 894
         return $return;
895 895
     }
896 896
     
897
-    public static function offline_check( $vat_number, $country_code = '', $formatted = false ) {
898
-        $vat            = self::sanitize_vat( $vat_number, $country_code );
897
+    public static function offline_check($vat_number, $country_code = '', $formatted = false) {
898
+        $vat            = self::sanitize_vat($vat_number, $country_code);
899 899
         $vat_number     = $vat['vat_number'];
900 900
         $country_code   = $vat['iso'];
901 901
         $regex          = array();
902 902
         
903
-        switch ( $country_code ) {
903
+        switch ($country_code) {
904 904
             case 'AT':
905
-                $regex[] = '/^(AT)U(\d{8})$/';                           // Austria
905
+                $regex[] = '/^(AT)U(\d{8})$/'; // Austria
906 906
                 break;
907 907
             case 'BE':
908
-                $regex[] = '/^(BE)(0?\d{9})$/';                          // Belgium
908
+                $regex[] = '/^(BE)(0?\d{9})$/'; // Belgium
909 909
                 break;
910 910
             case 'BG':
911
-                $regex[] = '/^(BG)(\d{9,10})$/';                         // Bulgaria
911
+                $regex[] = '/^(BG)(\d{9,10})$/'; // Bulgaria
912 912
                 break;
913 913
             case 'CH':
914 914
             case 'CHE':
915
-                $regex[] = '/^(CHE)(\d{9})MWST$/';                       // Switzerland (Not EU)
915
+                $regex[] = '/^(CHE)(\d{9})MWST$/'; // Switzerland (Not EU)
916 916
                 break;
917 917
             case 'CY':
918
-                $regex[] = '/^(CY)([0-5|9]\d{7}[A-Z])$/';                // Cyprus
918
+                $regex[] = '/^(CY)([0-5|9]\d{7}[A-Z])$/'; // Cyprus
919 919
                 break;
920 920
             case 'CZ':
921
-                $regex[] = '/^(CZ)(\d{8,13})$/';                         // Czech Republic
921
+                $regex[] = '/^(CZ)(\d{8,13})$/'; // Czech Republic
922 922
                 break;
923 923
             case 'DE':
924
-                $regex[] = '/^(DE)([1-9]\d{8})$/';                       // Germany
924
+                $regex[] = '/^(DE)([1-9]\d{8})$/'; // Germany
925 925
                 break;
926 926
             case 'DK':
927
-                $regex[] = '/^(DK)(\d{8})$/';                            // Denmark
927
+                $regex[] = '/^(DK)(\d{8})$/'; // Denmark
928 928
                 break;
929 929
             case 'EE':
930
-                $regex[] = '/^(EE)(10\d{7})$/';                          // Estonia
930
+                $regex[] = '/^(EE)(10\d{7})$/'; // Estonia
931 931
                 break;
932 932
             case 'EL':
933
-                $regex[] = '/^(EL)(\d{9})$/';                            // Greece
933
+                $regex[] = '/^(EL)(\d{9})$/'; // Greece
934 934
                 break;
935 935
             case 'ES':
936
-                $regex[] = '/^(ES)([A-Z]\d{8})$/';                       // Spain (National juridical entities)
937
-                $regex[] = '/^(ES)([A-H|N-S|W]\d{7}[A-J])$/';            // Spain (Other juridical entities)
938
-                $regex[] = '/^(ES)([0-9|Y|Z]\d{7}[A-Z])$/';              // Spain (Personal entities type 1)
939
-                $regex[] = '/^(ES)([K|L|M|X]\d{7}[A-Z])$/';              // Spain (Personal entities type 2)
936
+                $regex[] = '/^(ES)([A-Z]\d{8})$/'; // Spain (National juridical entities)
937
+                $regex[] = '/^(ES)([A-H|N-S|W]\d{7}[A-J])$/'; // Spain (Other juridical entities)
938
+                $regex[] = '/^(ES)([0-9|Y|Z]\d{7}[A-Z])$/'; // Spain (Personal entities type 1)
939
+                $regex[] = '/^(ES)([K|L|M|X]\d{7}[A-Z])$/'; // Spain (Personal entities type 2)
940 940
                 break;
941 941
             case 'EU':
942
-                $regex[] = '/^(EU)(\d{9})$/';                            // EU-type
942
+                $regex[] = '/^(EU)(\d{9})$/'; // EU-type
943 943
                 break;
944 944
             case 'FI':
945
-                $regex[] = '/^(FI)(\d{8})$/';                            // Finland
945
+                $regex[] = '/^(FI)(\d{8})$/'; // Finland
946 946
                 break;
947 947
             case 'FR':
948
-                $regex[] = '/^(FR)(\d{11})$/';                           // France (1)
949
-                $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)](\d{10})$/';        // France (2)
950
-                $regex[] = '/^(FR)\d[(A-H)|(J-N)|(P-Z)](\d{9})$/';       // France (3)
951
-                $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)]{2}(\d{9})$/';      // France (4)
948
+                $regex[] = '/^(FR)(\d{11})$/'; // France (1)
949
+                $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)](\d{10})$/'; // France (2)
950
+                $regex[] = '/^(FR)\d[(A-H)|(J-N)|(P-Z)](\d{9})$/'; // France (3)
951
+                $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)]{2}(\d{9})$/'; // France (4)
952 952
                 break;
953 953
             case 'GB':
954
-                $regex[] = '/^(GB)?(\d{9})$/';                           // UK (Standard)
955
-                $regex[] = '/^(GB)?(\d{12})$/';                          // UK (Branches)
956
-                $regex[] = '/^(GB)?(GD\d{3})$/';                         // UK (Government)
957
-                $regex[] = '/^(GB)?(HA\d{3})$/';                         // UK (Health authority)
954
+                $regex[] = '/^(GB)?(\d{9})$/'; // UK (Standard)
955
+                $regex[] = '/^(GB)?(\d{12})$/'; // UK (Branches)
956
+                $regex[] = '/^(GB)?(GD\d{3})$/'; // UK (Government)
957
+                $regex[] = '/^(GB)?(HA\d{3})$/'; // UK (Health authority)
958 958
                 break;
959 959
             case 'GR':
960
-                $regex[] = '/^(GR)(\d{8,9})$/';                          // Greece
960
+                $regex[] = '/^(GR)(\d{8,9})$/'; // Greece
961 961
                 break;
962 962
             case 'HR':
963
-                $regex[] = '/^(HR)(\d{11})$/';                           // Croatia
963
+                $regex[] = '/^(HR)(\d{11})$/'; // Croatia
964 964
                 break;
965 965
             case 'HU':
966
-                $regex[] = '/^(HU)(\d{8})$/';                            // Hungary
966
+                $regex[] = '/^(HU)(\d{8})$/'; // Hungary
967 967
                 break;
968 968
             case 'IE':
969
-                $regex[] = '/^(IE)(\d{7}[A-W])$/';                       // Ireland (1)
970
-                $regex[] = '/^(IE)([7-9][A-Z\*\+)]\d{5}[A-W])$/';        // Ireland (2)
971
-                $regex[] = '/^(IE)(\d{7}[A-Z][AH])$/';                   // Ireland (3) (new format from 1 Jan 2013)
969
+                $regex[] = '/^(IE)(\d{7}[A-W])$/'; // Ireland (1)
970
+                $regex[] = '/^(IE)([7-9][A-Z\*\+)]\d{5}[A-W])$/'; // Ireland (2)
971
+                $regex[] = '/^(IE)(\d{7}[A-Z][AH])$/'; // Ireland (3) (new format from 1 Jan 2013)
972 972
                 break;
973 973
             case 'IT':
974
-                $regex[] = '/^(IT)(\d{11})$/';                           // Italy
974
+                $regex[] = '/^(IT)(\d{11})$/'; // Italy
975 975
                 break;
976 976
             case 'LV':
977
-                $regex[] = '/^(LV)(\d{11})$/';                           // Latvia
977
+                $regex[] = '/^(LV)(\d{11})$/'; // Latvia
978 978
                 break;
979 979
             case 'LT':
980
-                $regex[] = '/^(LT)(\d{9}|\d{12})$/';                     // Lithuania
980
+                $regex[] = '/^(LT)(\d{9}|\d{12})$/'; // Lithuania
981 981
                 break;
982 982
             case 'LU':
983
-                $regex[] = '/^(LU)(\d{8})$/';                            // Luxembourg
983
+                $regex[] = '/^(LU)(\d{8})$/'; // Luxembourg
984 984
                 break;
985 985
             case 'MT':
986
-                $regex[] = '/^(MT)([1-9]\d{7})$/';                       // Malta
986
+                $regex[] = '/^(MT)([1-9]\d{7})$/'; // Malta
987 987
                 break;
988 988
             case 'NL':
989
-                $regex[] = '/^(NL)(\d{9})B\d{2}$/';                      // Netherlands
989
+                $regex[] = '/^(NL)(\d{9})B\d{2}$/'; // Netherlands
990 990
                 break;
991 991
             case 'NO':
992
-                $regex[] = '/^(NO)(\d{9})$/';                            // Norway (Not EU)
992
+                $regex[] = '/^(NO)(\d{9})$/'; // Norway (Not EU)
993 993
                 break;
994 994
             case 'PL':
995
-                $regex[] = '/^(PL)(\d{10})$/';                           // Poland
995
+                $regex[] = '/^(PL)(\d{10})$/'; // Poland
996 996
                 break;
997 997
             case 'PT':
998
-                $regex[] = '/^(PT)(\d{9})$/';                            // Portugal
998
+                $regex[] = '/^(PT)(\d{9})$/'; // Portugal
999 999
                 break;
1000 1000
             case 'RO':
1001
-                $regex[] = '/^(RO)([1-9]\d{1,9})$/';                     // Romania
1001
+                $regex[] = '/^(RO)([1-9]\d{1,9})$/'; // Romania
1002 1002
                 break;
1003 1003
             case 'RS':
1004
-                $regex[] = '/^(RS)(\d{9})$/';                            // Serbia (Not EU)
1004
+                $regex[] = '/^(RS)(\d{9})$/'; // Serbia (Not EU)
1005 1005
                 break;
1006 1006
             case 'SI':
1007
-                $regex[] = '/^(SI)([1-9]\d{7})$/';                       // Slovenia
1007
+                $regex[] = '/^(SI)([1-9]\d{7})$/'; // Slovenia
1008 1008
                 break;
1009 1009
             case 'SK':
1010
-                $regex[] = '/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7})$/';        // Slovakia Republic
1010
+                $regex[] = '/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7})$/'; // Slovakia Republic
1011 1011
                 break;
1012 1012
             case 'SE':
1013
-                $regex[] = '/^(SE)(\d{10}01)$/';                         // Sweden
1013
+                $regex[] = '/^(SE)(\d{10}01)$/'; // Sweden
1014 1014
                 break;
1015 1015
             default:
1016 1016
                 $regex = array();
1017 1017
             break;
1018 1018
         }
1019 1019
         
1020
-        if ( empty( $regex ) ) {
1020
+        if (empty($regex)) {
1021 1021
             return false;
1022 1022
         }
1023 1023
         
1024
-        foreach ( $regex as $pattern ) {
1024
+        foreach ($regex as $pattern) {
1025 1025
             $matches = null;
1026
-            preg_match_all( $pattern, $vat_number, $matches );
1026
+            preg_match_all($pattern, $vat_number, $matches);
1027 1027
             
1028
-            if ( !empty( $matches[1][0] ) && !empty( $matches[2][0] ) ) {
1029
-                if ( $formatted ) {
1030
-                    return array( 'code' => $matches[1][0], 'number' => $matches[2][0] );
1028
+            if (!empty($matches[1][0]) && !empty($matches[2][0])) {
1029
+                if ($formatted) {
1030
+                    return array('code' => $matches[1][0], 'number' => $matches[2][0]);
1031 1031
                 } else {
1032 1032
                     return true;
1033 1033
                 }
@@ -1037,75 +1037,75 @@  discard block
 block discarded – undo
1037 1037
         return false;
1038 1038
     }
1039 1039
     
1040
-    public static function vies_check( $vat_number, $country_code = '', $result = false ) {
1041
-        $vat            = self::sanitize_vat( $vat_number, $country_code );
1040
+    public static function vies_check($vat_number, $country_code = '', $result = false) {
1041
+        $vat            = self::sanitize_vat($vat_number, $country_code);
1042 1042
         $vat_number     = $vat['vat'];
1043 1043
         $iso            = $vat['iso'];
1044 1044
         
1045
-        $url = 'http://ec.europa.eu/taxation_customs/vies/viesquer.do?ms=' . urlencode( $iso ) . '&iso=' . urlencode( $iso ) . '&vat=' . urlencode( $vat_number );
1045
+        $url = 'http://ec.europa.eu/taxation_customs/vies/viesquer.do?ms=' . urlencode($iso) . '&iso=' . urlencode($iso) . '&vat=' . urlencode($vat_number);
1046 1046
         
1047
-        if ( ini_get( 'allow_url_fopen' ) ) {
1048
-            $response = file_get_contents( $url );
1049
-        } else if ( function_exists( 'curl_init' ) ) {
1047
+        if (ini_get('allow_url_fopen')) {
1048
+            $response = file_get_contents($url);
1049
+        } else if (function_exists('curl_init')) {
1050 1050
             $ch = curl_init();
1051 1051
             
1052
-            curl_setopt( $ch, CURLOPT_URL, $url );
1053
-            curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 30 );
1054
-            curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
1055
-            curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 0 );
1056
-            curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, 0 );
1052
+            curl_setopt($ch, CURLOPT_URL, $url);
1053
+            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
1054
+            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
1055
+            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
1056
+            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
1057 1057
             
1058
-            $response = curl_exec( $ch );
1058
+            $response = curl_exec($ch);
1059 1059
             
1060
-            if ( curl_errno( $ch ) ) {
1061
-                wpinv_error_log( curl_error( $ch ), 'VIES CHECK ERROR' );
1060
+            if (curl_errno($ch)) {
1061
+                wpinv_error_log(curl_error($ch), 'VIES CHECK ERROR');
1062 1062
                 $response = '';
1063 1063
             }
1064 1064
             
1065
-            curl_close( $ch );
1065
+            curl_close($ch);
1066 1066
         } else {
1067
-            wpinv_error_log( 'To use VIES CHECK you must have allow_url_fopen is ON or cURL installed & active on your server.', 'VIES CHECK ERROR' );
1067
+            wpinv_error_log('To use VIES CHECK you must have allow_url_fopen is ON or cURL installed & active on your server.', 'VIES CHECK ERROR');
1068 1068
         }
1069 1069
         
1070
-        if ( empty( $response ) ) {
1070
+        if (empty($response)) {
1071 1071
             return $result;
1072 1072
         }
1073 1073
 
1074
-        if ( preg_match( '/invalid VAT number/i', $response ) ) {
1074
+        if (preg_match('/invalid VAT number/i', $response)) {
1075 1075
             return false;
1076
-        } else if ( preg_match( '/valid VAT number/i', $response, $matches ) ) {
1077
-            $content = explode( "valid VAT number", htmlentities( $response ) );
1076
+        } else if (preg_match('/valid VAT number/i', $response, $matches)) {
1077
+            $content = explode("valid VAT number", htmlentities($response));
1078 1078
             
1079
-            if ( !empty( $content[1] ) ) {
1080
-                preg_match_all( '/<tr>(.*?)<td.*?>(.*?)<\/td>(.*?)<\/tr>/si', html_entity_decode( $content[1] ), $matches );
1079
+            if (!empty($content[1])) {
1080
+                preg_match_all('/<tr>(.*?)<td.*?>(.*?)<\/td>(.*?)<\/tr>/si', html_entity_decode($content[1]), $matches);
1081 1081
                 
1082
-                if ( !empty( $matches[2] ) && $matches[3] ) {
1082
+                if (!empty($matches[2]) && $matches[3]) {
1083 1083
                     $return = array();
1084 1084
                     
1085
-                    foreach ( $matches[2] as $key => $label ) {
1086
-                        $label = trim( $label );
1085
+                    foreach ($matches[2] as $key => $label) {
1086
+                        $label = trim($label);
1087 1087
                         
1088
-                        switch ( strtolower( $label ) ) {
1088
+                        switch (strtolower($label)) {
1089 1089
                             case 'member state':
1090
-                                $return['state'] = trim( strip_tags( $matches[3][$key] ) );
1090
+                                $return['state'] = trim(strip_tags($matches[3][$key]));
1091 1091
                             break;
1092 1092
                             case 'vat number':
1093
-                                $return['number'] = trim( strip_tags( $matches[3][$key] ) );
1093
+                                $return['number'] = trim(strip_tags($matches[3][$key]));
1094 1094
                             break;
1095 1095
                             case 'name':
1096
-                                $return['company'] = trim( strip_tags( $matches[3][$key] ) );
1096
+                                $return['company'] = trim(strip_tags($matches[3][$key]));
1097 1097
                             break;
1098 1098
                             case 'address':
1099
-                                $address           = str_replace( array( "<br><br>", "<br /><br />", "<br/><br/>" ), "<br>", html_entity_decode( trim( $matches[3][$key] ) ) );
1100
-                                $return['address'] = trim( strip_tags( $address, '<br>' ) );
1099
+                                $address           = str_replace(array("<br><br>", "<br /><br />", "<br/><br/>"), "<br>", html_entity_decode(trim($matches[3][$key])));
1100
+                                $return['address'] = trim(strip_tags($address, '<br>'));
1101 1101
                             break;
1102 1102
                             case 'consultation number':
1103
-                                $return['consultation'] = trim( strip_tags( $matches[3][$key] ) );
1103
+                                $return['consultation'] = trim(strip_tags($matches[3][$key]));
1104 1104
                             break;
1105 1105
                         }
1106 1106
                     }
1107 1107
                     
1108
-                    if ( !empty( $return ) ) {
1108
+                    if (!empty($return)) {
1109 1109
                         return $return;
1110 1110
                     }
1111 1111
                 }
@@ -1117,55 +1117,55 @@  discard block
 block discarded – undo
1117 1117
         }
1118 1118
     }
1119 1119
     
1120
-    public static function check_vat( $vat_number, $country_code = '' ) {        
1120
+    public static function check_vat($vat_number, $country_code = '') {        
1121 1121
         $vat_name           = self::get_vat_name();
1122 1122
         
1123 1123
         $return             = array();
1124 1124
         $return['valid']    = false;
1125
-        $return['message']  = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name );
1125
+        $return['message']  = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name);
1126 1126
                 
1127
-        if ( !wpinv_get_option( 'vat_offline_check' ) && !self::offline_check( $vat_number, $country_code ) ) {
1127
+        if (!wpinv_get_option('vat_offline_check') && !self::offline_check($vat_number, $country_code)) {
1128 1128
             return $return;
1129 1129
         }
1130 1130
             
1131
-        $response = self::vies_check( $vat_number, $country_code );
1131
+        $response = self::vies_check($vat_number, $country_code);
1132 1132
         
1133
-        if ( $response ) {
1134
-            $return['valid']    = true;
1133
+        if ($response) {
1134
+            $return['valid'] = true;
1135 1135
             
1136
-            if ( is_array( $response ) ) {
1137
-                $return['company'] = isset( $response['company'] ) ? $response['company'] : '';
1138
-                $return['address'] = isset( $response['address'] ) ? $response['address'] : '';
1136
+            if (is_array($response)) {
1137
+                $return['company'] = isset($response['company']) ? $response['company'] : '';
1138
+                $return['address'] = isset($response['address']) ? $response['address'] : '';
1139 1139
                 $return['message'] = $return['company'] . '<br/>' . $return['address'];
1140 1140
             }
1141 1141
         } else {
1142 1142
             $return['valid']    = false;
1143
-            $return['message']  = wp_sprintf( __( 'Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing' ), $vat_name );
1143
+            $return['message']  = wp_sprintf(__('Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing'), $vat_name);
1144 1144
         }
1145 1145
         
1146 1146
         return $return;
1147 1147
     }
1148 1148
     
1149
-    public static function request_euvatrates( $group ) {
1149
+    public static function request_euvatrates($group) {
1150 1150
         $response               = array();
1151 1151
         $response['success']    = false;
1152 1152
         $response['error']      = null;
1153 1153
         $response['eurates']    = null;
1154 1154
         
1155 1155
         $euvatrates_url = 'https://euvatrates.com/rates.json';
1156
-        $euvatrates_url = apply_filters( 'wpinv_euvatrates_url', $euvatrates_url );
1157
-        $api_response   = wp_remote_get( $euvatrates_url );
1156
+        $euvatrates_url = apply_filters('wpinv_euvatrates_url', $euvatrates_url);
1157
+        $api_response   = wp_remote_get($euvatrates_url);
1158 1158
     
1159 1159
         try {
1160
-            if ( is_wp_error( $api_response ) ) {
1161
-                $response['error']      = __( $api_response->get_error_message(), 'invoicing' );
1160
+            if (is_wp_error($api_response)) {
1161
+                $response['error'] = __($api_response->get_error_message(), 'invoicing');
1162 1162
             } else {
1163
-                $body = json_decode( $api_response['body'] );
1163
+                $body = json_decode($api_response['body']);
1164 1164
                 
1165
-                if ( isset( $body->rates ) ) {
1165
+                if (isset($body->rates)) {
1166 1166
                     $rates = array();
1167 1167
                     
1168
-                    foreach ( $body->rates as $country_code => $rate ) {
1168
+                    foreach ($body->rates as $country_code => $rate) {
1169 1169
                         $vat_rate = array();
1170 1170
                         $vat_rate['country']        = $rate->country;
1171 1171
                         $vat_rate['standard']       = (float)$rate->standard_rate;
@@ -1173,7 +1173,7 @@  discard block
 block discarded – undo
1173 1173
                         $vat_rate['superreduced']   = (float)$rate->super_reduced_rate;
1174 1174
                         $vat_rate['parking']        = (float)$rate->parking_rate;
1175 1175
                         
1176
-                        if ( $group !== '' && in_array( $group, array( 'standard', 'reduced', 'superreduced', 'parking' ) ) ) {
1176
+                        if ($group !== '' && in_array($group, array('standard', 'reduced', 'superreduced', 'parking'))) {
1177 1177
                             $vat_rate_group = array();
1178 1178
                             $vat_rate_group['country'] = $rate->country;
1179 1179
                             $vat_rate_group[$group]    = $vat_rate[$group];
@@ -1185,79 +1185,79 @@  discard block
 block discarded – undo
1185 1185
                     }
1186 1186
                     
1187 1187
                     $response['success']    = true;                                
1188
-                    $response['rates']      = apply_filters( 'wpinv_process_euvatrates', $rates, $api_response, $group );
1188
+                    $response['rates']      = apply_filters('wpinv_process_euvatrates', $rates, $api_response, $group);
1189 1189
                 } else {
1190
-                    $response['error']      = __( 'No EU rates found!', 'invoicing' );
1190
+                    $response['error']      = __('No EU rates found!', 'invoicing');
1191 1191
                 }
1192 1192
             }
1193
-        } catch ( Exception $e ) {
1194
-            $response['error'] = __( $e->getMessage(), 'invoicing' );
1193
+        } catch (Exception $e) {
1194
+            $response['error'] = __($e->getMessage(), 'invoicing');
1195 1195
         }
1196 1196
         
1197
-        return apply_filters( 'wpinv_response_euvatrates', $response, $group );
1197
+        return apply_filters('wpinv_response_euvatrates', $response, $group);
1198 1198
     }    
1199 1199
     
1200
-    public static function requires_vat( $requires_vat = false, $user_id = 0, $is_digital = null ) {
1200
+    public static function requires_vat($requires_vat = false, $user_id = 0, $is_digital = null) {
1201 1201
         global $wpi_item_id, $wpi_country;
1202 1202
         
1203
-        if ( !empty( $_POST['wpinv_country'] ) ) {
1204
-            $country_code = trim( $_POST['wpinv_country'] );
1205
-        } else if ( !empty( $_POST['country'] ) ) {
1206
-            $country_code = trim( $_POST['country'] );
1207
-        } else if ( !empty( $wpi_country ) ) {
1203
+        if (!empty($_POST['wpinv_country'])) {
1204
+            $country_code = trim($_POST['wpinv_country']);
1205
+        } else if (!empty($_POST['country'])) {
1206
+            $country_code = trim($_POST['country']);
1207
+        } else if (!empty($wpi_country)) {
1208 1208
             $country_code = $wpi_country;
1209 1209
         } else {
1210
-            $country_code = self::get_user_country( '', $user_id );
1210
+            $country_code = self::get_user_country('', $user_id);
1211 1211
         }
1212 1212
         
1213
-        if ( $is_digital === null && $wpi_item_id ) {
1214
-            $is_digital = $wpi_item_id ? self::item_has_digital_rule( $wpi_item_id ) : self::allow_vat_rules();
1213
+        if ($is_digital === null && $wpi_item_id) {
1214
+            $is_digital = $wpi_item_id ? self::item_has_digital_rule($wpi_item_id) : self::allow_vat_rules();
1215 1215
         }
1216 1216
         
1217
-        if ( !empty( $country_code ) ) {
1218
-            $requires_vat = ( self::is_eu_state( $country_code ) && ( self::is_eu_state( self::$default_country ) || $is_digital ) ) || ( self::is_gst_country( $country_code ) && self::is_gst_country( self::$default_country ) );
1217
+        if (!empty($country_code)) {
1218
+            $requires_vat = (self::is_eu_state($country_code) && (self::is_eu_state(self::$default_country) || $is_digital)) || (self::is_gst_country($country_code) && self::is_gst_country(self::$default_country));
1219 1219
         }
1220 1220
         
1221
-        return apply_filters( 'wpinv_requires_vat', $requires_vat, $user_id );
1221
+        return apply_filters('wpinv_requires_vat', $requires_vat, $user_id);
1222 1222
     }
1223 1223
     
1224
-    public static function tax_label( $label = '' ) {
1224
+    public static function tax_label($label = '') {
1225 1225
         global $wpi_requires_vat;
1226 1226
         
1227
-        if ( !( $wpi_requires_vat !== 0 && $wpi_requires_vat ) ) {
1228
-            $wpi_requires_vat = self::requires_vat( 0, false );
1227
+        if (!($wpi_requires_vat !== 0 && $wpi_requires_vat)) {
1228
+            $wpi_requires_vat = self::requires_vat(0, false);
1229 1229
         }
1230 1230
         
1231
-        return $wpi_requires_vat ? __( self::get_vat_name(), 'invoicing' ) : ( $label ? $label : __( 'Tax', 'invoicing' ) );
1231
+        return $wpi_requires_vat ? __(self::get_vat_name(), 'invoicing') : ($label ? $label : __('Tax', 'invoicing'));
1232 1232
     }
1233 1233
     
1234 1234
     public static function standard_rates_label() {
1235
-        return __( 'Standard Rates', 'invoicing' );
1235
+        return __('Standard Rates', 'invoicing');
1236 1236
     }
1237 1237
     
1238
-    public static function get_rate_classes( $with_desc = false ) {        
1239
-        $rate_classes_option = get_option( '_wpinv_vat_rate_classes', true );
1240
-        $classes = maybe_unserialize( $rate_classes_option );
1238
+    public static function get_rate_classes($with_desc = false) {        
1239
+        $rate_classes_option = get_option('_wpinv_vat_rate_classes', true);
1240
+        $classes = maybe_unserialize($rate_classes_option);
1241 1241
         
1242
-        if ( empty( $classes ) || !is_array( $classes ) ) {
1242
+        if (empty($classes) || !is_array($classes)) {
1243 1243
             $classes = array();
1244 1244
         }
1245 1245
 
1246 1246
         $rate_classes = array();
1247
-        if ( !array_key_exists( '_standard', $classes ) ) {
1248
-            if ( $with_desc ) {
1249
-                $rate_classes['_standard'] = array( 'name' => self::standard_rates_label(), 'desc' => __( 'EU member states standard VAT rates', 'invoicing' ) );
1247
+        if (!array_key_exists('_standard', $classes)) {
1248
+            if ($with_desc) {
1249
+                $rate_classes['_standard'] = array('name' => self::standard_rates_label(), 'desc' => __('EU member states standard VAT rates', 'invoicing'));
1250 1250
             } else {
1251 1251
                 $rate_classes['_standard'] = self::standard_rates_label();
1252 1252
             }
1253 1253
         }
1254 1254
         
1255
-        foreach ( $classes as $key => $class ) {
1256
-            $name = !empty( $class['name'] ) ? __( $class['name'], 'invoicing' ) : $key;
1257
-            $desc = !empty( $class['desc'] ) ? __( $class['desc'], 'invoicing' ) : '';
1255
+        foreach ($classes as $key => $class) {
1256
+            $name = !empty($class['name']) ? __($class['name'], 'invoicing') : $key;
1257
+            $desc = !empty($class['desc']) ? __($class['desc'], 'invoicing') : '';
1258 1258
             
1259
-            if ( $with_desc ) {
1260
-                $rate_classes[$key] = array( 'name' => $name, 'desc' => $desc );
1259
+            if ($with_desc) {
1260
+                $rate_classes[$key] = array('name' => $name, 'desc' => $desc);
1261 1261
             } else {
1262 1262
                 $rate_classes[$key] = $name;
1263 1263
             }
@@ -1268,15 +1268,15 @@  discard block
 block discarded – undo
1268 1268
     
1269 1269
     public static function get_all_classes() {        
1270 1270
         $classes            = self::get_rate_classes();
1271
-        $classes['_exempt'] = __( 'Exempt (0%)', 'invoicing' );
1271
+        $classes['_exempt'] = __('Exempt (0%)', 'invoicing');
1272 1272
         
1273
-        return apply_filters( 'wpinv_vat_get_all_classes', $classes );
1273
+        return apply_filters('wpinv_vat_get_all_classes', $classes);
1274 1274
     }
1275 1275
     
1276
-    public static function get_class_desc( $rate_class ) {        
1277
-        $rate_classes = self::get_rate_classes( true );
1276
+    public static function get_class_desc($rate_class) {        
1277
+        $rate_classes = self::get_rate_classes(true);
1278 1278
 
1279
-        if ( !empty( $rate_classes ) && isset( $rate_classes[$rate_class] ) && isset( $rate_classes[$rate_class]['desc'] ) ) {
1279
+        if (!empty($rate_classes) && isset($rate_classes[$rate_class]) && isset($rate_classes[$rate_class]['desc'])) {
1280 1280
             return $rate_classes[$rate_class]['desc'];
1281 1281
         }
1282 1282
         
@@ -1292,106 +1292,106 @@  discard block
 block discarded – undo
1292 1292
             'increased'     => 'Increased'
1293 1293
         );
1294 1294
         
1295
-        return apply_filters( 'wpinv_get_vat_groups', $vat_groups );
1295
+        return apply_filters('wpinv_get_vat_groups', $vat_groups);
1296 1296
     }
1297 1297
 
1298 1298
     public static function get_rules() {
1299 1299
         $vat_rules = array(
1300
-            'digital' => __( 'Digital Product', 'invoicing' ),
1301
-            'physical' => __( 'Physical Product', 'invoicing' )
1300
+            'digital' => __('Digital Product', 'invoicing'),
1301
+            'physical' => __('Physical Product', 'invoicing')
1302 1302
         );
1303
-        return apply_filters( 'wpinv_get_vat_rules', $vat_rules );
1303
+        return apply_filters('wpinv_get_vat_rules', $vat_rules);
1304 1304
     }
1305 1305
 
1306
-    public static function get_vat_rates( $class ) {
1307
-        if ( $class === '_standard' ) {
1306
+    public static function get_vat_rates($class) {
1307
+        if ($class === '_standard') {
1308 1308
             return wpinv_get_tax_rates();
1309 1309
         }
1310 1310
 
1311 1311
         $rates = self::get_non_standard_rates();
1312 1312
 
1313
-        return array_key_exists( $class, $rates ) ? $rates[$class] : array();
1313
+        return array_key_exists($class, $rates) ? $rates[$class] : array();
1314 1314
     }
1315 1315
 
1316 1316
     public static function get_non_standard_rates() {
1317
-        $option = get_option( 'wpinv_vat_rates', array());
1318
-        return is_array( $option ) ? $option : array();
1317
+        $option = get_option('wpinv_vat_rates', array());
1318
+        return is_array($option) ? $option : array();
1319 1319
     }
1320 1320
     
1321 1321
     public static function allow_vat_rules() {
1322
-        return ( wpinv_use_taxes() && wpinv_get_option( 'apply_vat_rules' ) ? true : false );
1322
+        return (wpinv_use_taxes() && wpinv_get_option('apply_vat_rules') ? true : false);
1323 1323
     }
1324 1324
     
1325 1325
     public static function allow_vat_classes() {
1326 1326
         return false; // TODO
1327
-        return ( wpinv_get_option( 'vat_allow_classes' ) ? true : false );
1327
+        return (wpinv_get_option('vat_allow_classes') ? true : false);
1328 1328
     }
1329 1329
     
1330
-    public static function get_item_class( $postID ) {
1331
-        $class = get_post_meta( $postID, '_wpinv_vat_class', true );
1330
+    public static function get_item_class($postID) {
1331
+        $class = get_post_meta($postID, '_wpinv_vat_class', true);
1332 1332
 
1333
-        if ( empty( $class ) ) {
1333
+        if (empty($class)) {
1334 1334
             $class = '_standard';
1335 1335
         }
1336 1336
         
1337
-        return apply_filters( 'wpinv_get_item_vat_class', $class, $postID );
1337
+        return apply_filters('wpinv_get_item_vat_class', $class, $postID);
1338 1338
     }
1339 1339
     
1340
-    public static function item_class_label( $postID ) {        
1340
+    public static function item_class_label($postID) {        
1341 1341
         $vat_classes = self::get_all_classes();
1342 1342
         
1343
-        $class = self::get_item_class( $postID );
1344
-        $class = isset( $vat_classes[$class] ) ? $vat_classes[$class] : __( $class, 'invoicing' );
1343
+        $class = self::get_item_class($postID);
1344
+        $class = isset($vat_classes[$class]) ? $vat_classes[$class] : __($class, 'invoicing');
1345 1345
         
1346
-        return apply_filters( 'wpinv_item_class_label', $class, $postID );
1346
+        return apply_filters('wpinv_item_class_label', $class, $postID);
1347 1347
     }
1348 1348
     
1349
-    public static function get_item_rule( $postID ) {        
1350
-        $rule_type = get_post_meta( $postID, '_wpinv_vat_rule', true );
1349
+    public static function get_item_rule($postID) {        
1350
+        $rule_type = get_post_meta($postID, '_wpinv_vat_rule', true);
1351 1351
         
1352
-        if ( empty( $rule_type ) ) {        
1352
+        if (empty($rule_type)) {        
1353 1353
             $rule_type = self::allow_vat_rules() ? 'digital' : 'physical';
1354 1354
         }
1355 1355
         
1356
-        return apply_filters( 'wpinv_item_get_vat_rule', $rule_type, $postID );
1356
+        return apply_filters('wpinv_item_get_vat_rule', $rule_type, $postID);
1357 1357
     }
1358 1358
     
1359
-    public static function item_rule_label( $postID ) {
1359
+    public static function item_rule_label($postID) {
1360 1360
         $vat_rules  = self::get_rules();
1361
-        $vat_rule   = self::get_item_rule( $postID );
1362
-        $vat_rule   = isset( $vat_rules[$vat_rule] ) ? $vat_rules[$vat_rule] : $vat_rule;
1361
+        $vat_rule   = self::get_item_rule($postID);
1362
+        $vat_rule   = isset($vat_rules[$vat_rule]) ? $vat_rules[$vat_rule] : $vat_rule;
1363 1363
         
1364
-        return apply_filters( 'wpinv_item_rule_label', $vat_rule, $postID );
1364
+        return apply_filters('wpinv_item_rule_label', $vat_rule, $postID);
1365 1365
     }
1366 1366
     
1367
-    public static function item_has_digital_rule( $item_id = 0 ) {        
1368
-        return self::get_item_rule( $item_id ) == 'digital' ? true : false;
1367
+    public static function item_has_digital_rule($item_id = 0) {        
1368
+        return self::get_item_rule($item_id) == 'digital' ? true : false;
1369 1369
     }
1370 1370
     
1371
-    public static function invoice_has_digital_rule( $invoice = 0 ) {        
1372
-        if ( !self::allow_vat_rules() ) {
1371
+    public static function invoice_has_digital_rule($invoice = 0) {        
1372
+        if (!self::allow_vat_rules()) {
1373 1373
             return false;
1374 1374
         }
1375 1375
         
1376
-        if ( empty( $invoice ) ) {
1376
+        if (empty($invoice)) {
1377 1377
             return true;
1378 1378
         }
1379 1379
         
1380
-        if ( is_int( $invoice ) ) {
1381
-            $invoice = new WPInv_Invoice( $invoice );
1380
+        if (is_int($invoice)) {
1381
+            $invoice = new WPInv_Invoice($invoice);
1382 1382
         }
1383 1383
         
1384
-        if ( !( is_object( $invoice ) && is_a( $invoice, 'WPInv_Invoice' ) ) ) {
1384
+        if (!(is_object($invoice) && is_a($invoice, 'WPInv_Invoice'))) {
1385 1385
             return true;
1386 1386
         }
1387 1387
         
1388
-        $cart_items  = $invoice->get_cart_details();
1388
+        $cart_items = $invoice->get_cart_details();
1389 1389
         
1390
-        if ( !empty( $cart_items ) ) {
1390
+        if (!empty($cart_items)) {
1391 1391
             $has_digital_rule = false;
1392 1392
             
1393
-            foreach ( $cart_items as $key => $item ) {
1394
-                if ( self::item_has_digital_rule( $item['id'] ) ) {
1393
+            foreach ($cart_items as $key => $item) {
1394
+                if (self::item_has_digital_rule($item['id'])) {
1395 1395
                     $has_digital_rule = true;
1396 1396
                     break;
1397 1397
                 }
@@ -1403,67 +1403,67 @@  discard block
 block discarded – undo
1403 1403
         return $has_digital_rule;
1404 1404
     }
1405 1405
     
1406
-    public static function item_is_taxable( $item_id = 0, $country = false, $state = false ) {        
1407
-        if ( !wpinv_use_taxes() ) {
1406
+    public static function item_is_taxable($item_id = 0, $country = false, $state = false) {        
1407
+        if (!wpinv_use_taxes()) {
1408 1408
             return false;
1409 1409
         }
1410 1410
         
1411 1411
         $is_taxable = true;
1412 1412
 
1413
-        if ( !empty( $item_id ) && self::get_item_class( $item_id ) == '_exempt' ) {
1413
+        if (!empty($item_id) && self::get_item_class($item_id) == '_exempt') {
1414 1414
             $is_taxable = false;
1415 1415
         }
1416 1416
         
1417
-        return apply_filters( 'wpinv_item_is_taxable', $is_taxable, $item_id, $country , $state );
1417
+        return apply_filters('wpinv_item_is_taxable', $is_taxable, $item_id, $country, $state);
1418 1418
     }
1419 1419
     
1420
-    public static function find_rate( $country, $state, $rate, $class ) {
1420
+    public static function find_rate($country, $state, $rate, $class) {
1421 1421
         global $wpi_zero_tax;
1422 1422
 
1423
-        if ( $class === '_exempt' || $wpi_zero_tax ) {
1423
+        if ($class === '_exempt' || $wpi_zero_tax) {
1424 1424
             return 0;
1425 1425
         }
1426 1426
 
1427
-        $tax_rates   = wpinv_get_tax_rates();
1427
+        $tax_rates = wpinv_get_tax_rates();
1428 1428
         
1429
-        if ( $class !== '_standard' ) {
1430
-            $class_rates = self::get_vat_rates( $class );
1429
+        if ($class !== '_standard') {
1430
+            $class_rates = self::get_vat_rates($class);
1431 1431
             
1432
-            if ( is_array( $class_rates ) ) {
1432
+            if (is_array($class_rates)) {
1433 1433
                 $indexed_class_rates = array();
1434 1434
                 
1435
-                foreach ( $class_rates as $key => $cr ) {
1435
+                foreach ($class_rates as $key => $cr) {
1436 1436
                     $indexed_class_rates[$cr['country']] = $cr;
1437 1437
                 }
1438 1438
 
1439
-                $tax_rates = array_map( function( $tr ) use( $indexed_class_rates ) {
1439
+                $tax_rates = array_map(function($tr) use($indexed_class_rates) {
1440 1440
                     $tr_country = $tr['country'];
1441
-                    if ( !isset( $indexed_class_rates[$tr_country] ) ) {
1441
+                    if (!isset($indexed_class_rates[$tr_country])) {
1442 1442
                         return $tr;
1443 1443
                     }
1444 1444
                     $icr = $indexed_class_rates[$tr_country];
1445
-                    return ( empty( $icr['rate'] ) && $icr['rate'] !== '0' ) ? $tr : $icr;
1445
+                    return (empty($icr['rate']) && $icr['rate'] !== '0') ? $tr : $icr;
1446 1446
 
1447
-                }, $tax_rates, $class_rates );
1447
+                }, $tax_rates, $class_rates);
1448 1448
             }
1449 1449
         }
1450 1450
 
1451
-        if ( !empty( $tax_rates ) ) {
1452
-            foreach ( $tax_rates as $key => $tax_rate ) {
1453
-                if ( $country != $tax_rate['country'] )
1451
+        if (!empty($tax_rates)) {
1452
+            foreach ($tax_rates as $key => $tax_rate) {
1453
+                if ($country != $tax_rate['country'])
1454 1454
                     continue;
1455 1455
 
1456
-                if ( !empty( $tax_rate['global'] ) ) {
1457
-                    if ( 0 !== $tax_rate['rate'] || !empty( $tax_rate['rate'] ) ) {
1458
-                        $rate = number_format( $tax_rate['rate'], 4 );
1456
+                if (!empty($tax_rate['global'])) {
1457
+                    if (0 !== $tax_rate['rate'] || !empty($tax_rate['rate'])) {
1458
+                        $rate = number_format($tax_rate['rate'], 4);
1459 1459
                     }
1460 1460
                 } else {
1461
-                    if ( empty( $tax_rate['state'] ) || strtolower( $state ) != strtolower( $tax_rate['state'] ) )
1461
+                    if (empty($tax_rate['state']) || strtolower($state) != strtolower($tax_rate['state']))
1462 1462
                         continue;
1463 1463
 
1464 1464
                     $state_rate = $tax_rate['rate'];
1465
-                    if ( 0 !== $state_rate || !empty( $state_rate ) ) {
1466
-                        $rate = number_format( $state_rate, 4 );
1465
+                    if (0 !== $state_rate || !empty($state_rate)) {
1466
+                        $rate = number_format($state_rate, 4);
1467 1467
                     }
1468 1468
                 }
1469 1469
             }
@@ -1472,84 +1472,84 @@  discard block
 block discarded – undo
1472 1472
         return $rate;
1473 1473
     }
1474 1474
     
1475
-    public static function get_rate( $rate = 1, $country = '', $state = '', $item_id = 0 ) {
1475
+    public static function get_rate($rate = 1, $country = '', $state = '', $item_id = 0) {
1476 1476
         global $wpinv_options, $wpi_session, $wpi_item_id, $wpi_zero_tax;
1477 1477
         
1478 1478
         $item_id = $item_id > 0 ? $item_id : $wpi_item_id;
1479 1479
         $allow_vat_classes = self::allow_vat_classes();
1480
-        $class = $item_id ? self::get_item_class( $item_id ) : '_standard';
1480
+        $class = $item_id ? self::get_item_class($item_id) : '_standard';
1481 1481
 
1482
-        if ( $class === '_exempt' || $wpi_zero_tax ) {
1482
+        if ($class === '_exempt' || $wpi_zero_tax) {
1483 1483
             return 0;
1484
-        } else if ( !$allow_vat_classes ) {
1484
+        } else if (!$allow_vat_classes) {
1485 1485
             $class = '_standard';
1486 1486
         }
1487 1487
 
1488
-        if( !empty( $_POST['wpinv_country'] ) ) {
1488
+        if (!empty($_POST['wpinv_country'])) {
1489 1489
             $post_country = $_POST['wpinv_country'];
1490
-        } elseif( !empty( $_POST['wpinv_country'] ) ) {
1490
+        } elseif (!empty($_POST['wpinv_country'])) {
1491 1491
             $post_country = $_POST['wpinv_country'];
1492
-        } elseif( !empty( $_POST['country'] ) ) {
1492
+        } elseif (!empty($_POST['country'])) {
1493 1493
             $post_country = $_POST['country'];
1494 1494
         } else {
1495 1495
             $post_country = '';
1496 1496
         }
1497 1497
 
1498
-        $country        = !empty( $post_country ) ? $post_country : wpinv_default_billing_country( $country );
1499
-        $base_country   = wpinv_is_base_country( $country );
1498
+        $country        = !empty($post_country) ? $post_country : wpinv_default_billing_country($country);
1499
+        $base_country   = wpinv_is_base_country($country);
1500 1500
         
1501
-        $requires_vat   = self::requires_vat( 0, false );
1502
-        $is_digital     = self::get_item_rule( $item_id ) == 'digital' ;
1503
-        $rate           = $requires_vat && isset( $wpinv_options['eu_fallback_rate'] ) ? $wpinv_options['eu_fallback_rate'] : $rate;
1501
+        $requires_vat   = self::requires_vat(0, false);
1502
+        $is_digital     = self::get_item_rule($item_id) == 'digital';
1503
+        $rate           = $requires_vat && isset($wpinv_options['eu_fallback_rate']) ? $wpinv_options['eu_fallback_rate'] : $rate;
1504 1504
           
1505
-        if ( self::same_country_rule() == 'no' && $base_country ) { // Disable VAT to same country
1505
+        if (self::same_country_rule() == 'no' && $base_country) { // Disable VAT to same country
1506 1506
             $rate = 0;
1507
-        } else if ( $requires_vat ) {
1508
-            $vat_number = self::get_user_vat_number( '', 0, true );
1507
+        } else if ($requires_vat) {
1508
+            $vat_number = self::get_user_vat_number('', 0, true);
1509 1509
             $vat_info   = self::current_vat_data();
1510 1510
             
1511
-            if ( is_array( $vat_info ) ) {
1512
-                $vat_number = isset( $vat_info['number'] ) && !empty( $vat_info['valid'] ) ? $vat_info['number'] : "";
1511
+            if (is_array($vat_info)) {
1512
+                $vat_number = isset($vat_info['number']) && !empty($vat_info['valid']) ? $vat_info['number'] : "";
1513 1513
             }
1514 1514
             
1515
-            if ( $country == 'UK' ) {
1515
+            if ($country == 'UK') {
1516 1516
                 $country = 'GB';
1517 1517
             }
1518 1518
 
1519
-            if ( !empty( $vat_number ) ) {
1519
+            if (!empty($vat_number)) {
1520 1520
                 $rate = 0;
1521 1521
             } else {
1522
-                $rate = self::find_rate( $country, $state, $rate, $class ); // Fix if there are no tax rated and you try to pay an invoice it does not add the fallback tax rate
1522
+                $rate = self::find_rate($country, $state, $rate, $class); // Fix if there are no tax rated and you try to pay an invoice it does not add the fallback tax rate
1523 1523
             }
1524 1524
 
1525
-            if ( empty( $vat_number ) && !$is_digital ) {
1526
-                if ( $base_country ) {
1527
-                    $rate = self::find_rate( $country, null, $rate, $class );
1525
+            if (empty($vat_number) && !$is_digital) {
1526
+                if ($base_country) {
1527
+                    $rate = self::find_rate($country, null, $rate, $class);
1528 1528
                 } else {
1529
-                    if ( empty( $country ) && isset( $wpinv_options['eu_fallback_rate'] ) ) {
1529
+                    if (empty($country) && isset($wpinv_options['eu_fallback_rate'])) {
1530 1530
                         $rate = $wpinv_options['eu_fallback_rate'];
1531
-                    } else if( !empty( $country ) ) {
1532
-                        $rate = self::find_rate( $country, $state, $rate, $class );
1531
+                    } else if (!empty($country)) {
1532
+                        $rate = self::find_rate($country, $state, $rate, $class);
1533 1533
                     }
1534 1534
                 }
1535
-            } else if ( empty( $vat_number ) || ( self::same_country_rule() == 'always' && $base_country ) ) {
1536
-                if ( empty( $country ) && isset( $wpinv_options['eu_fallback_rate'] ) ) {
1535
+            } else if (empty($vat_number) || (self::same_country_rule() == 'always' && $base_country)) {
1536
+                if (empty($country) && isset($wpinv_options['eu_fallback_rate'])) {
1537 1537
                     $rate = $wpinv_options['eu_fallback_rate'];
1538
-                } else if( !empty( $country ) ) {
1539
-                    $rate = self::find_rate( $country, $state, $rate, $class );
1538
+                } else if (!empty($country)) {
1539
+                    $rate = self::find_rate($country, $state, $rate, $class);
1540 1540
                 }
1541 1541
             }
1542 1542
         } else {
1543
-            if ( $is_digital ) {
1543
+            if ($is_digital) {
1544 1544
                 $ip_country_code = self::get_country_by_ip();
1545 1545
                 
1546
-                if ( $ip_country_code && self::is_eu_state( $ip_country_code ) ) {
1547
-                    $rate = self::find_rate( $ip_country_code, '', 0, $class );
1546
+                if ($ip_country_code && self::is_eu_state($ip_country_code)) {
1547
+                    $rate = self::find_rate($ip_country_code, '', 0, $class);
1548 1548
                 } else {
1549
-                    $rate = self::find_rate( $country, $state, $rate, $class );
1549
+                    $rate = self::find_rate($country, $state, $rate, $class);
1550 1550
                 }
1551 1551
             } else {
1552
-                $rate = self::find_rate( $country, $state, $rate, $class );
1552
+                $rate = self::find_rate($country, $state, $rate, $class);
1553 1553
             }
1554 1554
         }
1555 1555
 
@@ -1559,48 +1559,48 @@  discard block
 block discarded – undo
1559 1559
     public static function current_vat_data() {
1560 1560
         global $wpi_session;
1561 1561
         
1562
-        return $wpi_session->get( 'user_vat_data' );
1562
+        return $wpi_session->get('user_vat_data');
1563 1563
     }
1564 1564
     
1565
-    public static function get_user_country( $country = '', $user_id = 0 ) {
1566
-        $user_address = wpinv_get_user_address( $user_id, false );
1565
+    public static function get_user_country($country = '', $user_id = 0) {
1566
+        $user_address = wpinv_get_user_address($user_id, false);
1567 1567
         
1568
-        if ( wpinv_get_option( 'vat_ip_country_default' ) ) {
1568
+        if (wpinv_get_option('vat_ip_country_default')) {
1569 1569
             $country = '';
1570 1570
         }
1571 1571
         
1572
-        $country    = empty( $user_address ) || !isset( $user_address['country'] ) || empty( $user_address['country'] ) ? $country : $user_address['country'];
1573
-        $result     = apply_filters( 'wpinv_get_user_country', $country, $user_id );
1572
+        $country    = empty($user_address) || !isset($user_address['country']) || empty($user_address['country']) ? $country : $user_address['country'];
1573
+        $result     = apply_filters('wpinv_get_user_country', $country, $user_id);
1574 1574
 
1575
-        if ( empty( $result ) ) {
1575
+        if (empty($result)) {
1576 1576
             $result = self::get_country_by_ip();
1577 1577
         }
1578 1578
 
1579 1579
         return $result;
1580 1580
     }
1581 1581
     
1582
-    public static function set_user_country( $country = '', $user_id = 0 ) {
1582
+    public static function set_user_country($country = '', $user_id = 0) {
1583 1583
         global $wpi_userID;
1584 1584
         
1585
-        if ( empty($country) && !empty($wpi_userID) && get_current_user_id() != $wpi_userID ) {
1585
+        if (empty($country) && !empty($wpi_userID) && get_current_user_id() != $wpi_userID) {
1586 1586
             $country = wpinv_get_default_country();
1587 1587
         }
1588 1588
         
1589 1589
         return $country;
1590 1590
     }
1591 1591
     
1592
-    public static function get_user_vat_number( $vat_number = '', $user_id = 0, $is_valid = false ) {
1592
+    public static function get_user_vat_number($vat_number = '', $user_id = 0, $is_valid = false) {
1593 1593
         global $wpi_current_id, $wpi_userID;
1594 1594
         
1595
-        if ( !empty( $_POST['new_user'] ) ) {
1595
+        if (!empty($_POST['new_user'])) {
1596 1596
             return '';
1597 1597
         }
1598 1598
         
1599
-        if ( empty( $user_id ) ) {
1600
-            $user_id = !empty( $wpi_userID ) ? $wpi_userID : ( $wpi_current_id ? wpinv_get_user_id( $wpi_current_id ) : get_current_user_id() );
1599
+        if (empty($user_id)) {
1600
+            $user_id = !empty($wpi_userID) ? $wpi_userID : ($wpi_current_id ? wpinv_get_user_id($wpi_current_id) : get_current_user_id());
1601 1601
         }
1602 1602
 
1603
-        $vat_number = empty( $user_id ) ? '' : get_user_meta( $user_id, '_wpinv_vat_number', true );
1603
+        $vat_number = empty($user_id) ? '' : get_user_meta($user_id, '_wpinv_vat_number', true);
1604 1604
         
1605 1605
         /* TODO
1606 1606
         if ( $is_valid && $vat_number ) {
@@ -1611,38 +1611,38 @@  discard block
 block discarded – undo
1611 1611
         }
1612 1612
         */
1613 1613
 
1614
-        return apply_filters('wpinv_get_user_vat_number', $vat_number, $user_id, $is_valid );
1614
+        return apply_filters('wpinv_get_user_vat_number', $vat_number, $user_id, $is_valid);
1615 1615
     }
1616 1616
     
1617
-    public static function get_user_company( $company = '', $user_id = 0 ) {
1617
+    public static function get_user_company($company = '', $user_id = 0) {
1618 1618
         global $wpi_current_id, $wpi_userID;
1619 1619
         
1620
-        if ( empty( $user_id ) ) {
1621
-            $user_id = !empty( $wpi_userID ) ? $wpi_userID : ( $wpi_current_id ? wpinv_get_user_id( $wpi_current_id ) : get_current_user_id() );
1620
+        if (empty($user_id)) {
1621
+            $user_id = !empty($wpi_userID) ? $wpi_userID : ($wpi_current_id ? wpinv_get_user_id($wpi_current_id) : get_current_user_id());
1622 1622
         }
1623 1623
 
1624
-        $company = empty( $user_id ) ? "" : get_user_meta( $user_id, '_wpinv_company', true );
1624
+        $company = empty($user_id) ? "" : get_user_meta($user_id, '_wpinv_company', true);
1625 1625
 
1626
-        return apply_filters( 'wpinv_user_company', $company, $user_id );
1626
+        return apply_filters('wpinv_user_company', $company, $user_id);
1627 1627
     }
1628 1628
     
1629
-    public static function save_user_vat_details( $company = '', $vat_number = '' ) {
1630
-        $save = apply_filters( 'wpinv_allow_save_user_vat_details', true );
1629
+    public static function save_user_vat_details($company = '', $vat_number = '') {
1630
+        $save = apply_filters('wpinv_allow_save_user_vat_details', true);
1631 1631
 
1632
-        if ( is_user_logged_in() && $save ) {
1632
+        if (is_user_logged_in() && $save) {
1633 1633
             $user_id = get_current_user_id();
1634 1634
 
1635
-            if ( !empty( $vat_number ) ) {
1636
-                update_user_meta( $user_id, '_wpinv_vat_number', $vat_number );
1635
+            if (!empty($vat_number)) {
1636
+                update_user_meta($user_id, '_wpinv_vat_number', $vat_number);
1637 1637
             } else {
1638
-                delete_user_meta( $user_id, '_wpinv_vat_number');
1638
+                delete_user_meta($user_id, '_wpinv_vat_number');
1639 1639
             }
1640 1640
 
1641
-            if ( !empty( $company ) ) {
1642
-                update_user_meta( $user_id, '_wpinv_company', $company );
1641
+            if (!empty($company)) {
1642
+                update_user_meta($user_id, '_wpinv_company', $company);
1643 1643
             } else {
1644
-                delete_user_meta( $user_id, '_wpinv_company');
1645
-                delete_user_meta( $user_id, '_wpinv_vat_number');
1644
+                delete_user_meta($user_id, '_wpinv_company');
1645
+                delete_user_meta($user_id, '_wpinv_vat_number');
1646 1646
             }
1647 1647
         }
1648 1648
 
@@ -1652,113 +1652,113 @@  discard block
 block discarded – undo
1652 1652
     public static function ajax_vat_validate() {
1653 1653
         global $wpinv_options, $wpi_session;
1654 1654
         
1655
-        $is_checkout            = ( !empty( $_POST['source'] ) && $_POST['source'] == 'checkout' ) ? true : false;
1655
+        $is_checkout            = (!empty($_POST['source']) && $_POST['source'] == 'checkout') ? true : false;
1656 1656
         $response               = array();
1657 1657
         $response['success']    = false;
1658 1658
         
1659
-        if ( empty( $_REQUEST['_wpi_nonce'] ) || ( !empty( $_REQUEST['_wpi_nonce'] ) && !wp_verify_nonce( $_REQUEST['_wpi_nonce'], 'vat_validation' ) ) ) {
1660
-            $response['error'] = __( 'Invalid security nonce', 'invoicing' );
1661
-            wp_send_json( $response );
1659
+        if (empty($_REQUEST['_wpi_nonce']) || (!empty($_REQUEST['_wpi_nonce']) && !wp_verify_nonce($_REQUEST['_wpi_nonce'], 'vat_validation'))) {
1660
+            $response['error'] = __('Invalid security nonce', 'invoicing');
1661
+            wp_send_json($response);
1662 1662
         }
1663 1663
         
1664
-        $vat_name   = self::get_vat_name();
1664
+        $vat_name = self::get_vat_name();
1665 1665
         
1666
-        if ( $is_checkout ) {
1666
+        if ($is_checkout) {
1667 1667
             $invoice = wpinv_get_invoice_cart();
1668 1668
             
1669
-            if ( !self::requires_vat( false, 0, self::invoice_has_digital_rule( $invoice ) ) ) {
1669
+            if (!self::requires_vat(false, 0, self::invoice_has_digital_rule($invoice))) {
1670 1670
                 $vat_info = array();
1671
-                $wpi_session->set( 'user_vat_data', $vat_info );
1671
+                $wpi_session->set('user_vat_data', $vat_info);
1672 1672
 
1673 1673
                 self::save_user_vat_details();
1674 1674
                 
1675 1675
                 $response['success'] = true;
1676
-                $response['message'] = wp_sprintf( __( 'Ignore %s', 'invoicing' ), $vat_name );
1677
-                wp_send_json( $response );
1676
+                $response['message'] = wp_sprintf(__('Ignore %s', 'invoicing'), $vat_name);
1677
+                wp_send_json($response);
1678 1678
             }
1679 1679
         }
1680 1680
         
1681
-        $company    = !empty( $_POST['company'] ) ? sanitize_text_field( $_POST['company'] ) : '';
1682
-        $vat_number = !empty( $_POST['number'] ) ? sanitize_text_field( $_POST['number'] ) : '';
1681
+        $company    = !empty($_POST['company']) ? sanitize_text_field($_POST['company']) : '';
1682
+        $vat_number = !empty($_POST['number']) ? sanitize_text_field($_POST['number']) : '';
1683 1683
         
1684
-        $vat_info = $wpi_session->get( 'user_vat_data' );
1685
-        if ( !is_array( $vat_info ) || empty( $vat_info ) ) {
1686
-            $vat_info = array( 'company'=> $company, 'number' => '', 'valid' => true );
1684
+        $vat_info = $wpi_session->get('user_vat_data');
1685
+        if (!is_array($vat_info) || empty($vat_info)) {
1686
+            $vat_info = array('company'=> $company, 'number' => '', 'valid' => true);
1687 1687
         }
1688 1688
         
1689
-        if ( empty( $vat_number ) ) {
1690
-            if ( $is_checkout ) {
1689
+        if (empty($vat_number)) {
1690
+            if ($is_checkout) {
1691 1691
                 $response['success'] = true;
1692
-                $response['message'] = wp_sprintf( __( 'No %s number has been applied. %s will be added to invoice totals', 'invoicing' ), $vat_name, $vat_name );
1692
+                $response['message'] = wp_sprintf(__('No %s number has been applied. %s will be added to invoice totals', 'invoicing'), $vat_name, $vat_name);
1693 1693
                 
1694
-                $vat_info = $wpi_session->get( 'user_vat_data' );
1694
+                $vat_info = $wpi_session->get('user_vat_data');
1695 1695
                 $vat_info['number'] = "";
1696 1696
                 $vat_info['valid'] = true;
1697 1697
                 
1698
-                self::save_user_vat_details( $company );
1698
+                self::save_user_vat_details($company);
1699 1699
             } else {
1700
-                $response['error'] = wp_sprintf( __( 'Please enter your %s number!', 'invoicing' ), $vat_name );
1700
+                $response['error'] = wp_sprintf(__('Please enter your %s number!', 'invoicing'), $vat_name);
1701 1701
                 
1702 1702
                 $vat_info['valid'] = false;
1703 1703
             }
1704 1704
 
1705
-            $wpi_session->set( 'user_vat_data', $vat_info );
1706
-            wp_send_json( $response );
1705
+            $wpi_session->set('user_vat_data', $vat_info);
1706
+            wp_send_json($response);
1707 1707
         }
1708 1708
         
1709
-        if ( empty( $company ) ) {
1709
+        if (empty($company)) {
1710 1710
             $vat_info['valid'] = false;
1711
-            $wpi_session->set( 'user_vat_data', $vat_info );
1711
+            $wpi_session->set('user_vat_data', $vat_info);
1712 1712
             
1713
-            $response['error'] = __( 'Please enter your registered company name!', 'invoicing' );
1714
-            wp_send_json( $response );
1713
+            $response['error'] = __('Please enter your registered company name!', 'invoicing');
1714
+            wp_send_json($response);
1715 1715
         }
1716 1716
         
1717
-        if ( !empty( $wpinv_options['vat_vies_check'] ) ) {
1718
-            if ( empty( $wpinv_options['vat_offline_check'] ) && !self::offline_check( $vat_number ) ) {
1717
+        if (!empty($wpinv_options['vat_vies_check'])) {
1718
+            if (empty($wpinv_options['vat_offline_check']) && !self::offline_check($vat_number)) {
1719 1719
                 $vat_info['valid'] = false;
1720
-                $wpi_session->set( 'user_vat_data', $vat_info );
1720
+                $wpi_session->set('user_vat_data', $vat_info);
1721 1721
                 
1722
-                $response['error'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name );
1723
-                wp_send_json( $response );
1722
+                $response['error'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name);
1723
+                wp_send_json($response);
1724 1724
             }
1725 1725
             
1726 1726
             $response['success'] = true;
1727
-            $response['message'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name );
1727
+            $response['message'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name);
1728 1728
         } else {
1729
-            $result = self::check_vat( $vat_number );
1729
+            $result = self::check_vat($vat_number);
1730 1730
             
1731
-            if ( empty( $result['valid'] ) ) {
1731
+            if (empty($result['valid'])) {
1732 1732
                 $response['error'] = $result['message'];
1733
-                wp_send_json( $response );
1733
+                wp_send_json($response);
1734 1734
             }
1735 1735
             
1736
-            $vies_company = !empty( $result['company'] ) ? $result['company'] : '';
1737
-            $vies_company = apply_filters( 'wpinv_vies_company_name', $vies_company );
1736
+            $vies_company = !empty($result['company']) ? $result['company'] : '';
1737
+            $vies_company = apply_filters('wpinv_vies_company_name', $vies_company);
1738 1738
             
1739
-            $valid_company = $vies_company && $company && ( $vies_company == '---' || strcasecmp( trim( $vies_company ), trim( $company ) ) == 0 ) ? true : false;
1739
+            $valid_company = $vies_company && $company && ($vies_company == '---' || strcasecmp(trim($vies_company), trim($company)) == 0) ? true : false;
1740 1740
 
1741
-            if ( !empty( $wpinv_options['vat_disable_company_name_check'] ) || $valid_company ) {
1741
+            if (!empty($wpinv_options['vat_disable_company_name_check']) || $valid_company) {
1742 1742
                 $response['success'] = true;
1743
-                $response['message'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name );
1743
+                $response['message'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name);
1744 1744
             } else {           
1745 1745
                 $vat_info['valid'] = false;
1746
-                $wpi_session->set( 'user_vat_data', $vat_info );
1746
+                $wpi_session->set('user_vat_data', $vat_info);
1747 1747
                 
1748 1748
                 $response['success'] = false;
1749
-                $response['message'] = wp_sprintf( __( 'The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing' ), $vat_name );
1750
-                wp_send_json( $response );
1749
+                $response['message'] = wp_sprintf(__('The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing'), $vat_name);
1750
+                wp_send_json($response);
1751 1751
             }
1752 1752
         }
1753 1753
         
1754
-        if ( $is_checkout ) {
1755
-            self::save_user_vat_details( $company, $vat_number );
1754
+        if ($is_checkout) {
1755
+            self::save_user_vat_details($company, $vat_number);
1756 1756
 
1757
-            $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => true );
1758
-            $wpi_session->set( 'user_vat_data', $vat_info );
1757
+            $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => true);
1758
+            $wpi_session->set('user_vat_data', $vat_info);
1759 1759
         }
1760 1760
 
1761
-        wp_send_json( $response );
1761
+        wp_send_json($response);
1762 1762
     }
1763 1763
     
1764 1764
     public static function ajax_vat_reset() {
@@ -1767,161 +1767,161 @@  discard block
 block discarded – undo
1767 1767
         $company    = is_user_logged_in() ? self::get_user_company() : '';
1768 1768
         $vat_number = self::get_user_vat_number();
1769 1769
         
1770
-        $vat_info   = array('company' => $company, 'number' => $vat_number, 'valid' => false );
1771
-        $wpi_session->set( 'user_vat_data', $vat_info );
1770
+        $vat_info   = array('company' => $company, 'number' => $vat_number, 'valid' => false);
1771
+        $wpi_session->set('user_vat_data', $vat_info);
1772 1772
         
1773 1773
         $response                       = array();
1774 1774
         $response['success']            = true;
1775 1775
         $response['data']['company']    = $company;
1776 1776
         $response['data']['number']     = $vat_number;
1777 1777
         
1778
-        wp_send_json( $response );
1778
+        wp_send_json($response);
1779 1779
     }
1780 1780
     
1781
-    public static function checkout_vat_validate( $valid_data, $post ) {
1781
+    public static function checkout_vat_validate($valid_data, $post) {
1782 1782
         global $wpinv_options, $wpi_session;
1783 1783
         
1784
-        $vat_name  = __( self::get_vat_name(), 'invoicing' );
1784
+        $vat_name = __(self::get_vat_name(), 'invoicing');
1785 1785
         
1786
-        if ( !isset( $_POST['_wpi_nonce'] ) || !wp_verify_nonce( $_POST['_wpi_nonce'], 'vat_validation' ) ) {
1787
-            wpinv_set_error( 'vat_validation', wp_sprintf( __( "Invalid %s validation request.", 'invoicing' ), $vat_name ) );
1786
+        if (!isset($_POST['_wpi_nonce']) || !wp_verify_nonce($_POST['_wpi_nonce'], 'vat_validation')) {
1787
+            wpinv_set_error('vat_validation', wp_sprintf(__("Invalid %s validation request.", 'invoicing'), $vat_name));
1788 1788
             return;
1789 1789
         }
1790 1790
         
1791
-        $vat_saved = $wpi_session->get( 'user_vat_data' );
1792
-        $wpi_session->set( 'user_vat_data', null );
1791
+        $vat_saved = $wpi_session->get('user_vat_data');
1792
+        $wpi_session->set('user_vat_data', null);
1793 1793
         
1794 1794
         $invoice        = wpinv_get_invoice_cart();
1795 1795
         $amount         = $invoice->get_total();
1796
-        $is_digital     = self::invoice_has_digital_rule( $invoice );
1797
-        $no_vat         = !self::requires_vat( 0, false, $is_digital );
1796
+        $is_digital     = self::invoice_has_digital_rule($invoice);
1797
+        $no_vat         = !self::requires_vat(0, false, $is_digital);
1798 1798
         
1799
-        $company        = !empty( $_POST['wpinv_company'] ) ? $_POST['wpinv_company'] : null;
1800
-        $vat_number     = !empty( $_POST['wpinv_vat_number'] ) ? $_POST['wpinv_vat_number'] : null;
1801
-        $country        = !empty( $_POST['wpinv_country'] ) ? $_POST['wpinv_country'] : $invoice->country;
1802
-        if ( empty( $country ) ) {
1799
+        $company        = !empty($_POST['wpinv_company']) ? $_POST['wpinv_company'] : null;
1800
+        $vat_number     = !empty($_POST['wpinv_vat_number']) ? $_POST['wpinv_vat_number'] : null;
1801
+        $country        = !empty($_POST['wpinv_country']) ? $_POST['wpinv_country'] : $invoice->country;
1802
+        if (empty($country)) {
1803 1803
             $country = wpinv_default_billing_country();
1804 1804
         }
1805 1805
         
1806
-        if ( !$is_digital && $no_vat ) {
1806
+        if (!$is_digital && $no_vat) {
1807 1807
             return;
1808 1808
         }
1809 1809
             
1810
-        $vat_data           = array( 'company' => '', 'number' => '', 'valid' => false );
1810
+        $vat_data           = array('company' => '', 'number' => '', 'valid' => false);
1811 1811
         
1812 1812
         $ip_country_code    = self::get_country_by_ip();
1813
-        $is_eu_state        = self::is_eu_state( $country );
1814
-        $is_eu_state_ip     = self::is_eu_state( $ip_country_code );
1813
+        $is_eu_state        = self::is_eu_state($country);
1814
+        $is_eu_state_ip     = self::is_eu_state($ip_country_code);
1815 1815
         $is_non_eu_user     = !$is_eu_state && !$is_eu_state_ip;
1816 1816
         
1817
-        if ( $is_digital && !$is_non_eu_user && empty( $vat_number ) && apply_filters( 'wpinv_checkout_requires_country', true, $amount ) ) {
1817
+        if ($is_digital && !$is_non_eu_user && empty($vat_number) && apply_filters('wpinv_checkout_requires_country', true, $amount)) {
1818 1818
             $vat_data['adddress_confirmed'] = false;
1819 1819
             
1820
-            if ( !isset( $_POST['wpinv_adddress_confirmed'] ) ) {
1821
-                if ( $ip_country_code != $country ) {
1822
-                    wpinv_set_error( 'vat_validation', sprintf( __( 'The country of your current location must be the same as the country of your billing location or you must %s confirm %s the billing address is your home country.', 'invoicing' ), '<a href="#wpinv_adddress_confirm">', '</a>' ) );
1820
+            if (!isset($_POST['wpinv_adddress_confirmed'])) {
1821
+                if ($ip_country_code != $country) {
1822
+                    wpinv_set_error('vat_validation', sprintf(__('The country of your current location must be the same as the country of your billing location or you must %s confirm %s the billing address is your home country.', 'invoicing'), '<a href="#wpinv_adddress_confirm">', '</a>'));
1823 1823
                 }
1824 1824
             } else {
1825 1825
                 $vat_data['adddress_confirmed'] = true;
1826 1826
             }
1827 1827
         }
1828 1828
         
1829
-        if ( !empty( $wpinv_options['vat_prevent_b2c_purchase'] ) && !$is_non_eu_user && ( empty( $vat_number ) || $no_vat ) ) {
1830
-            if ( $is_eu_state ) {
1831
-                wpinv_set_error( 'vat_validation', wp_sprintf( __( 'Please enter and validate your %s number to verify your purchase is by an EU business.', 'invoicing' ), $vat_name ) );
1832
-            } else if ( $is_digital && $is_eu_state_ip ) {
1833
-                wpinv_set_error( 'vat_validation', wp_sprintf( __( 'Sales to non-EU countries cannot be completed because %s must be applied.', 'invoicing' ), $vat_name ) );
1829
+        if (!empty($wpinv_options['vat_prevent_b2c_purchase']) && !$is_non_eu_user && (empty($vat_number) || $no_vat)) {
1830
+            if ($is_eu_state) {
1831
+                wpinv_set_error('vat_validation', wp_sprintf(__('Please enter and validate your %s number to verify your purchase is by an EU business.', 'invoicing'), $vat_name));
1832
+            } else if ($is_digital && $is_eu_state_ip) {
1833
+                wpinv_set_error('vat_validation', wp_sprintf(__('Sales to non-EU countries cannot be completed because %s must be applied.', 'invoicing'), $vat_name));
1834 1834
             }
1835 1835
         }
1836 1836
         
1837
-        if ( !$is_eu_state || $no_vat || empty( $vat_number ) ) {
1837
+        if (!$is_eu_state || $no_vat || empty($vat_number)) {
1838 1838
             return;
1839 1839
         }
1840 1840
 
1841
-        if ( !empty( $vat_saved ) && isset( $vat_saved['valid'] ) ) {
1842
-            $vat_data['valid']  = $vat_saved['valid'];
1841
+        if (!empty($vat_saved) && isset($vat_saved['valid'])) {
1842
+            $vat_data['valid'] = $vat_saved['valid'];
1843 1843
         }
1844 1844
             
1845
-        if ( $company !== null ) {
1845
+        if ($company !== null) {
1846 1846
             $vat_data['company'] = $company;
1847 1847
         }
1848 1848
 
1849 1849
         $message = '';
1850
-        if ( $vat_number !== null ) {
1850
+        if ($vat_number !== null) {
1851 1851
             $vat_data['number'] = $vat_number;
1852 1852
             
1853
-            if ( !$vat_data['valid'] || ( $vat_saved['number'] !== $vat_data['number'] ) || ( $vat_saved['company'] !== $vat_data['company'] ) ) {
1854
-                if ( !empty( $wpinv_options['vat_vies_check'] ) ) {            
1855
-                    if ( empty( $wpinv_options['vat_offline_check'] ) && !self::offline_check( $vat_number ) ) {
1853
+            if (!$vat_data['valid'] || ($vat_saved['number'] !== $vat_data['number']) || ($vat_saved['company'] !== $vat_data['company'])) {
1854
+                if (!empty($wpinv_options['vat_vies_check'])) {            
1855
+                    if (empty($wpinv_options['vat_offline_check']) && !self::offline_check($vat_number)) {
1856 1856
                         $vat_data['valid'] = false;
1857 1857
                     }
1858 1858
                 } else {
1859
-                    $result = self::check_vat( $vat_number );
1859
+                    $result = self::check_vat($vat_number);
1860 1860
                     
1861
-                    if ( !empty( $result['valid'] ) ) {                
1861
+                    if (!empty($result['valid'])) {                
1862 1862
                         $vat_data['valid'] = true;
1863
-                        $vies_company = !empty( $result['company'] ) ? $result['company'] : '';
1864
-                        $vies_company = apply_filters( 'wpinv_vies_company_name', $vies_company );
1863
+                        $vies_company = !empty($result['company']) ? $result['company'] : '';
1864
+                        $vies_company = apply_filters('wpinv_vies_company_name', $vies_company);
1865 1865
                     
1866
-                        $valid_company = $vies_company && $company && ( $vies_company == '---' || strcasecmp( trim( $vies_company ), trim( $company ) ) == 0 ) ? true : false;
1866
+                        $valid_company = $vies_company && $company && ($vies_company == '---' || strcasecmp(trim($vies_company), trim($company)) == 0) ? true : false;
1867 1867
 
1868
-                        if ( !( !empty( $wpinv_options['vat_disable_company_name_check'] ) || $valid_company ) ) {         
1868
+                        if (!(!empty($wpinv_options['vat_disable_company_name_check']) || $valid_company)) {         
1869 1869
                             $vat_data['valid'] = false;
1870 1870
                             
1871
-                            $message = wp_sprintf( __( 'The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing' ), $vat_name );
1871
+                            $message = wp_sprintf(__('The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing'), $vat_name);
1872 1872
                         }
1873 1873
                     } else {
1874
-                        $message = wp_sprintf( __( 'Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing' ), $vat_name );
1874
+                        $message = wp_sprintf(__('Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing'), $vat_name);
1875 1875
                     }
1876 1876
                 }
1877 1877
                 
1878
-                if ( !$vat_data['valid'] ) {
1879
-                    $error = wp_sprintf( __( 'The %s %s number %s you have entered has not been validated', 'invoicing' ), '<a href="#wpi-vat-details">', $vat_name, '</a>' ) . ( $message ? ' ( ' . $message . ' )' : '' );
1880
-                    wpinv_set_error( 'vat_validation', $error );
1878
+                if (!$vat_data['valid']) {
1879
+                    $error = wp_sprintf(__('The %s %s number %s you have entered has not been validated', 'invoicing'), '<a href="#wpi-vat-details">', $vat_name, '</a>') . ($message ? ' ( ' . $message . ' )' : '');
1880
+                    wpinv_set_error('vat_validation', $error);
1881 1881
                 }
1882 1882
             }
1883 1883
         }
1884 1884
 
1885
-        $wpi_session->set( 'user_vat_data', $vat_data );
1885
+        $wpi_session->set('user_vat_data', $vat_data);
1886 1886
     }
1887 1887
     
1888
-    public static function checkout_vat_fields( $billing_details ) {
1888
+    public static function checkout_vat_fields($billing_details) {
1889 1889
         global $wpi_session, $wpinv_options, $wpi_country, $wpi_requires_vat;
1890 1890
         
1891 1891
         $ip_address         = wpinv_get_ip();
1892 1892
         $ip_country_code    = self::get_country_by_ip();
1893 1893
         
1894
-        $tax_label          = __( self::get_vat_name(), 'invoicing' );
1894
+        $tax_label          = __(self::get_vat_name(), 'invoicing');
1895 1895
         $invoice            = wpinv_get_invoice_cart();
1896
-        $is_digital         = self::invoice_has_digital_rule( $invoice );
1896
+        $is_digital         = self::invoice_has_digital_rule($invoice);
1897 1897
         $wpi_country        = $invoice->country;
1898 1898
         
1899
-        $requires_vat       = !self::hide_vat_fields() && !$invoice->is_free() && self::requires_vat( 0, false, $is_digital );
1899
+        $requires_vat       = !self::hide_vat_fields() && !$invoice->is_free() && self::requires_vat(0, false, $is_digital);
1900 1900
         $wpi_requires_vat   = $requires_vat;
1901 1901
         
1902 1902
         $company            = self::get_user_company();
1903 1903
         $vat_number         = self::get_user_vat_number();
1904 1904
         
1905
-        $validated          = $vat_number ? self::get_user_vat_number( '', 0, true ) : 1;
1906
-        $vat_info           = $wpi_session->get( 'user_vat_data' );
1905
+        $validated          = $vat_number ? self::get_user_vat_number('', 0, true) : 1;
1906
+        $vat_info           = $wpi_session->get('user_vat_data');
1907 1907
 
1908
-        if ( is_array( $vat_info ) ) {
1909
-            $company    = isset( $vat_info['company'] ) ? $vat_info['company'] : '';
1910
-            $vat_number = isset( $vat_info['number'] ) ? $vat_info['number'] : '';
1911
-            $validated  = isset( $vat_info['valid'] ) ? $vat_info['valid'] : false;
1908
+        if (is_array($vat_info)) {
1909
+            $company    = isset($vat_info['company']) ? $vat_info['company'] : '';
1910
+            $vat_number = isset($vat_info['number']) ? $vat_info['number'] : '';
1911
+            $validated  = isset($vat_info['valid']) ? $vat_info['valid'] : false;
1912 1912
         }
1913 1913
         
1914 1914
         $selected_country = $invoice->country ? $invoice->country : wpinv_default_billing_country();
1915 1915
 
1916
-        if ( $ip_country_code == 'UK' ) {
1916
+        if ($ip_country_code == 'UK') {
1917 1917
             $ip_country_code = 'GB';
1918 1918
         }
1919 1919
         
1920
-        if ( $selected_country == 'UK' ) {
1920
+        if ($selected_country == 'UK') {
1921 1921
             $selected_country = 'GB';
1922 1922
         }
1923 1923
         
1924
-        if ( $requires_vat && ( self::same_country_rule() == 'no' && wpinv_is_base_country( $selected_country ) || !self::allow_vat_rules() ) ) {
1924
+        if ($requires_vat && (self::same_country_rule() == 'no' && wpinv_is_base_country($selected_country) || !self::allow_vat_rules())) {
1925 1925
             $requires_vat = false;
1926 1926
         }
1927 1927
 
@@ -1929,52 +1929,52 @@  discard block
 block discarded – undo
1929 1929
         $display_validate_btn   = 'none';
1930 1930
         $display_reset_btn      = 'none';
1931 1931
         
1932
-        if ( !empty( $vat_number ) && $validated ) {
1933
-            $vat_vailidated_text    = wp_sprintf( __( '%s number validated', 'invoicing' ), $tax_label );
1932
+        if (!empty($vat_number) && $validated) {
1933
+            $vat_vailidated_text    = wp_sprintf(__('%s number validated', 'invoicing'), $tax_label);
1934 1934
             $vat_vailidated_class   = 'wpinv-vat-stat-1';
1935 1935
             $display_reset_btn      = 'block';
1936 1936
         } else {
1937
-            $vat_vailidated_text    = empty( $vat_number ) ? '' : wp_sprintf( __( '%s number not validated', 'invoicing' ), $tax_label );
1938
-            $vat_vailidated_class   = empty( $vat_number ) ? '' : 'wpinv-vat-stat-0';
1937
+            $vat_vailidated_text    = empty($vat_number) ? '' : wp_sprintf(__('%s number not validated', 'invoicing'), $tax_label);
1938
+            $vat_vailidated_class   = empty($vat_number) ? '' : 'wpinv-vat-stat-0';
1939 1939
             $display_validate_btn   = 'block';
1940 1940
         }
1941 1941
         
1942
-        $show_ip_country        = $is_digital && ( empty( $vat_number ) || !$requires_vat ) && $ip_country_code != $selected_country ? 'block' : 'none';
1942
+        $show_ip_country = $is_digital && (empty($vat_number) || !$requires_vat) && $ip_country_code != $selected_country ? 'block' : 'none';
1943 1943
         ?>
1944 1944
         <div id="wpi-vat-details" class="wpi-vat-details clearfix" style="display:<?php echo $display_vat_details; ?>">
1945 1945
             <div id="wpi_vat_info" class="clearfix panel panel-default">
1946
-                <div class="panel-heading"><h3 class="panel-title"><?php echo wp_sprintf( __( '%s Details', 'invoicing' ), $tax_label );?></h3></div>
1946
+                <div class="panel-heading"><h3 class="panel-title"><?php echo wp_sprintf(__('%s Details', 'invoicing'), $tax_label); ?></h3></div>
1947 1947
                 <div id="wpinv-fields-box" class="panel-body">
1948 1948
                     <p id="wpi_show_vat_note">
1949
-                        <?php echo wp_sprintf( __( 'Validate your registered %s number to exclude tax.', 'invoicing' ), $tax_label ); ?>
1949
+                        <?php echo wp_sprintf(__('Validate your registered %s number to exclude tax.', 'invoicing'), $tax_label); ?>
1950 1950
                     </p>
1951 1951
                     <div id="wpi_vat_fields" class="wpi_vat_info">
1952 1952
                         <p class="wpi-cart-field wpi-col2 wpi-colf">
1953
-                            <label for="wpinv_company" class="wpi-label"><?php _e( 'Company Name', 'invoicing' );?></label>
1953
+                            <label for="wpinv_company" class="wpi-label"><?php _e('Company Name', 'invoicing'); ?></label>
1954 1954
                             <?php
1955
-                            echo wpinv_html_text( array(
1955
+                            echo wpinv_html_text(array(
1956 1956
                                     'id'            => 'wpinv_company',
1957 1957
                                     'name'          => 'wpinv_company',
1958 1958
                                     'value'         => $company,
1959 1959
                                     'class'         => 'wpi-input form-control',
1960
-                                    'placeholder'   => __( 'Company name', 'invoicing' ),
1961
-                                ) );
1960
+                                    'placeholder'   => __('Company name', 'invoicing'),
1961
+                                ));
1962 1962
                             ?>
1963 1963
                         </p>
1964 1964
                         <p class="wpi-cart-field wpi-col2 wpi-coll wpi-cart-field-vat">
1965
-                            <label for="wpinv_vat_number" class="wpi-label"><?php echo wp_sprintf( __( '%s Number', 'invoicing' ), $tax_label );?></label>
1965
+                            <label for="wpinv_vat_number" class="wpi-label"><?php echo wp_sprintf(__('%s Number', 'invoicing'), $tax_label); ?></label>
1966 1966
                             <span id="wpinv_vat_number-wrap">
1967 1967
                                 <label for="wpinv_vat_number" class="wpinv-label"></label>
1968
-                                <input type="text" class="wpi-input form-control" placeholder="<?php echo esc_attr( wp_sprintf( __( '%s number', 'invoicing' ), $tax_label ) );?>" value="<?php esc_attr_e( $vat_number );?>" id="wpinv_vat_number" name="wpinv_vat_number">
1969
-                                <span class="wpinv-vat-stat <?php echo $vat_vailidated_class;?>"><i class="fa"></i>&nbsp;<font><?php echo $vat_vailidated_text;?></font></span>
1968
+                                <input type="text" class="wpi-input form-control" placeholder="<?php echo esc_attr(wp_sprintf(__('%s number', 'invoicing'), $tax_label)); ?>" value="<?php esc_attr_e($vat_number); ?>" id="wpinv_vat_number" name="wpinv_vat_number">
1969
+                                <span class="wpinv-vat-stat <?php echo $vat_vailidated_class; ?>"><i class="fa"></i>&nbsp;<font><?php echo $vat_vailidated_text; ?></font></span>
1970 1970
                             </span>
1971 1971
                         </p>
1972 1972
                         <p class="wpi-cart-field wpi-col wpi-colf wpi-cart-field-actions">
1973
-                            <button class="btn btn-success btn-sm wpinv-vat-validate" type="button" id="wpinv_vat_validate" style="display:<?php echo $display_validate_btn; ?>"><?php echo wp_sprintf( __("Validate %s Number", 'invoicing'), $tax_label ); ?></button>
1974
-                            <button class="btn btn-danger btn-sm wpinv-vat-reset" type="button" id="wpinv_vat_reset" style="display:<?php echo $display_reset_btn; ?>"><?php echo wp_sprintf( __("Reset %s", 'invoicing'), $tax_label ); ?></button>
1973
+                            <button class="btn btn-success btn-sm wpinv-vat-validate" type="button" id="wpinv_vat_validate" style="display:<?php echo $display_validate_btn; ?>"><?php echo wp_sprintf(__("Validate %s Number", 'invoicing'), $tax_label); ?></button>
1974
+                            <button class="btn btn-danger btn-sm wpinv-vat-reset" type="button" id="wpinv_vat_reset" style="display:<?php echo $display_reset_btn; ?>"><?php echo wp_sprintf(__("Reset %s", 'invoicing'), $tax_label); ?></button>
1975 1975
                             <span class="wpi-vat-box wpi-vat-box-info"><span id="text"></span></span>
1976 1976
                             <span class="wpi-vat-box wpi-vat-box-error"><span id="text"></span></span>
1977
-                            <input type="hidden" name="_wpi_nonce" value="<?php echo wp_create_nonce( 'vat_validation' ) ?>" />
1977
+                            <input type="hidden" name="_wpi_nonce" value="<?php echo wp_create_nonce('vat_validation') ?>" />
1978 1978
                         </p>
1979 1979
                     </div>
1980 1980
                 </div>
@@ -1988,32 +1988,32 @@  discard block
 block discarded – undo
1988 1988
                 </span>
1989 1989
             </div>
1990 1990
         </div>
1991
-        <?php if ( empty( $wpinv_options['hide_ip_address'] ) ) { 
1992
-            $ip_link = '<a title="' . esc_attr( __( 'View more details on map', 'invoicing' ) ) . '" target="_blank" href="' . esc_url( admin_url( 'admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $ip_address ) ) . '" class="wpi-ip-address-link">' . $ip_address . '&nbsp;&nbsp;<i class="fa fa-external-link-square" aria-hidden="true"></i></a>';
1991
+        <?php if (empty($wpinv_options['hide_ip_address'])) { 
1992
+            $ip_link = '<a title="' . esc_attr(__('View more details on map', 'invoicing')) . '" target="_blank" href="' . esc_url(admin_url('admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $ip_address)) . '" class="wpi-ip-address-link">' . $ip_address . '&nbsp;&nbsp;<i class="fa fa-external-link-square" aria-hidden="true"></i></a>';
1993 1993
         ?>
1994 1994
         <div class="wpi-ip-info clearfix panel panel-info">
1995 1995
             <div id="wpinv-fields-box" class="panel-body">
1996
-                <span><?php echo wp_sprintf( __( "Your IP address is: %s", 'invoicing' ), $ip_link ); ?></span>
1996
+                <span><?php echo wp_sprintf(__("Your IP address is: %s", 'invoicing'), $ip_link); ?></span>
1997 1997
             </div>
1998 1998
         </div>
1999 1999
         <?php }
2000 2000
     }
2001 2001
     
2002
-    public static function show_vat_notice( $invoice ) {
2003
-        if ( empty( $invoice ) ) {
2002
+    public static function show_vat_notice($invoice) {
2003
+        if (empty($invoice)) {
2004 2004
             return NULL;
2005 2005
         }
2006 2006
         
2007
-        $label      = wpinv_get_option( 'vat_invoice_notice_label' );
2008
-        $notice     = wpinv_get_option( 'vat_invoice_notice' );
2009
-        if ( $label || $notice ) {
2007
+        $label      = wpinv_get_option('vat_invoice_notice_label');
2008
+        $notice     = wpinv_get_option('vat_invoice_notice');
2009
+        if ($label || $notice) {
2010 2010
         ?>
2011 2011
         <div class="row wpinv-vat-notice">
2012 2012
             <div class="col-sm-12">
2013
-                <?php if ( $label ) { ?>
2014
-                <strong><?php _e( $label, 'invoicing' ); ?></strong>
2015
-                <?php } if ( $notice ) { ?>
2016
-                <?php echo wpautop( wptexturize( __( $notice, 'invoicing' ) ) ) ?>
2013
+                <?php if ($label) { ?>
2014
+                <strong><?php _e($label, 'invoicing'); ?></strong>
2015
+                <?php } if ($notice) { ?>
2016
+                <?php echo wpautop(wptexturize(__($notice, 'invoicing'))) ?>
2017 2017
                 <?php } ?>
2018 2018
             </div>
2019 2019
         </div>
Please login to merge, or discard this patch.
includes/wpinv-post-types.php 1 patch
Spacing   +103 added lines, -103 removed lines patch added patch discarded remove patch
@@ -7,44 +7,44 @@  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
-add_action( 'init', 'wpinv_register_post_types', 1 );
14
+add_action('init', 'wpinv_register_post_types', 1);
15 15
 function wpinv_register_post_types() {    
16 16
     $labels = array(
17
-        'name'               => _x( 'Invoices', 'post type general name', 'invoicing' ),
18
-        'singular_name'      => _x( 'Invoice', 'post type singular name', 'invoicing' ),
19
-        'menu_name'          => _x( 'Invoices', 'admin menu', 'invoicing' ),
20
-        'name_admin_bar'     => _x( 'Invoice', 'add new on admin bar', 'invoicing' ),
21
-        'add_new'            => _x( 'Add New', 'book', 'invoicing' ),
22
-        'add_new_item'       => __( 'Add New Invoice', 'invoicing' ),
23
-        'new_item'           => __( 'New Invoice', 'invoicing' ),
24
-        'edit_item'          => __( 'Edit Invoice', 'invoicing' ),
25
-        'view_item'          => __( 'View Invoice', 'invoicing' ),
26
-        'all_items'          => __( 'Invoices', 'invoicing' ),
27
-        'search_items'       => __( 'Search Invoices', 'invoicing' ),
28
-        'parent_item_colon'  => __( 'Parent Invoices:', 'invoicing' ),
29
-        'not_found'          => __( 'No invoices found.', 'invoicing' ),
30
-        'not_found_in_trash' => __( 'No invoices found in trash.', 'invoicing' )
17
+        'name'               => _x('Invoices', 'post type general name', 'invoicing'),
18
+        'singular_name'      => _x('Invoice', 'post type singular name', 'invoicing'),
19
+        'menu_name'          => _x('Invoices', 'admin menu', 'invoicing'),
20
+        'name_admin_bar'     => _x('Invoice', 'add new on admin bar', 'invoicing'),
21
+        'add_new'            => _x('Add New', 'book', 'invoicing'),
22
+        'add_new_item'       => __('Add New Invoice', 'invoicing'),
23
+        'new_item'           => __('New Invoice', 'invoicing'),
24
+        'edit_item'          => __('Edit Invoice', 'invoicing'),
25
+        'view_item'          => __('View Invoice', 'invoicing'),
26
+        'all_items'          => __('Invoices', 'invoicing'),
27
+        'search_items'       => __('Search Invoices', 'invoicing'),
28
+        'parent_item_colon'  => __('Parent Invoices:', 'invoicing'),
29
+        'not_found'          => __('No invoices found.', 'invoicing'),
30
+        'not_found_in_trash' => __('No invoices found in trash.', 'invoicing')
31 31
     );
32
-    $labels = apply_filters( 'wpinv_labels', $labels );
32
+    $labels = apply_filters('wpinv_labels', $labels);
33 33
     
34 34
     $menu_icon = WPINV_PLUGIN_URL . '/assets/images/favicon.ico';
35
-    $menu_icon = apply_filters( 'wpinv_menu_icon_invoice', $menu_icon );
35
+    $menu_icon = apply_filters('wpinv_menu_icon_invoice', $menu_icon);
36 36
 
37 37
     $cap_type = 'wpi_invoice';
38 38
     $args = array(
39 39
         'labels'             => $labels,
40
-        'description'        => __( 'This is where invoices are stored.', 'invoicing' ),
40
+        'description'        => __('This is where invoices are stored.', 'invoicing'),
41 41
         'public'             => true,
42 42
         'can_export'         => true,
43 43
         '_builtin'           => false,
44 44
         'publicly_queryable' => true,
45 45
         'exclude_from_search'=> true,
46 46
         'show_ui'            => true,
47
-        'show_in_menu'       => current_user_can( 'manage_invoicing' ) ? 'wpinv' : true,
47
+        'show_in_menu'       => current_user_can('manage_invoicing') ? 'wpinv' : true,
48 48
         'show_in_nav_menus'  => false,
49 49
         'query_var'          => false,
50 50
         'rewrite'            => true,
@@ -69,39 +69,39 @@  discard block
 block discarded – undo
69 69
         'has_archive'        => false,
70 70
         'hierarchical'       => false,
71 71
         'menu_position'      => null,
72
-        'supports'           => array( 'title', 'author' ),
72
+        'supports'           => array('title', 'author'),
73 73
         'menu_icon'          => $menu_icon,
74 74
     );
75 75
             
76
-    $args = apply_filters( 'wpinv_register_post_type_invoice', $args );
76
+    $args = apply_filters('wpinv_register_post_type_invoice', $args);
77 77
     
78
-    register_post_type( 'wpi_invoice', $args );
78
+    register_post_type('wpi_invoice', $args);
79 79
     
80 80
     $items_labels = array(
81
-        'name'               => _x( 'Items', 'post type general name', 'invoicing' ),
82
-        'singular_name'      => _x( 'Item', 'post type singular name', 'invoicing' ),
83
-        'menu_name'          => _x( 'Items', 'admin menu', 'invoicing' ),
84
-        'add_new'            => _x( 'Add New', 'wpi_item', 'invoicing' ),
85
-        'add_new_item'       => __( 'Add New Item', 'invoicing' ),
86
-        'new_item'           => __( 'New Item', 'invoicing' ),
87
-        'edit_item'          => __( 'Edit Item', 'invoicing' ),
88
-        'view_item'          => __( 'View Item', 'invoicing' ),
89
-        'all_items'          => __( 'Items', 'invoicing' ),
90
-        'search_items'       => __( 'Search Items', 'invoicing' ),
81
+        'name'               => _x('Items', 'post type general name', 'invoicing'),
82
+        'singular_name'      => _x('Item', 'post type singular name', 'invoicing'),
83
+        'menu_name'          => _x('Items', 'admin menu', 'invoicing'),
84
+        'add_new'            => _x('Add New', 'wpi_item', 'invoicing'),
85
+        'add_new_item'       => __('Add New Item', 'invoicing'),
86
+        'new_item'           => __('New Item', 'invoicing'),
87
+        'edit_item'          => __('Edit Item', 'invoicing'),
88
+        'view_item'          => __('View Item', 'invoicing'),
89
+        'all_items'          => __('Items', 'invoicing'),
90
+        'search_items'       => __('Search Items', 'invoicing'),
91 91
         'parent_item_colon'  => '',
92
-        'not_found'          => __( 'No items found.', 'invoicing' ),
93
-        'not_found_in_trash' => __( 'No items found in trash.', 'invoicing' )
92
+        'not_found'          => __('No items found.', 'invoicing'),
93
+        'not_found_in_trash' => __('No items found in trash.', 'invoicing')
94 94
     );
95
-    $items_labels = apply_filters( 'wpinv_items_labels', $items_labels );
95
+    $items_labels = apply_filters('wpinv_items_labels', $items_labels);
96 96
 
97 97
     $cap_type = 'wpi_item';
98 98
     $invoice_item_args = array(
99 99
         'labels'                => $items_labels,
100 100
         'public'                => false,
101 101
         'show_ui'               => true,
102
-        'show_in_menu'          => current_user_can( 'manage_invoicing' ) ? 'wpinv' : false,
102
+        'show_in_menu'          => current_user_can('manage_invoicing') ? 'wpinv' : false,
103 103
         'show_in_nav_menus'     => false,
104
-        'supports'              => array( 'title', 'excerpt' ),
104
+        'supports'              => array('title', 'excerpt'),
105 105
         'register_meta_box_cb'  => 'wpinv_register_item_meta_boxes',
106 106
         'rewrite'               => false,
107 107
         'query_var'             => false,
@@ -125,40 +125,40 @@  discard block
 block discarded – undo
125 125
         ),
126 126
         'can_export'            => true,
127 127
     );
128
-    $invoice_item_args = apply_filters( 'wpinv_register_post_type_invoice_item', $invoice_item_args );
128
+    $invoice_item_args = apply_filters('wpinv_register_post_type_invoice_item', $invoice_item_args);
129 129
 
130
-    register_post_type( 'wpi_item', $invoice_item_args );
130
+    register_post_type('wpi_item', $invoice_item_args);
131 131
     
132 132
     $labels = array(
133
-        'name'               => _x( 'Discounts', 'post type general name', 'invoicing' ),
134
-        'singular_name'      => _x( 'Discount', 'post type singular name', 'invoicing' ),
135
-        'menu_name'          => _x( 'Discounts', 'admin menu', 'invoicing' ),
136
-        'name_admin_bar'     => _x( 'Discount', 'add new on admin bar', 'invoicing' ),
137
-        'add_new'            => _x( 'Add New', 'book', 'invoicing' ),
138
-        'add_new_item'       => __( 'Add New Discount', 'invoicing' ),
139
-        'new_item'           => __( 'New Discount', 'invoicing' ),
140
-        'edit_item'          => __( 'Edit Discount', 'invoicing' ),
141
-        'view_item'          => __( 'View Discount', 'invoicing' ),
142
-        'all_items'          => __( 'Discounts', 'invoicing' ),
143
-        'search_items'       => __( 'Search Discounts', 'invoicing' ),
144
-        'parent_item_colon'  => __( 'Parent Discounts:', 'invoicing' ),
145
-        'not_found'          => __( 'No discounts found.', 'invoicing' ),
146
-        'not_found_in_trash' => __( 'No discounts found in trash.', 'invoicing' )
133
+        'name'               => _x('Discounts', 'post type general name', 'invoicing'),
134
+        'singular_name'      => _x('Discount', 'post type singular name', 'invoicing'),
135
+        'menu_name'          => _x('Discounts', 'admin menu', 'invoicing'),
136
+        'name_admin_bar'     => _x('Discount', 'add new on admin bar', 'invoicing'),
137
+        'add_new'            => _x('Add New', 'book', 'invoicing'),
138
+        'add_new_item'       => __('Add New Discount', 'invoicing'),
139
+        'new_item'           => __('New Discount', 'invoicing'),
140
+        'edit_item'          => __('Edit Discount', 'invoicing'),
141
+        'view_item'          => __('View Discount', 'invoicing'),
142
+        'all_items'          => __('Discounts', 'invoicing'),
143
+        'search_items'       => __('Search Discounts', 'invoicing'),
144
+        'parent_item_colon'  => __('Parent Discounts:', 'invoicing'),
145
+        'not_found'          => __('No discounts found.', 'invoicing'),
146
+        'not_found_in_trash' => __('No discounts found in trash.', 'invoicing')
147 147
     );
148
-    $labels = apply_filters( 'wpinv_discounts_labels', $labels );
148
+    $labels = apply_filters('wpinv_discounts_labels', $labels);
149 149
 
150 150
     $cap_type = 'wpi_discount';
151 151
     
152 152
     $args = array(
153 153
         'labels'             => $labels,
154
-        'description'        => __( 'This is where you can add new discounts that users can use in invoices.', 'invoicing' ),
154
+        'description'        => __('This is where you can add new discounts that users can use in invoices.', 'invoicing'),
155 155
         'public'             => false,
156 156
         'can_export'         => true,
157 157
         '_builtin'           => false,
158 158
         'publicly_queryable' => false,
159 159
         'exclude_from_search'=> true,
160 160
         'show_ui'            => true,
161
-        'show_in_menu'       => current_user_can( 'manage_invoicing' ) ? 'wpinv' : false,
161
+        'show_in_menu'       => current_user_can('manage_invoicing') ? 'wpinv' : false,
162 162
         'query_var'          => false,
163 163
         'rewrite'            => false,
164 164
         'capability_type'    => $cap_type,
@@ -181,7 +181,7 @@  discard block
 block discarded – undo
181 181
         ),
182 182
         'has_archive'        => false,
183 183
         'hierarchical'       => false,
184
-        'supports'           => array( 'title', 'excerpt' ),
184
+        'supports'           => array('title', 'excerpt'),
185 185
         'register_meta_box_cb'  => 'wpinv_register_discount_meta_boxes',
186 186
         'show_in_nav_menus'  => false,
187 187
         'show_in_admin_bar'  => true,
@@ -189,107 +189,107 @@  discard block
 block discarded – undo
189 189
         'menu_position'      => null,
190 190
     );
191 191
             
192
-    $args = apply_filters( 'wpinv_register_post_type_discount', $args );
192
+    $args = apply_filters('wpinv_register_post_type_discount', $args);
193 193
     
194
-    register_post_type( 'wpi_discount', $args );
194
+    register_post_type('wpi_discount', $args);
195 195
 }
196 196
 
197 197
 function wpinv_get_default_labels() {
198 198
     $defaults = array(
199
-       'singular' => __( 'Invoice', 'invoicing' ),
200
-       'plural'   => __( 'Invoices', 'invoicing' )
199
+       'singular' => __('Invoice', 'invoicing'),
200
+       'plural'   => __('Invoices', 'invoicing')
201 201
     );
202 202
     
203
-    return apply_filters( 'wpinv_default_invoices_name', $defaults );
203
+    return apply_filters('wpinv_default_invoices_name', $defaults);
204 204
 }
205 205
 
206
-function wpinv_get_label_singular( $lowercase = false ) {
206
+function wpinv_get_label_singular($lowercase = false) {
207 207
     $defaults = wpinv_get_default_labels();
208 208
     
209
-    return ($lowercase) ? strtolower( $defaults['singular'] ) : $defaults['singular'];
209
+    return ($lowercase) ? strtolower($defaults['singular']) : $defaults['singular'];
210 210
 }
211 211
 
212
-function wpinv_get_label_plural( $lowercase = false ) {
212
+function wpinv_get_label_plural($lowercase = false) {
213 213
     $defaults = wpinv_get_default_labels();
214 214
     
215
-    return ( $lowercase ) ? strtolower( $defaults['plural'] ) : $defaults['plural'];
215
+    return ($lowercase) ? strtolower($defaults['plural']) : $defaults['plural'];
216 216
 }
217 217
 
218
-function wpinv_change_default_title( $title ) {
219
-     if ( !is_admin() ) {
218
+function wpinv_change_default_title($title) {
219
+     if (!is_admin()) {
220 220
         $label = wpinv_get_label_singular();
221
-        $title = sprintf( __( 'Enter %s name here', 'invoicing' ), $label );
221
+        $title = sprintf(__('Enter %s name here', 'invoicing'), $label);
222 222
         return $title;
223 223
      }
224 224
 
225 225
      $screen = get_current_screen();
226 226
 
227
-     if ( 'wpi_invoice' == $screen->post_type ) {
227
+     if ('wpi_invoice' == $screen->post_type) {
228 228
         $label = wpinv_get_label_singular();
229
-        $title = sprintf( __( 'Enter %s name here', 'invoicing' ), $label );
229
+        $title = sprintf(__('Enter %s name here', 'invoicing'), $label);
230 230
      }
231 231
 
232 232
      return $title;
233 233
 }
234
-add_filter( 'enter_title_here', 'wpinv_change_default_title' );
234
+add_filter('enter_title_here', 'wpinv_change_default_title');
235 235
 
236 236
 function wpinv_register_post_status() {
237
-    register_post_status( 'wpi-pending', array(
238
-        'label'                     => _x( 'Pending', 'Invoice status', 'invoicing' ),
237
+    register_post_status('wpi-pending', array(
238
+        'label'                     => _x('Pending', 'Invoice status', 'invoicing'),
239 239
         'public'                    => true,
240 240
         'exclude_from_search'       => true,
241 241
         'show_in_admin_all_list'    => true,
242 242
         'show_in_admin_status_list' => true,
243
-        'label_count'               => _n_noop( 'Pending <span class="count">(%s)</span>', 'Pending <span class="count">(%s)</span>', 'invoicing' )
244
-    ) );
245
-    register_post_status( 'wpi-processing', array(
246
-        'label'                     => _x( 'Processing', 'Invoice status', 'invoicing' ),
243
+        'label_count'               => _n_noop('Pending <span class="count">(%s)</span>', 'Pending <span class="count">(%s)</span>', 'invoicing')
244
+    ));
245
+    register_post_status('wpi-processing', array(
246
+        'label'                     => _x('Processing', 'Invoice status', 'invoicing'),
247 247
         'public'                    => true,
248 248
         'exclude_from_search'       => true,
249 249
         'show_in_admin_all_list'    => true,
250 250
         'show_in_admin_status_list' => true,
251
-        'label_count'               => _n_noop( 'Processing <span class="count">(%s)</span>', 'Processing <span class="count">(%s)</span>', 'invoicing' )
252
-    ) );
253
-    register_post_status( 'wpi-onhold', array(
254
-        'label'                     => _x( 'On Hold', 'Invoice status', 'invoicing' ),
251
+        'label_count'               => _n_noop('Processing <span class="count">(%s)</span>', 'Processing <span class="count">(%s)</span>', 'invoicing')
252
+    ));
253
+    register_post_status('wpi-onhold', array(
254
+        'label'                     => _x('On Hold', 'Invoice status', 'invoicing'),
255 255
         'public'                    => true,
256 256
         'exclude_from_search'       => true,
257 257
         'show_in_admin_all_list'    => true,
258 258
         'show_in_admin_status_list' => true,
259
-        'label_count'               => _n_noop( 'On Hold <span class="count">(%s)</span>', 'On Hold <span class="count">(%s)</span>', 'invoicing' )
260
-    ) );
261
-    register_post_status( 'wpi-cancelled', array(
262
-        'label'                     => _x( 'Cancelled', 'Invoice status', 'invoicing' ),
259
+        'label_count'               => _n_noop('On Hold <span class="count">(%s)</span>', 'On Hold <span class="count">(%s)</span>', 'invoicing')
260
+    ));
261
+    register_post_status('wpi-cancelled', array(
262
+        'label'                     => _x('Cancelled', 'Invoice status', 'invoicing'),
263 263
         'public'                    => true,
264 264
         'exclude_from_search'       => true,
265 265
         'show_in_admin_all_list'    => true,
266 266
         'show_in_admin_status_list' => true,
267
-        'label_count'               => _n_noop( 'Cancelled <span class="count">(%s)</span>', 'Cancelled <span class="count">(%s)</span>', 'invoicing' )
268
-    ) );
269
-    register_post_status( 'wpi-refunded', array(
270
-        'label'                     => _x( 'Refunded', 'Invoice status', 'invoicing' ),
267
+        'label_count'               => _n_noop('Cancelled <span class="count">(%s)</span>', 'Cancelled <span class="count">(%s)</span>', 'invoicing')
268
+    ));
269
+    register_post_status('wpi-refunded', array(
270
+        'label'                     => _x('Refunded', 'Invoice status', 'invoicing'),
271 271
         'public'                    => true,
272 272
         'exclude_from_search'       => true,
273 273
         'show_in_admin_all_list'    => true,
274 274
         'show_in_admin_status_list' => true,
275
-        'label_count'               => _n_noop( 'Refunded <span class="count">(%s)</span>', 'Refunded <span class="count">(%s)</span>', 'invoicing' )
276
-    ) );
277
-    register_post_status( 'wpi-failed', array(
278
-        'label'                     => _x( 'Failed', 'Invoice status', 'invoicing' ),
275
+        'label_count'               => _n_noop('Refunded <span class="count">(%s)</span>', 'Refunded <span class="count">(%s)</span>', 'invoicing')
276
+    ));
277
+    register_post_status('wpi-failed', array(
278
+        'label'                     => _x('Failed', 'Invoice status', 'invoicing'),
279 279
         'public'                    => true,
280 280
         'exclude_from_search'       => true,
281 281
         'show_in_admin_all_list'    => true,
282 282
         'show_in_admin_status_list' => true,
283
-        'label_count'               => _n_noop( 'Failed <span class="count">(%s)</span>', 'Failed <span class="count">(%s)</span>', 'invoicing' )
284
-    ) );
285
-    register_post_status( 'wpi-renewal', array(
286
-        'label'                     => _x( 'Renewal', 'Invoice status', 'invoicing' ),
283
+        'label_count'               => _n_noop('Failed <span class="count">(%s)</span>', 'Failed <span class="count">(%s)</span>', 'invoicing')
284
+    ));
285
+    register_post_status('wpi-renewal', array(
286
+        'label'                     => _x('Renewal', 'Invoice status', 'invoicing'),
287 287
         'public'                    => true,
288 288
         'exclude_from_search'       => true,
289 289
         'show_in_admin_all_list'    => true,
290 290
         'show_in_admin_status_list' => true,
291
-        'label_count'               => _n_noop( 'Renewal <span class="count">(%s)</span>', 'Renewal <span class="count">(%s)</span>', 'invoicing' )
292
-    ) );
291
+        'label_count'               => _n_noop('Renewal <span class="count">(%s)</span>', 'Renewal <span class="count">(%s)</span>', 'invoicing')
292
+    ));
293 293
 }
294
-add_action( 'init', 'wpinv_register_post_status', 10 );
294
+add_action('init', 'wpinv_register_post_status', 10);
295 295
 
Please login to merge, or discard this patch.
includes/gateways/paypal.php 1 patch
Spacing   +260 added lines, -260 removed lines patch added patch discarded remove patch
@@ -1,13 +1,13 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly
3
-if ( ! defined( 'ABSPATH' ) ) exit;
3
+if (!defined('ABSPATH')) exit;
4 4
 
5
-add_action( 'wpinv_paypal_cc_form', '__return_false' );
6
-add_filter( 'wpinv_paypal_support_subscription', '__return_true' );
5
+add_action('wpinv_paypal_cc_form', '__return_false');
6
+add_filter('wpinv_paypal_support_subscription', '__return_true');
7 7
 
8
-function wpinv_process_paypal_payment( $purchase_data ) {
9
-    if( ! wp_verify_nonce( $purchase_data['gateway_nonce'], 'wpi-gateway' ) ) {
10
-        wp_die( __( 'Nonce verification has failed', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) );
8
+function wpinv_process_paypal_payment($purchase_data) {
9
+    if (!wp_verify_nonce($purchase_data['gateway_nonce'], 'wpi-gateway')) {
10
+        wp_die(__('Nonce verification has failed', 'invoicing'), __('Error', 'invoicing'), array('response' => 403));
11 11
     }
12 12
 
13 13
     // Collect payment data
@@ -25,30 +25,30 @@  discard block
 block discarded – undo
25 25
     );
26 26
 
27 27
     // Record the pending payment
28
-    $invoice = wpinv_get_invoice( $purchase_data['invoice_id'] );
28
+    $invoice = wpinv_get_invoice($purchase_data['invoice_id']);
29 29
 
30 30
     // Check payment
31
-    if ( ! $invoice ) {
31
+    if (!$invoice) {
32 32
         // Record the error
33
-        wpinv_record_gateway_error( __( 'Payment Error', 'invoicing' ), sprintf( __( 'Payment creation failed before sending buyer to PayPal. Payment data: %s', 'invoicing' ), json_encode( $payment_data ) ), $payment );
33
+        wpinv_record_gateway_error(__('Payment Error', 'invoicing'), sprintf(__('Payment creation failed before sending buyer to PayPal. Payment data: %s', 'invoicing'), json_encode($payment_data)), $payment);
34 34
         // Problems? send back
35
-        wpinv_send_back_to_checkout( '?payment-mode=' . $purchase_data['post_data']['wpi-gateway'] );
35
+        wpinv_send_back_to_checkout('?payment-mode=' . $purchase_data['post_data']['wpi-gateway']);
36 36
     } else {
37 37
         // Only send to PayPal if the pending payment is created successfully
38
-        $listener_url = wpinv_get_ipn_url( 'paypal' );
38
+        $listener_url = wpinv_get_ipn_url('paypal');
39 39
 
40 40
         // Get the success url
41
-        $return_url = add_query_arg( array(
41
+        $return_url = add_query_arg(array(
42 42
                 'payment-confirm' => 'paypal',
43 43
                 'invoice-id' => $invoice->ID
44
-            ), get_permalink( wpinv_get_option( 'success_page', false ) ) );
44
+            ), get_permalink(wpinv_get_option('success_page', false)));
45 45
 
46 46
         // Get the PayPal redirect uri
47
-        $paypal_redirect = trailingslashit( wpinv_get_paypal_redirect() ) . '?';
47
+        $paypal_redirect = trailingslashit(wpinv_get_paypal_redirect()) . '?';
48 48
 
49 49
         // Setup PayPal arguments
50 50
         $paypal_args = array(
51
-            'business'      => wpinv_get_option( 'paypal_email', false ),
51
+            'business'      => wpinv_get_option('paypal_email', false),
52 52
             'email'         => $invoice->get_email(),
53 53
             'first_name'    => $invoice->get_first_name(),
54 54
             'last_name'     => $invoice->get_last_name(),
@@ -57,16 +57,16 @@  discard block
 block discarded – undo
57 57
             'shipping'      => '0',
58 58
             'no_note'       => '1',
59 59
             'currency_code' => wpinv_get_currency(),
60
-            'charset'       => get_bloginfo( 'charset' ),
60
+            'charset'       => get_bloginfo('charset'),
61 61
             'custom'        => $invoice->ID,
62 62
             'rm'            => '2',
63 63
             'return'        => $return_url,
64
-            'cancel_return' => wpinv_get_failed_transaction_uri( '?invoice-id=' . $invoice->ID ),
64
+            'cancel_return' => wpinv_get_failed_transaction_uri('?invoice-id=' . $invoice->ID),
65 65
             'notify_url'    => $listener_url,
66
-            'cbt'           => get_bloginfo( 'name' ),
66
+            'cbt'           => get_bloginfo('name'),
67 67
             'bn'            => 'WPInvoicing_SP',
68 68
             'lc'            => 'US', // this will force paypal site to english
69
-            'landing_page'  => apply_filters( 'wpinv_paypal_standard_landing_page', 'billing', $invoice ), // 'login' or 'billing'. login - PayPal account login, billing - Non-PayPal account.
69
+            'landing_page'  => apply_filters('wpinv_paypal_standard_landing_page', 'billing', $invoice), // 'login' or 'billing'. login - PayPal account login, billing - Non-PayPal account.
70 70
         );
71 71
 
72 72
         $paypal_args['address1'] = $invoice->get_address();
@@ -80,57 +80,57 @@  discard block
 block discarded – undo
80 80
             'upload' => '1'
81 81
         );
82 82
 
83
-        $paypal_args = array_merge( $paypal_extra_args, $paypal_args );
83
+        $paypal_args = array_merge($paypal_extra_args, $paypal_args);
84 84
 
85 85
         // Add cart items
86 86
         $i = 1;
87
-        if( is_array( $purchase_data['cart_details'] ) && ! empty( $purchase_data['cart_details'] ) ) {
88
-            foreach ( $purchase_data['cart_details'] as $item ) {
87
+        if (is_array($purchase_data['cart_details']) && !empty($purchase_data['cart_details'])) {
88
+            foreach ($purchase_data['cart_details'] as $item) {
89 89
                 $item['quantity'] = $item['quantity'] > 0 ? $item['quantity'] : 1;
90
-                $item_amount = wpinv_sanitize_amount( $item['subtotal'] / $item['quantity'], 2 );
90
+                $item_amount = wpinv_sanitize_amount($item['subtotal'] / $item['quantity'], 2);
91 91
 
92
-                if ( $item_amount <= 0 ) {
92
+                if ($item_amount <= 0) {
93 93
                     $item_amount = 0;
94 94
                 }
95 95
 
96
-                $paypal_args['item_number_' . $i ]      = $item['id'];
97
-                $paypal_args['item_name_' . $i ]        = stripslashes_deep( html_entity_decode( wpinv_get_cart_item_name( $item ), ENT_COMPAT, 'UTF-8' ) );
98
-                $paypal_args['quantity_' . $i ]         = $item['quantity'];
99
-                $paypal_args['amount_' . $i ]           = $item_amount;
100
-                $paypal_args['discount_amount_' . $i ]  = wpinv_sanitize_amount( $item['discount'], 2 );
96
+                $paypal_args['item_number_' . $i]      = $item['id'];
97
+                $paypal_args['item_name_' . $i]        = stripslashes_deep(html_entity_decode(wpinv_get_cart_item_name($item), ENT_COMPAT, 'UTF-8'));
98
+                $paypal_args['quantity_' . $i]         = $item['quantity'];
99
+                $paypal_args['amount_' . $i]           = $item_amount;
100
+                $paypal_args['discount_amount_' . $i]  = wpinv_sanitize_amount($item['discount'], 2);
101 101
 
102 102
                 $i++;
103 103
             }
104 104
         }
105 105
 
106 106
         // Add taxes to the cart
107
-        if ( wpinv_use_taxes() ) {
108
-            $paypal_args['tax_cart'] = wpinv_sanitize_amount( (float)$invoice->get_tax(), 2 );
107
+        if (wpinv_use_taxes()) {
108
+            $paypal_args['tax_cart'] = wpinv_sanitize_amount((float)$invoice->get_tax(), 2);
109 109
         }
110 110
 
111
-        $paypal_args = apply_filters( 'wpinv_paypal_args', $paypal_args, $purchase_data, $invoice );
111
+        $paypal_args = apply_filters('wpinv_paypal_args', $paypal_args, $purchase_data, $invoice);
112 112
 
113 113
         // Build query
114
-        $paypal_redirect .= http_build_query( $paypal_args );
114
+        $paypal_redirect .= http_build_query($paypal_args);
115 115
 
116 116
         // Fix for some sites that encode the entities
117
-        $paypal_redirect = str_replace( '&amp;', '&', $paypal_redirect );
117
+        $paypal_redirect = str_replace('&amp;', '&', $paypal_redirect);
118 118
 
119 119
         // Get rid of cart contents
120 120
         wpinv_empty_cart();
121 121
         
122 122
         // Redirect to PayPal
123
-        wp_redirect( $paypal_redirect );
123
+        wp_redirect($paypal_redirect);
124 124
         exit;
125 125
     }
126 126
 }
127
-add_action( 'wpinv_gateway_paypal', 'wpinv_process_paypal_payment' );
127
+add_action('wpinv_gateway_paypal', 'wpinv_process_paypal_payment');
128 128
 
129
-function wpinv_get_paypal_recurring_args( $paypal_args, $purchase_data, $invoice ) {
130
-    if ( $invoice->is_recurring() && $item_id = $invoice->get_recurring() ) {
131
-        $item   = new WPInv_Item( $item_id );
129
+function wpinv_get_paypal_recurring_args($paypal_args, $purchase_data, $invoice) {
130
+    if ($invoice->is_recurring() && $item_id = $invoice->get_recurring()) {
131
+        $item = new WPInv_Item($item_id);
132 132
         
133
-        if ( empty( $item ) ) {
133
+        if (empty($item)) {
134 134
             return $paypal_args;
135 135
         }
136 136
 
@@ -138,24 +138,24 @@  discard block
 block discarded – undo
138 138
         $interval           = $item->get_recurring_interval();
139 139
         $bill_times         = (int)$item->get_recurring_limit();
140 140
         
141
-        $initial_amount     = wpinv_sanitize_amount( $invoice->get_total(), 2 );
142
-        $recurring_amount   = wpinv_sanitize_amount( $invoice->get_recurring_details( 'total' ), 2 );
141
+        $initial_amount     = wpinv_sanitize_amount($invoice->get_total(), 2);
142
+        $recurring_amount   = wpinv_sanitize_amount($invoice->get_recurring_details('total'), 2);
143 143
         
144 144
         $paypal_args['cmd'] = '_xclick-subscriptions';
145 145
         $paypal_args['sra'] = '1';
146 146
         $paypal_args['src'] = '1';
147 147
         
148 148
         // Set item description
149
-        $paypal_args['item_name']   = stripslashes_deep( html_entity_decode( wpinv_get_cart_item_name( array( 'id' => $item->ID ) ), ENT_COMPAT, 'UTF-8' ) );
149
+        $paypal_args['item_name'] = stripslashes_deep(html_entity_decode(wpinv_get_cart_item_name(array('id' => $item->ID)), ENT_COMPAT, 'UTF-8'));
150 150
         
151
-        if ( $invoice->is_free_trial() && $item->has_free_trial() ) {
151
+        if ($invoice->is_free_trial() && $item->has_free_trial()) {
152 152
             $paypal_args['a1']  = $initial_amount;
153 153
             $paypal_args['p1']  = $item->get_trial_interval();
154 154
             $paypal_args['t1']  = $item->get_trial_period();
155 155
             
156 156
             // Set the recurring amount
157 157
             $paypal_args['a3']  = $recurring_amount;
158
-        } else if ( $initial_amount != $recurring_amount && $bill_times != 1 ) {
158
+        } else if ($initial_amount != $recurring_amount && $bill_times != 1) {
159 159
             $paypal_args['a1']  = $initial_amount;
160 160
             $paypal_args['p1']  = $interval;
161 161
             $paypal_args['t1']  = $period;
@@ -163,63 +163,63 @@  discard block
 block discarded – undo
163 163
             // Set the recurring amount
164 164
             $paypal_args['a3']  = $recurring_amount;
165 165
             
166
-            if ( $bill_times > 1 ) {
166
+            if ($bill_times > 1) {
167 167
                 $bill_times--;
168 168
             }
169 169
         } else {
170
-            $paypal_args['a3']  = $initial_amount;
170
+            $paypal_args['a3'] = $initial_amount;
171 171
         }
172 172
         
173 173
         $paypal_args['p3']  = $interval;
174 174
         $paypal_args['t3']  = $period;
175 175
         
176
-        if ( $bill_times > 1 ) {
176
+        if ($bill_times > 1) {
177 177
             // Make sure it's not over the max of 52
178
-            $paypal_args['srt'] = ( $bill_times <= 52 ? absint( $bill_times ) : 52 );
178
+            $paypal_args['srt'] = ($bill_times <= 52 ? absint($bill_times) : 52);
179 179
         }
180 180
                 
181 181
         // Remove cart items
182 182
         $i = 1;
183
-        if( is_array( $purchase_data['cart_details'] ) && ! empty( $purchase_data['cart_details'] ) ) {
184
-            foreach ( $purchase_data['cart_details'] as $item ) {                
185
-                if ( isset( $paypal_args['item_number_' . $i] ) ) {
186
-                    unset( $paypal_args['item_number_' . $i] );
183
+        if (is_array($purchase_data['cart_details']) && !empty($purchase_data['cart_details'])) {
184
+            foreach ($purchase_data['cart_details'] as $item) {                
185
+                if (isset($paypal_args['item_number_' . $i])) {
186
+                    unset($paypal_args['item_number_' . $i]);
187 187
                 }
188
-                if ( isset( $paypal_args['item_name_' . $i] ) ) {
189
-                    unset( $paypal_args['item_name_' . $i] );
188
+                if (isset($paypal_args['item_name_' . $i])) {
189
+                    unset($paypal_args['item_name_' . $i]);
190 190
                 }
191
-                if ( isset( $paypal_args['quantity_' . $i] ) ) {
192
-                    unset( $paypal_args['quantity_' . $i] );
191
+                if (isset($paypal_args['quantity_' . $i])) {
192
+                    unset($paypal_args['quantity_' . $i]);
193 193
                 }
194
-                if ( isset( $paypal_args['amount_' . $i] ) ) {
195
-                    unset( $paypal_args['amount_' . $i] );
194
+                if (isset($paypal_args['amount_' . $i])) {
195
+                    unset($paypal_args['amount_' . $i]);
196 196
                 }
197
-                if ( isset( $paypal_args['discount_amount_' . $i] ) ) {
198
-                    unset( $paypal_args['discount_amount_' . $i] );
197
+                if (isset($paypal_args['discount_amount_' . $i])) {
198
+                    unset($paypal_args['discount_amount_' . $i]);
199 199
                 }
200 200
 
201 201
                 $i++;
202 202
             }
203 203
         }
204 204
         
205
-        if ( isset( $paypal_args['tax_cart'] ) ) {
206
-            unset( $paypal_args['tax_cart'] );
205
+        if (isset($paypal_args['tax_cart'])) {
206
+            unset($paypal_args['tax_cart']);
207 207
         }
208 208
                 
209
-        if ( isset( $paypal_args['upload'] ) ) {
210
-            unset( $paypal_args['upload'] );
209
+        if (isset($paypal_args['upload'])) {
210
+            unset($paypal_args['upload']);
211 211
         }
212 212
         
213
-        $paypal_args = apply_filters( 'wpinv_paypal_recurring_args', $paypal_args, $purchase_data, $invoice );
213
+        $paypal_args = apply_filters('wpinv_paypal_recurring_args', $paypal_args, $purchase_data, $invoice);
214 214
     }
215 215
     
216 216
     return $paypal_args;
217 217
 }
218
-add_filter( 'wpinv_paypal_args', 'wpinv_get_paypal_recurring_args', 10, 3 );
218
+add_filter('wpinv_paypal_args', 'wpinv_get_paypal_recurring_args', 10, 3);
219 219
 
220 220
 function wpinv_process_paypal_ipn() {
221 221
 	// Check the request method is POST
222
-	if ( isset( $_SERVER['REQUEST_METHOD'] ) && $_SERVER['REQUEST_METHOD'] != 'POST' ) {
222
+	if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] != 'POST') {
223 223
 		return;
224 224
 	}
225 225
 
@@ -227,11 +227,11 @@  discard block
 block discarded – undo
227 227
 	$post_data = '';
228 228
 
229 229
 	// Fallback just in case post_max_size is lower than needed
230
-	if ( ini_get( 'allow_url_fopen' ) ) {
231
-		$post_data = file_get_contents( 'php://input' );
230
+	if (ini_get('allow_url_fopen')) {
231
+		$post_data = file_get_contents('php://input');
232 232
 	} else {
233 233
 		// If allow_url_fopen is not enabled, then make sure that post_max_size is large enough
234
-		ini_set( 'post_max_size', '12M' );
234
+		ini_set('post_max_size', '12M');
235 235
 	}
236 236
 	// Start the encoded data collection with notification command
237 237
 	$encoded_data = 'cmd=_notify-validate';
@@ -240,43 +240,43 @@  discard block
 block discarded – undo
240 240
 	$arg_separator = wpinv_get_php_arg_separator_output();
241 241
 
242 242
 	// Verify there is a post_data
243
-	if ( $post_data || strlen( $post_data ) > 0 ) {
243
+	if ($post_data || strlen($post_data) > 0) {
244 244
 		// Append the data
245
-		$encoded_data .= $arg_separator.$post_data;
245
+		$encoded_data .= $arg_separator . $post_data;
246 246
 	} else {
247 247
 		// Check if POST is empty
248
-		if ( empty( $_POST ) ) {
248
+		if (empty($_POST)) {
249 249
 			// Nothing to do
250 250
 			return;
251 251
 		} else {
252 252
 			// Loop through each POST
253
-			foreach ( $_POST as $key => $value ) {
253
+			foreach ($_POST as $key => $value) {
254 254
 				// Encode the value and append the data
255
-				$encoded_data .= $arg_separator."$key=" . urlencode( $value );
255
+				$encoded_data .= $arg_separator . "$key=" . urlencode($value);
256 256
 			}
257 257
 		}
258 258
 	}
259 259
 
260 260
 	// Convert collected post data to an array
261
-	parse_str( $encoded_data, $encoded_data_array );
261
+	parse_str($encoded_data, $encoded_data_array);
262 262
 
263
-	foreach ( $encoded_data_array as $key => $value ) {
264
-		if ( false !== strpos( $key, 'amp;' ) ) {
265
-			$new_key = str_replace( '&amp;', '&', $key );
266
-			$new_key = str_replace( 'amp;', '&' , $new_key );
263
+	foreach ($encoded_data_array as $key => $value) {
264
+		if (false !== strpos($key, 'amp;')) {
265
+			$new_key = str_replace('&amp;', '&', $key);
266
+			$new_key = str_replace('amp;', '&', $new_key);
267 267
 
268
-			unset( $encoded_data_array[ $key ] );
269
-			$encoded_data_array[ $new_key ] = $value;
268
+			unset($encoded_data_array[$key]);
269
+			$encoded_data_array[$new_key] = $value;
270 270
 		}
271 271
 	}
272 272
 
273 273
 	// Get the PayPal redirect uri
274
-	$paypal_redirect = wpinv_get_paypal_redirect( true );
274
+	$paypal_redirect = wpinv_get_paypal_redirect(true);
275 275
 
276
-	if ( !wpinv_get_option( 'disable_paypal_verification', false ) ) {
276
+	if (!wpinv_get_option('disable_paypal_verification', false)) {
277 277
 		// Validate the IPN
278 278
 
279
-		$remote_post_vars      = array(
279
+		$remote_post_vars = array(
280 280
 			'method'           => 'POST',
281 281
 			'timeout'          => 45,
282 282
 			'redirection'      => 5,
@@ -294,21 +294,21 @@  discard block
 block discarded – undo
294 294
 		);
295 295
 
296 296
 		// Get response
297
-		$api_response = wp_remote_post( wpinv_get_paypal_redirect(), $remote_post_vars );
297
+		$api_response = wp_remote_post(wpinv_get_paypal_redirect(), $remote_post_vars);
298 298
 
299
-		if ( is_wp_error( $api_response ) ) {
300
-			wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid IPN verification response. IPN data: %s', 'invoicing' ), json_encode( $api_response ) ) );
299
+		if (is_wp_error($api_response)) {
300
+			wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid IPN verification response. IPN data: %s', 'invoicing'), json_encode($api_response)));
301 301
 			return; // Something went wrong
302 302
 		}
303 303
 
304
-		if ( $api_response['body'] !== 'VERIFIED' && wpinv_get_option( 'disable_paypal_verification', false ) ) {
305
-			wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid IPN verification response. IPN data: %s', 'invoicing' ), json_encode( $api_response ) ) );
304
+		if ($api_response['body'] !== 'VERIFIED' && wpinv_get_option('disable_paypal_verification', false)) {
305
+			wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid IPN verification response. IPN data: %s', 'invoicing'), json_encode($api_response)));
306 306
 			return; // Response not okay
307 307
 		}
308 308
 	}
309 309
 
310 310
 	// Check if $post_data_array has been populated
311
-	if ( !is_array( $encoded_data_array ) && !empty( $encoded_data_array ) )
311
+	if (!is_array($encoded_data_array) && !empty($encoded_data_array))
312 312
 		return;
313 313
 
314 314
 	$defaults = array(
@@ -316,215 +316,215 @@  discard block
 block discarded – undo
316 316
 		'payment_status' => ''
317 317
 	);
318 318
 
319
-	$encoded_data_array = wp_parse_args( $encoded_data_array, $defaults );
319
+	$encoded_data_array = wp_parse_args($encoded_data_array, $defaults);
320 320
 
321
-	$invoice_id = isset( $encoded_data_array['custom'] ) ? absint( $encoded_data_array['custom'] ) : 0;
321
+	$invoice_id = isset($encoded_data_array['custom']) ? absint($encoded_data_array['custom']) : 0;
322 322
     
323
-	wpinv_error_log( $encoded_data_array['txn_type'], 'PayPal txn_type', __FILE__, __LINE__ );
323
+	wpinv_error_log($encoded_data_array['txn_type'], 'PayPal txn_type', __FILE__, __LINE__);
324 324
 
325
-	if ( has_action( 'wpinv_paypal_' . $encoded_data_array['txn_type'] ) ) {
325
+	if (has_action('wpinv_paypal_' . $encoded_data_array['txn_type'])) {
326 326
 		// Allow PayPal IPN types to be processed separately
327
-		do_action( 'wpinv_paypal_' . $encoded_data_array['txn_type'], $encoded_data_array, $invoice_id );
327
+		do_action('wpinv_paypal_' . $encoded_data_array['txn_type'], $encoded_data_array, $invoice_id);
328 328
 	} else {
329 329
 		// Fallback to web accept just in case the txn_type isn't present
330
-		do_action( 'wpinv_paypal_web_accept', $encoded_data_array, $invoice_id );
330
+		do_action('wpinv_paypal_web_accept', $encoded_data_array, $invoice_id);
331 331
 	}
332 332
 	exit;
333 333
 }
334
-add_action( 'wpinv_verify_paypal_ipn', 'wpinv_process_paypal_ipn' );
334
+add_action('wpinv_verify_paypal_ipn', 'wpinv_process_paypal_ipn');
335 335
 
336
-function wpinv_process_paypal_web_accept_and_cart( $data, $invoice_id ) {
337
-	if ( $data['txn_type'] != 'web_accept' && $data['txn_type'] != 'cart' && $data['payment_status'] != 'Refunded' ) {
336
+function wpinv_process_paypal_web_accept_and_cart($data, $invoice_id) {
337
+	if ($data['txn_type'] != 'web_accept' && $data['txn_type'] != 'cart' && $data['payment_status'] != 'Refunded') {
338 338
 		return;
339 339
 	}
340 340
 
341
-	if( empty( $invoice_id ) ) {
341
+	if (empty($invoice_id)) {
342 342
 		return;
343 343
 	}
344 344
 
345 345
 	// Collect payment details
346
-	$purchase_key   = isset( $data['invoice'] ) ? $data['invoice'] : $data['item_number'];
346
+	$purchase_key   = isset($data['invoice']) ? $data['invoice'] : $data['item_number'];
347 347
 	$paypal_amount  = $data['mc_gross'];
348
-	$payment_status = strtolower( $data['payment_status'] );
349
-	$currency_code  = strtolower( $data['mc_currency'] );
350
-	$business_email = isset( $data['business'] ) && is_email( $data['business'] ) ? trim( $data['business'] ) : trim( $data['receiver_email'] );
351
-	$payment_meta   = wpinv_get_invoice_meta( $invoice_id );
348
+	$payment_status = strtolower($data['payment_status']);
349
+	$currency_code  = strtolower($data['mc_currency']);
350
+	$business_email = isset($data['business']) && is_email($data['business']) ? trim($data['business']) : trim($data['receiver_email']);
351
+	$payment_meta   = wpinv_get_invoice_meta($invoice_id);
352 352
 
353
-	if ( wpinv_get_payment_gateway( $invoice_id ) != 'paypal' ) {
353
+	if (wpinv_get_payment_gateway($invoice_id) != 'paypal') {
354 354
 		return; // this isn't a PayPal standard IPN
355 355
 	}
356 356
 
357 357
 	// Verify payment recipient
358
-	if ( strcasecmp( $business_email, trim( wpinv_get_option( 'paypal_email', false ) ) ) != 0 ) {
359
-		wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid business email in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id );
360
-		wpinv_update_payment_status( $invoice_id, 'wpi-failed' );
361
-		wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid PayPal business email.', 'invoicing' ) );
358
+	if (strcasecmp($business_email, trim(wpinv_get_option('paypal_email', false))) != 0) {
359
+		wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid business email in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id);
360
+		wpinv_update_payment_status($invoice_id, 'wpi-failed');
361
+		wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid PayPal business email.', 'invoicing'));
362 362
 		return;
363 363
 	}
364 364
 
365 365
 	// Verify payment currency
366
-	if ( $currency_code != strtolower( $payment_meta['currency'] ) ) {
367
-		wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid currency in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id );
368
-		wpinv_update_payment_status( $invoice_id, 'wpi-failed' );
369
-		wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid currency in PayPal IPN.', 'invoicing' ) );
366
+	if ($currency_code != strtolower($payment_meta['currency'])) {
367
+		wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid currency in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id);
368
+		wpinv_update_payment_status($invoice_id, 'wpi-failed');
369
+		wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid currency in PayPal IPN.', 'invoicing'));
370 370
 		return;
371 371
 	}
372 372
 
373
-	if ( !wpinv_get_payment_user_email( $invoice_id ) ) {
373
+	if (!wpinv_get_payment_user_email($invoice_id)) {
374 374
 		// This runs when a Buy Now purchase was made. It bypasses checkout so no personal info is collected until PayPal
375 375
 		// No email associated with purchase, so store from PayPal
376
-		wpinv_update_invoice_meta( $invoice_id, '_wpinv_email', $data['payer_email'] );
376
+		wpinv_update_invoice_meta($invoice_id, '_wpinv_email', $data['payer_email']);
377 377
 
378 378
 		// Setup and store the customer's details
379 379
 		$user_info = array(
380 380
 			'user_id'    => '-1',
381
-			'email'      => sanitize_text_field( $data['payer_email'] ),
382
-			'first_name' => sanitize_text_field( $data['first_name'] ),
383
-			'last_name'  => sanitize_text_field( $data['last_name'] ),
381
+			'email'      => sanitize_text_field($data['payer_email']),
382
+			'first_name' => sanitize_text_field($data['first_name']),
383
+			'last_name'  => sanitize_text_field($data['last_name']),
384 384
 			'discount'   => '',
385 385
 		);
386
-		$user_info['address'] = ! empty( $data['address_street']       ) ? sanitize_text_field( $data['address_street'] )       : false;
387
-		$user_info['city']    = ! empty( $data['address_city']         ) ? sanitize_text_field( $data['address_city'] )         : false;
388
-		$user_info['state']   = ! empty( $data['address_state']        ) ? sanitize_text_field( $data['address_state'] )        : false;
389
-		$user_info['country'] = ! empty( $data['address_country_code'] ) ? sanitize_text_field( $data['address_country_code'] ) : false;
390
-		$user_info['zip']     = ! empty( $data['address_zip']          ) ? sanitize_text_field( $data['address_zip'] )          : false;
386
+		$user_info['address'] = !empty($data['address_street']) ? sanitize_text_field($data['address_street']) : false;
387
+		$user_info['city']    = !empty($data['address_city']) ? sanitize_text_field($data['address_city']) : false;
388
+		$user_info['state']   = !empty($data['address_state']) ? sanitize_text_field($data['address_state']) : false;
389
+		$user_info['country'] = !empty($data['address_country_code']) ? sanitize_text_field($data['address_country_code']) : false;
390
+		$user_info['zip']     = !empty($data['address_zip']) ? sanitize_text_field($data['address_zip']) : false;
391 391
 
392 392
 		$payment_meta['user_info'] = $user_info;
393
-		wpinv_update_invoice_meta( $invoice_id, '_wpinv_payment_meta', $payment_meta );
393
+		wpinv_update_invoice_meta($invoice_id, '_wpinv_payment_meta', $payment_meta);
394 394
 	}
395 395
 
396
-	if ( $payment_status == 'refunded' || $payment_status == 'reversed' ) {
396
+	if ($payment_status == 'refunded' || $payment_status == 'reversed') {
397 397
 		// Process a refund
398
-		wpinv_process_paypal_refund( $data, $invoice_id );
398
+		wpinv_process_paypal_refund($data, $invoice_id);
399 399
 	} else {
400
-		if ( get_post_status( $invoice_id ) == 'publish' ) {
400
+		if (get_post_status($invoice_id) == 'publish') {
401 401
 			return; // Only paid payments once
402 402
 		}
403 403
 
404 404
 		// Retrieve the total purchase amount (before PayPal)
405
-		$payment_amount = wpinv_payment_total( $invoice_id );
405
+		$payment_amount = wpinv_payment_total($invoice_id);
406 406
 
407
-		if ( number_format( (float) $paypal_amount, 2 ) < number_format( (float) $payment_amount, 2 ) ) {
407
+		if (number_format((float)$paypal_amount, 2) < number_format((float)$payment_amount, 2)) {
408 408
 			// The prices don't match
409
-			wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid payment amount in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id );
410
-			wpinv_update_payment_status( $invoice_id, 'wpi-failed' );
411
-			wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid amount in PayPal IPN.', 'invoicing' ) );
409
+			wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid payment amount in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id);
410
+			wpinv_update_payment_status($invoice_id, 'wpi-failed');
411
+			wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid amount in PayPal IPN.', 'invoicing'));
412 412
 			return;
413 413
 		}
414
-		if ( $purchase_key != wpinv_get_payment_key( $invoice_id ) ) {
414
+		if ($purchase_key != wpinv_get_payment_key($invoice_id)) {
415 415
 			// Purchase keys don't match
416
-			wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid purchase key in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id );
417
-			wpinv_update_payment_status( $invoice_id, 'wpi-failed' );
418
-			wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid purchase key in PayPal IPN.', 'invoicing' ) );
416
+			wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid purchase key in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id);
417
+			wpinv_update_payment_status($invoice_id, 'wpi-failed');
418
+			wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid purchase key in PayPal IPN.', 'invoicing'));
419 419
 			return;
420 420
 		}
421 421
 
422
-		if ( 'complete' == $payment_status || 'completed' == $payment_status || 'processed' == $payment_status || wpinv_is_test_mode( 'paypal' ) ) {
423
-			wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $data['txn_id'] ) );
424
-			wpinv_set_payment_transaction_id( $invoice_id, $data['txn_id'] );
425
-			wpinv_update_payment_status( $invoice_id, 'publish' );
426
-		} else if ( 'pending' == $payment_status && isset( $data['pending_reason'] ) ) {
422
+		if ('complete' == $payment_status || 'completed' == $payment_status || 'processed' == $payment_status || wpinv_is_test_mode('paypal')) {
423
+			wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $data['txn_id']));
424
+			wpinv_set_payment_transaction_id($invoice_id, $data['txn_id']);
425
+			wpinv_update_payment_status($invoice_id, 'publish');
426
+		} else if ('pending' == $payment_status && isset($data['pending_reason'])) {
427 427
 			// Look for possible pending reasons, such as an echeck
428 428
 			$note = '';
429 429
 
430
-			switch( strtolower( $data['pending_reason'] ) ) {
430
+			switch (strtolower($data['pending_reason'])) {
431 431
 				case 'echeck' :
432
-					$note = __( 'Payment made via eCheck and will clear automatically in 5-8 days', 'invoicing' );
432
+					$note = __('Payment made via eCheck and will clear automatically in 5-8 days', 'invoicing');
433 433
 					break;
434 434
 				
435 435
                 case 'address' :
436
-					$note = __( 'Payment requires a confirmed customer address and must be accepted manually through PayPal', 'invoicing' );
436
+					$note = __('Payment requires a confirmed customer address and must be accepted manually through PayPal', 'invoicing');
437 437
 					break;
438 438
 				
439 439
                 case 'intl' :
440
-					$note = __( 'Payment must be accepted manually through PayPal due to international account regulations', 'invoicing' );
440
+					$note = __('Payment must be accepted manually through PayPal due to international account regulations', 'invoicing');
441 441
 					break;
442 442
 				
443 443
                 case 'multi-currency' :
444
-					$note = __( 'Payment received in non-shop currency and must be accepted manually through PayPal', 'invoicing' );
444
+					$note = __('Payment received in non-shop currency and must be accepted manually through PayPal', 'invoicing');
445 445
 					break;
446 446
 				
447 447
                 case 'paymentreview' :
448 448
                 case 'regulatory_review' :
449
-					$note = __( 'Payment is being reviewed by PayPal staff as high-risk or in possible violation of government regulations', 'invoicing' );
449
+					$note = __('Payment is being reviewed by PayPal staff as high-risk or in possible violation of government regulations', 'invoicing');
450 450
 					break;
451 451
 				
452 452
                 case 'unilateral' :
453
-					$note = __( 'Payment was sent to non-confirmed or non-registered email address.', 'invoicing' );
453
+					$note = __('Payment was sent to non-confirmed or non-registered email address.', 'invoicing');
454 454
 					break;
455 455
 				
456 456
                 case 'upgrade' :
457
-					$note = __( 'PayPal account must be upgraded before this payment can be accepted', 'invoicing' );
457
+					$note = __('PayPal account must be upgraded before this payment can be accepted', 'invoicing');
458 458
 					break;
459 459
 				
460 460
                 case 'verify' :
461
-					$note = __( 'PayPal account is not verified. Verify account in order to accept this payment', 'invoicing' );
461
+					$note = __('PayPal account is not verified. Verify account in order to accept this payment', 'invoicing');
462 462
 					break;
463 463
 
464 464
 				case 'other' :
465
-					$note = __( 'Payment is pending for unknown reasons. Contact PayPal support for assistance', 'invoicing' );
465
+					$note = __('Payment is pending for unknown reasons. Contact PayPal support for assistance', 'invoicing');
466 466
 					break;
467 467
 			}
468 468
 
469
-			if ( ! empty( $note ) ) {
470
-				wpinv_insert_payment_note( $invoice_id, $note );
469
+			if (!empty($note)) {
470
+				wpinv_insert_payment_note($invoice_id, $note);
471 471
 			}
472 472
 		} else {
473
-			wpinv_insert_payment_note( $invoice_id, wp_sprintf( __( 'PayPal IPN has been received with invalid payment status: %s', 'invoicing' ), $payment_status ) );
473
+			wpinv_insert_payment_note($invoice_id, wp_sprintf(__('PayPal IPN has been received with invalid payment status: %s', 'invoicing'), $payment_status));
474 474
 		}
475 475
 	}
476 476
 }
477
-add_action( 'wpinv_paypal_web_accept', 'wpinv_process_paypal_web_accept_and_cart', 10, 2 );
477
+add_action('wpinv_paypal_web_accept', 'wpinv_process_paypal_web_accept_and_cart', 10, 2);
478 478
 
479 479
 // Process PayPal subscription sign ups
480
-add_action( 'wpinv_paypal_subscr_signup', 'wpinv_process_paypal_subscr_signup' );
480
+add_action('wpinv_paypal_subscr_signup', 'wpinv_process_paypal_subscr_signup');
481 481
 
482 482
 // Process PayPal subscription payments
483
-add_action( 'wpinv_paypal_subscr_payment', 'wpinv_process_paypal_subscr_payment' );
483
+add_action('wpinv_paypal_subscr_payment', 'wpinv_process_paypal_subscr_payment');
484 484
 
485 485
 // Process PayPal subscription cancellations
486
-add_action( 'wpinv_paypal_subscr_cancel', 'wpinv_process_paypal_subscr_cancel' );
486
+add_action('wpinv_paypal_subscr_cancel', 'wpinv_process_paypal_subscr_cancel');
487 487
 
488 488
 // Process PayPal subscription end of term notices
489
-add_action( 'wpinv_paypal_subscr_eot', 'wpinv_process_paypal_subscr_eot' );
489
+add_action('wpinv_paypal_subscr_eot', 'wpinv_process_paypal_subscr_eot');
490 490
 
491 491
 // Process PayPal payment failed
492
-add_action( 'wpinv_paypal_subscr_failed', 'wpinv_process_paypal_subscr_failed' );
492
+add_action('wpinv_paypal_subscr_failed', 'wpinv_process_paypal_subscr_failed');
493 493
 
494 494
 
495 495
 /**
496 496
  * Process the subscription started IPN.
497 497
  */
498
-function wpinv_process_paypal_subscr_signup( $ipn_data ) {
499
-    $parent_invoice_id = absint( $ipn_data['custom'] );
500
-    if( empty( $parent_invoice_id ) ) {
498
+function wpinv_process_paypal_subscr_signup($ipn_data) {
499
+    $parent_invoice_id = absint($ipn_data['custom']);
500
+    if (empty($parent_invoice_id)) {
501 501
         return;
502 502
     }
503 503
 
504
-    $invoice = wpinv_get_invoice( $parent_invoice_id );
505
-    if ( empty( $invoice ) ) {
504
+    $invoice = wpinv_get_invoice($parent_invoice_id);
505
+    if (empty($invoice)) {
506 506
         return;
507 507
     }
508 508
 
509
-    if ( $invoice->is_free_trial() && !empty( $ipn_data['invoice'] ) ) {
510
-        wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Invoice ID: %s', 'invoicing' ) , $ipn_data['invoice'] ) );
511
-        wpinv_set_payment_transaction_id( $parent_invoice_id, $ipn_data['invoice'] );
509
+    if ($invoice->is_free_trial() && !empty($ipn_data['invoice'])) {
510
+        wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Invoice ID: %s', 'invoicing'), $ipn_data['invoice']));
511
+        wpinv_set_payment_transaction_id($parent_invoice_id, $ipn_data['invoice']);
512 512
     }
513 513
     
514
-    wpinv_update_payment_status( $parent_invoice_id, 'publish' );
514
+    wpinv_update_payment_status($parent_invoice_id, 'publish');
515 515
     sleep(1);
516
-    wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Subscription ID: %s', 'invoicing' ) , $ipn_data['subscr_id'] ) );
516
+    wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Subscription ID: %s', 'invoicing'), $ipn_data['subscr_id']));
517 517
     
518
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
519
-    if ( false === $subscription ) {
518
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
519
+    if (false === $subscription) {
520 520
         return;
521 521
     }
522 522
 
523
-    $cart_details   = $invoice->cart_details;
523
+    $cart_details = $invoice->cart_details;
524 524
 
525
-    if ( !empty( $cart_details ) ) {
526
-        foreach ( $cart_details as $cart_item ) {
527
-            $item = new WPInv_Item( $cart_item['id'] );
525
+    if (!empty($cart_details)) {
526
+        foreach ($cart_details as $cart_item) {
527
+            $item = new WPInv_Item($cart_item['id']);
528 528
             
529 529
             $status = $invoice->is_free_trial() && $item->has_free_trial() ? 'trialing' : 'active';
530 530
             
@@ -533,15 +533,15 @@  discard block
 block discarded – undo
533 533
                 'status'            => $status,
534 534
                 'period'            => $item->get_recurring_period(),
535 535
                 'initial_amount'    => $invoice->get_total(),
536
-                'recurring_amount'  => $invoice->get_recurring_details( 'total' ),
536
+                'recurring_amount'  => $invoice->get_recurring_details('total'),
537 537
                 'interval'          => $item->get_recurring_interval(),
538 538
                 'bill_times'        => $item->get_recurring_limit(),
539
-                'expiration'        => $invoice->get_new_expiration( $cart_item['id'] ),
539
+                'expiration'        => $invoice->get_new_expiration($cart_item['id']),
540 540
                 'profile_id'        => $ipn_data['subscr_id'],
541
-                'created'           => date_i18n( 'Y-m-d H:i:s', strtotime( $ipn_data['subscr_date'] ) )
541
+                'created'           => date_i18n('Y-m-d H:i:s', strtotime($ipn_data['subscr_date']))
542 542
             );
543 543
             
544
-            if ( $item->has_free_trial() ) {
544
+            if ($item->has_free_trial()) {
545 545
                 $args['trial_period']      = $item->get_trial_period();
546 546
                 $args['trial_interval']    = $item->get_trial_interval();
547 547
             } else {
@@ -550,7 +550,7 @@  discard block
 block discarded – undo
550 550
             }
551 551
             
552 552
 
553
-            $subscription->update_subscription( $args );
553
+            $subscription->update_subscription($args);
554 554
         }
555 555
     }
556 556
 }
@@ -558,45 +558,45 @@  discard block
 block discarded – undo
558 558
 /**
559 559
  * Process the subscription payment received IPN.
560 560
  */
561
-function wpinv_process_paypal_subscr_payment( $ipn_data ) {
562
-    $parent_invoice_id = absint( $ipn_data['custom'] );
561
+function wpinv_process_paypal_subscr_payment($ipn_data) {
562
+    $parent_invoice_id = absint($ipn_data['custom']);
563 563
     
564
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
565
-    if ( false === $subscription ) {
564
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
565
+    if (false === $subscription) {
566 566
         return;
567 567
     }
568 568
 
569
-    $parent_invoice = wpinv_get_invoice( $parent_invoice_id );
570
-    if ( empty( $parent_invoice ) ) {
569
+    $parent_invoice = wpinv_get_invoice($parent_invoice_id);
570
+    if (empty($parent_invoice)) {
571 571
         return;
572 572
     }
573 573
 
574
-    $transaction_id = wpinv_get_payment_transaction_id( $parent_invoice_id );
574
+    $transaction_id = wpinv_get_payment_transaction_id($parent_invoice_id);
575 575
     $signup_date    = $subscription->get_subscription_created();
576 576
     $payment_date   = $ipn_data['payment_date'];
577
-    $times_billed   = $parent_invoice->get_total_payments( false );
577
+    $times_billed   = $parent_invoice->get_total_payments(false);
578 578
 
579 579
     // Look to see if payment is same day as signup and we have set the transaction ID on the parent payment yet.
580
-    if ( empty( $times_billed ) && ( !$transaction_id || $transaction_id == $parent_invoice_id ) ) {
581
-        wpinv_update_payment_status( $parent_invoice_id, 'publish' );
580
+    if (empty($times_billed) && (!$transaction_id || $transaction_id == $parent_invoice_id)) {
581
+        wpinv_update_payment_status($parent_invoice_id, 'publish');
582 582
         sleep(1);
583 583
         
584 584
         // This is the very first payment
585
-        wpinv_set_payment_transaction_id( $parent_invoice_id, $ipn_data['txn_id'] );
586
-        wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $ipn_data['txn_id'] ) );
585
+        wpinv_set_payment_transaction_id($parent_invoice_id, $ipn_data['txn_id']);
586
+        wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $ipn_data['txn_id']));
587 587
         return;
588 588
     }
589 589
     
590
-    if ( wpinv_get_id_by_transaction_id( $ipn_data['txn_id'] ) ) {
590
+    if (wpinv_get_id_by_transaction_id($ipn_data['txn_id'])) {
591 591
         return; // Payment already recorded
592 592
     }
593 593
 
594
-    $currency_code = strtolower( $ipn_data['mc_currency'] );
594
+    $currency_code = strtolower($ipn_data['mc_currency']);
595 595
 
596 596
     // verify details
597
-    if ( $currency_code != strtolower( wpinv_get_currency() ) ) {
597
+    if ($currency_code != strtolower(wpinv_get_currency())) {
598 598
         // the currency code is invalid
599
-        wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid currency in IPN response. IPN data: ', 'invoicing' ), json_encode( $ipn_data ) ) );
599
+        wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid currency in IPN response. IPN data: ', 'invoicing'), json_encode($ipn_data)));
600 600
         return;
601 601
     }
602 602
 
@@ -605,11 +605,11 @@  discard block
 block discarded – undo
605 605
         'transaction_id' => $ipn_data['txn_id']
606 606
     );
607 607
     
608
-    $invoice = wpinv_recurring_add_subscription_payment( $parent_invoice_id, $args );
608
+    $invoice = wpinv_recurring_add_subscription_payment($parent_invoice_id, $args);
609 609
     
610
-    if ( !empty( $invoice ) ) {
610
+    if (!empty($invoice)) {
611 611
         sleep(1);
612
-        wpinv_insert_payment_note( $invoice->ID, sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $ipn_data['txn_id'] ) );
612
+        wpinv_insert_payment_note($invoice->ID, sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $ipn_data['txn_id']));
613 613
 
614 614
         $invoice->renew_subscription();
615 615
     }
@@ -618,10 +618,10 @@  discard block
 block discarded – undo
618 618
 /**
619 619
  * Process the subscription canceled IPN.
620 620
  */
621
-function wpinv_process_paypal_subscr_cancel( $ipn_data ) {
622
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
621
+function wpinv_process_paypal_subscr_cancel($ipn_data) {
622
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
623 623
 
624
-    if( false === $subscription ) {
624
+    if (false === $subscription) {
625 625
         return;
626 626
     }
627 627
 
@@ -631,10 +631,10 @@  discard block
 block discarded – undo
631 631
 /**
632 632
  * Process the subscription expired IPN.
633 633
  */
634
-function wpinv_process_paypal_subscr_eot( $ipn_data ) {
635
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
634
+function wpinv_process_paypal_subscr_eot($ipn_data) {
635
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
636 636
 
637
-    if( false === $subscription ) {
637
+    if (false === $subscription) {
638 638
         return;
639 639
     }
640 640
 
@@ -644,45 +644,45 @@  discard block
 block discarded – undo
644 644
 /**
645 645
  * Process the subscription payment failed IPN.
646 646
  */
647
-function wpinv_process_paypal_subscr_failed( $ipn_data ) {
648
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
647
+function wpinv_process_paypal_subscr_failed($ipn_data) {
648
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
649 649
 
650
-    if( false === $subscription ) {
650
+    if (false === $subscription) {
651 651
         return;
652 652
     }
653 653
 
654 654
     $subscription->failing_subscription();
655 655
 
656
-    do_action( 'wpinv_recurring_payment_failed', $subscription );
656
+    do_action('wpinv_recurring_payment_failed', $subscription);
657 657
 }
658 658
 
659 659
 /**
660 660
  * Retrieve the subscription this IPN notice is for.
661 661
  */
662
-function wpinv_get_paypal_subscription( $ipn_data = array() ) {
663
-    $parent_invoice_id = absint( $ipn_data['custom'] );
662
+function wpinv_get_paypal_subscription($ipn_data = array()) {
663
+    $parent_invoice_id = absint($ipn_data['custom']);
664 664
 
665
-    if( empty( $parent_invoice_id ) ) {
665
+    if (empty($parent_invoice_id)) {
666 666
         return false;
667 667
     }
668 668
 
669
-    $invoice = wpinv_get_invoice( $parent_invoice_id );
670
-    if ( empty( $invoice ) ) {
669
+    $invoice = wpinv_get_invoice($parent_invoice_id);
670
+    if (empty($invoice)) {
671 671
         return false;
672 672
     }
673 673
 
674
-    $subscription = wpinv_get_subscription( $ipn_data['subscr_id'], true );
674
+    $subscription = wpinv_get_subscription($ipn_data['subscr_id'], true);
675 675
 
676
-    if ( empty( $subscription ) ) {
677
-        $subs         = wpinv_get_subscriptions( array( 'parent_invoice_id' => $parent_invoice_id, 'numberposts' => 1 ) );
678
-        $subscription = reset( $subs );
676
+    if (empty($subscription)) {
677
+        $subs         = wpinv_get_subscriptions(array('parent_invoice_id' => $parent_invoice_id, 'numberposts' => 1));
678
+        $subscription = reset($subs);
679 679
 
680
-        if ( $subscription && $subscription->ID > 0 ) {
680
+        if ($subscription && $subscription->ID > 0) {
681 681
             // Update the profile ID so it is set for future renewals
682
-            $subscription->update_subscription( array( 'profile_id' => sanitize_text_field( $ipn_data['subscr_id'] ) ) );
682
+            $subscription->update_subscription(array('profile_id' => sanitize_text_field($ipn_data['subscr_id'])));
683 683
         } else {
684 684
             $subscription = $invoice;
685
-            $subscription->update_subscription( array( 'profile_id' => sanitize_text_field( $ipn_data['subscr_id'] ) ) );
685
+            $subscription->update_subscription(array('profile_id' => sanitize_text_field($ipn_data['subscr_id'])));
686 686
             // No subscription found with a matching payment ID, bail
687 687
             //return false;
688 688
         }
@@ -692,39 +692,39 @@  discard block
 block discarded – undo
692 692
 
693 693
 }
694 694
 
695
-function wpinv_process_paypal_refund( $data, $invoice_id = 0 ) {
695
+function wpinv_process_paypal_refund($data, $invoice_id = 0) {
696 696
 	// Collect payment details
697 697
 
698
-	if( empty( $invoice_id ) ) {
698
+	if (empty($invoice_id)) {
699 699
 		return;
700 700
 	}
701 701
 
702
-	if ( get_post_status( $invoice_id ) == 'wpi-refunded' ) {
702
+	if (get_post_status($invoice_id) == 'wpi-refunded') {
703 703
 		return; // Only refund payments once
704 704
 	}
705 705
 
706
-	$payment_amount = wpinv_payment_total( $invoice_id );
706
+	$payment_amount = wpinv_payment_total($invoice_id);
707 707
 	$refund_amount  = $data['mc_gross'] * -1;
708 708
 
709
-	if ( number_format( (float) $refund_amount, 2 ) < number_format( (float) $payment_amount, 2 ) ) {
710
-		wpinv_insert_payment_note( $invoice_id, sprintf( __( 'Partial PayPal refund processed: %s', 'invoicing' ), $data['parent_txn_id'] ) );
709
+	if (number_format((float)$refund_amount, 2) < number_format((float)$payment_amount, 2)) {
710
+		wpinv_insert_payment_note($invoice_id, sprintf(__('Partial PayPal refund processed: %s', 'invoicing'), $data['parent_txn_id']));
711 711
 		return; // This is a partial refund
712 712
 	}
713 713
 
714
-	wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Payment #%s Refunded for reason: %s', 'invoicing' ), $data['parent_txn_id'], $data['reason_code'] ) );
715
-	wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Refund Transaction ID: %s', 'invoicing' ), $data['txn_id'] ) );
716
-	wpinv_update_payment_status( $invoice_id, 'wpi-refunded' );
714
+	wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Payment #%s Refunded for reason: %s', 'invoicing'), $data['parent_txn_id'], $data['reason_code']));
715
+	wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Refund Transaction ID: %s', 'invoicing'), $data['txn_id']));
716
+	wpinv_update_payment_status($invoice_id, 'wpi-refunded');
717 717
 }
718 718
 
719
-function wpinv_get_paypal_redirect( $ssl_check = false ) {
720
-    if ( is_ssl() || ! $ssl_check ) {
719
+function wpinv_get_paypal_redirect($ssl_check = false) {
720
+    if (is_ssl() || !$ssl_check) {
721 721
         $protocol = 'https://';
722 722
     } else {
723 723
         $protocol = 'http://';
724 724
     }
725 725
 
726 726
     // Check the current payment mode
727
-    if ( wpinv_is_test_mode( 'paypal' ) ) {
727
+    if (wpinv_is_test_mode('paypal')) {
728 728
         // Test mode
729 729
         $paypal_uri = $protocol . 'www.sandbox.paypal.com/cgi-bin/webscr';
730 730
     } else {
@@ -732,67 +732,67 @@  discard block
 block discarded – undo
732 732
         $paypal_uri = $protocol . 'www.paypal.com/cgi-bin/webscr';
733 733
     }
734 734
 
735
-    return apply_filters( 'wpinv_paypal_uri', $paypal_uri );
735
+    return apply_filters('wpinv_paypal_uri', $paypal_uri);
736 736
 }
737 737
 
738
-function wpinv_paypal_success_page_content( $content ) {
738
+function wpinv_paypal_success_page_content($content) {
739 739
     global $wpi_invoice;
740 740
     
741 741
     $session = wpinv_get_checkout_session();
742 742
 
743
-    if ( empty( $_GET['invoice-id'] ) && empty( $session['invoice_key'] )  ) {
743
+    if (empty($_GET['invoice-id']) && empty($session['invoice_key'])) {
744 744
         return $content;
745 745
     }
746 746
 
747
-    $invoice_id = !empty( $_GET['invoice-id'] ) ? absint( $_GET['invoice-id'] ) : wpinv_get_invoice_id_by_key( $session['invoice_key'] );
747
+    $invoice_id = !empty($_GET['invoice-id']) ? absint($_GET['invoice-id']) : wpinv_get_invoice_id_by_key($session['invoice_key']);
748 748
 
749
-    if ( empty(  $invoice_id ) ) {
749
+    if (empty($invoice_id)) {
750 750
         return $content;
751 751
     }
752 752
 
753
-    $wpi_invoice = wpinv_get_invoice( $invoice_id );
753
+    $wpi_invoice = wpinv_get_invoice($invoice_id);
754 754
     
755
-    if ( !empty( $wpi_invoice ) && 'wpi-pending' == $wpi_invoice->status ) {
755
+    if (!empty($wpi_invoice) && 'wpi-pending' == $wpi_invoice->status) {
756 756
         // Payment is still pending so show processing indicator to fix the Race Condition, issue #
757 757
         ob_start();
758
-        wpinv_get_template_part( 'wpinv-payment-processing' );
758
+        wpinv_get_template_part('wpinv-payment-processing');
759 759
         $content = ob_get_clean();
760 760
     }
761 761
 
762 762
     return $content;
763 763
 }
764
-add_filter( 'wpinv_payment_confirm_paypal', 'wpinv_paypal_success_page_content' );
764
+add_filter('wpinv_payment_confirm_paypal', 'wpinv_paypal_success_page_content');
765 765
 
766
-function wpinv_paypal_get_transaction_id( $invoice_id ) {
766
+function wpinv_paypal_get_transaction_id($invoice_id) {
767 767
     $transaction_id = '';
768
-    $notes = wpinv_get_invoice_notes( $invoice_id );
768
+    $notes = wpinv_get_invoice_notes($invoice_id);
769 769
 
770
-    foreach ( $notes as $note ) {
771
-        if ( preg_match( '/^PayPal Transaction ID: ([^\s]+)/', $note->comment_content, $match ) ) {
770
+    foreach ($notes as $note) {
771
+        if (preg_match('/^PayPal Transaction ID: ([^\s]+)/', $note->comment_content, $match)) {
772 772
             $transaction_id = $match[1];
773 773
             continue;
774 774
         }
775 775
     }
776 776
 
777
-    return apply_filters( 'wpinv_paypal_set_transaction_id', $transaction_id, $invoice_id );
777
+    return apply_filters('wpinv_paypal_set_transaction_id', $transaction_id, $invoice_id);
778 778
 }
779
-add_filter( 'wpinv_payment_get_transaction_id-paypal', 'wpinv_paypal_get_transaction_id', 10, 1 );
779
+add_filter('wpinv_payment_get_transaction_id-paypal', 'wpinv_paypal_get_transaction_id', 10, 1);
780 780
 
781
-function wpinv_paypal_link_transaction_id( $transaction_id, $invoice_id, $invoice ) {
782
-    if ( $invoice->is_free_trial() || $transaction_id == $invoice_id ) { // Free trial does not have transaction at PayPal.
781
+function wpinv_paypal_link_transaction_id($transaction_id, $invoice_id, $invoice) {
782
+    if ($invoice->is_free_trial() || $transaction_id == $invoice_id) { // Free trial does not have transaction at PayPal.
783 783
         $transaction_url = $invoice->get_view_url();
784 784
     } else {
785
-        $sandbox = wpinv_is_test_mode( 'paypal' ) ? '.sandbox' : '';
785
+        $sandbox = wpinv_is_test_mode('paypal') ? '.sandbox' : '';
786 786
         $transaction_url = 'https://www' . $sandbox . '.paypal.com/cgi-bin/webscr?cmd=_view-a-trans&id=' . $transaction_id;
787 787
     }
788 788
 
789
-    $transaction_link = '<a href="' . esc_url( $transaction_url ) . '" target="_blank">' . $transaction_id . '</a>';
789
+    $transaction_link = '<a href="' . esc_url($transaction_url) . '" target="_blank">' . $transaction_id . '</a>';
790 790
 
791
-    return apply_filters( 'wpinv_paypal_link_payment_details_transaction_id', $transaction_link, $invoice );
791
+    return apply_filters('wpinv_paypal_link_payment_details_transaction_id', $transaction_link, $invoice);
792 792
 }
793
-add_filter( 'wpinv_payment_details_transaction_id-paypal', 'wpinv_paypal_link_transaction_id', 10, 3 );
793
+add_filter('wpinv_payment_details_transaction_id-paypal', 'wpinv_paypal_link_transaction_id', 10, 3);
794 794
 
795 795
 function wpinv_gateway_paypal_button_label($label) {
796
-    return __( 'Proceed to PayPal', 'invoicing' );
796
+    return __('Proceed to PayPal', 'invoicing');
797 797
 }
798
-add_filter( 'wpinv_gateway_paypal_button_label', 'wpinv_gateway_paypal_button_label', 10, 1 );
799 798
\ No newline at end of file
799
+add_filter('wpinv_gateway_paypal_button_label', 'wpinv_gateway_paypal_button_label', 10, 1);
800 800
\ No newline at end of file
Please login to merge, or discard this patch.
includes/class-wpinv-invoice.php 1 patch
Spacing   +800 added lines, -800 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,20 +1137,20 @@  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 1155
         // Do not update created date on invoice marked as paid.
1156 1156
         /*if ( $meta_key == '_wpinv_completed_date' && !empty( $meta_value ) ) {
@@ -1165,45 +1165,45 @@  discard block
 block discarded – undo
1165 1165
             wp_update_post( $args );
1166 1166
         }*/
1167 1167
         
1168
-        return update_post_meta( $this->ID, $meta_key, $meta_value, $prev_value );
1168
+        return update_post_meta($this->ID, $meta_key, $meta_value, $prev_value);
1169 1169
     }
1170 1170
 
1171 1171
     private function process_refund() {
1172 1172
         $process_refund = true;
1173 1173
 
1174 1174
         // If the payment was not in publish, don't decrement stats as they were never incremented
1175
-        if ( 'publish' != $this->old_status || 'wpi-refunded' != $this->status ) {
1175
+        if ('publish' != $this->old_status || 'wpi-refunded' != $this->status) {
1176 1176
             $process_refund = false;
1177 1177
         }
1178 1178
 
1179 1179
         // Allow extensions to filter for their own payment types, Example: Recurring Payments
1180
-        $process_refund = apply_filters( 'wpinv_should_process_refund', $process_refund, $this );
1180
+        $process_refund = apply_filters('wpinv_should_process_refund', $process_refund, $this);
1181 1181
 
1182
-        if ( false === $process_refund ) {
1182
+        if (false === $process_refund) {
1183 1183
             return;
1184 1184
         }
1185 1185
 
1186
-        do_action( 'wpinv_pre_refund_invoice', $this );
1186
+        do_action('wpinv_pre_refund_invoice', $this);
1187 1187
         
1188
-        $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_refund', true, $this );
1189
-        $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_refund', true, $this );
1190
-        $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_refund', true, $this );
1188
+        $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_refund', true, $this);
1189
+        $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_refund', true, $this);
1190
+        $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_refund', true, $this);
1191 1191
         
1192
-        do_action( 'wpinv_post_refund_invoice', $this );
1192
+        do_action('wpinv_post_refund_invoice', $this);
1193 1193
     }
1194 1194
 
1195 1195
     private function process_failure() {
1196 1196
         $discounts = $this->discounts;
1197
-        if ( empty( $discounts ) ) {
1197
+        if (empty($discounts)) {
1198 1198
             return;
1199 1199
         }
1200 1200
 
1201
-        if ( ! is_array( $discounts ) ) {
1202
-            $discounts = array_map( 'trim', explode( ',', $discounts ) );
1201
+        if (!is_array($discounts)) {
1202
+            $discounts = array_map('trim', explode(',', $discounts));
1203 1203
         }
1204 1204
 
1205
-        foreach ( $discounts as $discount ) {
1206
-            wpinv_decrease_discount_usage( $discount );
1205
+        foreach ($discounts as $discount) {
1206
+            wpinv_decrease_discount_usage($discount);
1207 1207
         }
1208 1208
     }
1209 1209
     
@@ -1211,92 +1211,92 @@  discard block
 block discarded – undo
1211 1211
         $process_pending = true;
1212 1212
 
1213 1213
         // If the payment was not in publish or revoked status, don't decrement stats as they were never incremented
1214
-        if ( ( 'publish' != $this->old_status && 'revoked' != $this->old_status ) || 'wpi-pending' != $this->status ) {
1214
+        if (('publish' != $this->old_status && 'revoked' != $this->old_status) || 'wpi-pending' != $this->status) {
1215 1215
             $process_pending = false;
1216 1216
         }
1217 1217
 
1218 1218
         // Allow extensions to filter for their own payment types, Example: Recurring Payments
1219
-        $process_pending = apply_filters( 'wpinv_should_process_pending', $process_pending, $this );
1219
+        $process_pending = apply_filters('wpinv_should_process_pending', $process_pending, $this);
1220 1220
 
1221
-        if ( false === $process_pending ) {
1221
+        if (false === $process_pending) {
1222 1222
             return;
1223 1223
         }
1224 1224
 
1225
-        $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_pending', true, $this );
1226
-        $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_pending', true, $this );
1227
-        $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_pending', true, $this );
1225
+        $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_pending', true, $this);
1226
+        $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_pending', true, $this);
1227
+        $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_pending', true, $this);
1228 1228
 
1229 1229
         $this->completed_date = '';
1230
-        $this->update_meta( '_wpinv_completed_date', '' );
1230
+        $this->update_meta('_wpinv_completed_date', '');
1231 1231
     }
1232 1232
     
1233 1233
     // get data
1234
-    public function get_meta( $meta_key = '_wpinv_payment_meta', $single = true ) {
1235
-        $meta = get_post_meta( $this->ID, $meta_key, $single );
1234
+    public function get_meta($meta_key = '_wpinv_payment_meta', $single = true) {
1235
+        $meta = get_post_meta($this->ID, $meta_key, $single);
1236 1236
 
1237
-        if ( $meta_key === '_wpinv_payment_meta' ) {
1237
+        if ($meta_key === '_wpinv_payment_meta') {
1238 1238
 
1239
-            if(!is_array($meta)){$meta = array();} // we need this to be an array so make sure it is.
1239
+            if (!is_array($meta)) {$meta = array(); } // we need this to be an array so make sure it is.
1240 1240
 
1241
-            if ( empty( $meta['key'] ) ) {
1241
+            if (empty($meta['key'])) {
1242 1242
                 $meta['key'] = $this->setup_invoice_key();
1243 1243
             }
1244 1244
 
1245
-            if ( empty( $meta['date'] ) ) {
1246
-                $meta['date'] = get_post_field( 'post_date', $this->ID );
1245
+            if (empty($meta['date'])) {
1246
+                $meta['date'] = get_post_field('post_date', $this->ID);
1247 1247
             }
1248 1248
         }
1249 1249
 
1250
-        $meta = apply_filters( 'wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID );
1250
+        $meta = apply_filters('wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID);
1251 1251
 
1252
-        return apply_filters( 'wpinv_get_invoice_meta', $meta, $this->ID, $meta_key );
1252
+        return apply_filters('wpinv_get_invoice_meta', $meta, $this->ID, $meta_key);
1253 1253
     }
1254 1254
     
1255 1255
     public function get_description() {
1256
-        $post = get_post( $this->ID );
1256
+        $post = get_post($this->ID);
1257 1257
         
1258
-        $description = !empty( $post ) ? $post->post_content : '';
1259
-        return apply_filters( 'wpinv_get_description', $description, $this->ID, $this );
1258
+        $description = !empty($post) ? $post->post_content : '';
1259
+        return apply_filters('wpinv_get_description', $description, $this->ID, $this);
1260 1260
     }
1261 1261
     
1262
-    public function get_status( $nicename = false ) {
1263
-        if ( !$nicename ) {
1262
+    public function get_status($nicename = false) {
1263
+        if (!$nicename) {
1264 1264
             $status = $this->status;
1265 1265
         } else {
1266 1266
             $status = $this->status_nicename;
1267 1267
         }
1268 1268
         
1269
-        return apply_filters( 'wpinv_get_status', $status, $nicename, $this->ID, $this );
1269
+        return apply_filters('wpinv_get_status', $status, $nicename, $this->ID, $this);
1270 1270
     }
1271 1271
     
1272 1272
     public function get_cart_details() {
1273
-        return apply_filters( 'wpinv_cart_details', $this->cart_details, $this->ID, $this );
1273
+        return apply_filters('wpinv_cart_details', $this->cart_details, $this->ID, $this);
1274 1274
     }
1275 1275
     
1276
-    public function get_subtotal( $currency = false ) {
1277
-        $subtotal = wpinv_round_amount( $this->subtotal );
1276
+    public function get_subtotal($currency = false) {
1277
+        $subtotal = wpinv_round_amount($this->subtotal);
1278 1278
         
1279
-        if ( $currency ) {
1280
-            $subtotal = wpinv_price( wpinv_format_amount( $subtotal, NULL, !$currency ), $this->get_currency() );
1279
+        if ($currency) {
1280
+            $subtotal = wpinv_price(wpinv_format_amount($subtotal, NULL, !$currency), $this->get_currency());
1281 1281
         }
1282 1282
         
1283
-        return apply_filters( 'wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency );
1283
+        return apply_filters('wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency);
1284 1284
     }
1285 1285
     
1286
-    public function get_total( $currency = false ) {        
1287
-        if ( $this->is_free_trial() ) {
1288
-            $total = wpinv_round_amount( 0 );
1286
+    public function get_total($currency = false) {        
1287
+        if ($this->is_free_trial()) {
1288
+            $total = wpinv_round_amount(0);
1289 1289
         } else {
1290
-            $total = wpinv_round_amount( $this->total );
1290
+            $total = wpinv_round_amount($this->total);
1291 1291
         }
1292
-        if ( $currency ) {
1293
-            $total = wpinv_price( wpinv_format_amount( $total, NULL, !$currency ), $this->get_currency() );
1292
+        if ($currency) {
1293
+            $total = wpinv_price(wpinv_format_amount($total, NULL, !$currency), $this->get_currency());
1294 1294
         }
1295 1295
         
1296
-        return apply_filters( 'wpinv_get_invoice_total', $total, $this->ID, $this, $currency );
1296
+        return apply_filters('wpinv_get_invoice_total', $total, $this->ID, $this, $currency);
1297 1297
     }
1298 1298
     
1299
-    public function get_recurring_details( $field = '', $currency = false ) {        
1299
+    public function get_recurring_details($field = '', $currency = false) {        
1300 1300
         $data                 = array();
1301 1301
         $data['cart_details'] = $this->cart_details;
1302 1302
         $data['subtotal']     = $this->get_subtotal();
@@ -1304,45 +1304,45 @@  discard block
 block discarded – undo
1304 1304
         $data['tax']          = $this->get_tax();
1305 1305
         $data['total']        = $this->get_total();
1306 1306
     
1307
-        if ( !empty( $this->cart_details ) && ( $this->is_parent() || $this->is_renewal() ) ) {
1307
+        if (!empty($this->cart_details) && ($this->is_parent() || $this->is_renewal())) {
1308 1308
             $is_free_trial = $this->is_free_trial();
1309
-            $discounts = $this->get_discounts( true );
1309
+            $discounts = $this->get_discounts(true);
1310 1310
             
1311
-            if ( $is_free_trial || !empty( $discounts ) ) {
1311
+            if ($is_free_trial || !empty($discounts)) {
1312 1312
                 $first_use_only = false;
1313 1313
                 
1314
-                if ( !empty( $discounts ) ) {
1315
-                    foreach ( $discounts as $key => $code ) {
1316
-                        if ( wpinv_discount_is_recurring( $code, true ) ) {
1314
+                if (!empty($discounts)) {
1315
+                    foreach ($discounts as $key => $code) {
1316
+                        if (wpinv_discount_is_recurring($code, true)) {
1317 1317
                             $first_use_only = true;
1318 1318
                             break;
1319 1319
                         }
1320 1320
                     }
1321 1321
                 }
1322 1322
                     
1323
-                if ( !$first_use_only ) {
1324
-                    $data['subtotal'] = wpinv_round_amount( $this->subtotal );
1325
-                    $data['discount'] = wpinv_round_amount( $this->discount );
1326
-                    $data['tax']      = wpinv_round_amount( $this->tax );
1327
-                    $data['total']    = wpinv_round_amount( $this->total );
1323
+                if (!$first_use_only) {
1324
+                    $data['subtotal'] = wpinv_round_amount($this->subtotal);
1325
+                    $data['discount'] = wpinv_round_amount($this->discount);
1326
+                    $data['tax']      = wpinv_round_amount($this->tax);
1327
+                    $data['total']    = wpinv_round_amount($this->total);
1328 1328
                 } else {
1329 1329
                     $cart_subtotal   = 0;
1330 1330
                     $cart_discount   = 0;
1331 1331
                     $cart_tax        = 0;
1332 1332
 
1333
-                    foreach ( $this->cart_details as $key => $item ) {
1334
-                        $item_quantity  = $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1;
1335
-                        $item_subtotal  = !empty( $item['subtotal'] ) ? $item['subtotal'] : $item['item_price'] * $item_quantity;
1333
+                    foreach ($this->cart_details as $key => $item) {
1334
+                        $item_quantity  = $item['quantity'] > 0 ? absint($item['quantity']) : 1;
1335
+                        $item_subtotal  = !empty($item['subtotal']) ? $item['subtotal'] : $item['item_price'] * $item_quantity;
1336 1336
                         $item_discount  = 0;
1337
-                        $item_tax       = $item_subtotal > 0 && !empty( $item['vat_rate'] ) ? ( $item_subtotal * 0.01 * (float)$item['vat_rate'] ) : 0;
1337
+                        $item_tax       = $item_subtotal > 0 && !empty($item['vat_rate']) ? ($item_subtotal * 0.01 * (float)$item['vat_rate']) : 0;
1338 1338
                         
1339
-                        if ( wpinv_prices_include_tax() ) {
1340
-                            $item_subtotal -= wpinv_round_amount( $item_tax );
1339
+                        if (wpinv_prices_include_tax()) {
1340
+                            $item_subtotal -= wpinv_round_amount($item_tax);
1341 1341
                         }
1342 1342
                         
1343 1343
                         $item_total     = $item_subtotal - $item_discount + $item_tax;
1344 1344
                         // Do not allow totals to go negative
1345
-                        if ( $item_total < 0 ) {
1345
+                        if ($item_total < 0) {
1346 1346
                             $item_total = 0;
1347 1347
                         }
1348 1348
                         
@@ -1350,113 +1350,113 @@  discard block
 block discarded – undo
1350 1350
                         $cart_discount  += (float)($item_discount);
1351 1351
                         $cart_tax       += (float)($item_tax);
1352 1352
                         
1353
-                        $data['cart_details'][$key]['discount']   = wpinv_round_amount( $item_discount );
1354
-                        $data['cart_details'][$key]['tax']        = wpinv_round_amount( $item_tax );
1355
-                        $data['cart_details'][$key]['price']      = wpinv_round_amount( $item_total );
1353
+                        $data['cart_details'][$key]['discount']   = wpinv_round_amount($item_discount);
1354
+                        $data['cart_details'][$key]['tax']        = wpinv_round_amount($item_tax);
1355
+                        $data['cart_details'][$key]['price']      = wpinv_round_amount($item_total);
1356 1356
                     }
1357 1357
                     
1358
-                    $data['subtotal'] = wpinv_round_amount( $cart_subtotal );
1359
-                    $data['discount'] = wpinv_round_amount( $cart_discount );
1360
-                    $data['tax']      = wpinv_round_amount( $cart_tax );
1361
-                    $data['total']    = wpinv_round_amount( $data['subtotal'] + $data['tax'] );
1358
+                    $data['subtotal'] = wpinv_round_amount($cart_subtotal);
1359
+                    $data['discount'] = wpinv_round_amount($cart_discount);
1360
+                    $data['tax']      = wpinv_round_amount($cart_tax);
1361
+                    $data['total']    = wpinv_round_amount($data['subtotal'] + $data['tax']);
1362 1362
                 }
1363 1363
             }
1364 1364
         }
1365 1365
         
1366
-        $data = apply_filters( 'wpinv_get_invoice_recurring_details', $data, $this, $field, $currency );
1366
+        $data = apply_filters('wpinv_get_invoice_recurring_details', $data, $this, $field, $currency);
1367 1367
 
1368
-        if ( isset( $data[$field] ) ) {
1369
-            return ( $currency ? wpinv_price( $data[$field], $this->get_currency() ) : $data[$field] );
1368
+        if (isset($data[$field])) {
1369
+            return ($currency ? wpinv_price($data[$field], $this->get_currency()) : $data[$field]);
1370 1370
         }
1371 1371
         
1372 1372
         return $data;
1373 1373
     }
1374 1374
     
1375
-    public function get_final_tax( $currency = false ) {        
1376
-        $final_total = wpinv_round_amount( $this->tax );
1377
-        if ( $currency ) {
1378
-            $final_total = wpinv_price( wpinv_format_amount( $final_total, NULL, !$currency ), $this->get_currency() );
1375
+    public function get_final_tax($currency = false) {        
1376
+        $final_total = wpinv_round_amount($this->tax);
1377
+        if ($currency) {
1378
+            $final_total = wpinv_price(wpinv_format_amount($final_total, NULL, !$currency), $this->get_currency());
1379 1379
         }
1380 1380
         
1381
-        return apply_filters( 'wpinv_get_invoice_final_total', $final_total, $this, $currency );
1381
+        return apply_filters('wpinv_get_invoice_final_total', $final_total, $this, $currency);
1382 1382
     }
1383 1383
     
1384
-    public function get_discounts( $array = false ) {
1384
+    public function get_discounts($array = false) {
1385 1385
         $discounts = $this->discounts;
1386
-        if ( $array && $discounts ) {
1387
-            $discounts = explode( ',', $discounts );
1386
+        if ($array && $discounts) {
1387
+            $discounts = explode(',', $discounts);
1388 1388
         }
1389
-        return apply_filters( 'wpinv_payment_discounts', $discounts, $this->ID, $this, $array );
1389
+        return apply_filters('wpinv_payment_discounts', $discounts, $this->ID, $this, $array);
1390 1390
     }
1391 1391
     
1392
-    public function get_discount( $currency = false, $dash = false ) {
1393
-        if ( !empty( $this->discounts ) ) {
1392
+    public function get_discount($currency = false, $dash = false) {
1393
+        if (!empty($this->discounts)) {
1394 1394
             global $ajax_cart_details;
1395 1395
             $ajax_cart_details = $this->get_cart_details();
1396 1396
             
1397
-            if ( !empty( $ajax_cart_details ) && count( $ajax_cart_details ) == count( $this->items ) ) {
1397
+            if (!empty($ajax_cart_details) && count($ajax_cart_details) == count($this->items)) {
1398 1398
                 $cart_items = $ajax_cart_details;
1399 1399
             } else {
1400 1400
                 $cart_items = $this->items;
1401 1401
             }
1402 1402
 
1403
-            $this->discount = wpinv_get_cart_items_discount_amount( $cart_items , $this->discounts );
1403
+            $this->discount = wpinv_get_cart_items_discount_amount($cart_items, $this->discounts);
1404 1404
         }
1405
-        $discount   = wpinv_round_amount( $this->discount );
1405
+        $discount   = wpinv_round_amount($this->discount);
1406 1406
         $dash       = $dash && $discount > 0 ? '&ndash;' : '';
1407 1407
         
1408
-        if ( $currency ) {
1409
-            $discount = wpinv_price( wpinv_format_amount( $discount, NULL, !$currency ), $this->get_currency() );
1408
+        if ($currency) {
1409
+            $discount = wpinv_price(wpinv_format_amount($discount, NULL, !$currency), $this->get_currency());
1410 1410
         }
1411 1411
         
1412
-        $discount   = $dash . $discount;
1412
+        $discount = $dash . $discount;
1413 1413
         
1414
-        return apply_filters( 'wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash );
1414
+        return apply_filters('wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash);
1415 1415
     }
1416 1416
     
1417 1417
     public function get_discount_code() {
1418 1418
         return $this->discount_code;
1419 1419
     }
1420 1420
     
1421
-    public function get_tax( $currency = false ) {
1422
-        $tax = wpinv_round_amount( $this->tax );
1421
+    public function get_tax($currency = false) {
1422
+        $tax = wpinv_round_amount($this->tax);
1423 1423
         
1424
-        if ( $currency ) {
1425
-            $tax = wpinv_price( wpinv_format_amount( $tax, NULL, !$currency ), $this->get_currency() );
1424
+        if ($currency) {
1425
+            $tax = wpinv_price(wpinv_format_amount($tax, NULL, !$currency), $this->get_currency());
1426 1426
         }
1427 1427
         
1428
-        return apply_filters( 'wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency );
1428
+        return apply_filters('wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency);
1429 1429
     }
1430 1430
     
1431
-    public function get_fees( $type = 'all' ) {
1432
-        $fees    = array();
1431
+    public function get_fees($type = 'all') {
1432
+        $fees = array();
1433 1433
 
1434
-        if ( ! empty( $this->fees ) && is_array( $this->fees ) ) {
1435
-            foreach ( $this->fees as $fee ) {
1436
-                if( 'all' != $type && ! empty( $fee['type'] ) && $type != $fee['type'] ) {
1434
+        if (!empty($this->fees) && is_array($this->fees)) {
1435
+            foreach ($this->fees as $fee) {
1436
+                if ('all' != $type && !empty($fee['type']) && $type != $fee['type']) {
1437 1437
                     continue;
1438 1438
                 }
1439 1439
 
1440
-                $fee['label'] = stripslashes( $fee['label'] );
1441
-                $fee['amount_display'] = wpinv_price( $fee['amount'], $this->get_currency() );
1442
-                $fees[]    = $fee;
1440
+                $fee['label'] = stripslashes($fee['label']);
1441
+                $fee['amount_display'] = wpinv_price($fee['amount'], $this->get_currency());
1442
+                $fees[] = $fee;
1443 1443
             }
1444 1444
         }
1445 1445
 
1446
-        return apply_filters( 'wpinv_get_invoice_fees', $fees, $this->ID, $this );
1446
+        return apply_filters('wpinv_get_invoice_fees', $fees, $this->ID, $this);
1447 1447
     }
1448 1448
     
1449
-    public function get_fees_total( $type = 'all' ) {
1450
-        $fees_total = (float) 0.00;
1449
+    public function get_fees_total($type = 'all') {
1450
+        $fees_total = (float)0.00;
1451 1451
 
1452
-        $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array();
1453
-        if ( ! empty( $payment_fees ) ) {
1454
-            foreach ( $payment_fees as $fee ) {
1455
-                $fees_total += (float) $fee['amount'];
1452
+        $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array();
1453
+        if (!empty($payment_fees)) {
1454
+            foreach ($payment_fees as $fee) {
1455
+                $fees_total += (float)$fee['amount'];
1456 1456
             }
1457 1457
         }
1458 1458
 
1459
-        return apply_filters( 'wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this );
1459
+        return apply_filters('wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this);
1460 1460
         /*
1461 1461
         $fees = $this->get_fees( $type );
1462 1462
 
@@ -1476,116 +1476,116 @@  discard block
 block discarded – undo
1476 1476
     }
1477 1477
 
1478 1478
     public function get_user_id() {
1479
-        return apply_filters( 'wpinv_user_id', $this->user_id, $this->ID, $this );
1479
+        return apply_filters('wpinv_user_id', $this->user_id, $this->ID, $this);
1480 1480
     }
1481 1481
     
1482 1482
     public function get_first_name() {
1483
-        return apply_filters( 'wpinv_first_name', $this->first_name, $this->ID, $this );
1483
+        return apply_filters('wpinv_first_name', $this->first_name, $this->ID, $this);
1484 1484
     }
1485 1485
     
1486 1486
     public function get_last_name() {
1487
-        return apply_filters( 'wpinv_last_name', $this->last_name, $this->ID, $this );
1487
+        return apply_filters('wpinv_last_name', $this->last_name, $this->ID, $this);
1488 1488
     }
1489 1489
     
1490 1490
     public function get_user_full_name() {
1491
-        return apply_filters( 'wpinv_user_full_name', $this->full_name, $this->ID, $this );
1491
+        return apply_filters('wpinv_user_full_name', $this->full_name, $this->ID, $this);
1492 1492
     }
1493 1493
     
1494 1494
     public function get_user_info() {
1495
-        return apply_filters( 'wpinv_user_info', $this->user_info, $this->ID, $this );
1495
+        return apply_filters('wpinv_user_info', $this->user_info, $this->ID, $this);
1496 1496
     }
1497 1497
     
1498 1498
     public function get_email() {
1499
-        return apply_filters( 'wpinv_user_email', $this->email, $this->ID, $this );
1499
+        return apply_filters('wpinv_user_email', $this->email, $this->ID, $this);
1500 1500
     }
1501 1501
     
1502 1502
     public function get_address() {
1503
-        return apply_filters( 'wpinv_address', $this->address, $this->ID, $this );
1503
+        return apply_filters('wpinv_address', $this->address, $this->ID, $this);
1504 1504
     }
1505 1505
     
1506 1506
     public function get_phone() {
1507
-        return apply_filters( 'wpinv_phone', $this->phone, $this->ID, $this );
1507
+        return apply_filters('wpinv_phone', $this->phone, $this->ID, $this);
1508 1508
     }
1509 1509
     
1510 1510
     public function get_number() {
1511
-        return apply_filters( 'wpinv_number', $this->number, $this->ID, $this );
1511
+        return apply_filters('wpinv_number', $this->number, $this->ID, $this);
1512 1512
     }
1513 1513
     
1514 1514
     public function get_items() {
1515
-        return apply_filters( 'wpinv_payment_meta_items', $this->items, $this->ID, $this );
1515
+        return apply_filters('wpinv_payment_meta_items', $this->items, $this->ID, $this);
1516 1516
     }
1517 1517
     
1518 1518
     public function get_key() {
1519
-        return apply_filters( 'wpinv_key', $this->key, $this->ID, $this );
1519
+        return apply_filters('wpinv_key', $this->key, $this->ID, $this);
1520 1520
     }
1521 1521
     
1522 1522
     public function get_transaction_id() {
1523
-        return apply_filters( 'wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this );
1523
+        return apply_filters('wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this);
1524 1524
     }
1525 1525
     
1526 1526
     public function get_gateway() {
1527
-        return apply_filters( 'wpinv_gateway', $this->gateway, $this->ID, $this );
1527
+        return apply_filters('wpinv_gateway', $this->gateway, $this->ID, $this);
1528 1528
     }
1529 1529
     
1530 1530
     public function get_gateway_title() {
1531
-        $this->gateway_title = !empty( $this->gateway_title ) ? $this->gateway_title : wpinv_get_gateway_checkout_label( $this->gateway );
1531
+        $this->gateway_title = !empty($this->gateway_title) ? $this->gateway_title : wpinv_get_gateway_checkout_label($this->gateway);
1532 1532
         
1533
-        return apply_filters( 'wpinv_gateway_title', $this->gateway_title, $this->ID, $this );
1533
+        return apply_filters('wpinv_gateway_title', $this->gateway_title, $this->ID, $this);
1534 1534
     }
1535 1535
     
1536 1536
     public function get_currency() {
1537
-        return apply_filters( 'wpinv_currency_code', $this->currency, $this->ID, $this );
1537
+        return apply_filters('wpinv_currency_code', $this->currency, $this->ID, $this);
1538 1538
     }
1539 1539
     
1540 1540
     public function get_created_date() {
1541
-        return apply_filters( 'wpinv_created_date', $this->date, $this->ID, $this );
1541
+        return apply_filters('wpinv_created_date', $this->date, $this->ID, $this);
1542 1542
     }
1543 1543
     
1544
-    public function get_due_date( $display = false ) {
1545
-        $due_date = apply_filters( 'wpinv_due_date', $this->due_date, $this->ID, $this );
1544
+    public function get_due_date($display = false) {
1545
+        $due_date = apply_filters('wpinv_due_date', $this->due_date, $this->ID, $this);
1546 1546
         
1547
-        if ( !$display || empty( $due_date ) ) {
1547
+        if (!$display || empty($due_date)) {
1548 1548
             return $due_date;
1549 1549
         }
1550 1550
         
1551
-        return date_i18n( get_option( 'date_format' ), strtotime( $due_date ) );
1551
+        return date_i18n(get_option('date_format'), strtotime($due_date));
1552 1552
     }
1553 1553
     
1554 1554
     public function get_completed_date() {
1555
-        return apply_filters( 'wpinv_completed_date', $this->completed_date, $this->ID, $this );
1555
+        return apply_filters('wpinv_completed_date', $this->completed_date, $this->ID, $this);
1556 1556
     }
1557 1557
     
1558
-    public function get_invoice_date( $formatted = true ) {
1558
+    public function get_invoice_date($formatted = true) {
1559 1559
         $date_completed = $this->completed_date;
1560 1560
         $invoice_date   = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? $date_completed : '';
1561 1561
         
1562
-        if ( $invoice_date == '' ) {
1562
+        if ($invoice_date == '') {
1563 1563
             $date_created   = $this->date;
1564 1564
             $invoice_date   = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? $date_created : '';
1565 1565
         }
1566 1566
         
1567
-        if ( $formatted && $invoice_date ) {
1568
-            $invoice_date   = date_i18n( get_option( 'date_format' ), strtotime( $invoice_date ) );
1567
+        if ($formatted && $invoice_date) {
1568
+            $invoice_date = date_i18n(get_option('date_format'), strtotime($invoice_date));
1569 1569
         }
1570 1570
 
1571
-        return apply_filters( 'wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this );
1571
+        return apply_filters('wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this);
1572 1572
     }
1573 1573
     
1574 1574
     public function get_ip() {
1575
-        return apply_filters( 'wpinv_user_ip', $this->ip, $this->ID, $this );
1575
+        return apply_filters('wpinv_user_ip', $this->ip, $this->ID, $this);
1576 1576
     }
1577 1577
         
1578
-    public function has_status( $status ) {
1579
-        return apply_filters( 'wpinv_has_status', ( is_array( $status ) && in_array( $this->get_status(), $status ) ) || $this->get_status() === $status ? true : false, $this, $status );
1578
+    public function has_status($status) {
1579
+        return apply_filters('wpinv_has_status', (is_array($status) && in_array($this->get_status(), $status)) || $this->get_status() === $status ? true : false, $this, $status);
1580 1580
     }
1581 1581
     
1582
-    public function add_item( $item_id = 0, $args = array() ) {
1582
+    public function add_item($item_id = 0, $args = array()) {
1583 1583
         global $wpi_current_id, $wpi_item_id;
1584 1584
         
1585
-        $item = new WPInv_Item( $item_id );
1585
+        $item = new WPInv_Item($item_id);
1586 1586
 
1587 1587
         // Bail if this post isn't a item
1588
-        if( !$item || $item->post_type !== 'wpi_item' ) {
1588
+        if (!$item || $item->post_type !== 'wpi_item') {
1589 1589
             return false;
1590 1590
         }
1591 1591
         
@@ -1604,8 +1604,8 @@  discard block
 block discarded – undo
1604 1604
             'fees'          => array()
1605 1605
         );
1606 1606
 
1607
-        $args = wp_parse_args( apply_filters( 'wpinv_add_item_args', $args, $item->ID ), $defaults );
1608
-        $args['quantity']   = $has_quantities && $args['quantity'] > 0 ? absint( $args['quantity'] ) : 1;
1607
+        $args = wp_parse_args(apply_filters('wpinv_add_item_args', $args, $item->ID), $defaults);
1608
+        $args['quantity'] = $has_quantities && $args['quantity'] > 0 ? absint($args['quantity']) : 1;
1609 1609
 
1610 1610
         $wpi_current_id         = $this->ID;
1611 1611
         $wpi_item_id            = $item->ID;
@@ -1617,19 +1617,19 @@  discard block
 block discarded – undo
1617 1617
         $found_cart_key         = false;
1618 1618
         
1619 1619
         if ($has_quantities) {
1620
-            $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details;
1620
+            $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details;
1621 1621
             
1622
-            foreach ( $this->items as $key => $cart_item ) {
1623
-                if ( (int)$item_id !== (int)$cart_item['id'] ) {
1622
+            foreach ($this->items as $key => $cart_item) {
1623
+                if ((int)$item_id !== (int)$cart_item['id']) {
1624 1624
                     continue;
1625 1625
                 }
1626 1626
 
1627
-                $this->items[ $key ]['quantity'] += $args['quantity'];
1627
+                $this->items[$key]['quantity'] += $args['quantity'];
1628 1628
                 break;
1629 1629
             }
1630 1630
             
1631
-            foreach ( $this->cart_details as $cart_key => $cart_item ) {
1632
-                if ( $item_id != $cart_item['id'] ) {
1631
+            foreach ($this->cart_details as $cart_key => $cart_item) {
1632
+                if ($item_id != $cart_item['id']) {
1633 1633
                     continue;
1634 1634
                 }
1635 1635
 
@@ -1641,29 +1641,29 @@  discard block
 block discarded – undo
1641 1641
         if ($has_quantities && $found_cart_key !== false) {
1642 1642
             $cart_item          = $this->cart_details[$found_cart_key];
1643 1643
             $item_price         = $cart_item['item_price'];
1644
-            $quantity           = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1;
1645
-            $tax_rate           = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0;
1644
+            $quantity           = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1;
1645
+            $tax_rate           = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0;
1646 1646
             
1647 1647
             $new_quantity       = $quantity + $args['quantity'];
1648 1648
             $subtotal           = $item_price * $new_quantity;
1649 1649
             
1650 1650
             $args['quantity']   = $new_quantity;
1651
-            $discount           = !empty( $args['discount'] ) ? $args['discount'] : 0;
1652
-            $tax                = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1651
+            $discount           = !empty($args['discount']) ? $args['discount'] : 0;
1652
+            $tax                = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0;
1653 1653
             
1654 1654
             $discount_increased = $discount > 0 && $subtotal > 0 && $discount > (float)$cart_item['discount'] ? $discount - (float)$cart_item['discount'] : 0;
1655 1655
             $tax_increased      = $tax > 0 && $subtotal > 0 && $tax > (float)$cart_item['tax'] ? $tax - (float)$cart_item['tax'] : 0;
1656 1656
             // The total increase equals the number removed * the item_price
1657
-            $total_increased    = wpinv_round_amount( $item_price );
1657
+            $total_increased    = wpinv_round_amount($item_price);
1658 1658
             
1659
-            if ( wpinv_prices_include_tax() ) {
1660
-                $subtotal -= wpinv_round_amount( $tax );
1659
+            if (wpinv_prices_include_tax()) {
1660
+                $subtotal -= wpinv_round_amount($tax);
1661 1661
             }
1662 1662
 
1663
-            $total              = $subtotal - $discount + $tax;
1663
+            $total = $subtotal - $discount + $tax;
1664 1664
 
1665 1665
             // Do not allow totals to go negative
1666
-            if( $total < 0 ) {
1666
+            if ($total < 0) {
1667 1667
                 $total = 0;
1668 1668
             }
1669 1669
             
@@ -1679,25 +1679,25 @@  discard block
 block discarded – undo
1679 1679
             $this->cart_details[$found_cart_key] = $cart_item;
1680 1680
         } else {
1681 1681
             // Set custom price.
1682
-            if ( $args['custom_price'] !== '' ) {
1682
+            if ($args['custom_price'] !== '') {
1683 1683
                 $item_price = $args['custom_price'];
1684 1684
             } else {
1685 1685
                 // Allow overriding the price
1686
-                if ( false !== $args['item_price'] ) {
1686
+                if (false !== $args['item_price']) {
1687 1687
                     $item_price = $args['item_price'];
1688 1688
                 } else {
1689
-                    $item_price = wpinv_get_item_price( $item->ID );
1689
+                    $item_price = wpinv_get_item_price($item->ID);
1690 1690
                 }
1691 1691
             }
1692 1692
 
1693 1693
             // Sanitizing the price here so we don't have a dozen calls later
1694
-            $item_price = wpinv_sanitize_amount( $item_price );
1695
-            $subtotal   = wpinv_round_amount( $item_price * $args['quantity'] );
1694
+            $item_price = wpinv_sanitize_amount($item_price);
1695
+            $subtotal   = wpinv_round_amount($item_price * $args['quantity']);
1696 1696
         
1697
-            $discount   = !empty( $args['discount'] ) ? $args['discount'] : 0;
1698
-            $tax_class  = !empty( $args['vat_class'] ) ? $args['vat_class'] : '';
1699
-            $tax_rate   = !empty( $args['vat_rate'] ) ? $args['vat_rate'] : 0;
1700
-            $tax        = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1697
+            $discount   = !empty($args['discount']) ? $args['discount'] : 0;
1698
+            $tax_class  = !empty($args['vat_class']) ? $args['vat_class'] : '';
1699
+            $tax_rate   = !empty($args['vat_rate']) ? $args['vat_rate'] : 0;
1700
+            $tax        = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0;
1701 1701
 
1702 1702
             // Setup the items meta item
1703 1703
             $new_item = array(
@@ -1705,29 +1705,29 @@  discard block
 block discarded – undo
1705 1705
                 'quantity' => $args['quantity'],
1706 1706
             );
1707 1707
 
1708
-            $this->items[]  = $new_item;
1708
+            $this->items[] = $new_item;
1709 1709
 
1710
-            if ( wpinv_prices_include_tax() ) {
1711
-                $subtotal -= wpinv_round_amount( $tax );
1710
+            if (wpinv_prices_include_tax()) {
1711
+                $subtotal -= wpinv_round_amount($tax);
1712 1712
             }
1713 1713
 
1714
-            $total      = $subtotal - $discount + $tax;
1714
+            $total = $subtotal - $discount + $tax;
1715 1715
 
1716 1716
             // Do not allow totals to go negative
1717
-            if( $total < 0 ) {
1717
+            if ($total < 0) {
1718 1718
                 $total = 0;
1719 1719
             }
1720 1720
         
1721 1721
             $this->cart_details[] = array(
1722 1722
                 'name'          => !empty($args['name']) ? $args['name'] : $item->get_name(),
1723 1723
                 'id'            => $item->ID,
1724
-                'item_price'    => wpinv_round_amount( $item_price ),
1725
-                'custom_price'  => ( $args['custom_price'] !== '' ? wpinv_round_amount( $args['custom_price'] ) : '' ),
1724
+                'item_price'    => wpinv_round_amount($item_price),
1725
+                'custom_price'  => ($args['custom_price'] !== '' ? wpinv_round_amount($args['custom_price']) : ''),
1726 1726
                 'quantity'      => $args['quantity'],
1727 1727
                 'discount'      => $discount,
1728
-                'subtotal'      => wpinv_round_amount( $subtotal ),
1729
-                'tax'           => wpinv_round_amount( $tax ),
1730
-                'price'         => wpinv_round_amount( $total ),
1728
+                'subtotal'      => wpinv_round_amount($subtotal),
1729
+                'tax'           => wpinv_round_amount($tax),
1730
+                'price'         => wpinv_round_amount($total),
1731 1731
                 'vat_rate'      => $tax_rate,
1732 1732
                 'vat_class'     => $tax_class,
1733 1733
                 'meta'          => $args['meta'],
@@ -1737,18 +1737,18 @@  discard block
 block discarded – undo
1737 1737
             $subtotal = $subtotal - $discount;
1738 1738
         }
1739 1739
         
1740
-        $added_item = end( $this->cart_details );
1741
-        $added_item['action']  = 'add';
1740
+        $added_item = end($this->cart_details);
1741
+        $added_item['action'] = 'add';
1742 1742
         
1743 1743
         $this->pending['items'][] = $added_item;
1744 1744
         
1745
-        $this->increase_subtotal( $subtotal );
1746
-        $this->increase_tax( $tax );
1745
+        $this->increase_subtotal($subtotal);
1746
+        $this->increase_tax($tax);
1747 1747
 
1748 1748
         return true;
1749 1749
     }
1750 1750
     
1751
-    public function remove_item( $item_id, $args = array() ) {
1751
+    public function remove_item($item_id, $args = array()) {
1752 1752
         // Set some defaults
1753 1753
         $defaults = array(
1754 1754
             'quantity'      => 1,
@@ -1756,51 +1756,51 @@  discard block
 block discarded – undo
1756 1756
             'custom_price'  => '',
1757 1757
             'cart_index'    => false,
1758 1758
         );
1759
-        $args = wp_parse_args( $args, $defaults );
1759
+        $args = wp_parse_args($args, $defaults);
1760 1760
 
1761 1761
         // Bail if this post isn't a item
1762
-        if ( get_post_type( $item_id ) !== 'wpi_item' ) {
1762
+        if (get_post_type($item_id) !== 'wpi_item') {
1763 1763
             return false;
1764 1764
         }
1765 1765
         
1766
-        $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details;
1766
+        $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details;
1767 1767
 
1768
-        foreach ( $this->items as $key => $item ) {
1769
-            if ( !empty($item['id']) && (int)$item_id !== (int)$item['id'] ) {
1768
+        foreach ($this->items as $key => $item) {
1769
+            if (!empty($item['id']) && (int)$item_id !== (int)$item['id']) {
1770 1770
                 continue;
1771 1771
             }
1772 1772
 
1773
-            if ( false !== $args['cart_index'] ) {
1774
-                $cart_index = absint( $args['cart_index'] );
1775
-                $cart_item  = ! empty( $this->cart_details[ $cart_index ] ) ? $this->cart_details[ $cart_index ] : false;
1773
+            if (false !== $args['cart_index']) {
1774
+                $cart_index = absint($args['cart_index']);
1775
+                $cart_item  = !empty($this->cart_details[$cart_index]) ? $this->cart_details[$cart_index] : false;
1776 1776
 
1777
-                if ( ! empty( $cart_item ) ) {
1777
+                if (!empty($cart_item)) {
1778 1778
                     // If the cart index item isn't the same item ID, don't remove it
1779
-                    if ( !empty($cart_item['id']) && $cart_item['id'] != $item['id'] ) {
1779
+                    if (!empty($cart_item['id']) && $cart_item['id'] != $item['id']) {
1780 1780
                         continue;
1781 1781
                     }
1782 1782
                 }
1783 1783
             }
1784 1784
 
1785
-            $item_quantity = $this->items[ $key ]['quantity'];
1786
-            if ( $item_quantity > $args['quantity'] ) {
1787
-                $this->items[ $key ]['quantity'] -= $args['quantity'];
1785
+            $item_quantity = $this->items[$key]['quantity'];
1786
+            if ($item_quantity > $args['quantity']) {
1787
+                $this->items[$key]['quantity'] -= $args['quantity'];
1788 1788
                 break;
1789 1789
             } else {
1790
-                unset( $this->items[ $key ] );
1790
+                unset($this->items[$key]);
1791 1791
                 break;
1792 1792
             }
1793 1793
         }
1794 1794
 
1795 1795
         $found_cart_key = false;
1796
-        if ( false === $args['cart_index'] ) {
1797
-            foreach ( $this->cart_details as $cart_key => $item ) {
1798
-                if ( $item_id != $item['id'] ) {
1796
+        if (false === $args['cart_index']) {
1797
+            foreach ($this->cart_details as $cart_key => $item) {
1798
+                if ($item_id != $item['id']) {
1799 1799
                     continue;
1800 1800
                 }
1801 1801
 
1802
-                if ( false !== $args['item_price'] ) {
1803
-                    if ( isset( $item['item_price'] ) && (float) $args['item_price'] != (float) $item['item_price'] ) {
1802
+                if (false !== $args['item_price']) {
1803
+                    if (isset($item['item_price']) && (float)$args['item_price'] != (float)$item['item_price']) {
1804 1804
                         continue;
1805 1805
                     }
1806 1806
                 }
@@ -1809,13 +1809,13 @@  discard block
 block discarded – undo
1809 1809
                 break;
1810 1810
             }
1811 1811
         } else {
1812
-            $cart_index = absint( $args['cart_index'] );
1812
+            $cart_index = absint($args['cart_index']);
1813 1813
 
1814
-            if ( ! array_key_exists( $cart_index, $this->cart_details ) ) {
1814
+            if (!array_key_exists($cart_index, $this->cart_details)) {
1815 1815
                 return false; // Invalid cart index passed.
1816 1816
             }
1817 1817
 
1818
-            if ( (int) $this->cart_details[ $cart_index ]['id'] > 0 && (int) $this->cart_details[ $cart_index ]['id'] !== (int) $item_id ) {
1818
+            if ((int)$this->cart_details[$cart_index]['id'] > 0 && (int)$this->cart_details[$cart_index]['id'] !== (int)$item_id) {
1819 1819
                 return false; // We still need the proper Item ID to be sure.
1820 1820
             }
1821 1821
 
@@ -1823,41 +1823,41 @@  discard block
 block discarded – undo
1823 1823
         }
1824 1824
         
1825 1825
         $cart_item  = $this->cart_details[$found_cart_key];
1826
-        $quantity   = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1;
1826
+        $quantity   = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1;
1827 1827
         
1828
-        if ( count( $this->cart_details ) == 1 && ( $quantity - $args['quantity'] ) < 1 ) {
1828
+        if (count($this->cart_details) == 1 && ($quantity - $args['quantity']) < 1) {
1829 1829
             return false; // Invoice must contain at least one item.
1830 1830
         }
1831 1831
         
1832
-        $discounts  = $this->get_discounts();
1832
+        $discounts = $this->get_discounts();
1833 1833
         
1834
-        if ( $quantity > $args['quantity'] ) {
1834
+        if ($quantity > $args['quantity']) {
1835 1835
             $item_price         = $cart_item['item_price'];
1836
-            $tax_rate           = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0;
1836
+            $tax_rate           = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0;
1837 1837
             
1838
-            $new_quantity       = max( $quantity - $args['quantity'], 1);
1838
+            $new_quantity       = max($quantity - $args['quantity'], 1);
1839 1839
             $subtotal           = $item_price * $new_quantity;
1840 1840
             
1841 1841
             $args['quantity']   = $new_quantity;
1842
-            $discount           = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0;
1843
-            $tax                = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1842
+            $discount           = !empty($cart_item['discount']) ? $cart_item['discount'] : 0;
1843
+            $tax                = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0;
1844 1844
             
1845
-            $discount_decrease  = (float)$cart_item['discount'] > 0 && $quantity > 0 ? wpinv_round_amount( ( (float)$cart_item['discount'] / $quantity ) ) : 0;
1845
+            $discount_decrease  = (float)$cart_item['discount'] > 0 && $quantity > 0 ? wpinv_round_amount(((float)$cart_item['discount'] / $quantity)) : 0;
1846 1846
             $discount_decrease  = $discount > 0 && $subtotal > 0 && (float)$cart_item['discount'] > $discount ? (float)$cart_item['discount'] - $discount : $discount_decrease; 
1847
-            $tax_decrease       = (float)$cart_item['tax'] > 0 && $quantity > 0 ? wpinv_round_amount( ( (float)$cart_item['tax'] / $quantity ) ) : 0;
1847
+            $tax_decrease       = (float)$cart_item['tax'] > 0 && $quantity > 0 ? wpinv_round_amount(((float)$cart_item['tax'] / $quantity)) : 0;
1848 1848
             $tax_decrease       = $tax > 0 && $subtotal > 0 && (float)$cart_item['tax'] > $tax ? (float)$cart_item['tax'] - $tax : $tax_decrease;
1849 1849
             
1850 1850
             // The total increase equals the number removed * the item_price
1851
-            $total_decrease     = wpinv_round_amount( $item_price );
1851
+            $total_decrease     = wpinv_round_amount($item_price);
1852 1852
             
1853
-            if ( wpinv_prices_include_tax() ) {
1854
-                $subtotal -= wpinv_round_amount( $tax );
1853
+            if (wpinv_prices_include_tax()) {
1854
+                $subtotal -= wpinv_round_amount($tax);
1855 1855
             }
1856 1856
 
1857
-            $total              = $subtotal - $discount + $tax;
1857
+            $total = $subtotal - $discount + $tax;
1858 1858
 
1859 1859
             // Do not allow totals to go negative
1860
-            if( $total < 0 ) {
1860
+            if ($total < 0) {
1861 1861
                 $total = 0;
1862 1862
             }
1863 1863
             
@@ -1876,16 +1876,16 @@  discard block
 block discarded – undo
1876 1876
             
1877 1877
             $this->cart_details[$found_cart_key] = $cart_item;
1878 1878
             
1879
-            $remove_item = end( $this->cart_details );
1879
+            $remove_item = end($this->cart_details);
1880 1880
         } else {
1881 1881
             $item_price     = $cart_item['item_price'];
1882
-            $discount       = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0;
1883
-            $tax            = !empty( $cart_item['tax'] ) ? $cart_item['tax'] : 0;
1882
+            $discount       = !empty($cart_item['discount']) ? $cart_item['discount'] : 0;
1883
+            $tax            = !empty($cart_item['tax']) ? $cart_item['tax'] : 0;
1884 1884
         
1885
-            $subtotal_decrease  = ( $item_price * $quantity ) - $discount;
1885
+            $subtotal_decrease  = ($item_price * $quantity) - $discount;
1886 1886
             $tax_decrease       = $tax;
1887 1887
 
1888
-            unset( $this->cart_details[$found_cart_key] );
1888
+            unset($this->cart_details[$found_cart_key]);
1889 1889
             
1890 1890
             $remove_item             = $args;
1891 1891
             $remove_item['id']       = $item_id;
@@ -1896,8 +1896,8 @@  discard block
 block discarded – undo
1896 1896
         $remove_item['action']      = 'remove';
1897 1897
         $this->pending['items'][]   = $remove_item;
1898 1898
                
1899
-        $this->decrease_subtotal( $subtotal_decrease );
1900
-        $this->decrease_tax( $tax_decrease );
1899
+        $this->decrease_subtotal($subtotal_decrease);
1900
+        $this->decrease_tax($tax_decrease);
1901 1901
         
1902 1902
         return true;
1903 1903
     }
@@ -1905,7 +1905,7 @@  discard block
 block discarded – undo
1905 1905
     public function update_items($temp = false) {
1906 1906
         global $wpinv_euvat, $wpi_current_id, $wpi_item_id, $wpi_nosave;
1907 1907
         
1908
-        if ( !empty( $this->cart_details ) ) {
1908
+        if (!empty($this->cart_details)) {
1909 1909
             $wpi_nosave             = $temp;
1910 1910
             $cart_subtotal          = 0;
1911 1911
             $cart_discount          = 0;
@@ -1915,42 +1915,42 @@  discard block
 block discarded – undo
1915 1915
             $_POST['wpinv_country'] = $this->country;
1916 1916
             $_POST['wpinv_state']   = $this->state;
1917 1917
             
1918
-            foreach ( $this->cart_details as $key => $item ) {
1918
+            foreach ($this->cart_details as $key => $item) {
1919 1919
                 $item_price = $item['item_price'];
1920
-                $quantity   = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1;
1921
-                $amount     = wpinv_round_amount( $item_price * $quantity );
1920
+                $quantity   = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint($item['quantity']) : 1;
1921
+                $amount     = wpinv_round_amount($item_price * $quantity);
1922 1922
                 $subtotal   = $item_price * $quantity;
1923 1923
                 
1924 1924
                 $wpi_current_id         = $this->ID;
1925 1925
                 $wpi_item_id            = $item['id'];
1926 1926
                 
1927
-                $discount   = wpinv_get_cart_item_discount_amount( $item, $this->get_discounts() );
1927
+                $discount   = wpinv_get_cart_item_discount_amount($item, $this->get_discounts());
1928 1928
                 
1929
-                $tax_rate   = wpinv_get_tax_rate( $this->country, $this->state, $wpi_item_id );
1930
-                $tax_class  = $wpinv_euvat->get_item_class( $wpi_item_id );
1931
-                $tax        = $item_price > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1929
+                $tax_rate   = wpinv_get_tax_rate($this->country, $this->state, $wpi_item_id);
1930
+                $tax_class  = $wpinv_euvat->get_item_class($wpi_item_id);
1931
+                $tax        = $item_price > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0;
1932 1932
 
1933
-                if ( wpinv_prices_include_tax() ) {
1934
-                    $subtotal -= wpinv_round_amount( $tax );
1933
+                if (wpinv_prices_include_tax()) {
1934
+                    $subtotal -= wpinv_round_amount($tax);
1935 1935
                 }
1936 1936
 
1937
-                $total      = $subtotal - $discount + $tax;
1937
+                $total = $subtotal - $discount + $tax;
1938 1938
 
1939 1939
                 // Do not allow totals to go negative
1940
-                if( $total < 0 ) {
1940
+                if ($total < 0) {
1941 1941
                     $total = 0;
1942 1942
                 }
1943 1943
 
1944 1944
                 $cart_details[] = array(
1945 1945
                     'id'          => $item['id'],
1946 1946
                     'name'        => $item['name'],
1947
-                    'item_price'  => wpinv_round_amount( $item_price ),
1948
-                    'custom_price'=> ( isset( $item['custom_price'] ) ? $item['custom_price'] : '' ),
1947
+                    'item_price'  => wpinv_round_amount($item_price),
1948
+                    'custom_price'=> (isset($item['custom_price']) ? $item['custom_price'] : ''),
1949 1949
                     'quantity'    => $quantity,
1950 1950
                     'discount'    => $discount,
1951
-                    'subtotal'    => wpinv_round_amount( $subtotal ),
1952
-                    'tax'         => wpinv_round_amount( $tax ),
1953
-                    'price'       => wpinv_round_amount( $total ),
1951
+                    'subtotal'    => wpinv_round_amount($subtotal),
1952
+                    'tax'         => wpinv_round_amount($tax),
1953
+                    'price'       => wpinv_round_amount($total),
1954 1954
                     'vat_rate'    => $tax_rate,
1955 1955
                     'vat_class'   => $tax_class,
1956 1956
                     'meta'        => isset($item['meta']) ? $item['meta'] : array(),
@@ -1961,15 +1961,15 @@  discard block
 block discarded – undo
1961 1961
                 $cart_discount  += (float)($discount);
1962 1962
                 $cart_tax       += (float)($tax);
1963 1963
             }
1964
-            if ( $cart_subtotal < 0 ) {
1964
+            if ($cart_subtotal < 0) {
1965 1965
                 $cart_subtotal = 0;
1966 1966
             }
1967
-            if ( $cart_tax < 0 ) {
1967
+            if ($cart_tax < 0) {
1968 1968
                 $cart_tax = 0;
1969 1969
             }
1970
-            $this->subtotal = wpinv_round_amount( $cart_subtotal );
1971
-            $this->tax      = wpinv_round_amount( $cart_tax );
1972
-            $this->discount = wpinv_round_amount( $cart_discount );
1970
+            $this->subtotal = wpinv_round_amount($cart_subtotal);
1971
+            $this->tax      = wpinv_round_amount($cart_tax);
1972
+            $this->discount = wpinv_round_amount($cart_discount);
1973 1973
             
1974 1974
             $this->recalculate_total();
1975 1975
             
@@ -1981,226 +1981,226 @@  discard block
 block discarded – undo
1981 1981
     
1982 1982
     public function recalculate_totals($temp = false) {        
1983 1983
         $this->update_items($temp);
1984
-        $this->save( true );
1984
+        $this->save(true);
1985 1985
         
1986 1986
         return $this;
1987 1987
     }
1988 1988
     
1989 1989
     public function needs_payment() {
1990
-        $valid_invoice_statuses = apply_filters( 'wpinv_valid_invoice_statuses_for_payment', array( 'wpi-pending' ), $this );
1990
+        $valid_invoice_statuses = apply_filters('wpinv_valid_invoice_statuses_for_payment', array('wpi-pending'), $this);
1991 1991
 
1992
-        if ( $this->has_status( $valid_invoice_statuses ) && ( $this->get_total() > 0 || $this->is_free_trial() || $this->is_free() ) ) {
1992
+        if ($this->has_status($valid_invoice_statuses) && ($this->get_total() > 0 || $this->is_free_trial() || $this->is_free())) {
1993 1993
             $needs_payment = true;
1994 1994
         } else {
1995 1995
             $needs_payment = false;
1996 1996
         }
1997 1997
 
1998
-        return apply_filters( 'wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses );
1998
+        return apply_filters('wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses);
1999 1999
     }
2000 2000
     
2001
-    public function get_checkout_payment_url( $with_key = false, $secret = false ) {
2001
+    public function get_checkout_payment_url($with_key = false, $secret = false) {
2002 2002
         $pay_url = wpinv_get_checkout_uri();
2003 2003
 
2004
-        if ( is_ssl() ) {
2005
-            $pay_url = str_replace( 'http:', 'https:', $pay_url );
2004
+        if (is_ssl()) {
2005
+            $pay_url = str_replace('http:', 'https:', $pay_url);
2006 2006
         }
2007 2007
         
2008 2008
         $key = $this->get_key();
2009 2009
 
2010
-        if ( $with_key ) {
2011
-            $pay_url = add_query_arg( 'invoice_key', $key, $pay_url );
2010
+        if ($with_key) {
2011
+            $pay_url = add_query_arg('invoice_key', $key, $pay_url);
2012 2012
         } else {
2013
-            $pay_url = add_query_arg( array( 'wpi_action' => 'pay_for_invoice', 'invoice_key' => $key ), $pay_url );
2013
+            $pay_url = add_query_arg(array('wpi_action' => 'pay_for_invoice', 'invoice_key' => $key), $pay_url);
2014 2014
         }
2015 2015
         
2016
-        if ( $secret ) {
2017
-            $pay_url = add_query_arg( array( '_wpipay' => md5( $this->get_user_id() . '::' . $this->get_email() . '::' . $key ) ), $pay_url );
2016
+        if ($secret) {
2017
+            $pay_url = add_query_arg(array('_wpipay' => md5($this->get_user_id() . '::' . $this->get_email() . '::' . $key)), $pay_url);
2018 2018
         }
2019 2019
 
2020
-        return apply_filters( 'wpinv_get_checkout_payment_url', $pay_url, $this, $with_key, $secret );
2020
+        return apply_filters('wpinv_get_checkout_payment_url', $pay_url, $this, $with_key, $secret);
2021 2021
     }
2022 2022
     
2023
-    public function get_view_url( $with_key = false ) {
2024
-        $invoice_url = get_permalink( $this->ID );
2023
+    public function get_view_url($with_key = false) {
2024
+        $invoice_url = get_permalink($this->ID);
2025 2025
 
2026
-        if ( $with_key ) {
2027
-            $invoice_url = add_query_arg( 'invoice_key', $this->get_key(), $invoice_url );
2026
+        if ($with_key) {
2027
+            $invoice_url = add_query_arg('invoice_key', $this->get_key(), $invoice_url);
2028 2028
         }
2029 2029
 
2030
-        return apply_filters( 'wpinv_get_view_url', $invoice_url, $this, $with_key );
2030
+        return apply_filters('wpinv_get_view_url', $invoice_url, $this, $with_key);
2031 2031
     }
2032 2032
     
2033
-    public function generate_key( $string = '' ) {
2034
-        $auth_key  = defined( 'AUTH_KEY' ) ? AUTH_KEY : '';
2035
-        return strtolower( md5( $string . date( 'Y-m-d H:i:s' ) . $auth_key . uniqid( 'wpinv', true ) ) );  // Unique key
2033
+    public function generate_key($string = '') {
2034
+        $auth_key = defined('AUTH_KEY') ? AUTH_KEY : '';
2035
+        return strtolower(md5($string . date('Y-m-d H:i:s') . $auth_key . uniqid('wpinv', true))); // Unique key
2036 2036
     }
2037 2037
     
2038 2038
     public function is_recurring() {
2039
-        if ( empty( $this->cart_details ) ) {
2039
+        if (empty($this->cart_details)) {
2040 2040
             return false;
2041 2041
         }
2042 2042
         
2043 2043
         $has_subscription = false;
2044
-        foreach( $this->cart_details as $cart_item ) {
2045
-            if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
2044
+        foreach ($this->cart_details as $cart_item) {
2045
+            if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
2046 2046
                 $has_subscription = true;
2047 2047
                 break;
2048 2048
             }
2049 2049
         }
2050 2050
         
2051
-        if ( count( $this->cart_details ) > 1 ) {
2051
+        if (count($this->cart_details) > 1) {
2052 2052
             $has_subscription = false;
2053 2053
         }
2054 2054
 
2055
-        return apply_filters( 'wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details );
2055
+        return apply_filters('wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details);
2056 2056
     }
2057 2057
     
2058 2058
     public function is_free_trial() {
2059 2059
         $is_free_trial = false;
2060 2060
         
2061
-        if ( $this->is_parent() && $item = $this->get_recurring( true ) ) {
2062
-            if ( !empty( $item ) && $item->has_free_trial() ) {
2061
+        if ($this->is_parent() && $item = $this->get_recurring(true)) {
2062
+            if (!empty($item) && $item->has_free_trial()) {
2063 2063
                 $is_free_trial = true;
2064 2064
             }
2065 2065
         }
2066 2066
 
2067
-        return apply_filters( 'wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details );
2067
+        return apply_filters('wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details);
2068 2068
     }
2069 2069
     
2070
-    public function get_recurring( $object = false ) {
2070
+    public function get_recurring($object = false) {
2071 2071
         $item = NULL;
2072 2072
         
2073
-        if ( empty( $this->cart_details ) ) {
2073
+        if (empty($this->cart_details)) {
2074 2074
             return $item;
2075 2075
         }
2076 2076
         
2077
-        foreach( $this->cart_details as $cart_item ) {
2078
-            if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
2077
+        foreach ($this->cart_details as $cart_item) {
2078
+            if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
2079 2079
                 $item = $cart_item['id'];
2080 2080
                 break;
2081 2081
             }
2082 2082
         }
2083 2083
         
2084
-        if ( $object ) {
2085
-            $item = $item ? new WPInv_Item( $item ) : NULL;
2084
+        if ($object) {
2085
+            $item = $item ? new WPInv_Item($item) : NULL;
2086 2086
             
2087
-            apply_filters( 'wpinv_invoice_get_recurring_item', $item, $this );
2087
+            apply_filters('wpinv_invoice_get_recurring_item', $item, $this);
2088 2088
         }
2089 2089
 
2090
-        return apply_filters( 'wpinv_invoice_get_recurring_item_id', $item, $this );
2090
+        return apply_filters('wpinv_invoice_get_recurring_item_id', $item, $this);
2091 2091
     }
2092 2092
     
2093 2093
     public function get_subscription_name() {
2094
-        $item = $this->get_recurring( true );
2094
+        $item = $this->get_recurring(true);
2095 2095
         
2096
-        if ( empty( $item ) ) {
2096
+        if (empty($item)) {
2097 2097
             return NULL;
2098 2098
         }
2099 2099
         
2100
-        if ( !($name = $item->get_name()) ) {
2100
+        if (!($name = $item->get_name())) {
2101 2101
             $name = $item->post_name;
2102 2102
         }
2103 2103
 
2104
-        return apply_filters( 'wpinv_invoice_get_subscription_name', $name, $this );
2104
+        return apply_filters('wpinv_invoice_get_subscription_name', $name, $this);
2105 2105
     }
2106 2106
         
2107 2107
     public function get_expiration() {
2108
-        $expiration = $this->get_meta( '_wpinv_subscr_expiration', true );
2108
+        $expiration = $this->get_meta('_wpinv_subscr_expiration', true);
2109 2109
         return $expiration;
2110 2110
     }
2111 2111
     
2112
-    public function get_cancelled_date( $formatted = true ) {
2113
-        $cancelled_date = $this->get_subscription_status() == 'cancelled' ? $this->get_meta( '_wpinv_subscr_cancelled_on', true ) : '';
2112
+    public function get_cancelled_date($formatted = true) {
2113
+        $cancelled_date = $this->get_subscription_status() == 'cancelled' ? $this->get_meta('_wpinv_subscr_cancelled_on', true) : '';
2114 2114
         
2115
-        if ( $formatted && $cancelled_date ) {
2116
-            $cancelled_date = date_i18n( get_option( 'date_format' ), strtotime( $cancelled_date ) );
2115
+        if ($formatted && $cancelled_date) {
2116
+            $cancelled_date = date_i18n(get_option('date_format'), strtotime($cancelled_date));
2117 2117
         }
2118 2118
         
2119 2119
         return $cancelled_date;
2120 2120
     }
2121 2121
     
2122
-    public function get_trial_end_date( $formatted = true ) {
2123
-        if ( !$this->is_free_trial() || ! ( $this->is_paid() || $this->is_refunded() ) ) {
2122
+    public function get_trial_end_date($formatted = true) {
2123
+        if (!$this->is_free_trial() || !($this->is_paid() || $this->is_refunded())) {
2124 2124
             return NULL;
2125 2125
         }
2126 2126
         
2127
-        $trial_end_date = $this->get_subscription_status() == 'trialing' ? $this->get_meta( '_wpinv_subscr_trial_end', true ) : '';
2127
+        $trial_end_date = $this->get_subscription_status() == 'trialing' ? $this->get_meta('_wpinv_subscr_trial_end', true) : '';
2128 2128
         
2129
-        if ( empty( $trial_end_date ) ) {
2130
-            $trial_start_time = strtotime( $this->get_subscription_start() );
2131
-            $trial_start_time += ( wpinv_period_in_days( $this->get_subscription_trial_interval(), $this->get_subscription_trial_period() ) * DAY_IN_SECONDS ) ;
2129
+        if (empty($trial_end_date)) {
2130
+            $trial_start_time = strtotime($this->get_subscription_start());
2131
+            $trial_start_time += (wpinv_period_in_days($this->get_subscription_trial_interval(), $this->get_subscription_trial_period()) * DAY_IN_SECONDS);
2132 2132
             
2133
-            $trial_end_date = date_i18n( 'Y-m-d H:i:s', $trial_start_time );
2133
+            $trial_end_date = date_i18n('Y-m-d H:i:s', $trial_start_time);
2134 2134
         }
2135 2135
         
2136
-        if ( $formatted && $trial_end_date ) {
2137
-            $trial_end_date = date_i18n( get_option( 'date_format' ), strtotime( $trial_end_date ) );
2136
+        if ($formatted && $trial_end_date) {
2137
+            $trial_end_date = date_i18n(get_option('date_format'), strtotime($trial_end_date));
2138 2138
         }
2139 2139
         
2140 2140
         return $trial_end_date;
2141 2141
     }
2142 2142
     
2143
-    public function get_subscription_created( $default = true ) {
2144
-        $created = $this->get_meta( '_wpinv_subscr_created', true );
2143
+    public function get_subscription_created($default = true) {
2144
+        $created = $this->get_meta('_wpinv_subscr_created', true);
2145 2145
         
2146
-        if ( empty( $created ) && $default ) {
2146
+        if (empty($created) && $default) {
2147 2147
             $created = $this->date;
2148 2148
         }
2149 2149
         return $created;
2150 2150
     }
2151 2151
     
2152
-    public function get_subscription_start( $formatted = true ) {
2153
-        if ( ! ( $this->is_paid() || $this->is_refunded() ) ) {
2152
+    public function get_subscription_start($formatted = true) {
2153
+        if (!($this->is_paid() || $this->is_refunded())) {
2154 2154
             return '-';
2155 2155
         }
2156
-        $start   = $this->get_subscription_created();
2156
+        $start = $this->get_subscription_created();
2157 2157
         
2158
-        if ( $formatted ) {
2159
-            $date = date_i18n( get_option( 'date_format' ), strtotime( $start ) );
2158
+        if ($formatted) {
2159
+            $date = date_i18n(get_option('date_format'), strtotime($start));
2160 2160
         } else {
2161
-            $date = date_i18n( 'Y-m-d H:i:s', strtotime( $start ) );
2161
+            $date = date_i18n('Y-m-d H:i:s', strtotime($start));
2162 2162
         }
2163 2163
 
2164 2164
         return $date;
2165 2165
     }
2166 2166
     
2167
-    public function get_subscription_end( $formatted = true ) {
2168
-        if ( ! ( $this->is_paid() || $this->is_refunded() ) ) {
2167
+    public function get_subscription_end($formatted = true) {
2168
+        if (!($this->is_paid() || $this->is_refunded())) {
2169 2169
             return '-';
2170 2170
         }
2171 2171
 
2172
-        if ( $this->get_subscription_status() == 'cancelled' ) {
2173
-            return $this->get_cancelled_date( $formatted );
2172
+        if ($this->get_subscription_status() == 'cancelled') {
2173
+            return $this->get_cancelled_date($formatted);
2174 2174
         }
2175 2175
 
2176 2176
         $start          = $this->get_subscription_created();
2177 2177
         $interval       = $this->get_subscription_interval();
2178
-        $period         = $this->get_subscription_period( true );
2178
+        $period         = $this->get_subscription_period(true);
2179 2179
         $bill_times     = (int)$this->get_bill_times();
2180 2180
         
2181
-        if ( $bill_times == 0 ) {
2182
-            return $formatted ? __( 'Until cancelled', 'invoicing' ) : $bill_times;
2181
+        if ($bill_times == 0) {
2182
+            return $formatted ? __('Until cancelled', 'invoicing') : $bill_times;
2183 2183
         }
2184 2184
         
2185
-        $total_period = $start . '+' . ( $interval * $bill_times ) . ' ' . $period;
2185
+        $total_period = $start . '+' . ($interval * $bill_times) . ' ' . $period;
2186 2186
         
2187
-        $end_time = strtotime( $start . '+' . ( $interval * $bill_times ) . ' ' . $period );
2187
+        $end_time = strtotime($start . '+' . ($interval * $bill_times) . ' ' . $period);
2188 2188
         
2189
-        if ( $this->is_free_trial() ) {
2190
-            $end_time += ( wpinv_period_in_days( $this->get_subscription_trial_interval(), $this->get_subscription_trial_period() ) * DAY_IN_SECONDS ) ;
2189
+        if ($this->is_free_trial()) {
2190
+            $end_time += (wpinv_period_in_days($this->get_subscription_trial_interval(), $this->get_subscription_trial_period()) * DAY_IN_SECONDS);
2191 2191
         }
2192 2192
         
2193
-        if ( $formatted ) {
2194
-            $date = date_i18n( get_option( 'date_format' ), $end_time );
2193
+        if ($formatted) {
2194
+            $date = date_i18n(get_option('date_format'), $end_time);
2195 2195
         } else {
2196
-            $date = date_i18n( 'Y-m-d H:i:s', $end_time );
2196
+            $date = date_i18n('Y-m-d H:i:s', $end_time);
2197 2197
         }
2198 2198
 
2199 2199
         return $date;
2200 2200
     }
2201 2201
     
2202 2202
     public function get_expiration_time() {
2203
-        return strtotime( $this->get_expiration(), current_time( 'timestamp' ) );
2203
+        return strtotime($this->get_expiration(), current_time('timestamp'));
2204 2204
     }
2205 2205
     
2206 2206
     public function get_original_invoice_id() {        
@@ -2212,125 +2212,125 @@  discard block
 block discarded – undo
2212 2212
         return $subscription_data['bill_times'];
2213 2213
     }
2214 2214
 
2215
-    public function get_child_payments( $self = false ) {
2216
-        $invoices = get_posts( array(
2215
+    public function get_child_payments($self = false) {
2216
+        $invoices = get_posts(array(
2217 2217
             'post_type'         => $this->post_type,
2218 2218
             'post_parent'       => (int)$this->ID,
2219 2219
             'posts_per_page'    => '999',
2220
-            'post_status'       => array( 'publish', 'wpi-processing', 'wpi-renewal' ),
2220
+            'post_status'       => array('publish', 'wpi-processing', 'wpi-renewal'),
2221 2221
             'orderby'           => 'ID',
2222 2222
             'order'             => 'DESC',
2223 2223
             'fields'            => 'ids'
2224
-        ) );
2224
+        ));
2225 2225
         
2226
-        if ( $this->is_free_trial() ) {
2226
+        if ($this->is_free_trial()) {
2227 2227
             $self = false;
2228 2228
         }
2229 2229
         
2230
-        if ( $self && $this->is_paid() ) {
2231
-            if ( !empty( $invoices ) ) {
2230
+        if ($self && $this->is_paid()) {
2231
+            if (!empty($invoices)) {
2232 2232
                 $invoices[] = (int)$this->ID;
2233 2233
             } else {
2234
-                $invoices = array( $this->ID );
2234
+                $invoices = array($this->ID);
2235 2235
             }
2236 2236
             
2237
-            $invoices = array_unique( $invoices );
2237
+            $invoices = array_unique($invoices);
2238 2238
         }
2239 2239
 
2240 2240
         return $invoices;
2241 2241
     }
2242 2242
 
2243
-    public function get_total_payments( $self = true ) {
2244
-        return count( $this->get_child_payments( $self ) );
2243
+    public function get_total_payments($self = true) {
2244
+        return count($this->get_child_payments($self));
2245 2245
     }
2246 2246
     
2247
-    public function get_subscriptions( $limit = -1 ) {
2248
-        $subscriptions = wpinv_get_subscriptions( array( 'parent_invoice_id' => $this->ID, 'numberposts' => $limit ) );
2247
+    public function get_subscriptions($limit = -1) {
2248
+        $subscriptions = wpinv_get_subscriptions(array('parent_invoice_id' => $this->ID, 'numberposts' => $limit));
2249 2249
 
2250 2250
         return $subscriptions;
2251 2251
     }
2252 2252
     
2253 2253
     public function get_subscription_id() {
2254
-        $subscription_id = $this->get_meta( '_wpinv_subscr_profile_id', true );
2254
+        $subscription_id = $this->get_meta('_wpinv_subscr_profile_id', true);
2255 2255
         
2256
-        if ( empty( $subscription_id ) && !empty( $this->parent_invoice ) ) {
2257
-            $parent_invoice = wpinv_get_invoice( $this->parent_invoice );
2256
+        if (empty($subscription_id) && !empty($this->parent_invoice)) {
2257
+            $parent_invoice = wpinv_get_invoice($this->parent_invoice);
2258 2258
             
2259
-            $subscription_id = $parent_invoice->get_meta( '_wpinv_subscr_profile_id', true );
2259
+            $subscription_id = $parent_invoice->get_meta('_wpinv_subscr_profile_id', true);
2260 2260
         }
2261 2261
         
2262 2262
         return $subscription_id;
2263 2263
     }
2264 2264
     
2265 2265
     public function get_subscription_status() {
2266
-        $subscription_status = $this->get_meta( '_wpinv_subscr_status', true );
2266
+        $subscription_status = $this->get_meta('_wpinv_subscr_status', true);
2267 2267
 
2268
-        if ( empty( $subscription_status ) ) {
2268
+        if (empty($subscription_status)) {
2269 2269
             $status = 'pending';
2270 2270
             
2271
-            if ( $this->is_paid() ) {        
2271
+            if ($this->is_paid()) {        
2272 2272
                 $bill_times   = (int)$this->get_bill_times();
2273 2273
                 $times_billed = (int)$this->get_total_payments();
2274
-                $expiration = $this->get_subscription_end( false );
2275
-                $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;
2274
+                $expiration = $this->get_subscription_end(false);
2275
+                $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;
2276 2276
                 
2277
-                if ( (int)$bill_times == 0 ) {
2277
+                if ((int)$bill_times == 0) {
2278 2278
                     $status = $expired ? 'expired' : 'active';
2279
-                } else if ( $bill_times > 0 && $times_billed >= $bill_times ) {
2279
+                } else if ($bill_times > 0 && $times_billed >= $bill_times) {
2280 2280
                     $status = 'completed';
2281
-                } else if ( $expired ) {
2281
+                } else if ($expired) {
2282 2282
                     $status = 'expired';
2283
-                } else if ( $bill_times > 0 ) {
2283
+                } else if ($bill_times > 0) {
2284 2284
                     $status = 'active';
2285 2285
                 } else {
2286 2286
                     $status = 'pending';
2287 2287
                 }
2288 2288
             }
2289 2289
             
2290
-            if ( $status && $status != $subscription_status ) {
2290
+            if ($status && $status != $subscription_status) {
2291 2291
                 $subscription_status = $status;
2292 2292
                 
2293
-                $this->update_meta( '_wpinv_subscr_status', $status );
2293
+                $this->update_meta('_wpinv_subscr_status', $status);
2294 2294
             }
2295 2295
         }
2296 2296
         
2297 2297
         return $subscription_status;
2298 2298
     }
2299 2299
     
2300
-    public function get_subscription_status_label( $status = '' ) {
2301
-        $status = !empty( $status ) ? $status : $this->get_subscription_status();
2300
+    public function get_subscription_status_label($status = '') {
2301
+        $status = !empty($status) ? $status : $this->get_subscription_status();
2302 2302
 
2303
-        switch( $status ) {
2303
+        switch ($status) {
2304 2304
             case 'active' :
2305
-                $status_label = __( 'Active', 'invoicing' );
2305
+                $status_label = __('Active', 'invoicing');
2306 2306
                 break;
2307 2307
 
2308 2308
             case 'cancelled' :
2309
-                $status_label = __( 'Cancelled', 'invoicing' );
2309
+                $status_label = __('Cancelled', 'invoicing');
2310 2310
                 break;
2311 2311
                 
2312 2312
             case 'completed' :
2313
-                $status_label = __( 'Completed', 'invoicing' );
2313
+                $status_label = __('Completed', 'invoicing');
2314 2314
                 break;
2315 2315
 
2316 2316
             case 'expired' :
2317
-                $status_label = __( 'Expired', 'invoicing' );
2317
+                $status_label = __('Expired', 'invoicing');
2318 2318
                 break;
2319 2319
 
2320 2320
             case 'pending' :
2321
-                $status_label = __( 'Pending', 'invoicing' );
2321
+                $status_label = __('Pending', 'invoicing');
2322 2322
                 break;
2323 2323
 
2324 2324
             case 'failing' :
2325
-                $status_label = __( 'Failing', 'invoicing' );
2325
+                $status_label = __('Failing', 'invoicing');
2326 2326
                 break;
2327 2327
                 
2328 2328
             case 'stopped' :
2329
-                $status_label = __( 'Stopped', 'invoicing' );
2329
+                $status_label = __('Stopped', 'invoicing');
2330 2330
                 break;
2331 2331
                 
2332 2332
             case 'trialing' :
2333
-                $status_label = __( 'Trialing', 'invoicing' );
2333
+                $status_label = __('Trialing', 'invoicing');
2334 2334
                 break;
2335 2335
 
2336 2336
             default:
@@ -2341,26 +2341,26 @@  discard block
 block discarded – undo
2341 2341
         return $status_label;
2342 2342
     }
2343 2343
     
2344
-    public function get_subscription_period( $full = false ) {
2345
-        $period = $this->get_meta( '_wpinv_subscr_period', true );
2344
+    public function get_subscription_period($full = false) {
2345
+        $period = $this->get_meta('_wpinv_subscr_period', true);
2346 2346
         
2347 2347
         // Fix period for old invoices
2348
-        if ( $period == 'day' ) {
2348
+        if ($period == 'day') {
2349 2349
             $period = 'D';
2350
-        } else if ( $period == 'week' ) {
2350
+        } else if ($period == 'week') {
2351 2351
             $period = 'W';
2352
-        } else if ( $period == 'month' ) {
2352
+        } else if ($period == 'month') {
2353 2353
             $period = 'M';
2354
-        } else if ( $period == 'year' ) {
2354
+        } else if ($period == 'year') {
2355 2355
             $period = 'Y';
2356 2356
         }
2357 2357
         
2358
-        if ( !in_array( $period, array( 'D', 'W', 'M', 'Y' ) ) ) {
2358
+        if (!in_array($period, array('D', 'W', 'M', 'Y'))) {
2359 2359
             $period = 'D';
2360 2360
         }
2361 2361
         
2362
-        if ( $full ) {
2363
-            switch( $period ) {
2362
+        if ($full) {
2363
+            switch ($period) {
2364 2364
                 case 'D':
2365 2365
                     $period = 'day';
2366 2366
                 break;
@@ -2380,39 +2380,39 @@  discard block
 block discarded – undo
2380 2380
     }
2381 2381
     
2382 2382
     public function get_subscription_interval() {
2383
-        $interval = (int)$this->get_meta( '_wpinv_subscr_interval', true );
2383
+        $interval = (int)$this->get_meta('_wpinv_subscr_interval', true);
2384 2384
         
2385
-        if ( !$interval > 0 ) {
2385
+        if (!$interval > 0) {
2386 2386
             $interval = 1;
2387 2387
         }
2388 2388
         
2389 2389
         return $interval;
2390 2390
     }
2391 2391
     
2392
-    public function get_subscription_trial_period( $full = false ) {
2393
-        if ( !$this->is_free_trial() ) {
2392
+    public function get_subscription_trial_period($full = false) {
2393
+        if (!$this->is_free_trial()) {
2394 2394
             return '';
2395 2395
         }
2396 2396
         
2397
-        $period = $this->get_meta( '_wpinv_subscr_trial_period', true );
2397
+        $period = $this->get_meta('_wpinv_subscr_trial_period', true);
2398 2398
         
2399 2399
         // Fix period for old invoices
2400
-        if ( $period == 'day' ) {
2400
+        if ($period == 'day') {
2401 2401
             $period = 'D';
2402
-        } else if ( $period == 'week' ) {
2402
+        } else if ($period == 'week') {
2403 2403
             $period = 'W';
2404
-        } else if ( $period == 'month' ) {
2404
+        } else if ($period == 'month') {
2405 2405
             $period = 'M';
2406
-        } else if ( $period == 'year' ) {
2406
+        } else if ($period == 'year') {
2407 2407
             $period = 'Y';
2408 2408
         }
2409 2409
         
2410
-        if ( !in_array( $period, array( 'D', 'W', 'M', 'Y' ) ) ) {
2410
+        if (!in_array($period, array('D', 'W', 'M', 'Y'))) {
2411 2411
             $period = 'D';
2412 2412
         }
2413 2413
         
2414
-        if ( $full ) {
2415
-            switch( $period ) {
2414
+        if ($full) {
2415
+            switch ($period) {
2416 2416
                 case 'D':
2417 2417
                     $period = 'day';
2418 2418
                 break;
@@ -2432,13 +2432,13 @@  discard block
 block discarded – undo
2432 2432
     }
2433 2433
     
2434 2434
     public function get_subscription_trial_interval() {
2435
-        if ( !$this->is_free_trial() ) {
2435
+        if (!$this->is_free_trial()) {
2436 2436
             return 0;
2437 2437
         }
2438 2438
         
2439
-        $interval = (int)$this->get_meta( '_wpinv_subscr_trial_interval', true );
2439
+        $interval = (int)$this->get_meta('_wpinv_subscr_trial_interval', true);
2440 2440
         
2441
-        if ( !$interval > 0 ) {
2441
+        if (!$interval > 0) {
2442 2442
             $interval = 1;
2443 2443
         }
2444 2444
         
@@ -2450,8 +2450,8 @@  discard block
 block discarded – undo
2450 2450
             'status' => 'failing'
2451 2451
         );
2452 2452
 
2453
-        if ( $this->update_subscription( $args ) ) {
2454
-            do_action( 'wpinv_subscription_failing', $this->ID, $this );
2453
+        if ($this->update_subscription($args)) {
2454
+            do_action('wpinv_subscription_failing', $this->ID, $this);
2455 2455
             return true;
2456 2456
         }
2457 2457
 
@@ -2463,8 +2463,8 @@  discard block
 block discarded – undo
2463 2463
             'status' => 'stopped'
2464 2464
         );
2465 2465
 
2466
-        if ( $this->update_subscription( $args ) ) {
2467
-            do_action( 'wpinv_subscription_stopped', $this->ID, $this );
2466
+        if ($this->update_subscription($args)) {
2467
+            do_action('wpinv_subscription_stopped', $this->ID, $this);
2468 2468
             return true;
2469 2469
         }
2470 2470
 
@@ -2476,8 +2476,8 @@  discard block
 block discarded – undo
2476 2476
             'status' => 'active'
2477 2477
         );
2478 2478
 
2479
-        if ( $this->update_subscription( $args ) ) {
2480
-            do_action( 'wpinv_subscription_restarted', $this->ID, $this );
2479
+        if ($this->update_subscription($args)) {
2480
+            do_action('wpinv_subscription_restarted', $this->ID, $this);
2481 2481
             return true;
2482 2482
         }
2483 2483
 
@@ -2489,23 +2489,23 @@  discard block
 block discarded – undo
2489 2489
             'status' => 'cancelled'
2490 2490
         );
2491 2491
 
2492
-        if ( $this->update_subscription( $args ) ) {
2493
-            if ( is_user_logged_in() ) {
2494
-                $userdata = get_userdata( get_current_user_id() );
2492
+        if ($this->update_subscription($args)) {
2493
+            if (is_user_logged_in()) {
2494
+                $userdata = get_userdata(get_current_user_id());
2495 2495
                 $user     = $userdata->user_login;
2496 2496
             } else {
2497
-                $user = __( 'gateway', 'invoicing' );
2497
+                $user = __('gateway', 'invoicing');
2498 2498
             }
2499 2499
             
2500 2500
             $subscription_id = $this->get_subscription_id();
2501
-            if ( !$subscription_id ) {
2501
+            if (!$subscription_id) {
2502 2502
                 $subscription_id = $this->ID;
2503 2503
             }
2504 2504
 
2505
-            $note = sprintf( __( 'Subscription %s has been cancelled by %s', 'invoicing' ), $subscription_id, $user );
2506
-            $this->add_note( $note );
2505
+            $note = sprintf(__('Subscription %s has been cancelled by %s', 'invoicing'), $subscription_id, $user);
2506
+            $this->add_note($note);
2507 2507
 
2508
-            do_action( 'wpinv_subscription_cancelled', $this->ID, $this );
2508
+            do_action('wpinv_subscription_cancelled', $this->ID, $this);
2509 2509
             return true;
2510 2510
         }
2511 2511
 
@@ -2513,11 +2513,11 @@  discard block
 block discarded – undo
2513 2513
     }
2514 2514
 
2515 2515
     public function can_cancel() {
2516
-        return apply_filters( 'wpinv_subscription_can_cancel', false, $this );
2516
+        return apply_filters('wpinv_subscription_can_cancel', false, $this);
2517 2517
     }
2518 2518
     
2519
-    public function add_subscription( $data = array() ) {
2520
-        if ( empty( $this->ID ) ) {
2519
+    public function add_subscription($data = array()) {
2520
+        if (empty($this->ID)) {
2521 2521
             return false;
2522 2522
         }
2523 2523
 
@@ -2536,85 +2536,85 @@  discard block
 block discarded – undo
2536 2536
             'profile_id'        => '',
2537 2537
         );
2538 2538
 
2539
-        $args = wp_parse_args( $data, $defaults );
2539
+        $args = wp_parse_args($data, $defaults);
2540 2540
 
2541
-        if ( $args['expiration'] && strtotime( 'NOW', current_time( 'timestamp' ) ) > strtotime( $args['expiration'], current_time( 'timestamp' ) ) ) {
2542
-            if ( 'active' == $args['status'] || $args['status'] == 'trialing' ) {
2541
+        if ($args['expiration'] && strtotime('NOW', current_time('timestamp')) > strtotime($args['expiration'], current_time('timestamp'))) {
2542
+            if ('active' == $args['status'] || $args['status'] == 'trialing') {
2543 2543
                 $args['status'] = 'expired';
2544 2544
             }
2545 2545
         }
2546 2546
 
2547
-        do_action( 'wpinv_subscription_pre_create', $args, $data, $this );
2547
+        do_action('wpinv_subscription_pre_create', $args, $data, $this);
2548 2548
         
2549
-        if ( !empty( $args ) ) {
2550
-            foreach ( $args as $key => $value ) {
2551
-                $this->update_meta( '_wpinv_subscr_' . $key, $value );
2549
+        if (!empty($args)) {
2550
+            foreach ($args as $key => $value) {
2551
+                $this->update_meta('_wpinv_subscr_' . $key, $value);
2552 2552
             }
2553 2553
         }
2554 2554
 
2555
-        do_action( 'wpinv_subscription_post_create', $args, $data, $this );
2555
+        do_action('wpinv_subscription_post_create', $args, $data, $this);
2556 2556
 
2557 2557
         return true;
2558 2558
     }
2559 2559
     
2560
-    public function update_subscription( $args = array() ) {
2561
-        if ( empty( $this->ID ) ) {
2560
+    public function update_subscription($args = array()) {
2561
+        if (empty($this->ID)) {
2562 2562
             return false;
2563 2563
         }
2564 2564
 
2565
-        if ( !empty( $args['expiration'] ) && $args['expiration'] && strtotime( 'NOW', current_time( 'timestamp' ) ) > strtotime( $args['expiration'], current_time( 'timestamp' ) ) ) {
2566
-            if ( !isset( $args['status'] ) || ( isset( $args['status'] ) && ( 'active' == $args['status'] || $args['status'] == 'trialing' ) ) ) {
2565
+        if (!empty($args['expiration']) && $args['expiration'] && strtotime('NOW', current_time('timestamp')) > strtotime($args['expiration'], current_time('timestamp'))) {
2566
+            if (!isset($args['status']) || (isset($args['status']) && ('active' == $args['status'] || $args['status'] == 'trialing'))) {
2567 2567
                 $args['status'] = 'expired';
2568 2568
             }
2569 2569
         }
2570 2570
 
2571
-        if ( isset( $args['status'] ) && $args['status'] == 'cancelled' && empty( $args['cancelled_on'] ) ) {
2572
-            $args['cancelled_on'] = date_i18n( 'Y-m-d H:i:s', current_time( 'timestamp' ) );
2571
+        if (isset($args['status']) && $args['status'] == 'cancelled' && empty($args['cancelled_on'])) {
2572
+            $args['cancelled_on'] = date_i18n('Y-m-d H:i:s', current_time('timestamp'));
2573 2573
         }
2574 2574
 
2575
-        do_action( 'wpinv_subscription_pre_update', $args, $this );
2575
+        do_action('wpinv_subscription_pre_update', $args, $this);
2576 2576
         
2577
-        if ( !empty( $args ) ) {
2578
-            foreach ( $args as $key => $value ) {
2579
-                $this->update_meta( '_wpinv_subscr_' . $key, $value );
2577
+        if (!empty($args)) {
2578
+            foreach ($args as $key => $value) {
2579
+                $this->update_meta('_wpinv_subscr_' . $key, $value);
2580 2580
             }
2581 2581
         }
2582 2582
 
2583
-        do_action( 'wpinv_subscription_post_update', $args, $this );
2583
+        do_action('wpinv_subscription_post_update', $args, $this);
2584 2584
 
2585 2585
         return true;
2586 2586
     }
2587 2587
     
2588 2588
     public function renew_subscription() {
2589 2589
         $parent_invoice = $this->get_parent_payment();
2590
-        $parent_invoice = empty( $parent_invoice ) ? $this : $parent_invoice;
2590
+        $parent_invoice = empty($parent_invoice) ? $this : $parent_invoice;
2591 2591
         
2592
-        $current_time   = current_time( 'timestamp' );
2592
+        $current_time   = current_time('timestamp');
2593 2593
         $start          = $this->get_subscription_created();
2594
-        $start          = $start ? strtotime( $start ) : $current_time;
2594
+        $start          = $start ? strtotime($start) : $current_time;
2595 2595
         $expires        = $this->get_expiration_time();
2596 2596
         
2597
-        if ( !$expires ) {
2598
-            $expires    = strtotime( '+' . $parent_invoice->get_subscription_interval() . ' ' . $parent_invoice->get_subscription_period( true ), $start );
2597
+        if (!$expires) {
2598
+            $expires    = strtotime('+' . $parent_invoice->get_subscription_interval() . ' ' . $parent_invoice->get_subscription_period(true), $start);
2599 2599
         }
2600 2600
         
2601
-        $expiration     = date_i18n( 'Y-m-d 23:59:59', $expires );
2602
-        $expiration     = apply_filters( 'wpinv_subscription_renewal_expiration', $expiration, $this->ID, $this );
2601
+        $expiration     = date_i18n('Y-m-d 23:59:59', $expires);
2602
+        $expiration     = apply_filters('wpinv_subscription_renewal_expiration', $expiration, $this->ID, $this);
2603 2603
         $bill_times     = $parent_invoice->get_bill_times();
2604 2604
         $times_billed   = $parent_invoice->get_total_payments();
2605 2605
         
2606
-        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
+        if ($parent_invoice->get_subscription_status() == 'trialing' && ($times_billed > 0 || strtotime(date_i18n('Y-m-d')) < strtotime($parent_invoice->get_trial_end_date(false)))) {
2607 2607
             $args = array(
2608 2608
                 'status'     => 'active',
2609 2609
             );
2610 2610
 
2611
-            $parent_invoice->update_subscription( $args );
2611
+            $parent_invoice->update_subscription($args);
2612 2612
         }
2613 2613
         
2614
-        do_action( 'wpinv_subscription_pre_renew', $this->ID, $expiration, $this );
2614
+        do_action('wpinv_subscription_pre_renew', $this->ID, $expiration, $this);
2615 2615
 
2616
-        $status       = 'active';
2617
-        if ( $bill_times > 0 && $times_billed >= $bill_times ) {
2616
+        $status = 'active';
2617
+        if ($bill_times > 0 && $times_billed >= $bill_times) {
2618 2618
             $this->complete_subscription();
2619 2619
             $status = 'completed';
2620 2620
         }
@@ -2624,10 +2624,10 @@  discard block
 block discarded – undo
2624 2624
             'status'     => $status,
2625 2625
         );
2626 2626
 
2627
-        $this->update_subscription( $args );
2627
+        $this->update_subscription($args);
2628 2628
 
2629
-        do_action( 'wpinv_subscription_post_renew', $this->ID, $expiration, $this );
2630
-        do_action( 'wpinv_recurring_set_subscription_status', $this->ID, $status, $this );
2629
+        do_action('wpinv_subscription_post_renew', $this->ID, $expiration, $this);
2630
+        do_action('wpinv_recurring_set_subscription_status', $this->ID, $status, $this);
2631 2631
     }
2632 2632
     
2633 2633
     public function complete_subscription() {
@@ -2635,8 +2635,8 @@  discard block
 block discarded – undo
2635 2635
             'status' => 'completed'
2636 2636
         );
2637 2637
 
2638
-        if ( $this->update_subscription( $args ) ) {
2639
-            do_action( 'wpinv_subscription_completed', $this->ID, $this );
2638
+        if ($this->update_subscription($args)) {
2639
+            do_action('wpinv_subscription_completed', $this->ID, $this);
2640 2640
         }
2641 2641
     }
2642 2642
     
@@ -2645,44 +2645,44 @@  discard block
 block discarded – undo
2645 2645
             'status' => 'expired'
2646 2646
         );
2647 2647
 
2648
-        if ( $this->update_subscription( $args ) ) {
2649
-            do_action( 'wpinv_subscription_expired', $this->ID, $this );
2648
+        if ($this->update_subscription($args)) {
2649
+            do_action('wpinv_subscription_expired', $this->ID, $this);
2650 2650
         }
2651 2651
     }
2652 2652
 
2653 2653
     public function get_cancel_url() {
2654
-        $url = wp_nonce_url( add_query_arg( array( 'wpi_action' => 'cancel_subscription', 'sub_id' => $this->ID ) ), 'wpinv-recurring-cancel' );
2654
+        $url = wp_nonce_url(add_query_arg(array('wpi_action' => 'cancel_subscription', 'sub_id' => $this->ID)), 'wpinv-recurring-cancel');
2655 2655
 
2656
-        return apply_filters( 'wpinv_subscription_cancel_url', $url, $this );
2656
+        return apply_filters('wpinv_subscription_cancel_url', $url, $this);
2657 2657
     }
2658 2658
 
2659 2659
     public function can_update() {
2660
-        return apply_filters( 'wpinv_subscription_can_update', false, $this );
2660
+        return apply_filters('wpinv_subscription_can_update', false, $this);
2661 2661
     }
2662 2662
 
2663 2663
     public function get_update_url() {
2664
-        $url = add_query_arg( array( 'action' => 'update', 'sub_id' => $this->ID ) );
2664
+        $url = add_query_arg(array('action' => 'update', 'sub_id' => $this->ID));
2665 2665
 
2666
-        return apply_filters( 'wpinv_subscription_update_url', $url, $this );
2666
+        return apply_filters('wpinv_subscription_update_url', $url, $this);
2667 2667
     }
2668 2668
 
2669 2669
     public function is_parent() {
2670
-        $is_parent = empty( $this->parent_invoice ) ? true : false;
2670
+        $is_parent = empty($this->parent_invoice) ? true : false;
2671 2671
 
2672
-        return apply_filters( 'wpinv_invoice_is_parent', $is_parent, $this );
2672
+        return apply_filters('wpinv_invoice_is_parent', $is_parent, $this);
2673 2673
     }
2674 2674
     
2675 2675
     public function is_renewal() {
2676 2676
         $is_renewal = $this->parent_invoice && $this->parent_invoice != $this->ID ? true : false;
2677 2677
 
2678
-        return apply_filters( 'wpinv_invoice_is_renewal', $is_renewal, $this );
2678
+        return apply_filters('wpinv_invoice_is_renewal', $is_renewal, $this);
2679 2679
     }
2680 2680
     
2681 2681
     public function get_parent_payment() {
2682 2682
         $parent_payment = NULL;
2683 2683
         
2684
-        if ( $this->is_renewal() ) {
2685
-            $parent_payment = wpinv_get_invoice( $this->parent_invoice );
2684
+        if ($this->is_renewal()) {
2685
+            $parent_payment = wpinv_get_invoice($this->parent_invoice);
2686 2686
         }
2687 2687
         
2688 2688
         return $parent_payment;
@@ -2693,100 +2693,100 @@  discard block
 block discarded – undo
2693 2693
         
2694 2694
         $subscription_status = $this->get_subscription_status();
2695 2695
 
2696
-        if( ! $this->is_subscription_expired() && ( $subscription_status == 'active' || $subscription_status == 'cancelled' || $subscription_status == 'trialing' ) ) {
2696
+        if (!$this->is_subscription_expired() && ($subscription_status == 'active' || $subscription_status == 'cancelled' || $subscription_status == 'trialing')) {
2697 2697
             $ret = true;
2698 2698
         }
2699 2699
 
2700
-        return apply_filters( 'wpinv_subscription_is_active', $ret, $this->ID, $this );
2700
+        return apply_filters('wpinv_subscription_is_active', $ret, $this->ID, $this);
2701 2701
     }
2702 2702
 
2703 2703
     public function is_subscription_expired() {
2704 2704
         $ret = false;
2705 2705
         $subscription_status = $this->get_subscription_status();
2706 2706
 
2707
-        if ( $subscription_status == 'expired' ) {
2707
+        if ($subscription_status == 'expired') {
2708 2708
             $ret = true;
2709
-        } else if ( 'active' === $subscription_status || 'cancelled' === $subscription_status || 'trialing' == $subscription_status ) {
2709
+        } else if ('active' === $subscription_status || 'cancelled' === $subscription_status || 'trialing' == $subscription_status) {
2710 2710
             $ret        = false;
2711 2711
             $expiration = $this->get_expiration_time();
2712 2712
 
2713
-            if ( $expiration && strtotime( 'NOW', current_time( 'timestamp' ) ) > $expiration ) {
2713
+            if ($expiration && strtotime('NOW', current_time('timestamp')) > $expiration) {
2714 2714
                 $ret = true;
2715 2715
 
2716
-                if ( 'active' === $subscription_status || 'trialing' === $subscription_status ) {
2716
+                if ('active' === $subscription_status || 'trialing' === $subscription_status) {
2717 2717
                     $this->expire_subscription();
2718 2718
                 }
2719 2719
             }
2720 2720
         }
2721 2721
 
2722
-        return apply_filters( 'wpinv_subscription_is_expired', $ret, $this->ID, $this );
2722
+        return apply_filters('wpinv_subscription_is_expired', $ret, $this->ID, $this);
2723 2723
     }
2724 2724
     
2725
-    public function get_new_expiration( $item_id = 0, $trial = true ) {
2726
-        $item   = new WPInv_Item( $item_id );
2725
+    public function get_new_expiration($item_id = 0, $trial = true) {
2726
+        $item   = new WPInv_Item($item_id);
2727 2727
         $interval = $item->get_recurring_interval();
2728
-        $period = $item->get_recurring_period( true );
2728
+        $period = $item->get_recurring_period(true);
2729 2729
         
2730
-        $expiration_time = strtotime( '+' . $interval . ' ' . $period );
2730
+        $expiration_time = strtotime('+' . $interval . ' ' . $period);
2731 2731
         
2732
-        if ( $trial && $this->is_free_trial() && $item->has_free_trial() ) {
2733
-            $expiration_time += ( wpinv_period_in_days( $item->get_trial_interval(), $item->get_trial_period() ) * DAY_IN_SECONDS ) ;
2732
+        if ($trial && $this->is_free_trial() && $item->has_free_trial()) {
2733
+            $expiration_time += (wpinv_period_in_days($item->get_trial_interval(), $item->get_trial_period()) * DAY_IN_SECONDS);
2734 2734
         }
2735 2735
 
2736
-        return date_i18n( 'Y-m-d 23:59:59', $expiration_time );
2736
+        return date_i18n('Y-m-d 23:59:59', $expiration_time);
2737 2737
     }
2738 2738
     
2739
-    public function get_subscription_data( $filed = '' ) {
2740
-        $fields = array( 'item_id', 'status', 'period', 'initial_amount', 'recurring_amount', 'interval', 'bill_times', 'trial_period', 'trial_interval', 'expiration', 'profile_id', 'created', 'cancelled_on' );
2739
+    public function get_subscription_data($filed = '') {
2740
+        $fields = array('item_id', 'status', 'period', 'initial_amount', 'recurring_amount', 'interval', 'bill_times', 'trial_period', 'trial_interval', 'expiration', 'profile_id', 'created', 'cancelled_on');
2741 2741
         
2742 2742
         $subscription_meta = array();
2743
-        foreach ( $fields as $field ) {
2744
-            $subscription_meta[ $field ] = $this->get_meta( '_wpinv_subscr_' . $field );
2743
+        foreach ($fields as $field) {
2744
+            $subscription_meta[$field] = $this->get_meta('_wpinv_subscr_' . $field);
2745 2745
         }
2746 2746
         
2747
-        $item = $this->get_recurring( true );
2747
+        $item = $this->get_recurring(true);
2748 2748
         
2749
-        if ( !empty( $item ) ) {
2750
-            if ( empty( $subscription_meta['item_id'] ) ) {
2749
+        if (!empty($item)) {
2750
+            if (empty($subscription_meta['item_id'])) {
2751 2751
                 $subscription_meta['item_id'] = $item->ID;
2752 2752
             }
2753
-            if ( empty( $subscription_meta['period'] ) ) {
2753
+            if (empty($subscription_meta['period'])) {
2754 2754
                 $subscription_meta['period'] = $item->get_recurring_period();
2755 2755
             }
2756
-            if ( empty( $subscription_meta['interval'] ) ) {
2756
+            if (empty($subscription_meta['interval'])) {
2757 2757
                 $subscription_meta['interval'] = $item->get_recurring_interval();
2758 2758
             }
2759
-            if ( $item->has_free_trial() ) {
2760
-                if ( empty( $subscription_meta['trial_period'] ) ) {
2759
+            if ($item->has_free_trial()) {
2760
+                if (empty($subscription_meta['trial_period'])) {
2761 2761
                     $subscription_meta['trial_period'] = $item->get_trial_period();
2762 2762
                 }
2763
-                if ( empty( $subscription_meta['trial_interval'] ) ) {
2763
+                if (empty($subscription_meta['trial_interval'])) {
2764 2764
                     $subscription_meta['trial_interval'] = $item->get_trial_interval();
2765 2765
                 }
2766 2766
             } else {
2767 2767
                 $subscription_meta['trial_period']      = '';
2768 2768
                 $subscription_meta['trial_interval']    = 0;
2769 2769
             }
2770
-            if ( !$subscription_meta['bill_times'] && $subscription_meta['bill_times'] !== 0 ) {
2770
+            if (!$subscription_meta['bill_times'] && $subscription_meta['bill_times'] !== 0) {
2771 2771
                 $subscription_meta['bill_times'] = $item->get_recurring_limit();
2772 2772
             }
2773
-            if ( $subscription_meta['initial_amount'] === '' || $subscription_meta['recurring_amount'] === '' ) {
2774
-                $subscription_meta['initial_amount']    = wpinv_round_amount( $this->get_total() );
2775
-                $subscription_meta['recurring_amount']  = wpinv_round_amount( $this->get_recurring_details( 'total' ) );
2773
+            if ($subscription_meta['initial_amount'] === '' || $subscription_meta['recurring_amount'] === '') {
2774
+                $subscription_meta['initial_amount']    = wpinv_round_amount($this->get_total());
2775
+                $subscription_meta['recurring_amount']  = wpinv_round_amount($this->get_recurring_details('total'));
2776 2776
             }
2777 2777
         }
2778 2778
         
2779
-        if ( $filed === '' ) {
2780
-            return apply_filters( 'wpinv_get_invoice_subscription_data', $subscription_meta, $this );
2779
+        if ($filed === '') {
2780
+            return apply_filters('wpinv_get_invoice_subscription_data', $subscription_meta, $this);
2781 2781
         }
2782 2782
         
2783
-        $value = isset( $subscription_meta[$filed] ) ? $subscription_meta[$filed] : '';
2783
+        $value = isset($subscription_meta[$filed]) ? $subscription_meta[$filed] : '';
2784 2784
         
2785
-        return apply_filters( 'wpinv_invoice_subscription_data_value', $value, $subscription_meta, $this );
2785
+        return apply_filters('wpinv_invoice_subscription_data_value', $value, $subscription_meta, $this);
2786 2786
     }
2787 2787
     
2788 2788
     public function is_paid() {
2789
-        if ( $this->has_status( array( 'publish', 'wpi-processing', 'wpi-renewal' ) ) ) {
2789
+        if ($this->has_status(array('publish', 'wpi-processing', 'wpi-renewal'))) {
2790 2790
             return true;
2791 2791
         }
2792 2792
         
@@ -2794,23 +2794,23 @@  discard block
 block discarded – undo
2794 2794
     }
2795 2795
     
2796 2796
     public function is_refunded() {
2797
-        $is_refunded = $this->has_status( array( 'wpi-refunded' ) );
2797
+        $is_refunded = $this->has_status(array('wpi-refunded'));
2798 2798
 
2799
-        return apply_filters( 'wpinv_invoice_is_refunded', $is_refunded, $this );
2799
+        return apply_filters('wpinv_invoice_is_refunded', $is_refunded, $this);
2800 2800
     }
2801 2801
     
2802 2802
     public function is_free() {
2803 2803
         $is_free = false;
2804 2804
         
2805
-        if ( !( (float)wpinv_round_amount( $this->get_total() ) > 0 ) ) {
2806
-            if ( $this->is_parent() && $this->is_recurring() ) {
2807
-                $is_free = (float)wpinv_round_amount( $this->get_recurring_details( 'total' ) ) > 0 ? false : true;
2805
+        if (!((float)wpinv_round_amount($this->get_total()) > 0)) {
2806
+            if ($this->is_parent() && $this->is_recurring()) {
2807
+                $is_free = (float)wpinv_round_amount($this->get_recurring_details('total')) > 0 ? false : true;
2808 2808
             } else {
2809 2809
                 $is_free = true;
2810 2810
             }
2811 2811
         }
2812 2812
         
2813
-        return apply_filters( 'wpinv_invoice_is_free', $is_free, $this );
2813
+        return apply_filters('wpinv_invoice_is_free', $is_free, $this);
2814 2814
     }
2815 2815
     
2816 2816
     public function has_vat() {
@@ -2818,41 +2818,41 @@  discard block
 block discarded – undo
2818 2818
         
2819 2819
         $requires_vat = false;
2820 2820
         
2821
-        if ( $this->country ) {
2821
+        if ($this->country) {
2822 2822
             $wpi_country        = $this->country;
2823 2823
             
2824
-            $requires_vat       = $wpinv_euvat->requires_vat( $requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule( $this ) );
2824
+            $requires_vat       = $wpinv_euvat->requires_vat($requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule($this));
2825 2825
         }
2826 2826
         
2827
-        return apply_filters( 'wpinv_invoice_has_vat', $requires_vat, $this );
2827
+        return apply_filters('wpinv_invoice_has_vat', $requires_vat, $this);
2828 2828
     }
2829 2829
     
2830 2830
     public function refresh_item_ids() {
2831 2831
         $item_ids = array();
2832 2832
         
2833
-        if ( !empty( $this->cart_details ) ) {
2834
-            foreach ( $this->cart_details as $key => $item ) {
2835
-                if ( !empty( $item['id'] ) ) {
2833
+        if (!empty($this->cart_details)) {
2834
+            foreach ($this->cart_details as $key => $item) {
2835
+                if (!empty($item['id'])) {
2836 2836
                     $item_ids[] = $item['id'];
2837 2837
                 }
2838 2838
             }
2839 2839
         }
2840 2840
         
2841
-        $item_ids = !empty( $item_ids ) ? implode( ',', array_unique( $item_ids ) ) : '';
2841
+        $item_ids = !empty($item_ids) ? implode(',', array_unique($item_ids)) : '';
2842 2842
         
2843
-        update_post_meta( $this->ID, '_wpinv_item_ids', $item_ids );
2843
+        update_post_meta($this->ID, '_wpinv_item_ids', $item_ids);
2844 2844
     }
2845 2845
     
2846
-    public function get_invoice_quote_type( $post_id ) {
2847
-        if ( empty( $post_id ) ) {
2846
+    public function get_invoice_quote_type($post_id) {
2847
+        if (empty($post_id)) {
2848 2848
             return '';
2849 2849
         }
2850 2850
 
2851
-        $type = get_post_type( $post_id );
2851
+        $type = get_post_type($post_id);
2852 2852
 
2853
-        if ( 'wpi_invoice' === $type ) {
2853
+        if ('wpi_invoice' === $type) {
2854 2854
             $post_type = __('Invoice', 'invoicing');
2855
-        } else{
2855
+        } else {
2856 2856
             $post_type = __('Quote', 'invoicing');
2857 2857
         }
2858 2858
 
Please login to merge, or discard this patch.