Passed
Pull Request — master (#329)
by Brian
05:57
created
includes/gateways/paypal.php 1 patch
Spacing   +283 added lines, -283 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 ) ), $invoice );
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)), $invoice);
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 64
             'cancel_return' => $invoice->get_checkout_payment_url(),
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,83 +80,83 @@  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
 
137 137
         $period             = $item->get_recurring_period();
138 138
         $interval           = $item->get_recurring_interval();
139
-        $bill_times         = (int)$item->get_recurring_limit();
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
-        $item_name                  = sprintf( '[%s] %s', $invoice->get_number(), wpinv_get_cart_item_name( array( 'id' => $item->ID ) ) );
150
-        $paypal_args['item_name']   = stripslashes_deep( html_entity_decode( $item_name, ENT_COMPAT, 'UTF-8' ) );
149
+        $item_name                  = sprintf('[%s] %s', $invoice->get_number(), wpinv_get_cart_item_name(array('id' => $item->ID)));
150
+        $paypal_args['item_name']   = stripslashes_deep(html_entity_decode($item_name, ENT_COMPAT, 'UTF-8'));
151 151
         
152
-        if ( $invoice->is_free_trial() && $item->has_free_trial() ) {
152
+        if ($invoice->is_free_trial() && $item->has_free_trial()) {
153 153
             $paypal_args['a1']  = $initial_amount;
154 154
             $paypal_args['p1']  = $item->get_trial_interval();
155 155
             $paypal_args['t1']  = $item->get_trial_period();
156 156
             
157 157
             // Set the recurring amount
158 158
             $paypal_args['a3']  = $recurring_amount;
159
-        } else if ( $initial_amount != $recurring_amount && $bill_times != 1 ) {
159
+        } else if ($initial_amount != $recurring_amount && $bill_times != 1) {
160 160
             $paypal_args['a1']  = $initial_amount;
161 161
             $paypal_args['p1']  = $interval;
162 162
             $paypal_args['t1']  = $period;
@@ -164,63 +164,63 @@  discard block
 block discarded – undo
164 164
             // Set the recurring amount
165 165
             $paypal_args['a3']  = $recurring_amount;
166 166
             
167
-            if ( $bill_times > 1 ) {
167
+            if ($bill_times > 1) {
168 168
                 $bill_times--;
169 169
             }
170 170
         } else {
171
-            $paypal_args['a3']  = $initial_amount;
171
+            $paypal_args['a3'] = $initial_amount;
172 172
         }
173 173
         
174 174
         $paypal_args['p3']  = $interval;
175 175
         $paypal_args['t3']  = $period;
176 176
         
177
-        if ( $bill_times > 1 ) {
177
+        if ($bill_times > 1) {
178 178
             // Make sure it's not over the max of 52
179
-            $paypal_args['srt'] = ( $bill_times <= 52 ? absint( $bill_times ) : 52 );
179
+            $paypal_args['srt'] = ($bill_times <= 52 ? absint($bill_times) : 52);
180 180
         }
181 181
                 
182 182
         // Remove cart items
183 183
         $i = 1;
184
-        if( is_array( $purchase_data['cart_details'] ) && ! empty( $purchase_data['cart_details'] ) ) {
185
-            foreach ( $purchase_data['cart_details'] as $item ) {                
186
-                if ( isset( $paypal_args['item_number_' . $i] ) ) {
187
-                    unset( $paypal_args['item_number_' . $i] );
184
+        if (is_array($purchase_data['cart_details']) && !empty($purchase_data['cart_details'])) {
185
+            foreach ($purchase_data['cart_details'] as $item) {                
186
+                if (isset($paypal_args['item_number_' . $i])) {
187
+                    unset($paypal_args['item_number_' . $i]);
188 188
                 }
189
-                if ( isset( $paypal_args['item_name_' . $i] ) ) {
190
-                    unset( $paypal_args['item_name_' . $i] );
189
+                if (isset($paypal_args['item_name_' . $i])) {
190
+                    unset($paypal_args['item_name_' . $i]);
191 191
                 }
192
-                if ( isset( $paypal_args['quantity_' . $i] ) ) {
193
-                    unset( $paypal_args['quantity_' . $i] );
192
+                if (isset($paypal_args['quantity_' . $i])) {
193
+                    unset($paypal_args['quantity_' . $i]);
194 194
                 }
195
-                if ( isset( $paypal_args['amount_' . $i] ) ) {
196
-                    unset( $paypal_args['amount_' . $i] );
195
+                if (isset($paypal_args['amount_' . $i])) {
196
+                    unset($paypal_args['amount_' . $i]);
197 197
                 }
198
-                if ( isset( $paypal_args['discount_amount_' . $i] ) ) {
199
-                    unset( $paypal_args['discount_amount_' . $i] );
198
+                if (isset($paypal_args['discount_amount_' . $i])) {
199
+                    unset($paypal_args['discount_amount_' . $i]);
200 200
                 }
201 201
 
202 202
                 $i++;
203 203
             }
204 204
         }
205 205
         
206
-        if ( isset( $paypal_args['tax_cart'] ) ) {
207
-            unset( $paypal_args['tax_cart'] );
206
+        if (isset($paypal_args['tax_cart'])) {
207
+            unset($paypal_args['tax_cart']);
208 208
         }
209 209
                 
210
-        if ( isset( $paypal_args['upload'] ) ) {
211
-            unset( $paypal_args['upload'] );
210
+        if (isset($paypal_args['upload'])) {
211
+            unset($paypal_args['upload']);
212 212
         }
213 213
         
214
-        $paypal_args = apply_filters( 'wpinv_paypal_recurring_args', $paypal_args, $purchase_data, $invoice );
214
+        $paypal_args = apply_filters('wpinv_paypal_recurring_args', $paypal_args, $purchase_data, $invoice);
215 215
     }
216 216
     
217 217
     return $paypal_args;
218 218
 }
219
-add_filter( 'wpinv_paypal_args', 'wpinv_get_paypal_recurring_args', 10, 3 );
219
+add_filter('wpinv_paypal_args', 'wpinv_get_paypal_recurring_args', 10, 3);
220 220
 
221 221
 function wpinv_process_paypal_ipn() {
222 222
 	// Check the request method is POST
223
-	if ( isset( $_SERVER['REQUEST_METHOD'] ) && $_SERVER['REQUEST_METHOD'] != 'POST' ) {
223
+	if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] != 'POST') {
224 224
 		return;
225 225
 	}
226 226
 
@@ -228,11 +228,11 @@  discard block
 block discarded – undo
228 228
 	$post_data = '';
229 229
 
230 230
 	// Fallback just in case post_max_size is lower than needed
231
-	if ( ini_get( 'allow_url_fopen' ) ) {
232
-		$post_data = file_get_contents( 'php://input' );
231
+	if (ini_get('allow_url_fopen')) {
232
+		$post_data = file_get_contents('php://input');
233 233
 	} else {
234 234
 		// If allow_url_fopen is not enabled, then make sure that post_max_size is large enough
235
-		ini_set( 'post_max_size', '12M' );
235
+		ini_set('post_max_size', '12M');
236 236
 	}
237 237
 	// Start the encoded data collection with notification command
238 238
 	$encoded_data = 'cmd=_notify-validate';
@@ -241,43 +241,43 @@  discard block
 block discarded – undo
241 241
 	$arg_separator = wpinv_get_php_arg_separator_output();
242 242
 
243 243
 	// Verify there is a post_data
244
-	if ( $post_data || strlen( $post_data ) > 0 ) {
244
+	if ($post_data || strlen($post_data) > 0) {
245 245
 		// Append the data
246
-		$encoded_data .= $arg_separator.$post_data;
246
+		$encoded_data .= $arg_separator . $post_data;
247 247
 	} else {
248 248
 		// Check if POST is empty
249
-		if ( empty( $_POST ) ) {
249
+		if (empty($_POST)) {
250 250
 			// Nothing to do
251 251
 			return;
252 252
 		} else {
253 253
 			// Loop through each POST
254
-			foreach ( $_POST as $key => $value ) {
254
+			foreach ($_POST as $key => $value) {
255 255
 				// Encode the value and append the data
256
-				$encoded_data .= $arg_separator."$key=" . urlencode( $value );
256
+				$encoded_data .= $arg_separator . "$key=" . urlencode($value);
257 257
 			}
258 258
 		}
259 259
 	}
260 260
 
261 261
 	// Convert collected post data to an array
262
-	wp_parse_str( $encoded_data, $encoded_data_array );
262
+	wp_parse_str($encoded_data, $encoded_data_array);
263 263
 
264
-	foreach ( $encoded_data_array as $key => $value ) {
265
-		if ( false !== strpos( $key, 'amp;' ) ) {
266
-			$new_key = str_replace( '&amp;', '&', $key );
267
-			$new_key = str_replace( 'amp;', '&' , $new_key );
264
+	foreach ($encoded_data_array as $key => $value) {
265
+		if (false !== strpos($key, 'amp;')) {
266
+			$new_key = str_replace('&amp;', '&', $key);
267
+			$new_key = str_replace('amp;', '&', $new_key);
268 268
 
269
-			unset( $encoded_data_array[ $key ] );
270
-			$encoded_data_array[ $new_key ] = $value;
269
+			unset($encoded_data_array[$key]);
270
+			$encoded_data_array[$new_key] = $value;
271 271
 		}
272 272
 	}
273 273
 
274 274
 	// Get the PayPal redirect uri
275
-	$paypal_redirect = wpinv_get_paypal_redirect( true );
275
+	$paypal_redirect = wpinv_get_paypal_redirect(true);
276 276
 
277
-	if ( !wpinv_get_option( 'disable_paypal_verification', false ) ) {
277
+	if (!wpinv_get_option('disable_paypal_verification', false)) {
278 278
 		// Validate the IPN
279 279
 
280
-		$remote_post_vars      = array(
280
+		$remote_post_vars = array(
281 281
 			'method'           => 'POST',
282 282
 			'timeout'          => 45,
283 283
 			'redirection'      => 5,
@@ -295,21 +295,21 @@  discard block
 block discarded – undo
295 295
 		);
296 296
 
297 297
 		// Get response
298
-		$api_response = wp_remote_post( wpinv_get_paypal_redirect(), $remote_post_vars );
298
+		$api_response = wp_remote_post(wpinv_get_paypal_redirect(), $remote_post_vars);
299 299
 
300
-		if ( is_wp_error( $api_response ) ) {
301
-			wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid IPN verification response. IPN data: %s', 'invoicing' ), json_encode( $api_response ) ) );
300
+		if (is_wp_error($api_response)) {
301
+			wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid IPN verification response. IPN data: %s', 'invoicing'), json_encode($api_response)));
302 302
 			return; // Something went wrong
303 303
 		}
304 304
 
305
-		if ( $api_response['body'] !== 'VERIFIED' && wpinv_get_option( 'disable_paypal_verification', false ) ) {
306
-			wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid IPN verification response. IPN data: %s', 'invoicing' ), json_encode( $api_response ) ) );
305
+		if ($api_response['body'] !== 'VERIFIED' && wpinv_get_option('disable_paypal_verification', false)) {
306
+			wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid IPN verification response. IPN data: %s', 'invoicing'), json_encode($api_response)));
307 307
 			return; // Response not okay
308 308
 		}
309 309
 	}
310 310
 
311 311
 	// Check if $post_data_array has been populated
312
-	if ( !is_array( $encoded_data_array ) && !empty( $encoded_data_array ) )
312
+	if (!is_array($encoded_data_array) && !empty($encoded_data_array))
313 313
 		return;
314 314
 
315 315
 	$defaults = array(
@@ -317,265 +317,265 @@  discard block
 block discarded – undo
317 317
 		'payment_status' => ''
318 318
 	);
319 319
 
320
-	$encoded_data_array = wp_parse_args( $encoded_data_array, $defaults );
320
+	$encoded_data_array = wp_parse_args($encoded_data_array, $defaults);
321 321
 
322
-	$invoice_id = isset( $encoded_data_array['custom'] ) ? absint( $encoded_data_array['custom'] ) : 0;
322
+	$invoice_id = isset($encoded_data_array['custom']) ? absint($encoded_data_array['custom']) : 0;
323 323
     
324
-	wpinv_error_log( $encoded_data_array['txn_type'], 'PayPal txn_type', __FILE__, __LINE__ );
325
-	wpinv_error_log( $encoded_data_array, 'PayPal IPN response', __FILE__, __LINE__ );
324
+	wpinv_error_log($encoded_data_array['txn_type'], 'PayPal txn_type', __FILE__, __LINE__);
325
+	wpinv_error_log($encoded_data_array, 'PayPal IPN response', __FILE__, __LINE__);
326 326
 
327
-	if ( has_action( 'wpinv_paypal_' . $encoded_data_array['txn_type'] ) ) {
327
+	if (has_action('wpinv_paypal_' . $encoded_data_array['txn_type'])) {
328 328
 		// Allow PayPal IPN types to be processed separately
329
-		do_action( 'wpinv_paypal_' . $encoded_data_array['txn_type'], $encoded_data_array, $invoice_id );
329
+		do_action('wpinv_paypal_' . $encoded_data_array['txn_type'], $encoded_data_array, $invoice_id);
330 330
 	} else {
331 331
 		// Fallback to web accept just in case the txn_type isn't present
332
-		do_action( 'wpinv_paypal_web_accept', $encoded_data_array, $invoice_id );
332
+		do_action('wpinv_paypal_web_accept', $encoded_data_array, $invoice_id);
333 333
 	}
334 334
 	exit;
335 335
 }
336
-add_action( 'wpinv_verify_paypal_ipn', 'wpinv_process_paypal_ipn' );
336
+add_action('wpinv_verify_paypal_ipn', 'wpinv_process_paypal_ipn');
337 337
 
338
-function wpinv_process_paypal_web_accept_and_cart( $data, $invoice_id ) {
339
-	if ( $data['txn_type'] != 'web_accept' && $data['txn_type'] != 'cart' && $data['payment_status'] != 'Refunded' ) {
338
+function wpinv_process_paypal_web_accept_and_cart($data, $invoice_id) {
339
+	if ($data['txn_type'] != 'web_accept' && $data['txn_type'] != 'cart' && $data['payment_status'] != 'Refunded') {
340 340
 		return;
341 341
 	}
342 342
 
343
-	if( empty( $invoice_id ) ) {
343
+	if (empty($invoice_id)) {
344 344
 		return;
345 345
 	}
346 346
 
347 347
 	// Collect payment details
348
-	$purchase_key   = isset( $data['invoice'] ) ? $data['invoice'] : $data['item_number'];
348
+	$purchase_key   = isset($data['invoice']) ? $data['invoice'] : $data['item_number'];
349 349
 	$paypal_amount  = $data['mc_gross'];
350
-	$payment_status = strtolower( $data['payment_status'] );
351
-	$currency_code  = strtolower( $data['mc_currency'] );
352
-	$business_email = isset( $data['business'] ) && is_email( $data['business'] ) ? trim( $data['business'] ) : trim( $data['receiver_email'] );
353
-	$payment_meta   = wpinv_get_invoice_meta( $invoice_id );
350
+	$payment_status = strtolower($data['payment_status']);
351
+	$currency_code  = strtolower($data['mc_currency']);
352
+	$business_email = isset($data['business']) && is_email($data['business']) ? trim($data['business']) : trim($data['receiver_email']);
353
+	$payment_meta   = wpinv_get_invoice_meta($invoice_id);
354 354
 
355
-	if ( wpinv_get_payment_gateway( $invoice_id ) != 'paypal' ) {
355
+	if (wpinv_get_payment_gateway($invoice_id) != 'paypal') {
356 356
 		return; // this isn't a PayPal standard IPN
357 357
 	}
358 358
 
359 359
 	// Verify payment recipient
360
-	if ( strcasecmp( $business_email, trim( wpinv_get_option( 'paypal_email', false ) ) ) != 0 ) {
361
-		wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid business email in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id );
362
-		wpinv_update_payment_status( $invoice_id, 'wpi-failed' );
363
-		wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid PayPal business email.', 'invoicing' ), '', '', true );
360
+	if (strcasecmp($business_email, trim(wpinv_get_option('paypal_email', false))) != 0) {
361
+		wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid business email in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id);
362
+		wpinv_update_payment_status($invoice_id, 'wpi-failed');
363
+		wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid PayPal business email.', 'invoicing'), '', '', true);
364 364
 		return;
365 365
 	}
366 366
 
367 367
 	// Verify payment currency
368
-	if ( $currency_code != strtolower( $payment_meta['currency'] ) ) {
369
-		wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid currency in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id );
370
-		wpinv_update_payment_status( $invoice_id, 'wpi-failed' );
371
-		wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid currency in PayPal IPN.', 'invoicing' ), '', '', true );
368
+	if ($currency_code != strtolower($payment_meta['currency'])) {
369
+		wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid currency in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id);
370
+		wpinv_update_payment_status($invoice_id, 'wpi-failed');
371
+		wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid currency in PayPal IPN.', 'invoicing'), '', '', true);
372 372
 		return;
373 373
 	}
374 374
 
375
-	if ( !wpinv_get_payment_user_email( $invoice_id ) ) {
375
+	if (!wpinv_get_payment_user_email($invoice_id)) {
376 376
 		// This runs when a Buy Now purchase was made. It bypasses checkout so no personal info is collected until PayPal
377 377
 		// No email associated with purchase, so store from PayPal
378
-		wpinv_update_invoice_meta( $invoice_id, '_wpinv_email', $data['payer_email'] );
378
+		wpinv_update_invoice_meta($invoice_id, '_wpinv_email', $data['payer_email']);
379 379
 
380 380
 		// Setup and store the customer's details
381 381
 		$user_info = array(
382 382
 			'user_id'    => '-1',
383
-			'email'      => sanitize_text_field( $data['payer_email'] ),
384
-			'first_name' => sanitize_text_field( $data['first_name'] ),
385
-			'last_name'  => sanitize_text_field( $data['last_name'] ),
383
+			'email'      => sanitize_text_field($data['payer_email']),
384
+			'first_name' => sanitize_text_field($data['first_name']),
385
+			'last_name'  => sanitize_text_field($data['last_name']),
386 386
 			'discount'   => '',
387 387
 		);
388
-		$user_info['address'] = ! empty( $data['address_street']       ) ? sanitize_text_field( $data['address_street'] )       : false;
389
-		$user_info['city']    = ! empty( $data['address_city']         ) ? sanitize_text_field( $data['address_city'] )         : false;
390
-		$user_info['state']   = ! empty( $data['address_state']        ) ? sanitize_text_field( $data['address_state'] )        : false;
391
-		$user_info['country'] = ! empty( $data['address_country_code'] ) ? sanitize_text_field( $data['address_country_code'] ) : false;
392
-		$user_info['zip']     = ! empty( $data['address_zip']          ) ? sanitize_text_field( $data['address_zip'] )          : false;
388
+		$user_info['address'] = !empty($data['address_street']) ? sanitize_text_field($data['address_street']) : false;
389
+		$user_info['city']    = !empty($data['address_city']) ? sanitize_text_field($data['address_city']) : false;
390
+		$user_info['state']   = !empty($data['address_state']) ? sanitize_text_field($data['address_state']) : false;
391
+		$user_info['country'] = !empty($data['address_country_code']) ? sanitize_text_field($data['address_country_code']) : false;
392
+		$user_info['zip']     = !empty($data['address_zip']) ? sanitize_text_field($data['address_zip']) : false;
393 393
 
394 394
 		$payment_meta['user_info'] = $user_info;
395
-		wpinv_update_invoice_meta( $invoice_id, '_wpinv_payment_meta', $payment_meta );
395
+		wpinv_update_invoice_meta($invoice_id, '_wpinv_payment_meta', $payment_meta);
396 396
 	}
397 397
 
398
-	if ( $payment_status == 'refunded' || $payment_status == 'reversed' ) {
398
+	if ($payment_status == 'refunded' || $payment_status == 'reversed') {
399 399
 		// Process a refund
400
-		wpinv_process_paypal_refund( $data, $invoice_id );
400
+		wpinv_process_paypal_refund($data, $invoice_id);
401 401
 	} else {
402
-		if ( get_post_status( $invoice_id ) == 'publish' ) {
402
+		if (get_post_status($invoice_id) == 'publish') {
403 403
 			return; // Only paid payments once
404 404
 		}
405 405
 
406 406
 		// Retrieve the total purchase amount (before PayPal)
407
-		$payment_amount = wpinv_payment_total( $invoice_id );
407
+		$payment_amount = wpinv_payment_total($invoice_id);
408 408
 
409
-		if ( number_format( (float) $paypal_amount, 2 ) < number_format( (float) $payment_amount, 2 ) ) {
409
+		if (number_format((float) $paypal_amount, 2) < number_format((float) $payment_amount, 2)) {
410 410
 			// The prices don't match
411
-			wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid payment amount in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id );
412
-			wpinv_update_payment_status( $invoice_id, 'wpi-failed' );
413
-			wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid amount in PayPal IPN.', 'invoicing' ), '', '', true );
411
+			wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid payment amount in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id);
412
+			wpinv_update_payment_status($invoice_id, 'wpi-failed');
413
+			wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid amount in PayPal IPN.', 'invoicing'), '', '', true);
414 414
 			return;
415 415
 		}
416
-		if ( $purchase_key != wpinv_get_payment_key( $invoice_id ) ) {
416
+		if ($purchase_key != wpinv_get_payment_key($invoice_id)) {
417 417
 			// Purchase keys don't match
418
-			wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid purchase key in IPN response. IPN data: %s', 'invoicing' ), json_encode( $data ) ), $invoice_id );
419
-			wpinv_update_payment_status( $invoice_id, 'wpi-failed' );
420
-			wpinv_insert_payment_note( $invoice_id, __( 'Payment failed due to invalid purchase key in PayPal IPN.', 'invoicing' ), '', '', true );
418
+			wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid purchase key in IPN response. IPN data: %s', 'invoicing'), json_encode($data)), $invoice_id);
419
+			wpinv_update_payment_status($invoice_id, 'wpi-failed');
420
+			wpinv_insert_payment_note($invoice_id, __('Payment failed due to invalid purchase key in PayPal IPN.', 'invoicing'), '', '', true);
421 421
 			return;
422 422
 		}
423 423
 
424
-		if ( 'complete' == $payment_status || 'completed' == $payment_status || 'processed' == $payment_status || wpinv_is_test_mode( 'paypal' ) ) {
425
-			wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $data['txn_id'] ), '', '', true );
426
-			wpinv_set_payment_transaction_id( $invoice_id, $data['txn_id'] );
427
-			wpinv_update_payment_status( $invoice_id, 'publish' );
428
-		} else if ( 'pending' == $payment_status && isset( $data['pending_reason'] ) ) {
424
+		if ('complete' == $payment_status || 'completed' == $payment_status || 'processed' == $payment_status || wpinv_is_test_mode('paypal')) {
425
+			wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $data['txn_id']), '', '', true);
426
+			wpinv_set_payment_transaction_id($invoice_id, $data['txn_id']);
427
+			wpinv_update_payment_status($invoice_id, 'publish');
428
+		} else if ('pending' == $payment_status && isset($data['pending_reason'])) {
429 429
 			// Look for possible pending reasons, such as an echeck
430 430
 			$note = '';
431 431
 
432
-			switch( strtolower( $data['pending_reason'] ) ) {
432
+			switch (strtolower($data['pending_reason'])) {
433 433
 				case 'echeck' :
434
-					$note = __( 'Payment made via eCheck and will clear automatically in 5-8 days', 'invoicing' );
434
+					$note = __('Payment made via eCheck and will clear automatically in 5-8 days', 'invoicing');
435 435
 					break;
436 436
 				
437 437
                 case 'address' :
438
-					$note = __( 'Payment requires a confirmed customer address and must be accepted manually through PayPal', 'invoicing' );
438
+					$note = __('Payment requires a confirmed customer address and must be accepted manually through PayPal', 'invoicing');
439 439
 					break;
440 440
 				
441 441
                 case 'intl' :
442
-					$note = __( 'Payment must be accepted manually through PayPal due to international account regulations', 'invoicing' );
442
+					$note = __('Payment must be accepted manually through PayPal due to international account regulations', 'invoicing');
443 443
 					break;
444 444
 				
445 445
                 case 'multi-currency' :
446
-					$note = __( 'Payment received in non-shop currency and must be accepted manually through PayPal', 'invoicing' );
446
+					$note = __('Payment received in non-shop currency and must be accepted manually through PayPal', 'invoicing');
447 447
 					break;
448 448
 				
449 449
                 case 'paymentreview' :
450 450
                 case 'regulatory_review' :
451
-					$note = __( 'Payment is being reviewed by PayPal staff as high-risk or in possible violation of government regulations', 'invoicing' );
451
+					$note = __('Payment is being reviewed by PayPal staff as high-risk or in possible violation of government regulations', 'invoicing');
452 452
 					break;
453 453
 				
454 454
                 case 'unilateral' :
455
-					$note = __( 'Payment was sent to non-confirmed or non-registered email address.', 'invoicing' );
455
+					$note = __('Payment was sent to non-confirmed or non-registered email address.', 'invoicing');
456 456
 					break;
457 457
 				
458 458
                 case 'upgrade' :
459
-					$note = __( 'PayPal account must be upgraded before this payment can be accepted', 'invoicing' );
459
+					$note = __('PayPal account must be upgraded before this payment can be accepted', 'invoicing');
460 460
 					break;
461 461
 				
462 462
                 case 'verify' :
463
-					$note = __( 'PayPal account is not verified. Verify account in order to accept this payment', 'invoicing' );
463
+					$note = __('PayPal account is not verified. Verify account in order to accept this payment', 'invoicing');
464 464
 					break;
465 465
 
466 466
 				case 'other' :
467
-					$note = __( 'Payment is pending for unknown reasons. Contact PayPal support for assistance', 'invoicing' );
467
+					$note = __('Payment is pending for unknown reasons. Contact PayPal support for assistance', 'invoicing');
468 468
 					break;
469 469
 			}
470 470
 
471
-			if ( ! empty( $note ) ) {
472
-				wpinv_insert_payment_note( $invoice_id, $note, '', '', true );
471
+			if (!empty($note)) {
472
+				wpinv_insert_payment_note($invoice_id, $note, '', '', true);
473 473
 			}
474 474
 		} else {
475
-			wpinv_insert_payment_note( $invoice_id, wp_sprintf( __( 'PayPal IPN has been received with invalid payment status: %s', 'invoicing' ), $payment_status ), '', '', true );
475
+			wpinv_insert_payment_note($invoice_id, wp_sprintf(__('PayPal IPN has been received with invalid payment status: %s', 'invoicing'), $payment_status), '', '', true);
476 476
 		}
477 477
 	}
478 478
 }
479
-add_action( 'wpinv_paypal_web_accept', 'wpinv_process_paypal_web_accept_and_cart', 10, 2 );
479
+add_action('wpinv_paypal_web_accept', 'wpinv_process_paypal_web_accept_and_cart', 10, 2);
480 480
 
481 481
 // Process PayPal subscription sign ups
482
-add_action( 'wpinv_paypal_subscr_signup', 'wpinv_process_paypal_subscr_signup' );
482
+add_action('wpinv_paypal_subscr_signup', 'wpinv_process_paypal_subscr_signup');
483 483
 
484 484
 // Process PayPal subscription payments
485
-add_action( 'wpinv_paypal_subscr_payment', 'wpinv_process_paypal_subscr_payment' );
485
+add_action('wpinv_paypal_subscr_payment', 'wpinv_process_paypal_subscr_payment');
486 486
 
487 487
 // Process PayPal subscription cancellations
488
-add_action( 'wpinv_paypal_subscr_cancel', 'wpinv_process_paypal_subscr_cancel' );
488
+add_action('wpinv_paypal_subscr_cancel', 'wpinv_process_paypal_subscr_cancel');
489 489
 
490 490
 // Process PayPal subscription end of term notices
491
-add_action( 'wpinv_paypal_subscr_eot', 'wpinv_process_paypal_subscr_eot' );
491
+add_action('wpinv_paypal_subscr_eot', 'wpinv_process_paypal_subscr_eot');
492 492
 
493 493
 // Process PayPal payment failed
494
-add_action( 'wpinv_paypal_subscr_failed', 'wpinv_process_paypal_subscr_failed' );
494
+add_action('wpinv_paypal_subscr_failed', 'wpinv_process_paypal_subscr_failed');
495 495
 
496 496
 
497 497
 /**
498 498
  * Process the subscription started IPN.
499 499
  */
500
-function wpinv_process_paypal_subscr_signup( $ipn_data ) {
501
-    $parent_invoice_id = absint( $ipn_data['custom'] );
502
-    if( empty( $parent_invoice_id ) ) {
500
+function wpinv_process_paypal_subscr_signup($ipn_data) {
501
+    $parent_invoice_id = absint($ipn_data['custom']);
502
+    if (empty($parent_invoice_id)) {
503 503
         return;
504 504
     }
505 505
 
506
-    $invoice = wpinv_get_invoice( $parent_invoice_id );
507
-    if ( empty( $invoice ) ) {
506
+    $invoice = wpinv_get_invoice($parent_invoice_id);
507
+    if (empty($invoice)) {
508 508
         return;
509 509
     }
510 510
 
511
-    if ( $invoice->is_free_trial() && !empty( $ipn_data['invoice'] ) ) {
512
-        wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Invoice ID: %s', 'invoicing' ) , $ipn_data['invoice'] ), '', '', true);
513
-        if ( !empty( $ipn_data['txn_id'] ) ) {
514
-            wpinv_set_payment_transaction_id( $parent_invoice_id, $ipn_data['txn_id'] );
511
+    if ($invoice->is_free_trial() && !empty($ipn_data['invoice'])) {
512
+        wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Invoice ID: %s', 'invoicing'), $ipn_data['invoice']), '', '', true);
513
+        if (!empty($ipn_data['txn_id'])) {
514
+            wpinv_set_payment_transaction_id($parent_invoice_id, $ipn_data['txn_id']);
515 515
         }
516 516
     }
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
-    wpinv_update_payment_status( $parent_invoice_id, 'publish' );
523
+    wpinv_update_payment_status($parent_invoice_id, 'publish');
524 524
     sleep(1);
525
-    wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Subscription ID: %s', 'invoicing' ) , $ipn_data['subscr_id'] ), '', '', true );
526
-    update_post_meta($parent_invoice_id,'_wpinv_subscr_profile_id', $ipn_data['subscr_id']);
525
+    wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Subscription ID: %s', 'invoicing'), $ipn_data['subscr_id']), '', '', true);
526
+    update_post_meta($parent_invoice_id, '_wpinv_subscr_profile_id', $ipn_data['subscr_id']);
527 527
 
528 528
     $status     = 'trialling' == $subscription->status ? 'trialling' : 'active';
529
-    $diff_days  = absint( ( ( strtotime( $subscription->expiration ) - strtotime( $subscription->created ) ) / DAY_IN_SECONDS ) );
530
-    $created    = date_i18n( 'Y-m-d H:i:s' );
531
-    $expiration = date_i18n( 'Y-m-d 23:59:59', ( strtotime( $created ) + ( $diff_days * DAY_IN_SECONDS ) ) );
529
+    $diff_days  = absint(((strtotime($subscription->expiration) - strtotime($subscription->created)) / DAY_IN_SECONDS));
530
+    $created    = date_i18n('Y-m-d H:i:s');
531
+    $expiration = date_i18n('Y-m-d 23:59:59', (strtotime($created) + ($diff_days * DAY_IN_SECONDS)));
532 532
 
533 533
     // Retrieve pending subscription from database and update it's status to active and set proper profile ID
534
-    $subscription->update( array( 'profile_id' => $ipn_data['subscr_id'], 'status' => $status, 'created' => $created, 'expiration' => $expiration ) );
534
+    $subscription->update(array('profile_id' => $ipn_data['subscr_id'], 'status' => $status, 'created' => $created, 'expiration' => $expiration));
535 535
 }
536 536
 
537 537
 /**
538 538
  * Process the subscription payment received IPN.
539 539
  */
540
-function wpinv_process_paypal_subscr_payment( $ipn_data ) {
541
-    $parent_invoice_id = absint( $ipn_data['custom'] );
540
+function wpinv_process_paypal_subscr_payment($ipn_data) {
541
+    $parent_invoice_id = absint($ipn_data['custom']);
542 542
 
543
-    $parent_invoice = wpinv_get_invoice( $parent_invoice_id );
544
-    if ( empty( $parent_invoice ) ) {
543
+    $parent_invoice = wpinv_get_invoice($parent_invoice_id);
544
+    if (empty($parent_invoice)) {
545 545
         return;
546 546
     }
547 547
 
548
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
549
-    if ( false === $subscription ) {
548
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
549
+    if (false === $subscription) {
550 550
         return;
551 551
     }
552 552
 
553
-    $transaction_id = wpinv_get_payment_transaction_id( $parent_invoice_id );
553
+    $transaction_id = wpinv_get_payment_transaction_id($parent_invoice_id);
554 554
     $times_billed   = $subscription->get_times_billed();
555
-    $signup_date    = strtotime( $subscription->created );
556
-    $today          = date( 'Ynd', $signup_date ) == date( 'Ynd', strtotime( $ipn_data['payment_date'] ) );
555
+    $signup_date    = strtotime($subscription->created);
556
+    $today          = date('Ynd', $signup_date) == date('Ynd', strtotime($ipn_data['payment_date']));
557 557
 
558 558
     // Look to see if payment is same day as signup and we have set the transaction ID on the parent payment yet.
559
-    if ( (empty($times_billed) || $today) && ( !$transaction_id || $transaction_id == $parent_invoice_id ) ) {
560
-        wpinv_update_payment_status( $parent_invoice_id, 'publish' );
559
+    if ((empty($times_billed) || $today) && (!$transaction_id || $transaction_id == $parent_invoice_id)) {
560
+        wpinv_update_payment_status($parent_invoice_id, 'publish');
561 561
         sleep(1);
562 562
         
563 563
         // This is the very first payment
564
-        wpinv_set_payment_transaction_id( $parent_invoice_id, $ipn_data['txn_id'] );
565
-        wpinv_insert_payment_note( $parent_invoice_id, sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $ipn_data['txn_id'] ), '', '', true );
564
+        wpinv_set_payment_transaction_id($parent_invoice_id, $ipn_data['txn_id']);
565
+        wpinv_insert_payment_note($parent_invoice_id, sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $ipn_data['txn_id']), '', '', true);
566 566
         return;
567 567
     }
568 568
 
569
-    if ( wpinv_get_id_by_transaction_id( $ipn_data['txn_id'] ) ) {
569
+    if (wpinv_get_id_by_transaction_id($ipn_data['txn_id'])) {
570 570
         return; // Payment already recorded
571 571
     }
572 572
 
573
-    $currency_code = strtolower( $ipn_data['mc_currency'] );
573
+    $currency_code = strtolower($ipn_data['mc_currency']);
574 574
 
575 575
     // verify details
576
-    if ( $currency_code != strtolower( wpinv_get_currency() ) ) {
576
+    if ($currency_code != strtolower(wpinv_get_currency())) {
577 577
         // the currency code is invalid
578
-        wpinv_record_gateway_error( __( 'IPN Error', 'invoicing' ), sprintf( __( 'Invalid currency in IPN response. IPN data: ', 'invoicing' ), json_encode( $ipn_data ) ) );
578
+        wpinv_record_gateway_error(__('IPN Error', 'invoicing'), sprintf(__('Invalid currency in IPN response. IPN data: ', 'invoicing'), json_encode($ipn_data)));
579 579
         return;
580 580
     }
581 581
 
@@ -585,11 +585,11 @@  discard block
 block discarded – undo
585 585
         'gateway'        => 'paypal'
586 586
     );
587 587
     
588
-    $invoice_id = $subscription->add_payment( $args );
588
+    $invoice_id = $subscription->add_payment($args);
589 589
 
590
-    if ( $invoice_id > 0 ) {
591
-        wpinv_insert_payment_note( $invoice_id, wp_sprintf( __( 'PayPal Transaction ID: %s', 'invoicing' ) , $ipn_data['txn_id'] ), '', '', true );
592
-        wpinv_insert_payment_note( $invoice_id, wp_sprintf( __( 'PayPal Subscription ID: %s', 'invoicing' ) , $ipn_data['subscr_id'] ), '', '', true );
590
+    if ($invoice_id > 0) {
591
+        wpinv_insert_payment_note($invoice_id, wp_sprintf(__('PayPal Transaction ID: %s', 'invoicing'), $ipn_data['txn_id']), '', '', true);
592
+        wpinv_insert_payment_note($invoice_id, wp_sprintf(__('PayPal Subscription ID: %s', 'invoicing'), $ipn_data['subscr_id']), '', '', true);
593 593
 
594 594
         $subscription->renew();
595 595
     }
@@ -598,10 +598,10 @@  discard block
 block discarded – undo
598 598
 /**
599 599
  * Process the subscription canceled IPN.
600 600
  */
601
-function wpinv_process_paypal_subscr_cancel( $ipn_data ) {
602
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
601
+function wpinv_process_paypal_subscr_cancel($ipn_data) {
602
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
603 603
 
604
-    if( false === $subscription ) {
604
+    if (false === $subscription) {
605 605
         return;
606 606
     }
607 607
 
@@ -611,10 +611,10 @@  discard block
 block discarded – undo
611 611
 /**
612 612
  * Process the subscription expired IPN.
613 613
  */
614
-function wpinv_process_paypal_subscr_eot( $ipn_data ) {
615
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
614
+function wpinv_process_paypal_subscr_eot($ipn_data) {
615
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
616 616
 
617
-    if( false === $subscription ) {
617
+    if (false === $subscription) {
618 618
         return;
619 619
     }
620 620
 
@@ -624,40 +624,40 @@  discard block
 block discarded – undo
624 624
 /**
625 625
  * Process the subscription payment failed IPN.
626 626
  */
627
-function wpinv_process_paypal_subscr_failed( $ipn_data ) {
628
-    $subscription = wpinv_get_paypal_subscription( $ipn_data );
627
+function wpinv_process_paypal_subscr_failed($ipn_data) {
628
+    $subscription = wpinv_get_paypal_subscription($ipn_data);
629 629
 
630
-    if( false === $subscription ) {
630
+    if (false === $subscription) {
631 631
         return;
632 632
     }
633 633
 
634 634
     $subscription->failing();
635 635
 
636
-    do_action( 'wpinv_recurring_payment_failed', $subscription );
636
+    do_action('wpinv_recurring_payment_failed', $subscription);
637 637
 }
638 638
 
639 639
 /**
640 640
  * Retrieve the subscription this IPN notice is for.
641 641
  */
642
-function wpinv_get_paypal_subscription( $ipn_data = array() ) {
643
-    $parent_invoice_id = absint( $ipn_data['custom'] );
642
+function wpinv_get_paypal_subscription($ipn_data = array()) {
643
+    $parent_invoice_id = absint($ipn_data['custom']);
644 644
 
645
-    if( empty( $parent_invoice_id ) ) {
645
+    if (empty($parent_invoice_id)) {
646 646
         return false;
647 647
     }
648 648
 
649
-    $invoice = wpinv_get_invoice( $parent_invoice_id );
650
-    if ( empty( $invoice ) ) {
649
+    $invoice = wpinv_get_invoice($parent_invoice_id);
650
+    if (empty($invoice)) {
651 651
         return false;
652 652
     }
653 653
 
654
-    $subscription = new WPInv_Subscription( $ipn_data['subscr_id'], true );
654
+    $subscription = new WPInv_Subscription($ipn_data['subscr_id'], true);
655 655
 
656
-    if ( ! ( ! empty( $subscription ) && $subscription->id > 0 ) ) {
657
-        $subscription = wpinv_get_subscription( $parent_invoice_id );
656
+    if (!(!empty($subscription) && $subscription->id > 0)) {
657
+        $subscription = wpinv_get_subscription($parent_invoice_id);
658 658
 
659
-        if ( ! empty( $subscription ) && $subscription->id > 0 ) {
660
-            $subscription->update( array( 'profile_id' => sanitize_text_field( $ipn_data['subscr_id'] ) ) );
659
+        if (!empty($subscription) && $subscription->id > 0) {
660
+            $subscription->update(array('profile_id' => sanitize_text_field($ipn_data['subscr_id'])));
661 661
         } else {
662 662
             return false;
663 663
         }
@@ -667,46 +667,46 @@  discard block
 block discarded – undo
667 667
 
668 668
 }
669 669
 
670
-function wpinv_process_paypal_refund( $data, $invoice_id = 0 ) {
670
+function wpinv_process_paypal_refund($data, $invoice_id = 0) {
671 671
 	// Collect payment details
672 672
 
673
-	if( empty( $invoice_id ) ) {
673
+	if (empty($invoice_id)) {
674 674
 		return;
675 675
 	}
676 676
 
677
-	if ( get_post_status( $invoice_id ) == 'wpi-refunded' ) {
677
+	if (get_post_status($invoice_id) == 'wpi-refunded') {
678 678
 		return; // Only refund payments once
679 679
 	}
680 680
 
681
-	$payment_amount = wpinv_payment_total( $invoice_id );
681
+	$payment_amount = wpinv_payment_total($invoice_id);
682 682
 	$refund_amount  = $data['mc_gross'] * -1;
683 683
 
684
-	do_action( 'wpinv_paypal_refund_request', $data, $invoice_id );
684
+	do_action('wpinv_paypal_refund_request', $data, $invoice_id);
685 685
 
686
-	if ( number_format( (float) $refund_amount, 2 ) < number_format( (float) $payment_amount, 2 ) ) {
687
-		wpinv_insert_payment_note( $invoice_id, wp_sprintf( __( 'PayPal partial refund of %s processed for transaction #%s for reason: %s', 'invoicing' ), (float)$refund_amount . ' '. $data['mc_currency'], $data['parent_txn_id'], $data['reason_code'] ), '', '', true );
686
+	if (number_format((float) $refund_amount, 2) < number_format((float) $payment_amount, 2)) {
687
+		wpinv_insert_payment_note($invoice_id, wp_sprintf(__('PayPal partial refund of %s processed for transaction #%s for reason: %s', 'invoicing'), (float) $refund_amount . ' ' . $data['mc_currency'], $data['parent_txn_id'], $data['reason_code']), '', '', true);
688 688
 
689
-		do_action( 'wpinv_paypal_invoice_partially_refunded', $data, $invoice_id, $refund_amount );
689
+		do_action('wpinv_paypal_invoice_partially_refunded', $data, $invoice_id, $refund_amount);
690 690
 
691 691
 		return; // This is a partial refund
692 692
 	}
693 693
 
694
-	wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Payment #%s Refunded for reason: %s', 'invoicing' ), $data['parent_txn_id'], $data['reason_code'] ), '', '', true );
695
-	wpinv_insert_payment_note( $invoice_id, sprintf( __( 'PayPal Refund Transaction ID: %s', 'invoicing' ), $data['txn_id'] ), '', '', true );
696
-	wpinv_update_payment_status( $invoice_id, 'wpi-refunded' );
694
+	wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Payment #%s Refunded for reason: %s', 'invoicing'), $data['parent_txn_id'], $data['reason_code']), '', '', true);
695
+	wpinv_insert_payment_note($invoice_id, sprintf(__('PayPal Refund Transaction ID: %s', 'invoicing'), $data['txn_id']), '', '', true);
696
+	wpinv_update_payment_status($invoice_id, 'wpi-refunded');
697 697
 
698
-	do_action( 'wpinv_paypal_invoice_fully_refunded', $data, $invoice_id );
698
+	do_action('wpinv_paypal_invoice_fully_refunded', $data, $invoice_id);
699 699
 }
700 700
 
701
-function wpinv_get_paypal_redirect( $ssl_check = false ) {
702
-    if ( is_ssl() || ! $ssl_check ) {
701
+function wpinv_get_paypal_redirect($ssl_check = false) {
702
+    if (is_ssl() || !$ssl_check) {
703 703
         $protocol = 'https://';
704 704
     } else {
705 705
         $protocol = 'http://';
706 706
     }
707 707
 
708 708
     // Check the current payment mode
709
-    if ( wpinv_is_test_mode( 'paypal' ) ) {
709
+    if (wpinv_is_test_mode('paypal')) {
710 710
         // Test mode
711 711
         $paypal_uri = $protocol . 'www.sandbox.paypal.com/cgi-bin/webscr';
712 712
     } else {
@@ -714,120 +714,120 @@  discard block
 block discarded – undo
714 714
         $paypal_uri = $protocol . 'www.paypal.com/cgi-bin/webscr';
715 715
     }
716 716
 
717
-    return apply_filters( 'wpinv_paypal_uri', $paypal_uri );
717
+    return apply_filters('wpinv_paypal_uri', $paypal_uri);
718 718
 }
719 719
 
720
-function wpinv_paypal_success_page_content( $content ) {
720
+function wpinv_paypal_success_page_content($content) {
721 721
     global $wpi_invoice;
722 722
     
723 723
     $session = wpinv_get_checkout_session();
724 724
 
725
-    if ( empty( $_GET['invoice-id'] ) && empty( $session['invoice_key'] )  ) {
725
+    if (empty($_GET['invoice-id']) && empty($session['invoice_key'])) {
726 726
         return $content;
727 727
     }
728 728
 
729
-    $invoice_id = !empty( $_GET['invoice-id'] ) ? absint( $_GET['invoice-id'] ) : wpinv_get_invoice_id_by_key( $session['invoice_key'] );
729
+    $invoice_id = !empty($_GET['invoice-id']) ? absint($_GET['invoice-id']) : wpinv_get_invoice_id_by_key($session['invoice_key']);
730 730
 
731
-    if ( empty(  $invoice_id ) ) {
731
+    if (empty($invoice_id)) {
732 732
         return $content;
733 733
     }
734 734
 
735
-    $wpi_invoice = wpinv_get_invoice( $invoice_id );
735
+    $wpi_invoice = wpinv_get_invoice($invoice_id);
736 736
     
737
-    if ( !empty( $wpi_invoice ) && 'wpi-pending' == $wpi_invoice->status ) {
737
+    if (!empty($wpi_invoice) && 'wpi-pending' == $wpi_invoice->status) {
738 738
         // Payment is still pending so show processing indicator to fix the Race Condition, issue #
739 739
         ob_start();
740
-        wpinv_get_template_part( 'wpinv-payment-processing' );
740
+        wpinv_get_template_part('wpinv-payment-processing');
741 741
         $content = ob_get_clean();
742 742
     }
743 743
 
744 744
     return $content;
745 745
 }
746
-add_filter( 'wpinv_payment_confirm_paypal', 'wpinv_paypal_success_page_content' );
746
+add_filter('wpinv_payment_confirm_paypal', 'wpinv_paypal_success_page_content');
747 747
 
748
-function wpinv_paypal_get_transaction_id( $invoice_id ) {
748
+function wpinv_paypal_get_transaction_id($invoice_id) {
749 749
     $transaction_id = '';
750
-    $notes = wpinv_get_invoice_notes( $invoice_id );
750
+    $notes = wpinv_get_invoice_notes($invoice_id);
751 751
 
752
-    foreach ( $notes as $note ) {
753
-        if ( preg_match( '/^PayPal Transaction ID: ([^\s]+)/', $note->comment_content, $match ) ) {
752
+    foreach ($notes as $note) {
753
+        if (preg_match('/^PayPal Transaction ID: ([^\s]+)/', $note->comment_content, $match)) {
754 754
             $transaction_id = $match[1];
755 755
             continue;
756 756
         }
757 757
     }
758 758
 
759
-    return apply_filters( 'wpinv_paypal_set_transaction_id', $transaction_id, $invoice_id );
759
+    return apply_filters('wpinv_paypal_set_transaction_id', $transaction_id, $invoice_id);
760 760
 }
761
-add_filter( 'wpinv_payment_get_transaction_id-paypal', 'wpinv_paypal_get_transaction_id', 10, 1 );
761
+add_filter('wpinv_payment_get_transaction_id-paypal', 'wpinv_paypal_get_transaction_id', 10, 1);
762 762
 
763
-function wpinv_paypal_link_transaction_id( $transaction_id, $invoice_id, $invoice ) {
764
-    if ( $transaction_id == $invoice_id ) {
763
+function wpinv_paypal_link_transaction_id($transaction_id, $invoice_id, $invoice) {
764
+    if ($transaction_id == $invoice_id) {
765 765
         $transaction_link = $transaction_id;
766 766
     } else {
767
-        if ( ! empty( $invoice ) && ! empty( $invoice->mode ) ) {
767
+        if (!empty($invoice) && !empty($invoice->mode)) {
768 768
             $mode = $invoice->mode;
769 769
         } else {
770
-            $mode = wpinv_is_test_mode( 'paypal' ) ? 'test' : 'live';
770
+            $mode = wpinv_is_test_mode('paypal') ? 'test' : 'live';
771 771
         }
772 772
 
773 773
         $sandbox = $mode == 'test' ? '.sandbox' : '';
774 774
         $transaction_url = 'https://www' . $sandbox . '.paypal.com/webscr?cmd=_history-details-from-hub&id=' . $transaction_id;
775 775
 
776
-        $transaction_link = '<a href="' . esc_url( $transaction_url ) . '" target="_blank">' . $transaction_id . '</a>';
776
+        $transaction_link = '<a href="' . esc_url($transaction_url) . '" target="_blank">' . $transaction_id . '</a>';
777 777
     }
778 778
 
779
-    return apply_filters( 'wpinv_paypal_link_payment_details_transaction_id', $transaction_link, $transaction_id, $invoice );
779
+    return apply_filters('wpinv_paypal_link_payment_details_transaction_id', $transaction_link, $transaction_id, $invoice);
780 780
 }
781
-add_filter( 'wpinv_payment_details_transaction_id-paypal', 'wpinv_paypal_link_transaction_id', 10, 3 );
781
+add_filter('wpinv_payment_details_transaction_id-paypal', 'wpinv_paypal_link_transaction_id', 10, 3);
782 782
 
783
-function wpinv_paypal_profile_id_link( $profile_id, $subscription ) {
783
+function wpinv_paypal_profile_id_link($profile_id, $subscription) {
784 784
     $link = $profile_id;
785 785
 
786
-    if ( ! empty( $profile_id ) && ! empty( $subscription ) && ( $invoice_id = $subscription->get_original_payment_id() ) ) {
787
-        $invoice = wpinv_get_invoice( $invoice_id );
786
+    if (!empty($profile_id) && !empty($subscription) && ($invoice_id = $subscription->get_original_payment_id())) {
787
+        $invoice = wpinv_get_invoice($invoice_id);
788 788
 
789
-        if ( ! empty( $invoice ) && ! empty( $invoice->mode ) ) {
789
+        if (!empty($invoice) && !empty($invoice->mode)) {
790 790
             $mode = $invoice->mode;
791 791
         } else {
792
-            $mode = wpinv_is_test_mode( 'paypal' ) ? 'test' : 'live';
792
+            $mode = wpinv_is_test_mode('paypal') ? 'test' : 'live';
793 793
         }
794 794
 
795 795
         $sandbox = $mode == 'test' ? '.sandbox' : '';
796 796
         $url = 'https://www' . $sandbox . '.paypal.com/cgi-bin/webscr?cmd=_profile-recurring-payments&encrypted_profile_id=' . $profile_id;
797 797
 
798
-        $link = '<a href="' . esc_url( $url ) . '" target="_blank">' . $profile_id . '</a>';
798
+        $link = '<a href="' . esc_url($url) . '" target="_blank">' . $profile_id . '</a>';
799 799
     }
800 800
     
801
-    return apply_filters( 'wpinv_paypal_profile_id_link', $link, $profile_id, $subscription );
801
+    return apply_filters('wpinv_paypal_profile_id_link', $link, $profile_id, $subscription);
802 802
 }
803
-add_filter( 'wpinv_subscription_profile_link_paypal', 'wpinv_paypal_profile_id_link', 10, 2 );
803
+add_filter('wpinv_subscription_profile_link_paypal', 'wpinv_paypal_profile_id_link', 10, 2);
804 804
 
805
-function wpinv_paypal_transaction_id_link( $transaction_id, $subscription ) {
806
-    if ( ! empty( $transaction_id ) && ! empty( $subscription ) && ( $invoice_id = $subscription->get_original_payment_id() ) ) {
807
-        $invoice = wpinv_get_invoice( $invoice_id );
805
+function wpinv_paypal_transaction_id_link($transaction_id, $subscription) {
806
+    if (!empty($transaction_id) && !empty($subscription) && ($invoice_id = $subscription->get_original_payment_id())) {
807
+        $invoice = wpinv_get_invoice($invoice_id);
808 808
 
809
-        if ( ! empty( $invoice ) ) {
810
-            return wpinv_paypal_link_transaction_id( $transaction_id, $invoice_id, $invoice );
809
+        if (!empty($invoice)) {
810
+            return wpinv_paypal_link_transaction_id($transaction_id, $invoice_id, $invoice);
811 811
         }        
812 812
     }
813 813
     
814 814
     return $transaction_id;
815 815
 }
816
-add_filter( 'wpinv_subscription_transaction_link_paypal', 'wpinv_paypal_transaction_id_link', 10, 2 );
816
+add_filter('wpinv_subscription_transaction_link_paypal', 'wpinv_paypal_transaction_id_link', 10, 2);
817 817
 
818 818
 function wpinv_is_paypal_valid_for_use() {
819
-    return in_array( wpinv_get_currency(), apply_filters( 'wpinv_paypal_supported_currencies', array( 'AUD', 'BRL', 'CAD', 'MXN', 'NZD', 'HKD', 'SGD', 'USD', 'EUR', 'JPY', 'TRY', 'NOK', 'CZK', 'DKK', 'HUF', 'ILS', 'MYR', 'PHP', 'PLN', 'SEK', 'CHF', 'TWD', 'THB', 'GBP', 'RMB', 'RUB', 'INR' ) ) );
819
+    return in_array(wpinv_get_currency(), apply_filters('wpinv_paypal_supported_currencies', array('AUD', 'BRL', 'CAD', 'MXN', 'NZD', 'HKD', 'SGD', 'USD', 'EUR', 'JPY', 'TRY', 'NOK', 'CZK', 'DKK', 'HUF', 'ILS', 'MYR', 'PHP', 'PLN', 'SEK', 'CHF', 'TWD', 'THB', 'GBP', 'RMB', 'RUB', 'INR')));
820 820
 }
821 821
 
822
-function wpinv_check_paypal_currency_support( $gateway_list ) {
823
-    if ( isset( $gateway_list['paypal'] ) && ! wpinv_is_paypal_valid_for_use() ) {
824
-        unset( $gateway_list['paypal'] );
822
+function wpinv_check_paypal_currency_support($gateway_list) {
823
+    if (isset($gateway_list['paypal']) && !wpinv_is_paypal_valid_for_use()) {
824
+        unset($gateway_list['paypal']);
825 825
     }
826 826
     return $gateway_list;
827 827
 }
828
-add_filter( 'wpinv_enabled_payment_gateways', 'wpinv_check_paypal_currency_support', 10, 1 );
828
+add_filter('wpinv_enabled_payment_gateways', 'wpinv_check_paypal_currency_support', 10, 1);
829 829
 
830
-function wpinv_gateway_paypal_button_label( $label ) {
831
-    return __( 'Proceed to PayPal', 'invoicing' );
830
+function wpinv_gateway_paypal_button_label($label) {
831
+    return __('Proceed to PayPal', 'invoicing');
832 832
 }
833
-add_filter( 'wpinv_gateway_paypal_button_label', 'wpinv_gateway_paypal_button_label', 10, 1 );
834 833
\ No newline at end of file
834
+add_filter('wpinv_gateway_paypal_button_label', 'wpinv_gateway_paypal_button_label', 10, 1);
835 835
\ No newline at end of file
Please login to merge, or discard this patch.
includes/api/class-wpinv-rest-invoice-controller.php 1 patch
Spacing   +325 added lines, -325 removed lines patch added patch discarded remove patch
@@ -8,7 +8,7 @@  discard block
 block discarded – undo
8 8
  * @since    1.0.13
9 9
  */
10 10
 
11
-if ( !defined( 'WPINC' ) ) {
11
+if (!defined('WPINC')) {
12 12
     exit;
13 13
 }
14 14
 
@@ -41,7 +41,7 @@  discard block
 block discarded – undo
41 41
 	 *
42 42
 	 * @param string $namespace Api Namespace
43 43
 	 */
44
-	public function __construct( $namespace ) {
44
+	public function __construct($namespace) {
45 45
         
46 46
         // Set api namespace...
47 47
 		$this->namespace = $namespace;
@@ -60,16 +60,16 @@  discard block
 block discarded – undo
60 60
 	 * @param WP_REST_Request $request Full details about the request.
61 61
 	 * @return true|WP_Error True if the request has read access, WP_Error object otherwise.
62 62
 	 */
63
-	public function get_items_permissions_check( $request ) {
63
+	public function get_items_permissions_check($request) {
64 64
 	
65
-        $post_type = get_post_type_object( $this->post_type );
65
+        $post_type = get_post_type_object($this->post_type);
66 66
 
67
-		if ( 'edit' === $request['context'] && ! current_user_can( $post_type->cap->edit_posts ) ) {
68
-			return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit items.', 'invoicing' ), array( 'status' => rest_authorization_required_code() ) );
67
+		if ('edit' === $request['context'] && !current_user_can($post_type->cap->edit_posts)) {
68
+			return new WP_Error('rest_forbidden_context', __('Sorry, you are not allowed to edit items.', 'invoicing'), array('status' => rest_authorization_required_code()));
69 69
 		}
70 70
 
71
-		if ( ! is_user_logged_in() ) {
72
-			return new WP_Error( 'rest_forbidden', __( 'Sorry, you must be logged in to view items.', 'invoicing' ), array( 'status' => rest_authorization_required_code() ) );
71
+		if (!is_user_logged_in()) {
72
+			return new WP_Error('rest_forbidden', __('Sorry, you must be logged in to view items.', 'invoicing'), array('status' => rest_authorization_required_code()));
73 73
 		}
74 74
 
75 75
 		// Read checks will be evaluated on a per invoice basis
@@ -86,33 +86,33 @@  discard block
 block discarded – undo
86 86
 	 * @param WP_REST_Request $request Full details about the request.
87 87
 	 * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure.
88 88
 	 */
89
-	public function get_items( $request ) {
89
+	public function get_items($request) {
90 90
 		
91 91
 		// Retrieve request query parameters.
92
-		$args          = $this->get_request_collection_params( $request );
92
+		$args          = $this->get_request_collection_params($request);
93 93
 		
94 94
 		// WP_Query Args.
95
-		$wp_query_args = $this->get_collection_wp_query_params( $args, $request );
95
+		$wp_query_args = $this->get_collection_wp_query_params($args, $request);
96 96
 		
97 97
 		// Get invoice ids...
98
-		$query         = new WP_Query( $wp_query_args );
98
+		$query         = new WP_Query($wp_query_args);
99 99
 
100 100
 		// ... and map them into invoice objects.
101
-		$_invoices     = array_map( array( $this, 'get_post' ), $query->posts );
101
+		$_invoices     = array_map(array($this, 'get_post'), $query->posts);
102 102
 
103 103
 		// Prepare the retrieved invoices
104 104
 		$invoices      = array();
105 105
 
106
-		foreach( $_invoices as $invoice ) {
107
-			if ( $this->check_read_permission( $invoice ) ) {
108
-				$invoices[] = $this->prepare_response_for_collection( $this->prepare_item_for_response( $invoice, $request ) );
106
+		foreach ($_invoices as $invoice) {
107
+			if ($this->check_read_permission($invoice)) {
108
+				$invoices[] = $this->prepare_response_for_collection($this->prepare_item_for_response($invoice, $request));
109 109
 			}
110 110
 		}
111 111
 
112 112
 		// Prepare the response.
113
-		$response = rest_ensure_response( $invoices );
114
-		$response->header( 'X-WP-Total', (int) $query->found_posts );
115
-		$response->header( 'X-WP-TotalPages', (int) $query->max_num_pages );
113
+		$response = rest_ensure_response($invoices);
114
+		$response->header('X-WP-Total', (int) $query->found_posts);
115
+		$response->header('X-WP-TotalPages', (int) $query->max_num_pages);
116 116
 
117 117
 		/**
118 118
 		 * Filters the responses for invoices requests.
@@ -125,9 +125,9 @@  discard block
 block discarded – undo
125 125
 		 * @param WP_REST_Request     $request The request used.
126 126
          * @param array               $args Array of args used to retrieve the invoices
127 127
 		 */
128
-        $response       = apply_filters( "wpinv_rest_invoices_response", $response, $request, $args );
128
+        $response = apply_filters("wpinv_rest_invoices_response", $response, $request, $args);
129 129
 
130
-        return rest_ensure_response( $response );
130
+        return rest_ensure_response($response);
131 131
         
132 132
     }
133 133
 
@@ -139,17 +139,17 @@  discard block
 block discarded – undo
139 139
 	 * @param int $invoice_id Supplied ID.
140 140
 	 * @return WPInv_Invoice|WP_Error Invoice object if ID is valid, WP_Error otherwise.
141 141
 	 */
142
-	protected function get_post( $invoice_id ) {
142
+	protected function get_post($invoice_id) {
143 143
 		
144
-		$error     = new WP_Error( 'rest_invoice_invalid_id', __( 'Invalid item ID.', 'invoicing' ), array( 'status' => 404 ) );
144
+		$error = new WP_Error('rest_invoice_invalid_id', __('Invalid item ID.', 'invoicing'), array('status' => 404));
145 145
 
146 146
         // Ids start from 1
147
-        if ( (int) $invoice_id <= 0 ) {
147
+        if ((int) $invoice_id <= 0) {
148 148
 			return $error;
149 149
 		}
150 150
 
151
-		$invoice = wpinv_get_invoice( (int) $invoice_id );
152
-		if ( empty( $invoice ) || $this->post_type !== $invoice->post_type ) {
151
+		$invoice = wpinv_get_invoice((int) $invoice_id);
152
+		if (empty($invoice) || $this->post_type !== $invoice->post_type) {
153 153
 			return $error;
154 154
         }
155 155
 
@@ -165,18 +165,18 @@  discard block
 block discarded – undo
165 165
 	 * @param WP_REST_Request $request Full details about the request.
166 166
 	 * @return bool|WP_Error True if the request has read access for the invoice, WP_Error object otherwise.
167 167
 	 */
168
-	public function get_item_permissions_check( $request ) {
168
+	public function get_item_permissions_check($request) {
169 169
 
170 170
         // Retrieve the invoice object.
171
-        $invoice = $this->get_post( $request['id'] );
171
+        $invoice = $this->get_post($request['id']);
172 172
         
173 173
         // Ensure it is valid.
174
-		if ( is_wp_error( $invoice ) ) {
174
+		if (is_wp_error($invoice)) {
175 175
 			return $invoice;
176 176
 		}
177 177
 
178
-		if ( $invoice ) {
179
-			return $this->check_read_permission( $invoice );
178
+		if ($invoice) {
179
+			return $this->check_read_permission($invoice);
180 180
 		}
181 181
 
182 182
 		return true;
@@ -193,8 +193,8 @@  discard block
 block discarded – undo
193 193
 	 * @param WPInv_Invoice $invoice WPInv_Invoice object.
194 194
 	 * @return bool Whether the post can be read.
195 195
 	 */
196
-	public function check_read_permission( $invoice ) {
197
-		return wpinv_user_can_view_invoice( $invoice->ID );
196
+	public function check_read_permission($invoice) {
197
+		return wpinv_user_can_view_invoice($invoice->ID);
198 198
     }
199 199
     
200 200
     /**
@@ -205,19 +205,19 @@  discard block
 block discarded – undo
205 205
 	 * @param WP_REST_Request $request Full details about the request.
206 206
 	 * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure.
207 207
 	 */
208
-	public function get_item( $request ) {
208
+	public function get_item($request) {
209 209
 
210 210
         // Fetch the invoice.
211
-        $invoice = $this->get_post( $request['id'] );
211
+        $invoice = $this->get_post($request['id']);
212 212
         
213 213
         // Abort early if it does not exist
214
-		if ( is_wp_error( $invoice ) ) {
214
+		if (is_wp_error($invoice)) {
215 215
 			return $invoice;
216 216
 		}
217 217
 
218 218
 		// Prepare the response
219
-		$response = $this->prepare_item_for_response( $invoice, $request );
220
-		$response->link_header( 'alternate', esc_url( $invoice->get_view_url() ), array( 'type' => 'text/html' ) );
219
+		$response = $this->prepare_item_for_response($invoice, $request);
220
+		$response->link_header('alternate', esc_url($invoice->get_view_url()), array('type' => 'text/html'));
221 221
 
222 222
 		/**
223 223
 		 * Filters the responses for single invoice requests.
@@ -229,9 +229,9 @@  discard block
 block discarded – undo
229 229
 		 * @param WP_HTTP_Response $response Response.
230 230
 		 * @param WP_REST_Request  $request The request used.
231 231
 		 */
232
-        $response       = apply_filters( "wpinv_rest_get_invoice_response", $response, $request );
232
+        $response = apply_filters("wpinv_rest_get_invoice_response", $response, $request);
233 233
 
234
-        return rest_ensure_response( $response );
234
+        return rest_ensure_response($response);
235 235
 
236 236
     }
237 237
     
@@ -243,18 +243,18 @@  discard block
 block discarded – undo
243 243
 	 * @param WP_REST_Request $request Full details about the request.
244 244
 	 * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise.
245 245
 	 */
246
-	public function create_item_permissions_check( $request ) {
246
+	public function create_item_permissions_check($request) {
247 247
 	
248
-		if ( ! empty( $request['id'] ) ) {
249
-			return new WP_Error( 'rest_invoice_exists', __( 'Cannot create existing item.', 'invoicing' ), array( 'status' => 400 ) );
248
+		if (!empty($request['id'])) {
249
+			return new WP_Error('rest_invoice_exists', __('Cannot create existing item.', 'invoicing'), array('status' => 400));
250 250
 		}
251 251
 
252
-		$post_type = get_post_type_object( $this->post_type );
252
+		$post_type = get_post_type_object($this->post_type);
253 253
 
254
-		if ( ! current_user_can( $post_type->cap->create_posts ) && ! wpinv_current_user_can_manage_invoicing() ) {
254
+		if (!current_user_can($post_type->cap->create_posts) && !wpinv_current_user_can_manage_invoicing()) {
255 255
 			return new WP_Error( 
256 256
                 'rest_cannot_create',
257
-                __( 'Sorry, you are not allowed to create items as this user.', 'invoicing' ), 
257
+                __('Sorry, you are not allowed to create items as this user.', 'invoicing'), 
258 258
                 array( 
259 259
                     'status' => rest_authorization_required_code(),
260 260
                 )
@@ -272,32 +272,32 @@  discard block
 block discarded – undo
272 272
 	 * @param WP_REST_Request $request Full details about the request.
273 273
 	 * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure.
274 274
 	 */
275
-	public function create_item( $request ) {
275
+	public function create_item($request) {
276 276
 
277
-		if ( ! empty( $request['id'] ) ) {
278
-			return new WP_Error( 'rest_invoice_exists', __( 'Cannot create existing item.', 'invoicing' ), array( 'status' => 400 ) );
277
+		if (!empty($request['id'])) {
278
+			return new WP_Error('rest_invoice_exists', __('Cannot create existing item.', 'invoicing'), array('status' => 400));
279 279
 		}
280 280
 
281
-		$request->set_param( 'context', 'edit' );
281
+		$request->set_param('context', 'edit');
282 282
 
283 283
 		// Prepare the updated data.
284
-		$invoice_data = $this->prepare_item_for_database( $request );
284
+		$invoice_data = $this->prepare_item_for_database($request);
285 285
 
286
-		if ( is_wp_error( $invoice_data ) ) {
286
+		if (is_wp_error($invoice_data)) {
287 287
 			return $invoice_data;
288 288
 		}
289 289
 
290 290
 		// Try creating the invoice
291 291
 		$invoice_data['post_type']    = $this->post_type;
292
-		$invoice_data['private_note'] = __( 'Created via API.', 'invoicing' );
293
-        $invoice = wpinv_insert_invoice( $invoice_data, true );
292
+		$invoice_data['private_note'] = __('Created via API.', 'invoicing');
293
+        $invoice = wpinv_insert_invoice($invoice_data, true);
294 294
 
295
-		if ( is_wp_error( $invoice ) ) {
295
+		if (is_wp_error($invoice)) {
296 296
             return $invoice;
297 297
 		}
298 298
 
299 299
 		// Prepare the response
300
-		$response = $this->prepare_item_for_response( $invoice, $request );
300
+		$response = $this->prepare_item_for_response($invoice, $request);
301 301
 
302 302
 		/**
303 303
 		 * Fires after a single invoice is created or updated via the REST API.
@@ -308,7 +308,7 @@  discard block
 block discarded – undo
308 308
 		 * @param WP_REST_Request $request  Request object.
309 309
 		 * @param bool            $creating True when creating a post, false when updating.
310 310
 		 */
311
-		do_action( "wpinv_rest_insert_invoice", $invoice, $request, true );
311
+		do_action("wpinv_rest_insert_invoice", $invoice, $request, true);
312 312
 
313 313
 		/**
314 314
 		 * Filters the responses for creating single invoice requests.
@@ -320,9 +320,9 @@  discard block
 block discarded – undo
320 320
 		 * @param array           $invoice_data Invoice properties.
321 321
 		 * @param WP_REST_Request $request The request used.
322 322
 		 */
323
-        $response       = apply_filters( "wpinv_rest_create_invoice_response", $response, $request );
323
+        $response = apply_filters("wpinv_rest_create_invoice_response", $response, $request);
324 324
 
325
-        return rest_ensure_response( $response );
325
+        return rest_ensure_response($response);
326 326
 	}
327 327
 
328 328
 	/**
@@ -333,20 +333,20 @@  discard block
 block discarded – undo
333 333
 	 * @param WP_REST_Request $request Full details about the request.
334 334
 	 * @return true|WP_Error True if the request has access to update the item, WP_Error object otherwise.
335 335
 	 */
336
-	public function update_item_permissions_check( $request ) {
336
+	public function update_item_permissions_check($request) {
337 337
 
338 338
 		// Retrieve the invoice.
339
-		$invoice = $this->get_post( $request['id'] );
340
-		if ( is_wp_error( $invoice ) ) {
339
+		$invoice = $this->get_post($request['id']);
340
+		if (is_wp_error($invoice)) {
341 341
 			return $invoice;
342 342
 		}
343 343
 
344
-		$post_type = get_post_type_object( $this->post_type );
344
+		$post_type = get_post_type_object($this->post_type);
345 345
 
346
-		if ( ! current_user_can(  $post_type->cap->edit_post, $invoice->ID  ) ) {
346
+		if (!current_user_can($post_type->cap->edit_post, $invoice->ID)) {
347 347
 			return new WP_Error( 
348 348
                 'rest_cannot_edit', 
349
-                __( 'Sorry, you are not allowed to update this item.', 'invoicing' ), 
349
+                __('Sorry, you are not allowed to update this item.', 'invoicing'), 
350 350
                 array( 
351 351
                     'status' => rest_authorization_required_code(),
352 352
                 )
@@ -364,46 +364,46 @@  discard block
 block discarded – undo
364 364
 	 * @param WP_REST_Request $request Full details about the request.
365 365
 	 * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure.
366 366
 	 */
367
-	public function update_item( $request ) {
367
+	public function update_item($request) {
368 368
 		
369 369
 		// Ensure the invoice exists.
370
-        $valid_check = $this->get_post( $request['id'] );
370
+        $valid_check = $this->get_post($request['id']);
371 371
         
372 372
         // Abort early if it does not exist
373
-		if ( is_wp_error( $valid_check ) ) {
373
+		if (is_wp_error($valid_check)) {
374 374
 			return $valid_check;
375 375
 		}
376 376
 
377
-		$request->set_param( 'context', 'edit' );
377
+		$request->set_param('context', 'edit');
378 378
 
379 379
 		// Prepare the updated data.
380
-		$data_to_update = $this->prepare_item_for_database( $request );
380
+		$data_to_update = $this->prepare_item_for_database($request);
381 381
 
382
-		if ( is_wp_error( $data_to_update ) ) {
382
+		if (is_wp_error($data_to_update)) {
383 383
 			return $data_to_update;
384 384
 		}
385 385
 
386 386
 		// Abort if no invoice data is provided
387
-        if( empty( $data_to_update ) ) {
388
-            return new WP_Error( 'missing_data', __( 'An update request cannot be empty.', 'invoicing' ) );
387
+        if (empty($data_to_update)) {
388
+            return new WP_Error('missing_data', __('An update request cannot be empty.', 'invoicing'));
389 389
         }
390 390
 
391 391
 		// Include the invoice ID
392 392
 		$data_to_update['ID'] = $request['id'];
393 393
 
394 394
 		// Update the invoice
395
-		$updated_invoice = wpinv_update_invoice( $data_to_update, true );
395
+		$updated_invoice = wpinv_update_invoice($data_to_update, true);
396 396
 
397 397
 		// Incase the update operation failed...
398
-		if ( is_wp_error( $updated_invoice ) ) {
398
+		if (is_wp_error($updated_invoice)) {
399 399
 			return $updated_invoice;
400 400
 		}
401 401
 
402 402
 		// Prepare the response
403
-		$response = $this->prepare_item_for_response( $updated_invoice, $request );
403
+		$response = $this->prepare_item_for_response($updated_invoice, $request);
404 404
 
405 405
 		/** This action is documented in includes/class-wpinv-rest-invoice-controller.php */
406
-		do_action( "wpinv_rest_insert_invoice", $updated_invoice, $request, false );
406
+		do_action("wpinv_rest_insert_invoice", $updated_invoice, $request, false);
407 407
 
408 408
 		/**
409 409
 		 * Filters the responses for updating single invoice requests.
@@ -415,9 +415,9 @@  discard block
 block discarded – undo
415 415
 		 * @param array           $invoice_data Invoice properties.
416 416
 		 * @param WP_REST_Request $request The request used.
417 417
 		 */
418
-        $response       = apply_filters( "wpinv_rest_update_invoice_response", $response, $request );
418
+        $response = apply_filters("wpinv_rest_update_invoice_response", $response, $request);
419 419
 
420
-        return rest_ensure_response( $response );
420
+        return rest_ensure_response($response);
421 421
 	}
422 422
 
423 423
 	/**
@@ -428,22 +428,22 @@  discard block
 block discarded – undo
428 428
 	 * @param WP_REST_Request $request Full details about the request.
429 429
 	 * @return true|WP_Error True if the request has access to delete the invoice, WP_Error object otherwise.
430 430
 	 */
431
-	public function delete_item_permissions_check( $request ) {
431
+	public function delete_item_permissions_check($request) {
432 432
 
433 433
 		// Retrieve the invoice.
434
-		$invoice = $this->get_post( $request['id'] );
435
-		if ( is_wp_error( $invoice ) ) {
434
+		$invoice = $this->get_post($request['id']);
435
+		if (is_wp_error($invoice)) {
436 436
 			return $invoice;
437 437
 		}
438 438
 
439 439
 		// Ensure the current user can delete invoices
440
-		if ( wpinv_current_user_can_manage_invoicing() ||  current_user_can( 'delete_invoices', $request['id'] ) ) {
440
+		if (wpinv_current_user_can_manage_invoicing() || current_user_can('delete_invoices', $request['id'])) {
441 441
 			return true;
442 442
 		}
443 443
 
444 444
 		return new WP_Error( 
445 445
 			'rest_cannot_delete', 
446
-			__( 'Sorry, you are not allowed to delete this item.', 'invoicing' ), 
446
+			__('Sorry, you are not allowed to delete this item.', 'invoicing'), 
447 447
 			array( 
448 448
 				'status' => rest_authorization_required_code(),
449 449
 			)
@@ -458,31 +458,31 @@  discard block
 block discarded – undo
458 458
 	 * @param WP_REST_Request $request Full details about the request.
459 459
 	 * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure.
460 460
 	 */
461
-	public function delete_item( $request ) {
461
+	public function delete_item($request) {
462 462
 		
463 463
 		// Retrieve the invoice.
464
-		$invoice = $this->get_post( $request['id'] );
465
-		if ( is_wp_error( $invoice ) ) {
464
+		$invoice = $this->get_post($request['id']);
465
+		if (is_wp_error($invoice)) {
466 466
 			return $invoice;
467 467
 		}
468 468
 
469
-		$request->set_param( 'context', 'edit' );
469
+		$request->set_param('context', 'edit');
470 470
 
471 471
 		// Prepare the invoice id
472
-		$id    = $invoice->ID;
472
+		$id = $invoice->ID;
473 473
 
474 474
 		// Prepare the response
475
-		$response = $this->prepare_item_for_response( $invoice, $request );
475
+		$response = $this->prepare_item_for_response($invoice, $request);
476 476
 
477 477
 		// Check if the user wants to bypass the trash...
478 478
 		$force_delete = (bool) $request['force'];
479 479
 
480 480
 		// Try deleting the invoice.
481
-		$deleted = wp_delete_post( $id, $force_delete );
481
+		$deleted = wp_delete_post($id, $force_delete);
482 482
 
483 483
 		// Abort early if we can't delete the invoice.
484
-		if ( ! $deleted ) {
485
-			return new WP_Error( 'rest_cannot_delete', __( 'The item cannot be deleted.', 'invoicing' ), array( 'status' => 500 ) );
484
+		if (!$deleted) {
485
+			return new WP_Error('rest_cannot_delete', __('The item cannot be deleted.', 'invoicing'), array('status' => 500));
486 486
 		}
487 487
 
488 488
 		/**
@@ -494,7 +494,7 @@  discard block
 block discarded – undo
494 494
 		 * @param WPInv_Invoice    $invoice  The deleted or trashed invoice.
495 495
 		 * @param WP_REST_Request  $request  The request sent to the API.
496 496
 		 */
497
-		do_action( "wpinv_rest_delete_invoice", $invoice, $request );
497
+		do_action("wpinv_rest_delete_invoice", $invoice, $request);
498 498
 
499 499
 		return $response;
500 500
 
@@ -510,29 +510,29 @@  discard block
 block discarded – undo
510 510
 	 */
511 511
 	public function get_collection_params() {
512 512
         
513
-        $query_params               = array(
513
+        $query_params = array(
514 514
 
515 515
             // item status.
516 516
             'status'                => array(
517 517
                 'default'           => $this->get_post_statuses(),
518
-                'description'       => __( 'Limit result set to items assigned one or more statuses.', 'invoicing' ),
518
+                'description'       => __('Limit result set to items assigned one or more statuses.', 'invoicing'),
519 519
                 'type'              => 'array',
520 520
                 'items'             => array(
521 521
                     'enum'          => $this->get_post_statuses(),
522 522
                     'type'          => 'string',
523 523
                 ),
524
-                'sanitize_callback' => array( $this, 'sanitize_post_statuses' ),
524
+                'sanitize_callback' => array($this, 'sanitize_post_statuses'),
525 525
             ),
526 526
 
527 527
             // User.
528 528
             'user'                  => array(
529
-				'description'       => __( 'Limit result set to items for a specif user. Accepts a user ID, or comma-separated list of IDs', 'invoicing' ),
529
+				'description'       => __('Limit result set to items for a specif user. Accepts a user ID, or comma-separated list of IDs', 'invoicing'),
530 530
 				'type'              => 'string',
531 531
 			),
532 532
 
533 533
 			// Exclude certain users
534 534
             'exclude_users'  	    => array(
535
-                'description' 		=> __( 'Exclude items from specific users.', 'invoicing' ),
535
+                'description' 		=> __('Exclude items from specific users.', 'invoicing'),
536 536
                 'type'        		=> 'array',
537 537
                 'items'       		=> array(
538 538
                     'type' => 'integer',
@@ -542,62 +542,62 @@  discard block
 block discarded – undo
542 542
 			
543 543
 			// Items before.
544 544
             'before_date'           => array(
545
-				'description'       => __( 'Limit result set to items created before a specific date. Accepts strtotime()-compatible string.', 'invoicing' ),
545
+				'description'       => __('Limit result set to items created before a specific date. Accepts strtotime()-compatible string.', 'invoicing'),
546 546
 				'type'              => 'string',
547 547
 			),
548 548
 
549 549
             'meta_key'           => array(
550
-				'description'       => __( 'Filter items by custom field key.', 'invoicing' ),
550
+				'description'       => __('Filter items by custom field key.', 'invoicing'),
551 551
 				'type'              => 'string',
552 552
 			),
553 553
 
554 554
             'meta_compare_key'           => array(
555
-				'description'       => __( 'Comparison operator to test the `meta_key`.', 'invoicing' ),
555
+				'description'       => __('Comparison operator to test the `meta_key`.', 'invoicing'),
556 556
 				'type'              => 'string',
557 557
 				'default'              => '=',
558
-				'enum'        		=> array_map( 'trim', explode( ',', '=, !=, >, >=, <, <=, LIKE NOT, LIKE, IN, NOT IN, BETWEEN, NOT BETWEEN, NOT EXISTS, REGEXP, NOT REGEXP, RLIKE' ) ),
558
+				'enum'        		=> array_map('trim', explode(',', '=, !=, >, >=, <, <=, LIKE NOT, LIKE, IN, NOT IN, BETWEEN, NOT BETWEEN, NOT EXISTS, REGEXP, NOT REGEXP, RLIKE')),
559 559
 			),
560 560
 
561 561
             'meta_value'           => array(
562
-				'description'       => __( 'Filter items by custom field value.', 'invoicing' ),
562
+				'description'       => __('Filter items by custom field value.', 'invoicing'),
563 563
 				'type'              => 'string',
564 564
 			),
565 565
 
566 566
             'meta_compare'           => array(
567
-				'description'       => __( 'Comparison operator to test the `meta_value`.', 'invoicing' ),
567
+				'description'       => __('Comparison operator to test the `meta_value`.', 'invoicing'),
568 568
 				'type'              => 'string',
569 569
 				'default'              => '=',
570
-				'enum'        		=> array_map( 'trim', explode( ',', '=, !=, >, >=, <, <=, LIKE NOT, LIKE, IN, NOT IN, BETWEEN, NOT BETWEEN, NOT EXISTS, REGEXP, NOT REGEXP, RLIKE' ) ),
570
+				'enum'        		=> array_map('trim', explode(',', '=, !=, >, >=, <, <=, LIKE NOT, LIKE, IN, NOT IN, BETWEEN, NOT BETWEEN, NOT EXISTS, REGEXP, NOT REGEXP, RLIKE')),
571 571
 			),
572 572
 
573 573
 			'meta_value_num'           => array(
574
-				'description'       => __( 'Filter items by a numeric custom field value.', 'invoicing' ),
574
+				'description'       => __('Filter items by a numeric custom field value.', 'invoicing'),
575 575
 				'type'              => 'integer',
576 576
 			),
577 577
 
578 578
 			// items after.
579 579
             'after_date'            => array(
580
-				'description'       => __( 'Limit result set to items created after a specific date. Accepts strtotime()-compatible string.', 'invoicing' ),
580
+				'description'       => __('Limit result set to items created after a specific date. Accepts strtotime()-compatible string.', 'invoicing'),
581 581
 				'type'              => 'string',
582 582
             ),
583 583
             
584 584
             // Number of results per page
585 585
             'limit'                 => array(
586
-				'description'       => __( 'Number of items to fetch.', 'invoicing' ),
586
+				'description'       => __('Number of items to fetch.', 'invoicing'),
587 587
 				'type'              => 'integer',
588
-				'default'           => (int) get_option( 'posts_per_page' ),
588
+				'default'           => (int) get_option('posts_per_page'),
589 589
             ),
590 590
 
591 591
             // Pagination
592 592
             'page'     => array(
593
-				'description'       => __( 'Current page to fetch.', 'invoicing' ),
593
+				'description'       => __('Current page to fetch.', 'invoicing'),
594 594
 				'type'              => 'integer',
595 595
 				'default'           => 1,
596 596
             ),
597 597
 
598 598
             // limit to certain items
599 599
             'include'  => array(
600
-                'description' => __( 'Limit result set to specific IDs.', 'invoicing' ),
600
+                'description' => __('Limit result set to specific IDs.', 'invoicing'),
601 601
                 'type'        => 'array',
602 602
                 'items'       => array(
603 603
                     'type' => 'integer',
@@ -607,7 +607,7 @@  discard block
 block discarded – undo
607 607
 			
608 608
 			// Exclude certain items
609 609
             'exclude'  => array(
610
-                'description' => __( 'Ensure result set excludes specific IDs.', 'invoicing' ),
610
+                'description' => __('Ensure result set excludes specific IDs.', 'invoicing'),
611 611
                 'type'        => 'array',
612 612
                 'items'       => array(
613 613
                     'type' => 'integer',
@@ -617,7 +617,7 @@  discard block
 block discarded – undo
617 617
 
618 618
             // Order items by
619 619
             'orderby'  		  => array(
620
-                'description' => __( 'Sort retrieved items by parameter.', 'invoicing' ),
620
+                'description' => __('Sort retrieved items by parameter.', 'invoicing'),
621 621
                 'type'        => 'string',
622 622
                 'default'     => 'date',
623 623
                 'enum'        => array(
@@ -632,10 +632,10 @@  discard block
 block discarded – undo
632 632
 
633 633
             // How to order
634 634
             'order'    => array(
635
-                'description' => __( 'Designates ascending or descending order of ítems.', 'invoicing' ),
635
+                'description' => __('Designates ascending or descending order of ítems.', 'invoicing'),
636 636
                 'type'        => 'string',
637 637
                 'default'     => 'DESC',
638
-                'enum'        => array( 'ASC', 'DESC' ),
638
+                'enum'        => array('ASC', 'DESC'),
639 639
             ),
640 640
         );
641 641
 
@@ -647,7 +647,7 @@  discard block
 block discarded – undo
647 647
 		 *
648 648
 		 * @param array        $query_params JSON Schema-formatted collection parameters.
649 649
 		 */
650
-		return apply_filters( "wpinv_rest_invoices_collection_params", $query_params );
650
+		return apply_filters("wpinv_rest_invoices_collection_params", $query_params);
651 651
 	}
652 652
 	
653 653
 	/**
@@ -657,7 +657,7 @@  discard block
 block discarded – undo
657 657
 	 * @param WP_REST_Request $request Full details about the request.
658 658
 	 * @return array Request collection parameters.
659 659
 	 */
660
-	public function get_request_collection_params( $request ) {
660
+	public function get_request_collection_params($request) {
661 661
 		
662 662
 		// Retrieve the list of registered invoice query parameters.
663 663
 		$registered = $this->get_collection_params();
@@ -674,7 +674,7 @@  discard block
 block discarded – undo
674 674
             'meta_compare'          => '=',
675 675
 			'meta_value_num'        => null,
676 676
             'after_date'            => null,
677
-            'limit'                 => (int) get_option( 'posts_per_page' ),
677
+            'limit'                 => (int) get_option('posts_per_page'),
678 678
 			'page'     				=> 1,
679 679
 			'include'				=> array(),
680 680
             'exclude'  				=> array(),
@@ -683,9 +683,9 @@  discard block
 block discarded – undo
683 683
 		);
684 684
 
685 685
 		// Add any params from the requests.
686
-		foreach ( array_keys( $registered ) as $key ) {
687
-            if ( isset( $request[ $key] ) ) {
688
-                $args[ $key ] = $request[ $key];
686
+		foreach (array_keys($registered) as $key) {
687
+            if (isset($request[$key])) {
688
+                $args[$key] = $request[$key];
689 689
             }
690 690
         }
691 691
 		
@@ -698,7 +698,7 @@  discard block
 block discarded – undo
698 698
 		 * @param array           $args    Request query args.
699 699
 		 * @param WP_REST_Request $request Full details about the request.
700 700
 		 */
701
-		return apply_filters( "wpinv_rest_invoices_collection_request_params", $args, $request );
701
+		return apply_filters("wpinv_rest_invoices_collection_request_params", $args, $request);
702 702
 	}
703 703
 	
704 704
 	/**
@@ -709,7 +709,7 @@  discard block
 block discarded – undo
709 709
 	 * @param WP_REST_Request $request Full details about the request.
710 710
 	 * @return array WP_Query parameters.
711 711
 	 */
712
-	public function get_collection_wp_query_params( $args, $request ) {
712
+	public function get_collection_wp_query_params($args, $request) {
713 713
 		
714 714
 		// Prepare the parameters.
715 715
 		$wp_query_args = array(
@@ -726,35 +726,35 @@  discard block
 block discarded – undo
726 726
 			'meta_value_num'   => $args['meta_value_num'],
727 727
 			'post__in'         => $args['include'],
728 728
 			'post__in'         => $args['exclude'],
729
-			'date_query'       => array( array() ),
729
+			'date_query'       => array(array()),
730 730
 			'fields'           => 'ids',
731 731
 			'orderby'          => $args['orderby'],
732 732
 			'order'            => $args['order'],
733 733
 		);
734 734
 
735 735
 		// Only admins can view other user's invoices.
736
-		if ( ! wpinv_current_user_can_manage_invoicing() ) {
736
+		if (!wpinv_current_user_can_manage_invoicing()) {
737 737
 			$wp_query_args['author'] = get_current_user_id();
738 738
 		}
739 739
 
740 740
 		// No date specific params provided.
741
-		if ( empty( $args['before_date'] ) && empty( $args['after_date'] ) ) {
742
-			unset( $wp_query_args['date_query'] );
741
+		if (empty($args['before_date']) && empty($args['after_date'])) {
742
+			unset($wp_query_args['date_query']);
743 743
 		}
744 744
 
745
-		if ( ! empty( $args['before_date'] ) ) {
745
+		if (!empty($args['before_date'])) {
746 746
 			$wp_query_args['date_query'][0]['before'] = $args['before_date'];
747 747
 		}
748 748
 
749
-		if ( ! empty( $args['after_date'] ) ) {
749
+		if (!empty($args['after_date'])) {
750 750
 			$wp_query_args['date_query'][0]['after'] = $args['after_date'];
751 751
 		}
752 752
 
753 753
 		// Remove empty variables.
754
-		$wp_query_args = array_filter( $wp_query_args );
754
+		$wp_query_args = array_filter($wp_query_args);
755 755
 
756 756
 		// This can be zero.
757
-		if ( ! is_null( $args['meta_value_num'] ) ) {
757
+		if (!is_null($args['meta_value_num'])) {
758 758
 			$wp_query_args['meta_value_num'] = $args['meta_value_num'];
759 759
 		}
760 760
 		
@@ -768,7 +768,7 @@  discard block
 block discarded – undo
768 768
 		 * @param array           $wp_query_args Generated WP_Query args args.
769 769
 		 * @param WP_REST_Request $request       Full details about the request.
770 770
 		 */
771
-		return apply_filters( "wpinv_rest_invoices_collection_wp_query_params", $wp_query_args, $args, $request );
771
+		return apply_filters("wpinv_rest_invoices_collection_wp_query_params", $wp_query_args, $args, $request);
772 772
     }
773 773
     
774 774
     /**
@@ -779,7 +779,7 @@  discard block
 block discarded – undo
779 779
 	 * @param object|string $post_type Post type name or object.
780 780
 	 * @return bool Whether the post type is allowed in REST.
781 781
 	 */
782
-	protected function check_is_post_type_allowed( $post_type ) {
782
+	protected function check_is_post_type_allowed($post_type) {
783 783
 		return true;
784 784
 	}
785 785
 
@@ -791,49 +791,49 @@  discard block
 block discarded – undo
791 791
 	 * @param WP_REST_Request $request Request object.
792 792
 	 * @return array|WP_Error Invoice Properties or WP_Error.
793 793
 	 */
794
-	protected function prepare_item_for_database( $request ) {
794
+	protected function prepare_item_for_database($request) {
795 795
 		$prepared_invoice = new stdClass();
796 796
 
797 797
 		// Post ID.
798
-		if ( isset( $request['id'] ) ) {
799
-			$existing_invoice = $this->get_post( $request['id'] );
800
-			if ( is_wp_error( $existing_invoice ) ) {
798
+		if (isset($request['id'])) {
799
+			$existing_invoice = $this->get_post($request['id']);
800
+			if (is_wp_error($existing_invoice)) {
801 801
 				return $existing_invoice;
802 802
 			}
803 803
 
804
-			$prepared_invoice->ID 		  = $existing_invoice->ID;
804
+			$prepared_invoice->ID = $existing_invoice->ID;
805 805
 			$prepared_invoice->invoice_id = $existing_invoice->ID;
806 806
 		}
807 807
 
808 808
 		$schema = $this->get_item_schema();
809 809
 
810 810
 		// Invoice owner.
811
-		if ( ! empty( $schema['properties']['user_id'] ) && isset( $request['user_id'] ) ) {
811
+		if (!empty($schema['properties']['user_id']) && isset($request['user_id'])) {
812 812
 			$prepared_invoice->user_id = (int) $request['user_id'];
813 813
 		}
814 814
 
815 815
 		// Cart details.
816
-		if ( ! empty( $schema['properties']['cart_details'] ) && isset( $request['cart_details'] ) ) {
816
+		if (!empty($schema['properties']['cart_details']) && isset($request['cart_details'])) {
817 817
 			$prepared_invoice->cart_details = (array) $request['cart_details'];
818 818
 		}
819 819
 
820 820
 		// Invoice status.
821
-		if ( ! empty( $schema['properties']['status'] ) && isset( $request['status'] ) ) {
821
+		if (!empty($schema['properties']['status']) && isset($request['status'])) {
822 822
 
823
-			if ( in_array( $request['status'], $this->get_post_statuses(), true ) ) {
823
+			if (in_array($request['status'], $this->get_post_statuses(), true)) {
824 824
 				$prepared_invoice->status = $request['status'];
825 825
 			}
826 826
 
827 827
 		}
828 828
 
829 829
 		// User info
830
-		if ( ! empty( $schema['properties']['user_info'] ) && isset( $request['user_info'] ) ) {
830
+		if (!empty($schema['properties']['user_info']) && isset($request['user_info'])) {
831 831
 			$prepared_invoice->user_info = array();
832 832
 			$user_info = (array) $request['user_info'];
833 833
 
834
-			foreach( $user_info as $prop => $value ) {
834
+			foreach ($user_info as $prop => $value) {
835 835
 
836
-				if ( ! empty( $schema['properties']['user_info']['properties'][$prop] ) ) {
836
+				if (!empty($schema['properties']['user_info']['properties'][$prop])) {
837 837
 
838 838
 					$prepared_invoice->user_info[$prop] = $value;
839 839
 		
@@ -844,59 +844,59 @@  discard block
 block discarded – undo
844 844
 		}
845 845
 
846 846
 		// IP
847
-		if ( ! empty( $schema['properties']['ip'] ) && isset( $request['ip'] ) ) {
847
+		if (!empty($schema['properties']['ip']) && isset($request['ip'])) {
848 848
 			$prepared_invoice->ip = $request['ip'];
849 849
 		}
850 850
 
851 851
 		// Payment details
852 852
 		$prepared_invoice->payment_details = array();
853 853
 
854
-		if ( ! empty( $schema['properties']['gateway'] ) && isset( $request['gateway'] ) ) {
854
+		if (!empty($schema['properties']['gateway']) && isset($request['gateway'])) {
855 855
 			$prepared_invoice->payment_details['gateway'] = $request['gateway'];
856 856
 		}
857 857
 
858
-		if ( ! empty( $schema['properties']['gateway_title'] ) && isset( $request['gateway_title'] ) ) {
858
+		if (!empty($schema['properties']['gateway_title']) && isset($request['gateway_title'])) {
859 859
 			$prepared_invoice->payment_details['gateway_title'] = $request['gateway_title'];
860 860
 		}
861 861
 
862
-		if ( ! empty( $schema['properties']['currency'] ) && isset( $request['currency'] ) ) {
862
+		if (!empty($schema['properties']['currency']) && isset($request['currency'])) {
863 863
 			$prepared_invoice->payment_details['currency'] = $request['currency'];
864 864
 		}
865 865
 
866
-		if ( ! empty( $schema['properties']['transaction_id'] ) && isset( $request['transaction_id'] ) ) {
866
+		if (!empty($schema['properties']['transaction_id']) && isset($request['transaction_id'])) {
867 867
 			$prepared_invoice->payment_details['transaction_id'] = $request['transaction_id'];
868 868
 		}
869 869
 
870 870
 		// Dates
871
-		if ( ! empty( $schema['properties']['date'] ) && isset( $request['date'] ) ) {
872
-			$post_date = rest_get_date_with_gmt( $request['date'] );
871
+		if (!empty($schema['properties']['date']) && isset($request['date'])) {
872
+			$post_date = rest_get_date_with_gmt($request['date']);
873 873
 
874
-			if ( ! empty( $post_date ) ) {
874
+			if (!empty($post_date)) {
875 875
 				$prepared_invoice->post_date = $post_date[0];
876 876
 			}
877 877
 			
878 878
 		}
879 879
 
880
-		if ( ! empty( $schema['properties']['due_date'] ) && isset( $request['due_date'] ) ) {
881
-			$due_date = rest_get_date_with_gmt( $request['due_date'] );
880
+		if (!empty($schema['properties']['due_date']) && isset($request['due_date'])) {
881
+			$due_date = rest_get_date_with_gmt($request['due_date']);
882 882
 
883
-			if ( ! empty( $due_date ) ) {
883
+			if (!empty($due_date)) {
884 884
 				$prepared_invoice->due_date = $due_date[0];
885 885
 			}
886 886
 
887 887
 		}
888 888
 
889
-		if ( ! empty( $schema['properties']['valid_until'] ) && isset( $request['valid_until'] ) ) {
889
+		if (!empty($schema['properties']['valid_until']) && isset($request['valid_until'])) {
890 890
 
891
-			if ( ! empty( $request['valid_until'] ) ) {
892
-				$prepared_invoice->valid_until = gmdate( 'Y-m-d', strtotime( $request['valid_until'] ) );
891
+			if (!empty($request['valid_until'])) {
892
+				$prepared_invoice->valid_until = gmdate('Y-m-d', strtotime($request['valid_until']));
893 893
 			} else {
894 894
 				$prepared_invoice->valid_until = '';
895 895
 			}
896 896
 
897 897
 		}
898 898
 
899
-		$invoice_data = (array) wp_unslash( $prepared_invoice );
899
+		$invoice_data = (array) wp_unslash($prepared_invoice);
900 900
 
901 901
 		/**
902 902
 		 * Filters an invoice before it is inserted via the REST API.
@@ -906,7 +906,7 @@  discard block
 block discarded – undo
906 906
 		 * @param array        $invoice_data An array of invoice data
907 907
 		 * @param WP_REST_Request $request       Request object.
908 908
 		 */
909
-		return apply_filters( "wpinv_rest_pre_insert_invoice", $invoice_data, $request );
909
+		return apply_filters("wpinv_rest_pre_insert_invoice", $invoice_data, $request);
910 910
 
911 911
 	}
912 912
 
@@ -919,20 +919,20 @@  discard block
 block discarded – undo
919 919
 	 * @param WP_REST_Request $request Request object.
920 920
 	 * @return WP_REST_Response Response object.
921 921
 	 */
922
-	public function prepare_item_for_response( $invoice, $request ) {
922
+	public function prepare_item_for_response($invoice, $request) {
923 923
 
924
-		$GLOBALS['post'] = get_post( $invoice->ID );
924
+		$GLOBALS['post'] = get_post($invoice->ID);
925 925
 
926
-		setup_postdata( $invoice->ID );
926
+		setup_postdata($invoice->ID);
927 927
 
928 928
 		// Fetch the fields to include in this response.
929
-		$fields = $this->get_fields_for_response( $request );
929
+		$fields = $this->get_fields_for_response($request);
930 930
 
931 931
 		// Base fields for every invoice.
932 932
 		$data = array();
933 933
 
934 934
 		// Set up ID
935
-		if ( rest_is_field_included( 'id', $fields ) ) {
935
+		if (rest_is_field_included('id', $fields)) {
936 936
 			$data['id'] = $invoice->ID;
937 937
 		}
938 938
 
@@ -947,79 +947,79 @@  discard block
 block discarded – undo
947 947
 			'status', 'status_nicename', 'post_type'
948 948
 		);
949 949
 
950
-		foreach( $invoice_properties as $property ) {
950
+		foreach ($invoice_properties as $property) {
951 951
 
952
-			if ( rest_is_field_included( $property, $fields ) ) {
953
-				$data[$property] = $invoice->get( $property );
952
+			if (rest_is_field_included($property, $fields)) {
953
+				$data[$property] = $invoice->get($property);
954 954
 			}
955 955
 
956 956
 		}
957 957
 
958 958
 		// Valid until
959
-		if ( rest_is_field_included( 'valid_until', $fields ) && $this->post_type === 'wpi_quote' ) {
960
-			$data['valid_until'] = get_post_meta( $invoice->ID, 'wpinv_quote_valid_until', true );
959
+		if (rest_is_field_included('valid_until', $fields) && $this->post_type === 'wpi_quote') {
960
+			$data['valid_until'] = get_post_meta($invoice->ID, 'wpinv_quote_valid_until', true);
961 961
 		}
962 962
 
963 963
 		// Cart details
964
-		if ( rest_is_field_included( 'cart_details', $fields ) ) {
965
-			$data['cart_details'] = $invoice->get( 'cart_details' );
964
+		if (rest_is_field_included('cart_details', $fields)) {
965
+			$data['cart_details'] = $invoice->get('cart_details');
966 966
 		}
967 967
 
968 968
 		//Dates
969
-		$invoice_properties = array( 'date', 'due_date', 'completed_date' );
969
+		$invoice_properties = array('date', 'due_date', 'completed_date');
970 970
 
971
-		foreach( $invoice_properties as $property ) {
971
+		foreach ($invoice_properties as $property) {
972 972
 
973
-			if ( rest_is_field_included( $property, $fields ) ) {
974
-				$data[$property] = $this->prepare_date_response( '0000-00-00 00:00:00', $invoice->get( $property ) );
973
+			if (rest_is_field_included($property, $fields)) {
974
+				$data[$property] = $this->prepare_date_response('0000-00-00 00:00:00', $invoice->get($property));
975 975
 			}
976 976
 
977 977
 		}
978 978
 
979 979
 		// User id
980
-		if ( rest_is_field_included( 'user_id', $fields ) ) {
981
-			$data['user_id'] = (int) $invoice->get( 'user_id' );
980
+		if (rest_is_field_included('user_id', $fields)) {
981
+			$data['user_id'] = (int) $invoice->get('user_id');
982 982
 		}
983 983
 
984 984
 		// User info
985
-		$user_info = array( 'first_name', 'last_name', 'company', 'vat_number', 'vat_rate', 'address', 'city', 'country', 'state', 'zip', 'phone' );
985
+		$user_info = array('first_name', 'last_name', 'company', 'vat_number', 'vat_rate', 'address', 'city', 'country', 'state', 'zip', 'phone');
986 986
 
987
-		foreach( $user_info as $property ) {
987
+		foreach ($user_info as $property) {
988 988
 
989
-			if ( rest_is_field_included( "user_info.$property", $fields ) ) {
990
-				$data['user_info'][$property] = $invoice->get( $property );
989
+			if (rest_is_field_included("user_info.$property", $fields)) {
990
+				$data['user_info'][$property] = $invoice->get($property);
991 991
 			}
992 992
 
993 993
 		}
994 994
 
995 995
 		// Slug
996
-		if ( rest_is_field_included( 'slug', $fields ) ) {
997
-			$data['slug'] = $invoice->get( 'post_name' );
996
+		if (rest_is_field_included('slug', $fields)) {
997
+			$data['slug'] = $invoice->get('post_name');
998 998
 		}
999 999
 
1000 1000
 		// View invoice link
1001
-		if ( rest_is_field_included( 'link', $fields ) ) {
1002
-			$data['link'] = esc_url( $invoice->get_view_url() );
1001
+		if (rest_is_field_included('link', $fields)) {
1002
+			$data['link'] = esc_url($invoice->get_view_url());
1003 1003
 		}
1004 1004
 
1005 1005
 
1006
-		$context = ! empty( $request['context'] ) ? $request['context'] : 'view';
1007
-		$data    = $this->add_additional_fields_to_object( $data, $request );
1008
-		$data    = $this->filter_response_by_context( $data, $context );
1006
+		$context = !empty($request['context']) ? $request['context'] : 'view';
1007
+		$data    = $this->add_additional_fields_to_object($data, $request);
1008
+		$data    = $this->filter_response_by_context($data, $context);
1009 1009
 
1010 1010
 		// Wrap the data in a response object.
1011
-		$response = rest_ensure_response( $data );
1011
+		$response = rest_ensure_response($data);
1012 1012
 
1013
-		$links = $this->prepare_links( $invoice );
1014
-		$response->add_links( $links );
1013
+		$links = $this->prepare_links($invoice);
1014
+		$response->add_links($links);
1015 1015
 
1016
-		if ( ! empty( $links['self']['href'] ) ) {
1017
-			$actions = $this->get_available_actions( $invoice, $request );
1016
+		if (!empty($links['self']['href'])) {
1017
+			$actions = $this->get_available_actions($invoice, $request);
1018 1018
 
1019 1019
 			$self = $links['self']['href'];
1020 1020
 
1021
-			foreach ( $actions as $rel ) {
1022
-				$response->add_link( $rel, $self );
1021
+			foreach ($actions as $rel) {
1022
+				$response->add_link($rel, $self);
1023 1023
 			}
1024 1024
 		}
1025 1025
 
@@ -1032,7 +1032,7 @@  discard block
 block discarded – undo
1032 1032
 		 * @param WPInv_Invoice    $invoice  The invoice object.
1033 1033
 		 * @param WP_REST_Request  $request  Request object.
1034 1034
 		 */
1035
-		return apply_filters( "wpinv_rest_prepare_invoice", $response, $invoice, $request );
1035
+		return apply_filters("wpinv_rest_prepare_invoice", $response, $invoice, $request);
1036 1036
 	}
1037 1037
 
1038 1038
 	/**
@@ -1045,57 +1045,57 @@  discard block
 block discarded – undo
1045 1045
 	 * @param WP_REST_Request $request Full details about the request.
1046 1046
 	 * @return array Fields to be included in the response.
1047 1047
 	 */
1048
-	public function get_fields_for_response( $request ) {
1048
+	public function get_fields_for_response($request) {
1049 1049
 		$schema     = $this->get_item_schema();
1050
-		$properties = isset( $schema['properties'] ) ? $schema['properties'] : array();
1050
+		$properties = isset($schema['properties']) ? $schema['properties'] : array();
1051 1051
 
1052 1052
 		$additional_fields = $this->get_additional_fields();
1053
-		foreach ( $additional_fields as $field_name => $field_options ) {
1053
+		foreach ($additional_fields as $field_name => $field_options) {
1054 1054
 			// For back-compat, include any field with an empty schema
1055 1055
 			// because it won't be present in $this->get_item_schema().
1056
-			if ( is_null( $field_options['schema'] ) ) {
1057
-				$properties[ $field_name ] = $field_options;
1056
+			if (is_null($field_options['schema'])) {
1057
+				$properties[$field_name] = $field_options;
1058 1058
 			}
1059 1059
 		}
1060 1060
 
1061 1061
 		// Exclude fields that specify a different context than the request context.
1062 1062
 		$context = $request['context'];
1063
-		if ( $context ) {
1064
-			foreach ( $properties as $name => $options ) {
1065
-				if ( ! empty( $options['context'] ) && ! in_array( $context, $options['context'], true ) ) {
1066
-					unset( $properties[ $name ] );
1063
+		if ($context) {
1064
+			foreach ($properties as $name => $options) {
1065
+				if (!empty($options['context']) && !in_array($context, $options['context'], true)) {
1066
+					unset($properties[$name]);
1067 1067
 				}
1068 1068
 			}
1069 1069
 		}
1070 1070
 
1071
-		$fields = array_keys( $properties );
1071
+		$fields = array_keys($properties);
1072 1072
 
1073
-		if ( ! isset( $request['_fields'] ) ) {
1073
+		if (!isset($request['_fields'])) {
1074 1074
 			return $fields;
1075 1075
 		}
1076
-		$requested_fields = wpinv_parse_list( $request['_fields'] );
1077
-		if ( 0 === count( $requested_fields ) ) {
1076
+		$requested_fields = wpinv_parse_list($request['_fields']);
1077
+		if (0 === count($requested_fields)) {
1078 1078
 			return $fields;
1079 1079
 		}
1080 1080
 		// Trim off outside whitespace from the comma delimited list.
1081
-		$requested_fields = array_map( 'trim', $requested_fields );
1081
+		$requested_fields = array_map('trim', $requested_fields);
1082 1082
 		// Always persist 'id', because it can be needed for add_additional_fields_to_object().
1083
-		if ( in_array( 'id', $fields, true ) ) {
1083
+		if (in_array('id', $fields, true)) {
1084 1084
 			$requested_fields[] = 'id';
1085 1085
 		}
1086 1086
 		// Return the list of all requested fields which appear in the schema.
1087 1087
 		return array_reduce(
1088 1088
 			$requested_fields,
1089
-			function( $response_fields, $field ) use ( $fields ) {
1090
-				if ( in_array( $field, $fields, true ) ) {
1089
+			function($response_fields, $field) use ($fields) {
1090
+				if (in_array($field, $fields, true)) {
1091 1091
 					$response_fields[] = $field;
1092 1092
 					return $response_fields;
1093 1093
 				}
1094 1094
 				// Check for nested fields if $field is not a direct match.
1095
-				$nested_fields = explode( '.', $field );
1095
+				$nested_fields = explode('.', $field);
1096 1096
 				// A nested field is included so long as its top-level property is
1097 1097
 				// present in the schema.
1098
-				if ( in_array( $nested_fields[0], $fields, true ) ) {
1098
+				if (in_array($nested_fields[0], $fields, true)) {
1099 1099
 					$response_fields[] = $field;
1100 1100
 				}
1101 1101
 				return $response_fields;
@@ -1114,8 +1114,8 @@  discard block
 block discarded – undo
1114 1114
 	public function get_item_schema() {
1115 1115
 
1116 1116
 		// Maybe retrieve the schema from cache.
1117
-		if ( $this->schema ) {
1118
-			return $this->add_additional_fields_schema( $this->schema );
1117
+		if ($this->schema) {
1118
+			return $this->add_additional_fields_schema($this->schema);
1119 1119
 		}
1120 1120
 
1121 1121
 		$schema = array(
@@ -1127,266 +1127,266 @@  discard block
 block discarded – undo
1127 1127
 			'properties' 		  => array(
1128 1128
 
1129 1129
 				'title'			  => array(
1130
-					'description' => __( 'The title for the invoice.', 'invoicing' ),
1130
+					'description' => __('The title for the invoice.', 'invoicing'),
1131 1131
 					'type'        => 'string',
1132
-					'context'     => array( 'view', 'edit', 'embed' ),
1132
+					'context'     => array('view', 'edit', 'embed'),
1133 1133
 					'readonly'    => true,
1134 1134
 				),
1135 1135
 
1136 1136
 				'user_id'		  => array(
1137
-					'description' => __( 'The ID of the owner of the invoice.', 'invoicing' ),
1137
+					'description' => __('The ID of the owner of the invoice.', 'invoicing'),
1138 1138
 					'type'        => 'integer',
1139
-					'context'     => array( 'view', 'edit', 'embed' ),
1139
+					'context'     => array('view', 'edit', 'embed'),
1140 1140
 				),
1141 1141
 
1142 1142
 				'email'		  	  => array(
1143
-					'description' => __( 'The email of the owner of the invoice.', 'invoicing' ),
1143
+					'description' => __('The email of the owner of the invoice.', 'invoicing'),
1144 1144
 					'type'        => 'string',
1145
-					'context'     => array( 'view', 'edit', 'embed' ),
1145
+					'context'     => array('view', 'edit', 'embed'),
1146 1146
 					'readonly'    => true,
1147 1147
 				),
1148 1148
 
1149 1149
 				'ip'			  => array(
1150
-					'description' => __( 'The IP of the owner of the invoice.', 'invoicing' ),
1150
+					'description' => __('The IP of the owner of the invoice.', 'invoicing'),
1151 1151
 					'type'        => 'string',
1152
-					'context'     => array( 'view', 'edit', 'embed' ),
1152
+					'context'     => array('view', 'edit', 'embed'),
1153 1153
 				),
1154 1154
 
1155 1155
 				'user_info'       => array(
1156
-					'description' => __( 'Information about the owner of the invoice.', 'invoicing' ),
1156
+					'description' => __('Information about the owner of the invoice.', 'invoicing'),
1157 1157
 					'type'        => 'object',
1158
-					'context'     => array( 'view', 'edit', 'embed' ),
1158
+					'context'     => array('view', 'edit', 'embed'),
1159 1159
 					'properties'  => array(
1160 1160
 
1161 1161
 						'first_name'      => array(
1162
-							'description' => __( 'The first name of the owner of the invoice.', 'invoicing' ),
1162
+							'description' => __('The first name of the owner of the invoice.', 'invoicing'),
1163 1163
 							'type'        => 'string',
1164
-							'context'     => array( 'view', 'edit', 'embed' ),
1164
+							'context'     => array('view', 'edit', 'embed'),
1165 1165
 						),
1166 1166
 
1167 1167
 						'last_name'       => array(
1168
-							'description' => __( 'The last name of the owner of the invoice.', 'invoicing' ),
1168
+							'description' => __('The last name of the owner of the invoice.', 'invoicing'),
1169 1169
 							'type'        => 'string',
1170
-							'context'     => array( 'view', 'edit', 'embed' ),
1170
+							'context'     => array('view', 'edit', 'embed'),
1171 1171
 						),
1172 1172
 
1173 1173
 						'company'         => array(
1174
-							'description' => __( 'The company of the owner of the invoice.', 'invoicing' ),
1174
+							'description' => __('The company of the owner of the invoice.', 'invoicing'),
1175 1175
 							'type'        => 'string',
1176
-							'context'     => array( 'view', 'edit', 'embed' ),
1176
+							'context'     => array('view', 'edit', 'embed'),
1177 1177
 						),
1178 1178
 
1179 1179
 						'vat_number'      => array(
1180
-							'description' => __( 'The VAT number of the owner of the invoice.', 'invoicing' ),
1180
+							'description' => __('The VAT number of the owner of the invoice.', 'invoicing'),
1181 1181
 							'type'        => 'string',
1182
-							'context'     => array( 'view', 'edit', 'embed' ),
1182
+							'context'     => array('view', 'edit', 'embed'),
1183 1183
 						),
1184 1184
 
1185 1185
 						'vat_rate'        => array(
1186
-							'description' => __( 'The VAT rate applied on the invoice.', 'invoicing' ),
1186
+							'description' => __('The VAT rate applied on the invoice.', 'invoicing'),
1187 1187
 							'type'        => 'string',
1188
-							'context'     => array( 'view', 'edit', 'embed' ),
1188
+							'context'     => array('view', 'edit', 'embed'),
1189 1189
 						),
1190 1190
 
1191 1191
 						'address'        => array(
1192
-							'description' => __( 'The address of the invoice owner.', 'invoicing' ),
1192
+							'description' => __('The address of the invoice owner.', 'invoicing'),
1193 1193
 							'type'        => 'string',
1194
-							'context'     => array( 'view', 'edit', 'embed' ),
1194
+							'context'     => array('view', 'edit', 'embed'),
1195 1195
 						),
1196 1196
 
1197 1197
 						'city'            => array(
1198
-							'description' => __( 'The city of the invoice owner.', 'invoicing' ),
1198
+							'description' => __('The city of the invoice owner.', 'invoicing'),
1199 1199
 							'type'        => 'string',
1200
-							'context'     => array( 'view', 'edit', 'embed' ),
1200
+							'context'     => array('view', 'edit', 'embed'),
1201 1201
 						),
1202 1202
 
1203 1203
 						'country'         => array(
1204
-							'description' => __( 'The country of the invoice owner.', 'invoicing' ),
1204
+							'description' => __('The country of the invoice owner.', 'invoicing'),
1205 1205
 							'type'        => 'string',
1206
-							'context'     => array( 'view', 'edit', 'embed' ),
1206
+							'context'     => array('view', 'edit', 'embed'),
1207 1207
 						),
1208 1208
 
1209 1209
 						'state'           => array(
1210
-							'description' => __( 'The state of the invoice owner.', 'invoicing' ),
1210
+							'description' => __('The state of the invoice owner.', 'invoicing'),
1211 1211
 							'type'        => 'string',
1212
-							'context'     => array( 'view', 'edit', 'embed' ),
1212
+							'context'     => array('view', 'edit', 'embed'),
1213 1213
 						),
1214 1214
 
1215 1215
 						'zip'             => array(
1216
-							'description' => __( 'The zip code of the invoice owner.', 'invoicing' ),
1216
+							'description' => __('The zip code of the invoice owner.', 'invoicing'),
1217 1217
 							'type'        => 'string',
1218
-							'context'     => array( 'view', 'edit', 'embed' ),
1218
+							'context'     => array('view', 'edit', 'embed'),
1219 1219
 						),
1220 1220
 
1221 1221
 						'phone'             => array(
1222
-							'description' => __( 'The phone number of the invoice owner.', 'invoicing' ),
1222
+							'description' => __('The phone number of the invoice owner.', 'invoicing'),
1223 1223
 							'type'        => 'string',
1224
-							'context'     => array( 'view', 'edit', 'embed' ),
1224
+							'context'     => array('view', 'edit', 'embed'),
1225 1225
 						),
1226 1226
 					),
1227 1227
 				),
1228 1228
 
1229 1229
 				'id'           => array(
1230
-					'description' => __( 'Unique identifier for the invoice.', 'invoicing' ),
1230
+					'description' => __('Unique identifier for the invoice.', 'invoicing'),
1231 1231
 					'type'        => 'integer',
1232
-					'context'     => array( 'view', 'edit', 'embed' ),
1232
+					'context'     => array('view', 'edit', 'embed'),
1233 1233
 					'readonly'    => true,
1234 1234
 				),
1235 1235
 
1236 1236
 				'key'			  => array(
1237
-					'description' => __( 'A unique key for the invoice.', 'invoicing' ),
1237
+					'description' => __('A unique key for the invoice.', 'invoicing'),
1238 1238
 					'type'        => 'string',
1239
-					'context'     => array( 'view', 'edit', 'embed' ),
1239
+					'context'     => array('view', 'edit', 'embed'),
1240 1240
 					'readonly'    => true,
1241 1241
 				),
1242 1242
 
1243 1243
 				'number'		  => array(
1244
-					'description' => __( 'The invoice number.', 'invoicing' ),
1244
+					'description' => __('The invoice number.', 'invoicing'),
1245 1245
 					'type'        => 'string',
1246
-					'context'     => array( 'view', 'edit', 'embed' ),
1246
+					'context'     => array('view', 'edit', 'embed'),
1247 1247
 					'readonly'    => true,
1248 1248
 				),
1249 1249
 
1250 1250
 				'transaction_id'  => array(
1251
-					'description' => __( 'The transaction id of the invoice.', 'invoicing' ),
1251
+					'description' => __('The transaction id of the invoice.', 'invoicing'),
1252 1252
 					'type'        => 'string',
1253
-					'context'     => array( 'view', 'edit', 'embed' ),
1253
+					'context'     => array('view', 'edit', 'embed'),
1254 1254
 				),
1255 1255
 
1256 1256
 				'gateway'		  => array(
1257
-					'description' => __( 'The gateway used to process the invoice.', 'invoicing' ),
1257
+					'description' => __('The gateway used to process the invoice.', 'invoicing'),
1258 1258
 					'type'        => 'string',
1259
-					'context'     => array( 'view', 'edit', 'embed' ),
1259
+					'context'     => array('view', 'edit', 'embed'),
1260 1260
 				),
1261 1261
 
1262 1262
 				'gateway_title'	  => array(
1263
-					'description' => __( 'The title of the gateway used to process the invoice.', 'invoicing' ),
1263
+					'description' => __('The title of the gateway used to process the invoice.', 'invoicing'),
1264 1264
 					'type'        => 'string',
1265
-					'context'     => array( 'view', 'edit', 'embed' ),
1265
+					'context'     => array('view', 'edit', 'embed'),
1266 1266
 				),
1267 1267
 
1268 1268
 				'total'	  		  => array(
1269
-					'description' => __( 'The total amount of the invoice.', 'invoicing' ),
1269
+					'description' => __('The total amount of the invoice.', 'invoicing'),
1270 1270
 					'type'        => 'number',
1271
-					'context'     => array( 'view', 'edit', 'embed' ),
1271
+					'context'     => array('view', 'edit', 'embed'),
1272 1272
 					'readonly'    => true,
1273 1273
 				),
1274 1274
 
1275 1275
 				'discount'		  => array(
1276
-					'description' => __( 'The discount applied to the invoice.', 'invoicing' ),
1276
+					'description' => __('The discount applied to the invoice.', 'invoicing'),
1277 1277
 					'type'        => 'number',
1278
-					'context'     => array( 'view', 'edit', 'embed' ),
1278
+					'context'     => array('view', 'edit', 'embed'),
1279 1279
 					'readonly'    => true,
1280 1280
 				),
1281 1281
 
1282 1282
 				'discount_code'	  => array(
1283
-					'description' => __( 'The discount code applied to the invoice.', 'invoicing' ),
1283
+					'description' => __('The discount code applied to the invoice.', 'invoicing'),
1284 1284
 					'type'        => 'string',
1285
-					'context'     => array( 'view', 'edit', 'embed' ),
1285
+					'context'     => array('view', 'edit', 'embed'),
1286 1286
 					'readonly'    => true,
1287 1287
 				),
1288 1288
 
1289 1289
 				'tax'	  		  => array(
1290
-					'description' => __( 'The tax applied to the invoice.', 'invoicing' ),
1290
+					'description' => __('The tax applied to the invoice.', 'invoicing'),
1291 1291
 					'type'        => 'number',
1292
-					'context'     => array( 'view', 'edit', 'embed' ),
1292
+					'context'     => array('view', 'edit', 'embed'),
1293 1293
 					'readonly'    => true,
1294 1294
 				),
1295 1295
 
1296 1296
 				'fees_total'	  => array(
1297
-					'description' => __( 'The total fees applied to the invoice.', 'invoicing' ),
1297
+					'description' => __('The total fees applied to the invoice.', 'invoicing'),
1298 1298
 					'type'        => 'number',
1299
-					'context'     => array( 'view', 'edit', 'embed' ),
1299
+					'context'     => array('view', 'edit', 'embed'),
1300 1300
 					'readonly'    => true,
1301 1301
 				),
1302 1302
 
1303 1303
 				'subtotal'	  	  => array(
1304
-					'description' => __( 'The sub-total for the invoice.', 'invoicing' ),
1304
+					'description' => __('The sub-total for the invoice.', 'invoicing'),
1305 1305
 					'type'        => 'number',
1306
-					'context'     => array( 'view', 'edit', 'embed' ),
1306
+					'context'     => array('view', 'edit', 'embed'),
1307 1307
 					'readonly'    => true,
1308 1308
 				),
1309 1309
 
1310 1310
 				'currency'	  	  => array(
1311
-					'description' => __( 'The currency used to process the invoice.', 'invoicing' ),
1311
+					'description' => __('The currency used to process the invoice.', 'invoicing'),
1312 1312
 					'type'        => 'string',
1313
-					'context'     => array( 'view', 'edit', 'embed' ),
1313
+					'context'     => array('view', 'edit', 'embed'),
1314 1314
 				),
1315 1315
 
1316 1316
 				'cart_details'	  => array(
1317
-					'description' => __( 'The cart details for invoice.', 'invoicing' ),
1317
+					'description' => __('The cart details for invoice.', 'invoicing'),
1318 1318
 					'type'        => 'array',
1319
-					'context'     => array( 'view', 'edit', 'embed' ),
1319
+					'context'     => array('view', 'edit', 'embed'),
1320 1320
 					'required'	  => true,
1321 1321
 				),
1322 1322
 
1323 1323
 				'date'         => array(
1324
-					'description' => __( "The date the invoice was published, in the site's timezone.", 'invoicing' ),
1325
-					'type'        => array( 'string', 'null' ),
1324
+					'description' => __("The date the invoice was published, in the site's timezone.", 'invoicing'),
1325
+					'type'        => array('string', 'null'),
1326 1326
 					'format'      => 'date-time',
1327
-					'context'     => array( 'view', 'edit', 'embed' ),
1327
+					'context'     => array('view', 'edit', 'embed'),
1328 1328
 				),
1329 1329
 
1330 1330
 				'due_date'     => array(
1331
-					'description' => __( 'The due date for the invoice.', 'invoicing' ),
1332
-					'type'        => array( 'string', 'null' ),
1331
+					'description' => __('The due date for the invoice.', 'invoicing'),
1332
+					'type'        => array('string', 'null'),
1333 1333
 					'format'      => 'date-time',
1334
-					'context'     => array( 'view', 'edit', 'embed' ),
1334
+					'context'     => array('view', 'edit', 'embed'),
1335 1335
 				),
1336 1336
 
1337 1337
 				'completed_date'  => array(
1338
-					'description' => __( 'The completed date for the invoice.', 'invoicing' ),
1339
-					'type'        => array( 'string', 'null' ),
1338
+					'description' => __('The completed date for the invoice.', 'invoicing'),
1339
+					'type'        => array('string', 'null'),
1340 1340
 					'format'      => 'date-time',
1341
-					'context'     => array( 'view', 'edit', 'embed' ),
1341
+					'context'     => array('view', 'edit', 'embed'),
1342 1342
 					'readonly'    => true,
1343 1343
 				),
1344 1344
 				
1345 1345
 				'link'         => array(
1346
-					'description' => __( 'URL to the invoice.', 'invoicing' ),
1346
+					'description' => __('URL to the invoice.', 'invoicing'),
1347 1347
 					'type'        => 'string',
1348 1348
 					'format'      => 'uri',
1349
-					'context'     => array( 'view', 'edit', 'embed' ),
1349
+					'context'     => array('view', 'edit', 'embed'),
1350 1350
 					'readonly'    => true,
1351 1351
 				),
1352 1352
 
1353 1353
 				'mode'       	  => array(
1354
-					'description' => __( 'The mode used to process the invoice.', 'invoicing' ),
1354
+					'description' => __('The mode used to process the invoice.', 'invoicing'),
1355 1355
 					'type'        => 'string',
1356
-					'enum'        => array( 'live', 'test' ),
1357
-					'context'     => array( 'view', 'edit', 'embed' ),
1356
+					'enum'        => array('live', 'test'),
1357
+					'context'     => array('view', 'edit', 'embed'),
1358 1358
 					'readonly'    => true,
1359 1359
 				),
1360 1360
 
1361 1361
 				'slug'       	  => array(
1362
-					'description' => __( 'An alphanumeric identifier for the invoice.', 'invoicing' ),
1362
+					'description' => __('An alphanumeric identifier for the invoice.', 'invoicing'),
1363 1363
 					'type'        => 'string',
1364
-					'context'     => array( 'view', 'edit', 'embed' ),
1364
+					'context'     => array('view', 'edit', 'embed'),
1365 1365
 					'arg_options' => array(
1366
-						'sanitize_callback' => array( $this, 'sanitize_slug' ),
1366
+						'sanitize_callback' => array($this, 'sanitize_slug'),
1367 1367
 					),
1368 1368
 					'readonly'    => true,
1369 1369
 				),
1370 1370
 
1371 1371
 				'status'       	  => array(
1372
-					'description' => __( 'A named status for the invoice.', 'invoicing' ),
1372
+					'description' => __('A named status for the invoice.', 'invoicing'),
1373 1373
 					'type'        => 'string',
1374 1374
 					'enum'        => $this->get_post_statuses(),
1375
-					'context'     => array( 'view', 'edit' ),
1375
+					'context'     => array('view', 'edit'),
1376 1376
 					'default'	  => 'wpi-pending',
1377 1377
 				),
1378 1378
 
1379 1379
 				'status_nicename' => array(
1380
-					'description' => __( 'A human-readable status name for the invoice.', 'invoicing' ),
1380
+					'description' => __('A human-readable status name for the invoice.', 'invoicing'),
1381 1381
 					'type'        => 'string',
1382
-					'context'     => array( 'view', 'embed' ),
1382
+					'context'     => array('view', 'embed'),
1383 1383
 					'readonly'    => true,
1384 1384
 				),
1385 1385
 
1386 1386
 				'post_type'       => array(
1387
-					'description' => __( 'The post type for the invoice.', 'invoicing' ),
1387
+					'description' => __('The post type for the invoice.', 'invoicing'),
1388 1388
 					'type'        => 'string',
1389
-					'context'     => array( 'view' ),
1389
+					'context'     => array('view'),
1390 1390
 					'readonly'    => true,
1391 1391
 				),
1392 1392
 			),
@@ -1404,12 +1404,12 @@  discard block
 block discarded – undo
1404 1404
 		 *
1405 1405
 		 * @param array   $schema    The invoice schema.
1406 1406
 		 */
1407
-        $schema = apply_filters( "wpinv_rest_invoice_schema", $schema );
1407
+        $schema = apply_filters("wpinv_rest_invoice_schema", $schema);
1408 1408
 
1409 1409
 		// Cache the invoice schema.
1410 1410
 		$this->schema = $schema;
1411 1411
 		
1412
-		return $this->add_additional_fields_schema( $this->schema );
1412
+		return $this->add_additional_fields_schema($this->schema);
1413 1413
 	}
1414 1414
 
1415 1415
 	/**
@@ -1421,20 +1421,20 @@  discard block
 block discarded – undo
1421 1421
 	 */
1422 1422
 	protected function get_schema_links() {
1423 1423
 
1424
-		$href = rest_url( "{$this->namespace}/{$this->rest_base}/{id}" );
1424
+		$href = rest_url("{$this->namespace}/{$this->rest_base}/{id}");
1425 1425
 
1426 1426
 		$links = array();
1427 1427
 
1428 1428
 		$links[] = array(
1429 1429
 			'rel'          => 'https://api.w.org/action-publish',
1430
-			'title'        => __( 'The current user can mark this invoice as completed.', 'invoicing' ),
1430
+			'title'        => __('The current user can mark this invoice as completed.', 'invoicing'),
1431 1431
 			'href'         => $href,
1432 1432
 			'targetSchema' => array(
1433 1433
 				'type'       => 'object',
1434 1434
 				'properties' => array(
1435 1435
 					'status' => array(
1436 1436
 						'type' => 'string',
1437
-						'enum' => array( 'publish', 'wpi-renewal' ),
1437
+						'enum' => array('publish', 'wpi-renewal'),
1438 1438
 					),
1439 1439
 				),
1440 1440
 			),
@@ -1442,7 +1442,7 @@  discard block
 block discarded – undo
1442 1442
 
1443 1443
 		$links[] = array(
1444 1444
 			'rel'          => 'https://api.w.org/action-assign-author',
1445
-			'title'        => __( 'The current user can change the owner of this invoice.', 'invoicing' ),
1445
+			'title'        => __('The current user can change the owner of this invoice.', 'invoicing'),
1446 1446
 			'href'         => $href,
1447 1447
 			'targetSchema' => array(
1448 1448
 				'type'       => 'object',
@@ -1465,24 +1465,24 @@  discard block
 block discarded – undo
1465 1465
 	 * @param WPInv_Invoice $invoice Invoice Object.
1466 1466
 	 * @return array Links for the given invoice.
1467 1467
 	 */
1468
-	protected function prepare_links( $invoice ) {
1468
+	protected function prepare_links($invoice) {
1469 1469
 
1470 1470
 		// Prepare the base REST API endpoint for invoices.
1471
-		$base = sprintf( '%s/%s', $this->namespace, $this->rest_base );
1471
+		$base = sprintf('%s/%s', $this->namespace, $this->rest_base);
1472 1472
 
1473 1473
 		// Entity meta.
1474 1474
 		$links = array(
1475 1475
 			'self'       => array(
1476
-				'href' => rest_url( trailingslashit( $base ) . $invoice->ID ),
1476
+				'href' => rest_url(trailingslashit($base) . $invoice->ID),
1477 1477
 			),
1478 1478
 			'collection' => array(
1479
-				'href' => rest_url( $base ),
1479
+				'href' => rest_url($base),
1480 1480
 			),
1481 1481
 		);
1482 1482
 
1483
-		if ( ! empty( $invoice->user_id ) ) {
1483
+		if (!empty($invoice->user_id)) {
1484 1484
 			$links['user'] = array(
1485
-				'href'       => rest_url( 'wp/v2/users/' . $invoice->user_id ),
1485
+				'href'       => rest_url('wp/v2/users/' . $invoice->user_id),
1486 1486
 				'embeddable' => true,
1487 1487
 			);
1488 1488
 		}
@@ -1496,7 +1496,7 @@  discard block
 block discarded – undo
1496 1496
 		 *
1497 1497
 		 * @param array   $links    Rest links.
1498 1498
 		 */
1499
-		return apply_filters( "wpinv_rest_invoice_links", $links );
1499
+		return apply_filters("wpinv_rest_invoice_links", $links);
1500 1500
 
1501 1501
 	}
1502 1502
 
@@ -1509,24 +1509,24 @@  discard block
 block discarded – undo
1509 1509
 	 * @param WP_REST_Request $request Request object.
1510 1510
 	 * @return array List of link relations.
1511 1511
 	 */
1512
-	protected function get_available_actions( $invoice, $request ) {
1512
+	protected function get_available_actions($invoice, $request) {
1513 1513
 
1514
-		if ( 'edit' !== $request['context'] ) {
1514
+		if ('edit' !== $request['context']) {
1515 1515
 			return array();
1516 1516
 		}
1517 1517
 
1518 1518
 		$rels = array();
1519 1519
 
1520 1520
 		// Retrieve the post type object.
1521
-		$post_type = get_post_type_object( $invoice->post_type );
1521
+		$post_type = get_post_type_object($invoice->post_type);
1522 1522
 
1523 1523
 		// Mark invoice as completed.
1524
-		if ( current_user_can( $post_type->cap->publish_posts ) ) {
1524
+		if (current_user_can($post_type->cap->publish_posts)) {
1525 1525
 			$rels[] = 'https://api.w.org/action-publish';
1526 1526
 		}
1527 1527
 
1528 1528
 		// Change the owner of the invoice.
1529
-		if ( current_user_can( $post_type->cap->edit_others_posts ) ) {
1529
+		if (current_user_can($post_type->cap->edit_others_posts)) {
1530 1530
 			$rels[] = 'https://api.w.org/action-assign-author';
1531 1531
 		}
1532 1532
 
@@ -1539,7 +1539,7 @@  discard block
 block discarded – undo
1539 1539
 		 *
1540 1540
 		 * @param array   $rels    Available link relations.
1541 1541
 		 */
1542
-		return apply_filters( "wpinv_rest_invoice_link_relations", $rels );
1542
+		return apply_filters("wpinv_rest_invoice_link_relations", $rels);
1543 1543
 	}
1544 1544
 
1545 1545
 	/**
@@ -1552,8 +1552,8 @@  discard block
 block discarded – undo
1552 1552
 	 * @param string          $parameter Additional parameter to pass to validation.
1553 1553
 	 * @return array|WP_Error A list of valid statuses, otherwise WP_Error object.
1554 1554
 	 */
1555
-	public function sanitize_post_statuses( $statuses, $request, $parameter ) {
1556
-		return array_intersect( wp_parse_slug_list( $statuses ), $this->get_post_statuses() );
1555
+	public function sanitize_post_statuses($statuses, $request, $parameter) {
1556
+		return array_intersect(wp_parse_slug_list($statuses), $this->get_post_statuses());
1557 1557
 	}
1558 1558
 
1559 1559
 	/**
@@ -1564,7 +1564,7 @@  discard block
 block discarded – undo
1564 1564
 	 * @return array A list of registered item statuses.
1565 1565
 	 */
1566 1566
 	public function get_post_statuses() {
1567
-		return array_keys( wpinv_get_invoice_statuses( true, true ) );
1567
+		return array_keys(wpinv_get_invoice_statuses(true, true));
1568 1568
 	}
1569 1569
     
1570 1570
 }
1571 1571
\ No newline at end of file
Please login to merge, or discard this patch.
includes/class-wpinv-api.php 1 patch
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -7,7 +7,7 @@  discard block
 block discarded – undo
7 7
  */
8 8
  
9 9
 // MUST have WordPress.
10
-if ( !defined( 'WPINC' ) ) {
10
+if (!defined('WPINC')) {
11 11
     exit;
12 12
 }
13 13
 
@@ -19,7 +19,7 @@  discard block
 block discarded – undo
19 19
     /**
20 20
      * @param string A prefix for our REST routes
21 21
      */
22
-    public $api_namespace    = '';
22
+    public $api_namespace = '';
23 23
 
24 24
     /**
25 25
      * @param WPInv_REST_Invoice_Controller Invoices controller
@@ -42,19 +42,19 @@  discard block
 block discarded – undo
42 42
      * @since 1.0.13
43 43
      * Sets the API namespace and inits hooks
44 44
      */
45
-    public function __construct( $api_namespace = 'invoicing/v1' ) {
45
+    public function __construct($api_namespace = 'invoicing/v1') {
46 46
 
47 47
         // Include controllers and related files
48 48
         $this->includes();
49 49
 
50 50
         // Set up class variables
51
-        $this->api_namespace       = apply_filters( 'wpinv_rest_api_namespace', $api_namespace );
52
-        $this->invoices_controller = new WPInv_REST_Invoice_Controller( $this->api_namespace );
53
-        $this->items_controller    = new WPInv_REST_Items_Controller( $this->api_namespace );
54
-        $this->discounts_controller= new WPInv_REST_Discounts_Controller( $this->api_namespace );
51
+        $this->api_namespace       = apply_filters('wpinv_rest_api_namespace', $api_namespace);
52
+        $this->invoices_controller = new WPInv_REST_Invoice_Controller($this->api_namespace);
53
+        $this->items_controller    = new WPInv_REST_Items_Controller($this->api_namespace);
54
+        $this->discounts_controller = new WPInv_REST_Discounts_Controller($this->api_namespace);
55 55
 
56 56
         //Register REST routes
57
-        add_action( 'rest_api_init', array( $this, 'register_rest_routes' ) );
57
+        add_action('rest_api_init', array($this, 'register_rest_routes'));
58 58
     }
59 59
 
60 60
 
@@ -84,7 +84,7 @@  discard block
 block discarded – undo
84 84
 		 * @param array           $invoice_data Invoice properties.
85 85
 		 * @param WP_REST_Request $request The request used.
86 86
 		 */
87
-        do_action( "wpinv_register_rest_routes", $this );
87
+        do_action("wpinv_register_rest_routes", $this);
88 88
         
89 89
     }
90 90
 
@@ -97,13 +97,13 @@  discard block
 block discarded – undo
97 97
     protected function includes() {
98 98
         
99 99
         // Invoices
100
-        require_once( WPINV_PLUGIN_DIR . 'includes/api/class-wpinv-rest-invoice-controller.php' );
100
+        require_once(WPINV_PLUGIN_DIR . 'includes/api/class-wpinv-rest-invoice-controller.php');
101 101
 
102 102
         // Items
103
-        require_once( WPINV_PLUGIN_DIR . 'includes/api/class-wpinv-rest-items-controller.php' );
103
+        require_once(WPINV_PLUGIN_DIR . 'includes/api/class-wpinv-rest-items-controller.php');
104 104
 
105 105
         // Discounts
106
-        require_once( WPINV_PLUGIN_DIR . 'includes/api/class-wpinv-rest-discounts-controller.php' );
106
+        require_once(WPINV_PLUGIN_DIR . 'includes/api/class-wpinv-rest-discounts-controller.php');
107 107
 
108 108
     }
109 109
     
Please login to merge, or discard this patch.
includes/wpinv-subscription.php 1 patch
Spacing   +168 added lines, -168 removed lines patch added patch discarded remove patch
@@ -1,7 +1,7 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3 3
 // Exit if accessed directly
4
-if ( ! defined( 'ABSPATH' ) ) {
4
+if (!defined('ABSPATH')) {
5 5
 	exit;
6 6
 }
7 7
 
@@ -38,15 +38,15 @@  discard block
 block discarded – undo
38 38
 	 * @since  1.0.0
39 39
 	 * @return void
40 40
 	 */
41
-	function __construct( $_id_or_object = 0, $_by_profile_id = false ) {
41
+	function __construct($_id_or_object = 0, $_by_profile_id = false) {
42 42
 
43 43
 		$this->subs_db = new WPInv_Subscriptions_DB;
44 44
 
45
-		if( $_by_profile_id ) {
45
+		if ($_by_profile_id) {
46 46
 
47
-			$_sub = $this->subs_db->get_by( 'profile_id', $_id_or_object );
47
+			$_sub = $this->subs_db->get_by('profile_id', $_id_or_object);
48 48
 
49
-			if( empty( $_sub ) ) {
49
+			if (empty($_sub)) {
50 50
 				return false;
51 51
 			}
52 52
 
@@ -54,7 +54,7 @@  discard block
 block discarded – undo
54 54
 
55 55
 		}
56 56
 
57
-		return $this->setup_subscription( $_id_or_object );
57
+		return $this->setup_subscription($_id_or_object);
58 58
 	}
59 59
 
60 60
 	/**
@@ -63,34 +63,34 @@  discard block
 block discarded – undo
63 63
 	 * @since  1.0.0
64 64
 	 * @return void
65 65
 	 */
66
-	private function setup_subscription( $id_or_object = 0 ) {
66
+	private function setup_subscription($id_or_object = 0) {
67 67
 
68
-		if( empty( $id_or_object ) ) {
68
+		if (empty($id_or_object)) {
69 69
 			return false;
70 70
 		}
71 71
 
72
-		if( is_numeric( $id_or_object ) ) {
72
+		if (is_numeric($id_or_object)) {
73 73
 
74
-			$sub = $this->subs_db->get( $id_or_object );
74
+			$sub = $this->subs_db->get($id_or_object);
75 75
 
76
-		} elseif( is_object( $id_or_object ) ) {
76
+		} elseif (is_object($id_or_object)) {
77 77
 
78 78
 			$sub = $id_or_object;
79 79
 
80 80
 		}
81 81
 
82
-		if( empty( $sub ) ) {
82
+		if (empty($sub)) {
83 83
 			return false;
84 84
 		}
85 85
 
86
-		foreach( $sub as $key => $value ) {
86
+		foreach ($sub as $key => $value) {
87 87
 			$this->$key = $value;
88 88
 		}
89 89
 
90
-		$this->customer = get_userdata( $this->customer_id );
91
-		$this->gateway  = wpinv_get_payment_gateway( $this->parent_payment_id );
90
+		$this->customer = get_userdata($this->customer_id);
91
+		$this->gateway  = wpinv_get_payment_gateway($this->parent_payment_id);
92 92
 
93
-		do_action( 'wpinv_recurring_setup_subscription', $this );
93
+		do_action('wpinv_recurring_setup_subscription', $this);
94 94
 
95 95
 		return $this;
96 96
 	}
@@ -100,15 +100,15 @@  discard block
 block discarded – undo
100 100
 	 *
101 101
 	 * @since 1.0.0
102 102
 	 */
103
-	public function __get( $key ) {
103
+	public function __get($key) {
104 104
 
105
-		if( method_exists( $this, 'get_' . $key ) ) {
105
+		if (method_exists($this, 'get_' . $key)) {
106 106
 
107
-			return call_user_func( array( $this, 'get_' . $key ) );
107
+			return call_user_func(array($this, 'get_' . $key));
108 108
 
109 109
 		} else {
110 110
 
111
-			return new WP_Error( 'wpinv-subscription-invalid-property', sprintf( __( 'Can\'t get property %s', 'invoicing' ), $key ) );
111
+			return new WP_Error('wpinv-subscription-invalid-property', sprintf(__('Can\'t get property %s', 'invoicing'), $key));
112 112
 
113 113
 		}
114 114
 
@@ -121,9 +121,9 @@  discard block
 block discarded – undo
121 121
 	 * @param  array  $data Array of attributes for a subscription
122 122
 	 * @return mixed  false if data isn't passed and class not instantiated for creation
123 123
 	 */
124
-	public function create( $data = array() ) {
124
+	public function create($data = array()) {
125 125
 
126
-		if ( $this->id != 0 ) {
126
+		if ($this->id != 0) {
127 127
 			return false;
128 128
 		}
129 129
 
@@ -142,11 +142,11 @@  discard block
 block discarded – undo
142 142
 			'profile_id'        => '',
143 143
 		);
144 144
 
145
-		$args = wp_parse_args( $data, $defaults );
145
+		$args = wp_parse_args($data, $defaults);
146 146
 
147
-		if( $args['expiration'] && strtotime( 'NOW', current_time( 'timestamp' ) ) > strtotime( $args['expiration'], current_time( 'timestamp' ) ) ) {
147
+		if ($args['expiration'] && strtotime('NOW', current_time('timestamp')) > strtotime($args['expiration'], current_time('timestamp'))) {
148 148
 
149
-			if( 'active' == $args['status'] || 'trialling' == $args['status'] ) {
149
+			if ('active' == $args['status'] || 'trialling' == $args['status']) {
150 150
 
151 151
 				// Force an active subscription to expired if expiration date is in the past
152 152
 				$args['status'] = 'expired';
@@ -154,13 +154,13 @@  discard block
 block discarded – undo
154 154
 			}
155 155
 		}
156 156
 
157
-		do_action( 'wpinv_subscription_pre_create', $args );
157
+		do_action('wpinv_subscription_pre_create', $args);
158 158
 
159
-		$id = $this->subs_db->insert( $args, 'subscription' );
159
+		$id = $this->subs_db->insert($args, 'subscription');
160 160
 
161
-		do_action( 'wpinv_subscription_post_create', $id, $args );
161
+		do_action('wpinv_subscription_post_create', $id, $args);
162 162
 
163
-		return $this->setup_subscription( $id );
163
+		return $this->setup_subscription($id);
164 164
 
165 165
 	}
166 166
 
@@ -171,11 +171,11 @@  discard block
 block discarded – undo
171 171
 	 * @param  array $args Array of fields to update
172 172
 	 * @return bool
173 173
 	 */
174
-	public function update( $args = array() ) {
174
+	public function update($args = array()) {
175 175
 
176
-		$ret = $this->subs_db->update( $this->id, $args );
176
+		$ret = $this->subs_db->update($this->id, $args);
177 177
 
178
-		do_action( 'wpinv_recurring_update_subscription', $this->id, $args, $this );
178
+		do_action('wpinv_recurring_update_subscription', $this->id, $args, $this);
179 179
 
180 180
 		return $ret;
181 181
 
@@ -188,7 +188,7 @@  discard block
 block discarded – undo
188 188
 	 * @return bool
189 189
 	 */
190 190
 	public function delete() {
191
-		return $this->subs_db->delete( $this->id );
191
+		return $this->subs_db->delete($this->id);
192 192
 	}
193 193
 
194 194
     /**
@@ -208,14 +208,14 @@  discard block
 block discarded – undo
208 208
      * @return array
209 209
      */
210 210
     public function get_child_payments() {
211
-        $payments = get_posts( array(
211
+        $payments = get_posts(array(
212 212
             'post_parent'    => (int) $this->parent_payment_id,
213 213
             'posts_per_page' => '999',
214
-            'post_status'    => array( 'publish', 'wpi-processing', 'wpi-renewal' ),
214
+            'post_status'    => array('publish', 'wpi-processing', 'wpi-renewal'),
215 215
             'orderby'           => 'ID',
216 216
             'order'             => 'DESC',
217 217
             'post_type'      => 'wpi_invoice'
218
-        ) );
218
+        ));
219 219
 
220 220
         return $payments;
221 221
     }
@@ -228,9 +228,9 @@  discard block
 block discarded – undo
228 228
      */
229 229
     public function get_total_payments() {
230 230
         $child_payments = $this->get_child_payments();
231
-        $total_payments = !empty( $child_payments ) ? count( $child_payments ) : 0;
231
+        $total_payments = !empty($child_payments) ? count($child_payments) : 0;
232 232
 
233
-        if ( 'pending' != $this->status ) {
233
+        if ('pending' != $this->status) {
234 234
                 $total_payments++;
235 235
         }
236 236
 
@@ -244,9 +244,9 @@  discard block
 block discarded – undo
244 244
      * @return int
245 245
      */
246 246
     public function get_times_billed() {
247
-        $times_billed = (int)$this->get_total_payments();
247
+        $times_billed = (int) $this->get_total_payments();
248 248
 
249
-        if ( ! empty( $this->trial_period ) && $times_billed > 0 ) {
249
+        if (!empty($this->trial_period) && $times_billed > 0) {
250 250
             $times_billed--;
251 251
         }
252 252
 
@@ -260,51 +260,51 @@  discard block
 block discarded – undo
260 260
      * @param  array $args Array of values for the payment, including amount and transaction ID
261 261
      * @return bool
262 262
      */
263
-    public function add_payment( $args = array() ) {
264
-        if ( ! $this->parent_payment_id ) {
263
+    public function add_payment($args = array()) {
264
+        if (!$this->parent_payment_id) {
265 265
             return false;
266 266
         }
267 267
 
268
-        $args = wp_parse_args( $args, array(
268
+        $args = wp_parse_args($args, array(
269 269
             'amount'         => '',
270 270
             'transaction_id' => '',
271 271
             'gateway'        => ''
272
-        ) );
272
+        ));
273 273
         
274
-        if ( empty( $args['transaction_id'] ) || $this->payment_exists( $args['transaction_id'] ) ) {
274
+        if (empty($args['transaction_id']) || $this->payment_exists($args['transaction_id'])) {
275 275
             return false;
276 276
         }
277 277
         
278
-        $parent_invoice = wpinv_get_invoice( $this->parent_payment_id );
279
-        if ( empty( $parent_invoice->ID ) ) {
278
+        $parent_invoice = wpinv_get_invoice($this->parent_payment_id);
279
+        if (empty($parent_invoice->ID)) {
280 280
             return false;
281 281
         }
282 282
 
283 283
         $invoice = new WPInv_Invoice();
284
-        $invoice->set( 'post_type', 'wpi_invoice' );
285
-        $invoice->set( 'parent_invoice', $this->parent_payment_id );
286
-        $invoice->set( 'currency', $parent_invoice->get_currency() );
287
-        $invoice->set( 'transaction_id', $args['transaction_id'] );
288
-        $invoice->set( 'key', $parent_invoice->generate_key() );
289
-        $invoice->set( 'ip', $parent_invoice->ip );
290
-        $invoice->set( 'user_id', $parent_invoice->get_user_id() );
291
-        $invoice->set( 'first_name', $parent_invoice->get_first_name() );
292
-        $invoice->set( 'last_name', $parent_invoice->get_last_name() );
293
-        $invoice->set( 'phone', $parent_invoice->phone );
294
-        $invoice->set( 'address', $parent_invoice->address );
295
-        $invoice->set( 'city', $parent_invoice->city );
296
-        $invoice->set( 'country', $parent_invoice->country );
297
-        $invoice->set( 'state', $parent_invoice->state );
298
-        $invoice->set( 'zip', $parent_invoice->zip );
299
-        $invoice->set( 'company', $parent_invoice->company );
300
-        $invoice->set( 'vat_number', $parent_invoice->vat_number );
301
-        $invoice->set( 'vat_rate', $parent_invoice->vat_rate );
302
-        $invoice->set( 'adddress_confirmed', $parent_invoice->adddress_confirmed );
303
-
304
-        if ( empty( $args['gateway'] ) ) {
305
-            $invoice->set( 'gateway', $parent_invoice->get_gateway() );
284
+        $invoice->set('post_type', 'wpi_invoice');
285
+        $invoice->set('parent_invoice', $this->parent_payment_id);
286
+        $invoice->set('currency', $parent_invoice->get_currency());
287
+        $invoice->set('transaction_id', $args['transaction_id']);
288
+        $invoice->set('key', $parent_invoice->generate_key());
289
+        $invoice->set('ip', $parent_invoice->ip);
290
+        $invoice->set('user_id', $parent_invoice->get_user_id());
291
+        $invoice->set('first_name', $parent_invoice->get_first_name());
292
+        $invoice->set('last_name', $parent_invoice->get_last_name());
293
+        $invoice->set('phone', $parent_invoice->phone);
294
+        $invoice->set('address', $parent_invoice->address);
295
+        $invoice->set('city', $parent_invoice->city);
296
+        $invoice->set('country', $parent_invoice->country);
297
+        $invoice->set('state', $parent_invoice->state);
298
+        $invoice->set('zip', $parent_invoice->zip);
299
+        $invoice->set('company', $parent_invoice->company);
300
+        $invoice->set('vat_number', $parent_invoice->vat_number);
301
+        $invoice->set('vat_rate', $parent_invoice->vat_rate);
302
+        $invoice->set('adddress_confirmed', $parent_invoice->adddress_confirmed);
303
+
304
+        if (empty($args['gateway'])) {
305
+            $invoice->set('gateway', $parent_invoice->get_gateway());
306 306
         } else {
307
-            $invoice->set( 'gateway', $args['gateway'] );
307
+            $invoice->set('gateway', $args['gateway']);
308 308
         }
309 309
         
310 310
         $recurring_details = $parent_invoice->get_recurring_details();
@@ -312,11 +312,11 @@  discard block
 block discarded – undo
312 312
         // increase the earnings for each item in the subscription
313 313
         $items = $recurring_details['cart_details'];
314 314
         
315
-        if ( $items ) {        
315
+        if ($items) {        
316 316
             $add_items      = array();
317 317
             $cart_details   = array();
318 318
             
319
-            foreach ( $items as $item ) {
319
+            foreach ($items as $item) {
320 320
                 $add_item             = array();
321 321
                 $add_item['id']       = $item['id'];
322 322
                 $add_item['quantity'] = $item['quantity'];
@@ -326,7 +326,7 @@  discard block
 block discarded – undo
326 326
                 break;
327 327
             }
328 328
             
329
-            $invoice->set( 'items', $add_items );
329
+            $invoice->set('items', $add_items);
330 330
             $invoice->cart_details = $cart_details;
331 331
         }
332 332
         
@@ -336,32 +336,32 @@  discard block
 block discarded – undo
336 336
         $tax                = $recurring_details['tax'];
337 337
         $discount           = $recurring_details['discount'];
338 338
         
339
-        if ( $discount > 0 ) {
340
-            $invoice->set( 'discount_code', $parent_invoice->discount_code );
339
+        if ($discount > 0) {
340
+            $invoice->set('discount_code', $parent_invoice->discount_code);
341 341
         }
342 342
         
343
-        $invoice->subtotal = wpinv_round_amount( $subtotal );
344
-        $invoice->tax      = wpinv_round_amount( $tax );
345
-        $invoice->discount = wpinv_round_amount( $discount );
346
-        $invoice->total    = wpinv_round_amount( $total );
343
+        $invoice->subtotal = wpinv_round_amount($subtotal);
344
+        $invoice->tax      = wpinv_round_amount($tax);
345
+        $invoice->discount = wpinv_round_amount($discount);
346
+        $invoice->total    = wpinv_round_amount($total);
347 347
 
348
-        $invoice  = apply_filters( 'wpinv_subscription_add_payment_save', $invoice, $this, $args );
348
+        $invoice = apply_filters('wpinv_subscription_add_payment_save', $invoice, $this, $args);
349 349
 
350 350
         $invoice->save();
351
-        $invoice->update_meta( '_wpinv_subscription_id', $this->id );
351
+        $invoice->update_meta('_wpinv_subscription_id', $this->id);
352 352
         
353
-        if ( !empty( $invoice->ID ) ) {
354
-            wpinv_update_payment_status( $invoice->ID, 'publish' );
353
+        if (!empty($invoice->ID)) {
354
+            wpinv_update_payment_status($invoice->ID, 'publish');
355 355
             sleep(1);
356
-            wpinv_update_payment_status( $invoice->ID, 'wpi-renewal' );
356
+            wpinv_update_payment_status($invoice->ID, 'wpi-renewal');
357 357
             
358
-            $invoice = wpinv_get_invoice( $invoice->ID );
358
+            $invoice = wpinv_get_invoice($invoice->ID);
359 359
 
360 360
 			// Send email notifications.
361
-			wpinv_completed_invoice_notification( $invoice->ID );
361
+			wpinv_completed_invoice_notification($invoice->ID);
362 362
 
363
-            do_action( 'wpinv_recurring_add_subscription_payment', $invoice, $this );
364
-            do_action( 'wpinv_recurring_record_payment', $invoice->ID, $this->parent_payment_id, $args['amount'], $args['transaction_id'] );
363
+            do_action('wpinv_recurring_add_subscription_payment', $invoice, $this);
364
+            do_action('wpinv_recurring_record_payment', $invoice->ID, $this->parent_payment_id, $args['amount'], $args['transaction_id']);
365 365
             
366 366
             return $invoice->ID;
367 367
         }
@@ -377,12 +377,12 @@  discard block
 block discarded – undo
377 377
 	 */
378 378
 	public function get_transaction_id() {
379 379
 
380
-		if( empty( $this->transaction_id ) ) {
380
+		if (empty($this->transaction_id)) {
381 381
 
382
-			$txn_id = wpinv_get_payment_transaction_id( $this->parent_payment_id );
382
+			$txn_id = wpinv_get_payment_transaction_id($this->parent_payment_id);
383 383
 
384
-			if( ! empty( $txn_id ) && (int) $this->parent_payment_id !== (int) $txn_id ) {
385
-				$this->set_transaction_id( $txn_id );
384
+			if (!empty($txn_id) && (int) $this->parent_payment_id !== (int) $txn_id) {
385
+				$this->set_transaction_id($txn_id);
386 386
 			}
387 387
 
388 388
 		}
@@ -397,8 +397,8 @@  discard block
 block discarded – undo
397 397
 	 * @since  1.0.0.4
398 398
 	 * @return bool
399 399
 	 */
400
-	public function set_transaction_id( $txn_id = '' ) {
401
-		$this->update( array( 'transaction_id' => $txn_id ) );
400
+	public function set_transaction_id($txn_id = '') {
401
+		$this->update(array('transaction_id' => $txn_id));
402 402
 		$this->transaction_id = $txn_id;
403 403
 	}
404 404
 
@@ -414,35 +414,35 @@  discard block
 block discarded – undo
414 414
 
415 415
 
416 416
 		// Determine what date to use as the start for the new expiration calculation
417
-		if( $expires > current_time( 'timestamp' ) && $this->is_active() ) {
417
+		if ($expires > current_time('timestamp') && $this->is_active()) {
418 418
 
419
-			$base_date  = $expires;
419
+			$base_date = $expires;
420 420
 
421 421
 		} else {
422 422
 
423
-			$base_date  = current_time( 'timestamp' );
423
+			$base_date = current_time('timestamp');
424 424
 
425 425
 		}
426 426
 
427
-		$last_day = wpinv_cal_days_in_month( CAL_GREGORIAN, date( 'n', $base_date ), date( 'Y', $base_date ) );
427
+		$last_day = wpinv_cal_days_in_month(CAL_GREGORIAN, date('n', $base_date), date('Y', $base_date));
428 428
 
429 429
 
430 430
 		$frequency = isset($this->frequency) ? $this->frequency : 1;
431
-		$expiration = date( 'Y-m-d H:i:s', strtotime( '+' . $frequency . ' ' . $this->period  . ' 23:59:59', $base_date ) );
431
+		$expiration = date('Y-m-d H:i:s', strtotime('+' . $frequency . ' ' . $this->period . ' 23:59:59', $base_date));
432 432
 
433
-		if( date( 'j', $base_date ) == $last_day && 'day' != $this->period ) {
434
-			$expiration = date( 'Y-m-d H:i:s', strtotime( $expiration . ' +2 days' ) );
433
+		if (date('j', $base_date) == $last_day && 'day' != $this->period) {
434
+			$expiration = date('Y-m-d H:i:s', strtotime($expiration . ' +2 days'));
435 435
 		}
436 436
 
437
-		$expiration  = apply_filters( 'wpinv_subscription_renewal_expiration', $expiration, $this->id, $this );
437
+		$expiration  = apply_filters('wpinv_subscription_renewal_expiration', $expiration, $this->id, $this);
438 438
 
439
-		do_action( 'wpinv_subscription_pre_renew', $this->id, $expiration, $this );
439
+		do_action('wpinv_subscription_pre_renew', $this->id, $expiration, $this);
440 440
 
441 441
 		$this->status = 'active';
442 442
 		$times_billed = $this->get_times_billed();
443 443
 
444 444
 		// Complete subscription if applicable
445
-		if ( $this->bill_times > 0 && $times_billed >= $this->bill_times ) {
445
+		if ($this->bill_times > 0 && $times_billed >= $this->bill_times) {
446 446
 			$this->complete();
447 447
 			$this->status = 'completed';
448 448
 		}
@@ -452,10 +452,10 @@  discard block
 block discarded – undo
452 452
 			'status'     => $this->status,
453 453
 		);
454 454
 
455
-        $this->subs_db->update( $this->id, $args );
455
+        $this->subs_db->update($this->id, $args);
456 456
 
457
-		do_action( 'wpinv_subscription_post_renew', $this->id, $expiration, $this );
458
-		do_action( 'wpinv_recurring_set_subscription_status', $this->id, $this->status, $this );
457
+		do_action('wpinv_subscription_post_renew', $this->id, $expiration, $this);
458
+		do_action('wpinv_recurring_set_subscription_status', $this->id, $this->status, $this);
459 459
 
460 460
 	}
461 461
 
@@ -470,7 +470,7 @@  discard block
 block discarded – undo
470 470
 	public function complete() {
471 471
 
472 472
 		// Only mark a subscription as complete if it's not already cancelled.
473
-		if ( 'cancelled' === $this->status ) {
473
+		if ('cancelled' === $this->status) {
474 474
 			return;
475 475
 		}
476 476
 
@@ -478,11 +478,11 @@  discard block
 block discarded – undo
478 478
 			'status' => 'completed'
479 479
 		);
480 480
 
481
-		if( $this->subs_db->update( $this->id, $args ) ) {
481
+		if ($this->subs_db->update($this->id, $args)) {
482 482
 
483 483
 			$this->status = 'completed';
484 484
 
485
-			do_action( 'wpinv_subscription_completed', $this->id, $this );
485
+			do_action('wpinv_subscription_completed', $this->id, $this);
486 486
 
487 487
 		}
488 488
 
@@ -497,15 +497,15 @@  discard block
 block discarded – undo
497 497
 	 * @param  $check_expiration bool True if expiration date should be checked with merchant processor before expiring
498 498
 	 * @return void
499 499
 	 */
500
-	public function expire( $check_expiration = false ) {
500
+	public function expire($check_expiration = false) {
501 501
 
502 502
 		$expiration = $this->expiration;
503 503
 
504
-		if( $check_expiration ) {
504
+		if ($check_expiration) {
505 505
 
506 506
 			// check_expiration() updates $this->expiration so compare to $expiration above
507 507
 
508
-			if( $expiration < $this->get_expiration() && current_time( 'timestamp' ) < $this->get_expiration_time() ) {
508
+			if ($expiration < $this->get_expiration() && current_time('timestamp') < $this->get_expiration_time()) {
509 509
 
510 510
 				return false; // Do not mark as expired since real expiration date is in the future
511 511
 			}
@@ -516,11 +516,11 @@  discard block
 block discarded – undo
516 516
 			'status' => 'expired'
517 517
 		);
518 518
 
519
-		if( $this->subs_db->update( $this->id, $args ) ) {
519
+		if ($this->subs_db->update($this->id, $args)) {
520 520
 
521 521
 			$this->status = 'expired';
522 522
 
523
-			do_action( 'wpinv_subscription_expired', $this->id, $this );
523
+			do_action('wpinv_subscription_expired', $this->id, $this);
524 524
 
525 525
 		}
526 526
 
@@ -538,11 +538,11 @@  discard block
 block discarded – undo
538 538
 			'status' => 'failing'
539 539
 		);
540 540
 
541
-		if( $this->subs_db->update( $this->id, $args ) ) {
541
+		if ($this->subs_db->update($this->id, $args)) {
542 542
 
543 543
 			$this->status = 'failing';
544 544
 
545
-			do_action( 'wpinv_subscription_failing', $this->id, $this );
545
+			do_action('wpinv_subscription_failing', $this->id, $this);
546 546
 
547 547
 
548 548
 		}
@@ -556,7 +556,7 @@  discard block
 block discarded – undo
556 556
      * @return void
557 557
      */
558 558
     public function cancel() {
559
-        if ( 'cancelled' === $this->status ) {
559
+        if ('cancelled' === $this->status) {
560 560
             return; // Already cancelled
561 561
         }
562 562
 
@@ -564,20 +564,20 @@  discard block
 block discarded – undo
564 564
             'status' => 'cancelled'
565 565
         );
566 566
 
567
-        if ( $this->subs_db->update( $this->id, $args ) ) {
568
-            if ( is_user_logged_in() ) {
569
-                $userdata = get_userdata( get_current_user_id() );
567
+        if ($this->subs_db->update($this->id, $args)) {
568
+            if (is_user_logged_in()) {
569
+                $userdata = get_userdata(get_current_user_id());
570 570
                 $user     = $userdata->display_name;
571 571
             } else {
572
-                $user = __( 'gateway', 'invoicing' );
572
+                $user = __('gateway', 'invoicing');
573 573
             }
574 574
 
575
-            $note = sprintf( __( 'Subscription has been cancelled by %s', 'invoicing' ), $user );
576
-            wpinv_insert_payment_note( $this->parent_payment_id, $note, '', '', true );
575
+            $note = sprintf(__('Subscription has been cancelled by %s', 'invoicing'), $user);
576
+            wpinv_insert_payment_note($this->parent_payment_id, $note, '', '', true);
577 577
 
578 578
             $this->status = 'cancelled';
579 579
 
580
-            do_action( 'wpinv_subscription_cancelled', $this->id, $this );
580
+            do_action('wpinv_subscription_cancelled', $this->id, $this);
581 581
         }
582 582
     }
583 583
 
@@ -592,10 +592,10 @@  discard block
 block discarded – undo
592 592
 	 */
593 593
 	public function can_cancel() {
594 594
         $ret = false;
595
-	    if( $this->gateway === 'manual' || in_array( $this->status, $this->get_cancellable_statuses() ) ) {
595
+	    if ($this->gateway === 'manual' || in_array($this->status, $this->get_cancellable_statuses())) {
596 596
             $ret = true;
597 597
         }
598
-		return apply_filters( 'wpinv_subscription_can_cancel', $ret, $this );
598
+		return apply_filters('wpinv_subscription_can_cancel', $ret, $this);
599 599
 	}
600 600
 
601 601
     /**
@@ -606,7 +606,7 @@  discard block
 block discarded – undo
606 606
      * @return      array
607 607
      */
608 608
     public function get_cancellable_statuses() {
609
-        return apply_filters( 'wpinv_recurring_cancellable_statuses', array( 'active', 'trialling', 'failing' ) );
609
+        return apply_filters('wpinv_recurring_cancellable_statuses', array('active', 'trialling', 'failing'));
610 610
     }
611 611
 
612 612
 	/**
@@ -617,9 +617,9 @@  discard block
 block discarded – undo
617 617
 	 */
618 618
 	public function get_cancel_url() {
619 619
 
620
-		$url = wp_nonce_url( add_query_arg( array( 'wpinv_action' => 'cancel_subscription', 'sub_id' => $this->id ) ), 'wpinv-recurring-cancel' );
620
+		$url = wp_nonce_url(add_query_arg(array('wpinv_action' => 'cancel_subscription', 'sub_id' => $this->id)), 'wpinv-recurring-cancel');
621 621
 
622
-		return apply_filters( 'wpinv_subscription_cancel_url', $url, $this );
622
+		return apply_filters('wpinv_subscription_cancel_url', $url, $this);
623 623
 	}
624 624
 
625 625
 	/**
@@ -633,7 +633,7 @@  discard block
 block discarded – undo
633 633
 	 */
634 634
 	public function can_renew() {
635 635
 
636
-		return apply_filters( 'wpinv_subscription_can_renew', true, $this );
636
+		return apply_filters('wpinv_subscription_can_renew', true, $this);
637 637
 	}
638 638
 
639 639
 	/**
@@ -644,9 +644,9 @@  discard block
 block discarded – undo
644 644
 	 */
645 645
 	public function get_renew_url() {
646 646
 
647
-		$url = wp_nonce_url( add_query_arg( array( 'wpinv_action' => 'renew_subscription', 'sub_id' => $this->id ) ), 'wpinv-recurring-renew' );
647
+		$url = wp_nonce_url(add_query_arg(array('wpinv_action' => 'renew_subscription', 'sub_id' => $this->id)), 'wpinv-recurring-renew');
648 648
 
649
-		return apply_filters( 'wpinv_subscription_renew_url', $url, $this );
649
+		return apply_filters('wpinv_subscription_renew_url', $url, $this);
650 650
 	}
651 651
 
652 652
 	/**
@@ -656,7 +656,7 @@  discard block
 block discarded – undo
656 656
 	 * @return bool
657 657
 	 */
658 658
 	public function can_update() {
659
-		return apply_filters( 'wpinv_subscription_can_update', false, $this );
659
+		return apply_filters('wpinv_subscription_can_update', false, $this);
660 660
 	}
661 661
 
662 662
 	/**
@@ -667,9 +667,9 @@  discard block
 block discarded – undo
667 667
 	 */
668 668
 	public function get_update_url() {
669 669
 
670
-		$url = add_query_arg( array( 'action' => 'update', 'subscription_id' => $this->id ) );
670
+		$url = add_query_arg(array('action' => 'update', 'subscription_id' => $this->id));
671 671
 
672
-		return apply_filters( 'wpinv_subscription_update_url', $url, $this );
672
+		return apply_filters('wpinv_subscription_update_url', $url, $this);
673 673
 	}
674 674
 
675 675
 	/**
@@ -682,11 +682,11 @@  discard block
 block discarded – undo
682 682
 
683 683
 		$ret = false;
684 684
 
685
-		if( ! $this->is_expired() && ( $this->status == 'active' || $this->status == 'cancelled' || $this->status == 'trialling' ) ) {
685
+		if (!$this->is_expired() && ($this->status == 'active' || $this->status == 'cancelled' || $this->status == 'trialling')) {
686 686
 			$ret = true;
687 687
 		}
688 688
 
689
-		return apply_filters( 'wpinv_subscription_is_active', $ret, $this->id, $this );
689
+		return apply_filters('wpinv_subscription_is_active', $ret, $this->id, $this);
690 690
 
691 691
 	}
692 692
 
@@ -700,26 +700,26 @@  discard block
 block discarded – undo
700 700
 
701 701
 		$ret = false;
702 702
 
703
-		if ( $this->status == 'expired' ) {
703
+		if ($this->status == 'expired') {
704 704
 
705 705
 			$ret = true;
706 706
 
707
-		} elseif( 'active' === $this->status || 'cancelled' === $this->status || $this->status == 'trialling'  ) {
707
+		} elseif ('active' === $this->status || 'cancelled' === $this->status || $this->status == 'trialling') {
708 708
 
709 709
 			$ret        = false;
710 710
 			$expiration = $this->get_expiration_time();
711 711
 
712
-			if( $expiration && strtotime( 'NOW', current_time( 'timestamp' ) ) > $expiration ) {
712
+			if ($expiration && strtotime('NOW', current_time('timestamp')) > $expiration) {
713 713
 				$ret = true;
714 714
 
715
-				if ( 'active' === $this->status || $this->status == 'trialling'  ) {
715
+				if ('active' === $this->status || $this->status == 'trialling') {
716 716
 					$this->expire();
717 717
 				}
718 718
 			}
719 719
 
720 720
 		}
721 721
 
722
-		return apply_filters( 'wpinv_subscription_is_expired', $ret, $this->id, $this );
722
+		return apply_filters('wpinv_subscription_is_expired', $ret, $this->id, $this);
723 723
 
724 724
 	}
725 725
 
@@ -740,7 +740,7 @@  discard block
 block discarded – undo
740 740
 	 * @return int
741 741
 	 */
742 742
 	public function get_expiration_time() {
743
-		return strtotime( $this->expiration, current_time( 'timestamp' ) );
743
+		return strtotime($this->expiration, current_time('timestamp'));
744 744
 	}
745 745
 
746 746
 	/**
@@ -764,37 +764,37 @@  discard block
 block discarded – undo
764 764
 	 */
765 765
 	public function get_status_label() {
766 766
 
767
-		switch( $this->get_status() ) {
767
+		switch ($this->get_status()) {
768 768
 			case 'active' :
769
-				$status = __( 'Active', 'invoicing' );
769
+				$status = __('Active', 'invoicing');
770 770
 				break;
771 771
 
772 772
 			case 'cancelled' :
773
-				$status = __( 'Cancelled', 'invoicing' );
773
+				$status = __('Cancelled', 'invoicing');
774 774
 				break;
775 775
 
776 776
 			case 'expired' :
777
-				$status = __( 'Expired', 'invoicing' );
777
+				$status = __('Expired', 'invoicing');
778 778
 				break;
779 779
 
780 780
 			case 'pending' :
781
-				$status = __( 'Pending', 'invoicing' );
781
+				$status = __('Pending', 'invoicing');
782 782
 				break;
783 783
 
784 784
 			case 'failing' :
785
-				$status = __( 'Failing', 'invoicing' );
785
+				$status = __('Failing', 'invoicing');
786 786
 				break;
787 787
 
788 788
 			case 'trialling' :
789
-				$status = __( 'Trialling', 'invoicing' );
789
+				$status = __('Trialling', 'invoicing');
790 790
 				break;
791 791
 
792 792
 			case 'completed' :
793
-				$status = __( 'Completed', 'invoicing' );
793
+				$status = __('Completed', 'invoicing');
794 794
 				break;
795 795
 
796 796
 			default:
797
-				$status = ucfirst( $this->get_status() );
797
+				$status = ucfirst($this->get_status());
798 798
 				break;
799 799
 		}
800 800
 
@@ -809,51 +809,51 @@  discard block
 block discarded – undo
809 809
      */
810 810
     public function get_status_label_html() {
811 811
 
812
-        switch( $get_status = $this->get_status() ) {
812
+        switch ($get_status = $this->get_status()) {
813 813
             case 'active' :
814
-                $status = __( 'Active', 'invoicing' );
814
+                $status = __('Active', 'invoicing');
815 815
                 $class = 'label-info';
816 816
                 break;
817 817
 
818 818
             case 'cancelled' :
819
-                $status = __( 'Cancelled', 'invoicing' );
819
+                $status = __('Cancelled', 'invoicing');
820 820
                 $class = 'label-danger';
821 821
                 break;
822 822
 
823 823
             case 'expired' :
824
-                $status = __( 'Expired', 'invoicing' );
824
+                $status = __('Expired', 'invoicing');
825 825
                 $class = 'label-default';
826 826
                 break;
827 827
 
828 828
             case 'pending' :
829
-                $status = __( 'Pending', 'invoicing' );
829
+                $status = __('Pending', 'invoicing');
830 830
                 $class = 'label-primary';
831 831
                 break;
832 832
 
833 833
             case 'failing' :
834
-                $status = __( 'Failing', 'invoicing' );
834
+                $status = __('Failing', 'invoicing');
835 835
                 $class = 'label-danger';
836 836
                 break;
837 837
 
838 838
             case 'trialling' :
839
-                $status = __( 'Trialling', 'invoicing' );
839
+                $status = __('Trialling', 'invoicing');
840 840
                 $class = 'label-info';
841 841
                 break;
842 842
 
843 843
             case 'completed' :
844
-                $status = __( 'Completed', 'invoicing' );
844
+                $status = __('Completed', 'invoicing');
845 845
                 $class = 'label-success';
846 846
                 break;
847 847
 
848 848
             default:
849
-                $status = ucfirst( $this->get_status() );
849
+                $status = ucfirst($this->get_status());
850 850
                 $class = 'label-default';
851 851
                 break;
852 852
         }
853 853
 
854 854
         $label = '<span class="sub-status label label-sub-' . $get_status . ' ' . $class . '">' . $status . '</span>';
855 855
 
856
-        return apply_filters( 'wpinv_subscription_status_label_html', $label, $get_status, $status );
856
+        return apply_filters('wpinv_subscription_status_label_html', $label, $get_status, $status);
857 857
     }
858 858
 
859 859
     /**
@@ -863,18 +863,18 @@  discard block
 block discarded – undo
863 863
      * @param  string $txn_id The transaction ID from the merchant processor
864 864
      * @return bool
865 865
      */
866
-    public function payment_exists( $txn_id = '' ) {
866
+    public function payment_exists($txn_id = '') {
867 867
         global $wpdb;
868 868
 
869
-        if ( empty( $txn_id ) ) {
869
+        if (empty($txn_id)) {
870 870
             return false;
871 871
         }
872 872
 
873
-        $txn_id = esc_sql( $txn_id );
873
+        $txn_id = esc_sql($txn_id);
874 874
 
875
-        $purchase = $wpdb->get_var( "SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_wpinv_transaction_id' AND meta_value = '{$txn_id}' LIMIT 1" );
875
+        $purchase = $wpdb->get_var("SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_wpinv_transaction_id' AND meta_value = '{$txn_id}' LIMIT 1");
876 876
 
877
-        if ( $purchase != null ) {
877
+        if ($purchase != null) {
878 878
             return true;
879 879
         }
880 880
 
Please login to merge, or discard this patch.
includes/wpinv-discount-functions.php 1 patch
Spacing   +396 added lines, -396 removed lines patch added patch discarded remove patch
@@ -7,110 +7,110 @@  discard block
 block discarded – undo
7 7
  */
8 8
  
9 9
 // MUST have WordPress.
10
-if ( !defined( 'WPINC' ) ) {
11
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
10
+if (!defined('WPINC')) {
11
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
12 12
 }
13 13
 
14 14
 function wpinv_get_discount_types() {
15 15
     $discount_types = array(
16
-                        'percent'   => __( 'Percentage', 'invoicing' ),
17
-                        'flat'     => __( 'Flat Amount', 'invoicing' ),
16
+                        'percent'   => __('Percentage', 'invoicing'),
17
+                        'flat'     => __('Flat Amount', 'invoicing'),
18 18
                     );
19
-    return (array)apply_filters( 'wpinv_discount_types', $discount_types );
19
+    return (array) apply_filters('wpinv_discount_types', $discount_types);
20 20
 }
21 21
 
22
-function wpinv_get_discount_type_name( $type = '' ) {
22
+function wpinv_get_discount_type_name($type = '') {
23 23
     $types = wpinv_get_discount_types();
24
-    return isset( $types[ $type ] ) ? $types[ $type ] : '';
24
+    return isset($types[$type]) ? $types[$type] : '';
25 25
 }
26 26
 
27
-function wpinv_delete_discount( $data ) {
28
-    if ( ! isset( $data['_wpnonce'] ) || ! wp_verify_nonce( $data['_wpnonce'], 'wpinv_discount_nonce' ) ) {
29
-        wp_die( __( 'Trying to cheat or something?', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) );
27
+function wpinv_delete_discount($data) {
28
+    if (!isset($data['_wpnonce']) || !wp_verify_nonce($data['_wpnonce'], 'wpinv_discount_nonce')) {
29
+        wp_die(__('Trying to cheat or something?', 'invoicing'), __('Error', 'invoicing'), array('response' => 403));
30 30
     }
31 31
 
32
-    if( ! wpinv_current_user_can_manage_invoicing() ) {
33
-        wp_die( __( 'You do not have permission to delete discount codes', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) );
32
+    if (!wpinv_current_user_can_manage_invoicing()) {
33
+        wp_die(__('You do not have permission to delete discount codes', 'invoicing'), __('Error', 'invoicing'), array('response' => 403));
34 34
     }
35 35
 
36 36
     $discount_id = $data['discount'];
37
-    wpinv_remove_discount( $discount_id );
37
+    wpinv_remove_discount($discount_id);
38 38
 }
39
-add_action( 'wpinv_delete_discount', 'wpinv_delete_discount' );
39
+add_action('wpinv_delete_discount', 'wpinv_delete_discount');
40 40
 
41
-function wpinv_activate_discount( $data ) {
42
-    if ( ! isset( $data['_wpnonce'] ) || ! wp_verify_nonce( $data['_wpnonce'], 'wpinv_discount_nonce' ) ) {
43
-        wp_die( __( 'Trying to cheat or something?', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) );
41
+function wpinv_activate_discount($data) {
42
+    if (!isset($data['_wpnonce']) || !wp_verify_nonce($data['_wpnonce'], 'wpinv_discount_nonce')) {
43
+        wp_die(__('Trying to cheat or something?', 'invoicing'), __('Error', 'invoicing'), array('response' => 403));
44 44
     }
45 45
 
46
-    if( ! wpinv_current_user_can_manage_invoicing() ) {
47
-        wp_die( __( 'You do not have permission to edit discount codes', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) );
46
+    if (!wpinv_current_user_can_manage_invoicing()) {
47
+        wp_die(__('You do not have permission to edit discount codes', 'invoicing'), __('Error', 'invoicing'), array('response' => 403));
48 48
     }
49 49
 
50
-    $id = absint( $data['discount'] );
51
-    wpinv_update_discount_status( $id, 'publish' );
50
+    $id = absint($data['discount']);
51
+    wpinv_update_discount_status($id, 'publish');
52 52
 }
53
-add_action( 'wpinv_activate_discount', 'wpinv_activate_discount' );
53
+add_action('wpinv_activate_discount', 'wpinv_activate_discount');
54 54
 
55
-function wpinv_deactivate_discount( $data ) {
56
-    if ( ! isset( $data['_wpnonce'] ) || ! wp_verify_nonce( $data['_wpnonce'], 'wpinv_discount_nonce' ) ) {
57
-        wp_die( __( 'Trying to cheat or something?', 'invoicing' ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) );
55
+function wpinv_deactivate_discount($data) {
56
+    if (!isset($data['_wpnonce']) || !wp_verify_nonce($data['_wpnonce'], 'wpinv_discount_nonce')) {
57
+        wp_die(__('Trying to cheat or something?', 'invoicing'), __('Error', 'invoicing'), array('response' => 403));
58 58
     }
59 59
 
60
-    if( ! wpinv_current_user_can_manage_invoicing() ) {
61
-        wp_die( __( 'You do not have permission to create discount codes', 'invoicing' ), array( 'response' => 403 ) );
60
+    if (!wpinv_current_user_can_manage_invoicing()) {
61
+        wp_die(__('You do not have permission to create discount codes', 'invoicing'), array('response' => 403));
62 62
     }
63 63
 
64
-    $id = absint( $data['discount'] );
65
-    wpinv_update_discount_status( $id, 'pending' );
64
+    $id = absint($data['discount']);
65
+    wpinv_update_discount_status($id, 'pending');
66 66
 }
67
-add_action( 'wpinv_deactivate_discount', 'wpinv_deactivate_discount' );
67
+add_action('wpinv_deactivate_discount', 'wpinv_deactivate_discount');
68 68
 
69
-function wpinv_get_discounts( $args = array() ) {
69
+function wpinv_get_discounts($args = array()) {
70 70
     $defaults = array(
71 71
         'post_type'      => 'wpi_discount',
72 72
         'posts_per_page' => 20,
73 73
         'paged'          => null,
74
-        'post_status'    => array( 'publish', 'pending', 'draft', 'expired' )
74
+        'post_status'    => array('publish', 'pending', 'draft', 'expired')
75 75
     );
76 76
 
77
-    $args = wp_parse_args( $args, $defaults );
77
+    $args = wp_parse_args($args, $defaults);
78 78
 
79
-    $discounts = get_posts( $args );
79
+    $discounts = get_posts($args);
80 80
 
81
-    if ( $discounts ) {
81
+    if ($discounts) {
82 82
         return $discounts;
83 83
     }
84 84
 
85
-    if( ! $discounts && ! empty( $args['s'] ) ) {
85
+    if (!$discounts && !empty($args['s'])) {
86 86
         $args['meta_key']     = '_wpi_discount_code';
87 87
         $args['meta_value']   = $args['s'];
88 88
         $args['meta_compare'] = 'LIKE';
89
-        unset( $args['s'] );
90
-        $discounts = get_posts( $args );
89
+        unset($args['s']);
90
+        $discounts = get_posts($args);
91 91
     }
92 92
 
93
-    if( $discounts ) {
93
+    if ($discounts) {
94 94
         return $discounts;
95 95
     }
96 96
 
97 97
     return false;
98 98
 }
99 99
 
100
-function wpinv_get_all_discounts( $args = array() ) {
100
+function wpinv_get_all_discounts($args = array()) {
101 101
 
102
-    $args = wp_parse_args( $args, array(
103
-        'status'         => array( 'publish' ),
104
-        'limit'          => get_option( 'posts_per_page' ),
102
+    $args = wp_parse_args($args, array(
103
+        'status'         => array('publish'),
104
+        'limit'          => get_option('posts_per_page'),
105 105
         'page'           => 1,
106 106
         'exclude'        => array(),
107 107
         'orderby'        => 'date',
108 108
         'order'          => 'DESC',
109
-        'type'           => array_keys( wpinv_get_discount_types() ),
109
+        'type'           => array_keys(wpinv_get_discount_types()),
110 110
         'meta_query'     => array(),
111 111
         'return'         => 'objects',
112 112
         'paginate'       => false,
113
-    ) );
113
+    ));
114 114
 
115 115
     $wp_query_args = array(
116 116
         'post_type'      => 'wpi_discount',
@@ -120,18 +120,18 @@  discard block
 block discarded – undo
120 120
         'fields'         => 'ids',
121 121
         'orderby'        => $args['orderby'],
122 122
         'order'          => $args['order'],
123
-        'paged'          => absint( $args['page'] ),
123
+        'paged'          => absint($args['page']),
124 124
     );
125 125
 
126
-    if ( ! empty( $args['exclude'] ) ) {
127
-        $wp_query_args['post__not_in'] = array_map( 'absint', $args['exclude'] );
126
+    if (!empty($args['exclude'])) {
127
+        $wp_query_args['post__not_in'] = array_map('absint', $args['exclude']);
128 128
     }
129 129
 
130
-    if ( ! $args['paginate' ] ) {
130
+    if (!$args['paginate']) {
131 131
         $wp_query_args['no_found_rows'] = true;
132 132
     }
133 133
 
134
-    if ( ! empty( $args['search'] ) ) {
134
+    if (!empty($args['search'])) {
135 135
 
136 136
         $wp_query_args['meta_query'][] = array(
137 137
             'key'     => '_wpi_discount_code',
@@ -141,11 +141,11 @@  discard block
 block discarded – undo
141 141
 
142 142
     }
143 143
     
144
-    if ( ! empty( $args['type'] ) ) {
145
-        $types = wpinv_parse_list( $args['type'] );
144
+    if (!empty($args['type'])) {
145
+        $types = wpinv_parse_list($args['type']);
146 146
         $wp_query_args['meta_query'][] = array(
147 147
             'key'     => '_wpi_discount_type',
148
-            'value'   => implode( ',', $types ),
148
+            'value'   => implode(',', $types),
149 149
             'compare' => 'IN',
150 150
         );
151 151
     }
@@ -153,17 +153,17 @@  discard block
 block discarded – undo
153 153
     $wp_query_args = apply_filters('wpinv_get_discount_args', $wp_query_args, $args);
154 154
 
155 155
     // Get results.
156
-    $discounts = new WP_Query( $wp_query_args );
156
+    $discounts = new WP_Query($wp_query_args);
157 157
 
158
-    if ( 'objects' === $args['return'] ) {
159
-        $return = array_map( 'get_post', $discounts->posts );
160
-    } elseif ( 'self' === $args['return'] ) {
158
+    if ('objects' === $args['return']) {
159
+        $return = array_map('get_post', $discounts->posts);
160
+    } elseif ('self' === $args['return']) {
161 161
         return $discounts;
162 162
     } else {
163 163
         $return = $discounts->posts;
164 164
     }
165 165
 
166
-    if ( $args['paginate' ] ) {
166
+    if ($args['paginate']) {
167 167
         return (object) array(
168 168
             'discounts'      => $return,
169 169
             'total'         => $discounts->found_posts,
@@ -180,9 +180,9 @@  discard block
 block discarded – undo
180 180
 
181 181
     $discounts  = wpinv_get_discounts();
182 182
 
183
-    if ( $discounts) {
184
-        foreach ( $discounts as $discount ) {
185
-            if ( wpinv_is_discount_active( $discount->ID ) ) {
183
+    if ($discounts) {
184
+        foreach ($discounts as $discount) {
185
+            if (wpinv_is_discount_active($discount->ID)) {
186 186
                 $has_active = true;
187 187
                 break;
188 188
             }
@@ -191,16 +191,16 @@  discard block
 block discarded – undo
191 191
     return $has_active;
192 192
 }
193 193
 
194
-function wpinv_get_discount( $discount_id = 0 ) {
195
-    if( empty( $discount_id ) ) {
194
+function wpinv_get_discount($discount_id = 0) {
195
+    if (empty($discount_id)) {
196 196
         return false;
197 197
     }
198 198
     
199
-    if ( get_post_type( $discount_id ) != 'wpi_discount' ) {
199
+    if (get_post_type($discount_id) != 'wpi_discount') {
200 200
         return false;
201 201
     }
202 202
 
203
-    $discount = get_post( $discount_id );
203
+    $discount = get_post($discount_id);
204 204
 
205 205
     return $discount;
206 206
 }
@@ -212,8 +212,8 @@  discard block
 block discarded – undo
212 212
  * @since 1.0.15
213 213
  * @return WPInv_Discount
214 214
  */
215
-function wpinv_get_discount_obj( $discount = 0 ) {
216
-    return new WPInv_Discount( $discount );
215
+function wpinv_get_discount_obj($discount = 0) {
216
+    return new WPInv_Discount($discount);
217 217
 }
218 218
 
219 219
 /**
@@ -222,8 +222,8 @@  discard block
 block discarded – undo
222 222
  * @param string $code The discount code.
223 223
  * @return bool|WP_Post
224 224
  */
225
-function wpinv_get_discount_by_code( $code = '' ) {
226
-    return wpinv_get_discount_by( 'code', $code );
225
+function wpinv_get_discount_by_code($code = '') {
226
+    return wpinv_get_discount_by('code', $code);
227 227
 }
228 228
 
229 229
 /**
@@ -233,13 +233,13 @@  discard block
 block discarded – undo
233 233
  * @param string|int $value The field value
234 234
  * @return bool|WP_Post
235 235
  */
236
-function wpinv_get_discount_by( $field = '', $value = '' ) {
237
-    $data = WPInv_Discount::get_data_by( $field, $value );
238
-    if( empty( $data ) ) {
236
+function wpinv_get_discount_by($field = '', $value = '') {
237
+    $data = WPInv_Discount::get_data_by($field, $value);
238
+    if (empty($data)) {
239 239
         return false;
240 240
     }
241 241
 
242
-    return get_post( $data['ID'] );
242
+    return get_post($data['ID']);
243 243
 }
244 244
 
245 245
 /**
@@ -249,68 +249,68 @@  discard block
 block discarded – undo
249 249
  * @param array $data The discount's properties.
250 250
  * @return bool
251 251
  */
252
-function wpinv_store_discount( $post_id, $data, $post, $update = false ) {
252
+function wpinv_store_discount($post_id, $data, $post, $update = false) {
253 253
     $meta = array(
254
-        'code'              => isset( $data['code'] )             ? sanitize_text_field( $data['code'] )              : '',
255
-        'type'              => isset( $data['type'] )             ? sanitize_text_field( $data['type'] )              : 'percent',
256
-        'amount'            => isset( $data['amount'] )           ? wpinv_sanitize_amount( $data['amount'] )          : '',
257
-        'start'             => isset( $data['start'] )            ? sanitize_text_field( $data['start'] )             : '',
258
-        'expiration'        => isset( $data['expiration'] )       ? sanitize_text_field( $data['expiration'] )        : '',
259
-        'min_total'         => isset( $data['min_total'] )        ? wpinv_sanitize_amount( $data['min_total'] )       : '',
260
-        'max_total'         => isset( $data['max_total'] )        ? wpinv_sanitize_amount( $data['max_total'] )       : '',
261
-        'max_uses'          => isset( $data['max_uses'] )         ? absint( $data['max_uses'] )                       : '',
262
-        'items'             => isset( $data['items'] )            ? $data['items']                                    : array(),
263
-        'excluded_items'    => isset( $data['excluded_items'] )   ? $data['excluded_items']                           : array(),
264
-        'is_recurring'      => isset( $data['recurring'] )        ? (bool)$data['recurring']                          : false,
265
-        'is_single_use'     => isset( $data['single_use'] )       ? (bool)$data['single_use']                         : false,
266
-        'uses'              => isset( $data['uses'] )             ? (int)$data['uses']                                : false,
254
+        'code'              => isset($data['code']) ? sanitize_text_field($data['code']) : '',
255
+        'type'              => isset($data['type']) ? sanitize_text_field($data['type']) : 'percent',
256
+        'amount'            => isset($data['amount']) ? wpinv_sanitize_amount($data['amount']) : '',
257
+        'start'             => isset($data['start']) ? sanitize_text_field($data['start']) : '',
258
+        'expiration'        => isset($data['expiration']) ? sanitize_text_field($data['expiration']) : '',
259
+        'min_total'         => isset($data['min_total']) ? wpinv_sanitize_amount($data['min_total']) : '',
260
+        'max_total'         => isset($data['max_total']) ? wpinv_sanitize_amount($data['max_total']) : '',
261
+        'max_uses'          => isset($data['max_uses']) ? absint($data['max_uses']) : '',
262
+        'items'             => isset($data['items']) ? $data['items'] : array(),
263
+        'excluded_items'    => isset($data['excluded_items']) ? $data['excluded_items'] : array(),
264
+        'is_recurring'      => isset($data['recurring']) ? (bool) $data['recurring'] : false,
265
+        'is_single_use'     => isset($data['single_use']) ? (bool) $data['single_use'] : false,
266
+        'uses'              => isset($data['uses']) ? (int) $data['uses'] : false,
267 267
     );
268 268
 
269
-    if ( $meta['type'] == 'percent' && (float)$meta['amount'] > 100 ) {
269
+    if ($meta['type'] == 'percent' && (float) $meta['amount'] > 100) {
270 270
         $meta['amount'] = 100;
271 271
     }
272 272
 
273
-    if ( !empty( $meta['start'] ) ) {
274
-        $meta['start']      = date_i18n( 'Y-m-d H:i:s', strtotime( $meta['start'] ) );
273
+    if (!empty($meta['start'])) {
274
+        $meta['start'] = date_i18n('Y-m-d H:i:s', strtotime($meta['start']));
275 275
     }
276 276
 
277
-    if ( !empty( $meta['expiration'] ) ) {
278
-        $meta['expiration'] = date_i18n( 'Y-m-d H:i:s', strtotime( $meta['expiration'] ) );
277
+    if (!empty($meta['expiration'])) {
278
+        $meta['expiration'] = date_i18n('Y-m-d H:i:s', strtotime($meta['expiration']));
279 279
 
280
-        if ( !empty( $meta['start'] ) && strtotime( $meta['start'] ) > strtotime( $meta['expiration'] ) ) {
280
+        if (!empty($meta['start']) && strtotime($meta['start']) > strtotime($meta['expiration'])) {
281 281
             $meta['expiration'] = $meta['start'];
282 282
         }
283 283
     }
284 284
     
285
-    if ( $meta['uses'] === false ) {
286
-        unset( $meta['uses'] );
285
+    if ($meta['uses'] === false) {
286
+        unset($meta['uses']);
287 287
     }
288 288
     
289
-    if ( ! empty( $meta['items'] ) ) {
290
-        foreach ( $meta['items'] as $key => $item ) {
291
-            if ( 0 === intval( $item ) ) {
292
-                unset( $meta['items'][ $key ] );
289
+    if (!empty($meta['items'])) {
290
+        foreach ($meta['items'] as $key => $item) {
291
+            if (0 === intval($item)) {
292
+                unset($meta['items'][$key]);
293 293
             }
294 294
         }
295 295
     }
296 296
     
297
-    if ( ! empty( $meta['excluded_items'] ) ) {
298
-        foreach ( $meta['excluded_items'] as $key => $item ) {
299
-            if ( 0 === intval( $item ) ) {
300
-                unset( $meta['excluded_items'][ $key ] );
297
+    if (!empty($meta['excluded_items'])) {
298
+        foreach ($meta['excluded_items'] as $key => $item) {
299
+            if (0 === intval($item)) {
300
+                unset($meta['excluded_items'][$key]);
301 301
             }
302 302
         }
303 303
     }
304 304
     
305
-    $meta = apply_filters( 'wpinv_update_discount', $meta, $post_id, $post );
305
+    $meta = apply_filters('wpinv_update_discount', $meta, $post_id, $post);
306 306
     
307
-    do_action( 'wpinv_pre_update_discount', $meta, $post_id, $post );
307
+    do_action('wpinv_pre_update_discount', $meta, $post_id, $post);
308 308
     
309
-    foreach( $meta as $key => $value ) {
310
-        update_post_meta( $post_id, '_wpi_discount_' . $key, $value );
309
+    foreach ($meta as $key => $value) {
310
+        update_post_meta($post_id, '_wpi_discount_' . $key, $value);
311 311
     }
312 312
     
313
-    do_action( 'wpinv_post_update_discount', $meta, $post_id, $post );
313
+    do_action('wpinv_post_update_discount', $meta, $post_id, $post);
314 314
     
315 315
     return $post_id;
316 316
 }
@@ -321,10 +321,10 @@  discard block
 block discarded – undo
321 321
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
322 322
  * @return bool
323 323
  */
324
-function wpinv_remove_discount( $discount = 0 ) {
324
+function wpinv_remove_discount($discount = 0) {
325 325
 
326
-    $discount = wpinv_get_discount_obj( $discount );
327
-    if( ! $discount->exists() ) {
326
+    $discount = wpinv_get_discount_obj($discount);
327
+    if (!$discount->exists()) {
328 328
         return false;
329 329
     }
330 330
 
@@ -339,9 +339,9 @@  discard block
 block discarded – undo
339 339
  * @param string $new_status
340 340
  * @return bool
341 341
  */
342
-function wpinv_update_discount_status( $discount = 0, $new_status = 'publish' ) {
343
-    $discount = wpinv_get_discount_obj( $discount );
344
-    return $discount->update_status( $new_status );
342
+function wpinv_update_discount_status($discount = 0, $new_status = 'publish') {
343
+    $discount = wpinv_get_discount_obj($discount);
344
+    return $discount->update_status($new_status);
345 345
 }
346 346
 
347 347
 /**
@@ -350,48 +350,48 @@  discard block
 block discarded – undo
350 350
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
351 351
  * @return bool
352 352
  */
353
-function wpinv_discount_exists( $discount ) {
354
-    $discount = wpinv_get_discount_obj( $discount );
353
+function wpinv_discount_exists($discount) {
354
+    $discount = wpinv_get_discount_obj($discount);
355 355
     return $discount->exists();
356 356
 }
357 357
 
358
-function wpinv_is_discount_active( $code_id = null ) {
359
-    $discount = wpinv_get_discount(  $code_id );
358
+function wpinv_is_discount_active($code_id = null) {
359
+    $discount = wpinv_get_discount($code_id);
360 360
     $return   = false;
361 361
 
362
-    if ( $discount ) {
363
-        if ( wpinv_is_discount_expired( $code_id ) ) {
364
-            if( defined( 'DOING_AJAX' ) ) {
365
-                wpinv_set_error( 'wpinv-discount-error', __( 'This discount is expired.', 'invoicing' ) );
362
+    if ($discount) {
363
+        if (wpinv_is_discount_expired($code_id)) {
364
+            if (defined('DOING_AJAX')) {
365
+                wpinv_set_error('wpinv-discount-error', __('This discount is expired.', 'invoicing'));
366 366
             }
367
-        } elseif ( $discount->post_status == 'publish' ) {
367
+        } elseif ($discount->post_status == 'publish') {
368 368
             $return = true;
369 369
         } else {
370
-            if( defined( 'DOING_AJAX' ) ) {
371
-                wpinv_set_error( 'wpinv-discount-error', __( 'This discount is not active.', 'invoicing' ) );
370
+            if (defined('DOING_AJAX')) {
371
+                wpinv_set_error('wpinv-discount-error', __('This discount is not active.', 'invoicing'));
372 372
             }
373 373
         }
374 374
     }
375 375
 
376
-    return apply_filters( 'wpinv_is_discount_active', $return, $code_id );
376
+    return apply_filters('wpinv_is_discount_active', $return, $code_id);
377 377
 }
378 378
 
379
-function wpinv_get_discount_code( $code_id = null ) {
380
-    $code = get_post_meta( $code_id, '_wpi_discount_code', true );
379
+function wpinv_get_discount_code($code_id = null) {
380
+    $code = get_post_meta($code_id, '_wpi_discount_code', true);
381 381
 
382
-    return apply_filters( 'wpinv_get_discount_code', $code, $code_id );
382
+    return apply_filters('wpinv_get_discount_code', $code, $code_id);
383 383
 }
384 384
 
385
-function wpinv_get_discount_start_date( $code_id = null ) {
386
-    $start_date = get_post_meta( $code_id, '_wpi_discount_start', true );
385
+function wpinv_get_discount_start_date($code_id = null) {
386
+    $start_date = get_post_meta($code_id, '_wpi_discount_start', true);
387 387
 
388
-    return apply_filters( 'wpinv_get_discount_start_date', $start_date, $code_id );
388
+    return apply_filters('wpinv_get_discount_start_date', $start_date, $code_id);
389 389
 }
390 390
 
391
-function wpinv_get_discount_expiration( $code_id = null ) {
392
-    $expiration = get_post_meta( $code_id, '_wpi_discount_expiration', true );
391
+function wpinv_get_discount_expiration($code_id = null) {
392
+    $expiration = get_post_meta($code_id, '_wpi_discount_expiration', true);
393 393
 
394
-    return apply_filters( 'wpinv_get_discount_expiration', $expiration, $code_id );
394
+    return apply_filters('wpinv_get_discount_expiration', $expiration, $code_id);
395 395
 }
396 396
 
397 397
 /**
@@ -400,8 +400,8 @@  discard block
 block discarded – undo
400 400
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
401 401
  * @return int
402 402
  */
403
-function wpinv_get_discount_max_uses( $discount = array() ) {
404
-    $discount = wpinv_get_discount_obj( $discount );
403
+function wpinv_get_discount_max_uses($discount = array()) {
404
+    $discount = wpinv_get_discount_obj($discount);
405 405
     return (int) $discount->max_uses;
406 406
 }
407 407
 
@@ -411,8 +411,8 @@  discard block
 block discarded – undo
411 411
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
412 412
  * @return int
413 413
  */
414
-function wpinv_get_discount_uses( $discount = array() ) {
415
-    $discount = wpinv_get_discount_obj( $discount );
414
+function wpinv_get_discount_uses($discount = array()) {
415
+    $discount = wpinv_get_discount_obj($discount);
416 416
     return (int) $discount->uses;
417 417
 }
418 418
 
@@ -422,8 +422,8 @@  discard block
 block discarded – undo
422 422
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
423 423
  * @return float
424 424
  */
425
-function wpinv_get_discount_min_total( $discount = array() ) {
426
-    $discount = wpinv_get_discount_obj( $discount );
425
+function wpinv_get_discount_min_total($discount = array()) {
426
+    $discount = wpinv_get_discount_obj($discount);
427 427
     return (float) $discount->min_total;
428 428
 }
429 429
 
@@ -433,8 +433,8 @@  discard block
 block discarded – undo
433 433
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
434 434
  * @return float
435 435
  */
436
-function wpinv_get_discount_max_total( $discount = array() ) {
437
-    $discount = wpinv_get_discount_obj( $discount );
436
+function wpinv_get_discount_max_total($discount = array()) {
437
+    $discount = wpinv_get_discount_obj($discount);
438 438
     return (float) $discount->max_total;
439 439
 }
440 440
 
@@ -444,8 +444,8 @@  discard block
 block discarded – undo
444 444
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
445 445
  * @return float
446 446
  */
447
-function wpinv_get_discount_amount( $discount = array() ) {
448
-    $discount = wpinv_get_discount_obj( $discount );
447
+function wpinv_get_discount_amount($discount = array()) {
448
+    $discount = wpinv_get_discount_obj($discount);
449 449
     return (float) $discount->amount;
450 450
 }
451 451
 
@@ -456,28 +456,28 @@  discard block
 block discarded – undo
456 456
  * @param bool $name 
457 457
  * @return string
458 458
  */
459
-function wpinv_get_discount_type( $discount = array(), $name = false ) {
460
-    $discount = wpinv_get_discount_obj( $discount );
459
+function wpinv_get_discount_type($discount = array(), $name = false) {
460
+    $discount = wpinv_get_discount_obj($discount);
461 461
 
462 462
     // Are we returning the name or just the type.
463
-    if( $name ) {
463
+    if ($name) {
464 464
         return $discount->type_name;
465 465
     }
466 466
 
467 467
     return $discount->type;
468 468
 }
469 469
 
470
-function wpinv_discount_status( $status ) {
471
-    switch( $status ){
470
+function wpinv_discount_status($status) {
471
+    switch ($status) {
472 472
         case 'expired' :
473
-            $name = __( 'Expired', 'invoicing' );
473
+            $name = __('Expired', 'invoicing');
474 474
             break;
475 475
         case 'publish' :
476 476
         case 'active' :
477
-            $name = __( 'Active', 'invoicing' );
477
+            $name = __('Active', 'invoicing');
478 478
             break;
479 479
         default :
480
-            $name = __( 'Inactive', 'invoicing' );
480
+            $name = __('Inactive', 'invoicing');
481 481
             break;
482 482
     }
483 483
     return $name;
@@ -489,8 +489,8 @@  discard block
 block discarded – undo
489 489
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
490 490
  * @return array
491 491
  */
492
-function wpinv_get_discount_excluded_items( $discount = array() ) {
493
-    $discount = wpinv_get_discount_obj( $discount );
492
+function wpinv_get_discount_excluded_items($discount = array()) {
493
+    $discount = wpinv_get_discount_obj($discount);
494 494
     return $discount->excluded_items;
495 495
 }
496 496
 
@@ -500,17 +500,17 @@  discard block
 block discarded – undo
500 500
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
501 501
  * @return array
502 502
  */
503
-function wpinv_get_discount_item_reqs( $discount = array() ) {
504
-    $discount = wpinv_get_discount_obj( $discount );
503
+function wpinv_get_discount_item_reqs($discount = array()) {
504
+    $discount = wpinv_get_discount_obj($discount);
505 505
     return $discount->items;
506 506
 }
507 507
 
508
-function wpinv_get_discount_item_condition( $code_id = 0 ) {
509
-    return get_post_meta( $code_id, '_wpi_discount_item_condition', true );
508
+function wpinv_get_discount_item_condition($code_id = 0) {
509
+    return get_post_meta($code_id, '_wpi_discount_item_condition', true);
510 510
 }
511 511
 
512
-function wpinv_is_discount_not_global( $code_id = 0 ) {
513
-    return (bool) get_post_meta( $code_id, '_wpi_discount_is_not_global', true );
512
+function wpinv_is_discount_not_global($code_id = 0) {
513
+    return (bool) get_post_meta($code_id, '_wpi_discount_is_not_global', true);
514 514
 }
515 515
 
516 516
 /**
@@ -519,14 +519,14 @@  discard block
 block discarded – undo
519 519
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
520 520
  * @return bool
521 521
  */
522
-function wpinv_is_discount_expired( $discount = array() ) {
523
-    $discount = wpinv_get_discount_obj( $discount );
522
+function wpinv_is_discount_expired($discount = array()) {
523
+    $discount = wpinv_get_discount_obj($discount);
524 524
 
525
-    if ( $discount->is_expired() ) {
526
-        $discount->update_status( 'pending' );
525
+    if ($discount->is_expired()) {
526
+        $discount->update_status('pending');
527 527
 
528
-        if( empty( $started ) ) {
529
-            wpinv_set_error( 'wpinv-discount-error', __( 'This discount has expired.', 'invoicing' ) );
528
+        if (empty($started)) {
529
+            wpinv_set_error('wpinv-discount-error', __('This discount has expired.', 'invoicing'));
530 530
         }
531 531
         return true;
532 532
     }
@@ -540,12 +540,12 @@  discard block
 block discarded – undo
540 540
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
541 541
  * @return bool
542 542
  */
543
-function wpinv_is_discount_started( $discount = array() ) {
544
-    $discount = wpinv_get_discount_obj( $discount );
543
+function wpinv_is_discount_started($discount = array()) {
544
+    $discount = wpinv_get_discount_obj($discount);
545 545
     $started  = $discount->has_started();
546 546
 
547
-    if( empty( $started ) ) {
548
-        wpinv_set_error( 'wpinv-discount-error', __( 'This discount is not active yet.', 'invoicing' ) );
547
+    if (empty($started)) {
548
+        wpinv_set_error('wpinv-discount-error', __('This discount is not active yet.', 'invoicing'));
549 549
     }
550 550
 
551 551
     return $started;
@@ -557,10 +557,10 @@  discard block
 block discarded – undo
557 557
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
558 558
  * @return bool
559 559
  */
560
-function wpinv_check_discount_dates( $discount ) {
561
-    $discount = wpinv_get_discount_obj( $discount );
562
-    $return   = wpinv_is_discount_started( $discount ) && ! wpinv_is_discount_expired( $discount );
563
-    return apply_filters( 'wpinv_check_discount_dates', $return, $discount->ID, $discount, $discount->code );
560
+function wpinv_check_discount_dates($discount) {
561
+    $discount = wpinv_get_discount_obj($discount);
562
+    $return   = wpinv_is_discount_started($discount) && !wpinv_is_discount_expired($discount);
563
+    return apply_filters('wpinv_check_discount_dates', $return, $discount->ID, $discount, $discount->code);
564 564
 }
565 565
 
566 566
 /**
@@ -569,12 +569,12 @@  discard block
 block discarded – undo
569 569
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
570 570
  * @return bool
571 571
  */
572
-function wpinv_is_discount_maxed_out( $discount ) {
573
-    $discount    = wpinv_get_discount_obj( $discount );
572
+function wpinv_is_discount_maxed_out($discount) {
573
+    $discount    = wpinv_get_discount_obj($discount);
574 574
     $maxed_out   = $discount->has_exceeded_limit();
575 575
 
576
-    if ( $maxed_out ) {
577
-        wpinv_set_error( 'wpinv-discount-error', __( 'This discount has reached its maximum usage.', 'invoicing' ) );
576
+    if ($maxed_out) {
577
+        wpinv_set_error('wpinv-discount-error', __('This discount has reached its maximum usage.', 'invoicing'));
578 578
     }
579 579
 
580 580
     return $maxed_out;
@@ -586,13 +586,13 @@  discard block
 block discarded – undo
586 586
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
587 587
  * @return bool
588 588
  */
589
-function wpinv_discount_is_min_met( $discount ) {
590
-    $discount    = wpinv_get_discount_obj( $discount );
591
-    $cart_amount = (float)wpinv_get_cart_discountable_subtotal( $discount->ID );
592
-    $min_met     = $discount->is_minimum_amount_met( $cart_amount );
589
+function wpinv_discount_is_min_met($discount) {
590
+    $discount    = wpinv_get_discount_obj($discount);
591
+    $cart_amount = (float) wpinv_get_cart_discountable_subtotal($discount->ID);
592
+    $min_met     = $discount->is_minimum_amount_met($cart_amount);
593 593
 
594
-    if ( ! $min_met ) {
595
-        wpinv_set_error( 'wpinv-discount-error', sprintf( __( 'Minimum invoice amount should be %s', 'invoicing' ), wpinv_price( wpinv_format_amount( $discount->min_total ) ) ) );
594
+    if (!$min_met) {
595
+        wpinv_set_error('wpinv-discount-error', sprintf(__('Minimum invoice amount should be %s', 'invoicing'), wpinv_price(wpinv_format_amount($discount->min_total))));
596 596
     }
597 597
 
598 598
     return $min_met;
@@ -604,13 +604,13 @@  discard block
 block discarded – undo
604 604
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
605 605
  * @return bool
606 606
  */
607
-function wpinv_discount_is_max_met( $discount ) {
608
-    $discount    = wpinv_get_discount_obj( $discount );
609
-    $cart_amount = (float)wpinv_get_cart_discountable_subtotal( $discount->ID );
610
-    $max_met     = $discount->is_maximum_amount_met( $cart_amount );
607
+function wpinv_discount_is_max_met($discount) {
608
+    $discount    = wpinv_get_discount_obj($discount);
609
+    $cart_amount = (float) wpinv_get_cart_discountable_subtotal($discount->ID);
610
+    $max_met     = $discount->is_maximum_amount_met($cart_amount);
611 611
 
612
-    if ( ! $max_met ) {
613
-        wpinv_set_error( 'wpinv-discount-error', sprintf( __( 'Maximum invoice amount should be %s', 'invoicing' ), wpinv_price( wpinv_format_amount( $discount->max_total ) ) ) );
612
+    if (!$max_met) {
613
+        wpinv_set_error('wpinv-discount-error', sprintf(__('Maximum invoice amount should be %s', 'invoicing'), wpinv_price(wpinv_format_amount($discount->max_total))));
614 614
     }
615 615
 
616 616
     return $max_met;
@@ -622,8 +622,8 @@  discard block
 block discarded – undo
622 622
  * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
623 623
  * @return bool
624 624
  */
625
-function wpinv_discount_is_single_use( $discount ) {
626
-    $discount    = wpinv_get_discount_obj( $discount );
625
+function wpinv_discount_is_single_use($discount) {
626
+    $discount = wpinv_get_discount_obj($discount);
627 627
     return $discount->is_single_use;
628 628
 }
629 629
 
@@ -634,53 +634,53 @@  discard block
 block discarded – undo
634 634
  * @param int|array|string|WPInv_Discount $code discount data, object, ID or code.
635 635
  * @return bool
636 636
  */
637
-function wpinv_discount_is_recurring( $discount = 0, $code = 0 ) {
637
+function wpinv_discount_is_recurring($discount = 0, $code = 0) {
638 638
 
639
-    if( ! empty( $discount ) ) {
640
-        $discount    = wpinv_get_discount_obj( $discount );
639
+    if (!empty($discount)) {
640
+        $discount    = wpinv_get_discount_obj($discount);
641 641
     } else {
642
-        $discount    = wpinv_get_discount_obj( $code );
642
+        $discount    = wpinv_get_discount_obj($code);
643 643
     }
644 644
     
645 645
     return $discount->is_recurring;
646 646
 }
647 647
 
648
-function wpinv_discount_item_reqs_met( $code_id = null ) {
649
-    $item_reqs    = wpinv_get_discount_item_reqs( $code_id );
650
-    $condition    = wpinv_get_discount_item_condition( $code_id );
651
-    $excluded_ps  = wpinv_get_discount_excluded_items( $code_id );
648
+function wpinv_discount_item_reqs_met($code_id = null) {
649
+    $item_reqs    = wpinv_get_discount_item_reqs($code_id);
650
+    $condition    = wpinv_get_discount_item_condition($code_id);
651
+    $excluded_ps  = wpinv_get_discount_excluded_items($code_id);
652 652
     $cart_items   = wpinv_get_cart_contents();
653
-    $cart_ids     = $cart_items ? wp_list_pluck( $cart_items, 'id' ) : null;
653
+    $cart_ids     = $cart_items ? wp_list_pluck($cart_items, 'id') : null;
654 654
     $ret          = false;
655 655
 
656
-    if ( empty( $item_reqs ) && empty( $excluded_ps ) ) {
656
+    if (empty($item_reqs) && empty($excluded_ps)) {
657 657
         $ret = true;
658 658
     }
659 659
 
660 660
     // Normalize our data for item requirements, exclusions and cart data
661 661
     // First absint the items, then sort, and reset the array keys
662
-    $item_reqs = array_map( 'absint', $item_reqs );
663
-    asort( $item_reqs );
664
-    $item_reqs = array_values( $item_reqs );
662
+    $item_reqs = array_map('absint', $item_reqs);
663
+    asort($item_reqs);
664
+    $item_reqs = array_values($item_reqs);
665 665
 
666
-    $excluded_ps  = array_map( 'absint', $excluded_ps );
667
-    asort( $excluded_ps );
668
-    $excluded_ps  = array_values( $excluded_ps );
666
+    $excluded_ps  = array_map('absint', $excluded_ps);
667
+    asort($excluded_ps);
668
+    $excluded_ps  = array_values($excluded_ps);
669 669
 
670
-    $cart_ids     = array_map( 'absint', $cart_ids );
671
-    asort( $cart_ids );
672
-    $cart_ids     = array_values( $cart_ids );
670
+    $cart_ids     = array_map('absint', $cart_ids);
671
+    asort($cart_ids);
672
+    $cart_ids     = array_values($cart_ids);
673 673
 
674 674
     // Ensure we have requirements before proceeding
675
-    if ( !$ret && ! empty( $item_reqs ) ) {
676
-        switch( $condition ) {
675
+    if (!$ret && !empty($item_reqs)) {
676
+        switch ($condition) {
677 677
             case 'all' :
678 678
                 // Default back to true
679 679
                 $ret = true;
680 680
 
681
-                foreach ( $item_reqs as $item_id ) {
682
-                    if ( !wpinv_item_in_cart( $item_id ) ) {
683
-                        wpinv_set_error( 'wpinv-discount-error', __( 'The item requirements for this discount are not met.', 'invoicing' ) );
681
+                foreach ($item_reqs as $item_id) {
682
+                    if (!wpinv_item_in_cart($item_id)) {
683
+                        wpinv_set_error('wpinv-discount-error', __('The item requirements for this discount are not met.', 'invoicing'));
684 684
                         $ret = false;
685 685
                         break;
686 686
                     }
@@ -689,15 +689,15 @@  discard block
 block discarded – undo
689 689
                 break;
690 690
 
691 691
             default : // Any
692
-                foreach ( $item_reqs as $item_id ) {
693
-                    if ( wpinv_item_in_cart( $item_id ) ) {
692
+                foreach ($item_reqs as $item_id) {
693
+                    if (wpinv_item_in_cart($item_id)) {
694 694
                         $ret = true;
695 695
                         break;
696 696
                     }
697 697
                 }
698 698
 
699
-                if( ! $ret ) {
700
-                    wpinv_set_error( 'wpinv-discount-error', __( 'The item requirements for this discount are not met.', 'invoicing' ) );
699
+                if (!$ret) {
700
+                    wpinv_set_error('wpinv-discount-error', __('The item requirements for this discount are not met.', 'invoicing'));
701 701
                 }
702 702
 
703 703
                 break;
@@ -706,15 +706,15 @@  discard block
 block discarded – undo
706 706
         $ret = true;
707 707
     }
708 708
 
709
-    if( ! empty( $excluded_ps ) ) {
709
+    if (!empty($excluded_ps)) {
710 710
         // Check that there are items other than excluded ones in the cart
711
-        if( $cart_ids == $excluded_ps ) {
712
-            wpinv_set_error( 'wpinv-discount-error', __( 'This discount is not valid for the cart contents.', 'invoicing' ) );
711
+        if ($cart_ids == $excluded_ps) {
712
+            wpinv_set_error('wpinv-discount-error', __('This discount is not valid for the cart contents.', 'invoicing'));
713 713
             $ret = false;
714 714
         }
715 715
     }
716 716
 
717
-    return (bool) apply_filters( 'wpinv_is_discount_item_req_met', $ret, $code_id, $condition );
717
+    return (bool) apply_filters('wpinv_is_discount_item_req_met', $ret, $code_id, $condition);
718 718
 }
719 719
 
720 720
 /**
@@ -725,53 +725,53 @@  discard block
 block discarded – undo
725 725
  * @param int|array|string|WPInv_Discount $code_id discount data, object, ID or code.
726 726
  * @return bool
727 727
  */
728
-function wpinv_is_discount_used( $discount = array(), $user = '', $code_id = array() ) {
728
+function wpinv_is_discount_used($discount = array(), $user = '', $code_id = array()) {
729 729
     
730
-    if( ! empty( $discount ) ) {
731
-        $discount = wpinv_get_discount_obj( $discount );
730
+    if (!empty($discount)) {
731
+        $discount = wpinv_get_discount_obj($discount);
732 732
     } else {
733
-        $discount = wpinv_get_discount_obj( $code_id );
733
+        $discount = wpinv_get_discount_obj($code_id);
734 734
     }
735 735
 
736
-    $is_used = ! $discount->is_valid_for_user( $user );
737
-    $is_used = apply_filters( 'wpinv_is_discount_used', $is_used, $discount->code, $user, $discount->ID, $discount );
736
+    $is_used = !$discount->is_valid_for_user($user);
737
+    $is_used = apply_filters('wpinv_is_discount_used', $is_used, $discount->code, $user, $discount->ID, $discount);
738 738
 
739
-    if( $is_used ) {
740
-        wpinv_set_error( 'wpinv-discount-error', __( 'This discount has already been redeemed.', 'invoicing' ) );
739
+    if ($is_used) {
740
+        wpinv_set_error('wpinv-discount-error', __('This discount has already been redeemed.', 'invoicing'));
741 741
     }
742 742
 
743 743
     return $is_used;
744 744
 }
745 745
 
746
-function wpinv_is_discount_valid( $code = '', $user = '', $set_error = true ) {
746
+function wpinv_is_discount_valid($code = '', $user = '', $set_error = true) {
747 747
     $return      = false;
748
-    $discount_id = wpinv_get_discount_id_by_code( $code );
749
-    $user        = trim( $user );
748
+    $discount_id = wpinv_get_discount_id_by_code($code);
749
+    $user        = trim($user);
750 750
 
751
-    if ( wpinv_get_cart_contents() ) {
752
-        if ( $discount_id !== false ) {
751
+    if (wpinv_get_cart_contents()) {
752
+        if ($discount_id !== false) {
753 753
             if (
754
-                wpinv_is_discount_active( $discount_id ) &&
755
-                wpinv_check_discount_dates( $discount_id ) &&
756
-                !wpinv_is_discount_maxed_out( $discount_id ) &&
757
-                !wpinv_is_discount_used( $code, $user, $discount_id ) &&
758
-                wpinv_discount_is_min_met( $discount_id ) &&
759
-                wpinv_discount_is_max_met( $discount_id ) &&
760
-                wpinv_discount_item_reqs_met( $discount_id )
754
+                wpinv_is_discount_active($discount_id) &&
755
+                wpinv_check_discount_dates($discount_id) &&
756
+                !wpinv_is_discount_maxed_out($discount_id) &&
757
+                !wpinv_is_discount_used($code, $user, $discount_id) &&
758
+                wpinv_discount_is_min_met($discount_id) &&
759
+                wpinv_discount_is_max_met($discount_id) &&
760
+                wpinv_discount_item_reqs_met($discount_id)
761 761
             ) {
762 762
                 $return = true;
763 763
             }
764
-        } elseif( $set_error ) {
765
-            wpinv_set_error( 'wpinv-discount-error', __( 'This discount is invalid.', 'invoicing' ) );
764
+        } elseif ($set_error) {
765
+            wpinv_set_error('wpinv-discount-error', __('This discount is invalid.', 'invoicing'));
766 766
         }
767 767
     }
768 768
 
769
-    return apply_filters( 'wpinv_is_discount_valid', $return, $discount_id, $code, $user );
769
+    return apply_filters('wpinv_is_discount_valid', $return, $discount_id, $code, $user);
770 770
 }
771 771
 
772
-function wpinv_get_discount_id_by_code( $code ) {
773
-    $discount = wpinv_get_discount_by_code( $code );
774
-    if( $discount ) {
772
+function wpinv_get_discount_id_by_code($code) {
773
+    $discount = wpinv_get_discount_by_code($code);
774
+    if ($discount) {
775 775
         return $discount->ID;
776 776
     }
777 777
     return false;
@@ -784,9 +784,9 @@  discard block
 block discarded – undo
784 784
  * @param float $base_price The number of usages to increase by
785 785
  * @return float
786 786
  */
787
-function wpinv_get_discounted_amount( $discount, $base_price ) {
788
-    $discount = wpinv_get_discount_obj( $discount );
789
-    return $discount->get_discounted_amount( $base_price );
787
+function wpinv_get_discounted_amount($discount, $base_price) {
788
+    $discount = wpinv_get_discount_obj($discount);
789
+    return $discount->get_discounted_amount($base_price);
790 790
 }
791 791
 
792 792
 /**
@@ -796,9 +796,9 @@  discard block
 block discarded – undo
796 796
  * @param int $by The number of usages to increase by.
797 797
  * @return int the new number of uses.
798 798
  */
799
-function wpinv_increase_discount_usage( $discount, $by = 1 ) {
800
-    $discount   = wpinv_get_discount_obj( $discount );
801
-    return $discount->increase_usage( $by );
799
+function wpinv_increase_discount_usage($discount, $by = 1) {
800
+    $discount = wpinv_get_discount_obj($discount);
801
+    return $discount->increase_usage($by);
802 802
 }
803 803
 
804 804
 /**
@@ -808,72 +808,72 @@  discard block
 block discarded – undo
808 808
  * @param int $by The number of usages to decrease by.
809 809
  * @return int the new number of uses.
810 810
  */
811
-function wpinv_decrease_discount_usage( $discount, $by = 1 ) {
812
-    $discount   = wpinv_get_discount_obj( $discount );
813
-    return $discount->increase_usage( 0 - $by );
811
+function wpinv_decrease_discount_usage($discount, $by = 1) {
812
+    $discount = wpinv_get_discount_obj($discount);
813
+    return $discount->increase_usage(0 - $by);
814 814
 }
815 815
 
816
-function wpinv_format_discount_rate( $type, $amount ) {
817
-    if ( $type == 'flat' ) {
818
-        $rate = wpinv_price( wpinv_format_amount( $amount ) );
816
+function wpinv_format_discount_rate($type, $amount) {
817
+    if ($type == 'flat') {
818
+        $rate = wpinv_price(wpinv_format_amount($amount));
819 819
     } else {
820 820
         $rate = $amount . '%';
821 821
     }
822 822
 
823
-    return apply_filters( 'wpinv_format_discount_rate', $rate, $type, $amount );
823
+    return apply_filters('wpinv_format_discount_rate', $rate, $type, $amount);
824 824
 }
825 825
 
826
-function wpinv_set_cart_discount( $code = '' ) {    
827
-    if ( wpinv_multiple_discounts_allowed() ) {
826
+function wpinv_set_cart_discount($code = '') {    
827
+    if (wpinv_multiple_discounts_allowed()) {
828 828
         // Get all active cart discounts
829 829
         $discounts = wpinv_get_cart_discounts();
830 830
     } else {
831 831
         $discounts = false; // Only one discount allowed per purchase, so override any existing
832 832
     }
833 833
 
834
-    if ( $discounts ) {
835
-        $key = array_search( strtolower( $code ), array_map( 'strtolower', $discounts ) );
836
-        if( false !== $key ) {
837
-            unset( $discounts[ $key ] ); // Can't set the same discount more than once
834
+    if ($discounts) {
835
+        $key = array_search(strtolower($code), array_map('strtolower', $discounts));
836
+        if (false !== $key) {
837
+            unset($discounts[$key]); // Can't set the same discount more than once
838 838
         }
839 839
         $discounts[] = $code;
840 840
     } else {
841 841
         $discounts = array();
842 842
         $discounts[] = $code;
843 843
     }
844
-    $discounts = array_values( $discounts );
844
+    $discounts = array_values($discounts);
845 845
     
846 846
     $data = wpinv_get_checkout_session();
847
-    if ( empty( $data ) ) {
847
+    if (empty($data)) {
848 848
         $data = array();
849 849
     } else {
850
-        if ( !empty( $data['invoice_id'] ) && $payment_meta = wpinv_get_invoice_meta( $data['invoice_id'] ) ) {
851
-            $payment_meta['user_info']['discount']  = implode( ',', $discounts );
852
-            update_post_meta( $data['invoice_id'], '_wpinv_payment_meta', $payment_meta );
850
+        if (!empty($data['invoice_id']) && $payment_meta = wpinv_get_invoice_meta($data['invoice_id'])) {
851
+            $payment_meta['user_info']['discount'] = implode(',', $discounts);
852
+            update_post_meta($data['invoice_id'], '_wpinv_payment_meta', $payment_meta);
853 853
         }
854 854
     }
855 855
     $data['cart_discounts'] = $discounts;
856 856
     
857
-    wpinv_set_checkout_session( $data );
857
+    wpinv_set_checkout_session($data);
858 858
     
859 859
     return $discounts;
860 860
 }
861 861
 
862
-function wpinv_unset_cart_discount( $code = '' ) {    
862
+function wpinv_unset_cart_discount($code = '') {    
863 863
     $discounts = wpinv_get_cart_discounts();
864 864
 
865
-    if ( $code && !empty( $discounts ) && in_array( $code, $discounts ) ) {
866
-        $key = array_search( $code, $discounts );
867
-        unset( $discounts[ $key ] );
865
+    if ($code && !empty($discounts) && in_array($code, $discounts)) {
866
+        $key = array_search($code, $discounts);
867
+        unset($discounts[$key]);
868 868
             
869 869
         $data = wpinv_get_checkout_session();
870 870
         $data['cart_discounts'] = $discounts;
871
-        if ( !empty( $data['invoice_id'] ) && $payment_meta = wpinv_get_invoice_meta( $data['invoice_id'] ) ) {
872
-            $payment_meta['user_info']['discount']  = !empty( $discounts ) ? implode( ',', $discounts ) : '';
873
-            update_post_meta( $data['invoice_id'], '_wpinv_payment_meta', $payment_meta );
871
+        if (!empty($data['invoice_id']) && $payment_meta = wpinv_get_invoice_meta($data['invoice_id'])) {
872
+            $payment_meta['user_info']['discount'] = !empty($discounts) ? implode(',', $discounts) : '';
873
+            update_post_meta($data['invoice_id'], '_wpinv_payment_meta', $payment_meta);
874 874
         }
875 875
         
876
-        wpinv_set_checkout_session( $data );
876
+        wpinv_set_checkout_session($data);
877 877
     }
878 878
 
879 879
     return $discounts;
@@ -882,10 +882,10 @@  discard block
 block discarded – undo
882 882
 function wpinv_unset_all_cart_discounts() {
883 883
     $data = wpinv_get_checkout_session();
884 884
     
885
-    if ( !empty( $data ) && isset( $data['cart_discounts'] ) ) {
886
-        unset( $data['cart_discounts'] );
885
+    if (!empty($data) && isset($data['cart_discounts'])) {
886
+        unset($data['cart_discounts']);
887 887
         
888
-         wpinv_set_checkout_session( $data );
888
+         wpinv_set_checkout_session($data);
889 889
          return true;
890 890
     }
891 891
     
@@ -894,13 +894,13 @@  discard block
 block discarded – undo
894 894
 
895 895
 function wpinv_get_cart_discounts() {
896 896
     $session = wpinv_get_checkout_session();
897
-    return empty( $session['cart_discounts'] ) ? false : $session['cart_discounts'];
897
+    return empty($session['cart_discounts']) ? false : $session['cart_discounts'];
898 898
 }
899 899
 
900
-function wpinv_cart_has_discounts( $items = array() ) {
900
+function wpinv_cart_has_discounts($items = array()) {
901 901
     $ret = false;
902 902
 
903
-    if ( wpinv_get_cart_discounts( $items ) ) {
903
+    if (wpinv_get_cart_discounts($items)) {
904 904
         $ret = true;
905 905
     }
906 906
     
@@ -911,131 +911,131 @@  discard block
 block discarded – undo
911 911
     }
912 912
     */
913 913
 
914
-    return apply_filters( 'wpinv_cart_has_discounts', $ret );
914
+    return apply_filters('wpinv_cart_has_discounts', $ret);
915 915
 }
916 916
 
917
-function wpinv_get_cart_discounted_amount( $items = array(), $discounts = false ) {
917
+function wpinv_get_cart_discounted_amount($items = array(), $discounts = false) {
918 918
     $amount = 0.00;
919
-    $items  = !empty( $items ) ? $items : wpinv_get_cart_content_details();
919
+    $items  = !empty($items) ? $items : wpinv_get_cart_content_details();
920 920
 
921
-    if ( $items ) {
922
-        $discounts = wp_list_pluck( $items, 'discount' );
921
+    if ($items) {
922
+        $discounts = wp_list_pluck($items, 'discount');
923 923
 
924
-        if ( is_array( $discounts ) ) {
925
-            $discounts = array_map( 'floatval', $discounts );
926
-            $amount    = array_sum( $discounts );
924
+        if (is_array($discounts)) {
925
+            $discounts = array_map('floatval', $discounts);
926
+            $amount    = array_sum($discounts);
927 927
         }
928 928
     }
929 929
 
930
-    return apply_filters( 'wpinv_get_cart_discounted_amount', $amount );
930
+    return apply_filters('wpinv_get_cart_discounted_amount', $amount);
931 931
 }
932 932
 
933
-function wpinv_get_cart_items_discount_amount( $items = array(), $discount = false ) {
934
-    $items  = !empty( $items ) ? $items : wpinv_get_cart_content_details();
933
+function wpinv_get_cart_items_discount_amount($items = array(), $discount = false) {
934
+    $items = !empty($items) ? $items : wpinv_get_cart_content_details();
935 935
     
936
-    if ( empty( $discount ) || empty( $items ) ) {
936
+    if (empty($discount) || empty($items)) {
937 937
         return 0;
938 938
     }
939 939
 
940 940
     $amount = 0;
941 941
     
942
-    foreach ( $items as $item ) {
943
-        $amount += wpinv_get_cart_item_discount_amount( $item, $discount );
942
+    foreach ($items as $item) {
943
+        $amount += wpinv_get_cart_item_discount_amount($item, $discount);
944 944
     }
945 945
     
946
-    $amount = wpinv_round_amount( $amount );
946
+    $amount = wpinv_round_amount($amount);
947 947
 
948 948
     return $amount;
949 949
 }
950 950
 
951
-function wpinv_get_cart_item_discount_amount( $item = array(), $discount = false ) {
951
+function wpinv_get_cart_item_discount_amount($item = array(), $discount = false) {
952 952
     global $wpinv_is_last_cart_item, $wpinv_flat_discount_total;
953 953
     
954 954
     $amount = 0;
955 955
 
956
-    if ( empty( $item ) || empty( $item['id'] ) ) {
956
+    if (empty($item) || empty($item['id'])) {
957 957
         return $amount;
958 958
     }
959 959
 
960
-    if ( empty( $item['quantity'] ) ) {
960
+    if (empty($item['quantity'])) {
961 961
         return $amount;
962 962
     }
963 963
 
964
-    if ( empty( $item['options'] ) ) {
964
+    if (empty($item['options'])) {
965 965
         $item['options'] = array();
966 966
     }
967 967
 
968
-    $price            = wpinv_get_cart_item_price( $item['id'], $item, $item['options'] );
968
+    $price            = wpinv_get_cart_item_price($item['id'], $item, $item['options']);
969 969
     $discounted_price = $price;
970 970
 
971 971
     $discounts = false === $discount ? wpinv_get_cart_discounts() : $discount;
972
-    if ( empty( $discounts ) ) {
972
+    if (empty($discounts)) {
973 973
         return $amount;
974 974
     }
975 975
 
976
-    if ( $discounts ) {
977
-        if ( is_array( $discounts ) ) {
978
-            $discounts = array_values( $discounts );
976
+    if ($discounts) {
977
+        if (is_array($discounts)) {
978
+            $discounts = array_values($discounts);
979 979
         } else {
980
-            $discounts = explode( ',', $discounts );
980
+            $discounts = explode(',', $discounts);
981 981
         }
982 982
     }
983 983
 
984
-    if( $discounts ) {
985
-        foreach ( $discounts as $discount ) {
986
-            $code_id = wpinv_get_discount_id_by_code( $discount );
984
+    if ($discounts) {
985
+        foreach ($discounts as $discount) {
986
+            $code_id = wpinv_get_discount_id_by_code($discount);
987 987
 
988 988
             // Check discount exists
989
-            if( $code_id === false ) {
989
+            if ($code_id === false) {
990 990
                 continue;
991 991
             }
992 992
 
993
-            $reqs           = wpinv_get_discount_item_reqs( $code_id );
994
-            $excluded_items = wpinv_get_discount_excluded_items( $code_id );
993
+            $reqs           = wpinv_get_discount_item_reqs($code_id);
994
+            $excluded_items = wpinv_get_discount_excluded_items($code_id);
995 995
 
996 996
             // Make sure requirements are set and that this discount shouldn't apply to the whole cart
997
-            if ( !empty( $reqs ) && wpinv_is_discount_not_global( $code_id ) ) {
998
-                foreach ( $reqs as $item_id ) {
999
-                    if ( $item_id == $item['id'] && ! in_array( $item['id'], $excluded_items ) ) {
1000
-                        $discounted_price -= $price - wpinv_get_discounted_amount( $discount, $price );
997
+            if (!empty($reqs) && wpinv_is_discount_not_global($code_id)) {
998
+                foreach ($reqs as $item_id) {
999
+                    if ($item_id == $item['id'] && !in_array($item['id'], $excluded_items)) {
1000
+                        $discounted_price -= $price - wpinv_get_discounted_amount($discount, $price);
1001 1001
                     }
1002 1002
                 }
1003 1003
             } else {
1004 1004
                 // This is a global cart discount
1005
-                if ( !in_array( $item['id'], $excluded_items ) ) {
1006
-                    if ( 'flat' === wpinv_get_discount_type( $code_id ) ) {
1005
+                if (!in_array($item['id'], $excluded_items)) {
1006
+                    if ('flat' === wpinv_get_discount_type($code_id)) {
1007 1007
                         $items_subtotal    = 0.00;
1008 1008
                         $cart_items        = wpinv_get_cart_contents();
1009 1009
                         
1010
-                        foreach ( $cart_items as $cart_item ) {
1011
-                            if ( ! in_array( $cart_item['id'], $excluded_items ) ) {
1012
-                                $options = !empty( $cart_item['options'] ) ? $cart_item['options'] : array();
1013
-                                $item_price      = wpinv_get_cart_item_price( $cart_item['id'], $cart_item, $options );
1010
+                        foreach ($cart_items as $cart_item) {
1011
+                            if (!in_array($cart_item['id'], $excluded_items)) {
1012
+                                $options = !empty($cart_item['options']) ? $cart_item['options'] : array();
1013
+                                $item_price      = wpinv_get_cart_item_price($cart_item['id'], $cart_item, $options);
1014 1014
                                 $items_subtotal += $item_price * $cart_item['quantity'];
1015 1015
                             }
1016 1016
                         }
1017 1017
 
1018
-                        $subtotal_percent  = ( ( $price * $item['quantity'] ) / $items_subtotal );
1019
-                        $code_amount       = wpinv_get_discount_amount( $code_id );
1018
+                        $subtotal_percent  = (($price * $item['quantity']) / $items_subtotal);
1019
+                        $code_amount       = wpinv_get_discount_amount($code_id);
1020 1020
                         $discounted_amount = $code_amount * $subtotal_percent;
1021 1021
                         $discounted_price -= $discounted_amount;
1022 1022
 
1023
-                        $wpinv_flat_discount_total += round( $discounted_amount, wpinv_currency_decimal_filter() );
1023
+                        $wpinv_flat_discount_total += round($discounted_amount, wpinv_currency_decimal_filter());
1024 1024
 
1025
-                        if ( $wpinv_is_last_cart_item && $wpinv_flat_discount_total < $code_amount ) {
1025
+                        if ($wpinv_is_last_cart_item && $wpinv_flat_discount_total < $code_amount) {
1026 1026
                             $adjustment = $code_amount - $wpinv_flat_discount_total;
1027 1027
                             $discounted_price -= $adjustment;
1028 1028
                         }
1029 1029
                     } else {
1030
-                        $discounted_price -= $price - wpinv_get_discounted_amount( $discount, $price );
1030
+                        $discounted_price -= $price - wpinv_get_discounted_amount($discount, $price);
1031 1031
                     }
1032 1032
                 }
1033 1033
             }
1034 1034
         }
1035 1035
 
1036
-        $amount = ( $price - apply_filters( 'wpinv_get_cart_item_discounted_amount', $discounted_price, $discounts, $item, $price ) );
1036
+        $amount = ($price - apply_filters('wpinv_get_cart_item_discounted_amount', $discounted_price, $discounts, $item, $price));
1037 1037
 
1038
-        if ( 'flat' !== wpinv_get_discount_type( $code_id ) ) {
1038
+        if ('flat' !== wpinv_get_discount_type($code_id)) {
1039 1039
             $amount = $amount * $item['quantity'];
1040 1040
         }
1041 1041
     }
@@ -1043,59 +1043,59 @@  discard block
 block discarded – undo
1043 1043
     return $amount;
1044 1044
 }
1045 1045
 
1046
-function wpinv_cart_discounts_html( $items = array() ) {
1047
-    echo wpinv_get_cart_discounts_html( $items );
1046
+function wpinv_cart_discounts_html($items = array()) {
1047
+    echo wpinv_get_cart_discounts_html($items);
1048 1048
 }
1049 1049
 
1050
-function wpinv_get_cart_discounts_html( $items = array(), $discounts = false ) {
1050
+function wpinv_get_cart_discounts_html($items = array(), $discounts = false) {
1051 1051
     global $wpi_cart_columns;
1052 1052
     
1053
-    $items  = !empty( $items ) ? $items : wpinv_get_cart_content_details();
1053
+    $items = !empty($items) ? $items : wpinv_get_cart_content_details();
1054 1054
     
1055
-    if ( !$discounts ) {
1056
-        $discounts = wpinv_get_cart_discounts( $items );
1055
+    if (!$discounts) {
1056
+        $discounts = wpinv_get_cart_discounts($items);
1057 1057
     }
1058 1058
 
1059
-    if ( !$discounts ) {
1059
+    if (!$discounts) {
1060 1060
         return;
1061 1061
     }
1062 1062
     
1063
-    $discounts = is_array( $discounts ) ? $discounts : array( $discounts );
1063
+    $discounts = is_array($discounts) ? $discounts : array($discounts);
1064 1064
     
1065 1065
     $html = '';
1066 1066
 
1067
-    foreach ( $discounts as $discount ) {
1068
-        $discount_id    = wpinv_get_discount_id_by_code( $discount );
1069
-        $discount_value = wpinv_get_discount_amount( $discount_id );
1070
-        $rate           = wpinv_format_discount_rate( wpinv_get_discount_type( $discount_id ), $discount_value );
1071
-        $amount         = wpinv_get_cart_items_discount_amount( $items, $discount );
1072
-        $remove_btn     = '<a title="' . esc_attr__( 'Remove discount', 'invoicing' ) . '" data-code="' . $discount . '" data-value="' . $discount_value . '" class="wpi-discount-remove" href="javascript:void(0);">[<i class="fa fa-times" aria-hidden="true"></i>]</a> ';
1067
+    foreach ($discounts as $discount) {
1068
+        $discount_id    = wpinv_get_discount_id_by_code($discount);
1069
+        $discount_value = wpinv_get_discount_amount($discount_id);
1070
+        $rate           = wpinv_format_discount_rate(wpinv_get_discount_type($discount_id), $discount_value);
1071
+        $amount         = wpinv_get_cart_items_discount_amount($items, $discount);
1072
+        $remove_btn     = '<a title="' . esc_attr__('Remove discount', 'invoicing') . '" data-code="' . $discount . '" data-value="' . $discount_value . '" class="wpi-discount-remove" href="javascript:void(0);">[<i class="fa fa-times" aria-hidden="true"></i>]</a> ';
1073 1073
         
1074 1074
         $html .= '<tr class="wpinv_cart_footer_row wpinv_cart_discount_row">';
1075 1075
         ob_start();
1076
-        do_action( 'wpinv_checkout_table_discount_first', $items );
1076
+        do_action('wpinv_checkout_table_discount_first', $items);
1077 1077
         $html .= ob_get_clean();
1078
-        $html .= '<td class="wpinv_cart_discount_label text-right" colspan="' . $wpi_cart_columns . '">' . $remove_btn . '<strong>' . wpinv_cart_discount_label( $discount, $rate, false ) . '</strong></td><td class="wpinv_cart_discount text-right"><span data-discount="' . $amount . '" class="wpinv_cart_discount_amount">&ndash;' . wpinv_price( wpinv_format_amount( $amount ) ) . '</span></td>';
1078
+        $html .= '<td class="wpinv_cart_discount_label text-right" colspan="' . $wpi_cart_columns . '">' . $remove_btn . '<strong>' . wpinv_cart_discount_label($discount, $rate, false) . '</strong></td><td class="wpinv_cart_discount text-right"><span data-discount="' . $amount . '" class="wpinv_cart_discount_amount">&ndash;' . wpinv_price(wpinv_format_amount($amount)) . '</span></td>';
1079 1079
         ob_start();
1080
-        do_action( 'wpinv_checkout_table_discount_last', $items );
1080
+        do_action('wpinv_checkout_table_discount_last', $items);
1081 1081
         $html .= ob_get_clean();
1082 1082
         $html .= '</tr>';
1083 1083
     }
1084 1084
 
1085
-    return apply_filters( 'wpinv_get_cart_discounts_html', $html, $discounts, $rate );
1085
+    return apply_filters('wpinv_get_cart_discounts_html', $html, $discounts, $rate);
1086 1086
 }
1087 1087
 
1088
-function wpinv_display_cart_discount( /** @scrutinizer ignore-unused */ $formatted = false, $echo = false ) {
1088
+function wpinv_display_cart_discount(/** @scrutinizer ignore-unused */ $formatted = false, $echo = false) {
1089 1089
     $discounts = wpinv_get_cart_discounts();
1090 1090
 
1091
-    if ( empty( $discounts ) ) {
1091
+    if (empty($discounts)) {
1092 1092
         return false;
1093 1093
     }
1094 1094
 
1095
-    $discount_id  = wpinv_get_discount_id_by_code( $discounts[0] );
1096
-    $amount       = wpinv_format_discount_rate( wpinv_get_discount_type( $discount_id ), wpinv_get_discount_amount( $discount_id ) );
1095
+    $discount_id  = wpinv_get_discount_id_by_code($discounts[0]);
1096
+    $amount       = wpinv_format_discount_rate(wpinv_get_discount_type($discount_id), wpinv_get_discount_amount($discount_id));
1097 1097
 
1098
-    if ( $echo ) {
1098
+    if ($echo) {
1099 1099
         echo $amount;
1100 1100
     }
1101 1101
 
@@ -1103,101 +1103,101 @@  discard block
 block discarded – undo
1103 1103
 }
1104 1104
 
1105 1105
 function wpinv_remove_cart_discount() {
1106
-    if ( !isset( $_GET['discount_id'] ) || ! isset( $_GET['discount_code'] ) ) {
1106
+    if (!isset($_GET['discount_id']) || !isset($_GET['discount_code'])) {
1107 1107
         return;
1108 1108
     }
1109 1109
 
1110
-    do_action( 'wpinv_pre_remove_cart_discount', absint( $_GET['discount_id'] ) );
1110
+    do_action('wpinv_pre_remove_cart_discount', absint($_GET['discount_id']));
1111 1111
 
1112
-    wpinv_unset_cart_discount( urldecode( $_GET['discount_code'] ) );
1112
+    wpinv_unset_cart_discount(urldecode($_GET['discount_code']));
1113 1113
 
1114
-    do_action( 'wpinv_post_remove_cart_discount', absint( $_GET['discount_id'] ) );
1114
+    do_action('wpinv_post_remove_cart_discount', absint($_GET['discount_id']));
1115 1115
 
1116
-    wp_redirect( wpinv_get_checkout_uri() ); wpinv_die();
1116
+    wp_redirect(wpinv_get_checkout_uri()); wpinv_die();
1117 1117
 }
1118
-add_action( 'wpinv_remove_cart_discount', 'wpinv_remove_cart_discount' );
1118
+add_action('wpinv_remove_cart_discount', 'wpinv_remove_cart_discount');
1119 1119
 
1120 1120
 function wpinv_maybe_remove_cart_discount() {
1121 1121
     $discounts = wpinv_get_cart_discounts();
1122 1122
 
1123
-    if ( !$discounts ) {
1123
+    if (!$discounts) {
1124 1124
         return;
1125 1125
     }
1126 1126
 
1127
-    foreach ( $discounts as $discount ) {
1128
-        if ( !wpinv_is_discount_valid( $discount ) ) {
1129
-            wpinv_unset_cart_discount( $discount );
1127
+    foreach ($discounts as $discount) {
1128
+        if (!wpinv_is_discount_valid($discount)) {
1129
+            wpinv_unset_cart_discount($discount);
1130 1130
         }
1131 1131
     }
1132 1132
 }
1133
-add_action( 'wpinv_post_remove_from_cart', 'wpinv_maybe_remove_cart_discount' );
1133
+add_action('wpinv_post_remove_from_cart', 'wpinv_maybe_remove_cart_discount');
1134 1134
 
1135 1135
 function wpinv_multiple_discounts_allowed() {
1136
-    $ret = wpinv_get_option( 'allow_multiple_discounts', false );
1137
-    return (bool) apply_filters( 'wpinv_multiple_discounts_allowed', $ret );
1136
+    $ret = wpinv_get_option('allow_multiple_discounts', false);
1137
+    return (bool) apply_filters('wpinv_multiple_discounts_allowed', $ret);
1138 1138
 }
1139 1139
 
1140
-function wpinv_get_discount_label( $code, $echo = true ) {
1141
-    $label = wp_sprintf( __( 'Discount%1$s', 'invoicing' ), ( $code != '' && $code != 'none' ? ' (<code>' . $code . '</code>)': '' ) );
1142
-    $label = apply_filters( 'wpinv_get_discount_label', $label, $code );
1140
+function wpinv_get_discount_label($code, $echo = true) {
1141
+    $label = wp_sprintf(__('Discount%1$s', 'invoicing'), ($code != '' && $code != 'none' ? ' (<code>' . $code . '</code>)' : ''));
1142
+    $label = apply_filters('wpinv_get_discount_label', $label, $code);
1143 1143
 
1144
-    if ( $echo ) {
1144
+    if ($echo) {
1145 1145
         echo $label;
1146 1146
     } else {
1147 1147
         return $label;
1148 1148
     }
1149 1149
 }
1150 1150
 
1151
-function wpinv_cart_discount_label( $code, $rate, $echo = true ) {
1152
-    $label = wp_sprintf( __( 'Discount: %s', 'invoicing' ), $code );
1153
-    $label = apply_filters( 'wpinv_cart_discount_label', $label, $code, $rate );
1151
+function wpinv_cart_discount_label($code, $rate, $echo = true) {
1152
+    $label = wp_sprintf(__('Discount: %s', 'invoicing'), $code);
1153
+    $label = apply_filters('wpinv_cart_discount_label', $label, $code, $rate);
1154 1154
 
1155
-    if ( $echo ) {
1155
+    if ($echo) {
1156 1156
         echo $label;
1157 1157
     } else {
1158 1158
         return $label;
1159 1159
     }
1160 1160
 }
1161 1161
 
1162
-function wpinv_check_delete_discount( $check, $post ) {
1163
-    if ( $post->post_type == 'wpi_discount' && wpinv_get_discount_uses( $post->ID ) > 0 ) {
1162
+function wpinv_check_delete_discount($check, $post) {
1163
+    if ($post->post_type == 'wpi_discount' && wpinv_get_discount_uses($post->ID) > 0) {
1164 1164
         return true;
1165 1165
     }
1166 1166
     
1167 1167
     return $check;
1168 1168
 }
1169
-add_filter( 'pre_delete_post', 'wpinv_check_delete_discount', 10, 2 );
1169
+add_filter('pre_delete_post', 'wpinv_check_delete_discount', 10, 2);
1170 1170
 
1171 1171
 function wpinv_checkout_form_validate_discounts() {
1172 1172
     global $wpi_checkout_id;
1173 1173
     
1174 1174
     $discounts = wpinv_get_cart_discounts();
1175 1175
     
1176
-    if ( !empty( $discounts ) ) {
1176
+    if (!empty($discounts)) {
1177 1177
         $invalid = false;
1178 1178
         
1179
-        foreach ( $discounts as $key => $code ) {
1180
-            if ( !wpinv_is_discount_valid( $code, (int)wpinv_get_user_id( $wpi_checkout_id ) ) ) {
1179
+        foreach ($discounts as $key => $code) {
1180
+            if (!wpinv_is_discount_valid($code, (int) wpinv_get_user_id($wpi_checkout_id))) {
1181 1181
                 $invalid = true;
1182 1182
                 
1183
-                wpinv_unset_cart_discount( $code );
1183
+                wpinv_unset_cart_discount($code);
1184 1184
             }
1185 1185
         }
1186 1186
         
1187
-        if ( $invalid ) {
1187
+        if ($invalid) {
1188 1188
             $errors = wpinv_get_errors();
1189
-            $error  = !empty( $errors['wpinv-discount-error'] ) ? $errors['wpinv-discount-error'] . ' ' : '';
1190
-            $error  .= __( 'The discount has been removed from cart.', 'invoicing' );
1191
-            wpinv_set_error( 'wpinv-discount-error', $error );
1189
+            $error  = !empty($errors['wpinv-discount-error']) ? $errors['wpinv-discount-error'] . ' ' : '';
1190
+            $error .= __('The discount has been removed from cart.', 'invoicing');
1191
+            wpinv_set_error('wpinv-discount-error', $error);
1192 1192
             
1193
-            wpinv_recalculate_tax( true );
1193
+            wpinv_recalculate_tax(true);
1194 1194
         }
1195 1195
     }
1196 1196
 }
1197
-add_action( 'wpinv_before_checkout_form', 'wpinv_checkout_form_validate_discounts', -10 );
1197
+add_action('wpinv_before_checkout_form', 'wpinv_checkout_form_validate_discounts', -10);
1198 1198
 
1199 1199
 function wpinv_discount_amount() {
1200 1200
     $output = 0.00;
1201 1201
     
1202
-    return apply_filters( 'wpinv_discount_amount', $output );
1202
+    return apply_filters('wpinv_discount_amount', $output);
1203 1203
 }
1204 1204
\ No newline at end of file
Please login to merge, or discard this patch.
includes/class-wpinv-discount.php 1 patch
Spacing   +189 added lines, -189 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
  * @since   1.0.15
6 6
  */
7 7
 
8
-defined( 'ABSPATH' ) || exit;
8
+defined('ABSPATH') || exit;
9 9
 
10 10
 /**
11 11
  * Discount class.
@@ -63,45 +63,45 @@  discard block
 block discarded – undo
63 63
 	 * @param int|array|string|WPInv_Discount $discount discount data, object, ID or code.
64 64
 	 * @since 1.0.15
65 65
 	 */
66
-	public function __construct( $discount = array() ) {
66
+	public function __construct($discount = array()) {
67 67
         
68 68
         // If the discount is an instance of this class...
69
-		if ( $discount instanceof WPInv_Discount ) {
70
-			$this->init( $discount->data );
69
+		if ($discount instanceof WPInv_Discount) {
70
+			$this->init($discount->data);
71 71
 			return;
72 72
         }
73 73
         
74 74
         // If the discount is an array of discount details...
75
-        if ( is_array( $discount ) ) {
76
-			$this->init( $discount );
75
+        if (is_array($discount)) {
76
+			$this->init($discount);
77 77
 			return;
78 78
 		}
79 79
 		
80 80
 		// Try fetching the discount by its post id.
81 81
 		$data = false;
82 82
 		
83
-		if ( ! empty( $discount ) && is_numeric( $discount ) ) {
84
-			$discount = absint( $discount );
85
-			$data = self::get_data_by( 'id', $discount );
83
+		if (!empty($discount) && is_numeric($discount)) {
84
+			$discount = absint($discount);
85
+			$data = self::get_data_by('id', $discount);
86 86
 		}
87 87
 
88
-		if ( is_array( $data ) ) {
89
-			$this->init( $data );
88
+		if (is_array($data)) {
89
+			$this->init($data);
90 90
 			return;
91 91
 		}
92 92
 		
93 93
 		// Try fetching the discount by its discount code.
94
-		if ( ! empty( $discount ) && is_string( $discount ) ) {
95
-			$data = self::get_data_by( 'discount_code', $discount );
94
+		if (!empty($discount) && is_string($discount)) {
95
+			$data = self::get_data_by('discount_code', $discount);
96 96
 		}
97 97
 
98
-		if ( is_array( $data ) ) {
99
-			$this->init( $data );
98
+		if (is_array($data)) {
99
+			$this->init($data);
100 100
 			return;
101 101
 		} 
102 102
 		
103 103
 		// If we are here then the discount does not exist.
104
-		$this->init( array() );
104
+		$this->init(array());
105 105
 	}
106 106
 	
107 107
 	/**
@@ -110,8 +110,8 @@  discard block
 block discarded – undo
110 110
 	 * @since 1.0.15
111 111
 	 * @param array $data An array containing the discount's data
112 112
 	 */
113
-	public function init( $data ) {
114
-		$data       	  = self::sanitize_discount_data( $data );
113
+	public function init($data) {
114
+		$data       	  = self::sanitize_discount_data($data);
115 115
 		$this->data 	  = $data;
116 116
 		$this->old_status = $data['status'];
117 117
 		$this->ID   	  = $data['ID'];
@@ -127,50 +127,50 @@  discard block
 block discarded – undo
127 127
 	 * @since 1.0.15
128 128
 	 * @return array|bool array of discount details on success. False otherwise.
129 129
 	 */
130
-	public static function get_data_by( $field, $value ) {
130
+	public static function get_data_by($field, $value) {
131 131
 
132
-		if ( 'id' == strtolower( $field ) ) {
132
+		if ('id' == strtolower($field)) {
133 133
 			// Make sure the value is numeric to avoid casting objects, for example,
134 134
 			// to int 1.
135
-			if ( ! is_numeric( $value ) )
135
+			if (!is_numeric($value))
136 136
 				return false;
137
-			$value = intval( $value );
138
-			if ( $value < 1 )
137
+			$value = intval($value);
138
+			if ($value < 1)
139 139
 				return false;
140 140
 		}
141 141
 
142
-		if ( ! $value || ! is_string( $field ) ) {
142
+		if (!$value || !is_string($field)) {
143 143
 			return false;
144 144
 		}
145 145
 		
146
-		$field = trim( $field );
146
+		$field = trim($field);
147 147
 
148 148
 		// prepare query args
149
-		switch ( strtolower( $field ) ) {
149
+		switch (strtolower($field)) {
150 150
 			case 'id':
151 151
 				$discount_id = $value;
152
-				$args		 = array( 'include' => array( $value ) );
152
+				$args = array('include' => array($value));
153 153
 				break;
154 154
 			case 'discount_code':
155 155
 			case 'code':
156
-				$value       = trim( $value );
157
-				$discount_id = wp_cache_get( $value, 'WPInv_Discount_Codes' );
158
-				$args		 = array( 'meta_key' => '_wpi_discount_code', 'meta_value' => $value );
156
+				$value       = trim($value);
157
+				$discount_id = wp_cache_get($value, 'WPInv_Discount_Codes');
158
+				$args = array('meta_key' => '_wpi_discount_code', 'meta_value' => $value);
159 159
 				break;
160 160
 			case 'name':
161 161
 				$discount_id = 0;
162
-				$args		 = array( 'name' => trim( $value ) );
162
+				$args		 = array('name' => trim($value));
163 163
 				break;
164 164
 			default:
165
-				$args		 = apply_filters( "wpinv_discount_get_data_by_{$field}_args", null, $value );
166
-				if ( ! is_array( $args ) ) {
167
-					return apply_filters( "wpinv_discount_get_data_by_$field", false, $value );
165
+				$args		 = apply_filters("wpinv_discount_get_data_by_{$field}_args", null, $value);
166
+				if (!is_array($args)) {
167
+					return apply_filters("wpinv_discount_get_data_by_$field", false, $value);
168 168
 				}
169 169
 
170 170
 		}
171 171
 
172 172
 		// Check if there is a cached value.
173
-		if ( ! empty( $discount_id ) && $discount = wp_cache_get( (int) $discount_id, 'WPInv_Discounts' ) ) {
173
+		if (!empty($discount_id) && $discount = wp_cache_get((int) $discount_id, 'WPInv_Discounts')) {
174 174
 			return $discount;
175 175
 		}
176 176
 
@@ -179,13 +179,13 @@  discard block
 block discarded – undo
179 179
 			array(
180 180
 				'post_type'      => 'wpi_discount',
181 181
 				'posts_per_page' => 1,
182
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' )
182
+				'post_status'    => array('publish', 'pending', 'draft', 'expired')
183 183
 			)
184 184
 		);
185 185
 
186
-		$discount = get_posts( $args );
186
+		$discount = get_posts($args);
187 187
 				
188
-		if( empty( $discount ) ) {
188
+		if (empty($discount)) {
189 189
 			return false;
190 190
 		}
191 191
 
@@ -194,31 +194,31 @@  discard block
 block discarded – undo
194 194
 		// Prepare the return data.
195 195
 		$return = array(
196 196
             'ID'                          => $discount->ID,
197
-            'code'                        => get_post_meta( $discount->ID, '_wpi_discount_code', true ),
198
-            'amount'                      => get_post_meta( $discount->ID, '_wpi_discount_amount', true ),
197
+            'code'                        => get_post_meta($discount->ID, '_wpi_discount_code', true),
198
+            'amount'                      => get_post_meta($discount->ID, '_wpi_discount_amount', true),
199 199
             'date_created'                => $discount->post_date,
200 200
 			'date_modified'               => $discount->post_modified,
201 201
 			'status'               		  => $discount->post_status,
202
-			'start'                  	  => get_post_meta( $discount->ID, '_wpi_discount_start', true ),
203
-            'expiration'                  => get_post_meta( $discount->ID, '_wpi_discount_expiration', true ),
204
-            'type'               		  => get_post_meta( $discount->ID, '_wpi_discount_type', true ),
202
+			'start'                  	  => get_post_meta($discount->ID, '_wpi_discount_start', true),
203
+            'expiration'                  => get_post_meta($discount->ID, '_wpi_discount_expiration', true),
204
+            'type'               		  => get_post_meta($discount->ID, '_wpi_discount_type', true),
205 205
             'description'                 => $discount->post_excerpt,
206
-            'uses'                 		  => get_post_meta( $discount->ID, '_wpi_discount_uses', true ),
207
-            'is_single_use'               => get_post_meta( $discount->ID, '_wpi_discount_is_single_use', true ),
208
-            'items'              	      => get_post_meta( $discount->ID, '_wpi_discount_items', true ),
209
-            'excluded_items'              => get_post_meta( $discount->ID, '_wpi_discount_excluded_items', true ),
210
-            'max_uses'                    => get_post_meta( $discount->ID, '_wpi_discount_max_uses', true ),
211
-            'is_recurring'                => get_post_meta( $discount->ID, '_wpi_discount_is_recurring', true ),
212
-            'min_total'                   => get_post_meta( $discount->ID, '_wpi_discount_min_total', true ),
213
-            'max_total'                   => get_post_meta( $discount->ID, '_wpi_discount_max_total', true ),
206
+            'uses'                 		  => get_post_meta($discount->ID, '_wpi_discount_uses', true),
207
+            'is_single_use'               => get_post_meta($discount->ID, '_wpi_discount_is_single_use', true),
208
+            'items'              	      => get_post_meta($discount->ID, '_wpi_discount_items', true),
209
+            'excluded_items'              => get_post_meta($discount->ID, '_wpi_discount_excluded_items', true),
210
+            'max_uses'                    => get_post_meta($discount->ID, '_wpi_discount_max_uses', true),
211
+            'is_recurring'                => get_post_meta($discount->ID, '_wpi_discount_is_recurring', true),
212
+            'min_total'                   => get_post_meta($discount->ID, '_wpi_discount_min_total', true),
213
+            'max_total'                   => get_post_meta($discount->ID, '_wpi_discount_max_total', true),
214 214
         );
215 215
 		
216
-		$return = self::sanitize_discount_data( $return );
217
-		$return = apply_filters( 'wpinv_discount_properties', $return );
216
+		$return = self::sanitize_discount_data($return);
217
+		$return = apply_filters('wpinv_discount_properties', $return);
218 218
 
219 219
 		// Update the cache with our data
220
-		wp_cache_add( $discount->ID, $return, 'WPInv_Discounts' );
221
-		wp_cache_add( $return['code'], $discount->ID, 'WPInv_Discount_Codes' );
220
+		wp_cache_add($discount->ID, $return, 'WPInv_Discounts');
221
+		wp_cache_add($return['code'], $discount->ID, 'WPInv_Discount_Codes');
222 222
 
223 223
 		return $return;
224 224
 	}
@@ -232,9 +232,9 @@  discard block
 block discarded – undo
232 232
 	 *
233 233
 	 * @return array the sanitized data
234 234
 	 */
235
-	public static function sanitize_discount_data( $data ) {
235
+	public static function sanitize_discount_data($data) {
236 236
 		
237
-		$allowed_discount_types = array_keys( wpinv_get_discount_types() );
237
+		$allowed_discount_types = array_keys(wpinv_get_discount_types());
238 238
 		
239 239
 		$return = array(
240 240
             'ID'                          => null,
@@ -259,60 +259,60 @@  discard block
 block discarded – undo
259 259
 		
260 260
 				
261 261
 		// Arrays only please.
262
-		if ( ! is_array( $data ) ) {
262
+		if (!is_array($data)) {
263 263
             return $return;
264 264
         }
265 265
 
266 266
 		// If an id is provided, ensure it is a valid discount.
267
-        if ( ! empty( $data['ID'] ) && ( ! is_numeric( $data['ID'] ) || 'wpi_discount' !== get_post_type( $data['ID'] ) ) ) {
267
+        if (!empty($data['ID']) && (!is_numeric($data['ID']) || 'wpi_discount' !== get_post_type($data['ID']))) {
268 268
             return $return;
269 269
 		}
270 270
 
271
-        $return = array_merge( $return, $data );
271
+        $return = array_merge($return, $data);
272 272
 
273 273
         // Sanitize some keys.
274
-        $return['amount']         = wpinv_sanitize_amount( $return['amount'] );
274
+        $return['amount'] = wpinv_sanitize_amount($return['amount']);
275 275
 		$return['is_single_use']  = (bool) $return['is_single_use'];
276 276
 		$return['is_recurring']   = (bool) $return['is_recurring'];
277 277
 		$return['uses']	          = (int) $return['uses'];
278 278
 		$return['max_uses']	      = (int) $return['max_uses'];
279
-		$return['min_total'] 	  = wpinv_sanitize_amount( $return['min_total'] );
280
-        $return['max_total'] 	  = wpinv_sanitize_amount( $return['max_total'] );
279
+		$return['min_total'] = wpinv_sanitize_amount($return['min_total']);
280
+        $return['max_total'] = wpinv_sanitize_amount($return['max_total']);
281 281
 
282 282
 		// Trim all values.
283
-		$return = wpinv_clean( $return );
283
+		$return = wpinv_clean($return);
284 284
 		
285 285
 		// Ensure the discount type is supported.
286
-        if ( ! in_array( $return['type'], $allowed_discount_types, true ) ) {
286
+        if (!in_array($return['type'], $allowed_discount_types, true)) {
287 287
             $return['type'] = 'percent';
288 288
 		}
289
-		$return['type_name'] = wpinv_get_discount_type_name( $return['type'] );
289
+		$return['type_name'] = wpinv_get_discount_type_name($return['type']);
290 290
 		
291 291
 		// Do not offer more than a 100% discount.
292
-		if ( $return['type'] == 'percent' && (float) $return['amount'] > 100 ) {
292
+		if ($return['type'] == 'percent' && (float) $return['amount'] > 100) {
293 293
 			$return['amount'] = 100;
294 294
 		}
295 295
 
296 296
 		// Format dates.
297
-		foreach( wpinv_parse_list( 'date_created date_modified expiration start') as $prop ) {
298
-			if( ! empty( $return[$prop] ) ) {
299
-				$return[$prop]      = date_i18n( 'Y-m-d H:i:s', strtotime( $return[$prop] ) );
297
+		foreach (wpinv_parse_list('date_created date_modified expiration start') as $prop) {
298
+			if (!empty($return[$prop])) {
299
+				$return[$prop] = date_i18n('Y-m-d H:i:s', strtotime($return[$prop]));
300 300
 			}
301 301
 		}
302 302
 
303 303
 		// Formart items.
304
-		foreach( array( 'excluded_items', 'items' ) as $prop ) {
304
+		foreach (array('excluded_items', 'items') as $prop) {
305 305
 
306
-			if( ! empty( $return[$prop] ) ) {
306
+			if (!empty($return[$prop])) {
307 307
 				// Ensure that the property is an array of non-empty integers.
308
-				$return[$prop]      = array_filter( array_map( 'intval', wpinv_parse_list( $return[$prop] ) ) );
308
+				$return[$prop]      = array_filter(array_map('intval', wpinv_parse_list($return[$prop])));
309 309
 			} else {
310 310
 				$return[$prop]      = array();
311 311
 			}
312 312
 
313 313
 		}
314 314
 		
315
-		return apply_filters( 'wpinv_sanitize_discount_data', $return, $data );
315
+		return apply_filters('wpinv_sanitize_discount_data', $return, $data);
316 316
 	}
317 317
 	
318 318
 	/**
@@ -323,8 +323,8 @@  discard block
 block discarded – undo
323 323
 	 *
324 324
 	 * @return bool Whether the given discount field is set.
325 325
 	 */
326
-	public function __isset( $key ){
327
-		return isset( $this->data[$key] ) || method_exists( $this, "get_$key");
326
+	public function __isset($key) {
327
+		return isset($this->data[$key]) || method_exists($this, "get_$key");
328 328
 	}
329 329
 	
330 330
 	/**
@@ -336,8 +336,8 @@  discard block
 block discarded – undo
336 336
 	 * @param string $key Discount data to retrieve
337 337
 	 * @return mixed Value of the given discount property (if set).
338 338
 	 */
339
-	public function __get( $key ) {
340
-		return $this->get( $key );
339
+	public function __get($key) {
340
+		return $this->get($key);
341 341
 	}
342 342
 
343 343
 	/**
@@ -349,15 +349,15 @@  discard block
 block discarded – undo
349 349
 	 * @param string $key Discount data to retrieve
350 350
 	 * @return mixed Value of the given discount property (if set).
351 351
 	 */
352
-	public function get( $key ) {
352
+	public function get($key) {
353 353
 		
354
-		if ( $key == 'id' ) {
354
+		if ($key == 'id') {
355 355
 			$key = 'ID';
356 356
 		}
357 357
 		
358
-		if( method_exists( $this, "get_$key") ) {
359
-			$value 	= call_user_func( array( $this, "get_$key" ) );
360
-		} else if( isset( $this->data[$key] ) ) {
358
+		if (method_exists($this, "get_$key")) {
359
+			$value 	= call_user_func(array($this, "get_$key"));
360
+		} else if (isset($this->data[$key])) {
361 361
 			$value 	= $this->data[$key];
362 362
 		} else {
363 363
 			$value = null;
@@ -374,7 +374,7 @@  discard block
 block discarded – undo
374 374
 		 * @param string         $code     The discount's discount code.
375 375
 		 * @param array          $data     The discount's data array.
376 376
 		 */
377
-		return apply_filters( "wpinv_get_discount_{$key}", $value, $this->ID, $this, $this->data['code'], $this->data );
377
+		return apply_filters("wpinv_get_discount_{$key}", $value, $this->ID, $this, $this->data['code'], $this->data);
378 378
 
379 379
 	}
380 380
 	
@@ -387,9 +387,9 @@  discard block
 block discarded – undo
387 387
 	 * @access public
388 388
 	 *
389 389
 	 */
390
-	public function __set( $key, $value ) {
390
+	public function __set($key, $value) {
391 391
 		
392
-		if ( 'id' == strtolower( $key ) ) {
392
+		if ('id' == strtolower($key)) {
393 393
 			
394 394
 			$this->ID = $value;
395 395
 			$this->data['ID'] = $value;
@@ -410,10 +410,10 @@  discard block
 block discarded – undo
410 410
 		 * @param string         $code     The discount's discount code.
411 411
 		 * @param array          $data     The discount's data array.
412 412
 		 */
413
-		$value = apply_filters( "wpinv_set_discount_{$key}", $value, $this->ID, $this, $this->code, $this->data );
413
+		$value = apply_filters("wpinv_set_discount_{$key}", $value, $this->ID, $this, $this->code, $this->data);
414 414
 
415
-		if( method_exists( $this, "set_$key") ) {
416
-			call_user_func( array( $this, "set_$key" ), $value );
415
+		if (method_exists($this, "set_$key")) {
416
+			call_user_func(array($this, "set_$key"), $value);
417 417
 		} else {
418 418
 			$this->data[$key] = $value;
419 419
 		}
@@ -428,53 +428,53 @@  discard block
 block discarded – undo
428 428
 	 * @return bool
429 429
 	 *
430 430
 	 */
431
-	public function save(){
431
+	public function save() {
432 432
 		
433
-		$data = self::sanitize_discount_data( $this->data );
433
+		$data = self::sanitize_discount_data($this->data);
434 434
 
435 435
 		// Should we create a new post?
436
-		if( ! $data[ 'ID' ] ) {
436
+		if (!$data['ID']) {
437 437
 
438
-			$id = wp_insert_post( array(
438
+			$id = wp_insert_post(array(
439 439
 				'post_status'           => $data['status'],
440 440
 				'post_type'             => 'wpi_discount',
441 441
 				'post_excerpt'          => $data['description'],
442
-			) );
442
+			));
443 443
 
444
-			if( empty( $id ) ) {
444
+			if (empty($id)) {
445 445
 				return false;
446 446
 			}
447 447
 
448
-			$data[ 'ID' ] = (int) $id;
449
-			$this->ID = $data[ 'ID' ];
450
-			$this->data['ID'] = $data[ 'ID' ];
448
+			$data['ID'] = (int) $id;
449
+			$this->ID = $data['ID'];
450
+			$this->data['ID'] = $data['ID'];
451 451
 
452 452
 		} else {
453
-			$this->update_status( $data['status'] );
453
+			$this->update_status($data['status']);
454 454
 		}
455 455
 
456
-		$meta = apply_filters( 'wpinv_update_discount', $data, $this->ID, $this );
456
+		$meta = apply_filters('wpinv_update_discount', $data, $this->ID, $this);
457 457
 
458
-		do_action( 'wpinv_pre_update_discount', $meta, $this->ID, $this );
458
+		do_action('wpinv_pre_update_discount', $meta, $this->ID, $this);
459 459
 
460
-		foreach( wpinv_parse_list( 'ID date_created date_modified status description type_name' ) as $prop ) {
461
-			if ( isset( $meta[$prop] ) ) {
462
-				unset( $meta[$prop] );
460
+		foreach (wpinv_parse_list('ID date_created date_modified status description type_name') as $prop) {
461
+			if (isset($meta[$prop])) {
462
+				unset($meta[$prop]);
463 463
 			}
464 464
 		}
465 465
 
466
-		if( isset( $meta['uses'] ) && empty( $meta['uses'] ) ) {
467
-			unset( $meta['uses'] );
466
+		if (isset($meta['uses']) && empty($meta['uses'])) {
467
+			unset($meta['uses']);
468 468
 		}
469 469
 
470 470
 		// Save the metadata.
471
-		foreach( $meta as $key => $value ) {
472
-			update_post_meta( $this->ID, "_wpi_discount_$key", $value );
471
+		foreach ($meta as $key => $value) {
472
+			update_post_meta($this->ID, "_wpi_discount_$key", $value);
473 473
 		}
474 474
 
475 475
 		$this->refresh();
476 476
 
477
-		do_action( 'wpinv_post_update_discount', $meta, $this->ID );
477
+		do_action('wpinv_post_update_discount', $meta, $this->ID);
478 478
 
479 479
 		return true;		
480 480
 	}
@@ -487,17 +487,17 @@  discard block
 block discarded – undo
487 487
 	 * @return bool
488 488
 	 *
489 489
 	 */
490
-	public function refresh(){
490
+	public function refresh() {
491 491
 
492 492
 		// Empty the cache for this discount.
493
-		wp_cache_delete( $this->ID, 'WPInv_Discounts' );
494
-		wp_cache_delete( $this->get( 'code' ), 'WPInv_Discount_Codes' );
493
+		wp_cache_delete($this->ID, 'WPInv_Discounts');
494
+		wp_cache_delete($this->get('code'), 'WPInv_Discount_Codes');
495 495
 
496
-		$data = self::get_data_by( 'id', $this->ID );
497
-		if( is_array( $data ) ) {
498
-			$this->init( $data );
496
+		$data = self::get_data_by('id', $this->ID);
497
+		if (is_array($data)) {
498
+			$this->init($data);
499 499
 		} else {
500
-			$this->init( array() );
500
+			$this->init(array());
501 501
 		}
502 502
 
503 503
 	}
@@ -510,14 +510,14 @@  discard block
 block discarded – undo
510 510
 	 * @return bool
511 511
 	 *
512 512
 	 */
513
-	public function update_status( $status = 'publish' ){
513
+	public function update_status($status = 'publish') {
514 514
 
515 515
 
516
-		if ( $this->exists() && $this->old_status != $status ) {
516
+		if ($this->exists() && $this->old_status != $status) {
517 517
 
518
-			do_action( 'wpinv_pre_update_discount_status', $this->ID, $this->old_status, $status );
519
-        	$updated = wp_update_post( array( 'ID' => $this->ID, 'post_status' => $status ) );
520
-			do_action( 'wpinv_post_update_discount_status', $this->ID, $this->old_status, $status );
518
+			do_action('wpinv_pre_update_discount_status', $this->ID, $this->old_status, $status);
519
+        	$updated = wp_update_post(array('ID' => $this->ID, 'post_status' => $status));
520
+			do_action('wpinv_post_update_discount_status', $this->ID, $this->old_status, $status);
521 521
 
522 522
 			$this->refresh();
523 523
 
@@ -534,8 +534,8 @@  discard block
 block discarded – undo
534 534
 	 * 
535 535
 	 * @since 1.0.15
536 536
 	 */
537
-	public function exists(){
538
-		return ! empty( $this->ID );
537
+	public function exists() {
538
+		return !empty($this->ID);
539 539
 	}
540 540
 	
541 541
 	// Boolean methods
@@ -548,7 +548,7 @@  discard block
 block discarded – undo
548 548
 	 * @since 1.0.15
549 549
 	 * @return bool
550 550
 	 */
551
-	public function is_type( $type ) {
551
+	public function is_type($type) {
552 552
 		return $this->type == $type;
553 553
 	}
554 554
 	
@@ -569,12 +569,12 @@  discard block
 block discarded – undo
569 569
 	 * @return bool
570 570
 	 */
571 571
 	public function has_exceeded_limit() {
572
-		if( empty( $this->max_uses ) || empty( $this->uses ) ) { 
573
-			return false ;
572
+		if (empty($this->max_uses) || empty($this->uses)) { 
573
+			return false;
574 574
 		}
575 575
 		
576
-		$exceeded =  $this->uses >= $this->max_uses;
577
-		return apply_filters( 'wpinv_is_discount_maxed_out', $exceeded, $this->ID, $this, $this->code );
576
+		$exceeded = $this->uses >= $this->max_uses;
577
+		return apply_filters('wpinv_is_discount_maxed_out', $exceeded, $this->ID, $this, $this->code);
578 578
 	}
579 579
 	
580 580
 	/**
@@ -584,8 +584,8 @@  discard block
 block discarded – undo
584 584
 	 * @return bool
585 585
 	 */
586 586
 	public function is_expired() {
587
-		$expired = empty ( $this->expiration ) ? false : current_time( 'timestamp' ) > strtotime( $this->expiration );
588
-		return apply_filters( 'wpinv_is_discount_expired', $expired, $this->ID, $this, $this->code );
587
+		$expired = empty ($this->expiration) ? false : current_time('timestamp') > strtotime($this->expiration);
588
+		return apply_filters('wpinv_is_discount_expired', $expired, $this->ID, $this, $this->code);
589 589
 	}
590 590
 
591 591
 	/**
@@ -595,8 +595,8 @@  discard block
 block discarded – undo
595 595
 	 * @return bool
596 596
 	 */
597 597
 	public function has_started() {
598
-		$started = empty ( $this->start ) ? true : current_time( 'timestamp' ) > strtotime( $this->start );
599
-		return apply_filters( 'wpinv_is_discount_started', $started, $this->ID, $this, $this->code );		
598
+		$started = empty ($this->start) ? true : current_time('timestamp') > strtotime($this->start);
599
+		return apply_filters('wpinv_is_discount_started', $started, $this->ID, $this, $this->code);		
600 600
 	}
601 601
 	
602 602
 	/**
@@ -606,17 +606,17 @@  discard block
 block discarded – undo
606 606
 	 * @since 1.0.15
607 607
 	 * @return boolean
608 608
 	 */
609
-	public function is_valid_for_items( $item_ids ) {
609
+	public function is_valid_for_items($item_ids) {
610 610
 		 
611
-		$item_ids = array_map( 'intval',  wpinv_parse_list( $item_ids ) );
612
-		$included = array_intersect( $item_ids, $this->items );
613
-		$excluded = array_intersect( $item_ids, $this->excluded_items );
611
+		$item_ids = array_map('intval', wpinv_parse_list($item_ids));
612
+		$included = array_intersect($item_ids, $this->items);
613
+		$excluded = array_intersect($item_ids, $this->excluded_items);
614 614
 
615
-		if( ! empty( $this->excluded_items ) && ! empty( $excluded ) ) {
615
+		if (!empty($this->excluded_items) && !empty($excluded)) {
616 616
 			return false;
617 617
 		}
618 618
 
619
-		if( ! empty( $this->items ) && empty( $included ) ) {
619
+		if (!empty($this->items) && empty($included)) {
620 620
 			return false;
621 621
 		}
622 622
 		return true;
@@ -629,8 +629,8 @@  discard block
 block discarded – undo
629 629
 	 * @since 1.0.15
630 630
 	 * @return boolean
631 631
 	 */
632
-	public function is_valid_for_amount( $amount ) {
633
-		return $this->is_minimum_amount_met( $amount ) && $this->is_maximum_amount_met( $amount );
632
+	public function is_valid_for_amount($amount) {
633
+		return $this->is_minimum_amount_met($amount) && $this->is_maximum_amount_met($amount);
634 634
 	}
635 635
 
636 636
 	/**
@@ -640,10 +640,10 @@  discard block
 block discarded – undo
640 640
 	 * @since 1.0.15
641 641
 	 * @return boolean
642 642
 	 */
643
-	public function is_minimum_amount_met( $amount ) {
644
-		$amount = floatval( $amount );
645
-		$min_met= ! ( $this->min_total > 0 && $amount < $this->min_total );
646
-		return apply_filters( 'wpinv_is_discount_min_met', $min_met, $this->ID, $this, $this->code, $amount );
643
+	public function is_minimum_amount_met($amount) {
644
+		$amount = floatval($amount);
645
+		$min_met = !($this->min_total > 0 && $amount < $this->min_total);
646
+		return apply_filters('wpinv_is_discount_min_met', $min_met, $this->ID, $this, $this->code, $amount);
647 647
 	}
648 648
 
649 649
 	/**
@@ -653,10 +653,10 @@  discard block
 block discarded – undo
653 653
 	 * @since 1.0.15
654 654
 	 * @return boolean
655 655
 	 */
656
-	public function is_maximum_amount_met( $amount ) {
657
-		$amount = floatval( $amount );
658
-		$max_met= ! ( $this->max_total > 0 && $amount > $this->max_total );
659
-		return apply_filters( 'wpinv_is_discount_max_met', $max_met, $this->ID, $this, $this->code, $amount );
656
+	public function is_maximum_amount_met($amount) {
657
+		$amount = floatval($amount);
658
+		$max_met = !($this->max_total > 0 && $amount > $this->max_total);
659
+		return apply_filters('wpinv_is_discount_max_met', $max_met, $this->ID, $this, $this->code, $amount);
660 660
 	}
661 661
 
662 662
 	/**
@@ -666,50 +666,50 @@  discard block
 block discarded – undo
666 666
 	 * @since 1.0.15
667 667
 	 * @return boolean
668 668
 	 */
669
-	public function is_valid_for_user( $user ) {
669
+	public function is_valid_for_user($user) {
670 670
 		global $wpi_checkout_id;
671 671
 
672
-		if( empty( $user ) || empty( $this->is_single_use ) ) {
672
+		if (empty($user) || empty($this->is_single_use)) {
673 673
 			return true;
674 674
 		}
675 675
 
676 676
 		$user_id = 0;
677
-        if ( is_int( $user ) ) {
678
-            $user_id = absint( $user );
679
-        } else if ( is_email( $user ) && $user_data = get_user_by( 'email', $user ) ) {
677
+        if (is_int($user)) {
678
+            $user_id = absint($user);
679
+        } else if (is_email($user) && $user_data = get_user_by('email', $user)) {
680 680
             $user_id = $user_data->ID;
681
-        } else if ( $user_data = get_user_by( 'login', $user ) ) {
681
+        } else if ($user_data = get_user_by('login', $user)) {
682 682
             $user_id = $user_data->ID;
683
-        } else if ( absint( $user ) > 0 ) {
684
-            $user_id = absint( $user );
683
+        } else if (absint($user) > 0) {
684
+            $user_id = absint($user);
685 685
 		}
686 686
 
687
-		if ( empty( $user_id ) ) {
687
+		if (empty($user_id)) {
688 688
 			return true;
689 689
 		}
690 690
 		
691 691
 		// Get all payments with matching user id
692
-        $payments = wpinv_get_invoices( array( 'user' => $user_id, 'limit' => false ) ); 
693
-		$code     = strtolower( $this->code );
692
+        $payments = wpinv_get_invoices(array('user' => $user_id, 'limit' => false)); 
693
+		$code = strtolower($this->code);
694 694
 
695
-		foreach ( $payments as $payment ) {
695
+		foreach ($payments as $payment) {
696 696
 
697 697
 			// Don't count discount used for current invoice checkout.
698
-			if ( ! empty( $wpi_checkout_id ) && $wpi_checkout_id == $payment->ID ) {
698
+			if (!empty($wpi_checkout_id) && $wpi_checkout_id == $payment->ID) {
699 699
 				continue;
700 700
 			}
701 701
 			
702
-			if ( $payment->has_status( array( 'wpi-cancelled', 'wpi-failed' ) ) ) {
702
+			if ($payment->has_status(array('wpi-cancelled', 'wpi-failed'))) {
703 703
 				continue;
704 704
 			}
705 705
 
706
-			$discounts = $payment->get_discounts( true );
707
-			if ( empty( $discounts ) ) {
706
+			$discounts = $payment->get_discounts(true);
707
+			if (empty($discounts)) {
708 708
 				continue;
709 709
 			}
710 710
 
711
-			$discounts = array_map( 'strtolower', wpinv_parse_list( $discounts ) );
712
-			if ( ! empty( $discounts ) && in_array( $code, $discounts ) ) {
711
+			$discounts = array_map('strtolower', wpinv_parse_list($discounts));
712
+			if (!empty($discounts) && in_array($code, $discounts)) {
713 713
 				return false;
714 714
 			}
715 715
 		}
@@ -725,15 +725,15 @@  discard block
 block discarded – undo
725 725
 	 */
726 726
 	public function remove() {
727 727
 
728
-		if ( empty( $this->ID ) ) {
728
+		if (empty($this->ID)) {
729 729
 			return true;
730 730
 		}
731 731
 
732
-		do_action( 'wpinv_pre_delete_discount', $this->ID, $this->data );
733
-		wp_cache_delete( $this->ID, 'WPInv_Discounts' );
734
-    	wp_delete_post( $this->ID, true );
735
-		wp_cache_delete( $this->code, 'WPInv_Discount_Codes' );
736
-    	do_action( 'wpinv_post_delete_discount', $this->ID, $this->data );
732
+		do_action('wpinv_pre_delete_discount', $this->ID, $this->data);
733
+		wp_cache_delete($this->ID, 'WPInv_Discounts');
734
+    	wp_delete_post($this->ID, true);
735
+		wp_cache_delete($this->code, 'WPInv_Discount_Codes');
736
+    	do_action('wpinv_post_delete_discount', $this->ID, $this->data);
737 737
 
738 738
 		$this->ID = null;
739 739
 		$this->data['id'] = null;
@@ -747,21 +747,21 @@  discard block
 block discarded – undo
747 747
 	 * @param int $by The number of usages to increas by.
748 748
 	 * @return int
749 749
 	 */
750
-	public function increase_usage( $by = 1 ) {
750
+	public function increase_usage($by = 1) {
751 751
 
752 752
 		$this->uses = $this->uses + $by;
753 753
 
754
-		if( $this->uses  < 0 ) {
754
+		if ($this->uses < 0) {
755 755
 			$this->uses = 0;
756
-			update_post_meta( $this->ID, "_wpi_discount_uses", 0 );
756
+			update_post_meta($this->ID, "_wpi_discount_uses", 0);
757 757
 		}
758 758
 
759 759
 		$this->save();
760 760
 
761
-		if( $by > 0 ) {
762
-			do_action( 'wpinv_discount_increase_use_count', $this->uses, $this->ID, $this->code, $by );
761
+		if ($by > 0) {
762
+			do_action('wpinv_discount_increase_use_count', $this->uses, $this->ID, $this->code, $by);
763 763
 		} else {
764
-			do_action( 'wpinv_discount_decrease_use_count', $this->uses, $this->ID, $this->code, absint( $by ) );
764
+			do_action('wpinv_discount_decrease_use_count', $this->uses, $this->ID, $this->code, absint($by));
765 765
 		}
766 766
 		
767 767
 		return $this->uses;
@@ -775,8 +775,8 @@  discard block
 block discarded – undo
775 775
 	 */
776 776
 	public function get_data() {
777 777
 		$return = array();
778
-		foreach( array_keys( $this->data ) as $key ) {
779
-			$return[ $key ] = $this->get( $key );
778
+		foreach (array_keys($this->data) as $key) {
779
+			$return[$key] = $this->get($key);
780 780
 		}
781 781
 		return $return;
782 782
 	}
@@ -788,7 +788,7 @@  discard block
 block discarded – undo
788 788
 	 * @return string|false
789 789
 	 */
790 790
 	public function get_data_as_json() {
791
-		return wp_json_encode( $this->get_data() );
791
+		return wp_json_encode($this->get_data());
792 792
 	}
793 793
 
794 794
 	/**
@@ -798,7 +798,7 @@  discard block
 block discarded – undo
798 798
 	 * @return bool
799 799
 	 */
800 800
 	public function get_is_single_use() {
801
-		return (bool) apply_filters( 'wpinv_is_discount_single_use', $this->data['is_single_use'], $this->ID, $this, $this->code );
801
+		return (bool) apply_filters('wpinv_is_discount_single_use', $this->data['is_single_use'], $this->ID, $this, $this->code);
802 802
 	}
803 803
 
804 804
 	/**
@@ -808,7 +808,7 @@  discard block
 block discarded – undo
808 808
 	 * @return bool
809 809
 	 */
810 810
 	public function get_is_recurring() {
811
-		return (bool) apply_filters( 'wpinv_is_discount_recurring', $this->data['is_recurring'], $this->ID, $this->code, $this );
811
+		return (bool) apply_filters('wpinv_is_discount_recurring', $this->data['is_recurring'], $this->ID, $this->code, $this);
812 812
 	}
813 813
 
814 814
 	/**
@@ -818,7 +818,7 @@  discard block
 block discarded – undo
818 818
 	 * @return array
819 819
 	 */
820 820
 	public function get_items() {
821
-		return wpinv_parse_list( apply_filters( 'wpinv_get_discount_item_reqs', $this->data['items'], $this->ID, $this, $this->code ) );
821
+		return wpinv_parse_list(apply_filters('wpinv_get_discount_item_reqs', $this->data['items'], $this->ID, $this, $this->code));
822 822
 	}
823 823
 
824 824
 	/**
@@ -827,19 +827,19 @@  discard block
 block discarded – undo
827 827
 	 * @since 1.0.15
828 828
 	 * @return float
829 829
 	 */
830
-	public function get_discounted_amount( $amount ) {
830
+	public function get_discounted_amount($amount) {
831 831
 
832
-		if ( $this->type == 'flat' ) {
832
+		if ($this->type == 'flat') {
833 833
             $amount = $amount - $this->amount;
834 834
 		} else {
835
-            $amount = $amount - ( $amount * ( $this->amount / 100 ) );
835
+            $amount = $amount - ($amount * ($this->amount / 100));
836 836
 		}
837 837
 
838
-		if ( $amount < 0 ) {
838
+		if ($amount < 0) {
839 839
 			$amount = 0;
840 840
 		}
841 841
 
842
-		return apply_filters( 'wpinv_discounted_amount', $amount, $this->ID, $this, $this->code, $this->amount );
842
+		return apply_filters('wpinv_discounted_amount', $amount, $this->ID, $this, $this->code, $this->amount);
843 843
 	}
844 844
 	
845 845
 }
Please login to merge, or discard this patch.
vendor/ayecode/ayecode-connect-helper/ayecode-connect-helper.php 1 patch
Spacing   +78 added lines, -78 removed lines patch added patch discarded remove patch
@@ -1,10 +1,10 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3
-if ( ! defined( 'ABSPATH' ) ) {
3
+if (!defined('ABSPATH')) {
4 4
 	exit;
5 5
 }
6 6
 
7
-if ( ! class_exists( "AyeCode_Connect_Helper" ) ) {
7
+if (!class_exists("AyeCode_Connect_Helper")) {
8 8
 	/**
9 9
 	 * Allow the quick setup and connection of our AyeCode Connect plugin.
10 10
 	 *
@@ -29,41 +29,41 @@  discard block
 block discarded – undo
29 29
 		 * @param array $strings
30 30
 		 * @param array $pages
31 31
 		 */
32
-		public function __construct( $strings = array(), $pages = array() ) {
32
+		public function __construct($strings = array(), $pages = array()) {
33 33
 
34 34
 			// Only fire if not localhost and the current user has the right permissions.
35
-			if ( ! $this->is_localhost() && current_user_can( 'manage_options' ) ) {
35
+			if (!$this->is_localhost() && current_user_can('manage_options')) {
36 36
 
37 37
 
38 38
 				// set default strings
39 39
 				$default_strings = array(
40
-					'connect_title'     => __( "Thanks for choosing an AyeCode Product!" ),
41
-					'connect_external'  => __( "Please confirm you wish to connect your site?" ),
42
-					'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s" ), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>" ),
43
-					'connect_button'    => __( "Connect Site" ),
44
-					'connecting_button' => __( "Connecting..." ),
45
-					'error_localhost'   => __( "This service will only work with a live domain, not a localhost." ),
46
-					'error'             => __( "Something went wrong, please refresh and try again." ),
40
+					'connect_title'     => __("Thanks for choosing an AyeCode Product!"),
41
+					'connect_external'  => __("Please confirm you wish to connect your site?"),
42
+					'connect'           => sprintf(__("<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s"), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>"),
43
+					'connect_button'    => __("Connect Site"),
44
+					'connecting_button' => __("Connecting..."),
45
+					'error_localhost'   => __("This service will only work with a live domain, not a localhost."),
46
+					'error'             => __("Something went wrong, please refresh and try again."),
47 47
 				);
48
-				$this->strings   = array_merge( $default_strings, $strings );
48
+				$this->strings = array_merge($default_strings, $strings);
49 49
 
50 50
 
51 51
 				// set default pages
52 52
 				$default_pages = array();
53
-				$this->pages   = array_merge( $default_pages, $pages );
53
+				$this->pages   = array_merge($default_pages, $pages);
54 54
 
55 55
 				// maybe show connect site notice
56
-				add_action( 'admin_notices', array( $this, 'ayecode_connect_install_notice' ) );
56
+				add_action('admin_notices', array($this, 'ayecode_connect_install_notice'));
57 57
 
58 58
 				// add ajax action if not already added
59
-				if ( ! has_action( 'wp_ajax_ayecode_connect_helper' ) ) {
60
-					add_action( 'wp_ajax_ayecode_connect_helper', array( $this, 'ayecode_connect_install' ) );
59
+				if (!has_action('wp_ajax_ayecode_connect_helper')) {
60
+					add_action('wp_ajax_ayecode_connect_helper', array($this, 'ayecode_connect_install'));
61 61
 				}
62 62
 			}
63 63
 
64 64
 			// add ajax action if not already added
65
-			if ( ! has_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed' ) ) {
66
-				add_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed', array( $this, 'ayecode_connect_helper_installed' ) );
65
+			if (!has_action('wp_ajax_nopriv_ayecode_connect_helper_installed')) {
66
+				add_action('wp_ajax_nopriv_ayecode_connect_helper_installed', array($this, 'ayecode_connect_helper_installed'));
67 67
 			}
68 68
 
69 69
 		}
@@ -71,13 +71,13 @@  discard block
 block discarded – undo
71 71
 		/**
72 72
 		 * Give a way to check we can connect via a external redirect.
73 73
 		 */
74
-		public function ayecode_connect_helper_installed(){
74
+		public function ayecode_connect_helper_installed() {
75 75
 			$active = array(
76
-				'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION,'2.0.0.79','>') ? 1 : 0,
77
-				'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION,'1.2.1.5','>') ? 1 : 0,
78
-				'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION,'1.0.14','>') ? 1 : 0,
76
+				'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION, '2.0.0.79', '>') ? 1 : 0,
77
+				'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION, '1.2.1.5', '>') ? 1 : 0,
78
+				'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION, '1.0.14', '>') ? 1 : 0,
79 79
 			);
80
-			wp_send_json_success( $active );
80
+			wp_send_json_success($active);
81 81
 			wp_die();
82 82
 		}
83 83
 
@@ -88,9 +88,9 @@  discard block
 block discarded – undo
88 88
 		 *
89 89
 		 * @return string
90 90
 		 */
91
-		private function format_plugin_slug( $key ) {
92
-			$slug = explode( '/', $key );
93
-			$slug = explode( '.', end( $slug ) );
91
+		private function format_plugin_slug($key) {
92
+			$slug = explode('/', $key);
93
+			$slug = explode('.', end($slug));
94 94
 
95 95
 			return $slug[0];
96 96
 		}
@@ -101,45 +101,45 @@  discard block
 block discarded – undo
101 101
 		public function ayecode_connect_install() {
102 102
 
103 103
 			// bail if localhost
104
-			if ( $this->is_localhost() ) {
105
-				wp_send_json_error( $this->strings['error_localhost'] );
104
+			if ($this->is_localhost()) {
105
+				wp_send_json_error($this->strings['error_localhost']);
106 106
 			}
107 107
 
108 108
 			// Explicitly clear the event.
109
-			wp_clear_scheduled_hook( 'geodir_plugin_background_installer', func_get_args() );
109
+			wp_clear_scheduled_hook('geodir_plugin_background_installer', func_get_args());
110 110
 
111 111
 			$success     = true;
112 112
 			$plugin_slug = "ayecode-connect";
113
-			if ( ! empty( $plugin_slug ) ) {
114
-				require_once( ABSPATH . 'wp-admin/includes/file.php' );
115
-				require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
116
-				require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
117
-				require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
113
+			if (!empty($plugin_slug)) {
114
+				require_once(ABSPATH . 'wp-admin/includes/file.php');
115
+				require_once(ABSPATH . 'wp-admin/includes/plugin-install.php');
116
+				require_once(ABSPATH . 'wp-admin/includes/class-wp-upgrader.php');
117
+				require_once(ABSPATH . 'wp-admin/includes/plugin.php');
118 118
 
119 119
 				WP_Filesystem();
120 120
 
121 121
 				$skin              = new Automatic_Upgrader_Skin;
122
-				$upgrader          = new WP_Upgrader( $skin );
123
-				$installed_plugins = array_map( array( $this, 'format_plugin_slug' ), array_keys( get_plugins() ) );
122
+				$upgrader          = new WP_Upgrader($skin);
123
+				$installed_plugins = array_map(array($this, 'format_plugin_slug'), array_keys(get_plugins()));
124 124
 				$plugin_slug       = $plugin_slug;
125 125
 				$plugin            = $plugin_slug . '/' . $plugin_slug . '.php';
126 126
 				$installed         = false;
127 127
 				$activate          = false;
128 128
 
129 129
 				// See if the plugin is installed already
130
-				if ( in_array( $plugin_slug, $installed_plugins ) ) {
130
+				if (in_array($plugin_slug, $installed_plugins)) {
131 131
 					$installed = true;
132
-					$activate  = ! is_plugin_active( $plugin );
132
+					$activate  = !is_plugin_active($plugin);
133 133
 				}
134 134
 
135 135
 				// Install this thing!
136
-				if ( ! $installed ) {
136
+				if (!$installed) {
137 137
 
138 138
 					// Suppress feedback
139 139
 					ob_start();
140 140
 
141 141
 					try {
142
-						$plugin_information = plugins_api( 'plugin_information', array(
142
+						$plugin_information = plugins_api('plugin_information', array(
143 143
 							'slug'   => $plugin_slug,
144 144
 							'fields' => array(
145 145
 								'short_description' => false,
@@ -156,26 +156,26 @@  discard block
 block discarded – undo
156 156
 								'author_profile'    => false,
157 157
 								'author'            => false,
158 158
 							),
159
-						) );
159
+						));
160 160
 
161
-						if ( is_wp_error( $plugin_information ) ) {
162
-							throw new Exception( $plugin_information->get_error_message() );
161
+						if (is_wp_error($plugin_information)) {
162
+							throw new Exception($plugin_information->get_error_message());
163 163
 						}
164 164
 
165 165
 						$package  = $plugin_information->download_link;
166
-						$download = $upgrader->download_package( $package );
166
+						$download = $upgrader->download_package($package);
167 167
 
168
-						if ( is_wp_error( $download ) ) {
169
-							throw new Exception( $download->get_error_message() );
168
+						if (is_wp_error($download)) {
169
+							throw new Exception($download->get_error_message());
170 170
 						}
171 171
 
172
-						$working_dir = $upgrader->unpack_package( $download, true );
172
+						$working_dir = $upgrader->unpack_package($download, true);
173 173
 
174
-						if ( is_wp_error( $working_dir ) ) {
175
-							throw new Exception( $working_dir->get_error_message() );
174
+						if (is_wp_error($working_dir)) {
175
+							throw new Exception($working_dir->get_error_message());
176 176
 						}
177 177
 
178
-						$result = $upgrader->install_package( array(
178
+						$result = $upgrader->install_package(array(
179 179
 							'source'                      => $working_dir,
180 180
 							'destination'                 => WP_PLUGIN_DIR,
181 181
 							'clear_destination'           => false,
@@ -185,15 +185,15 @@  discard block
 block discarded – undo
185 185
 								'type'   => 'plugin',
186 186
 								'action' => 'install',
187 187
 							),
188
-						) );
188
+						));
189 189
 
190
-						if ( is_wp_error( $result ) ) {
191
-							throw new Exception( $result->get_error_message() );
190
+						if (is_wp_error($result)) {
191
+							throw new Exception($result->get_error_message());
192 192
 						}
193 193
 
194 194
 						$activate = true;
195 195
 
196
-					} catch ( Exception $e ) {
196
+					} catch (Exception $e) {
197 197
 						$success = false;
198 198
 					}
199 199
 
@@ -204,30 +204,30 @@  discard block
 block discarded – undo
204 204
 				wp_clean_plugins_cache();
205 205
 
206 206
 				// Activate this thing
207
-				if ( $activate ) {
207
+				if ($activate) {
208 208
 					try {
209
-						$result = activate_plugin( $plugin );
209
+						$result = activate_plugin($plugin);
210 210
 
211
-						if ( is_wp_error( $result ) ) {
211
+						if (is_wp_error($result)) {
212 212
 							$success = false;
213 213
 						} else {
214 214
 							$success = true;
215 215
 						}
216
-					} catch ( Exception $e ) {
216
+					} catch (Exception $e) {
217 217
 						$success = false;
218 218
 					}
219 219
 				}
220 220
 			}
221 221
 
222
-			if ( $success && function_exists( 'ayecode_connect_args' ) ) {
223
-				ayecode_connect();// init
222
+			if ($success && function_exists('ayecode_connect_args')) {
223
+				ayecode_connect(); // init
224 224
 				$args        = ayecode_connect_args();
225
-				$client      = new AyeCode_Connect( $args );
226
-				$redirect_to = ! empty( $_POST['redirect_to'] ) ? esc_url_raw( $_POST['redirect_to'] ) : '';
227
-				$redirect    = $client->build_connect_url( $redirect_to );
228
-				wp_send_json_success( array( 'connect_url' => $redirect ) );
225
+				$client      = new AyeCode_Connect($args);
226
+				$redirect_to = !empty($_POST['redirect_to']) ? esc_url_raw($_POST['redirect_to']) : '';
227
+				$redirect    = $client->build_connect_url($redirect_to);
228
+				wp_send_json_success(array('connect_url' => $redirect));
229 229
 			} else {
230
-				wp_send_json_error( $this->strings['error_localhost'] );
230
+				wp_send_json_error($this->strings['error_localhost']);
231 231
 			}
232 232
 			wp_die();
233 233
 		}
@@ -240,7 +240,7 @@  discard block
 block discarded – undo
240 240
 		public function is_localhost() {
241 241
 			$localhost = false;
242 242
 
243
-			$host              = isset( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '';
243
+			$host              = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '';
244 244
 			$localhost_domains = array(
245 245
 				'localhost',
246 246
 				'localhost.localdomain',
@@ -248,7 +248,7 @@  discard block
 block discarded – undo
248 248
 				'::1'
249 249
 			);
250 250
 
251
-			if ( in_array( $host, $localhost_domains ) ) {
251
+			if (in_array($host, $localhost_domains)) {
252 252
 				$localhost = true;
253 253
 			}
254 254
 
@@ -259,7 +259,7 @@  discard block
 block discarded – undo
259 259
 		 * Show notice to connect site.
260 260
 		 */
261 261
 		public function ayecode_connect_install_notice() {
262
-			if ( $this->maybe_show() ) {
262
+			if ($this->maybe_show()) {
263 263
 				$connect_title_string     = $this->strings['connect_title'];
264 264
 				$connect_external_string  = $this->strings['connect_external'];
265 265
 				$connect_string           = $this->strings['connect'];
@@ -301,7 +301,7 @@  discard block
 block discarded – undo
301 301
 					</svg>
302 302
 					</span>
303 303
 					<span class="acch-float-left acch-text">
304
-						<h3 class="acch-title"><?php echo esc_attr( $connect_title_string ); ?></h3>
304
+						<h3 class="acch-title"><?php echo esc_attr($connect_title_string); ?></h3>
305 305
 					<p>
306 306
 						<?php
307 307
 						echo $connect_string;
@@ -312,14 +312,14 @@  discard block
 block discarded – undo
312 312
 					<span class="acch-float-left acch-button">
313 313
 						<button onclick="ayecode_connect_helper(this);" id="gd-connect-site"
314 314
 						        class="button button-primary"
315
-						        data-connecting="<?php echo esc_attr( $connecting_button_string ); ?>"><?php echo esc_attr( $connect_button_string ) ?></button>
315
+						        data-connecting="<?php echo esc_attr($connecting_button_string); ?>"><?php echo esc_attr($connect_button_string) ?></button>
316 316
 					</span>
317 317
 
318 318
 				</div>
319 319
 
320 320
 				<?php
321 321
 				// only include the popup HTML if needed.
322
-				if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
322
+				if (!empty($_REQUEST['external-connect-request'])) {
323 323
 					?>
324 324
 					<div id="ayecode-connect-helper-external-confirm" style="display:none;">
325 325
 						<div class="noticex notice-info acch-notice" style="border: none;">
@@ -357,13 +357,13 @@  discard block
 block discarded – undo
357 357
 					</svg>
358 358
 					</span>
359 359
 					<span class="acch-float-left acch-text">
360
-						<h3 class="acch-title"><?php echo esc_attr( $connect_external_string ); ?></h3>
360
+						<h3 class="acch-title"><?php echo esc_attr($connect_external_string); ?></h3>
361 361
 					</span>
362 362
 
363 363
 					<span class="acch-float-left acch-button">
364 364
 						<button onclick="ayecode_connect_helper(this);" id="gd-connect-site"
365 365
 						        class="button button-primary"
366
-						        data-connecting="<?php echo esc_attr( $connecting_button_string ); ?>"><?php echo esc_attr( $connect_button_string ) ?></button>
366
+						        data-connecting="<?php echo esc_attr($connecting_button_string); ?>"><?php echo esc_attr($connect_button_string) ?></button>
367 367
 					</span>
368 368
 
369 369
 						</div>
@@ -382,7 +382,7 @@  discard block
 block discarded – undo
382 382
 		public function script() {
383 383
 
384 384
 			// add thickbox if external request is requested
385
-			if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
385
+			if (!empty($_REQUEST['external-connect-request'])) {
386 386
 				add_thickbox();
387 387
 			}
388 388
 			?>
@@ -434,7 +434,7 @@  discard block
 block discarded – undo
434 434
 						url: ajaxurl,
435 435
 						data: {
436 436
 							action: 'ayecode_connect_helper',
437
-							security: '<?php echo wp_create_nonce( 'ayecode-connect-helper' );?>',
437
+							security: '<?php echo wp_create_nonce('ayecode-connect-helper'); ?>',
438 438
 							redirect_to: $current_url
439 439
 						},
440 440
 						beforeSend: function () {
@@ -455,7 +455,7 @@  discard block
 block discarded – undo
455 455
 
456 456
 				<?php
457 457
 				// add thickbox if external request is requested
458
-				if(! empty( $_REQUEST['external-connect-request'] )) {
458
+				if (!empty($_REQUEST['external-connect-request'])) {
459 459
 				?>
460 460
 				jQuery(function () {
461 461
 					setTimeout(function () {
@@ -479,10 +479,10 @@  discard block
 block discarded – undo
479 479
 			$show = false;
480 480
 
481 481
 			// check if on a page set to show
482
-			if ( isset( $_REQUEST['page'] ) && in_array( $_REQUEST['page'], $this->pages ) ) {
482
+			if (isset($_REQUEST['page']) && in_array($_REQUEST['page'], $this->pages)) {
483 483
 
484 484
 				// check if not active and connected
485
-				if ( ! defined( 'AYECODE_CONNECT_VERSION' ) || ! get_option( 'ayecode_connect_blog_token' ) ) {
485
+				if (!defined('AYECODE_CONNECT_VERSION') || !get_option('ayecode_connect_blog_token')) {
486 486
 					$show = true;
487 487
 				}
488 488
 
Please login to merge, or discard this patch.
templates/wpinv-subscriptions-history.php 1 patch
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
 global $wpdb;
14 14
 
15 15
 $db = new WPInv_Subscriptions_DB;
16
-$page = isset($_GET['cpage']) ? abs((int)$_GET['cpage']) : 1;
16
+$page = isset($_GET['cpage']) ? abs((int) $_GET['cpage']) : 1;
17 17
 $items_per_page = get_option('posts_per_page');
18 18
 $offset = ($page * $items_per_page) - $items_per_page;
19 19
 $args = array('customer_id' => $user_id, 'offset' => $offset);
@@ -29,16 +29,16 @@  discard block
 block discarded – undo
29 29
     <table class="table table-bordered table-hover table-responsive wpi-user-subscriptions">
30 30
         <thead>
31 31
         <tr>
32
-            <th class="sub-no"><span class="nobr"><?php _e( 'No.', 'invoicing' ); ?></span></th>
33
-            <th class="sub-amount"><span class="nobr"><?php _e( 'Initial Amount', 'invoicing' ); ?></span></th>
34
-            <th class="sub-cycle"><span class="nobr"><?php _e( 'Billing Cycle', 'invoicing' ); ?></span></th>
35
-            <th class="sub-billed"><span class="nobr"><?php _e( 'Times Billed', 'invoicing' ); ?></span></th>
36
-            <th class="sub-status"><span class="nobr"><?php _e( 'Status', 'invoicing' ); ?></span></th>
37
-            <th class="sub-invoice"><span class="nobr"><?php _e( 'Invoice', 'invoicing' ); ?></span></th>
38
-            <th class="sub-item"><span class="nobr"><?php _e( 'Item', 'invoicing' ); ?></span></th>
39
-            <th class="sub-gateway"><span class="nobr"><?php _e( 'Gateway', 'invoicing' ); ?></span></th>
40
-            <th class="sub-expiry"><span class="nobr"><?php _e( 'Expires On', 'invoicing' ); ?></span></th>
41
-            <th class="sub-actions"><span class="nobr"><?php _e( 'Actions', 'invoicing' ); ?></span></th>
32
+            <th class="sub-no"><span class="nobr"><?php _e('No.', 'invoicing'); ?></span></th>
33
+            <th class="sub-amount"><span class="nobr"><?php _e('Initial Amount', 'invoicing'); ?></span></th>
34
+            <th class="sub-cycle"><span class="nobr"><?php _e('Billing Cycle', 'invoicing'); ?></span></th>
35
+            <th class="sub-billed"><span class="nobr"><?php _e('Times Billed', 'invoicing'); ?></span></th>
36
+            <th class="sub-status"><span class="nobr"><?php _e('Status', 'invoicing'); ?></span></th>
37
+            <th class="sub-invoice"><span class="nobr"><?php _e('Invoice', 'invoicing'); ?></span></th>
38
+            <th class="sub-item"><span class="nobr"><?php _e('Item', 'invoicing'); ?></span></th>
39
+            <th class="sub-gateway"><span class="nobr"><?php _e('Gateway', 'invoicing'); ?></span></th>
40
+            <th class="sub-expiry"><span class="nobr"><?php _e('Expires On', 'invoicing'); ?></span></th>
41
+            <th class="sub-actions"><span class="nobr"><?php _e('Actions', 'invoicing'); ?></span></th>
42 42
         </tr>
43 43
         </thead>
44 44
 
@@ -64,7 +64,7 @@  discard block
 block discarded – undo
64 64
                 <td><?php echo date_i18n(get_option('date_format'), strtotime($sub->expiration, current_time('timestamp'))); ?></td>
65 65
                 <td><?php
66 66
                     if ($sub->can_cancel()) {
67
-                        $message = esc_attr__( 'Are you sure you want to cancel this subscription?', 'invoicing' );
67
+                        $message = esc_attr__('Are you sure you want to cancel this subscription?', 'invoicing');
68 68
                         echo '<a class="btn btn-sm btn-primary" onclick="return confirm(\'' . $message . '\')" href="' . $sub->get_cancel_url() . '" >' . __("Cancel", "invoicing") . '</a>';
69 69
                     }
70 70
                     do_action('wpinv_subscription_item_actions', $sub);
Please login to merge, or discard this patch.
includes/admin/register-settings.php 1 patch
Spacing   +562 added lines, -562 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, $email_settings, $tax_settings, $misc_settings, $tool_settings );
83
+        $settings = array_merge($general_settings, $gateways_settings, $email_settings, $tax_settings, $misc_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,203 +153,203 @@  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 = $reset_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
         $nonce = wp_create_nonce('reset_invoice_count');
192
-        $reset_number = '<a href="'.add_query_arg(array('reset_invoice_count' => 1, '_nonce' => $nonce)).'" class="btn button">'.__('Force Reset Sequence', 'invoicing' ). '</a>';
192
+        $reset_number = '<a href="' . add_query_arg(array('reset_invoice_count' => 1, '_nonce' => $nonce)) . '" class="btn button">' . __('Force Reset Sequence', 'invoicing') . '</a>';
193 193
     }
194 194
     
195 195
     $alert_wrapper_start = '<p style="color: #F00">';
196 196
     $alert_wrapper_close = '</p>';
197 197
     $wpinv_settings = array(
198
-        'general' => apply_filters( 'wpinv_settings_general',
198
+        'general' => apply_filters('wpinv_settings_general',
199 199
             array(
200 200
                 'main' => array(
201 201
                     'location_settings' => array(
202 202
                         'id'   => 'location_settings',
203
-                        'name' => '<h3>' . __( 'Default Location', 'invoicing' ) . '</h3>',
203
+                        'name' => '<h3>' . __('Default Location', 'invoicing') . '</h3>',
204 204
                         'desc' => '',
205 205
                         'type' => 'header',
206 206
                     ),
207 207
                     'default_country' => array(
208 208
                         'id'      => 'default_country',
209
-                        'name'    => __( 'Default Country', 'invoicing' ),
210
-                        'desc'    => __( 'Where does your store operate from?', 'invoicing' ),
209
+                        'name'    => __('Default Country', 'invoicing'),
210
+                        'desc'    => __('Where does your store operate from?', 'invoicing'),
211 211
                         'type'    => 'select',
212 212
                         'options' => wpinv_get_country_list(),
213 213
                         'std'     => 'GB',
214 214
                         'class'   => 'wpi_select2',
215
-                        'placeholder' => __( 'Select a country', 'invoicing' ),
215
+                        'placeholder' => __('Select a country', 'invoicing'),
216 216
                     ),
217 217
                     'default_state' => array(
218 218
                         'id'      => 'default_state',
219
-                        'name'    => __( 'Default State / Province', 'invoicing' ),
220
-                        'desc'    => __( 'What state / province does your store operate from?', 'invoicing' ),
219
+                        'name'    => __('Default State / Province', 'invoicing'),
220
+                        'desc'    => __('What state / province does your store operate from?', 'invoicing'),
221 221
                         'type'    => 'country_states',
222 222
                         'class'   => 'wpi_select2',
223
-                        'placeholder' => __( 'Select a state', 'invoicing' ),
223
+                        'placeholder' => __('Select a state', 'invoicing'),
224 224
                     ),
225 225
                     'store_name' => array(
226 226
                         'id'   => 'store_name',
227
-                        'name' => __( 'Store Name', 'invoicing' ),
228
-                        'desc' => __( 'Store name to print on invoices.', 'invoicing' ),
227
+                        'name' => __('Store Name', 'invoicing'),
228
+                        'desc' => __('Store name to print on invoices.', 'invoicing'),
229 229
                         'std'     => get_option('blogname'),
230 230
                         'type' => 'text',
231 231
                     ),
232 232
                     'logo' => array(
233 233
                         'id'   => 'logo',
234
-                        'name' => __( 'Logo URL', 'invoicing' ),
235
-                        'desc' => __( 'Store logo to print on invoices.', 'invoicing' ),
234
+                        'name' => __('Logo URL', 'invoicing'),
235
+                        'desc' => __('Store logo to print on invoices.', 'invoicing'),
236 236
                         'type' => 'text',
237 237
                     ),
238 238
                     'store_address' => array(
239 239
                         'id'   => 'store_address',
240
-                        'name' => __( 'Store Address', 'invoicing' ),
241
-                        'desc' => __( 'Enter the store address to display on invoice', 'invoicing' ),
240
+                        'name' => __('Store Address', 'invoicing'),
241
+                        'desc' => __('Enter the store address to display on invoice', 'invoicing'),
242 242
                         'type' => 'textarea',
243 243
                     ),
244 244
                     'page_settings' => array(
245 245
                         'id'   => 'page_settings',
246
-                        'name' => '<h3>' . __( 'Page Settings', 'invoicing' ) . '</h3>',
246
+                        'name' => '<h3>' . __('Page Settings', 'invoicing') . '</h3>',
247 247
                         'desc' => '',
248 248
                         'type' => 'header',
249 249
                     ),
250 250
                     'checkout_page' => array(
251 251
                         'id'          => 'checkout_page',
252
-                        'name'        => __( 'Checkout Page', 'invoicing' ),
253
-                        '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' ),
252
+                        'name'        => __('Checkout Page', 'invoicing'),
253
+                        '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'),
254 254
                         'type'        => 'select',
255 255
                         'options'     => $pages,
256 256
                         'class'       => 'wpi_select2',
257
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
257
+                        'placeholder' => __('Select a page', 'invoicing'),
258 258
                     ),
259 259
                     'tandc_page' => array(
260 260
                         'id'          => 'tandc_page',
261
-                        'name'        => __( 'Terms & Conditions', 'invoicing' ),
262
-                        'desc'        => __( 'If you select a "Terms & Conditions" page here the customer will be asked to accept them on checkout.', 'invoicing' ),
261
+                        'name'        => __('Terms & Conditions', 'invoicing'),
262
+                        'desc'        => __('If you select a "Terms & Conditions" page here the customer will be asked to accept them on checkout.', 'invoicing'),
263 263
                         'type'        => 'select',
264
-                        'options'     => wpinv_get_pages( true,  __( 'Select a page', 'invoicing' )),
264
+                        'options'     => wpinv_get_pages(true, __('Select a page', 'invoicing')),
265 265
                         'class'       => 'wpi_select2',
266
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
266
+                        'placeholder' => __('Select a page', 'invoicing'),
267 267
                     ),
268 268
                     'success_page' => array(
269 269
                         'id'          => 'success_page',
270
-                        'name'        => __( 'Success Page', 'invoicing' ),
271
-                        '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' ),
270
+                        'name'        => __('Success Page', 'invoicing'),
271
+                        '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'),
272 272
                         'type'        => 'select',
273 273
                         'options'     => $pages,
274 274
                         'class'       => 'wpi_select2',
275
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
275
+                        'placeholder' => __('Select a page', 'invoicing'),
276 276
                     ),
277 277
                     'failure_page' => array(
278 278
                         'id'          => 'failure_page',
279
-                        'name'        => __( 'Failed Transaction Page', 'invoicing' ),
280
-                        'desc'        => __( 'This is the page buyers are sent to if their transaction is cancelled or fails.', 'invoicing' ),
279
+                        'name'        => __('Failed Transaction Page', 'invoicing'),
280
+                        'desc'        => __('This is the page buyers are sent to if their transaction is cancelled or fails.', 'invoicing'),
281 281
                         'type'        => 'select',
282 282
                         'options'     => $pages,
283 283
                         'class'       => 'wpi_select2',
284
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
284
+                        'placeholder' => __('Select a page', 'invoicing'),
285 285
                     ),
286 286
                     'invoice_history_page' => array(
287 287
                         'id'          => 'invoice_history_page',
288
-                        'name'        => __( 'Invoice History Page', 'invoicing' ),
289
-                        'desc'        => __( 'This page shows an invoice history for the current user. The <b>[wpinv_history]</b> short code should be on this page.', 'invoicing' ),
288
+                        'name'        => __('Invoice History Page', 'invoicing'),
289
+                        'desc'        => __('This page shows an invoice history for the current user. The <b>[wpinv_history]</b> short code should be on this page.', 'invoicing'),
290 290
                         'type'        => 'select',
291 291
                         'options'     => $pages,
292 292
                         'class'       => 'wpi_select2',
293
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
293
+                        'placeholder' => __('Select a page', 'invoicing'),
294 294
                     ),
295 295
                     'invoice_subscription_page' => array(
296 296
                         'id'          => 'invoice_subscription_page',
297
-                        'name'        => __( 'Invoice Subscriptions Page', 'invoicing' ),
298
-                        'desc'        => __( 'This page shows subscriptions history for the current user. The <b>[wpinv_subscriptions]</b> short code should be on this page.', 'invoicing' ),
297
+                        'name'        => __('Invoice Subscriptions Page', 'invoicing'),
298
+                        'desc'        => __('This page shows subscriptions history for the current user. The <b>[wpinv_subscriptions]</b> short code should be on this page.', 'invoicing'),
299 299
                         'type'        => 'select',
300 300
                         'options'     => $pages,
301 301
                         'class'       => 'wpi_select2',
302
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
302
+                        'placeholder' => __('Select a page', 'invoicing'),
303 303
                     ),
304 304
                 ),
305 305
                 'currency_section' => array(
306 306
                     'currency_settings' => array(
307 307
                         'id'   => 'currency_settings',
308
-                        'name' => '<h3>' . __( 'Currency Settings', 'invoicing' ) . '</h3>',
308
+                        'name' => '<h3>' . __('Currency Settings', 'invoicing') . '</h3>',
309 309
                         'desc' => '',
310 310
                         'type' => 'header',
311 311
                     ),
312 312
                     'currency' => array(
313 313
                         'id'      => 'currency',
314
-                        'name'    => __( 'Currency', 'invoicing' ),
315
-                        'desc'    => __( 'Choose your currency. Note that some payment gateways have currency restrictions.', 'invoicing' ),
314
+                        'name'    => __('Currency', 'invoicing'),
315
+                        'desc'    => __('Choose your currency. Note that some payment gateways have currency restrictions.', 'invoicing'),
316 316
                         'type'    => 'select',
317 317
                         'class'       => 'wpi_select2',
318 318
                         'options' => $currency_code_options,
319 319
                     ),
320 320
                     'currency_position' => array(
321 321
                         'id'      => 'currency_position',
322
-                        'name'    => __( 'Currency Position', 'invoicing' ),
323
-                        'desc'    => __( 'Choose the location of the currency sign.', 'invoicing' ),
322
+                        'name'    => __('Currency Position', 'invoicing'),
323
+                        'desc'    => __('Choose the location of the currency sign.', 'invoicing'),
324 324
                         'type'    => 'select',
325 325
                         'class'   => 'wpi_select2',
326 326
                         'options'  => array(
327
-                            'left'        => __( 'Left', 'invoicing' ) . ' (' . $currency_symbol . wpinv_format_amount( '99.99' ) . ')',
328
-                            'right'       => __( 'Right', 'invoicing' ) . ' ('. wpinv_format_amount( '99.99' ) . $currency_symbol . ')',
329
-                            'left_space'  => __( 'Left with space', 'invoicing' ) . ' (' . $currency_symbol . ' ' . wpinv_format_amount( '99.99' ) . ')',
330
-                            'right_space' => __( 'Right with space', 'invoicing' ) . ' (' . wpinv_format_amount( '99.99' ) . ' ' . $currency_symbol . ')'
327
+                            'left'        => __('Left', 'invoicing') . ' (' . $currency_symbol . wpinv_format_amount('99.99') . ')',
328
+                            'right'       => __('Right', 'invoicing') . ' (' . wpinv_format_amount('99.99') . $currency_symbol . ')',
329
+                            'left_space'  => __('Left with space', 'invoicing') . ' (' . $currency_symbol . ' ' . wpinv_format_amount('99.99') . ')',
330
+                            'right_space' => __('Right with space', 'invoicing') . ' (' . wpinv_format_amount('99.99') . ' ' . $currency_symbol . ')'
331 331
                         )
332 332
                     ),
333 333
                     'thousands_separator' => array(
334 334
                         'id'   => 'thousands_separator',
335
-                        'name' => __( 'Thousands Separator', 'invoicing' ),
336
-                        'desc' => __( 'The symbol (usually , or .) to separate thousands', 'invoicing' ),
335
+                        'name' => __('Thousands Separator', 'invoicing'),
336
+                        'desc' => __('The symbol (usually , or .) to separate thousands', 'invoicing'),
337 337
                         'type' => 'text',
338 338
                         'size' => 'small',
339 339
                         'std'  => ',',
340 340
                     ),
341 341
                     'decimal_separator' => array(
342 342
                         'id'   => 'decimal_separator',
343
-                        'name' => __( 'Decimal Separator', 'invoicing' ),
344
-                        'desc' => __( 'The symbol (usually , or .) to separate decimal points', 'invoicing' ),
343
+                        'name' => __('Decimal Separator', 'invoicing'),
344
+                        'desc' => __('The symbol (usually , or .) to separate decimal points', 'invoicing'),
345 345
                         'type' => 'text',
346 346
                         'size' => 'small',
347 347
                         'std'  => '.',
348 348
                     ),
349 349
                     'decimals' => array(
350 350
                         'id'   => 'decimals',
351
-                        'name' => __( 'Number of Decimals', 'invoicing' ),
352
-                        'desc' => __( 'This sets the number of decimal points shown in displayed prices.', 'invoicing' ),
351
+                        'name' => __('Number of Decimals', 'invoicing'),
352
+                        'desc' => __('This sets the number of decimal points shown in displayed prices.', 'invoicing'),
353 353
                         'type' => 'number',
354 354
                         'size' => 'small',
355 355
                         'std'  => '2',
@@ -361,60 +361,60 @@  discard block
 block discarded – undo
361 361
                 'labels' => array(
362 362
                     'labels' => array(
363 363
                         'id'   => 'labels_settings',
364
-                        'name' => '<h3>' . __( 'Invoice Labels', 'invoicing' ) . '</h3>',
364
+                        'name' => '<h3>' . __('Invoice Labels', 'invoicing') . '</h3>',
365 365
                         'desc' => '',
366 366
                         'type' => 'header',
367 367
                     ),
368 368
                     'vat_name' => array(
369 369
                         'id' => 'vat_name',
370
-                        'name' => __( 'VAT Name', 'invoicing' ),
371
-                        'desc' => __( 'Enter the VAT name', 'invoicing' ),
370
+                        'name' => __('VAT Name', 'invoicing'),
371
+                        'desc' => __('Enter the VAT name', 'invoicing'),
372 372
                         'type' => 'text',
373 373
                         'size' => 'regular',
374 374
                         'std' => 'VAT'
375 375
                     ),
376 376
                     'vat_invoice_notice_label' => array(
377 377
                         'id' => 'vat_invoice_notice_label',
378
-                        'name' => __( 'Invoice Notice Label', 'invoicing' ),
379
-                        'desc' => __( 'Use this to add an invoice notice section (label) to your invoices', 'invoicing' ),
378
+                        'name' => __('Invoice Notice Label', 'invoicing'),
379
+                        'desc' => __('Use this to add an invoice notice section (label) to your invoices', 'invoicing'),
380 380
                         'type' => 'text',
381 381
                         'size' => 'regular',
382 382
                     ),
383 383
                     'vat_invoice_notice' => array(
384 384
                         'id' => 'vat_invoice_notice',
385
-                        'name' => __( 'Invoice notice', 'invoicing' ),
386
-                        'desc' =>   __( 'Use this to add an invoice notice section (description) to your invoices', 'invoicing' ),
385
+                        'name' => __('Invoice notice', 'invoicing'),
386
+                        'desc' =>   __('Use this to add an invoice notice section (description) to your invoices', 'invoicing'),
387 387
                         'type' => 'text',
388 388
                         'size' => 'regular',
389 389
                     ),
390 390
                     'name_your_price' => array(
391 391
                         'id'   => 'name_your_price_settings',
392
-                        'name' => '<h3>' . __( 'Name Your Price', 'invoicing' ) . '</h3>',
392
+                        'name' => '<h3>' . __('Name Your Price', 'invoicing') . '</h3>',
393 393
                         'desc' => '',
394 394
                         'type' => 'header',
395 395
                     ),
396 396
                     'suggested_price_text' => array(
397 397
                         'id'   => 'suggested_price_text',
398
-                        'name' => __( 'Suggested Price Text', 'invoicing' ),
399
-                        'desc' => __( "The label used to indicate an item's suggested price", 'invoicing' ),
398
+                        'name' => __('Suggested Price Text', 'invoicing'),
399
+                        'desc' => __("The label used to indicate an item's suggested price", 'invoicing'),
400 400
                         'type' => 'text',
401 401
                         'size' => 'regular',
402
-                        'std'  => __( 'Suggested Price:', 'invoicing' ),
402
+                        'std'  => __('Suggested Price:', 'invoicing'),
403 403
                     ),
404 404
                     'minimum_price_text' => array(
405 405
                         'id'   => 'minimum_price_text',
406
-                        'name' => __( 'Minimum Price Text', 'invoicing' ),
407
-                        'desc' => __( "The label used to indicate an item's minimum price", 'invoicing' ),
406
+                        'name' => __('Minimum Price Text', 'invoicing'),
407
+                        'desc' => __("The label used to indicate an item's minimum price", 'invoicing'),
408 408
                         'type' => 'text',
409 409
                         'size' => 'regular',
410
-                        'std'  => __( 'Minimum Price:', 'invoicing' ),
410
+                        'std'  => __('Minimum Price:', 'invoicing'),
411 411
                     ),
412 412
                     'name_your_price_text' => array(
413 413
                         'id'   => 'name_your_price_text',
414
-                        'name' => __( 'Name Your Price Text', 'invoicing' ),
414
+                        'name' => __('Name Your Price Text', 'invoicing'),
415 415
                         'type' => 'text',
416 416
                         'size' => 'regular',
417
-                        'std'  => __( 'Name Your Price', 'invoicing' ),
417
+                        'std'  => __('Name Your Price', 'invoicing'),
418 418
                     ),
419 419
                 )
420 420
             )
@@ -424,22 +424,22 @@  discard block
 block discarded – undo
424 424
                 'main' => array(
425 425
                     'gateway_settings' => array(
426 426
                         'id'   => 'api_header',
427
-                        'name' => '<h3>' . __( 'Gateway Settings', 'invoicing' ) . '</h3>',
427
+                        'name' => '<h3>' . __('Gateway Settings', 'invoicing') . '</h3>',
428 428
                         'desc' => '',
429 429
                         'type' => 'header',
430 430
                     ),
431 431
                     'gateways' => array(
432 432
                         'id'      => 'gateways',
433
-                        'name'    => __( 'Payment Gateways', 'invoicing' ),
434
-                        'desc'    => __( 'Choose the payment gateways you want to enable.', 'invoicing' ),
433
+                        'name'    => __('Payment Gateways', 'invoicing'),
434
+                        'desc'    => __('Choose the payment gateways you want to enable.', 'invoicing'),
435 435
                         'type'    => 'gateways',
436 436
                         'std'     => array('manual'=>1),
437 437
                         'options' => wpinv_get_payment_gateways(),
438 438
                     ),
439 439
                     'default_gateway' => array(
440 440
                         'id'      => 'default_gateway',
441
-                        'name'    => __( 'Default Gateway', 'invoicing' ),
442
-                        'desc'    => __( 'This gateway will be loaded automatically with the checkout page.', 'invoicing' ),
441
+                        'name'    => __('Default Gateway', 'invoicing'),
442
+                        'desc'    => __('This gateway will be loaded automatically with the checkout page.', 'invoicing'),
443 443
                         'type'    => 'gateway_select',
444 444
                         'std'     => 'manual',
445 445
                         'class'   => 'wpi_select2',
@@ -454,19 +454,19 @@  discard block
 block discarded – undo
454 454
                 'main' => array(
455 455
                     'tax_settings' => array(
456 456
                         'id'   => 'tax_settings',
457
-                        'name' => '<h3>' . __( 'Tax Settings', 'invoicing' ) . '</h3>',
457
+                        'name' => '<h3>' . __('Tax Settings', 'invoicing') . '</h3>',
458 458
                         'type' => 'header',
459 459
                     ),
460 460
                     'enable_taxes' => array(
461 461
                         'id'   => 'enable_taxes',
462
-                        'name' => __( 'Enable Taxes', 'invoicing' ),
463
-                        'desc' => __( 'Check this to enable taxes on invoices.', 'invoicing' ),
462
+                        'name' => __('Enable Taxes', 'invoicing'),
463
+                        'desc' => __('Check this to enable taxes on invoices.', 'invoicing'),
464 464
                         'type' => 'checkbox',
465 465
                     ),
466 466
                     'tax_rate' => array(
467 467
                         'id'   => 'tax_rate',
468
-                        'name' => __( 'Fallback Tax Rate', 'invoicing' ),
469
-                        'desc' => __( 'Enter a percentage, such as 6.5. Customers not in a specific rate will be charged this rate.', 'invoicing' ),
468
+                        'name' => __('Fallback Tax Rate', 'invoicing'),
469
+                        'desc' => __('Enter a percentage, such as 6.5. Customers not in a specific rate will be charged this rate.', 'invoicing'),
470 470
                         'type' => 'number',
471 471
                         'size' => 'small',
472 472
                         'min'  => '0',
@@ -478,8 +478,8 @@  discard block
 block discarded – undo
478 478
                 'rates' => array(
479 479
                     'tax_rates' => array(
480 480
                         'id'   => 'tax_rates',
481
-                        'name' => '<h3>' . __( 'Tax Rates', 'invoicing' ) . '</h3>',
482
-                        'desc' => __( 'Enter tax rates for specific regions.', 'invoicing' ),
481
+                        'name' => '<h3>' . __('Tax Rates', 'invoicing') . '</h3>',
482
+                        'desc' => __('Enter tax rates for specific regions.', 'invoicing'),
483 483
                         'type' => 'tax_rates',
484 484
                     ),
485 485
                 )
@@ -491,68 +491,68 @@  discard block
 block discarded – undo
491 491
                 'main' => array(
492 492
                     'email_settings_header' => array(
493 493
                         'id'   => 'email_settings_header',
494
-                        'name' => '<h3>' . __( 'Email Sender Options', 'invoicing' ) . '</h3>',
494
+                        'name' => '<h3>' . __('Email Sender Options', 'invoicing') . '</h3>',
495 495
                         'type' => 'header',
496 496
                     ),
497 497
                     'email_from_name' => array(
498 498
                         'id'   => 'email_from_name',
499
-                        'name' => __( 'From Name', 'invoicing' ),
500
-                        'desc' => __( 'Enter the sender\'s name appears in outgoing invoice emails. This should be your site name.', 'invoicing' ),
501
-                        'std' => esc_attr( get_bloginfo( 'name', 'display' ) ),
499
+                        'name' => __('From Name', 'invoicing'),
500
+                        'desc' => __('Enter the sender\'s name appears in outgoing invoice emails. This should be your site name.', 'invoicing'),
501
+                        'std' => esc_attr(get_bloginfo('name', 'display')),
502 502
                         'type' => 'text',
503 503
                     ),
504 504
                     'email_from' => array(
505 505
                         'id'   => 'email_from',
506
-                        'name' => __( 'From Email', 'invoicing' ),
507
-                        '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),
508
-                        'std' => get_option( 'admin_email' ),
506
+                        'name' => __('From Email', 'invoicing'),
507
+                        '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),
508
+                        'std' => get_option('admin_email'),
509 509
                         'type' => 'text',
510 510
                     ),
511 511
                     'admin_email' => array(
512 512
                         'id'   => 'admin_email',
513
-                        'name' => __( 'Admin Email', 'invoicing' ),
514
-                        'desc' => __( 'Where should we send admin notifications?', 'invoicing' ),
515
-                        'std' => get_option( 'admin_email' ),
513
+                        'name' => __('Admin Email', 'invoicing'),
514
+                        'desc' => __('Where should we send admin notifications?', 'invoicing'),
515
+                        'std' => get_option('admin_email'),
516 516
                         'type' => 'text',
517 517
                     ),
518 518
                     'overdue_settings_header' => array(
519 519
                         'id'   => 'overdue_settings_header',
520
-                        'name' => '<h3>' . __( 'Due Date Settings', 'invoicing' ) . '</h3>',
520
+                        'name' => '<h3>' . __('Due Date Settings', 'invoicing') . '</h3>',
521 521
                         'type' => 'header',
522 522
                     ),
523 523
                     'overdue_active' => array(
524 524
                         'id'   => 'overdue_active',
525
-                        'name' => __( 'Enable Due Date', 'invoicing' ),
526
-                        'desc' => __( 'Check this to enable due date option for invoices.', 'invoicing' ),
525
+                        'name' => __('Enable Due Date', 'invoicing'),
526
+                        'desc' => __('Check this to enable due date option for invoices.', 'invoicing'),
527 527
                         'type' => 'checkbox',
528 528
                         'std'  => false,
529 529
                     ),
530 530
                     'overdue_days' => array(
531 531
                         'id'          => 'overdue_days',
532
-                        'name'        => __( 'Default Due Date', 'invoicing' ),
533
-                        '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' ),
532
+                        'name'        => __('Default Due Date', 'invoicing'),
533
+                        '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'),
534 534
                         'type'        => 'select',
535 535
                         'options'     => $due_payment_options,
536 536
                         'std'         => 0,
537
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
537
+                        'placeholder' => __('Select a page', 'invoicing'),
538 538
                     ),
539 539
                     'email_template_header' => array(
540 540
                         'id'   => 'email_template_header',
541
-                        'name' => '<h3>' . __( 'Email Template', 'invoicing' ) . '</h3>',
541
+                        'name' => '<h3>' . __('Email Template', 'invoicing') . '</h3>',
542 542
                         'type' => 'header',
543 543
                     ),
544 544
                     'email_header_image' => array(
545 545
                         'id'   => 'email_header_image',
546
-                        'name' => __( 'Header Image', 'invoicing' ),
547
-                        'desc' => __( 'URL to an image you want to show in the email header. Upload images using the media uploader (Admin > Media).', 'invoicing' ),
546
+                        'name' => __('Header Image', 'invoicing'),
547
+                        'desc' => __('URL to an image you want to show in the email header. Upload images using the media uploader (Admin > Media).', 'invoicing'),
548 548
                         'std' => '',
549 549
                         'type' => 'text',
550 550
                     ),
551 551
                     'email_footer_text' => array(
552 552
                         'id'   => 'email_footer_text',
553
-                        'name' => __( 'Footer Text', 'invoicing' ),
554
-                        'desc' => __( 'The text to appear in the footer of all invoice emails.', 'invoicing' ),
555
-                        'std' => get_bloginfo( 'name', 'display' ) . ' - ' . __( 'Powered by GeoDirectory', 'invoicing' ),
553
+                        'name' => __('Footer Text', 'invoicing'),
554
+                        'desc' => __('The text to appear in the footer of all invoice emails.', 'invoicing'),
555
+                        'std' => get_bloginfo('name', 'display') . ' - ' . __('Powered by GeoDirectory', 'invoicing'),
556 556
                         'type' => 'textarea',
557 557
                         'class' => 'regular-text',
558 558
                         'rows' => 2,
@@ -560,29 +560,29 @@  discard block
 block discarded – undo
560 560
                     ),
561 561
                     'email_base_color' => array(
562 562
                         'id'   => 'email_base_color',
563
-                        'name' => __( 'Base Color', 'invoicing' ),
564
-                        'desc' => __( 'The base color for invoice email template. Default <code>#557da2</code>.', 'invoicing' ),
563
+                        'name' => __('Base Color', 'invoicing'),
564
+                        'desc' => __('The base color for invoice email template. Default <code>#557da2</code>.', 'invoicing'),
565 565
                         'std' => '#557da2',
566 566
                         'type' => 'color',
567 567
                     ),
568 568
                     'email_background_color' => array(
569 569
                         'id'   => 'email_background_color',
570
-                        'name' => __( 'Background Color', 'invoicing' ),
571
-                        'desc' => __( 'The background color of email template. Default <code>#f5f5f5</code>.', 'invoicing' ),
570
+                        'name' => __('Background Color', 'invoicing'),
571
+                        'desc' => __('The background color of email template. Default <code>#f5f5f5</code>.', 'invoicing'),
572 572
                         'std' => '#f5f5f5',
573 573
                         'type' => 'color',
574 574
                     ),
575 575
                     'email_body_background_color' => array(
576 576
                         'id'   => 'email_body_background_color',
577
-                        'name' => __( 'Body Background Color', 'invoicing' ),
578
-                        'desc' => __( 'The main body background color of email template. Default <code>#fdfdfd</code>.', 'invoicing' ),
577
+                        'name' => __('Body Background Color', 'invoicing'),
578
+                        'desc' => __('The main body background color of email template. Default <code>#fdfdfd</code>.', 'invoicing'),
579 579
                         'std' => '#fdfdfd',
580 580
                         'type' => 'color',
581 581
                     ),
582 582
                     'email_text_color' => array(
583 583
                         'id'   => 'email_text_color',
584
-                        'name' => __( 'Body Text Color', 'invoicing' ),
585
-                        'desc' => __( 'The main body text color. Default <code>#505050</code>.', 'invoicing' ),
584
+                        'name' => __('Body Text Color', 'invoicing'),
585
+                        'desc' => __('The main body text color. Default <code>#505050</code>.', 'invoicing'),
586 586
                         'std' => '#505050',
587 587
                         'type' => 'color',
588 588
                     ),
@@ -601,26 +601,26 @@  discard block
 block discarded – undo
601 601
                 'main' => array(
602 602
                     'invoicing_privacy_policy_settings' => array(
603 603
                         'id'   => 'invoicing_privacy_policy_settings',
604
-                        'name' => '<h3>' . __( 'Privacy Policy', 'invoicing' ) . '</h3>',
604
+                        'name' => '<h3>' . __('Privacy Policy', 'invoicing') . '</h3>',
605 605
                         'type' => 'header',
606 606
                     ),
607 607
                     'privacy_page' => array(
608 608
                         'id'          => 'privacy_page',
609
-                        'name'        => __( 'Privacy Page', 'invoicing' ),
610
-                        'desc'        => __( 'If no privacy policy page set in Settings->Privacy default settings, this page will be used on checkout page.', 'invoicing' ),
609
+                        'name'        => __('Privacy Page', 'invoicing'),
610
+                        'desc'        => __('If no privacy policy page set in Settings->Privacy default settings, this page will be used on checkout page.', 'invoicing'),
611 611
                         'type'        => 'select',
612
-                        'options'     => wpinv_get_pages( true,  __( 'Select a page', 'invoicing' )),
612
+                        'options'     => wpinv_get_pages(true, __('Select a page', 'invoicing')),
613 613
                         'class'       => 'wpi_select2',
614
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
614
+                        'placeholder' => __('Select a page', 'invoicing'),
615 615
                     ),
616 616
                     'invoicing_privacy_checkout_message' => array(
617 617
                         'id' => 'invoicing_privacy_checkout_message',
618
-                        'name' => __( 'Checkout privacy policy', 'invoicing' ),
619
-                        'desc' => __( 'Optionally add privacy policy message which will display on checkout page.', 'invoicing' ),
618
+                        'name' => __('Checkout privacy policy', 'invoicing'),
619
+                        'desc' => __('Optionally add privacy policy message which will display on checkout page.', 'invoicing'),
620 620
                         'type' => 'textarea',
621 621
                         'class'=> 'regular-text',
622 622
                         'rows' => 4,
623
-                        'std'  => sprintf( __( 'Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing' ), '[wpinv_privacy_policy]' ),
623
+                        'std'  => sprintf(__('Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing'), '[wpinv_privacy_policy]'),
624 624
                     ),
625 625
                 ),
626 626
             )
@@ -631,19 +631,19 @@  discard block
 block discarded – undo
631 631
                 'main' => array(
632 632
                     'invoice_number_format_settings' => array(
633 633
                         'id'   => 'invoice_number_format_settings',
634
-                        'name' => '<h3>' . __( 'Invoice Number', 'invoicing' ) . '</h3>',
634
+                        'name' => '<h3>' . __('Invoice Number', 'invoicing') . '</h3>',
635 635
                         'type' => 'header',
636 636
                     ),
637 637
                     'sequential_invoice_number' => array(
638 638
                         'id'   => 'sequential_invoice_number',
639
-                        'name' => __( 'Sequential Invoice Numbers', 'invoicing' ),
640
-                        'desc' => __('Check this box to enable sequential invoice numbers.', 'invoicing' ) . $reset_number,
639
+                        'name' => __('Sequential Invoice Numbers', 'invoicing'),
640
+                        'desc' => __('Check this box to enable sequential invoice numbers.', 'invoicing') . $reset_number,
641 641
                         'type' => 'checkbox',
642 642
                     ),
643 643
                     'invoice_sequence_start' => array(
644 644
                         'id'   => 'invoice_sequence_start',
645
-                        'name' => __( 'Sequential Starting Number', 'invoicing' ),
646
-                        'desc' => __( 'The number at which the invoice number sequence should begin.', 'invoicing' ) . $last_number,
645
+                        'name' => __('Sequential Starting Number', 'invoicing'),
646
+                        'desc' => __('The number at which the invoice number sequence should begin.', 'invoicing') . $last_number,
647 647
                         'type' => 'number',
648 648
                         'size' => 'small',
649 649
                         'std'  => '1',
@@ -651,8 +651,8 @@  discard block
 block discarded – undo
651 651
                     ),
652 652
                     'invoice_number_padd' => array(
653 653
                         'id'      => 'invoice_number_padd',
654
-                        'name'    => __( 'Minimum Digits', 'invoicing' ),
655
-                        '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' ),
654
+                        'name'    => __('Minimum Digits', 'invoicing'),
655
+                        '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'),
656 656
                         'type'    => 'select',
657 657
                         'options' => $invoice_number_padd_options,
658 658
                         'std'     => 5,
@@ -660,8 +660,8 @@  discard block
 block discarded – undo
660 660
                     ),
661 661
                     'invoice_number_prefix' => array(
662 662
                         'id' => 'invoice_number_prefix',
663
-                        'name' => __( 'Invoice Number Prefix', 'invoicing' ),
664
-                        'desc' => __( 'Prefix for all invoice numbers. Ex: WPINV-', 'invoicing' ),
663
+                        'name' => __('Invoice Number Prefix', 'invoicing'),
664
+                        'desc' => __('Prefix for all invoice numbers. Ex: WPINV-', 'invoicing'),
665 665
                         'type' => 'text',
666 666
                         'size' => 'regular',
667 667
                         'std' => 'WPINV-',
@@ -669,32 +669,32 @@  discard block
 block discarded – undo
669 669
                     ),
670 670
                     'invoice_number_postfix' => array(
671 671
                         'id' => 'invoice_number_postfix',
672
-                        'name' => __( 'Invoice Number Postfix', 'invoicing' ),
673
-                        'desc' => __( 'Postfix for all invoice numbers.', 'invoicing' ),
672
+                        'name' => __('Invoice Number Postfix', 'invoicing'),
673
+                        'desc' => __('Postfix for all invoice numbers.', 'invoicing'),
674 674
                         'type' => 'text',
675 675
                         'size' => 'regular',
676 676
                         'std' => ''
677 677
                     ),
678 678
                     'checkout_settings' => array(
679 679
                         'id'   => 'checkout_settings',
680
-                        'name' => '<h3>' . __( 'Checkout Settings', 'invoicing' ) . '</h3>',
680
+                        'name' => '<h3>' . __('Checkout Settings', 'invoicing') . '</h3>',
681 681
                         'type' => 'header',
682 682
                     ),
683 683
                     'login_to_checkout' => array(
684 684
                         'id'   => 'login_to_checkout',
685
-                        'name' => __( 'Require Login To Checkout', 'invoicing' ),
686
-                        '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' ),
685
+                        'name' => __('Require Login To Checkout', 'invoicing'),
686
+                        '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'),
687 687
                         'type' => 'checkbox',
688 688
                     ),
689 689
                     'uninstall_settings' => array(
690 690
                         'id'   => 'uninstall_settings',
691
-                        'name' => '<h3>' . __( 'Uninstall Settings', 'invoicing' ) . '</h3>',
691
+                        'name' => '<h3>' . __('Uninstall Settings', 'invoicing') . '</h3>',
692 692
                         'type' => 'header',
693 693
                     ),
694 694
                     'remove_data_on_unistall' => array(
695 695
                         'id'   => 'remove_data_on_unistall',
696
-                        'name' => __( 'Remove Data on Uninstall?', 'invoicing' ),
697
-                        'desc' => __( 'Check this box if you would like Invoicing plugin to completely remove all of its data when the plugin is deleted/uninstalled.', 'invoicing' ),
696
+                        'name' => __('Remove Data on Uninstall?', 'invoicing'),
697
+                        'desc' => __('Check this box if you would like Invoicing plugin to completely remove all of its data when the plugin is deleted/uninstalled.', 'invoicing'),
698 698
                         'type' => 'checkbox',
699 699
                         'std'  => ''
700 700
                     ),
@@ -702,80 +702,80 @@  discard block
 block discarded – undo
702 702
                 'fields' => array(
703 703
                     'fields_settings' => array(
704 704
                         'id'   => 'fields_settings',
705
-                        'name' => '<h3>' . __( 'Address Fields', 'invoicing' ) . '</h3>',
706
-                        'desc' => __( 'Tick fields which are mandatory in invoice address fields.', 'invoicing' ),
705
+                        'name' => '<h3>' . __('Address Fields', 'invoicing') . '</h3>',
706
+                        'desc' => __('Tick fields which are mandatory in invoice address fields.', 'invoicing'),
707 707
                         'type' => 'header',
708 708
                     ),
709 709
                     'fname_mandatory' => array(
710 710
                         'id'   => 'fname_mandatory',
711
-                        'name' => __( 'First Name', 'invoicing' ),
711
+                        'name' => __('First Name', 'invoicing'),
712 712
                         'type' => 'checkbox',
713 713
                         'std'  => true,
714 714
                     ),
715 715
                     'lname_mandatory' => array(
716 716
                         'id'   => 'lname_mandatory',
717
-                        'name' => __( 'Last Name', 'invoicing' ),
717
+                        'name' => __('Last Name', 'invoicing'),
718 718
                         'type' => 'checkbox',
719 719
                         'std'  => true,
720 720
                     ),
721 721
                     'address_mandatory' => array(
722 722
                         'id'   => 'address_mandatory',
723
-                        'name' => __( 'Address', 'invoicing' ),
723
+                        'name' => __('Address', 'invoicing'),
724 724
                         'type' => 'checkbox',
725 725
                         'std'  => true,
726 726
                     ),
727 727
                     'city_mandatory' => array(
728 728
                         'id'   => 'city_mandatory',
729
-                        'name' => __( 'City', 'invoicing' ),
729
+                        'name' => __('City', 'invoicing'),
730 730
                         'type' => 'checkbox',
731 731
                         'std'  => true,
732 732
                     ),
733 733
                     'country_mandatory' => array(
734 734
                         'id'   => 'country_mandatory',
735
-                        'name' => __( 'Country', 'invoicing' ),
735
+                        'name' => __('Country', 'invoicing'),
736 736
                         'type' => 'checkbox',
737 737
                         'std'  => true,
738 738
                     ),
739 739
                     'state_mandatory' => array(
740 740
                         'id'   => 'state_mandatory',
741
-                        'name' => __( 'State / Province', 'invoicing' ),
741
+                        'name' => __('State / Province', 'invoicing'),
742 742
                         'type' => 'checkbox',
743 743
                         'std'  => true,
744 744
                     ),
745 745
                     'zip_mandatory' => array(
746 746
                         'id'   => 'zip_mandatory',
747
-                        'name' => __( 'ZIP / Postcode', 'invoicing' ),
747
+                        'name' => __('ZIP / Postcode', 'invoicing'),
748 748
                         'type' => 'checkbox',
749 749
                         'std'  => true,
750 750
                     ),
751 751
                     'phone_mandatory' => array(
752 752
                         'id'   => 'phone_mandatory',
753
-                        'name' => __( 'Phone Number', 'invoicing' ),
753
+                        'name' => __('Phone Number', 'invoicing'),
754 754
                         'type' => 'checkbox',
755 755
                         'std'  => true,
756 756
                     ),
757 757
                     'force_show_company' => array(
758 758
                         'id'   => 'force_show_company',
759
-                        'name' => __( 'Force show company name at checkout.', 'invoicing' ),
759
+                        'name' => __('Force show company name at checkout.', 'invoicing'),
760 760
                         'type' => 'checkbox',
761 761
                         'std'  => false,
762 762
                     ),
763 763
                     'address_autofill_settings' => array(
764 764
                         'id'   => 'address_autofill_settings',
765
-                        'name' => '<h3>' . __( 'Google Address Auto Complete', 'invoicing' ) . '</h3>',
765
+                        'name' => '<h3>' . __('Google Address Auto Complete', 'invoicing') . '</h3>',
766 766
                         'type' => 'header',
767 767
                     ),
768 768
                     'address_autofill_active' => array(
769 769
                         'id'   => 'address_autofill_active',
770
-                        'name' => __( 'Enable/Disable', 'invoicing' ),
771
-                        'desc' => __( 'Enable google address auto complete', 'invoicing' ),
770
+                        'name' => __('Enable/Disable', 'invoicing'),
771
+                        'desc' => __('Enable google address auto complete', 'invoicing'),
772 772
                         'type' => 'checkbox',
773 773
                         'std'  => 0
774 774
                     ),
775 775
                     'address_autofill_api' => array(
776 776
                         'id' => 'address_autofill_api',
777
-                        'name' => __( 'Google Place API Key', 'invoicing' ),
778
-                        '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>' ),
777
+                        'name' => __('Google Place API Key', 'invoicing'),
778
+                        '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>'),
779 779
                         'type' => 'text',
780 780
                         'size' => 'regular',
781 781
                         'std' => ''
@@ -784,13 +784,13 @@  discard block
 block discarded – undo
784 784
                 'custom-css' => array(
785 785
                     'css_settings' => array(
786 786
                         'id'   => 'css_settings',
787
-                        'name' => '<h3>' . __( 'Custom CSS', 'invoicing' ) . '</h3>',
787
+                        'name' => '<h3>' . __('Custom CSS', 'invoicing') . '</h3>',
788 788
                         'type' => 'header',
789 789
                     ),
790 790
                     'template_custom_css' => array(
791 791
                         'id' => 'template_custom_css',
792
-                        'name' => __( 'Invoice Template CSS', 'invoicing' ),
793
-                        'desc' => __( 'Add CSS to modify appearance of the print invoice page.', 'invoicing' ),
792
+                        'name' => __('Invoice Template CSS', 'invoicing'),
793
+                        'desc' => __('Add CSS to modify appearance of the print invoice page.', 'invoicing'),
794 794
                         'type' => 'textarea',
795 795
                         'class'=> 'regular-text',
796 796
                         'rows' => 10,
@@ -804,8 +804,8 @@  discard block
 block discarded – undo
804 804
                 'main' => array(
805 805
                     'tool_settings' => array(
806 806
                         'id'   => 'tool_settings',
807
-                        'name' => '<h3>' . __( 'Diagnostic Tools', 'invoicing' ) . '</h3>',
808
-                        'desc' => __( 'Invoicing diagnostic tools', 'invoicing' ),
807
+                        'name' => '<h3>' . __('Diagnostic Tools', 'invoicing') . '</h3>',
808
+                        'desc' => __('Invoicing diagnostic tools', 'invoicing'),
809 809
                         'type' => 'tools',
810 810
                     ),
811 811
                 ),
@@ -813,136 +813,136 @@  discard block
 block discarded – undo
813 813
         )
814 814
     );
815 815
 
816
-    return apply_filters( 'wpinv_registered_settings', $wpinv_settings );
816
+    return apply_filters('wpinv_registered_settings', $wpinv_settings);
817 817
 }
818 818
 
819
-function wpinv_settings_sanitize( $input = array() ) {
819
+function wpinv_settings_sanitize($input = array()) {
820 820
     global $wpinv_options;
821 821
 
822
-    if ( empty( wp_get_raw_referer() ) ) {
822
+    if (empty(wp_get_raw_referer())) {
823 823
         return $input;
824 824
     }
825 825
 
826
-    wp_parse_str( wp_get_raw_referer(), $referrer );
826
+    wp_parse_str(wp_get_raw_referer(), $referrer);
827 827
 
828 828
     $settings = wpinv_get_registered_settings();
829
-    $tab      = isset( $referrer['tab'] ) ? $referrer['tab'] : 'general';
830
-    $section  = isset( $referrer['section'] ) ? $referrer['section'] : 'main';
829
+    $tab      = isset($referrer['tab']) ? $referrer['tab'] : 'general';
830
+    $section  = isset($referrer['section']) ? $referrer['section'] : 'main';
831 831
 
832 832
     $input = $input ? $input : array();
833
-    $input = apply_filters( 'wpinv_settings_tab_' . $tab . '_sanitize', $input );
834
-    $input = apply_filters( 'wpinv_settings_' . $tab . '-' . $section . '_sanitize', $input );
833
+    $input = apply_filters('wpinv_settings_tab_' . $tab . '_sanitize', $input);
834
+    $input = apply_filters('wpinv_settings_' . $tab . '-' . $section . '_sanitize', $input);
835 835
 
836 836
     // Loop through each setting being saved and pass it through a sanitization filter
837
-    foreach ( $input as $key => $value ) {
837
+    foreach ($input as $key => $value) {
838 838
         // Get the setting type (checkbox, select, etc)
839
-        $type = isset( $settings[ $tab ][ $key ]['type'] ) ? $settings[ $tab ][ $key ]['type'] : false;
839
+        $type = isset($settings[$tab][$key]['type']) ? $settings[$tab][$key]['type'] : false;
840 840
 
841
-        if ( $type ) {
841
+        if ($type) {
842 842
             // Field type specific filter
843
-            $input[$key] = apply_filters( 'wpinv_settings_sanitize_' . $type, $value, $key );
843
+            $input[$key] = apply_filters('wpinv_settings_sanitize_' . $type, $value, $key);
844 844
         }
845 845
 
846 846
         // General filter
847
-        $input[ $key ] = apply_filters( 'wpinv_settings_sanitize', $input[ $key ], $key );
847
+        $input[$key] = apply_filters('wpinv_settings_sanitize', $input[$key], $key);
848 848
     }
849 849
 
850 850
     // Loop through the whitelist and unset any that are empty for the tab being saved
851
-    $main_settings    = $section == 'main' ? $settings[ $tab ] : array(); // Check for extensions that aren't using new sections
852
-    $section_settings = ! empty( $settings[ $tab ][ $section ] ) ? $settings[ $tab ][ $section ] : array();
851
+    $main_settings    = $section == 'main' ? $settings[$tab] : array(); // Check for extensions that aren't using new sections
852
+    $section_settings = !empty($settings[$tab][$section]) ? $settings[$tab][$section] : array();
853 853
 
854
-    $found_settings = array_merge( $main_settings, $section_settings );
854
+    $found_settings = array_merge($main_settings, $section_settings);
855 855
 
856
-    if ( ! empty( $found_settings ) ) {
857
-        foreach ( $found_settings as $key => $value ) {
856
+    if (!empty($found_settings)) {
857
+        foreach ($found_settings as $key => $value) {
858 858
 
859 859
             // settings used to have numeric keys, now they have keys that match the option ID. This ensures both methods work
860
-            if ( is_numeric( $key ) ) {
860
+            if (is_numeric($key)) {
861 861
                 $key = $value['id'];
862 862
             }
863 863
 
864
-            if ( empty( $input[ $key ] ) ) {
865
-                unset( $wpinv_options[ $key ] );
864
+            if (empty($input[$key])) {
865
+                unset($wpinv_options[$key]);
866 866
             }
867 867
         }
868 868
     }
869 869
 
870 870
     // Merge our new settings with the existing
871
-    $output = array_merge( $wpinv_options, $input );
871
+    $output = array_merge($wpinv_options, $input);
872 872
 
873
-    add_settings_error( 'wpinv-notices', '', __( 'Settings updated.', 'invoicing' ), 'updated' );
873
+    add_settings_error('wpinv-notices', '', __('Settings updated.', 'invoicing'), 'updated');
874 874
 
875 875
     return $output;
876 876
 }
877 877
 
878
-function wpinv_settings_sanitize_misc_accounting( $input ) {
878
+function wpinv_settings_sanitize_misc_accounting($input) {
879 879
     global $wpi_session;
880 880
 
881
-    if ( ! wpinv_current_user_can_manage_invoicing() ) {
881
+    if (!wpinv_current_user_can_manage_invoicing()) {
882 882
         return $input;
883 883
     }
884 884
 
885
-    if( ! empty( $input['enable_sequential'] ) && !wpinv_get_option( 'enable_sequential' ) ) {
885
+    if (!empty($input['enable_sequential']) && !wpinv_get_option('enable_sequential')) {
886 886
         // Shows an admin notice about upgrading previous order numbers
887
-        $wpi_session->set( 'upgrade_sequential', '1' );
887
+        $wpi_session->set('upgrade_sequential', '1');
888 888
     }
889 889
 
890 890
     return $input;
891 891
 }
892
-add_filter( 'wpinv_settings_misc-accounting_sanitize', 'wpinv_settings_sanitize_misc_accounting' );
892
+add_filter('wpinv_settings_misc-accounting_sanitize', 'wpinv_settings_sanitize_misc_accounting');
893 893
 
894
-function wpinv_settings_sanitize_tax_rates( $input ) {
895
-    if( ! wpinv_current_user_can_manage_invoicing() ) {
894
+function wpinv_settings_sanitize_tax_rates($input) {
895
+    if (!wpinv_current_user_can_manage_invoicing()) {
896 896
         return $input;
897 897
     }
898 898
 
899
-    $new_rates = !empty( $_POST['tax_rates'] ) ? array_values( $_POST['tax_rates'] ) : array();
899
+    $new_rates = !empty($_POST['tax_rates']) ? array_values($_POST['tax_rates']) : array();
900 900
 
901 901
     $tax_rates = array();
902 902
 
903
-    if ( !empty( $new_rates ) ) {
904
-        foreach ( $new_rates as $rate ) {
905
-            if ( isset( $rate['country'] ) && empty( $rate['country'] ) && empty( $rate['state'] ) ) {
903
+    if (!empty($new_rates)) {
904
+        foreach ($new_rates as $rate) {
905
+            if (isset($rate['country']) && empty($rate['country']) && empty($rate['state'])) {
906 906
                 continue;
907 907
             }
908 908
             
909
-            $rate['rate'] = wpinv_sanitize_amount( $rate['rate'], 4 );
909
+            $rate['rate'] = wpinv_sanitize_amount($rate['rate'], 4);
910 910
             
911 911
             $tax_rates[] = $rate;
912 912
         }
913 913
     }
914 914
 
915
-    update_option( 'wpinv_tax_rates', $tax_rates );
915
+    update_option('wpinv_tax_rates', $tax_rates);
916 916
 
917 917
     return $input;
918 918
 }
919
-add_filter( 'wpinv_settings_taxes-rates_sanitize', 'wpinv_settings_sanitize_tax_rates' );
919
+add_filter('wpinv_settings_taxes-rates_sanitize', 'wpinv_settings_sanitize_tax_rates');
920 920
 
921
-function wpinv_sanitize_text_field( $input ) {
922
-    return trim( $input );
921
+function wpinv_sanitize_text_field($input) {
922
+    return trim($input);
923 923
 }
924
-add_filter( 'wpinv_settings_sanitize_text', 'wpinv_sanitize_text_field' );
924
+add_filter('wpinv_settings_sanitize_text', 'wpinv_sanitize_text_field');
925 925
 
926 926
 function wpinv_get_settings_tabs() {
927 927
     $tabs             = array();
928
-    $tabs['general']  = __( 'General', 'invoicing' );
929
-    $tabs['gateways'] = __( 'Payment Gateways', 'invoicing' );
930
-    $tabs['taxes']    = __( 'Taxes', 'invoicing' );
931
-    $tabs['emails']   = __( 'Emails', 'invoicing' );
932
-    $tabs['privacy']  = __( 'Privacy', 'invoicing' );
933
-    $tabs['misc']     = __( 'Misc', 'invoicing' );
934
-    $tabs['tools']    = __( 'Tools', 'invoicing' );
935
-
936
-    return apply_filters( 'wpinv_settings_tabs', $tabs );
928
+    $tabs['general']  = __('General', 'invoicing');
929
+    $tabs['gateways'] = __('Payment Gateways', 'invoicing');
930
+    $tabs['taxes']    = __('Taxes', 'invoicing');
931
+    $tabs['emails']   = __('Emails', 'invoicing');
932
+    $tabs['privacy']  = __('Privacy', 'invoicing');
933
+    $tabs['misc']     = __('Misc', 'invoicing');
934
+    $tabs['tools']    = __('Tools', 'invoicing');
935
+
936
+    return apply_filters('wpinv_settings_tabs', $tabs);
937 937
 }
938 938
 
939
-function wpinv_get_settings_tab_sections( $tab = false ) {
939
+function wpinv_get_settings_tab_sections($tab = false) {
940 940
     $tabs     = false;
941 941
     $sections = wpinv_get_registered_settings_sections();
942 942
 
943
-    if( $tab && ! empty( $sections[ $tab ] ) ) {
944
-        $tabs = $sections[ $tab ];
945
-    } else if ( $tab ) {
943
+    if ($tab && !empty($sections[$tab])) {
944
+        $tabs = $sections[$tab];
945
+    } else if ($tab) {
946 946
         $tabs = false;
947 947
     }
948 948
 
@@ -952,143 +952,143 @@  discard block
 block discarded – undo
952 952
 function wpinv_get_registered_settings_sections() {
953 953
     static $sections = false;
954 954
 
955
-    if ( false !== $sections ) {
955
+    if (false !== $sections) {
956 956
         return $sections;
957 957
     }
958 958
 
959 959
     $sections = array(
960
-        'general' => apply_filters( 'wpinv_settings_sections_general', array(
961
-            'main' => __( 'General Settings', 'invoicing' ),
962
-            'currency_section' => __( 'Currency Settings', 'invoicing' ),
963
-            'labels' => __( 'Label Texts', 'invoicing' ),
964
-        ) ),
965
-        'gateways' => apply_filters( 'wpinv_settings_sections_gateways', array(
966
-            'main' => __( 'Gateway Settings', 'invoicing' ),
967
-        ) ),
968
-        'taxes' => apply_filters( 'wpinv_settings_sections_taxes', array(
969
-            'main' => __( 'Tax Settings', 'invoicing' ),
970
-            'rates' => __( 'Tax Rates', 'invoicing' ),
971
-        ) ),
972
-        'emails' => apply_filters( 'wpinv_settings_sections_emails', array(
973
-            'main' => __( 'Email Settings', 'invoicing' ),
974
-        ) ),
975
-        'privacy' => apply_filters( 'wpinv_settings_sections_privacy', array(
976
-            'main' => __( 'Privacy policy', 'invoicing' ),
977
-        ) ),
978
-        'misc' => apply_filters( 'wpinv_settings_sections_misc', array(
979
-            'main' => __( 'Miscellaneous', 'invoicing' ),
980
-            'fields' => __( 'Fields Settings', 'invoicing' ),
981
-            'custom-css' => __( 'Custom CSS', 'invoicing' ),
982
-        ) ),
983
-        'tools' => apply_filters( 'wpinv_settings_sections_tools', array(
984
-            'main' => __( 'Diagnostic Tools', 'invoicing' ),
985
-        ) ),
960
+        'general' => apply_filters('wpinv_settings_sections_general', array(
961
+            'main' => __('General Settings', 'invoicing'),
962
+            'currency_section' => __('Currency Settings', 'invoicing'),
963
+            'labels' => __('Label Texts', 'invoicing'),
964
+        )),
965
+        'gateways' => apply_filters('wpinv_settings_sections_gateways', array(
966
+            'main' => __('Gateway Settings', 'invoicing'),
967
+        )),
968
+        'taxes' => apply_filters('wpinv_settings_sections_taxes', array(
969
+            'main' => __('Tax Settings', 'invoicing'),
970
+            'rates' => __('Tax Rates', 'invoicing'),
971
+        )),
972
+        'emails' => apply_filters('wpinv_settings_sections_emails', array(
973
+            'main' => __('Email Settings', 'invoicing'),
974
+        )),
975
+        'privacy' => apply_filters('wpinv_settings_sections_privacy', array(
976
+            'main' => __('Privacy policy', 'invoicing'),
977
+        )),
978
+        'misc' => apply_filters('wpinv_settings_sections_misc', array(
979
+            'main' => __('Miscellaneous', 'invoicing'),
980
+            'fields' => __('Fields Settings', 'invoicing'),
981
+            'custom-css' => __('Custom CSS', 'invoicing'),
982
+        )),
983
+        'tools' => apply_filters('wpinv_settings_sections_tools', array(
984
+            'main' => __('Diagnostic Tools', 'invoicing'),
985
+        )),
986 986
     );
987 987
 
988
-    $sections = apply_filters( 'wpinv_settings_sections', $sections );
988
+    $sections = apply_filters('wpinv_settings_sections', $sections);
989 989
 
990 990
     return $sections;
991 991
 }
992 992
 
993
-function wpinv_get_pages( $with_slug = false, $default_label = NULL ) {
993
+function wpinv_get_pages($with_slug = false, $default_label = NULL) {
994 994
 	$pages_options = array();
995 995
 
996
-	if( $default_label !== NULL && $default_label !== false ) {
997
-		$pages_options = array( '' => $default_label ); // Blank option
996
+	if ($default_label !== NULL && $default_label !== false) {
997
+		$pages_options = array('' => $default_label); // Blank option
998 998
 	}
999 999
 
1000 1000
 	$pages = get_pages();
1001
-	if ( $pages ) {
1002
-		foreach ( $pages as $page ) {
1001
+	if ($pages) {
1002
+		foreach ($pages as $page) {
1003 1003
 			$title = $with_slug ? $page->post_title . ' (' . $page->post_name . ')' : $page->post_title;
1004
-            $pages_options[ $page->ID ] = $title;
1004
+            $pages_options[$page->ID] = $title;
1005 1005
 		}
1006 1006
 	}
1007 1007
 
1008 1008
 	return $pages_options;
1009 1009
 }
1010 1010
 
1011
-function wpinv_header_callback( $args ) {
1012
-	if ( !empty( $args['desc'] ) ) {
1011
+function wpinv_header_callback($args) {
1012
+	if (!empty($args['desc'])) {
1013 1013
         echo $args['desc'];
1014 1014
     }
1015 1015
 }
1016 1016
 
1017
-function wpinv_hidden_callback( $args ) {
1017
+function wpinv_hidden_callback($args) {
1018 1018
 	global $wpinv_options;
1019 1019
 
1020
-	if ( isset( $args['set_value'] ) ) {
1020
+	if (isset($args['set_value'])) {
1021 1021
 		$value = $args['set_value'];
1022
-	} elseif ( isset( $wpinv_options[ $args['id'] ] ) ) {
1023
-		$value = $wpinv_options[ $args['id'] ];
1022
+	} elseif (isset($wpinv_options[$args['id']])) {
1023
+		$value = $wpinv_options[$args['id']];
1024 1024
 	} else {
1025
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1025
+		$value = isset($args['std']) ? $args['std'] : '';
1026 1026
 	}
1027 1027
 
1028
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1028
+	if (isset($args['faux']) && true === $args['faux']) {
1029 1029
 		$args['readonly'] = true;
1030
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1030
+		$value = isset($args['std']) ? $args['std'] : '';
1031 1031
 		$name  = '';
1032 1032
 	} else {
1033
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1033
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1034 1034
 	}
1035 1035
 
1036
-	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key( $args['id'] ) . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '" />';
1036
+	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key($args['id']) . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '" />';
1037 1037
     
1038 1038
 	echo $html;
1039 1039
 }
1040 1040
 
1041
-function wpinv_checkbox_callback( $args ) {
1041
+function wpinv_checkbox_callback($args) {
1042 1042
 	global $wpinv_options;
1043 1043
     
1044
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1044
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1045 1045
 
1046
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1046
+	if (isset($args['faux']) && true === $args['faux']) {
1047 1047
 		$name = '';
1048 1048
 	} else {
1049 1049
 		$name = 'name="wpinv_settings[' . $sanitize_id . ']"';
1050 1050
 	}
1051 1051
 
1052
-	$checked = isset( $wpinv_options[ $args['id'] ] ) ? checked( 1, $wpinv_options[ $args['id'] ], false ) : '';
1052
+	$checked = isset($wpinv_options[$args['id']]) ? checked(1, $wpinv_options[$args['id']], false) : '';
1053 1053
 	$html = '<input type="checkbox" id="wpinv_settings[' . $sanitize_id . ']"' . $name . ' value="1" ' . $checked . '/>';
1054
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1054
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1055 1055
 
1056 1056
 	echo $html;
1057 1057
 }
1058 1058
 
1059
-function wpinv_multicheck_callback( $args ) {
1059
+function wpinv_multicheck_callback($args) {
1060 1060
 	global $wpinv_options;
1061 1061
 
1062
-	$sanitize_id = wpinv_sanitize_key( $args['id'] );
1063
-	$class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1062
+	$sanitize_id = wpinv_sanitize_key($args['id']);
1063
+	$class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1064 1064
 
1065
-	if ( ! empty( $args['options'] ) ) {
1065
+	if (!empty($args['options'])) {
1066 1066
 		echo '<div class="wpi-mcheck-rows wpi-mcheck-' . $sanitize_id . $class . '">';
1067
-        foreach( $args['options'] as $key => $option ):
1068
-			$sanitize_key = wpinv_sanitize_key( $key );
1069
-			if ( isset( $wpinv_options[$args['id']][$sanitize_key] ) ) { 
1067
+        foreach ($args['options'] as $key => $option):
1068
+			$sanitize_key = wpinv_sanitize_key($key);
1069
+			if (isset($wpinv_options[$args['id']][$sanitize_key])) { 
1070 1070
 				$enabled = $sanitize_key;
1071 1071
 			} else { 
1072 1072
 				$enabled = NULL; 
1073 1073
 			}
1074
-			echo '<div class="wpi-mcheck-row"><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;';
1075
-			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post( $option ) . '</label></div>';
1074
+			echo '<div class="wpi-mcheck-row"><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;';
1075
+			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post($option) . '</label></div>';
1076 1076
 		endforeach;
1077 1077
 		echo '</div>';
1078 1078
 		echo '<p class="description">' . $args['desc'] . '</p>';
1079 1079
 	}
1080 1080
 }
1081 1081
 
1082
-function wpinv_payment_icons_callback( $args ) {
1082
+function wpinv_payment_icons_callback($args) {
1083 1083
 	global $wpinv_options;
1084 1084
     
1085
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1085
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1086 1086
 
1087
-	if ( ! empty( $args['options'] ) ) {
1088
-		foreach( $args['options'] as $key => $option ) {
1089
-            $sanitize_key = wpinv_sanitize_key( $key );
1087
+	if (!empty($args['options'])) {
1088
+		foreach ($args['options'] as $key => $option) {
1089
+            $sanitize_key = wpinv_sanitize_key($key);
1090 1090
             
1091
-			if( isset( $wpinv_options[$args['id']][$key] ) ) {
1091
+			if (isset($wpinv_options[$args['id']][$key])) {
1092 1092
 				$enabled = $option;
1093 1093
 			} else {
1094 1094
 				$enabled = NULL;
@@ -1096,197 +1096,197 @@  discard block
 block discarded – undo
1096 1096
 
1097 1097
 			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" style="margin-right:10px;line-height:16px;height:16px;display:inline-block;">';
1098 1098
 
1099
-				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;';
1099
+				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;';
1100 1100
 
1101
-				if ( wpinv_string_is_image_url( $key ) ) {
1102
-					echo '<img class="payment-icon" src="' . esc_url( $key ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1101
+				if (wpinv_string_is_image_url($key)) {
1102
+					echo '<img class="payment-icon" src="' . esc_url($key) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1103 1103
 				} else {
1104
-					$card = strtolower( str_replace( ' ', '', $option ) );
1104
+					$card = strtolower(str_replace(' ', '', $option));
1105 1105
 
1106
-					if ( has_filter( 'wpinv_accepted_payment_' . $card . '_image' ) ) {
1107
-						$image = apply_filters( 'wpinv_accepted_payment_' . $card . '_image', '' );
1106
+					if (has_filter('wpinv_accepted_payment_' . $card . '_image')) {
1107
+						$image = apply_filters('wpinv_accepted_payment_' . $card . '_image', '');
1108 1108
 					} else {
1109
-						$image       = wpinv_locate_template( 'images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false );
1109
+						$image       = wpinv_locate_template('images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false);
1110 1110
 						$content_dir = WP_CONTENT_DIR;
1111 1111
 
1112
-						if ( function_exists( 'wp_normalize_path' ) ) {
1112
+						if (function_exists('wp_normalize_path')) {
1113 1113
 							// Replaces backslashes with forward slashes for Windows systems
1114
-							$image = wp_normalize_path( $image );
1115
-							$content_dir = wp_normalize_path( $content_dir );
1114
+							$image = wp_normalize_path($image);
1115
+							$content_dir = wp_normalize_path($content_dir);
1116 1116
 						}
1117 1117
 
1118
-						$image = str_replace( $content_dir, content_url(), $image );
1118
+						$image = str_replace($content_dir, content_url(), $image);
1119 1119
 					}
1120 1120
 
1121
-					echo '<img class="payment-icon" src="' . esc_url( $image ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1121
+					echo '<img class="payment-icon" src="' . esc_url($image) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1122 1122
 				}
1123 1123
 			echo $option . '</label>';
1124 1124
 		}
1125
-		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post( $args['desc'] ) . '</p>';
1125
+		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post($args['desc']) . '</p>';
1126 1126
 	}
1127 1127
 }
1128 1128
 
1129
-function wpinv_radio_callback( $args ) {
1129
+function wpinv_radio_callback($args) {
1130 1130
 	global $wpinv_options;
1131 1131
     
1132
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1132
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1133 1133
     
1134
-    foreach ( $args['options'] as $key => $option ) :
1135
-		$sanitize_key = wpinv_sanitize_key( $key );
1134
+    foreach ($args['options'] as $key => $option) :
1135
+		$sanitize_key = wpinv_sanitize_key($key);
1136 1136
         
1137 1137
         $checked = false;
1138 1138
 
1139
-		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1139
+		if (isset($wpinv_options[$args['id']]) && $wpinv_options[$args['id']] == $key)
1140 1140
 			$checked = true;
1141
-		elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1141
+		elseif (isset($args['std']) && $args['std'] == $key && !isset($wpinv_options[$args['id']]))
1142 1142
 			$checked = true;
1143 1143
 
1144 1144
 		echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1145
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
1145
+		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html($option) . '</label><br/>';
1146 1146
 	endforeach;
1147 1147
 
1148
-	echo '<p class="description">' . wp_kses_post( $args['desc'] ) . '</p>';
1148
+	echo '<p class="description">' . wp_kses_post($args['desc']) . '</p>';
1149 1149
 }
1150 1150
 
1151
-function wpinv_gateways_callback( $args ) {
1151
+function wpinv_gateways_callback($args) {
1152 1152
 	global $wpinv_options;
1153 1153
     
1154
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1154
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1155 1155
 
1156
-	foreach ( $args['options'] as $key => $option ) :
1157
-		$sanitize_key = wpinv_sanitize_key( $key );
1156
+	foreach ($args['options'] as $key => $option) :
1157
+		$sanitize_key = wpinv_sanitize_key($key);
1158 1158
         
1159
-        if ( isset( $wpinv_options['gateways'][ $key ] ) )
1159
+        if (isset($wpinv_options['gateways'][$key]))
1160 1160
 			$enabled = '1';
1161 1161
 		else
1162 1162
 			$enabled = null;
1163 1163
 
1164
-		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;';
1165
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
1164
+		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;';
1165
+		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html($option['admin_label']) . '</label><br/>';
1166 1166
 	endforeach;
1167 1167
 }
1168 1168
 
1169 1169
 function wpinv_gateway_select_callback($args) {
1170 1170
 	global $wpinv_options;
1171 1171
     
1172
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1173
-    $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1172
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1173
+    $class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1174 1174
 
1175
-	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'" >';
1175
+	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="' . $class . '" >';
1176 1176
 
1177
-	foreach ( $args['options'] as $key => $option ) :
1178
-		if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1179
-            $selected = selected( $key, $args['selected'], false );
1177
+	foreach ($args['options'] as $key => $option) :
1178
+		if (isset($args['selected']) && $args['selected'] !== null && $args['selected'] !== false) {
1179
+            $selected = selected($key, $args['selected'], false);
1180 1180
         } else {
1181
-            $selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $key, $wpinv_options[$args['id']], false ) : '';
1181
+            $selected = isset($wpinv_options[$args['id']]) ? selected($key, $wpinv_options[$args['id']], false) : '';
1182 1182
         }
1183
-		echo '<option value="' . wpinv_sanitize_key( $key ) . '"' . $selected . '>' . esc_html( $option['admin_label'] ) . '</option>';
1183
+		echo '<option value="' . wpinv_sanitize_key($key) . '"' . $selected . '>' . esc_html($option['admin_label']) . '</option>';
1184 1184
 	endforeach;
1185 1185
 
1186 1186
 	echo '</select>';
1187
-	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1187
+	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1188 1188
 }
1189 1189
 
1190
-function wpinv_text_callback( $args ) {
1190
+function wpinv_text_callback($args) {
1191 1191
 	global $wpinv_options;
1192 1192
     
1193
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1193
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1194 1194
 
1195
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1196
-		$value = $wpinv_options[ $args['id'] ];
1195
+	if (isset($wpinv_options[$args['id']])) {
1196
+		$value = $wpinv_options[$args['id']];
1197 1197
 	} else {
1198
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1198
+		$value = isset($args['std']) ? $args['std'] : '';
1199 1199
 	}
1200 1200
 
1201
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1201
+	if (isset($args['faux']) && true === $args['faux']) {
1202 1202
 		$args['readonly'] = true;
1203
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1203
+		$value = isset($args['std']) ? $args['std'] : '';
1204 1204
 		$name  = '';
1205 1205
 	} else {
1206
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1206
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1207 1207
 	}
1208
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1208
+	$class = !empty($args['class']) ? sanitize_html_class($args['class']) : '';
1209 1209
 
1210 1210
 	$readonly = $args['readonly'] === true ? ' readonly="readonly"' : '';
1211
-	$size     = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1212
-	$html     = '<input type="text" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"' . $readonly . '/>';
1213
-	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1211
+	$size     = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1212
+	$html     = '<input type="text" class="' . sanitize_html_class($size) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '"' . $readonly . '/>';
1213
+	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1214 1214
 
1215 1215
 	echo $html;
1216 1216
 }
1217 1217
 
1218
-function wpinv_number_callback( $args ) {
1218
+function wpinv_number_callback($args) {
1219 1219
 	global $wpinv_options;
1220 1220
     
1221
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1221
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1222 1222
 
1223
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1224
-		$value = $wpinv_options[ $args['id'] ];
1223
+	if (isset($wpinv_options[$args['id']])) {
1224
+		$value = $wpinv_options[$args['id']];
1225 1225
 	} else {
1226
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1226
+		$value = isset($args['std']) ? $args['std'] : '';
1227 1227
 	}
1228 1228
 
1229
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1229
+	if (isset($args['faux']) && true === $args['faux']) {
1230 1230
 		$args['readonly'] = true;
1231
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1231
+		$value = isset($args['std']) ? $args['std'] : '';
1232 1232
 		$name  = '';
1233 1233
 	} else {
1234
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1234
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1235 1235
 	}
1236 1236
 
1237
-	$max  = isset( $args['max'] ) ? $args['max'] : 999999;
1238
-	$min  = isset( $args['min'] ) ? $args['min'] : 0;
1239
-	$step = isset( $args['step'] ) ? $args['step'] : 1;
1240
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1237
+	$max  = isset($args['max']) ? $args['max'] : 999999;
1238
+	$min  = isset($args['min']) ? $args['min'] : 0;
1239
+	$step = isset($args['step']) ? $args['step'] : 1;
1240
+	$class = !empty($args['class']) ? sanitize_html_class($args['class']) : '';
1241 1241
 
1242
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1243
-	$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 ) ) . '"/>';
1244
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1242
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1243
+	$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)) . '"/>';
1244
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1245 1245
 
1246 1246
 	echo $html;
1247 1247
 }
1248 1248
 
1249
-function wpinv_textarea_callback( $args ) {
1249
+function wpinv_textarea_callback($args) {
1250 1250
 	global $wpinv_options;
1251 1251
     
1252
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1252
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1253 1253
 
1254
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1255
-		$value = $wpinv_options[ $args['id'] ];
1254
+	if (isset($wpinv_options[$args['id']])) {
1255
+		$value = $wpinv_options[$args['id']];
1256 1256
 	} else {
1257
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1257
+		$value = isset($args['std']) ? $args['std'] : '';
1258 1258
 	}
1259 1259
     
1260
-    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1261
-    $class = ( isset( $args['class'] ) && ! is_null( $args['class'] ) ) ? $args['class'] : 'large-text';
1260
+    $size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1261
+    $class = (isset($args['class']) && !is_null($args['class'])) ? $args['class'] : 'large-text';
1262 1262
 
1263
-	$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>';
1264
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1263
+	$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>';
1264
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1265 1265
 
1266 1266
 	echo $html;
1267 1267
 }
1268 1268
 
1269
-function wpinv_password_callback( $args ) {
1269
+function wpinv_password_callback($args) {
1270 1270
 	global $wpinv_options;
1271 1271
     
1272
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1272
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1273 1273
 
1274
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1275
-		$value = $wpinv_options[ $args['id'] ];
1274
+	if (isset($wpinv_options[$args['id']])) {
1275
+		$value = $wpinv_options[$args['id']];
1276 1276
 	} else {
1277
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1277
+		$value = isset($args['std']) ? $args['std'] : '';
1278 1278
 	}
1279 1279
 
1280
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1281
-	$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 ) . '"/>';
1282
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1280
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1281
+	$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) . '"/>';
1282
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1283 1283
 
1284 1284
 	echo $html;
1285 1285
 }
1286 1286
 
1287 1287
 function wpinv_missing_callback($args) {
1288 1288
 	printf(
1289
-		__( 'The callback function used for the %s setting is missing.', 'invoicing' ),
1289
+		__('The callback function used for the %s setting is missing.', 'invoicing'),
1290 1290
 		'<strong>' . $args['id'] . '</strong>'
1291 1291
 	);
1292 1292
 }
@@ -1294,133 +1294,133 @@  discard block
 block discarded – undo
1294 1294
 function wpinv_select_callback($args) {
1295 1295
 	global $wpinv_options;
1296 1296
     
1297
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1297
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1298 1298
 
1299
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1300
-		$value = $wpinv_options[ $args['id'] ];
1299
+	if (isset($wpinv_options[$args['id']])) {
1300
+		$value = $wpinv_options[$args['id']];
1301 1301
 	} else {
1302
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1302
+		$value = isset($args['std']) ? $args['std'] : '';
1303 1303
 	}
1304 1304
     
1305
-    if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1305
+    if (isset($args['selected']) && $args['selected'] !== null && $args['selected'] !== false) {
1306 1306
         $value = $args['selected'];
1307 1307
     }
1308 1308
 
1309
-	if ( isset( $args['placeholder'] ) ) {
1309
+	if (isset($args['placeholder'])) {
1310 1310
 		$placeholder = $args['placeholder'];
1311 1311
 	} else {
1312 1312
 		$placeholder = '';
1313 1313
 	}
1314 1314
     
1315
-    if( !empty( $args['onchange'] ) ) {
1316
-        $onchange = ' onchange="' . esc_attr( $args['onchange'] ) . '"';
1315
+    if (!empty($args['onchange'])) {
1316
+        $onchange = ' onchange="' . esc_attr($args['onchange']) . '"';
1317 1317
     } else {
1318 1318
         $onchange = '';
1319 1319
     }
1320 1320
 
1321
-    $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1321
+    $class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1322 1322
 
1323
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'"  name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" data-placeholder="' . esc_html( $placeholder ) . '"' . $onchange . ' />';
1323
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="' . $class . '"  name="wpinv_settings[' . esc_attr($args['id']) . ']" data-placeholder="' . esc_html($placeholder) . '"' . $onchange . ' />';
1324 1324
 
1325
-	foreach ( $args['options'] as $option => $name ) {
1326
-		$selected = selected( $option, $value, false );
1327
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1325
+	foreach ($args['options'] as $option => $name) {
1326
+		$selected = selected($option, $value, false);
1327
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($name) . '</option>';
1328 1328
 	}
1329 1329
 
1330 1330
 	$html .= '</select>';
1331
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1331
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1332 1332
 
1333 1333
 	echo $html;
1334 1334
 }
1335 1335
 
1336
-function wpinv_color_select_callback( $args ) {
1336
+function wpinv_color_select_callback($args) {
1337 1337
 	global $wpinv_options;
1338 1338
     
1339
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1339
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1340 1340
 
1341
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1342
-		$value = $wpinv_options[ $args['id'] ];
1341
+	if (isset($wpinv_options[$args['id']])) {
1342
+		$value = $wpinv_options[$args['id']];
1343 1343
 	} else {
1344
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1344
+		$value = isset($args['std']) ? $args['std'] : '';
1345 1345
 	}
1346 1346
 
1347
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"/>';
1347
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']"/>';
1348 1348
 
1349
-	foreach ( $args['options'] as $option => $color ) {
1350
-		$selected = selected( $option, $value, false );
1351
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $color['label'] ) . '</option>';
1349
+	foreach ($args['options'] as $option => $color) {
1350
+		$selected = selected($option, $value, false);
1351
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($color['label']) . '</option>';
1352 1352
 	}
1353 1353
 
1354 1354
 	$html .= '</select>';
1355
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1355
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1356 1356
 
1357 1357
 	echo $html;
1358 1358
 }
1359 1359
 
1360
-function wpinv_rich_editor_callback( $args ) {
1360
+function wpinv_rich_editor_callback($args) {
1361 1361
 	global $wpinv_options, $wp_version;
1362 1362
     
1363
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1363
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1364 1364
 
1365
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1366
-		$value = $wpinv_options[ $args['id'] ];
1365
+	if (isset($wpinv_options[$args['id']])) {
1366
+		$value = $wpinv_options[$args['id']];
1367 1367
 
1368
-		if( empty( $args['allow_blank'] ) && empty( $value ) ) {
1369
-			$value = isset( $args['std'] ) ? $args['std'] : '';
1368
+		if (empty($args['allow_blank']) && empty($value)) {
1369
+			$value = isset($args['std']) ? $args['std'] : '';
1370 1370
 		}
1371 1371
 	} else {
1372
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1372
+		$value = isset($args['std']) ? $args['std'] : '';
1373 1373
 	}
1374 1374
 
1375
-	$rows = isset( $args['size'] ) ? $args['size'] : 20;
1375
+	$rows = isset($args['size']) ? $args['size'] : 20;
1376 1376
 
1377
-	if ( $wp_version >= 3.3 && function_exists( 'wp_editor' ) ) {
1377
+	if ($wp_version >= 3.3 && function_exists('wp_editor')) {
1378 1378
 		ob_start();
1379
-		wp_editor( stripslashes( $value ), 'wpinv_settings_' . esc_attr( $args['id'] ), array( 'textarea_name' => 'wpinv_settings[' . esc_attr( $args['id'] ) . ']', 'textarea_rows' => absint( $rows ), 'media_buttons' => false ) );
1379
+		wp_editor(stripslashes($value), 'wpinv_settings_' . esc_attr($args['id']), array('textarea_name' => 'wpinv_settings[' . esc_attr($args['id']) . ']', 'textarea_rows' => absint($rows), 'media_buttons' => false));
1380 1380
 		$html = ob_get_clean();
1381 1381
 	} else {
1382
-		$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>';
1382
+		$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>';
1383 1383
 	}
1384 1384
 
1385
-	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1385
+	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1386 1386
 
1387 1387
 	echo $html;
1388 1388
 }
1389 1389
 
1390
-function wpinv_upload_callback( $args ) {
1390
+function wpinv_upload_callback($args) {
1391 1391
 	global $wpinv_options;
1392 1392
     
1393
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1393
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1394 1394
 
1395
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1395
+	if (isset($wpinv_options[$args['id']])) {
1396 1396
 		$value = $wpinv_options[$args['id']];
1397 1397
 	} else {
1398 1398
 		$value = isset($args['std']) ? $args['std'] : '';
1399 1399
 	}
1400 1400
 
1401
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1402
-	$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 ) ) . '"/>';
1403
-	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __( 'Upload File', 'invoicing' ) . '"/></span>';
1404
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1401
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1402
+	$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)) . '"/>';
1403
+	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __('Upload File', 'invoicing') . '"/></span>';
1404
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1405 1405
 
1406 1406
 	echo $html;
1407 1407
 }
1408 1408
 
1409
-function wpinv_color_callback( $args ) {
1409
+function wpinv_color_callback($args) {
1410 1410
 	global $wpinv_options;
1411 1411
     
1412
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1412
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1413 1413
 
1414
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1415
-		$value = $wpinv_options[ $args['id'] ];
1414
+	if (isset($wpinv_options[$args['id']])) {
1415
+		$value = $wpinv_options[$args['id']];
1416 1416
 	} else {
1417
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1417
+		$value = isset($args['std']) ? $args['std'] : '';
1418 1418
 	}
1419 1419
 
1420
-	$default = isset( $args['std'] ) ? $args['std'] : '';
1420
+	$default = isset($args['std']) ? $args['std'] : '';
1421 1421
 
1422
-	$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 ) . '" />';
1423
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1422
+	$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) . '" />';
1423
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1424 1424
 
1425 1425
 	echo $html;
1426 1426
 }
@@ -1428,9 +1428,9 @@  discard block
 block discarded – undo
1428 1428
 function wpinv_country_states_callback($args) {
1429 1429
 	global $wpinv_options;
1430 1430
     
1431
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1431
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1432 1432
 
1433
-	if ( isset( $args['placeholder'] ) ) {
1433
+	if (isset($args['placeholder'])) {
1434 1434
 		$placeholder = $args['placeholder'];
1435 1435
 	} else {
1436 1436
 		$placeholder = '';
@@ -1438,16 +1438,16 @@  discard block
 block discarded – undo
1438 1438
 
1439 1439
 	$states = wpinv_get_country_states();
1440 1440
 
1441
-	$class = empty( $states ) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1442
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"' . $class . 'data-placeholder="' . esc_html( $placeholder ) . '"/>';
1441
+	$class = empty($states) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1442
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']"' . $class . 'data-placeholder="' . esc_html($placeholder) . '"/>';
1443 1443
 
1444
-	foreach ( $states as $option => $name ) {
1445
-		$selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $option, $wpinv_options[$args['id']], false ) : '';
1446
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1444
+	foreach ($states as $option => $name) {
1445
+		$selected = isset($wpinv_options[$args['id']]) ? selected($option, $wpinv_options[$args['id']], false) : '';
1446
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($name) . '</option>';
1447 1447
 	}
1448 1448
 
1449 1449
 	$html .= '</select>';
1450
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1450
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1451 1451
 
1452 1452
 	echo $html;
1453 1453
 }
@@ -1462,96 +1462,96 @@  discard block
 block discarded – undo
1462 1462
 	<table id="wpinv_tax_rates" class="wp-list-table widefat fixed posts">
1463 1463
 		<thead>
1464 1464
 			<tr>
1465
-				<th scope="col" class="wpinv_tax_country"><?php _e( 'Country', 'invoicing' ); ?></th>
1466
-				<th scope="col" class="wpinv_tax_state"><?php _e( 'State / Province', 'invoicing' ); ?></th>
1467
-                <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>
1468
-                <th scope="col" class="wpinv_tax_rate"><?php _e( 'Rate %', 'invoicing' ); ?></th> 
1469
-                <th scope="col" class="wpinv_tax_name"><?php _e( 'Tax Name', 'invoicing' ); ?></th>
1470
-				<th scope="col" class="wpinv_tax_action"><?php _e( 'Remove', 'invoicing' ); ?></th>
1465
+				<th scope="col" class="wpinv_tax_country"><?php _e('Country', 'invoicing'); ?></th>
1466
+				<th scope="col" class="wpinv_tax_state"><?php _e('State / Province', 'invoicing'); ?></th>
1467
+                <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>
1468
+                <th scope="col" class="wpinv_tax_rate"><?php _e('Rate %', 'invoicing'); ?></th> 
1469
+                <th scope="col" class="wpinv_tax_name"><?php _e('Tax Name', 'invoicing'); ?></th>
1470
+				<th scope="col" class="wpinv_tax_action"><?php _e('Remove', 'invoicing'); ?></th>
1471 1471
 			</tr>
1472 1472
 		</thead>
1473 1473
         <tbody>
1474
-		<?php if( !empty( $rates ) ) : ?>
1475
-			<?php foreach( $rates as $key => $rate ) : ?>
1474
+		<?php if (!empty($rates)) : ?>
1475
+			<?php foreach ($rates as $key => $rate) : ?>
1476 1476
             <?php 
1477
-            $sanitized_key = wpinv_sanitize_key( $key );
1477
+            $sanitized_key = wpinv_sanitize_key($key);
1478 1478
             ?>
1479 1479
 			<tr>
1480 1480
 				<td class="wpinv_tax_country">
1481 1481
 					<?php
1482
-					echo wpinv_html_select( array(
1483
-						'options'          => wpinv_get_country_list( true ),
1482
+					echo wpinv_html_select(array(
1483
+						'options'          => wpinv_get_country_list(true),
1484 1484
 						'name'             => 'tax_rates[' . $sanitized_key . '][country]',
1485 1485
                         'id'               => 'tax_rates[' . $sanitized_key . '][country]',
1486 1486
 						'selected'         => $rate['country'],
1487 1487
 						'show_option_all'  => false,
1488 1488
 						'show_option_none' => false,
1489 1489
 						'class'            => 'wpinv-tax-country wpi_select2',
1490
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1491
-					) );
1490
+						'placeholder'      => __('Choose a country', 'invoicing')
1491
+					));
1492 1492
 					?>
1493 1493
 				</td>
1494 1494
 				<td class="wpinv_tax_state">
1495 1495
 					<?php
1496
-					$states = wpinv_get_country_states( $rate['country'] );
1497
-					if( !empty( $states ) ) {
1498
-						echo wpinv_html_select( array(
1499
-							'options'          => array_merge( array( '' => '' ), $states ),
1496
+					$states = wpinv_get_country_states($rate['country']);
1497
+					if (!empty($states)) {
1498
+						echo wpinv_html_select(array(
1499
+							'options'          => array_merge(array('' => ''), $states),
1500 1500
 							'name'             => 'tax_rates[' . $sanitized_key . '][state]',
1501 1501
                             'id'               => 'tax_rates[' . $sanitized_key . '][state]',
1502 1502
 							'selected'         => $rate['state'],
1503 1503
 							'show_option_all'  => false,
1504 1504
 							'show_option_none' => false,
1505 1505
                             'class'            => 'wpi_select2',
1506
-							'placeholder'      => __( 'Choose a state', 'invoicing' )
1507
-						) );
1506
+							'placeholder'      => __('Choose a state', 'invoicing')
1507
+						));
1508 1508
 					} else {
1509
-						echo wpinv_html_text( array(
1509
+						echo wpinv_html_text(array(
1510 1510
 							'name'  => 'tax_rates[' . $sanitized_key . '][state]', $rate['state'],
1511
-							'value' => ! empty( $rate['state'] ) ? $rate['state'] : '',
1511
+							'value' => !empty($rate['state']) ? $rate['state'] : '',
1512 1512
                             'id'    => 'tax_rates[' . $sanitized_key . '][state]',
1513
-						) );
1513
+						));
1514 1514
 					}
1515 1515
 					?>
1516 1516
 				</td>
1517 1517
 				<td class="wpinv_tax_global">
1518
-					<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'] ) ); ?>/>
1519
-					<label for="tax_rates[<?php echo $sanitized_key; ?>][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
1518
+					<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'])); ?>/>
1519
+					<label for="tax_rates[<?php echo $sanitized_key; ?>][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
1520 1520
 				</td>
1521
-				<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>
1522
-                <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>
1523
-				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1521
+				<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>
1522
+                <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>
1523
+				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e('Remove Rate', 'invoicing'); ?></span></td>
1524 1524
 			</tr>
1525 1525
 			<?php endforeach; ?>
1526 1526
 		<?php else : ?>
1527 1527
 			<tr>
1528 1528
 				<td class="wpinv_tax_country">
1529 1529
 					<?php
1530
-					echo wpinv_html_select( array(
1531
-						'options'          => wpinv_get_country_list( true ),
1530
+					echo wpinv_html_select(array(
1531
+						'options'          => wpinv_get_country_list(true),
1532 1532
 						'name'             => 'tax_rates[0][country]',
1533 1533
 						'show_option_all'  => false,
1534 1534
 						'show_option_none' => false,
1535 1535
 						'class'            => 'wpinv-tax-country wpi_select2',
1536
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1537
-					) ); ?>
1536
+						'placeholder'      => __('Choose a country', 'invoicing')
1537
+					)); ?>
1538 1538
 				</td>
1539 1539
 				<td class="wpinv_tax_state">
1540
-					<?php echo wpinv_html_text( array(
1540
+					<?php echo wpinv_html_text(array(
1541 1541
 						'name' => 'tax_rates[0][state]'
1542
-					) ); ?>
1542
+					)); ?>
1543 1543
 				</td>
1544 1544
 				<td class="wpinv_tax_global">
1545 1545
 					<input type="checkbox" name="tax_rates[0][global]" id="tax_rates[0][global]" value="1"/>
1546
-					<label for="tax_rates[0][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
1546
+					<label for="tax_rates[0][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
1547 1547
 				</td>
1548
-				<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>
1548
+				<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>
1549 1549
                 <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[0][name]" /></td>
1550
-				<td><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1550
+				<td><span class="wpinv_remove_tax_rate button-secondary"><?php _e('Remove Rate', 'invoicing'); ?></span></td>
1551 1551
 			</tr>
1552 1552
 		<?php endif; ?>
1553 1553
         </tbody>
1554
-        <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>
1554
+        <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>
1555 1555
 	</table>
1556 1556
 	<?php
1557 1557
 	echo ob_get_clean();
@@ -1562,76 +1562,76 @@  discard block
 block discarded – undo
1562 1562
     ob_start(); ?>
1563 1563
     </td><tr>
1564 1564
     <td colspan="2" class="wpinv_tools_tdbox">
1565
-    <?php if ( $args['desc'] ) { ?><p><?php echo $args['desc']; ?></p><?php } ?>
1566
-    <?php do_action( 'wpinv_tools_before' ); ?>
1565
+    <?php if ($args['desc']) { ?><p><?php echo $args['desc']; ?></p><?php } ?>
1566
+    <?php do_action('wpinv_tools_before'); ?>
1567 1567
     <table id="wpinv_tools_table" class="wp-list-table widefat fixed posts">
1568 1568
         <thead>
1569 1569
             <tr>
1570
-                <th scope="col" class="wpinv-th-tool"><?php _e( 'Tool', 'invoicing' ); ?></th>
1571
-                <th scope="col" class="wpinv-th-desc"><?php _e( 'Description', 'invoicing' ); ?></th>
1572
-                <th scope="col" class="wpinv-th-action"><?php _e( 'Action', 'invoicing' ); ?></th>
1570
+                <th scope="col" class="wpinv-th-tool"><?php _e('Tool', 'invoicing'); ?></th>
1571
+                <th scope="col" class="wpinv-th-desc"><?php _e('Description', 'invoicing'); ?></th>
1572
+                <th scope="col" class="wpinv-th-action"><?php _e('Action', 'invoicing'); ?></th>
1573 1573
             </tr>
1574 1574
         </thead>
1575
-            <?php do_action( 'wpinv_tools_row' ); ?>
1575
+            <?php do_action('wpinv_tools_row'); ?>
1576 1576
         <tbody>
1577 1577
         </tbody>
1578 1578
     </table>
1579
-    <?php do_action( 'wpinv_tools_after' ); ?>
1579
+    <?php do_action('wpinv_tools_after'); ?>
1580 1580
     <?php
1581 1581
     echo ob_get_clean();
1582 1582
 }
1583 1583
 
1584
-function wpinv_descriptive_text_callback( $args ) {
1585
-	echo wp_kses_post( $args['desc'] );
1584
+function wpinv_descriptive_text_callback($args) {
1585
+	echo wp_kses_post($args['desc']);
1586 1586
 }
1587 1587
 
1588
-function wpinv_hook_callback( $args ) {
1589
-	do_action( 'wpinv_' . $args['id'], $args );
1588
+function wpinv_hook_callback($args) {
1589
+	do_action('wpinv_' . $args['id'], $args);
1590 1590
 }
1591 1591
 
1592 1592
 function wpinv_set_settings_cap() {
1593 1593
 	return wpinv_get_capability();
1594 1594
 }
1595
-add_filter( 'option_page_capability_wpinv_settings', 'wpinv_set_settings_cap' );
1595
+add_filter('option_page_capability_wpinv_settings', 'wpinv_set_settings_cap');
1596 1596
 
1597
-function wpinv_settings_sanitize_input( $value, $key ) {
1598
-    if ( $key == 'tax_rate' || $key == 'eu_fallback_rate' ) {
1599
-        $value = wpinv_sanitize_amount( $value, 4 );
1597
+function wpinv_settings_sanitize_input($value, $key) {
1598
+    if ($key == 'tax_rate' || $key == 'eu_fallback_rate') {
1599
+        $value = wpinv_sanitize_amount($value, 4);
1600 1600
         $value = $value >= 100 ? 99 : $value;
1601 1601
     }
1602 1602
         
1603 1603
     return $value;
1604 1604
 }
1605
-add_filter( 'wpinv_settings_sanitize', 'wpinv_settings_sanitize_input', 10, 2 );
1605
+add_filter('wpinv_settings_sanitize', 'wpinv_settings_sanitize_input', 10, 2);
1606 1606
 
1607
-function wpinv_on_update_settings( $old_value, $value, $option ) {
1608
-    $old = !empty( $old_value['remove_data_on_unistall'] ) ? 1 : '';
1609
-    $new = !empty( $value['remove_data_on_unistall'] ) ? 1 : '';
1607
+function wpinv_on_update_settings($old_value, $value, $option) {
1608
+    $old = !empty($old_value['remove_data_on_unistall']) ? 1 : '';
1609
+    $new = !empty($value['remove_data_on_unistall']) ? 1 : '';
1610 1610
     
1611
-    if ( $old != $new ) {
1612
-        update_option( 'wpinv_remove_data_on_invoice_unistall', $new );
1611
+    if ($old != $new) {
1612
+        update_option('wpinv_remove_data_on_invoice_unistall', $new);
1613 1613
     }
1614 1614
 }
1615
-add_action( 'update_option_wpinv_settings', 'wpinv_on_update_settings', 10, 3 );
1616
-add_action( 'wpinv_settings_tab_bottom_emails_new_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1617
-add_action( 'wpinv_settings_tab_bottom_emails_cancelled_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1618
-add_action( 'wpinv_settings_tab_bottom_emails_failed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1619
-add_action( 'wpinv_settings_tab_bottom_emails_onhold_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1620
-add_action( 'wpinv_settings_tab_bottom_emails_processing_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1621
-add_action( 'wpinv_settings_tab_bottom_emails_completed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1622
-add_action( 'wpinv_settings_tab_bottom_emails_refunded_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1623
-add_action( 'wpinv_settings_tab_bottom_emails_user_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1624
-add_action( 'wpinv_settings_tab_bottom_emails_user_note', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1625
-add_action( 'wpinv_settings_tab_bottom_emails_overdue', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1626
-
1627
-function wpinv_settings_tab_bottom_emails( $active_tab, $section ) {
1615
+add_action('update_option_wpinv_settings', 'wpinv_on_update_settings', 10, 3);
1616
+add_action('wpinv_settings_tab_bottom_emails_new_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1617
+add_action('wpinv_settings_tab_bottom_emails_cancelled_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1618
+add_action('wpinv_settings_tab_bottom_emails_failed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1619
+add_action('wpinv_settings_tab_bottom_emails_onhold_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1620
+add_action('wpinv_settings_tab_bottom_emails_processing_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1621
+add_action('wpinv_settings_tab_bottom_emails_completed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1622
+add_action('wpinv_settings_tab_bottom_emails_refunded_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1623
+add_action('wpinv_settings_tab_bottom_emails_user_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1624
+add_action('wpinv_settings_tab_bottom_emails_user_note', 'wpinv_settings_tab_bottom_emails', 10, 2);
1625
+add_action('wpinv_settings_tab_bottom_emails_overdue', 'wpinv_settings_tab_bottom_emails', 10, 2);
1626
+
1627
+function wpinv_settings_tab_bottom_emails($active_tab, $section) {
1628 1628
     ?>
1629 1629
     <div class="wpinv-email-wc-row ">
1630 1630
         <div class="wpinv-email-wc-td">
1631
-            <h3 class="wpinv-email-wc-title"><?php echo apply_filters( 'wpinv_settings_email_wildcards_title', __( 'Wildcards For Emails', 'invoicing' ) ); ?></h3>
1631
+            <h3 class="wpinv-email-wc-title"><?php echo apply_filters('wpinv_settings_email_wildcards_title', __('Wildcards For Emails', 'invoicing')); ?></h3>
1632 1632
             <p class="wpinv-email-wc-description">
1633 1633
                 <?php
1634
-                $description = __( 'The following wildcards can be used in email subjects, heading and content:<br>
1634
+                $description = __('The following wildcards can be used in email subjects, heading and content:<br>
1635 1635
                     <strong>{site_title} :</strong> Site Title<br>
1636 1636
                     <strong>{name} :</strong> Customer\'s full name<br>
1637 1637
                     <strong>{first_name} :</strong> Customer\'s first name<br>
@@ -1645,7 +1645,7 @@  discard block
 block discarded – undo
1645 1645
                     <strong>{invoice_due_date} :</strong> The date the invoice is due<br>
1646 1646
                     <strong>{date} :</strong> Today\'s date.<br>
1647 1647
                     <strong>{is_was} :</strong> If due date of invoice is past, displays "was" otherwise displays "is"<br>
1648
-                    <strong>{invoice_label} :</strong> Invoices/quotes singular name. Ex: Invoice/Quote<br>', 'invoicing' );
1648
+                    <strong>{invoice_label} :</strong> Invoices/quotes singular name. Ex: Invoice/Quote<br>', 'invoicing');
1649 1649
                 echo apply_filters('wpinv_settings_email_wildcards_description', $description, $active_tab, $section);
1650 1650
                 ?>
1651 1651
             </p>
Please login to merge, or discard this patch.