Completed
Push — master ( 9041b7...12aea4 )
by Brian
18s queued 14s
created
includes/gateways/class-getpaid-payment-gateway.php 2 patches
Indentation   +607 added lines, -607 removed lines patch added patch discarded remove patch
@@ -13,467 +13,467 @@  discard block
 block discarded – undo
13 13
  */
14 14
 abstract class GetPaid_Payment_Gateway {
15 15
 
16
-	/**
17
-	 * Set if the place checkout button should be renamed on selection.
18
-	 *
19
-	 * @var string
20
-	 */
21
-	public $checkout_button_text;
22
-
23
-	/**
24
-	 * Boolean whether the method is enabled.
25
-	 *
26
-	 * @var bool
27
-	 */
28
-	public $enabled = true;
29
-
30
-	/**
31
-	 * Payment method id.
32
-	 *
33
-	 * @var string
34
-	 */
35
-	public $id;
36
-
37
-	/**
38
-	 * Payment method order.
39
-	 *
40
-	 * @var int
41
-	 */
42
-	public $order = 10;
43
-
44
-	/**
45
-	 * Payment method title for the frontend.
46
-	 *
47
-	 * @var string
48
-	 */
49
-	public $title;
50
-
51
-	/**
52
-	 * Payment method description for the frontend.
53
-	 *
54
-	 * @var string
55
-	 */
56
-	public $description;
57
-
58
-	/**
59
-	 * Gateway title.
60
-	 *
61
-	 * @var string
62
-	 */
63
-	public $method_title = '';
64
-
65
-	/**
66
-	 * Gateway description.
67
-	 *
68
-	 * @var string
69
-	 */
70
-	public $method_description = '';
71
-
72
-	/**
73
-	 * Countries this gateway is allowed for.
74
-	 *
75
-	 * @var array
76
-	 */
77
-	public $countries;
78
-
79
-	/**
80
-	 * Currencies this gateway is allowed for.
81
-	 *
82
-	 * @var array
83
-	 */
84
-	public $currencies;
85
-
86
-	/**
87
-	 * Currencies this gateway is not allowed for.
88
-	 *
89
-	 * @var array
90
-	 */
91
-	public $exclude_currencies;
92
-
93
-	/**
94
-	 * Maximum transaction amount, zero does not define a maximum.
95
-	 *
96
-	 * @var int
97
-	 */
98
-	public $max_amount = 0;
99
-
100
-	/**
101
-	 * Optional URL to view a transaction.
102
-	 *
103
-	 * @var string
104
-	 */
105
-	public $view_transaction_url = '';
106
-
107
-	/**
108
-	 * Optional URL to view a subscription.
109
-	 *
110
-	 * @var string
111
-	 */
112
-	public $view_subscription_url = '';
113
-
114
-	/**
115
-	 * Optional label to show for "new payment method" in the payment
116
-	 * method/token selection radio selection.
117
-	 *
118
-	 * @var string
119
-	 */
120
-	public $new_method_label = '';
121
-
122
-	/**
123
-	 * Contains a user's saved tokens for this gateway.
124
-	 *
125
-	 * @var array
126
-	 */
127
-	protected $tokens = array();
128
-
129
-	/**
130
-	 * An array of features that this gateway supports.
131
-	 *
132
-	 * @var array
133
-	 */
134
-	protected $supports = array();
135
-
136
-	/**
137
-	 * Class constructor.
138
-	 */
139
-	public function __construct() {
140
-
141
-		// Register gateway.
142
-		add_filter( 'wpinv_payment_gateways', array( $this, 'register_gateway' ) );
143
-
144
-		$this->enabled = wpinv_is_gateway_active( $this->id );
145
-
146
-		// Enable Subscriptions.
147
-		if ( $this->supports( 'subscription' ) ) {
148
-			add_filter( "wpinv_{$this->id}_support_subscription", '__return_true' );
149
-		}
150
-
151
-		// Enable sandbox.
152
-		if ( $this->supports( 'sandbox' ) ) {
153
-			add_filter( "wpinv_{$this->id}_supports_sandbox", '__return_true' );
154
-		}
155
-
156
-		// Invoice addons.
157
-		if ( $this->supports( 'addons' ) ) {
158
-			add_filter( "getpaid_{$this->id}_supports_addons", '__return_true' );
159
-			add_action( "getpaid_process_{$this->id}_invoice_addons", array( $this, 'process_addons' ), 10, 2 );
160
-		}
161
-
162
-		// Gateway settings.
163
-		add_filter( "wpinv_gateway_settings_{$this->id}", array( $this, 'admin_settings' ) );
16
+    /**
17
+     * Set if the place checkout button should be renamed on selection.
18
+     *
19
+     * @var string
20
+     */
21
+    public $checkout_button_text;
22
+
23
+    /**
24
+     * Boolean whether the method is enabled.
25
+     *
26
+     * @var bool
27
+     */
28
+    public $enabled = true;
29
+
30
+    /**
31
+     * Payment method id.
32
+     *
33
+     * @var string
34
+     */
35
+    public $id;
36
+
37
+    /**
38
+     * Payment method order.
39
+     *
40
+     * @var int
41
+     */
42
+    public $order = 10;
43
+
44
+    /**
45
+     * Payment method title for the frontend.
46
+     *
47
+     * @var string
48
+     */
49
+    public $title;
50
+
51
+    /**
52
+     * Payment method description for the frontend.
53
+     *
54
+     * @var string
55
+     */
56
+    public $description;
57
+
58
+    /**
59
+     * Gateway title.
60
+     *
61
+     * @var string
62
+     */
63
+    public $method_title = '';
64
+
65
+    /**
66
+     * Gateway description.
67
+     *
68
+     * @var string
69
+     */
70
+    public $method_description = '';
71
+
72
+    /**
73
+     * Countries this gateway is allowed for.
74
+     *
75
+     * @var array
76
+     */
77
+    public $countries;
78
+
79
+    /**
80
+     * Currencies this gateway is allowed for.
81
+     *
82
+     * @var array
83
+     */
84
+    public $currencies;
85
+
86
+    /**
87
+     * Currencies this gateway is not allowed for.
88
+     *
89
+     * @var array
90
+     */
91
+    public $exclude_currencies;
92
+
93
+    /**
94
+     * Maximum transaction amount, zero does not define a maximum.
95
+     *
96
+     * @var int
97
+     */
98
+    public $max_amount = 0;
99
+
100
+    /**
101
+     * Optional URL to view a transaction.
102
+     *
103
+     * @var string
104
+     */
105
+    public $view_transaction_url = '';
106
+
107
+    /**
108
+     * Optional URL to view a subscription.
109
+     *
110
+     * @var string
111
+     */
112
+    public $view_subscription_url = '';
113
+
114
+    /**
115
+     * Optional label to show for "new payment method" in the payment
116
+     * method/token selection radio selection.
117
+     *
118
+     * @var string
119
+     */
120
+    public $new_method_label = '';
121
+
122
+    /**
123
+     * Contains a user's saved tokens for this gateway.
124
+     *
125
+     * @var array
126
+     */
127
+    protected $tokens = array();
128
+
129
+    /**
130
+     * An array of features that this gateway supports.
131
+     *
132
+     * @var array
133
+     */
134
+    protected $supports = array();
135
+
136
+    /**
137
+     * Class constructor.
138
+     */
139
+    public function __construct() {
140
+
141
+        // Register gateway.
142
+        add_filter( 'wpinv_payment_gateways', array( $this, 'register_gateway' ) );
143
+
144
+        $this->enabled = wpinv_is_gateway_active( $this->id );
145
+
146
+        // Enable Subscriptions.
147
+        if ( $this->supports( 'subscription' ) ) {
148
+            add_filter( "wpinv_{$this->id}_support_subscription", '__return_true' );
149
+        }
150
+
151
+        // Enable sandbox.
152
+        if ( $this->supports( 'sandbox' ) ) {
153
+            add_filter( "wpinv_{$this->id}_supports_sandbox", '__return_true' );
154
+        }
155
+
156
+        // Invoice addons.
157
+        if ( $this->supports( 'addons' ) ) {
158
+            add_filter( "getpaid_{$this->id}_supports_addons", '__return_true' );
159
+            add_action( "getpaid_process_{$this->id}_invoice_addons", array( $this, 'process_addons' ), 10, 2 );
160
+        }
161
+
162
+        // Gateway settings.
163
+        add_filter( "wpinv_gateway_settings_{$this->id}", array( $this, 'admin_settings' ) );
164 164
 		
165 165
 
166
-		// Gateway checkout fiellds.
167
-		add_action( "wpinv_{$this->id}_cc_form", array( $this, 'payment_fields' ), 10, 2 );
168
-
169
-		// Process payment.
170
-		add_action( "getpaid_gateway_{$this->id}", array( $this, 'process_payment' ), 10, 3 );
166
+        // Gateway checkout fiellds.
167
+        add_action( "wpinv_{$this->id}_cc_form", array( $this, 'payment_fields' ), 10, 2 );
168
+
169
+        // Process payment.
170
+        add_action( "getpaid_gateway_{$this->id}", array( $this, 'process_payment' ), 10, 3 );
171
+
172
+        // Change the checkout button text.
173
+        if ( ! empty( $this->checkout_button_text ) ) {
174
+            add_filter( "getpaid_gateway_{$this->id}_checkout_button_label", array( $this, 'rename_checkout_button' ) );
175
+        }
176
+
177
+        // Check if a gateway is valid for a given currency.
178
+        add_filter( "getpaid_gateway_{$this->id}_is_valid_for_currency", array( $this, 'validate_currency' ), 10, 2 );
179
+
180
+        // Generate the transaction url.
181
+        add_filter( "getpaid_gateway_{$this->id}_transaction_url", array( $this, 'filter_transaction_url' ), 10, 2 );
182
+
183
+        // Generate the subscription url.
184
+        add_filter( "getpaid_gateway_{$this->id}_subscription_url", array( $this, 'filter_subscription_url' ), 10, 2 );
185
+
186
+        // Confirm payments.
187
+        add_filter( "wpinv_payment_confirm_{$this->id}", array( $this, 'confirm_payment' ), 10, 2 );
188
+
189
+        // Verify IPNs.
190
+        add_action( "wpinv_verify_{$this->id}_ipn", array( $this, 'verify_ipn' ) );
191
+
192
+    }
193
+
194
+    /**
195
+     * Checks if this gateway is a given gateway.
196
+     *
197
+     * @since 1.0.19
198
+     * @return bool
199
+     */
200
+    public function is( $gateway ) {
201
+        return $gateway == $this->id;
202
+    }
203
+
204
+    /**
205
+     * Returns a users saved tokens for this gateway.
206
+     *
207
+     * @since 1.0.19
208
+     * @return array
209
+     */
210
+    public function get_tokens( $sandbox = null ) {
211
+
212
+        if ( is_user_logged_in() && $this->supports( 'tokens' ) && 0 == count( $this->tokens ) ) {
213
+            $tokens = get_user_meta( get_current_user_id(), "getpaid_{$this->id}_tokens", true );
214
+
215
+            if ( is_array( $tokens ) ) {
216
+                $this->tokens = $tokens;
217
+            }
218
+
219
+        }
220
+
221
+        if ( ! is_bool( $sandbox ) ) {
222
+            return $this->tokens;
223
+        }
224
+
225
+        $args = array( 'type' => $sandbox ? 'sandbox' : 'live' );
226
+        return wp_list_filter( $this->tokens, $args );
227
+
228
+    }
229
+
230
+    /**
231
+     * Saves a token for this gateway.
232
+     *
233
+     * @since 1.0.19
234
+     */
235
+    public function save_token( $token ) {
236
+
237
+        $tokens   = $this->get_tokens();
238
+        $tokens[] = $token;
239
+
240
+        update_user_meta( get_current_user_id(), "getpaid_{$this->id}_tokens", $tokens );
241
+
242
+        $this->tokens = $tokens;
243
+
244
+    }
245
+
246
+    /**
247
+     * Return the title for admin screens.
248
+     *
249
+     * @return string
250
+     */
251
+    public function get_method_title() {
252
+        return apply_filters( 'getpaid_gateway_method_title', $this->method_title, $this );
253
+    }
254
+
255
+    /**
256
+     * Return the description for admin screens.
257
+     *
258
+     * @return string
259
+     */
260
+    public function get_method_description() {
261
+        return apply_filters( 'getpaid_gateway_method_description', $this->method_description, $this );
262
+    }
263
+
264
+    /**
265
+     * Get the success url.
266
+     *
267
+     * @param WPInv_Invoice $invoice Invoice object.
268
+     * @return string
269
+     */
270
+    public function get_return_url( $invoice ) {
271
+
272
+        // Payment success url
273
+        $return_url = add_query_arg(
274
+            array(
275
+                'payment-confirm' => $this->id,
276
+                'invoice_key'     => $invoice->get_key(),
277
+                'utm_nooverride'  => 1
278
+            ),
279
+            wpinv_get_success_page_uri()
280
+        );
281
+
282
+        return apply_filters( 'getpaid_gateway_success_url', $return_url, $invoice, $this );
283
+    }
284
+
285
+    /**
286
+     * Confirms payments when rendering the success page.
287
+     *
288
+     * @param string $content Success page content.
289
+     * @return string
290
+     */
291
+    public function confirm_payment( $content ) {
292
+
293
+        // Retrieve the invoice.
294
+        $invoice_id = getpaid_get_current_invoice_id();
295
+        $invoice    = wpinv_get_invoice( $invoice_id );
296
+
297
+        // Ensure that it exists and that it is pending payment.
298
+        if ( empty( $invoice_id ) || ! $invoice->needs_payment() ) {
299
+            return $content;
300
+        }
301
+
302
+        // Can the user view this invoice??
303
+        if ( ! wpinv_user_can_view_invoice( $invoice ) ) {
304
+            return $content;
305
+        }
306
+
307
+        // Show payment processing indicator.
308
+        return wpinv_get_template_html( 'wpinv-payment-processing.php', compact( 'invoice' ) );
309
+    }
310
+
311
+    /**
312
+     * Processes ipns and marks payments as complete.
313
+     *
314
+     * @return void
315
+     */
316
+    public function verify_ipn() {}
317
+
318
+    /**
319
+     * Processes invoice addons.
320
+     *
321
+     * @param WPInv_Invoice $invoice
322
+     * @param GetPaid_Form_Item[] $items
323
+     * @return WPInv_Invoice
324
+     */
325
+    public function process_addons( $invoice, $items ) {
326
+
327
+    }
328
+
329
+    /**
330
+     * Get a link to the transaction on the 3rd party gateway site (if applicable).
331
+     *
332
+     * @param string $transaction_url transaction url.
333
+     * @param WPInv_Invoice $invoice Invoice object.
334
+     * @return string transaction URL, or empty string.
335
+     */
336
+    public function filter_transaction_url( $transaction_url, $invoice ) {
337
+
338
+        $transaction_id  = $invoice->get_transaction_id();
339
+
340
+        if ( ! empty( $this->view_transaction_url ) && ! empty( $transaction_id ) ) {
341
+            $transaction_url = sprintf( $this->view_transaction_url, $transaction_id );
342
+            $replace         = $this->is_sandbox( $invoice ) ? 'sandbox' : '';
343
+            $transaction_url = str_replace( '{sandbox}', $replace, $transaction_url );
344
+        }
345
+
346
+        return $transaction_url;
347
+    }
348
+
349
+    /**
350
+     * Get a link to the subscription on the 3rd party gateway site (if applicable).
351
+     *
352
+     * @param string $subscription_url transaction url.
353
+     * @param WPInv_Invoice $invoice Invoice object.
354
+     * @return string subscription URL, or empty string.
355
+     */
356
+    public function filter_subscription_url( $subscription_url, $invoice ) {
171 357
 
172
-		// Change the checkout button text.
173
-		if ( ! empty( $this->checkout_button_text ) ) {
174
-			add_filter( "getpaid_gateway_{$this->id}_checkout_button_label", array( $this, 'rename_checkout_button' ) );
175
-		}
176
-
177
-		// Check if a gateway is valid for a given currency.
178
-		add_filter( "getpaid_gateway_{$this->id}_is_valid_for_currency", array( $this, 'validate_currency' ), 10, 2 );
179
-
180
-		// Generate the transaction url.
181
-		add_filter( "getpaid_gateway_{$this->id}_transaction_url", array( $this, 'filter_transaction_url' ), 10, 2 );
182
-
183
-		// Generate the subscription url.
184
-		add_filter( "getpaid_gateway_{$this->id}_subscription_url", array( $this, 'filter_subscription_url' ), 10, 2 );
185
-
186
-		// Confirm payments.
187
-		add_filter( "wpinv_payment_confirm_{$this->id}", array( $this, 'confirm_payment' ), 10, 2 );
188
-
189
-		// Verify IPNs.
190
-		add_action( "wpinv_verify_{$this->id}_ipn", array( $this, 'verify_ipn' ) );
191
-
192
-	}
193
-
194
-	/**
195
-	 * Checks if this gateway is a given gateway.
196
-	 *
197
-	 * @since 1.0.19
198
-	 * @return bool
199
-	 */
200
-	public function is( $gateway ) {
201
-		return $gateway == $this->id;
202
-	}
203
-
204
-	/**
205
-	 * Returns a users saved tokens for this gateway.
206
-	 *
207
-	 * @since 1.0.19
208
-	 * @return array
209
-	 */
210
-	public function get_tokens( $sandbox = null ) {
211
-
212
-		if ( is_user_logged_in() && $this->supports( 'tokens' ) && 0 == count( $this->tokens ) ) {
213
-			$tokens = get_user_meta( get_current_user_id(), "getpaid_{$this->id}_tokens", true );
214
-
215
-			if ( is_array( $tokens ) ) {
216
-				$this->tokens = $tokens;
217
-			}
218
-
219
-		}
220
-
221
-		if ( ! is_bool( $sandbox ) ) {
222
-			return $this->tokens;
223
-		}
224
-
225
-		$args = array( 'type' => $sandbox ? 'sandbox' : 'live' );
226
-		return wp_list_filter( $this->tokens, $args );
227
-
228
-	}
229
-
230
-	/**
231
-	 * Saves a token for this gateway.
232
-	 *
233
-	 * @since 1.0.19
234
-	 */
235
-	public function save_token( $token ) {
236
-
237
-		$tokens   = $this->get_tokens();
238
-		$tokens[] = $token;
239
-
240
-		update_user_meta( get_current_user_id(), "getpaid_{$this->id}_tokens", $tokens );
241
-
242
-		$this->tokens = $tokens;
243
-
244
-	}
245
-
246
-	/**
247
-	 * Return the title for admin screens.
248
-	 *
249
-	 * @return string
250
-	 */
251
-	public function get_method_title() {
252
-		return apply_filters( 'getpaid_gateway_method_title', $this->method_title, $this );
253
-	}
254
-
255
-	/**
256
-	 * Return the description for admin screens.
257
-	 *
258
-	 * @return string
259
-	 */
260
-	public function get_method_description() {
261
-		return apply_filters( 'getpaid_gateway_method_description', $this->method_description, $this );
262
-	}
263
-
264
-	/**
265
-	 * Get the success url.
266
-	 *
267
-	 * @param WPInv_Invoice $invoice Invoice object.
268
-	 * @return string
269
-	 */
270
-	public function get_return_url( $invoice ) {
271
-
272
-		// Payment success url
273
-		$return_url = add_query_arg(
274
-			array(
275
-				'payment-confirm' => $this->id,
276
-				'invoice_key'     => $invoice->get_key(),
277
-				'utm_nooverride'  => 1
278
-			),
279
-			wpinv_get_success_page_uri()
280
-		);
281
-
282
-		return apply_filters( 'getpaid_gateway_success_url', $return_url, $invoice, $this );
283
-	}
284
-
285
-	/**
286
-	 * Confirms payments when rendering the success page.
287
-	 *
288
-	 * @param string $content Success page content.
289
-	 * @return string
290
-	 */
291
-	public function confirm_payment( $content ) {
292
-
293
-		// Retrieve the invoice.
294
-		$invoice_id = getpaid_get_current_invoice_id();
295
-		$invoice    = wpinv_get_invoice( $invoice_id );
296
-
297
-		// Ensure that it exists and that it is pending payment.
298
-		if ( empty( $invoice_id ) || ! $invoice->needs_payment() ) {
299
-			return $content;
300
-		}
301
-
302
-		// Can the user view this invoice??
303
-		if ( ! wpinv_user_can_view_invoice( $invoice ) ) {
304
-			return $content;
305
-		}
306
-
307
-		// Show payment processing indicator.
308
-		return wpinv_get_template_html( 'wpinv-payment-processing.php', compact( 'invoice' ) );
309
-	}
310
-
311
-	/**
312
-	 * Processes ipns and marks payments as complete.
313
-	 *
314
-	 * @return void
315
-	 */
316
-	public function verify_ipn() {}
317
-
318
-	/**
319
-	 * Processes invoice addons.
320
-	 *
321
-	 * @param WPInv_Invoice $invoice
322
-	 * @param GetPaid_Form_Item[] $items
323
-	 * @return WPInv_Invoice
324
-	 */
325
-	public function process_addons( $invoice, $items ) {
326
-
327
-	}
328
-
329
-	/**
330
-	 * Get a link to the transaction on the 3rd party gateway site (if applicable).
331
-	 *
332
-	 * @param string $transaction_url transaction url.
333
-	 * @param WPInv_Invoice $invoice Invoice object.
334
-	 * @return string transaction URL, or empty string.
335
-	 */
336
-	public function filter_transaction_url( $transaction_url, $invoice ) {
337
-
338
-		$transaction_id  = $invoice->get_transaction_id();
339
-
340
-		if ( ! empty( $this->view_transaction_url ) && ! empty( $transaction_id ) ) {
341
-			$transaction_url = sprintf( $this->view_transaction_url, $transaction_id );
342
-			$replace         = $this->is_sandbox( $invoice ) ? 'sandbox' : '';
343
-			$transaction_url = str_replace( '{sandbox}', $replace, $transaction_url );
344
-		}
345
-
346
-		return $transaction_url;
347
-	}
348
-
349
-	/**
350
-	 * Get a link to the subscription on the 3rd party gateway site (if applicable).
351
-	 *
352
-	 * @param string $subscription_url transaction url.
353
-	 * @param WPInv_Invoice $invoice Invoice object.
354
-	 * @return string subscription URL, or empty string.
355
-	 */
356
-	public function filter_subscription_url( $subscription_url, $invoice ) {
357
-
358
-		$profile_id      = $invoice->get_subscription_id();
359
-
360
-		if ( ! empty( $this->view_subscription_url ) && ! empty( $profile_id ) ) {
361
-
362
-			$subscription_url = sprintf( $this->view_subscription_url, $profile_id );
363
-			$replace          = $this->is_sandbox( $invoice ) ? 'sandbox' : '';
364
-			$subscription_url = str_replace( '{sandbox}', $replace, $subscription_url );
365
-
366
-		}
367
-
368
-		return $subscription_url;
369
-	}
370
-
371
-	/**
372
-	 * Check if the gateway is available for use.
373
-	 *
374
-	 * @return bool
375
-	 */
376
-	public function is_available() {
377
-		return ! empty( $this->enabled );
378
-	}
379
-
380
-	/**
381
-	 * Return the gateway's title.
382
-	 *
383
-	 * @return string
384
-	 */
385
-	public function get_title() {
386
-		return apply_filters( 'getpaid_gateway_title', $this->title, $this );
387
-	}
388
-
389
-	/**
390
-	 * Return the gateway's description.
391
-	 *
392
-	 * @return string
393
-	 */
394
-	public function get_description() {
395
-		return apply_filters( 'getpaid_gateway_description', $this->description, $this );
396
-	}
397
-
398
-	/**
399
-	 * Process Payment.
400
-	 *
401
-	 *
402
-	 * @param WPInv_Invoice $invoice Invoice.
403
-	 * @param array $submission_data Posted checkout fields.
404
-	 * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
405
-	 * @return void
406
-	 */
407
-	public function process_payment( $invoice, $submission_data, $submission ) {
408
-		// Process the payment then either redirect to the success page or the gateway.
409
-		do_action( 'getpaid_process_invoice_payment_' . $this->id, $invoice, $submission_data, $submission );
410
-	}
411
-
412
-	/**
413
-	 * Process refund.
414
-	 *
415
-	 * If the gateway declares 'refunds' support, this will allow it to refund.
416
-	 * a passed in amount.
417
-	 *
418
-	 * @param WPInv_Invoice $invoice Invoice.
419
-	 * @param  float  $amount Refund amount.
420
-	 * @param  string $reason Refund reason.
421
-	 * @return WP_Error|bool True or false based on success, or a WP_Error object.
422
-	 */
423
-	public function process_refund( $invoice, $amount = null, $reason = '' ) {
424
-		return apply_filters( 'getpaid_process_invoice_refund_' . $this->id, false, $invoice, $amount, $reason );
425
-	}
426
-
427
-	/**
428
-	 * Displays the payment fields, credit cards etc.
429
-	 * 
430
-	 * @param int $invoice_id 0 or invoice id.
431
-	 * @param GetPaid_Payment_Form $form Current payment form.
432
-	 */
433
-	public function payment_fields( $invoice_id, $form ) {
434
-		do_action( 'getpaid_getpaid_gateway_payment_fields_' . $this->id, $invoice_id, $form );
435
-	}
436
-
437
-	/**
438
-	 * Filters the gateway settings.
439
-	 * 
440
-	 * @param array $admin_settings
441
-	 */
442
-	public function admin_settings( $admin_settings ) {
443
-		return $admin_settings;
444
-	}
445
-
446
-	/**
447
-	 * Retrieves the value of a gateway setting.
448
-	 * 
449
-	 * @param string $option
450
-	 */
451
-	public function get_option( $option, $default = false ) {
452
-		return wpinv_get_option( $this->id . '_' . $option, $default );
453
-	}
454
-
455
-	/**
456
-	 * Check if a gateway supports a given feature.
457
-	 *
458
-	 * Gateways should override this to declare support (or lack of support) for a feature.
459
-	 * For backward compatibility, gateways support 'products' by default, but nothing else.
460
-	 *
461
-	 * @param string $feature string The name of a feature to test support for.
462
-	 * @return bool True if the gateway supports the feature, false otherwise.
463
-	 * @since 1.0.19
464
-	 */
465
-	public function supports( $feature ) {
466
-		return apply_filters( 'getpaid_payment_gateway_supports', in_array( $feature, $this->supports ), $feature, $this );
467
-	}
468
-
469
-	/**
470
-	 * Returns the credit card form html.
471
-	 * 
472
-	 * @param bool $save whether or not to display the save button.
473
-	 */
358
+        $profile_id      = $invoice->get_subscription_id();
359
+
360
+        if ( ! empty( $this->view_subscription_url ) && ! empty( $profile_id ) ) {
361
+
362
+            $subscription_url = sprintf( $this->view_subscription_url, $profile_id );
363
+            $replace          = $this->is_sandbox( $invoice ) ? 'sandbox' : '';
364
+            $subscription_url = str_replace( '{sandbox}', $replace, $subscription_url );
365
+
366
+        }
367
+
368
+        return $subscription_url;
369
+    }
370
+
371
+    /**
372
+     * Check if the gateway is available for use.
373
+     *
374
+     * @return bool
375
+     */
376
+    public function is_available() {
377
+        return ! empty( $this->enabled );
378
+    }
379
+
380
+    /**
381
+     * Return the gateway's title.
382
+     *
383
+     * @return string
384
+     */
385
+    public function get_title() {
386
+        return apply_filters( 'getpaid_gateway_title', $this->title, $this );
387
+    }
388
+
389
+    /**
390
+     * Return the gateway's description.
391
+     *
392
+     * @return string
393
+     */
394
+    public function get_description() {
395
+        return apply_filters( 'getpaid_gateway_description', $this->description, $this );
396
+    }
397
+
398
+    /**
399
+     * Process Payment.
400
+     *
401
+     *
402
+     * @param WPInv_Invoice $invoice Invoice.
403
+     * @param array $submission_data Posted checkout fields.
404
+     * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
405
+     * @return void
406
+     */
407
+    public function process_payment( $invoice, $submission_data, $submission ) {
408
+        // Process the payment then either redirect to the success page or the gateway.
409
+        do_action( 'getpaid_process_invoice_payment_' . $this->id, $invoice, $submission_data, $submission );
410
+    }
411
+
412
+    /**
413
+     * Process refund.
414
+     *
415
+     * If the gateway declares 'refunds' support, this will allow it to refund.
416
+     * a passed in amount.
417
+     *
418
+     * @param WPInv_Invoice $invoice Invoice.
419
+     * @param  float  $amount Refund amount.
420
+     * @param  string $reason Refund reason.
421
+     * @return WP_Error|bool True or false based on success, or a WP_Error object.
422
+     */
423
+    public function process_refund( $invoice, $amount = null, $reason = '' ) {
424
+        return apply_filters( 'getpaid_process_invoice_refund_' . $this->id, false, $invoice, $amount, $reason );
425
+    }
426
+
427
+    /**
428
+     * Displays the payment fields, credit cards etc.
429
+     * 
430
+     * @param int $invoice_id 0 or invoice id.
431
+     * @param GetPaid_Payment_Form $form Current payment form.
432
+     */
433
+    public function payment_fields( $invoice_id, $form ) {
434
+        do_action( 'getpaid_getpaid_gateway_payment_fields_' . $this->id, $invoice_id, $form );
435
+    }
436
+
437
+    /**
438
+     * Filters the gateway settings.
439
+     * 
440
+     * @param array $admin_settings
441
+     */
442
+    public function admin_settings( $admin_settings ) {
443
+        return $admin_settings;
444
+    }
445
+
446
+    /**
447
+     * Retrieves the value of a gateway setting.
448
+     * 
449
+     * @param string $option
450
+     */
451
+    public function get_option( $option, $default = false ) {
452
+        return wpinv_get_option( $this->id . '_' . $option, $default );
453
+    }
454
+
455
+    /**
456
+     * Check if a gateway supports a given feature.
457
+     *
458
+     * Gateways should override this to declare support (or lack of support) for a feature.
459
+     * For backward compatibility, gateways support 'products' by default, but nothing else.
460
+     *
461
+     * @param string $feature string The name of a feature to test support for.
462
+     * @return bool True if the gateway supports the feature, false otherwise.
463
+     * @since 1.0.19
464
+     */
465
+    public function supports( $feature ) {
466
+        return apply_filters( 'getpaid_payment_gateway_supports', in_array( $feature, $this->supports ), $feature, $this );
467
+    }
468
+
469
+    /**
470
+     * Returns the credit card form html.
471
+     * 
472
+     * @param bool $save whether or not to display the save button.
473
+     */
474 474
     public function get_cc_form( $save = false ) {
475 475
 
476
-		ob_start();
476
+        ob_start();
477 477
 
478 478
         $id_prefix = esc_attr( uniqid( $this->id ) );
479 479
 
@@ -568,11 +568,11 @@  discard block
 block discarded – undo
568 568
                                         'name'              => $this->id . '[cc_cvv2]',
569 569
                                         'id'                => "$id_prefix-cc-cvv2",
570 570
                                         'label'             => __( 'CCV', 'invoicing' ),
571
-										'label_type'        => 'vertical',
572
-										'class'             => 'form-control-sm',
573
-										'extra_attributes'  => array(
574
-											'autocomplete'  => "cc-csc",
575
-										),
571
+                                        'label_type'        => 'vertical',
572
+                                        'class'             => 'form-control-sm',
573
+                                        'extra_attributes'  => array(
574
+                                            'autocomplete'  => "cc-csc",
575
+                                        ),
576 576
                                     )
577 577
                                 );
578 578
                             ?>
@@ -582,191 +582,191 @@  discard block
 block discarded – undo
582 582
 					
583 583
 					<?php
584 584
 
585
-						if ( $save ) {
586
-							echo $this->save_payment_method_checkbox();
587
-						}
585
+                        if ( $save ) {
586
+                            echo $this->save_payment_method_checkbox();
587
+                        }
588 588
 
589
-					?>
589
+                    ?>
590 590
                 </div>
591 591
 
592 592
             </div>
593 593
 		<?php
594 594
 		
595
-		return ob_get_clean();
595
+        return ob_get_clean();
596 596
 
597 597
     }
598 598
 
599
-	/**
600
-	 * Displays a new payment method entry form.
601
-	 *
602
-	 * @since 1.0.19
603
-	 */
604
-	public function new_payment_method_entry( $form ) {
605
-		echo "<div class='getpaid-new-payment-method-form' style='display:none;'>$form</div>";
606
-	}
607
-
608
-	/**
609
-	 * Grab and display our saved payment methods.
610
-	 *
611
-	 * @since 1.0.19
612
-	 */
613
-	public function saved_payment_methods() {
614
-		$html = '<ul class="getpaid-saved-payment-methods list-unstyled m-0 mt-2" data-count="' . esc_attr( count( $this->get_tokens( $this->is_sandbox() ) ) ) . '">';
615
-
616
-		foreach ( $this->get_tokens( $this->is_sandbox() ) as $token ) {
617
-			$html .= $this->get_saved_payment_method_option_html( $token );
618
-		}
619
-
620
-		$html .= $this->get_new_payment_method_option_html();
621
-		$html .= '</ul>';
622
-
623
-		echo apply_filters( 'getpaid_payment_gateway_form_saved_payment_methods_html', $html, $this );
624
-	}
625
-
626
-	/**
627
-	 * Gets saved payment method HTML from a token.
628
-	 *
629
-	 * @since 1.0.19
630
-	 * @param  array $token Payment Token.
631
-	 * @return string Generated payment method HTML
632
-	 */
633
-	public function get_saved_payment_method_option_html( $token ) {
634
-
635
-		return sprintf(
636
-			'<li class="getpaid-payment-method form-group">
599
+    /**
600
+     * Displays a new payment method entry form.
601
+     *
602
+     * @since 1.0.19
603
+     */
604
+    public function new_payment_method_entry( $form ) {
605
+        echo "<div class='getpaid-new-payment-method-form' style='display:none;'>$form</div>";
606
+    }
607
+
608
+    /**
609
+     * Grab and display our saved payment methods.
610
+     *
611
+     * @since 1.0.19
612
+     */
613
+    public function saved_payment_methods() {
614
+        $html = '<ul class="getpaid-saved-payment-methods list-unstyled m-0 mt-2" data-count="' . esc_attr( count( $this->get_tokens( $this->is_sandbox() ) ) ) . '">';
615
+
616
+        foreach ( $this->get_tokens( $this->is_sandbox() ) as $token ) {
617
+            $html .= $this->get_saved_payment_method_option_html( $token );
618
+        }
619
+
620
+        $html .= $this->get_new_payment_method_option_html();
621
+        $html .= '</ul>';
622
+
623
+        echo apply_filters( 'getpaid_payment_gateway_form_saved_payment_methods_html', $html, $this );
624
+    }
625
+
626
+    /**
627
+     * Gets saved payment method HTML from a token.
628
+     *
629
+     * @since 1.0.19
630
+     * @param  array $token Payment Token.
631
+     * @return string Generated payment method HTML
632
+     */
633
+    public function get_saved_payment_method_option_html( $token ) {
634
+
635
+        return sprintf(
636
+            '<li class="getpaid-payment-method form-group">
637 637
 				<label>
638 638
 					<input name="getpaid-%1$s-payment-method" type="radio" value="%2$s" style="width:auto;" class="getpaid-saved-payment-method-token-input" %4$s />
639 639
 					<span>%3$s</span>
640 640
 				</label>
641 641
 			</li>',
642
-			esc_attr( $this->id ),
643
-			esc_attr( $token['id'] ),
644
-			esc_html( $token['name'] ),
645
-			checked( empty( $token['default'] ), false, false )
646
-		);
642
+            esc_attr( $this->id ),
643
+            esc_attr( $token['id'] ),
644
+            esc_html( $token['name'] ),
645
+            checked( empty( $token['default'] ), false, false )
646
+        );
647 647
 
648
-	}
648
+    }
649 649
 
650
-	/**
651
-	 * Displays a radio button for entering a new payment method (new CC details) instead of using a saved method.
652
-	 *
653
-	 * @since 1.0.19
654
-	 */
655
-	public function get_new_payment_method_option_html() {
650
+    /**
651
+     * Displays a radio button for entering a new payment method (new CC details) instead of using a saved method.
652
+     *
653
+     * @since 1.0.19
654
+     */
655
+    public function get_new_payment_method_option_html() {
656 656
 
657
-		$label = apply_filters( 'getpaid_new_payment_method_label', $this->new_method_label ? $this->new_method_label : __( 'Use a new payment method', 'invoicing' ), $this );
657
+        $label = apply_filters( 'getpaid_new_payment_method_label', $this->new_method_label ? $this->new_method_label : __( 'Use a new payment method', 'invoicing' ), $this );
658 658
 
659
-		return sprintf(
660
-			'<li class="getpaid-new-payment-method">
659
+        return sprintf(
660
+            '<li class="getpaid-new-payment-method">
661 661
 				<label>
662 662
 					<input name="getpaid-%1$s-payment-method" type="radio" value="new" style="width:auto;" />
663 663
 					<span>%2$s</span>
664 664
 				</label>
665 665
 			</li>',
666
-			esc_attr( $this->id ),
667
-			esc_html( $label )
668
-		);
669
-
670
-	}
671
-
672
-	/**
673
-	 * Outputs a checkbox for saving a new payment method to the database.
674
-	 *
675
-	 * @since 1.0.19
676
-	 */
677
-	public function save_payment_method_checkbox() {
678
-
679
-		return aui()->input(
680
-			array(
681
-				'type'       => 'checkbox',
682
-				'name'       => esc_attr( "getpaid-$this->id-new-payment-method" ),
683
-				'id'         => esc_attr( uniqid( $this->id ) ),
684
-				'required'   => false,
685
-				'label'      => esc_html__( 'Save payment method', 'invoicing' ),
686
-				'value'      => 'true',
687
-				'checked'    => true,
688
-				'wrap_class' => 'getpaid-save-payment-method pt-1 pb-1',
689
-			)
690
-		);
691
-
692
-	}
693
-
694
-	/**
695
-	 * Registers the gateway.
696
-	 *
697
-	 * @return array
698
-	 */
699
-	public function register_gateway( $gateways ) {
700
-
701
-		$gateways[ $this->id ] = array(
702
-
703
-			'admin_label'    => $this->method_title,
666
+            esc_attr( $this->id ),
667
+            esc_html( $label )
668
+        );
669
+
670
+    }
671
+
672
+    /**
673
+     * Outputs a checkbox for saving a new payment method to the database.
674
+     *
675
+     * @since 1.0.19
676
+     */
677
+    public function save_payment_method_checkbox() {
678
+
679
+        return aui()->input(
680
+            array(
681
+                'type'       => 'checkbox',
682
+                'name'       => esc_attr( "getpaid-$this->id-new-payment-method" ),
683
+                'id'         => esc_attr( uniqid( $this->id ) ),
684
+                'required'   => false,
685
+                'label'      => esc_html__( 'Save payment method', 'invoicing' ),
686
+                'value'      => 'true',
687
+                'checked'    => true,
688
+                'wrap_class' => 'getpaid-save-payment-method pt-1 pb-1',
689
+            )
690
+        );
691
+
692
+    }
693
+
694
+    /**
695
+     * Registers the gateway.
696
+     *
697
+     * @return array
698
+     */
699
+    public function register_gateway( $gateways ) {
700
+
701
+        $gateways[ $this->id ] = array(
702
+
703
+            'admin_label'    => $this->method_title,
704 704
             'checkout_label' => $this->title,
705
-			'ordering'       => $this->order,
705
+            'ordering'       => $this->order,
706 706
 
707
-		);
707
+        );
708 708
 
709
-		return $gateways;
709
+        return $gateways;
710 710
 
711
-	}
711
+    }
712 712
 
713
-	/**
714
-	 * Checks whether or not this is a sandbox request.
715
-	 *
716
-	 * @param  WPInv_Invoice|null $invoice Invoice object or null.
717
-	 * @return bool
718
-	 */
719
-	public function is_sandbox( $invoice = null ) {
713
+    /**
714
+     * Checks whether or not this is a sandbox request.
715
+     *
716
+     * @param  WPInv_Invoice|null $invoice Invoice object or null.
717
+     * @return bool
718
+     */
719
+    public function is_sandbox( $invoice = null ) {
720 720
 
721
-		if ( ! empty( $invoice ) && ! $invoice->needs_payment() ) {
722
-			return $invoice->get_mode() == 'test';
723
-		}
721
+        if ( ! empty( $invoice ) && ! $invoice->needs_payment() ) {
722
+            return $invoice->get_mode() == 'test';
723
+        }
724 724
 
725
-		return wpinv_is_test_mode( $this->id );
725
+        return wpinv_is_test_mode( $this->id );
726 726
 
727
-	}
727
+    }
728 728
 
729
-	/**
730
-	 * Renames the checkout button
731
-	 *
732
-	 * @return string
733
-	 */
734
-	public function rename_checkout_button() {
735
-		return $this->checkout_button_text;
736
-	}
729
+    /**
730
+     * Renames the checkout button
731
+     *
732
+     * @return string
733
+     */
734
+    public function rename_checkout_button() {
735
+        return $this->checkout_button_text;
736
+    }
737 737
 
738
-	/**
739
-	 * Validate gateway currency
740
-	 *
741
-	 * @return bool
742
-	 */
743
-	public function validate_currency( $validation, $currency ) {
738
+    /**
739
+     * Validate gateway currency
740
+     *
741
+     * @return bool
742
+     */
743
+    public function validate_currency( $validation, $currency ) {
744 744
 
745
-		// Required currencies.
746
-		if ( ! empty( $this->currencies ) && ! in_array( $currency, $this->currencies ) ) {
747
-			return false;
748
-		}
745
+        // Required currencies.
746
+        if ( ! empty( $this->currencies ) && ! in_array( $currency, $this->currencies ) ) {
747
+            return false;
748
+        }
749 749
 
750
-		// Excluded currencies.
751
-		if ( ! empty( $this->exclude_currencies ) && in_array( $currency, $this->exclude_currencies ) ) {
752
-			return false;
753
-		}
750
+        // Excluded currencies.
751
+        if ( ! empty( $this->exclude_currencies ) && in_array( $currency, $this->exclude_currencies ) ) {
752
+            return false;
753
+        }
754 754
 
755
-		return $validation;
756
-	}
755
+        return $validation;
756
+    }
757 757
 
758
-	/**
759
-	 * Displays an error
760
-	 *
761
-	 */
762
-	public function show_error( $code, $message, $type ) {
758
+    /**
759
+     * Displays an error
760
+     *
761
+     */
762
+    public function show_error( $code, $message, $type ) {
763 763
 
764
-		if ( is_admin() ) {
765
-			getpaid_admin()->{"show_$type"}( $message );
766
-		}
764
+        if ( is_admin() ) {
765
+            getpaid_admin()->{"show_$type"}( $message );
766
+        }
767 767
 
768
-		wpinv_set_error( $code, $message, $type );
768
+        wpinv_set_error( $code, $message, $type );
769 769
 
770
-	}
770
+    }
771 771
 
772 772
 }
Please login to merge, or discard this patch.
Spacing   +127 added lines, -127 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 
7
-defined( 'ABSPATH' ) || exit;
7
+defined('ABSPATH') || exit;
8 8
 
9 9
 /**
10 10
  * Abstaract Payment Gateway class.
@@ -139,55 +139,55 @@  discard block
 block discarded – undo
139 139
 	public function __construct() {
140 140
 
141 141
 		// Register gateway.
142
-		add_filter( 'wpinv_payment_gateways', array( $this, 'register_gateway' ) );
142
+		add_filter('wpinv_payment_gateways', array($this, 'register_gateway'));
143 143
 
144
-		$this->enabled = wpinv_is_gateway_active( $this->id );
144
+		$this->enabled = wpinv_is_gateway_active($this->id);
145 145
 
146 146
 		// Enable Subscriptions.
147
-		if ( $this->supports( 'subscription' ) ) {
148
-			add_filter( "wpinv_{$this->id}_support_subscription", '__return_true' );
147
+		if ($this->supports('subscription')) {
148
+			add_filter("wpinv_{$this->id}_support_subscription", '__return_true');
149 149
 		}
150 150
 
151 151
 		// Enable sandbox.
152
-		if ( $this->supports( 'sandbox' ) ) {
153
-			add_filter( "wpinv_{$this->id}_supports_sandbox", '__return_true' );
152
+		if ($this->supports('sandbox')) {
153
+			add_filter("wpinv_{$this->id}_supports_sandbox", '__return_true');
154 154
 		}
155 155
 
156 156
 		// Invoice addons.
157
-		if ( $this->supports( 'addons' ) ) {
158
-			add_filter( "getpaid_{$this->id}_supports_addons", '__return_true' );
159
-			add_action( "getpaid_process_{$this->id}_invoice_addons", array( $this, 'process_addons' ), 10, 2 );
157
+		if ($this->supports('addons')) {
158
+			add_filter("getpaid_{$this->id}_supports_addons", '__return_true');
159
+			add_action("getpaid_process_{$this->id}_invoice_addons", array($this, 'process_addons'), 10, 2);
160 160
 		}
161 161
 
162 162
 		// Gateway settings.
163
-		add_filter( "wpinv_gateway_settings_{$this->id}", array( $this, 'admin_settings' ) );
163
+		add_filter("wpinv_gateway_settings_{$this->id}", array($this, 'admin_settings'));
164 164
 		
165 165
 
166 166
 		// Gateway checkout fiellds.
167
-		add_action( "wpinv_{$this->id}_cc_form", array( $this, 'payment_fields' ), 10, 2 );
167
+		add_action("wpinv_{$this->id}_cc_form", array($this, 'payment_fields'), 10, 2);
168 168
 
169 169
 		// Process payment.
170
-		add_action( "getpaid_gateway_{$this->id}", array( $this, 'process_payment' ), 10, 3 );
170
+		add_action("getpaid_gateway_{$this->id}", array($this, 'process_payment'), 10, 3);
171 171
 
172 172
 		// Change the checkout button text.
173
-		if ( ! empty( $this->checkout_button_text ) ) {
174
-			add_filter( "getpaid_gateway_{$this->id}_checkout_button_label", array( $this, 'rename_checkout_button' ) );
173
+		if (!empty($this->checkout_button_text)) {
174
+			add_filter("getpaid_gateway_{$this->id}_checkout_button_label", array($this, 'rename_checkout_button'));
175 175
 		}
176 176
 
177 177
 		// Check if a gateway is valid for a given currency.
178
-		add_filter( "getpaid_gateway_{$this->id}_is_valid_for_currency", array( $this, 'validate_currency' ), 10, 2 );
178
+		add_filter("getpaid_gateway_{$this->id}_is_valid_for_currency", array($this, 'validate_currency'), 10, 2);
179 179
 
180 180
 		// Generate the transaction url.
181
-		add_filter( "getpaid_gateway_{$this->id}_transaction_url", array( $this, 'filter_transaction_url' ), 10, 2 );
181
+		add_filter("getpaid_gateway_{$this->id}_transaction_url", array($this, 'filter_transaction_url'), 10, 2);
182 182
 
183 183
 		// Generate the subscription url.
184
-		add_filter( "getpaid_gateway_{$this->id}_subscription_url", array( $this, 'filter_subscription_url' ), 10, 2 );
184
+		add_filter("getpaid_gateway_{$this->id}_subscription_url", array($this, 'filter_subscription_url'), 10, 2);
185 185
 
186 186
 		// Confirm payments.
187
-		add_filter( "wpinv_payment_confirm_{$this->id}", array( $this, 'confirm_payment' ), 10, 2 );
187
+		add_filter("wpinv_payment_confirm_{$this->id}", array($this, 'confirm_payment'), 10, 2);
188 188
 
189 189
 		// Verify IPNs.
190
-		add_action( "wpinv_verify_{$this->id}_ipn", array( $this, 'verify_ipn' ) );
190
+		add_action("wpinv_verify_{$this->id}_ipn", array($this, 'verify_ipn'));
191 191
 
192 192
 	}
193 193
 
@@ -197,7 +197,7 @@  discard block
 block discarded – undo
197 197
 	 * @since 1.0.19
198 198
 	 * @return bool
199 199
 	 */
200
-	public function is( $gateway ) {
200
+	public function is($gateway) {
201 201
 		return $gateway == $this->id;
202 202
 	}
203 203
 
@@ -207,23 +207,23 @@  discard block
 block discarded – undo
207 207
 	 * @since 1.0.19
208 208
 	 * @return array
209 209
 	 */
210
-	public function get_tokens( $sandbox = null ) {
210
+	public function get_tokens($sandbox = null) {
211 211
 
212
-		if ( is_user_logged_in() && $this->supports( 'tokens' ) && 0 == count( $this->tokens ) ) {
213
-			$tokens = get_user_meta( get_current_user_id(), "getpaid_{$this->id}_tokens", true );
212
+		if (is_user_logged_in() && $this->supports('tokens') && 0 == count($this->tokens)) {
213
+			$tokens = get_user_meta(get_current_user_id(), "getpaid_{$this->id}_tokens", true);
214 214
 
215
-			if ( is_array( $tokens ) ) {
215
+			if (is_array($tokens)) {
216 216
 				$this->tokens = $tokens;
217 217
 			}
218 218
 
219 219
 		}
220 220
 
221
-		if ( ! is_bool( $sandbox ) ) {
221
+		if (!is_bool($sandbox)) {
222 222
 			return $this->tokens;
223 223
 		}
224 224
 
225
-		$args = array( 'type' => $sandbox ? 'sandbox' : 'live' );
226
-		return wp_list_filter( $this->tokens, $args );
225
+		$args = array('type' => $sandbox ? 'sandbox' : 'live');
226
+		return wp_list_filter($this->tokens, $args);
227 227
 
228 228
 	}
229 229
 
@@ -232,12 +232,12 @@  discard block
 block discarded – undo
232 232
 	 *
233 233
 	 * @since 1.0.19
234 234
 	 */
235
-	public function save_token( $token ) {
235
+	public function save_token($token) {
236 236
 
237 237
 		$tokens   = $this->get_tokens();
238 238
 		$tokens[] = $token;
239 239
 
240
-		update_user_meta( get_current_user_id(), "getpaid_{$this->id}_tokens", $tokens );
240
+		update_user_meta(get_current_user_id(), "getpaid_{$this->id}_tokens", $tokens);
241 241
 
242 242
 		$this->tokens = $tokens;
243 243
 
@@ -249,7 +249,7 @@  discard block
 block discarded – undo
249 249
 	 * @return string
250 250
 	 */
251 251
 	public function get_method_title() {
252
-		return apply_filters( 'getpaid_gateway_method_title', $this->method_title, $this );
252
+		return apply_filters('getpaid_gateway_method_title', $this->method_title, $this);
253 253
 	}
254 254
 
255 255
 	/**
@@ -258,7 +258,7 @@  discard block
 block discarded – undo
258 258
 	 * @return string
259 259
 	 */
260 260
 	public function get_method_description() {
261
-		return apply_filters( 'getpaid_gateway_method_description', $this->method_description, $this );
261
+		return apply_filters('getpaid_gateway_method_description', $this->method_description, $this);
262 262
 	}
263 263
 
264 264
 	/**
@@ -267,7 +267,7 @@  discard block
 block discarded – undo
267 267
 	 * @param WPInv_Invoice $invoice Invoice object.
268 268
 	 * @return string
269 269
 	 */
270
-	public function get_return_url( $invoice ) {
270
+	public function get_return_url($invoice) {
271 271
 
272 272
 		// Payment success url
273 273
 		$return_url = add_query_arg(
@@ -279,7 +279,7 @@  discard block
 block discarded – undo
279 279
 			wpinv_get_success_page_uri()
280 280
 		);
281 281
 
282
-		return apply_filters( 'getpaid_gateway_success_url', $return_url, $invoice, $this );
282
+		return apply_filters('getpaid_gateway_success_url', $return_url, $invoice, $this);
283 283
 	}
284 284
 
285 285
 	/**
@@ -288,24 +288,24 @@  discard block
 block discarded – undo
288 288
 	 * @param string $content Success page content.
289 289
 	 * @return string
290 290
 	 */
291
-	public function confirm_payment( $content ) {
291
+	public function confirm_payment($content) {
292 292
 
293 293
 		// Retrieve the invoice.
294 294
 		$invoice_id = getpaid_get_current_invoice_id();
295
-		$invoice    = wpinv_get_invoice( $invoice_id );
295
+		$invoice    = wpinv_get_invoice($invoice_id);
296 296
 
297 297
 		// Ensure that it exists and that it is pending payment.
298
-		if ( empty( $invoice_id ) || ! $invoice->needs_payment() ) {
298
+		if (empty($invoice_id) || !$invoice->needs_payment()) {
299 299
 			return $content;
300 300
 		}
301 301
 
302 302
 		// Can the user view this invoice??
303
-		if ( ! wpinv_user_can_view_invoice( $invoice ) ) {
303
+		if (!wpinv_user_can_view_invoice($invoice)) {
304 304
 			return $content;
305 305
 		}
306 306
 
307 307
 		// Show payment processing indicator.
308
-		return wpinv_get_template_html( 'wpinv-payment-processing.php', compact( 'invoice' ) );
308
+		return wpinv_get_template_html('wpinv-payment-processing.php', compact('invoice'));
309 309
 	}
310 310
 
311 311
 	/**
@@ -322,7 +322,7 @@  discard block
 block discarded – undo
322 322
 	 * @param GetPaid_Form_Item[] $items
323 323
 	 * @return WPInv_Invoice
324 324
 	 */
325
-	public function process_addons( $invoice, $items ) {
325
+	public function process_addons($invoice, $items) {
326 326
 
327 327
 	}
328 328
 
@@ -333,14 +333,14 @@  discard block
 block discarded – undo
333 333
 	 * @param WPInv_Invoice $invoice Invoice object.
334 334
 	 * @return string transaction URL, or empty string.
335 335
 	 */
336
-	public function filter_transaction_url( $transaction_url, $invoice ) {
336
+	public function filter_transaction_url($transaction_url, $invoice) {
337 337
 
338
-		$transaction_id  = $invoice->get_transaction_id();
338
+		$transaction_id = $invoice->get_transaction_id();
339 339
 
340
-		if ( ! empty( $this->view_transaction_url ) && ! empty( $transaction_id ) ) {
341
-			$transaction_url = sprintf( $this->view_transaction_url, $transaction_id );
342
-			$replace         = $this->is_sandbox( $invoice ) ? 'sandbox' : '';
343
-			$transaction_url = str_replace( '{sandbox}', $replace, $transaction_url );
340
+		if (!empty($this->view_transaction_url) && !empty($transaction_id)) {
341
+			$transaction_url = sprintf($this->view_transaction_url, $transaction_id);
342
+			$replace         = $this->is_sandbox($invoice) ? 'sandbox' : '';
343
+			$transaction_url = str_replace('{sandbox}', $replace, $transaction_url);
344 344
 		}
345 345
 
346 346
 		return $transaction_url;
@@ -353,15 +353,15 @@  discard block
 block discarded – undo
353 353
 	 * @param WPInv_Invoice $invoice Invoice object.
354 354
 	 * @return string subscription URL, or empty string.
355 355
 	 */
356
-	public function filter_subscription_url( $subscription_url, $invoice ) {
356
+	public function filter_subscription_url($subscription_url, $invoice) {
357 357
 
358
-		$profile_id      = $invoice->get_subscription_id();
358
+		$profile_id = $invoice->get_subscription_id();
359 359
 
360
-		if ( ! empty( $this->view_subscription_url ) && ! empty( $profile_id ) ) {
360
+		if (!empty($this->view_subscription_url) && !empty($profile_id)) {
361 361
 
362
-			$subscription_url = sprintf( $this->view_subscription_url, $profile_id );
363
-			$replace          = $this->is_sandbox( $invoice ) ? 'sandbox' : '';
364
-			$subscription_url = str_replace( '{sandbox}', $replace, $subscription_url );
362
+			$subscription_url = sprintf($this->view_subscription_url, $profile_id);
363
+			$replace          = $this->is_sandbox($invoice) ? 'sandbox' : '';
364
+			$subscription_url = str_replace('{sandbox}', $replace, $subscription_url);
365 365
 
366 366
 		}
367 367
 
@@ -374,7 +374,7 @@  discard block
 block discarded – undo
374 374
 	 * @return bool
375 375
 	 */
376 376
 	public function is_available() {
377
-		return ! empty( $this->enabled );
377
+		return !empty($this->enabled);
378 378
 	}
379 379
 
380 380
 	/**
@@ -383,7 +383,7 @@  discard block
 block discarded – undo
383 383
 	 * @return string
384 384
 	 */
385 385
 	public function get_title() {
386
-		return apply_filters( 'getpaid_gateway_title', $this->title, $this );
386
+		return apply_filters('getpaid_gateway_title', $this->title, $this);
387 387
 	}
388 388
 
389 389
 	/**
@@ -392,7 +392,7 @@  discard block
 block discarded – undo
392 392
 	 * @return string
393 393
 	 */
394 394
 	public function get_description() {
395
-		return apply_filters( 'getpaid_gateway_description', $this->description, $this );
395
+		return apply_filters('getpaid_gateway_description', $this->description, $this);
396 396
 	}
397 397
 
398 398
 	/**
@@ -404,9 +404,9 @@  discard block
 block discarded – undo
404 404
 	 * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
405 405
 	 * @return void
406 406
 	 */
407
-	public function process_payment( $invoice, $submission_data, $submission ) {
407
+	public function process_payment($invoice, $submission_data, $submission) {
408 408
 		// Process the payment then either redirect to the success page or the gateway.
409
-		do_action( 'getpaid_process_invoice_payment_' . $this->id, $invoice, $submission_data, $submission );
409
+		do_action('getpaid_process_invoice_payment_' . $this->id, $invoice, $submission_data, $submission);
410 410
 	}
411 411
 
412 412
 	/**
@@ -420,8 +420,8 @@  discard block
 block discarded – undo
420 420
 	 * @param  string $reason Refund reason.
421 421
 	 * @return WP_Error|bool True or false based on success, or a WP_Error object.
422 422
 	 */
423
-	public function process_refund( $invoice, $amount = null, $reason = '' ) {
424
-		return apply_filters( 'getpaid_process_invoice_refund_' . $this->id, false, $invoice, $amount, $reason );
423
+	public function process_refund($invoice, $amount = null, $reason = '') {
424
+		return apply_filters('getpaid_process_invoice_refund_' . $this->id, false, $invoice, $amount, $reason);
425 425
 	}
426 426
 
427 427
 	/**
@@ -430,8 +430,8 @@  discard block
 block discarded – undo
430 430
 	 * @param int $invoice_id 0 or invoice id.
431 431
 	 * @param GetPaid_Payment_Form $form Current payment form.
432 432
 	 */
433
-	public function payment_fields( $invoice_id, $form ) {
434
-		do_action( 'getpaid_getpaid_gateway_payment_fields_' . $this->id, $invoice_id, $form );
433
+	public function payment_fields($invoice_id, $form) {
434
+		do_action('getpaid_getpaid_gateway_payment_fields_' . $this->id, $invoice_id, $form);
435 435
 	}
436 436
 
437 437
 	/**
@@ -439,7 +439,7 @@  discard block
 block discarded – undo
439 439
 	 * 
440 440
 	 * @param array $admin_settings
441 441
 	 */
442
-	public function admin_settings( $admin_settings ) {
442
+	public function admin_settings($admin_settings) {
443 443
 		return $admin_settings;
444 444
 	}
445 445
 
@@ -448,8 +448,8 @@  discard block
 block discarded – undo
448 448
 	 * 
449 449
 	 * @param string $option
450 450
 	 */
451
-	public function get_option( $option, $default = false ) {
452
-		return wpinv_get_option( $this->id . '_' . $option, $default );
451
+	public function get_option($option, $default = false) {
452
+		return wpinv_get_option($this->id . '_' . $option, $default);
453 453
 	}
454 454
 
455 455
 	/**
@@ -462,8 +462,8 @@  discard block
 block discarded – undo
462 462
 	 * @return bool True if the gateway supports the feature, false otherwise.
463 463
 	 * @since 1.0.19
464 464
 	 */
465
-	public function supports( $feature ) {
466
-		return apply_filters( 'getpaid_payment_gateway_supports', in_array( $feature, $this->supports ), $feature, $this );
465
+	public function supports($feature) {
466
+		return apply_filters('getpaid_payment_gateway_supports', in_array($feature, $this->supports), $feature, $this);
467 467
 	}
468 468
 
469 469
 	/**
@@ -471,36 +471,36 @@  discard block
 block discarded – undo
471 471
 	 * 
472 472
 	 * @param bool $save whether or not to display the save button.
473 473
 	 */
474
-    public function get_cc_form( $save = false ) {
474
+    public function get_cc_form($save = false) {
475 475
 
476 476
 		ob_start();
477 477
 
478
-        $id_prefix = esc_attr( uniqid( $this->id ) );
478
+        $id_prefix = esc_attr(uniqid($this->id));
479 479
 
480 480
         $months = array(
481
-            '01' => __( 'January', 'invoicing' ),
482
-            '02' => __( 'February', 'invoicing' ),
483
-            '03' => __( 'March', 'invoicing' ),
484
-            '04' => __( 'April', 'invoicing' ),
485
-            '05' => __( 'May', 'invoicing' ),
486
-            '06' => __( 'June', 'invoicing' ),
487
-            '07' => __( 'July', 'invoicing' ),
488
-            '08' => __( 'August', 'invoicing' ),
489
-            '09' => __( 'September', 'invoicing' ),
490
-            '10' => __( 'October', 'invoicing' ),
491
-            '11' => __( 'November', 'invoicing' ),
492
-            '12' => __( 'December', 'invoicing' ),
481
+            '01' => __('January', 'invoicing'),
482
+            '02' => __('February', 'invoicing'),
483
+            '03' => __('March', 'invoicing'),
484
+            '04' => __('April', 'invoicing'),
485
+            '05' => __('May', 'invoicing'),
486
+            '06' => __('June', 'invoicing'),
487
+            '07' => __('July', 'invoicing'),
488
+            '08' => __('August', 'invoicing'),
489
+            '09' => __('September', 'invoicing'),
490
+            '10' => __('October', 'invoicing'),
491
+            '11' => __('November', 'invoicing'),
492
+            '12' => __('December', 'invoicing'),
493 493
         );
494 494
 
495
-        $year  = (int) date( 'Y', current_time( 'timestamp' ) );
495
+        $year  = (int) date('Y', current_time('timestamp'));
496 496
         $years = array();
497 497
 
498
-        for ( $i = 0; $i <= 10; $i++ ) {
499
-            $years[ $year + $i ] = $year + $i;
498
+        for ($i = 0; $i <= 10; $i++) {
499
+            $years[$year + $i] = $year + $i;
500 500
         }
501 501
 
502 502
         ?>
503
-            <div class="<?php echo esc_attr( $this->id );?>-cc-form getpaid-cc-form mt-1">
503
+            <div class="<?php echo esc_attr($this->id); ?>-cc-form getpaid-cc-form mt-1">
504 504
 
505 505
 
506 506
                 <div class="getpaid-cc-card-inner">
@@ -509,14 +509,14 @@  discard block
 block discarded – undo
509 509
                         <div class="col-12">
510 510
 
511 511
 							<div class="form-group">
512
-								<label for="<?php echo esc_attr( "$id_prefix-cc-number" ) ?>"><?php _e( 'Card number', 'invoicing' ); ?></label>
512
+								<label for="<?php echo esc_attr("$id_prefix-cc-number") ?>"><?php _e('Card number', 'invoicing'); ?></label>
513 513
 								<div class="input-group input-group-sm">
514 514
 									<div class="input-group-prepend ">
515 515
 										<span class="input-group-text">
516 516
 											<i class="fa fa-credit-card"></i>
517 517
 										</span>
518 518
 									</div>
519
-									<input type="text" name="<?php echo esc_attr( $this->id . '[cc_number]' ) ?>authorizenet[cc_number]" id="<?php echo esc_attr( "$id_prefix-cc-number" ) ?>" class="form-control form-control-sm" autocomplete="cc-number">
519
+									<input type="text" name="<?php echo esc_attr($this->id . '[cc_number]') ?>authorizenet[cc_number]" id="<?php echo esc_attr("$id_prefix-cc-number") ?>" class="form-control form-control-sm" autocomplete="cc-number">
520 520
 								</div>
521 521
 							</div>
522 522
 
@@ -524,17 +524,17 @@  discard block
 block discarded – undo
524 524
 
525 525
                         <div class="col-12">
526 526
                             <div class="form-group">
527
-                                <label><?php _e( 'Expiration', 'invoicing' ); ?></label>
527
+                                <label><?php _e('Expiration', 'invoicing'); ?></label>
528 528
                                 <div class="form-row">
529 529
 
530 530
                                     <div class="col">
531
-                                        <select class="form-control form-control-sm" autocomplete="cc-exp-month" name="<?php echo esc_attr( $this->id );?>[cc_expire_month]">
532
-                                            <option disabled selected="selected"><?php _e( 'MM', 'invoicing' ); ?></option>
531
+                                        <select class="form-control form-control-sm" autocomplete="cc-exp-month" name="<?php echo esc_attr($this->id); ?>[cc_expire_month]">
532
+                                            <option disabled selected="selected"><?php _e('MM', 'invoicing'); ?></option>
533 533
 
534 534
                                             <?php
535
-                                                foreach ( $months as $key => $month ) {
536
-                                                    $key   = esc_attr( $key );
537
-                                                    $month = wpinv_clean( $month );
535
+                                                foreach ($months as $key => $month) {
536
+                                                    $key   = esc_attr($key);
537
+                                                    $month = wpinv_clean($month);
538 538
                                                     echo "<option value='$key'>$month</option>" . PHP_EOL;
539 539
                                                 }
540 540
                                             ?>
@@ -543,13 +543,13 @@  discard block
 block discarded – undo
543 543
                                     </div>
544 544
 
545 545
                                     <div class="col">
546
-                                        <select class="form-control form-control-sm" autocomplete="cc-exp-year" name="<?php echo esc_attr( $this->id );?>[cc_expire_year]">
547
-                                            <option disabled selected="selected"><?php _e( 'YY', 'invoicing' ); ?></option>
546
+                                        <select class="form-control form-control-sm" autocomplete="cc-exp-year" name="<?php echo esc_attr($this->id); ?>[cc_expire_year]">
547
+                                            <option disabled selected="selected"><?php _e('YY', 'invoicing'); ?></option>
548 548
 
549 549
                                             <?php
550
-                                                foreach ( $years as $key => $year ) {
551
-                                                    $key   = esc_attr( $key );
552
-                                                    $year  = wpinv_clean( $year );
550
+                                                foreach ($years as $key => $year) {
551
+                                                    $key   = esc_attr($key);
552
+                                                    $year  = wpinv_clean($year);
553 553
                                                     echo "<option value='$key'>$year</option>" . PHP_EOL;
554 554
                                                 }
555 555
                                             ?>
@@ -567,7 +567,7 @@  discard block
 block discarded – undo
567 567
                                     array(
568 568
                                         'name'              => $this->id . '[cc_cvv2]',
569 569
                                         'id'                => "$id_prefix-cc-cvv2",
570
-                                        'label'             => __( 'CCV', 'invoicing' ),
570
+                                        'label'             => __('CCV', 'invoicing'),
571 571
 										'label_type'        => 'vertical',
572 572
 										'class'             => 'form-control-sm',
573 573
 										'extra_attributes'  => array(
@@ -582,7 +582,7 @@  discard block
 block discarded – undo
582 582
 					
583 583
 					<?php
584 584
 
585
-						if ( $save ) {
585
+						if ($save) {
586 586
 							echo $this->save_payment_method_checkbox();
587 587
 						}
588 588
 
@@ -601,7 +601,7 @@  discard block
 block discarded – undo
601 601
 	 *
602 602
 	 * @since 1.0.19
603 603
 	 */
604
-	public function new_payment_method_entry( $form ) {
604
+	public function new_payment_method_entry($form) {
605 605
 		echo "<div class='getpaid-new-payment-method-form' style='display:none;'>$form</div>";
606 606
 	}
607 607
 
@@ -611,16 +611,16 @@  discard block
 block discarded – undo
611 611
 	 * @since 1.0.19
612 612
 	 */
613 613
 	public function saved_payment_methods() {
614
-		$html = '<ul class="getpaid-saved-payment-methods list-unstyled m-0 mt-2" data-count="' . esc_attr( count( $this->get_tokens( $this->is_sandbox() ) ) ) . '">';
614
+		$html = '<ul class="getpaid-saved-payment-methods list-unstyled m-0 mt-2" data-count="' . esc_attr(count($this->get_tokens($this->is_sandbox()))) . '">';
615 615
 
616
-		foreach ( $this->get_tokens( $this->is_sandbox() ) as $token ) {
617
-			$html .= $this->get_saved_payment_method_option_html( $token );
616
+		foreach ($this->get_tokens($this->is_sandbox()) as $token) {
617
+			$html .= $this->get_saved_payment_method_option_html($token);
618 618
 		}
619 619
 
620 620
 		$html .= $this->get_new_payment_method_option_html();
621 621
 		$html .= '</ul>';
622 622
 
623
-		echo apply_filters( 'getpaid_payment_gateway_form_saved_payment_methods_html', $html, $this );
623
+		echo apply_filters('getpaid_payment_gateway_form_saved_payment_methods_html', $html, $this);
624 624
 	}
625 625
 
626 626
 	/**
@@ -630,7 +630,7 @@  discard block
 block discarded – undo
630 630
 	 * @param  array $token Payment Token.
631 631
 	 * @return string Generated payment method HTML
632 632
 	 */
633
-	public function get_saved_payment_method_option_html( $token ) {
633
+	public function get_saved_payment_method_option_html($token) {
634 634
 
635 635
 		return sprintf(
636 636
 			'<li class="getpaid-payment-method form-group">
@@ -639,10 +639,10 @@  discard block
 block discarded – undo
639 639
 					<span>%3$s</span>
640 640
 				</label>
641 641
 			</li>',
642
-			esc_attr( $this->id ),
643
-			esc_attr( $token['id'] ),
644
-			esc_html( $token['name'] ),
645
-			checked( empty( $token['default'] ), false, false )
642
+			esc_attr($this->id),
643
+			esc_attr($token['id']),
644
+			esc_html($token['name']),
645
+			checked(empty($token['default']), false, false)
646 646
 		);
647 647
 
648 648
 	}
@@ -654,7 +654,7 @@  discard block
 block discarded – undo
654 654
 	 */
655 655
 	public function get_new_payment_method_option_html() {
656 656
 
657
-		$label = apply_filters( 'getpaid_new_payment_method_label', $this->new_method_label ? $this->new_method_label : __( 'Use a new payment method', 'invoicing' ), $this );
657
+		$label = apply_filters('getpaid_new_payment_method_label', $this->new_method_label ? $this->new_method_label : __('Use a new payment method', 'invoicing'), $this);
658 658
 
659 659
 		return sprintf(
660 660
 			'<li class="getpaid-new-payment-method">
@@ -663,8 +663,8 @@  discard block
 block discarded – undo
663 663
 					<span>%2$s</span>
664 664
 				</label>
665 665
 			</li>',
666
-			esc_attr( $this->id ),
667
-			esc_html( $label )
666
+			esc_attr($this->id),
667
+			esc_html($label)
668 668
 		);
669 669
 
670 670
 	}
@@ -679,10 +679,10 @@  discard block
 block discarded – undo
679 679
 		return aui()->input(
680 680
 			array(
681 681
 				'type'       => 'checkbox',
682
-				'name'       => esc_attr( "getpaid-$this->id-new-payment-method" ),
683
-				'id'         => esc_attr( uniqid( $this->id ) ),
682
+				'name'       => esc_attr("getpaid-$this->id-new-payment-method"),
683
+				'id'         => esc_attr(uniqid($this->id)),
684 684
 				'required'   => false,
685
-				'label'      => esc_html__( 'Save payment method', 'invoicing' ),
685
+				'label'      => esc_html__('Save payment method', 'invoicing'),
686 686
 				'value'      => 'true',
687 687
 				'checked'    => true,
688 688
 				'wrap_class' => 'getpaid-save-payment-method pt-1 pb-1',
@@ -696,9 +696,9 @@  discard block
 block discarded – undo
696 696
 	 *
697 697
 	 * @return array
698 698
 	 */
699
-	public function register_gateway( $gateways ) {
699
+	public function register_gateway($gateways) {
700 700
 
701
-		$gateways[ $this->id ] = array(
701
+		$gateways[$this->id] = array(
702 702
 
703 703
 			'admin_label'    => $this->method_title,
704 704
             'checkout_label' => $this->title,
@@ -716,13 +716,13 @@  discard block
 block discarded – undo
716 716
 	 * @param  WPInv_Invoice|null $invoice Invoice object or null.
717 717
 	 * @return bool
718 718
 	 */
719
-	public function is_sandbox( $invoice = null ) {
719
+	public function is_sandbox($invoice = null) {
720 720
 
721
-		if ( ! empty( $invoice ) && ! $invoice->needs_payment() ) {
721
+		if (!empty($invoice) && !$invoice->needs_payment()) {
722 722
 			return $invoice->get_mode() == 'test';
723 723
 		}
724 724
 
725
-		return wpinv_is_test_mode( $this->id );
725
+		return wpinv_is_test_mode($this->id);
726 726
 
727 727
 	}
728 728
 
@@ -740,15 +740,15 @@  discard block
 block discarded – undo
740 740
 	 *
741 741
 	 * @return bool
742 742
 	 */
743
-	public function validate_currency( $validation, $currency ) {
743
+	public function validate_currency($validation, $currency) {
744 744
 
745 745
 		// Required currencies.
746
-		if ( ! empty( $this->currencies ) && ! in_array( $currency, $this->currencies ) ) {
746
+		if (!empty($this->currencies) && !in_array($currency, $this->currencies)) {
747 747
 			return false;
748 748
 		}
749 749
 
750 750
 		// Excluded currencies.
751
-		if ( ! empty( $this->exclude_currencies ) && in_array( $currency, $this->exclude_currencies ) ) {
751
+		if (!empty($this->exclude_currencies) && in_array($currency, $this->exclude_currencies)) {
752 752
 			return false;
753 753
 		}
754 754
 
@@ -759,13 +759,13 @@  discard block
 block discarded – undo
759 759
 	 * Displays an error
760 760
 	 *
761 761
 	 */
762
-	public function show_error( $code, $message, $type ) {
762
+	public function show_error($code, $message, $type) {
763 763
 
764
-		if ( is_admin() ) {
765
-			getpaid_admin()->{"show_$type"}( $message );
764
+		if (is_admin()) {
765
+			getpaid_admin()->{"show_$type"}($message);
766 766
 		}
767 767
 
768
-		wpinv_set_error( $code, $message, $type );
768
+		wpinv_set_error($code, $message, $type);
769 769
 
770 770
 	}
771 771
 
Please login to merge, or discard this patch.
includes/payments/class-getpaid-form-item.php 2 patches
Indentation   +356 added lines, -356 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 if ( ! defined( 'ABSPATH' ) ) {
3
-	exit;
3
+    exit;
4 4
 }
5 5
 
6 6
 /**
@@ -10,60 +10,60 @@  discard block
 block discarded – undo
10 10
 class GetPaid_Form_Item  extends WPInv_Item {
11 11
 
12 12
     /**
13
-	 * Stores a custom description for the item.
14
-	 *
15
-	 * @var string
16
-	 */
17
-	protected $custom_description = null;
18
-
19
-	/**
20
-	 * Stores the item quantity.
21
-	 *
22
-	 * @var float
23
-	 */
24
-	protected $quantity = 1;
25
-
26
-	/**
27
-	 * Stores the item meta.
28
-	 *
29
-	 * @var array
30
-	 */
31
-	protected $meta = array();
32
-
33
-	/**
34
-	 * Is this item required?
35
-	 *
36
-	 * @var int
37
-	 */
38
-	protected $is_required = true;
39
-
40
-	/**
41
-	 * Are quantities allowed?
42
-	 *
43
-	 * @var int
44
-	 */
45
-	protected $allow_quantities = false;
46
-
47
-	/**
48
-	 * Associated invoice.
49
-	 *
50
-	 * @var int
51
-	 */
52
-	public $invoice_id = 0;
53
-
54
-	/**
55
-	 * Item discount.
56
-	 *
57
-	 * @var float
58
-	 */
59
-	public $item_discount = 0;
60
-
61
-	/**
62
-	 * Item tax.
63
-	 *
64
-	 * @var float
65
-	 */
66
-	public $item_tax = 0;
13
+     * Stores a custom description for the item.
14
+     *
15
+     * @var string
16
+     */
17
+    protected $custom_description = null;
18
+
19
+    /**
20
+     * Stores the item quantity.
21
+     *
22
+     * @var float
23
+     */
24
+    protected $quantity = 1;
25
+
26
+    /**
27
+     * Stores the item meta.
28
+     *
29
+     * @var array
30
+     */
31
+    protected $meta = array();
32
+
33
+    /**
34
+     * Is this item required?
35
+     *
36
+     * @var int
37
+     */
38
+    protected $is_required = true;
39
+
40
+    /**
41
+     * Are quantities allowed?
42
+     *
43
+     * @var int
44
+     */
45
+    protected $allow_quantities = false;
46
+
47
+    /**
48
+     * Associated invoice.
49
+     *
50
+     * @var int
51
+     */
52
+    public $invoice_id = 0;
53
+
54
+    /**
55
+     * Item discount.
56
+     *
57
+     * @var float
58
+     */
59
+    public $item_discount = 0;
60
+
61
+    /**
62
+     * Item tax.
63
+     *
64
+     * @var float
65
+     */
66
+    public $item_tax = 0;
67 67
 
68 68
     /*
69 69
 	|--------------------------------------------------------------------------
@@ -81,234 +81,234 @@  discard block
 block discarded – undo
81 81
     */
82 82
 
83 83
     /**
84
-	 * Get the item name.
85
-	 *
86
-	 * @since 1.0.19
87
-	 * @param  string $context View or edit context.
88
-	 * @return string
89
-	 */
90
-	public function get_name( $context = 'view' ) {
91
-		$name = parent::get_name( $context );
92
-		return $name . wpinv_get_item_suffix( $this );
93
-	}
94
-
95
-	/**
96
-	 * Get the item name without a suffix.
97
-	 *
98
-	 * @since 1.0.19
99
-	 * @param  string $context View or edit context.
100
-	 * @return string
101
-	 */
102
-	public function get_raw_name( $context = 'view' ) {
103
-		return parent::get_name( $context );
104
-	}
105
-
106
-	/**
107
-	 * Get the item description.
108
-	 *
109
-	 * @since 1.0.19
110
-	 * @param  string $context View or edit context.
111
-	 * @return string
112
-	 */
113
-	public function get_description( $context = 'view' ) {
114
-
115
-		if ( isset( $this->custom_description ) ) {
116
-			return $this->custom_description;
117
-		}
118
-
119
-		return parent::get_description( $context );
120
-	}
121
-
122
-	/**
123
-	 * Returns the sub total.
124
-	 *
125
-	 * @since 1.0.19
126
-	 * @param  string $context View or edit context.
127
-	 * @return float
128
-	 */
129
-	public function get_sub_total( $context = 'view' ) {
130
-		return $this->get_quantity( $context ) * $this->get_initial_price( $context );
131
-	}
132
-
133
-	/**
134
-	 * Returns the recurring sub total.
135
-	 *
136
-	 * @since 1.0.19
137
-	 * @param  string $context View or edit context.
138
-	 * @return float
139
-	 */
140
-	public function get_recurring_sub_total( $context = 'view' ) {
141
-
142
-		if ( $this->is_recurring() ) {
143
-			return $this->get_quantity( $context ) * $this->get_price( $context );
144
-		}
145
-
146
-		return 0;
147
-	}
148
-
149
-	/**
150
-	 * @deprecated
151
-	 */
152
-	public function get_qantity( $context = 'view' ) {
153
-		return $this->get_quantity( $context );
154
-	}
155
-
156
-	/**
157
-	 * Get the item quantity.
158
-	 *
159
-	 * @since 1.0.19
160
-	 * @param  string $context View or edit context.
161
-	 * @return float
162
-	 */
163
-	public function get_quantity( $context = 'view' ) {
164
-		$quantity = (float) $this->quantity;
165
-
166
-		if ( empty( $quantity ) || 1 > $quantity ) {
167
-			$quantity = 1;
168
-		}
169
-
170
-		if ( 'view' == $context ) {
171
-			return apply_filters( 'getpaid_payment_form_item_quantity', $quantity, $this );
172
-		}
173
-
174
-		return $quantity;
175
-
176
-	}
177
-
178
-	/**
179
-	 * Get the item meta data.
180
-	 *
181
-	 * @since 1.0.19
182
-	 * @param  string $context View or edit context.
183
-	 * @return meta
184
-	 */
185
-	public function get_item_meta( $context = 'view' ) {
186
-		$meta = $this->meta;
187
-
188
-		if ( 'view' == $context ) {
189
-			return apply_filters( 'getpaid_payment_form_item_meta', $meta, $this );
190
-		}
191
-
192
-		return $meta;
193
-
194
-	}
195
-
196
-	/**
197
-	 * Returns whether or not customers can update the item quantity.
198
-	 *
199
-	 * @since 1.0.19
200
-	 * @param  string $context View or edit context.
201
-	 * @return bool
202
-	 */
203
-	public function get_allow_quantities( $context = 'view' ) {
204
-		$allow_quantities = (bool) $this->allow_quantities;
205
-
206
-		if ( 'view' == $context ) {
207
-			return apply_filters( 'getpaid_payment_form_item_allow_quantities', $allow_quantities, $this );
208
-		}
209
-
210
-		return $allow_quantities;
211
-
212
-	}
213
-
214
-	/**
215
-	 * Returns whether or not the item is required.
216
-	 *
217
-	 * @since 1.0.19
218
-	 * @param  string $context View or edit context.
219
-	 * @return bool
220
-	 */
221
-	public function get_is_required( $context = 'view' ) {
222
-		$is_required = (bool) $this->is_required;
223
-
224
-		if ( 'view' == $context ) {
225
-			return apply_filters( 'getpaid_payment_form_item_is_required', $is_required, $this );
226
-		}
227
-
228
-		return $is_required;
229
-
230
-	}
231
-
232
-	/**
233
-	 * Prepares form data for use.
234
-	 *
235
-	 * @since 1.0.19
236
-	 * @return array
237
-	 */
238
-	public function prepare_data_for_use( $required = null ) {
239
-
240
-		$required = is_null( $required ) ? $this->is_required() : $required;
241
-		return array(
242
-			'title'            => strip_tags( $this->get_name() ),
243
-			'id'               => $this->get_id(),
244
-			'price'            => $this->get_price(),
245
-			'recurring'        => $this->is_recurring(),
246
-			'description'      => $this->get_description(),
247
-			'allow_quantities' => $this->allows_quantities(),
248
-			'required'         => $required,
249
-		);
250
-
251
-	}
252
-
253
-	/**
254
-	 * Prepares form data for ajax use.
255
-	 *
256
-	 * @since 1.0.19
257
-	 * @return array
258
-	 */
259
-	public function prepare_data_for_invoice_edit_ajax( $currency = '', $is_renewal = false ) {
260
-
261
-		$description = getpaid_item_recurring_price_help_text( $this, $currency );
262
-
263
-		if ( $description ) {
264
-			$description = "<div class='getpaid-subscription-help-text'>$description</div>";
265
-		}
266
-
267
-		$price    = ! $is_renewal ? $this->get_price() : $this->get_recurring_price();
268
-		$subtotal = ! $is_renewal ? $this->get_sub_total() : $this->get_recurring_sub_total();
269
-		return array(
270
-			'id'     => $this->get_id(),
271
-			'texts'  => array(
272
-				'item-name'        => sanitize_text_field( $this->get_name() ),
273
-				'item-description' => wp_kses_post( $this->get_description() ) . $description,
274
-				'item-quantity'    => floatval( $this->get_quantity() ),
275
-				'item-price'       => wpinv_price( $price, $currency ),
276
-				'item-total'       => wpinv_price( $subtotal, $currency ),
277
-			),
278
-			'inputs' => array(
279
-				'item-id'          => $this->get_id(),
280
-				'item-name'        => sanitize_text_field( $this->get_name() ),
281
-				'item-description' => wp_kses_post( $this->get_description() ),
282
-				'item-quantity'    => floatval( $this->get_quantity() ),
283
-				'item-price'       => $price,
284
-			)
285
-		);
286
-
287
-	}
288
-
289
-	/**
290
-	 * Prepares form data for saving (cart_details).
291
-	 *
292
-	 * @since 1.0.19
293
-	 * @return array
294
-	 */
295
-	public function prepare_data_for_saving() {
296
-
297
-		return array(
298
-			'post_id'           => $this->invoice_id,
299
-			'item_id'           => $this->get_id(),
300
-			'item_name'         => sanitize_text_field( $this->get_raw_name() ),
301
-			'item_description'  => $this->get_description(),
302
-			'tax'               => $this->item_tax,
303
-			'item_price'        => $this->get_price(),
304
-			'quantity'          => (float) $this->get_quantity(),
305
-			'discount'          => $this->item_discount,
306
-			'subtotal'          => $this->get_sub_total(),
307
-			'price'             => $this->get_sub_total() + $this->item_tax + $this->item_discount,
308
-			'meta'              => $this->get_item_meta(),
309
-		);
310
-
311
-	}
84
+     * Get the item name.
85
+     *
86
+     * @since 1.0.19
87
+     * @param  string $context View or edit context.
88
+     * @return string
89
+     */
90
+    public function get_name( $context = 'view' ) {
91
+        $name = parent::get_name( $context );
92
+        return $name . wpinv_get_item_suffix( $this );
93
+    }
94
+
95
+    /**
96
+     * Get the item name without a suffix.
97
+     *
98
+     * @since 1.0.19
99
+     * @param  string $context View or edit context.
100
+     * @return string
101
+     */
102
+    public function get_raw_name( $context = 'view' ) {
103
+        return parent::get_name( $context );
104
+    }
105
+
106
+    /**
107
+     * Get the item description.
108
+     *
109
+     * @since 1.0.19
110
+     * @param  string $context View or edit context.
111
+     * @return string
112
+     */
113
+    public function get_description( $context = 'view' ) {
114
+
115
+        if ( isset( $this->custom_description ) ) {
116
+            return $this->custom_description;
117
+        }
118
+
119
+        return parent::get_description( $context );
120
+    }
121
+
122
+    /**
123
+     * Returns the sub total.
124
+     *
125
+     * @since 1.0.19
126
+     * @param  string $context View or edit context.
127
+     * @return float
128
+     */
129
+    public function get_sub_total( $context = 'view' ) {
130
+        return $this->get_quantity( $context ) * $this->get_initial_price( $context );
131
+    }
132
+
133
+    /**
134
+     * Returns the recurring sub total.
135
+     *
136
+     * @since 1.0.19
137
+     * @param  string $context View or edit context.
138
+     * @return float
139
+     */
140
+    public function get_recurring_sub_total( $context = 'view' ) {
141
+
142
+        if ( $this->is_recurring() ) {
143
+            return $this->get_quantity( $context ) * $this->get_price( $context );
144
+        }
145
+
146
+        return 0;
147
+    }
148
+
149
+    /**
150
+     * @deprecated
151
+     */
152
+    public function get_qantity( $context = 'view' ) {
153
+        return $this->get_quantity( $context );
154
+    }
155
+
156
+    /**
157
+     * Get the item quantity.
158
+     *
159
+     * @since 1.0.19
160
+     * @param  string $context View or edit context.
161
+     * @return float
162
+     */
163
+    public function get_quantity( $context = 'view' ) {
164
+        $quantity = (float) $this->quantity;
165
+
166
+        if ( empty( $quantity ) || 1 > $quantity ) {
167
+            $quantity = 1;
168
+        }
169
+
170
+        if ( 'view' == $context ) {
171
+            return apply_filters( 'getpaid_payment_form_item_quantity', $quantity, $this );
172
+        }
173
+
174
+        return $quantity;
175
+
176
+    }
177
+
178
+    /**
179
+     * Get the item meta data.
180
+     *
181
+     * @since 1.0.19
182
+     * @param  string $context View or edit context.
183
+     * @return meta
184
+     */
185
+    public function get_item_meta( $context = 'view' ) {
186
+        $meta = $this->meta;
187
+
188
+        if ( 'view' == $context ) {
189
+            return apply_filters( 'getpaid_payment_form_item_meta', $meta, $this );
190
+        }
191
+
192
+        return $meta;
193
+
194
+    }
195
+
196
+    /**
197
+     * Returns whether or not customers can update the item quantity.
198
+     *
199
+     * @since 1.0.19
200
+     * @param  string $context View or edit context.
201
+     * @return bool
202
+     */
203
+    public function get_allow_quantities( $context = 'view' ) {
204
+        $allow_quantities = (bool) $this->allow_quantities;
205
+
206
+        if ( 'view' == $context ) {
207
+            return apply_filters( 'getpaid_payment_form_item_allow_quantities', $allow_quantities, $this );
208
+        }
209
+
210
+        return $allow_quantities;
211
+
212
+    }
213
+
214
+    /**
215
+     * Returns whether or not the item is required.
216
+     *
217
+     * @since 1.0.19
218
+     * @param  string $context View or edit context.
219
+     * @return bool
220
+     */
221
+    public function get_is_required( $context = 'view' ) {
222
+        $is_required = (bool) $this->is_required;
223
+
224
+        if ( 'view' == $context ) {
225
+            return apply_filters( 'getpaid_payment_form_item_is_required', $is_required, $this );
226
+        }
227
+
228
+        return $is_required;
229
+
230
+    }
231
+
232
+    /**
233
+     * Prepares form data for use.
234
+     *
235
+     * @since 1.0.19
236
+     * @return array
237
+     */
238
+    public function prepare_data_for_use( $required = null ) {
239
+
240
+        $required = is_null( $required ) ? $this->is_required() : $required;
241
+        return array(
242
+            'title'            => strip_tags( $this->get_name() ),
243
+            'id'               => $this->get_id(),
244
+            'price'            => $this->get_price(),
245
+            'recurring'        => $this->is_recurring(),
246
+            'description'      => $this->get_description(),
247
+            'allow_quantities' => $this->allows_quantities(),
248
+            'required'         => $required,
249
+        );
250
+
251
+    }
252
+
253
+    /**
254
+     * Prepares form data for ajax use.
255
+     *
256
+     * @since 1.0.19
257
+     * @return array
258
+     */
259
+    public function prepare_data_for_invoice_edit_ajax( $currency = '', $is_renewal = false ) {
260
+
261
+        $description = getpaid_item_recurring_price_help_text( $this, $currency );
262
+
263
+        if ( $description ) {
264
+            $description = "<div class='getpaid-subscription-help-text'>$description</div>";
265
+        }
266
+
267
+        $price    = ! $is_renewal ? $this->get_price() : $this->get_recurring_price();
268
+        $subtotal = ! $is_renewal ? $this->get_sub_total() : $this->get_recurring_sub_total();
269
+        return array(
270
+            'id'     => $this->get_id(),
271
+            'texts'  => array(
272
+                'item-name'        => sanitize_text_field( $this->get_name() ),
273
+                'item-description' => wp_kses_post( $this->get_description() ) . $description,
274
+                'item-quantity'    => floatval( $this->get_quantity() ),
275
+                'item-price'       => wpinv_price( $price, $currency ),
276
+                'item-total'       => wpinv_price( $subtotal, $currency ),
277
+            ),
278
+            'inputs' => array(
279
+                'item-id'          => $this->get_id(),
280
+                'item-name'        => sanitize_text_field( $this->get_name() ),
281
+                'item-description' => wp_kses_post( $this->get_description() ),
282
+                'item-quantity'    => floatval( $this->get_quantity() ),
283
+                'item-price'       => $price,
284
+            )
285
+        );
286
+
287
+    }
288
+
289
+    /**
290
+     * Prepares form data for saving (cart_details).
291
+     *
292
+     * @since 1.0.19
293
+     * @return array
294
+     */
295
+    public function prepare_data_for_saving() {
296
+
297
+        return array(
298
+            'post_id'           => $this->invoice_id,
299
+            'item_id'           => $this->get_id(),
300
+            'item_name'         => sanitize_text_field( $this->get_raw_name() ),
301
+            'item_description'  => $this->get_description(),
302
+            'tax'               => $this->item_tax,
303
+            'item_price'        => $this->get_price(),
304
+            'quantity'          => (float) $this->get_quantity(),
305
+            'discount'          => $this->item_discount,
306
+            'subtotal'          => $this->get_sub_total(),
307
+            'price'             => $this->get_sub_total() + $this->item_tax + $this->item_discount,
308
+            'meta'              => $this->get_item_meta(),
309
+        );
310
+
311
+    }
312 312
 
313 313
     /*
314 314
 	|--------------------------------------------------------------------------
@@ -320,70 +320,70 @@  discard block
 block discarded – undo
320 320
 	| object.
321 321
     */
322 322
 
323
-	/**
324
-	 * Set the item qantity.
325
-	 *
326
-	 * @since 1.0.19
327
-	 * @param  float $quantity The item quantity.
328
-	 */
329
-	public function set_quantity( $quantity ) {
330
-
331
-		if ( empty( $quantity ) || ! is_numeric( $quantity ) ) {
332
-			$quantity = 1;
333
-		}
334
-
335
-		$this->quantity = (float) $quantity;
336
-
337
-	}
338
-
339
-	/**
340
-	 * Set the item meta data.
341
-	 *
342
-	 * @since 1.0.19
343
-	 * @param  array $meta The item meta data.
344
-	 */
345
-	public function set_item_meta( $meta ) {
346
-		$this->meta = maybe_unserialize( $meta );
347
-	}
348
-
349
-	/**
350
-	 * Set whether or not the quantities are allowed.
351
-	 *
352
-	 * @since 1.0.19
353
-	 * @param  bool $allow_quantities
354
-	 */
355
-	public function set_allow_quantities( $allow_quantities ) {
356
-		$this->allow_quantities = (bool) $allow_quantities;
357
-	}
358
-
359
-	/**
360
-	 * Set whether or not the item is required.
361
-	 *
362
-	 * @since 1.0.19
363
-	 * @param  bool $is_required
364
-	 */
365
-	public function set_is_required( $is_required ) {
366
-		$this->is_required = (bool) $is_required;
367
-	}
368
-
369
-	/**
370
-	 * Sets the custom item description.
371
-	 *
372
-	 * @since 1.0.19
373
-	 * @param  string $description
374
-	 */
375
-	public function set_custom_description( $description ) {
376
-		$this->custom_description = $description;
377
-	}
323
+    /**
324
+     * Set the item qantity.
325
+     *
326
+     * @since 1.0.19
327
+     * @param  float $quantity The item quantity.
328
+     */
329
+    public function set_quantity( $quantity ) {
330
+
331
+        if ( empty( $quantity ) || ! is_numeric( $quantity ) ) {
332
+            $quantity = 1;
333
+        }
334
+
335
+        $this->quantity = (float) $quantity;
336
+
337
+    }
338
+
339
+    /**
340
+     * Set the item meta data.
341
+     *
342
+     * @since 1.0.19
343
+     * @param  array $meta The item meta data.
344
+     */
345
+    public function set_item_meta( $meta ) {
346
+        $this->meta = maybe_unserialize( $meta );
347
+    }
348
+
349
+    /**
350
+     * Set whether or not the quantities are allowed.
351
+     *
352
+     * @since 1.0.19
353
+     * @param  bool $allow_quantities
354
+     */
355
+    public function set_allow_quantities( $allow_quantities ) {
356
+        $this->allow_quantities = (bool) $allow_quantities;
357
+    }
358
+
359
+    /**
360
+     * Set whether or not the item is required.
361
+     *
362
+     * @since 1.0.19
363
+     * @param  bool $is_required
364
+     */
365
+    public function set_is_required( $is_required ) {
366
+        $this->is_required = (bool) $is_required;
367
+    }
368
+
369
+    /**
370
+     * Sets the custom item description.
371
+     *
372
+     * @since 1.0.19
373
+     * @param  string $description
374
+     */
375
+    public function set_custom_description( $description ) {
376
+        $this->custom_description = $description;
377
+    }
378 378
 
379 379
     /**
380 380
      * We do not want to save items to the database.
381 381
      * 
382
-	 * @return int item id
382
+     * @return int item id
383 383
      */
384 384
     public function save( $data = array() ) {
385 385
         return $this->get_id();
386
-	}
386
+    }
387 387
 
388 388
     /*
389 389
 	|--------------------------------------------------------------------------
@@ -395,23 +395,23 @@  discard block
 block discarded – undo
395 395
 	*/
396 396
 
397 397
     /**
398
-	 * Checks whether the item has enabled dynamic pricing.
399
-	 *
400
-	 * @since 1.0.19
401
-	 * @return bool
402
-	 */
403
-	public function is_required() {
398
+     * Checks whether the item has enabled dynamic pricing.
399
+     *
400
+     * @since 1.0.19
401
+     * @return bool
402
+     */
403
+    public function is_required() {
404 404
         return (bool) $this->get_is_required();
405
-	}
406
-
407
-	/**
408
-	 * Checks whether users can edit the quantities.
409
-	 *
410
-	 * @since 1.0.19
411
-	 * @return bool
412
-	 */
413
-	public function allows_quantities() {
405
+    }
406
+
407
+    /**
408
+     * Checks whether users can edit the quantities.
409
+     *
410
+     * @since 1.0.19
411
+     * @return bool
412
+     */
413
+    public function allows_quantities() {
414 414
         return (bool) $this->get_allow_quantities();
415
-	}
415
+    }
416 416
 
417 417
 }
Please login to merge, or discard this patch.
Spacing   +54 added lines, -54 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if (!defined('ABSPATH')) {
3 3
 	exit;
4 4
 }
5 5
 
@@ -87,9 +87,9 @@  discard block
 block discarded – undo
87 87
 	 * @param  string $context View or edit context.
88 88
 	 * @return string
89 89
 	 */
90
-	public function get_name( $context = 'view' ) {
91
-		$name = parent::get_name( $context );
92
-		return $name . wpinv_get_item_suffix( $this );
90
+	public function get_name($context = 'view') {
91
+		$name = parent::get_name($context);
92
+		return $name . wpinv_get_item_suffix($this);
93 93
 	}
94 94
 
95 95
 	/**
@@ -99,8 +99,8 @@  discard block
 block discarded – undo
99 99
 	 * @param  string $context View or edit context.
100 100
 	 * @return string
101 101
 	 */
102
-	public function get_raw_name( $context = 'view' ) {
103
-		return parent::get_name( $context );
102
+	public function get_raw_name($context = 'view') {
103
+		return parent::get_name($context);
104 104
 	}
105 105
 
106 106
 	/**
@@ -110,13 +110,13 @@  discard block
 block discarded – undo
110 110
 	 * @param  string $context View or edit context.
111 111
 	 * @return string
112 112
 	 */
113
-	public function get_description( $context = 'view' ) {
113
+	public function get_description($context = 'view') {
114 114
 
115
-		if ( isset( $this->custom_description ) ) {
115
+		if (isset($this->custom_description)) {
116 116
 			return $this->custom_description;
117 117
 		}
118 118
 
119
-		return parent::get_description( $context );
119
+		return parent::get_description($context);
120 120
 	}
121 121
 
122 122
 	/**
@@ -126,8 +126,8 @@  discard block
 block discarded – undo
126 126
 	 * @param  string $context View or edit context.
127 127
 	 * @return float
128 128
 	 */
129
-	public function get_sub_total( $context = 'view' ) {
130
-		return $this->get_quantity( $context ) * $this->get_initial_price( $context );
129
+	public function get_sub_total($context = 'view') {
130
+		return $this->get_quantity($context) * $this->get_initial_price($context);
131 131
 	}
132 132
 
133 133
 	/**
@@ -137,10 +137,10 @@  discard block
 block discarded – undo
137 137
 	 * @param  string $context View or edit context.
138 138
 	 * @return float
139 139
 	 */
140
-	public function get_recurring_sub_total( $context = 'view' ) {
140
+	public function get_recurring_sub_total($context = 'view') {
141 141
 
142
-		if ( $this->is_recurring() ) {
143
-			return $this->get_quantity( $context ) * $this->get_price( $context );
142
+		if ($this->is_recurring()) {
143
+			return $this->get_quantity($context) * $this->get_price($context);
144 144
 		}
145 145
 
146 146
 		return 0;
@@ -149,8 +149,8 @@  discard block
 block discarded – undo
149 149
 	/**
150 150
 	 * @deprecated
151 151
 	 */
152
-	public function get_qantity( $context = 'view' ) {
153
-		return $this->get_quantity( $context );
152
+	public function get_qantity($context = 'view') {
153
+		return $this->get_quantity($context);
154 154
 	}
155 155
 
156 156
 	/**
@@ -160,15 +160,15 @@  discard block
 block discarded – undo
160 160
 	 * @param  string $context View or edit context.
161 161
 	 * @return float
162 162
 	 */
163
-	public function get_quantity( $context = 'view' ) {
163
+	public function get_quantity($context = 'view') {
164 164
 		$quantity = (float) $this->quantity;
165 165
 
166
-		if ( empty( $quantity ) || 1 > $quantity ) {
166
+		if (empty($quantity) || 1 > $quantity) {
167 167
 			$quantity = 1;
168 168
 		}
169 169
 
170
-		if ( 'view' == $context ) {
171
-			return apply_filters( 'getpaid_payment_form_item_quantity', $quantity, $this );
170
+		if ('view' == $context) {
171
+			return apply_filters('getpaid_payment_form_item_quantity', $quantity, $this);
172 172
 		}
173 173
 
174 174
 		return $quantity;
@@ -182,11 +182,11 @@  discard block
 block discarded – undo
182 182
 	 * @param  string $context View or edit context.
183 183
 	 * @return meta
184 184
 	 */
185
-	public function get_item_meta( $context = 'view' ) {
185
+	public function get_item_meta($context = 'view') {
186 186
 		$meta = $this->meta;
187 187
 
188
-		if ( 'view' == $context ) {
189
-			return apply_filters( 'getpaid_payment_form_item_meta', $meta, $this );
188
+		if ('view' == $context) {
189
+			return apply_filters('getpaid_payment_form_item_meta', $meta, $this);
190 190
 		}
191 191
 
192 192
 		return $meta;
@@ -200,11 +200,11 @@  discard block
 block discarded – undo
200 200
 	 * @param  string $context View or edit context.
201 201
 	 * @return bool
202 202
 	 */
203
-	public function get_allow_quantities( $context = 'view' ) {
203
+	public function get_allow_quantities($context = 'view') {
204 204
 		$allow_quantities = (bool) $this->allow_quantities;
205 205
 
206
-		if ( 'view' == $context ) {
207
-			return apply_filters( 'getpaid_payment_form_item_allow_quantities', $allow_quantities, $this );
206
+		if ('view' == $context) {
207
+			return apply_filters('getpaid_payment_form_item_allow_quantities', $allow_quantities, $this);
208 208
 		}
209 209
 
210 210
 		return $allow_quantities;
@@ -218,11 +218,11 @@  discard block
 block discarded – undo
218 218
 	 * @param  string $context View or edit context.
219 219
 	 * @return bool
220 220
 	 */
221
-	public function get_is_required( $context = 'view' ) {
221
+	public function get_is_required($context = 'view') {
222 222
 		$is_required = (bool) $this->is_required;
223 223
 
224
-		if ( 'view' == $context ) {
225
-			return apply_filters( 'getpaid_payment_form_item_is_required', $is_required, $this );
224
+		if ('view' == $context) {
225
+			return apply_filters('getpaid_payment_form_item_is_required', $is_required, $this);
226 226
 		}
227 227
 
228 228
 		return $is_required;
@@ -235,11 +235,11 @@  discard block
 block discarded – undo
235 235
 	 * @since 1.0.19
236 236
 	 * @return array
237 237
 	 */
238
-	public function prepare_data_for_use( $required = null ) {
238
+	public function prepare_data_for_use($required = null) {
239 239
 
240
-		$required = is_null( $required ) ? $this->is_required() : $required;
240
+		$required = is_null($required) ? $this->is_required() : $required;
241 241
 		return array(
242
-			'title'            => strip_tags( $this->get_name() ),
242
+			'title'            => strip_tags($this->get_name()),
243 243
 			'id'               => $this->get_id(),
244 244
 			'price'            => $this->get_price(),
245 245
 			'recurring'        => $this->is_recurring(),
@@ -256,30 +256,30 @@  discard block
 block discarded – undo
256 256
 	 * @since 1.0.19
257 257
 	 * @return array
258 258
 	 */
259
-	public function prepare_data_for_invoice_edit_ajax( $currency = '', $is_renewal = false ) {
259
+	public function prepare_data_for_invoice_edit_ajax($currency = '', $is_renewal = false) {
260 260
 
261
-		$description = getpaid_item_recurring_price_help_text( $this, $currency );
261
+		$description = getpaid_item_recurring_price_help_text($this, $currency);
262 262
 
263
-		if ( $description ) {
263
+		if ($description) {
264 264
 			$description = "<div class='getpaid-subscription-help-text'>$description</div>";
265 265
 		}
266 266
 
267
-		$price    = ! $is_renewal ? $this->get_price() : $this->get_recurring_price();
268
-		$subtotal = ! $is_renewal ? $this->get_sub_total() : $this->get_recurring_sub_total();
267
+		$price    = !$is_renewal ? $this->get_price() : $this->get_recurring_price();
268
+		$subtotal = !$is_renewal ? $this->get_sub_total() : $this->get_recurring_sub_total();
269 269
 		return array(
270 270
 			'id'     => $this->get_id(),
271 271
 			'texts'  => array(
272
-				'item-name'        => sanitize_text_field( $this->get_name() ),
273
-				'item-description' => wp_kses_post( $this->get_description() ) . $description,
274
-				'item-quantity'    => floatval( $this->get_quantity() ),
275
-				'item-price'       => wpinv_price( $price, $currency ),
276
-				'item-total'       => wpinv_price( $subtotal, $currency ),
272
+				'item-name'        => sanitize_text_field($this->get_name()),
273
+				'item-description' => wp_kses_post($this->get_description()) . $description,
274
+				'item-quantity'    => floatval($this->get_quantity()),
275
+				'item-price'       => wpinv_price($price, $currency),
276
+				'item-total'       => wpinv_price($subtotal, $currency),
277 277
 			),
278 278
 			'inputs' => array(
279 279
 				'item-id'          => $this->get_id(),
280
-				'item-name'        => sanitize_text_field( $this->get_name() ),
281
-				'item-description' => wp_kses_post( $this->get_description() ),
282
-				'item-quantity'    => floatval( $this->get_quantity() ),
280
+				'item-name'        => sanitize_text_field($this->get_name()),
281
+				'item-description' => wp_kses_post($this->get_description()),
282
+				'item-quantity'    => floatval($this->get_quantity()),
283 283
 				'item-price'       => $price,
284 284
 			)
285 285
 		);
@@ -297,7 +297,7 @@  discard block
 block discarded – undo
297 297
 		return array(
298 298
 			'post_id'           => $this->invoice_id,
299 299
 			'item_id'           => $this->get_id(),
300
-			'item_name'         => sanitize_text_field( $this->get_raw_name() ),
300
+			'item_name'         => sanitize_text_field($this->get_raw_name()),
301 301
 			'item_description'  => $this->get_description(),
302 302
 			'tax'               => $this->item_tax,
303 303
 			'item_price'        => $this->get_price(),
@@ -326,9 +326,9 @@  discard block
 block discarded – undo
326 326
 	 * @since 1.0.19
327 327
 	 * @param  float $quantity The item quantity.
328 328
 	 */
329
-	public function set_quantity( $quantity ) {
329
+	public function set_quantity($quantity) {
330 330
 
331
-		if ( empty( $quantity ) || ! is_numeric( $quantity ) ) {
331
+		if (empty($quantity) || !is_numeric($quantity)) {
332 332
 			$quantity = 1;
333 333
 		}
334 334
 
@@ -342,8 +342,8 @@  discard block
 block discarded – undo
342 342
 	 * @since 1.0.19
343 343
 	 * @param  array $meta The item meta data.
344 344
 	 */
345
-	public function set_item_meta( $meta ) {
346
-		$this->meta = maybe_unserialize( $meta );
345
+	public function set_item_meta($meta) {
346
+		$this->meta = maybe_unserialize($meta);
347 347
 	}
348 348
 
349 349
 	/**
@@ -352,7 +352,7 @@  discard block
 block discarded – undo
352 352
 	 * @since 1.0.19
353 353
 	 * @param  bool $allow_quantities
354 354
 	 */
355
-	public function set_allow_quantities( $allow_quantities ) {
355
+	public function set_allow_quantities($allow_quantities) {
356 356
 		$this->allow_quantities = (bool) $allow_quantities;
357 357
 	}
358 358
 
@@ -362,7 +362,7 @@  discard block
 block discarded – undo
362 362
 	 * @since 1.0.19
363 363
 	 * @param  bool $is_required
364 364
 	 */
365
-	public function set_is_required( $is_required ) {
365
+	public function set_is_required($is_required) {
366 366
 		$this->is_required = (bool) $is_required;
367 367
 	}
368 368
 
@@ -372,7 +372,7 @@  discard block
 block discarded – undo
372 372
 	 * @since 1.0.19
373 373
 	 * @param  string $description
374 374
 	 */
375
-	public function set_custom_description( $description ) {
375
+	public function set_custom_description($description) {
376 376
 		$this->custom_description = $description;
377 377
 	}
378 378
 
@@ -381,7 +381,7 @@  discard block
 block discarded – undo
381 381
      * 
382 382
 	 * @return int item id
383 383
      */
384
-    public function save( $data = array() ) {
384
+    public function save($data = array()) {
385 385
         return $this->get_id();
386 386
 	}
387 387
 
Please login to merge, or discard this patch.
includes/payments/class-getpaid-checkout.php 2 patches
Indentation   +251 added lines, -251 removed lines patch added patch discarded remove patch
@@ -12,180 +12,180 @@  discard block
 block discarded – undo
12 12
  */
13 13
 class GetPaid_Checkout {
14 14
 
15
-	/**
16
-	 * @var GetPaid_Payment_Form_Submission
17
-	 */
18
-	protected $payment_form_submission;
19
-
20
-	/**
21
-	 * Class constructor.
22
-	 * 
23
-	 * @param GetPaid_Payment_Form_Submission $submission
24
-	 */
25
-	public function __construct( $submission ) {
26
-		$this->payment_form_submission = $submission;
27
-	}
28
-
29
-	/**
30
-	 * Processes the checkout.
31
-	 *
32
-	 */
33
-	public function process_checkout() {
34
-
35
-		// Validate the submission.
36
-		$this->validate_submission();
37
-
38
-		// Prepare the invoice.
39
-		$items      = $this->get_submission_items();
40
-		$invoice    = $this->get_submission_invoice();
41
-		$invoice    = $this->process_submission_invoice( $invoice, $items );
42
-		$prepared   = $this->prepare_submission_data_for_saving();
43
-
44
-		$this->prepare_billing_info( $invoice );
45
-
46
-		$shipping   = $this->prepare_shipping_info( $invoice );
47
-
48
-		// Save the invoice.
49
-		$invoice->set_is_viewed( true );
50
-		$invoice->recalculate_total();
15
+    /**
16
+     * @var GetPaid_Payment_Form_Submission
17
+     */
18
+    protected $payment_form_submission;
19
+
20
+    /**
21
+     * Class constructor.
22
+     * 
23
+     * @param GetPaid_Payment_Form_Submission $submission
24
+     */
25
+    public function __construct( $submission ) {
26
+        $this->payment_form_submission = $submission;
27
+    }
28
+
29
+    /**
30
+     * Processes the checkout.
31
+     *
32
+     */
33
+    public function process_checkout() {
34
+
35
+        // Validate the submission.
36
+        $this->validate_submission();
37
+
38
+        // Prepare the invoice.
39
+        $items      = $this->get_submission_items();
40
+        $invoice    = $this->get_submission_invoice();
41
+        $invoice    = $this->process_submission_invoice( $invoice, $items );
42
+        $prepared   = $this->prepare_submission_data_for_saving();
43
+
44
+        $this->prepare_billing_info( $invoice );
45
+
46
+        $shipping   = $this->prepare_shipping_info( $invoice );
47
+
48
+        // Save the invoice.
49
+        $invoice->set_is_viewed( true );
50
+        $invoice->recalculate_total();
51 51
         $invoice->save();
52 52
 
53
-		do_action( 'getpaid_checkout_invoice_updated', $invoice );
53
+        do_action( 'getpaid_checkout_invoice_updated', $invoice );
54 54
 
55
-		// Send to the gateway.
56
-		$this->post_process_submission( $invoice, $prepared, $shipping );
57
-	}
55
+        // Send to the gateway.
56
+        $this->post_process_submission( $invoice, $prepared, $shipping );
57
+    }
58 58
 
59
-	/**
60
-	 * Validates the submission.
61
-	 *
62
-	 */
63
-	protected function validate_submission() {
59
+    /**
60
+     * Validates the submission.
61
+     *
62
+     */
63
+    protected function validate_submission() {
64 64
 
65
-		$submission = $this->payment_form_submission;
66
-		$data       = $submission->get_data();
65
+        $submission = $this->payment_form_submission;
66
+        $data       = $submission->get_data();
67 67
 
68
-		// Do we have an error?
68
+        // Do we have an error?
69 69
         if ( ! empty( $submission->last_error ) ) {
70
-			wp_send_json_error( $submission->last_error );
70
+            wp_send_json_error( $submission->last_error );
71 71
         }
72 72
 
73
-		// We need a billing email.
73
+        // We need a billing email.
74 74
         if ( ! $submission->has_billing_email() ) {
75 75
             wp_send_json_error( __( 'Provide a valid billing email.', 'invoicing' ) );
76
-		}
76
+        }
77 77
 
78
-		// Non-recurring gateways should not be allowed to process recurring invoices.
79
-		if ( $submission->should_collect_payment_details() && $submission->has_recurring && ! wpinv_gateway_support_subscription( $data['wpi-gateway'] ) ) {
80
-			wp_send_json_error( __( 'The selected payment gateway does not support subscription payments.', 'invoicing' ) );
81
-		}
78
+        // Non-recurring gateways should not be allowed to process recurring invoices.
79
+        if ( $submission->should_collect_payment_details() && $submission->has_recurring && ! wpinv_gateway_support_subscription( $data['wpi-gateway'] ) ) {
80
+            wp_send_json_error( __( 'The selected payment gateway does not support subscription payments.', 'invoicing' ) );
81
+        }
82 82
 
83
-		// Ensure the gateway is active.
84
-		if ( $submission->should_collect_payment_details() && ! wpinv_is_gateway_active( $data['wpi-gateway'] ) ) {
85
-			wpinv_set_error( 'invalid_gateway', __( 'The selected payment gateway is not active', 'invoicing' ) );
86
-		}
83
+        // Ensure the gateway is active.
84
+        if ( $submission->should_collect_payment_details() && ! wpinv_is_gateway_active( $data['wpi-gateway'] ) ) {
85
+            wpinv_set_error( 'invalid_gateway', __( 'The selected payment gateway is not active', 'invoicing' ) );
86
+        }
87 87
 
88
-		// Clear any existing errors.
89
-		wpinv_clear_errors();
88
+        // Clear any existing errors.
89
+        wpinv_clear_errors();
90 90
 
91
-		// Allow themes and plugins to hook to errors
92
-		do_action( 'getpaid_checkout_error_checks', $submission );
91
+        // Allow themes and plugins to hook to errors
92
+        do_action( 'getpaid_checkout_error_checks', $submission );
93 93
 
94
-		// Do we have any errors?
94
+        // Do we have any errors?
95 95
         if ( wpinv_get_errors() ) {
96 96
             wp_send_json_error( getpaid_get_errors_html() );
97
-		}
97
+        }
98 98
 
99
-	}
99
+    }
100 100
 
101
-	/**
102
-	 * Retrieves submission items.
103
-	 *
104
-	 * @return GetPaid_Form_Item[]
105
-	 */
106
-	protected function get_submission_items() {
101
+    /**
102
+     * Retrieves submission items.
103
+     *
104
+     * @return GetPaid_Form_Item[]
105
+     */
106
+    protected function get_submission_items() {
107 107
 
108
-		$items = $this->payment_form_submission->get_items();
108
+        $items = $this->payment_form_submission->get_items();
109 109
 
110 110
         // Ensure that we have items.
111 111
         if ( empty( $items ) && ! $this->payment_form_submission->has_fees() ) {
112 112
             wp_send_json_error( __( 'Please provide at least one item or amount.', 'invoicing' ) );
113
-		}
114
-
115
-		return $items;
116
-	}
117
-
118
-	/**
119
-	 * Retrieves submission invoice.
120
-	 *
121
-	 * @return WPInv_Invoice
122
-	 */
123
-	protected function get_submission_invoice() {
124
-		$submission = $this->payment_form_submission;
125
-
126
-		if ( ! $submission->has_invoice() ) {
127
-			$invoice = new WPInv_Invoice();
128
-			$invoice->created_via( 'payment_form' );
129
-			return $invoice;
130 113
         }
131 114
 
132
-		$invoice = $submission->get_invoice();
115
+        return $items;
116
+    }
133 117
 
134
-		// Make sure that it is neither paid or refunded.
135
-		if ( $invoice->is_paid() || $invoice->is_refunded() ) {
136
-			wp_send_json_error( __( 'This invoice has already been paid for.', 'invoicing' ) );
137
-		}
118
+    /**
119
+     * Retrieves submission invoice.
120
+     *
121
+     * @return WPInv_Invoice
122
+     */
123
+    protected function get_submission_invoice() {
124
+        $submission = $this->payment_form_submission;
138 125
 
139
-		return $invoice;
140
-	}
126
+        if ( ! $submission->has_invoice() ) {
127
+            $invoice = new WPInv_Invoice();
128
+            $invoice->created_via( 'payment_form' );
129
+            return $invoice;
130
+        }
141 131
 
142
-	/**
143
-	 * Processes the submission invoice.
144
-	 *
145
-	 * @param WPInv_Invoice $invoice
146
-	 * @param GetPaid_Form_Item[] $items
147
-	 * @return WPInv_Invoice
148
-	 */
149
-	protected function process_submission_invoice( $invoice, $items ) {
132
+        $invoice = $submission->get_invoice();
150 133
 
151
-		$submission = $this->payment_form_submission;
152
-		$data       = $submission->get_data();
134
+        // Make sure that it is neither paid or refunded.
135
+        if ( $invoice->is_paid() || $invoice->is_refunded() ) {
136
+            wp_send_json_error( __( 'This invoice has already been paid for.', 'invoicing' ) );
137
+        }
138
+
139
+        return $invoice;
140
+    }
141
+
142
+    /**
143
+     * Processes the submission invoice.
144
+     *
145
+     * @param WPInv_Invoice $invoice
146
+     * @param GetPaid_Form_Item[] $items
147
+     * @return WPInv_Invoice
148
+     */
149
+    protected function process_submission_invoice( $invoice, $items ) {
153 150
 
154
-		// Set-up the invoice details.
155
-		$invoice->set_email( sanitize_email( $submission->get_billing_email() ) );
156
-		$invoice->set_user_id( $this->get_submission_customer() );
157
-		$invoice->set_payment_form( absint( $submission->get_payment_form()->get_id() ) );
151
+        $submission = $this->payment_form_submission;
152
+        $data       = $submission->get_data();
153
+
154
+        // Set-up the invoice details.
155
+        $invoice->set_email( sanitize_email( $submission->get_billing_email() ) );
156
+        $invoice->set_user_id( $this->get_submission_customer() );
157
+        $invoice->set_payment_form( absint( $submission->get_payment_form()->get_id() ) );
158 158
         $invoice->set_items( $items );
159 159
         $invoice->set_fees( $submission->get_fees() );
160 160
         $invoice->set_taxes( $submission->get_taxes() );
161
-		$invoice->set_discounts( $submission->get_discounts() );
162
-		$invoice->set_gateway( $data['wpi-gateway'] );
161
+        $invoice->set_discounts( $submission->get_discounts() );
162
+        $invoice->set_gateway( $data['wpi-gateway'] );
163 163
 
164
-		$address_confirmed = $submission->get_field( 'confirm-address' );
165
-		$invoice->set_address_confirmed( ! empty( $address_confirmed ) );
164
+        $address_confirmed = $submission->get_field( 'confirm-address' );
165
+        $invoice->set_address_confirmed( ! empty( $address_confirmed ) );
166 166
 
167
-		if ( $submission->has_discount_code() ) {
167
+        if ( $submission->has_discount_code() ) {
168 168
             $invoice->set_discount_code( $submission->get_discount_code() );
169
-		}
170
-
171
-		getpaid_maybe_add_default_address( $invoice );
172
-		return $invoice;
173
-	}
174
-
175
-	/**
176
-	 * Retrieves the submission's customer.
177
-	 *
178
-	 * @return int The customer id.
179
-	 */
180
-	protected function get_submission_customer() {
181
-		$submission = $this->payment_form_submission;
182
-
183
-		// If this is an existing invoice...
184
-		if ( $submission->has_invoice() ) {
185
-			return $submission->get_invoice()->get_user_id();
186
-		}
187
-
188
-		// (Maybe) create the user.
169
+        }
170
+
171
+        getpaid_maybe_add_default_address( $invoice );
172
+        return $invoice;
173
+    }
174
+
175
+    /**
176
+     * Retrieves the submission's customer.
177
+     *
178
+     * @return int The customer id.
179
+     */
180
+    protected function get_submission_customer() {
181
+        $submission = $this->payment_form_submission;
182
+
183
+        // If this is an existing invoice...
184
+        if ( $submission->has_invoice() ) {
185
+            return $submission->get_invoice()->get_user_id();
186
+        }
187
+
188
+        // (Maybe) create the user.
189 189
         $user = get_current_user_id();
190 190
 
191 191
         if ( empty( $user ) ) {
@@ -202,31 +202,31 @@  discard block
 block discarded – undo
202 202
 
203 203
         if ( is_numeric( $user ) ) {
204 204
             return $user;
205
-		}
205
+        }
206 206
 
207
-		return $user->ID;
207
+        return $user->ID;
208 208
 
209
-	}
209
+    }
210 210
 
211
-	/**
211
+    /**
212 212
      * Prepares submission data for saving to the database.
213 213
      *
214
-	 * @return array
214
+     * @return array
215 215
      */
216 216
     public function prepare_submission_data_for_saving() {
217 217
 
218
-		$submission = $this->payment_form_submission;
218
+        $submission = $this->payment_form_submission;
219 219
 
220
-		// Prepared submission details.
220
+        // Prepared submission details.
221 221
         $prepared = array();
222 222
 
223 223
         // Raw submission details.
224
-		$data     = $submission->get_data();
224
+        $data     = $submission->get_data();
225 225
 
226
-		// Loop through the submitted details.
226
+        // Loop through the submitted details.
227 227
         foreach ( $submission->get_payment_form()->get_elements() as $field ) {
228 228
 
229
-			// Skip premade fields.
229
+            // Skip premade fields.
230 230
             if ( ! empty( $field['premade'] ) || $field['type'] == 'address' ) {
231 231
                 continue;
232 232
             }
@@ -244,176 +244,176 @@  discard block
 block discarded – undo
244 244
                     $label = $field['label'];
245 245
                 }
246 246
 
247
-				$prepared[ wpinv_clean( $label ) ] = wp_kses_post( $data[ $field['id'] ] );
247
+                $prepared[ wpinv_clean( $label ) ] = wp_kses_post( $data[ $field['id'] ] );
248 248
 
249 249
             }
250 250
 
251
-		}
251
+        }
252 252
 
253
-		return $prepared;
253
+        return $prepared;
254 254
 
255
-	}
255
+    }
256 256
 
257
-	/**
257
+    /**
258 258
      * Retrieves address details.
259 259
      *
260
-	 * @return array
261
-	 * @param WPInv_Invoice $invoice
262
-	 * @param string $type
260
+     * @return array
261
+     * @param WPInv_Invoice $invoice
262
+     * @param string $type
263 263
      */
264 264
     public function prepare_address_details( $invoice, $type = 'billing' ) {
265 265
 
266
-		$data     = $this->payment_form_submission->get_data();
267
-		$type     = sanitize_key( $type );
268
-		$address  = array();
269
-		$prepared = array();
266
+        $data     = $this->payment_form_submission->get_data();
267
+        $type     = sanitize_key( $type );
268
+        $address  = array();
269
+        $prepared = array();
270 270
 
271
-		if ( ! empty( $data[ $type ] ) ) {
272
-			$address = $data[ $type ];
273
-		}
271
+        if ( ! empty( $data[ $type ] ) ) {
272
+            $address = $data[ $type ];
273
+        }
274 274
 
275
-		// Clean address details.
276
-		foreach ( $address as $key => $value ) {
277
-			$key             = sanitize_key( $key );
278
-			$key             = str_replace( 'wpinv_', '', $key );
279
-			$value           = wpinv_clean( $value );
280
-			$prepared[ $key] = apply_filters( "getpaid_checkout_{$type}_address_$key", $value, $this->payment_form_submission, $invoice );
281
-		}
275
+        // Clean address details.
276
+        foreach ( $address as $key => $value ) {
277
+            $key             = sanitize_key( $key );
278
+            $key             = str_replace( 'wpinv_', '', $key );
279
+            $value           = wpinv_clean( $value );
280
+            $prepared[ $key] = apply_filters( "getpaid_checkout_{$type}_address_$key", $value, $this->payment_form_submission, $invoice );
281
+        }
282 282
 
283
-		// Filter address details.
284
-		$prepared = apply_filters( "getpaid_checkout_{$type}_address", $prepared, $this->payment_form_submission, $invoice );
283
+        // Filter address details.
284
+        $prepared = apply_filters( "getpaid_checkout_{$type}_address", $prepared, $this->payment_form_submission, $invoice );
285 285
 
286
-		// Remove non-whitelisted values.
287
-		return array_filter( $prepared, 'getpaid_is_address_field_whitelisted', ARRAY_FILTER_USE_KEY );
286
+        // Remove non-whitelisted values.
287
+        return array_filter( $prepared, 'getpaid_is_address_field_whitelisted', ARRAY_FILTER_USE_KEY );
288 288
 
289
-	}
289
+    }
290 290
 
291
-	/**
291
+    /**
292 292
      * Prepares the billing details.
293 293
      *
294
-	 * @return array
295
-	 * @param WPInv_Invoice $invoice
294
+     * @return array
295
+     * @param WPInv_Invoice $invoice
296 296
      */
297 297
     protected function prepare_billing_info( &$invoice ) {
298 298
 
299
-		$billing_address = $this->prepare_address_details( $invoice, 'billing' );
299
+        $billing_address = $this->prepare_address_details( $invoice, 'billing' );
300 300
 
301
-		// Update the invoice with the billing details.
302
-		$invoice->set_props( $billing_address );
301
+        // Update the invoice with the billing details.
302
+        $invoice->set_props( $billing_address );
303 303
 
304
-	}
304
+    }
305 305
 
306
-	/**
306
+    /**
307 307
      * Prepares the shipping details.
308 308
      *
309
-	 * @return array
310
-	 * @param WPInv_Invoice $invoice
309
+     * @return array
310
+     * @param WPInv_Invoice $invoice
311 311
      */
312 312
     protected function prepare_shipping_info( $invoice ) {
313 313
 
314
-		$data = $this->payment_form_submission->get_data();
314
+        $data = $this->payment_form_submission->get_data();
315 315
 
316
-		if ( empty( $data['same-shipping-address'] ) ) {
317
-			return $this->prepare_address_details( $invoice, 'shipping' );
318
-		}
316
+        if ( empty( $data['same-shipping-address'] ) ) {
317
+            return $this->prepare_address_details( $invoice, 'shipping' );
318
+        }
319 319
 
320
-		return $this->prepare_address_details( $invoice, 'billing' );
320
+        return $this->prepare_address_details( $invoice, 'billing' );
321 321
 
322
-	}
322
+    }
323 323
 
324
-	/**
325
-	 * Confirms the submission is valid and send users to the gateway.
326
-	 *
327
-	 * @param WPInv_Invoice $invoice
328
-	 * @param array $prepared_payment_form_data
329
-	 * @param array $shipping
330
-	 */
331
-	protected function post_process_submission( $invoice, $prepared_payment_form_data, $shipping ) {
324
+    /**
325
+     * Confirms the submission is valid and send users to the gateway.
326
+     *
327
+     * @param WPInv_Invoice $invoice
328
+     * @param array $prepared_payment_form_data
329
+     * @param array $shipping
330
+     */
331
+    protected function post_process_submission( $invoice, $prepared_payment_form_data, $shipping ) {
332 332
 
333
-		// Ensure the invoice exists.
333
+        // Ensure the invoice exists.
334 334
         if ( ! $invoice->exists() ) {
335 335
             wp_send_json_error( __( 'An error occured while saving your invoice. Please try again.', 'invoicing' ) );
336 336
         }
337 337
 
338
-		// Save payment form data.
339
-		$prepared_payment_form_data = apply_filters( 'getpaid_prepared_payment_form_data', $prepared_payment_form_data, $invoice );
338
+        // Save payment form data.
339
+        $prepared_payment_form_data = apply_filters( 'getpaid_prepared_payment_form_data', $prepared_payment_form_data, $invoice );
340 340
         if ( ! empty( $prepared_payment_form_data ) ) {
341 341
             update_post_meta( $invoice->get_id(), 'payment_form_data', $prepared_payment_form_data );
342
-		}
342
+        }
343 343
 
344
-		// Save payment form data.
344
+        // Save payment form data.
345 345
         if ( ! empty( $shipping ) ) {
346 346
             update_post_meta( $invoice->get_id(), 'shipping_address', $shipping );
347
-		}
347
+        }
348 348
 
349
-		// Backwards compatibility.
349
+        // Backwards compatibility.
350 350
         add_filter( 'wp_redirect', array( $this, 'send_redirect_response' ) );
351 351
 
352
-		$this->process_payment( $invoice );
352
+        $this->process_payment( $invoice );
353 353
 
354 354
         // If we are here, there was an error.
355
-		wpinv_send_back_to_checkout( $invoice );
355
+        wpinv_send_back_to_checkout( $invoice );
356 356
 
357
-	}
357
+    }
358 358
 
359
-	/**
360
-	 * Processes the actual payment.
361
-	 *
362
-	 * @param WPInv_Invoice $invoice
363
-	 */
364
-	protected function process_payment( $invoice ) {
359
+    /**
360
+     * Processes the actual payment.
361
+     *
362
+     * @param WPInv_Invoice $invoice
363
+     */
364
+    protected function process_payment( $invoice ) {
365 365
 
366
-		// Clear any checkout errors.
367
-		wpinv_clear_errors();
366
+        // Clear any checkout errors.
367
+        wpinv_clear_errors();
368 368
 
369
-		// No need to send free invoices to the gateway.
370
-		if ( $invoice->is_free() ) {
371
-			$this->process_free_payment( $invoice );
372
-		}
369
+        // No need to send free invoices to the gateway.
370
+        if ( $invoice->is_free() ) {
371
+            $this->process_free_payment( $invoice );
372
+        }
373 373
 
374
-		$submission = $this->payment_form_submission;
374
+        $submission = $this->payment_form_submission;
375 375
 
376
-		// Fires before sending to the gateway.
377
-		do_action( 'getpaid_checkout_before_gateway', $invoice, $submission );
376
+        // Fires before sending to the gateway.
377
+        do_action( 'getpaid_checkout_before_gateway', $invoice, $submission );
378 378
 
379
-		// Allow the sumission data to be modified before it is sent to the gateway.
380
-		$submission_data    = $submission->get_data();
381
-		$submission_gateway = apply_filters( 'getpaid_gateway_submission_gateway', $invoice->get_gateway(), $submission, $invoice );
382
-		$submission_data    = apply_filters( 'getpaid_gateway_submission_data', $submission_data, $submission, $invoice );
379
+        // Allow the sumission data to be modified before it is sent to the gateway.
380
+        $submission_data    = $submission->get_data();
381
+        $submission_gateway = apply_filters( 'getpaid_gateway_submission_gateway', $invoice->get_gateway(), $submission, $invoice );
382
+        $submission_data    = apply_filters( 'getpaid_gateway_submission_data', $submission_data, $submission, $invoice );
383 383
 
384
-		// Validate the currency.
385
-		if ( ! apply_filters( "getpaid_gateway_{$submission_gateway}_is_valid_for_currency", true, $invoice->get_currency() ) ) {
386
-			wpinv_set_error( 'invalid_currency', __( 'The chosen payment gateway does not support this currency', 'invoicing' ) );
387
-		}
384
+        // Validate the currency.
385
+        if ( ! apply_filters( "getpaid_gateway_{$submission_gateway}_is_valid_for_currency", true, $invoice->get_currency() ) ) {
386
+            wpinv_set_error( 'invalid_currency', __( 'The chosen payment gateway does not support this currency', 'invoicing' ) );
387
+        }
388 388
 
389
-		// Check to see if we have any errors.
390
-		if ( wpinv_get_errors() ) {
391
-			wpinv_send_back_to_checkout( $invoice );
392
-		}
389
+        // Check to see if we have any errors.
390
+        if ( wpinv_get_errors() ) {
391
+            wpinv_send_back_to_checkout( $invoice );
392
+        }
393 393
 
394
-		// Send info to the gateway for payment processing
395
-		do_action( "getpaid_gateway_$submission_gateway", $invoice, $submission_data, $submission );
394
+        // Send info to the gateway for payment processing
395
+        do_action( "getpaid_gateway_$submission_gateway", $invoice, $submission_data, $submission );
396 396
 
397
-		// Backwards compatibility.
398
-		wpinv_send_to_gateway( $submission_gateway, $invoice );
397
+        // Backwards compatibility.
398
+        wpinv_send_to_gateway( $submission_gateway, $invoice );
399 399
 
400
-	}
400
+    }
401 401
 
402
-	/**
403
-	 * Marks the invoice as paid in case the checkout is free.
404
-	 *
405
-	 * @param WPInv_Invoice $invoice
406
-	 */
407
-	protected function process_free_payment( $invoice ) {
402
+    /**
403
+     * Marks the invoice as paid in case the checkout is free.
404
+     *
405
+     * @param WPInv_Invoice $invoice
406
+     */
407
+    protected function process_free_payment( $invoice ) {
408 408
 
409
-		$invoice->set_gateway( 'none' );
410
-		$invoice->add_note( __( "This is a free invoice and won't be sent to the payment gateway", 'invoicing' ), false, false, true );
411
-		$invoice->mark_paid();
412
-		wpinv_send_to_success_page( array( 'invoice_key' => $invoice->get_key() ) );
409
+        $invoice->set_gateway( 'none' );
410
+        $invoice->add_note( __( "This is a free invoice and won't be sent to the payment gateway", 'invoicing' ), false, false, true );
411
+        $invoice->mark_paid();
412
+        wpinv_send_to_success_page( array( 'invoice_key' => $invoice->get_key() ) );
413 413
 
414
-	}
414
+    }
415 415
 
416
-	/**
416
+    /**
417 417
      * Sends a redrect response to payment details.
418 418
      *
419 419
      */
Please login to merge, or discard this patch.
Spacing   +105 added lines, -105 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 
7
-defined( 'ABSPATH' ) || exit;
7
+defined('ABSPATH') || exit;
8 8
 
9 9
 /**
10 10
  * Main Checkout Class.
@@ -22,7 +22,7 @@  discard block
 block discarded – undo
22 22
 	 * 
23 23
 	 * @param GetPaid_Payment_Form_Submission $submission
24 24
 	 */
25
-	public function __construct( $submission ) {
25
+	public function __construct($submission) {
26 26
 		$this->payment_form_submission = $submission;
27 27
 	}
28 28
 
@@ -38,22 +38,22 @@  discard block
 block discarded – undo
38 38
 		// Prepare the invoice.
39 39
 		$items      = $this->get_submission_items();
40 40
 		$invoice    = $this->get_submission_invoice();
41
-		$invoice    = $this->process_submission_invoice( $invoice, $items );
41
+		$invoice    = $this->process_submission_invoice($invoice, $items);
42 42
 		$prepared   = $this->prepare_submission_data_for_saving();
43 43
 
44
-		$this->prepare_billing_info( $invoice );
44
+		$this->prepare_billing_info($invoice);
45 45
 
46
-		$shipping   = $this->prepare_shipping_info( $invoice );
46
+		$shipping = $this->prepare_shipping_info($invoice);
47 47
 
48 48
 		// Save the invoice.
49
-		$invoice->set_is_viewed( true );
49
+		$invoice->set_is_viewed(true);
50 50
 		$invoice->recalculate_total();
51 51
         $invoice->save();
52 52
 
53
-		do_action( 'getpaid_checkout_invoice_updated', $invoice );
53
+		do_action('getpaid_checkout_invoice_updated', $invoice);
54 54
 
55 55
 		// Send to the gateway.
56
-		$this->post_process_submission( $invoice, $prepared, $shipping );
56
+		$this->post_process_submission($invoice, $prepared, $shipping);
57 57
 	}
58 58
 
59 59
 	/**
@@ -66,34 +66,34 @@  discard block
 block discarded – undo
66 66
 		$data       = $submission->get_data();
67 67
 
68 68
 		// Do we have an error?
69
-        if ( ! empty( $submission->last_error ) ) {
70
-			wp_send_json_error( $submission->last_error );
69
+        if (!empty($submission->last_error)) {
70
+			wp_send_json_error($submission->last_error);
71 71
         }
72 72
 
73 73
 		// We need a billing email.
74
-        if ( ! $submission->has_billing_email() ) {
75
-            wp_send_json_error( __( 'Provide a valid billing email.', 'invoicing' ) );
74
+        if (!$submission->has_billing_email()) {
75
+            wp_send_json_error(__('Provide a valid billing email.', 'invoicing'));
76 76
 		}
77 77
 
78 78
 		// Non-recurring gateways should not be allowed to process recurring invoices.
79
-		if ( $submission->should_collect_payment_details() && $submission->has_recurring && ! wpinv_gateway_support_subscription( $data['wpi-gateway'] ) ) {
80
-			wp_send_json_error( __( 'The selected payment gateway does not support subscription payments.', 'invoicing' ) );
79
+		if ($submission->should_collect_payment_details() && $submission->has_recurring && !wpinv_gateway_support_subscription($data['wpi-gateway'])) {
80
+			wp_send_json_error(__('The selected payment gateway does not support subscription payments.', 'invoicing'));
81 81
 		}
82 82
 
83 83
 		// Ensure the gateway is active.
84
-		if ( $submission->should_collect_payment_details() && ! wpinv_is_gateway_active( $data['wpi-gateway'] ) ) {
85
-			wpinv_set_error( 'invalid_gateway', __( 'The selected payment gateway is not active', 'invoicing' ) );
84
+		if ($submission->should_collect_payment_details() && !wpinv_is_gateway_active($data['wpi-gateway'])) {
85
+			wpinv_set_error('invalid_gateway', __('The selected payment gateway is not active', 'invoicing'));
86 86
 		}
87 87
 
88 88
 		// Clear any existing errors.
89 89
 		wpinv_clear_errors();
90 90
 
91 91
 		// Allow themes and plugins to hook to errors
92
-		do_action( 'getpaid_checkout_error_checks', $submission );
92
+		do_action('getpaid_checkout_error_checks', $submission);
93 93
 
94 94
 		// Do we have any errors?
95
-        if ( wpinv_get_errors() ) {
96
-            wp_send_json_error( getpaid_get_errors_html() );
95
+        if (wpinv_get_errors()) {
96
+            wp_send_json_error(getpaid_get_errors_html());
97 97
 		}
98 98
 
99 99
 	}
@@ -108,8 +108,8 @@  discard block
 block discarded – undo
108 108
 		$items = $this->payment_form_submission->get_items();
109 109
 
110 110
         // Ensure that we have items.
111
-        if ( empty( $items ) && ! $this->payment_form_submission->has_fees() ) {
112
-            wp_send_json_error( __( 'Please provide at least one item or amount.', 'invoicing' ) );
111
+        if (empty($items) && !$this->payment_form_submission->has_fees()) {
112
+            wp_send_json_error(__('Please provide at least one item or amount.', 'invoicing'));
113 113
 		}
114 114
 
115 115
 		return $items;
@@ -123,17 +123,17 @@  discard block
 block discarded – undo
123 123
 	protected function get_submission_invoice() {
124 124
 		$submission = $this->payment_form_submission;
125 125
 
126
-		if ( ! $submission->has_invoice() ) {
126
+		if (!$submission->has_invoice()) {
127 127
 			$invoice = new WPInv_Invoice();
128
-			$invoice->created_via( 'payment_form' );
128
+			$invoice->created_via('payment_form');
129 129
 			return $invoice;
130 130
         }
131 131
 
132 132
 		$invoice = $submission->get_invoice();
133 133
 
134 134
 		// Make sure that it is neither paid or refunded.
135
-		if ( $invoice->is_paid() || $invoice->is_refunded() ) {
136
-			wp_send_json_error( __( 'This invoice has already been paid for.', 'invoicing' ) );
135
+		if ($invoice->is_paid() || $invoice->is_refunded()) {
136
+			wp_send_json_error(__('This invoice has already been paid for.', 'invoicing'));
137 137
 		}
138 138
 
139 139
 		return $invoice;
@@ -146,29 +146,29 @@  discard block
 block discarded – undo
146 146
 	 * @param GetPaid_Form_Item[] $items
147 147
 	 * @return WPInv_Invoice
148 148
 	 */
149
-	protected function process_submission_invoice( $invoice, $items ) {
149
+	protected function process_submission_invoice($invoice, $items) {
150 150
 
151 151
 		$submission = $this->payment_form_submission;
152 152
 		$data       = $submission->get_data();
153 153
 
154 154
 		// Set-up the invoice details.
155
-		$invoice->set_email( sanitize_email( $submission->get_billing_email() ) );
156
-		$invoice->set_user_id( $this->get_submission_customer() );
157
-		$invoice->set_payment_form( absint( $submission->get_payment_form()->get_id() ) );
158
-        $invoice->set_items( $items );
159
-        $invoice->set_fees( $submission->get_fees() );
160
-        $invoice->set_taxes( $submission->get_taxes() );
161
-		$invoice->set_discounts( $submission->get_discounts() );
162
-		$invoice->set_gateway( $data['wpi-gateway'] );
163
-
164
-		$address_confirmed = $submission->get_field( 'confirm-address' );
165
-		$invoice->set_address_confirmed( ! empty( $address_confirmed ) );
166
-
167
-		if ( $submission->has_discount_code() ) {
168
-            $invoice->set_discount_code( $submission->get_discount_code() );
155
+		$invoice->set_email(sanitize_email($submission->get_billing_email()));
156
+		$invoice->set_user_id($this->get_submission_customer());
157
+		$invoice->set_payment_form(absint($submission->get_payment_form()->get_id()));
158
+        $invoice->set_items($items);
159
+        $invoice->set_fees($submission->get_fees());
160
+        $invoice->set_taxes($submission->get_taxes());
161
+		$invoice->set_discounts($submission->get_discounts());
162
+		$invoice->set_gateway($data['wpi-gateway']);
163
+
164
+		$address_confirmed = $submission->get_field('confirm-address');
165
+		$invoice->set_address_confirmed(!empty($address_confirmed));
166
+
167
+		if ($submission->has_discount_code()) {
168
+            $invoice->set_discount_code($submission->get_discount_code());
169 169
 		}
170 170
 
171
-		getpaid_maybe_add_default_address( $invoice );
171
+		getpaid_maybe_add_default_address($invoice);
172 172
 		return $invoice;
173 173
 	}
174 174
 
@@ -181,26 +181,26 @@  discard block
 block discarded – undo
181 181
 		$submission = $this->payment_form_submission;
182 182
 
183 183
 		// If this is an existing invoice...
184
-		if ( $submission->has_invoice() ) {
184
+		if ($submission->has_invoice()) {
185 185
 			return $submission->get_invoice()->get_user_id();
186 186
 		}
187 187
 
188 188
 		// (Maybe) create the user.
189 189
         $user = get_current_user_id();
190 190
 
191
-        if ( empty( $user ) ) {
192
-            $user = get_user_by( 'email', $submission->get_billing_email() );
191
+        if (empty($user)) {
192
+            $user = get_user_by('email', $submission->get_billing_email());
193 193
         }
194 194
 
195
-        if ( empty( $user ) ) {
196
-            $user = wpinv_create_user( $submission->get_billing_email() );
195
+        if (empty($user)) {
196
+            $user = wpinv_create_user($submission->get_billing_email());
197 197
         }
198 198
 
199
-        if ( is_wp_error( $user ) ) {
200
-            wp_send_json_error( $user->get_error_message() );
199
+        if (is_wp_error($user)) {
200
+            wp_send_json_error($user->get_error_message());
201 201
         }
202 202
 
203
-        if ( is_numeric( $user ) ) {
203
+        if (is_numeric($user)) {
204 204
             return $user;
205 205
 		}
206 206
 
@@ -221,30 +221,30 @@  discard block
 block discarded – undo
221 221
         $prepared = array();
222 222
 
223 223
         // Raw submission details.
224
-		$data     = $submission->get_data();
224
+		$data = $submission->get_data();
225 225
 
226 226
 		// Loop through the submitted details.
227
-        foreach ( $submission->get_payment_form()->get_elements() as $field ) {
227
+        foreach ($submission->get_payment_form()->get_elements() as $field) {
228 228
 
229 229
 			// Skip premade fields.
230
-            if ( ! empty( $field['premade'] ) || $field['type'] == 'address' ) {
230
+            if (!empty($field['premade']) || $field['type'] == 'address') {
231 231
                 continue;
232 232
             }
233 233
 
234 234
             // If it is required and not set, abort.
235
-            if ( ! $submission->is_required_field_set( $field ) ) {
236
-                wp_send_json_error( __( 'Please fill all required fields.', 'invoicing' ) );
235
+            if (!$submission->is_required_field_set($field)) {
236
+                wp_send_json_error(__('Please fill all required fields.', 'invoicing'));
237 237
             }
238 238
 
239 239
             // Handle misc fields.
240
-            if ( isset( $data[ $field['id'] ] ) ) {
240
+            if (isset($data[$field['id']])) {
241 241
                 $label = $field['id'];
242 242
 
243
-                if ( isset( $field['label'] ) ) {
243
+                if (isset($field['label'])) {
244 244
                     $label = $field['label'];
245 245
                 }
246 246
 
247
-				$prepared[ wpinv_clean( $label ) ] = wp_kses_post( $data[ $field['id'] ] );
247
+				$prepared[wpinv_clean($label)] = wp_kses_post($data[$field['id']]);
248 248
 
249 249
             }
250 250
 
@@ -261,30 +261,30 @@  discard block
 block discarded – undo
261 261
 	 * @param WPInv_Invoice $invoice
262 262
 	 * @param string $type
263 263
      */
264
-    public function prepare_address_details( $invoice, $type = 'billing' ) {
264
+    public function prepare_address_details($invoice, $type = 'billing') {
265 265
 
266 266
 		$data     = $this->payment_form_submission->get_data();
267
-		$type     = sanitize_key( $type );
267
+		$type     = sanitize_key($type);
268 268
 		$address  = array();
269 269
 		$prepared = array();
270 270
 
271
-		if ( ! empty( $data[ $type ] ) ) {
272
-			$address = $data[ $type ];
271
+		if (!empty($data[$type])) {
272
+			$address = $data[$type];
273 273
 		}
274 274
 
275 275
 		// Clean address details.
276
-		foreach ( $address as $key => $value ) {
277
-			$key             = sanitize_key( $key );
278
-			$key             = str_replace( 'wpinv_', '', $key );
279
-			$value           = wpinv_clean( $value );
280
-			$prepared[ $key] = apply_filters( "getpaid_checkout_{$type}_address_$key", $value, $this->payment_form_submission, $invoice );
276
+		foreach ($address as $key => $value) {
277
+			$key             = sanitize_key($key);
278
+			$key             = str_replace('wpinv_', '', $key);
279
+			$value           = wpinv_clean($value);
280
+			$prepared[$key] = apply_filters("getpaid_checkout_{$type}_address_$key", $value, $this->payment_form_submission, $invoice);
281 281
 		}
282 282
 
283 283
 		// Filter address details.
284
-		$prepared = apply_filters( "getpaid_checkout_{$type}_address", $prepared, $this->payment_form_submission, $invoice );
284
+		$prepared = apply_filters("getpaid_checkout_{$type}_address", $prepared, $this->payment_form_submission, $invoice);
285 285
 
286 286
 		// Remove non-whitelisted values.
287
-		return array_filter( $prepared, 'getpaid_is_address_field_whitelisted', ARRAY_FILTER_USE_KEY );
287
+		return array_filter($prepared, 'getpaid_is_address_field_whitelisted', ARRAY_FILTER_USE_KEY);
288 288
 
289 289
 	}
290 290
 
@@ -294,12 +294,12 @@  discard block
 block discarded – undo
294 294
 	 * @return array
295 295
 	 * @param WPInv_Invoice $invoice
296 296
      */
297
-    protected function prepare_billing_info( &$invoice ) {
297
+    protected function prepare_billing_info(&$invoice) {
298 298
 
299
-		$billing_address = $this->prepare_address_details( $invoice, 'billing' );
299
+		$billing_address = $this->prepare_address_details($invoice, 'billing');
300 300
 
301 301
 		// Update the invoice with the billing details.
302
-		$invoice->set_props( $billing_address );
302
+		$invoice->set_props($billing_address);
303 303
 
304 304
 	}
305 305
 
@@ -309,15 +309,15 @@  discard block
 block discarded – undo
309 309
 	 * @return array
310 310
 	 * @param WPInv_Invoice $invoice
311 311
      */
312
-    protected function prepare_shipping_info( $invoice ) {
312
+    protected function prepare_shipping_info($invoice) {
313 313
 
314 314
 		$data = $this->payment_form_submission->get_data();
315 315
 
316
-		if ( empty( $data['same-shipping-address'] ) ) {
317
-			return $this->prepare_address_details( $invoice, 'shipping' );
316
+		if (empty($data['same-shipping-address'])) {
317
+			return $this->prepare_address_details($invoice, 'shipping');
318 318
 		}
319 319
 
320
-		return $this->prepare_address_details( $invoice, 'billing' );
320
+		return $this->prepare_address_details($invoice, 'billing');
321 321
 
322 322
 	}
323 323
 
@@ -328,31 +328,31 @@  discard block
 block discarded – undo
328 328
 	 * @param array $prepared_payment_form_data
329 329
 	 * @param array $shipping
330 330
 	 */
331
-	protected function post_process_submission( $invoice, $prepared_payment_form_data, $shipping ) {
331
+	protected function post_process_submission($invoice, $prepared_payment_form_data, $shipping) {
332 332
 
333 333
 		// Ensure the invoice exists.
334
-        if ( ! $invoice->exists() ) {
335
-            wp_send_json_error( __( 'An error occured while saving your invoice. Please try again.', 'invoicing' ) );
334
+        if (!$invoice->exists()) {
335
+            wp_send_json_error(__('An error occured while saving your invoice. Please try again.', 'invoicing'));
336 336
         }
337 337
 
338 338
 		// Save payment form data.
339
-		$prepared_payment_form_data = apply_filters( 'getpaid_prepared_payment_form_data', $prepared_payment_form_data, $invoice );
340
-        if ( ! empty( $prepared_payment_form_data ) ) {
341
-            update_post_meta( $invoice->get_id(), 'payment_form_data', $prepared_payment_form_data );
339
+		$prepared_payment_form_data = apply_filters('getpaid_prepared_payment_form_data', $prepared_payment_form_data, $invoice);
340
+        if (!empty($prepared_payment_form_data)) {
341
+            update_post_meta($invoice->get_id(), 'payment_form_data', $prepared_payment_form_data);
342 342
 		}
343 343
 
344 344
 		// Save payment form data.
345
-        if ( ! empty( $shipping ) ) {
346
-            update_post_meta( $invoice->get_id(), 'shipping_address', $shipping );
345
+        if (!empty($shipping)) {
346
+            update_post_meta($invoice->get_id(), 'shipping_address', $shipping);
347 347
 		}
348 348
 
349 349
 		// Backwards compatibility.
350
-        add_filter( 'wp_redirect', array( $this, 'send_redirect_response' ) );
350
+        add_filter('wp_redirect', array($this, 'send_redirect_response'));
351 351
 
352
-		$this->process_payment( $invoice );
352
+		$this->process_payment($invoice);
353 353
 
354 354
         // If we are here, there was an error.
355
-		wpinv_send_back_to_checkout( $invoice );
355
+		wpinv_send_back_to_checkout($invoice);
356 356
 
357 357
 	}
358 358
 
@@ -361,41 +361,41 @@  discard block
 block discarded – undo
361 361
 	 *
362 362
 	 * @param WPInv_Invoice $invoice
363 363
 	 */
364
-	protected function process_payment( $invoice ) {
364
+	protected function process_payment($invoice) {
365 365
 
366 366
 		// Clear any checkout errors.
367 367
 		wpinv_clear_errors();
368 368
 
369 369
 		// No need to send free invoices to the gateway.
370
-		if ( $invoice->is_free() ) {
371
-			$this->process_free_payment( $invoice );
370
+		if ($invoice->is_free()) {
371
+			$this->process_free_payment($invoice);
372 372
 		}
373 373
 
374 374
 		$submission = $this->payment_form_submission;
375 375
 
376 376
 		// Fires before sending to the gateway.
377
-		do_action( 'getpaid_checkout_before_gateway', $invoice, $submission );
377
+		do_action('getpaid_checkout_before_gateway', $invoice, $submission);
378 378
 
379 379
 		// Allow the sumission data to be modified before it is sent to the gateway.
380 380
 		$submission_data    = $submission->get_data();
381
-		$submission_gateway = apply_filters( 'getpaid_gateway_submission_gateway', $invoice->get_gateway(), $submission, $invoice );
382
-		$submission_data    = apply_filters( 'getpaid_gateway_submission_data', $submission_data, $submission, $invoice );
381
+		$submission_gateway = apply_filters('getpaid_gateway_submission_gateway', $invoice->get_gateway(), $submission, $invoice);
382
+		$submission_data    = apply_filters('getpaid_gateway_submission_data', $submission_data, $submission, $invoice);
383 383
 
384 384
 		// Validate the currency.
385
-		if ( ! apply_filters( "getpaid_gateway_{$submission_gateway}_is_valid_for_currency", true, $invoice->get_currency() ) ) {
386
-			wpinv_set_error( 'invalid_currency', __( 'The chosen payment gateway does not support this currency', 'invoicing' ) );
385
+		if (!apply_filters("getpaid_gateway_{$submission_gateway}_is_valid_for_currency", true, $invoice->get_currency())) {
386
+			wpinv_set_error('invalid_currency', __('The chosen payment gateway does not support this currency', 'invoicing'));
387 387
 		}
388 388
 
389 389
 		// Check to see if we have any errors.
390
-		if ( wpinv_get_errors() ) {
391
-			wpinv_send_back_to_checkout( $invoice );
390
+		if (wpinv_get_errors()) {
391
+			wpinv_send_back_to_checkout($invoice);
392 392
 		}
393 393
 
394 394
 		// Send info to the gateway for payment processing
395
-		do_action( "getpaid_gateway_$submission_gateway", $invoice, $submission_data, $submission );
395
+		do_action("getpaid_gateway_$submission_gateway", $invoice, $submission_data, $submission);
396 396
 
397 397
 		// Backwards compatibility.
398
-		wpinv_send_to_gateway( $submission_gateway, $invoice );
398
+		wpinv_send_to_gateway($submission_gateway, $invoice);
399 399
 
400 400
 	}
401 401
 
@@ -404,12 +404,12 @@  discard block
 block discarded – undo
404 404
 	 *
405 405
 	 * @param WPInv_Invoice $invoice
406 406
 	 */
407
-	protected function process_free_payment( $invoice ) {
407
+	protected function process_free_payment($invoice) {
408 408
 
409
-		$invoice->set_gateway( 'none' );
410
-		$invoice->add_note( __( "This is a free invoice and won't be sent to the payment gateway", 'invoicing' ), false, false, true );
409
+		$invoice->set_gateway('none');
410
+		$invoice->add_note(__("This is a free invoice and won't be sent to the payment gateway", 'invoicing'), false, false, true);
411 411
 		$invoice->mark_paid();
412
-		wpinv_send_to_success_page( array( 'invoice_key' => $invoice->get_key() ) );
412
+		wpinv_send_to_success_page(array('invoice_key' => $invoice->get_key()));
413 413
 
414 414
 	}
415 415
 
@@ -417,9 +417,9 @@  discard block
 block discarded – undo
417 417
      * Sends a redrect response to payment details.
418 418
      *
419 419
      */
420
-    public function send_redirect_response( $url ) {
421
-        $url = urlencode( $url );
422
-        wp_send_json_success( $url );
420
+    public function send_redirect_response($url) {
421
+        $url = urlencode($url);
422
+        wp_send_json_success($url);
423 423
     }
424 424
 
425 425
 }
Please login to merge, or discard this patch.
vendor/composer/installers/src/Composer/Installers/Installer.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -165,7 +165,7 @@  discard block
 block discarded – undo
165 165
     {
166 166
         $installPath = $this->getPackageBasePath($package);
167 167
         $io = $this->io;
168
-        $outputStatus = function () use ($io, $installPath) {
168
+        $outputStatus = function() use ($io, $installPath) {
169 169
             $io->write(sprintf('Deleting %s - %s', $installPath, !file_exists($installPath) ? '<comment>deleted</comment>' : '<error>not deleted</error>'));
170 170
         };
171 171
 
@@ -235,7 +235,7 @@  discard block
 block discarded – undo
235 235
             $pattern = $locations ? '(' . implode('|', $locations) . ')' : false;
236 236
         }
237 237
 
238
-        return $pattern ? : '(\w+)';
238
+        return $pattern ?: '(\w+)';
239 239
     }
240 240
 
241 241
     /**
Please login to merge, or discard this patch.
vendor/composer/installers/src/Composer/Installers/CakePHPInstaller.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -36,7 +36,7 @@  discard block
 block discarded – undo
36 36
     public function getLocations()
37 37
     {
38 38
         if ($this->matchesCakeVersion('>=', '3.0.0')) {
39
-            $this->locations['plugin'] =  $this->composer->getConfig()->get('vendor-dir') . '/{$vendor}/{$name}/';
39
+            $this->locations['plugin'] = $this->composer->getConfig()->get('vendor-dir') . '/{$vendor}/{$name}/';
40 40
         }
41 41
         return $this->locations;
42 42
     }
@@ -51,7 +51,7 @@  discard block
 block discarded – undo
51 51
     protected function matchesCakeVersion($matcher, $version)
52 52
     {
53 53
         $repositoryManager = $this->composer->getRepositoryManager();
54
-        if (! $repositoryManager) {
54
+        if (!$repositoryManager) {
55 55
             return false;
56 56
         }
57 57
 
Please login to merge, or discard this patch.
vendor/composer/installers/src/Composer/Installers/OxidInstaller.php 1 patch
Indentation   +41 added lines, -41 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
 
6 6
 class OxidInstaller extends BaseInstaller
7 7
 {
8
-	const VENDOR_PATTERN = '/^modules\/(?P<vendor>.+)\/.+/';
8
+    const VENDOR_PATTERN = '/^modules\/(?P<vendor>.+)\/.+/';
9 9
 
10 10
     protected $locations = array(
11 11
         'module'    => 'modules/{$name}/',
@@ -13,47 +13,47 @@  discard block
 block discarded – undo
13 13
         'out'    => 'out/{$name}/',
14 14
     );
15 15
 
16
-	/**
17
-	 * getInstallPath
18
-	 *
19
-	 * @param PackageInterface $package
20
-	 * @param string $frameworkType
21
-	 * @return string
22
-	 */
23
-	public function getInstallPath(PackageInterface $package, $frameworkType = '')
24
-	{
25
-		$installPath = parent::getInstallPath($package, $frameworkType);
26
-		$type = $this->package->getType();
27
-		if ($type === 'oxid-module') {
28
-			$this->prepareVendorDirectory($installPath);
29
-		}
30
-		return $installPath;
31
-	}
16
+    /**
17
+     * getInstallPath
18
+     *
19
+     * @param PackageInterface $package
20
+     * @param string $frameworkType
21
+     * @return string
22
+     */
23
+    public function getInstallPath(PackageInterface $package, $frameworkType = '')
24
+    {
25
+        $installPath = parent::getInstallPath($package, $frameworkType);
26
+        $type = $this->package->getType();
27
+        if ($type === 'oxid-module') {
28
+            $this->prepareVendorDirectory($installPath);
29
+        }
30
+        return $installPath;
31
+    }
32 32
 
33
-	/**
34
-	 * prepareVendorDirectory
35
-	 *
36
-	 * Makes sure there is a vendormetadata.php file inside
37
-	 * the vendor folder if there is a vendor folder.
38
-	 *
39
-	 * @param string $installPath
40
-	 * @return void
41
-	 */
42
-	protected function prepareVendorDirectory($installPath)
43
-	{
44
-		$matches = '';
45
-		$hasVendorDirectory = preg_match(self::VENDOR_PATTERN, $installPath, $matches);
46
-		if (!$hasVendorDirectory) {
47
-			return;
48
-		}
33
+    /**
34
+     * prepareVendorDirectory
35
+     *
36
+     * Makes sure there is a vendormetadata.php file inside
37
+     * the vendor folder if there is a vendor folder.
38
+     *
39
+     * @param string $installPath
40
+     * @return void
41
+     */
42
+    protected function prepareVendorDirectory($installPath)
43
+    {
44
+        $matches = '';
45
+        $hasVendorDirectory = preg_match(self::VENDOR_PATTERN, $installPath, $matches);
46
+        if (!$hasVendorDirectory) {
47
+            return;
48
+        }
49 49
 
50
-		$vendorDirectory = $matches['vendor'];
51
-		$vendorPath = getcwd() . '/modules/' . $vendorDirectory;
52
-		if (!file_exists($vendorPath)) {
53
-			mkdir($vendorPath, 0755, true);
54
-		}
50
+        $vendorDirectory = $matches['vendor'];
51
+        $vendorPath = getcwd() . '/modules/' . $vendorDirectory;
52
+        if (!file_exists($vendorPath)) {
53
+            mkdir($vendorPath, 0755, true);
54
+        }
55 55
 
56
-		$vendorMetaDataPath = $vendorPath . '/vendormetadata.php';
57
-		touch($vendorMetaDataPath);
58
-	}
56
+        $vendorMetaDataPath = $vendorPath . '/vendormetadata.php';
57
+        touch($vendorMetaDataPath);
58
+    }
59 59
 }
Please login to merge, or discard this patch.
templates/payment-forms/form.php 1 patch
Spacing   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -7,44 +7,44 @@  discard block
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12 12
 // Make sure that the form is active.
13
-if ( ! $form->is_active() ) {
13
+if (!$form->is_active()) {
14 14
     echo aui()->alert(
15 15
         array(
16 16
             'type'    => 'warning',
17
-            'content' => __( 'This payment form is no longer active', 'invoicing' ),
17
+            'content' => __('This payment form is no longer active', 'invoicing'),
18 18
         )
19 19
     );
20 20
     return;
21 21
 }
22 22
 
23 23
 // Fires before displaying a payment form.
24
-do_action( 'getpaid_before_payment_form', $form );
24
+do_action('getpaid_before_payment_form', $form);
25 25
 ?>
26 26
 
27
-<form class='getpaid-payment-form getpaid-payment-form-<?php echo absint( $form->get_id() ); ?> bsui position-relative' method='POST' data-key='<?php echo uniqid('gpf'); ?>'>
27
+<form class='getpaid-payment-form getpaid-payment-form-<?php echo absint($form->get_id()); ?> bsui position-relative' method='POST' data-key='<?php echo uniqid('gpf'); ?>'>
28 28
 
29 29
 
30 30
     <?php
31 31
     
32 32
         // Fires when printing the top of a payment form.
33
-        do_action( 'getpaid_payment_form_top', $form );
33
+        do_action('getpaid_payment_form_top', $form);
34 34
 
35 35
         // And the optional invoice id.
36
-        if ( ! empty( $form->invoice ) ) {
37
-            echo getpaid_hidden_field( 'invoice_id', $form->invoice->get_id() );
36
+        if (!empty($form->invoice)) {
37
+            echo getpaid_hidden_field('invoice_id', $form->invoice->get_id());
38 38
         }
39 39
 
40 40
         // We also want to include the form id.
41
-        echo getpaid_hidden_field( 'form_id', $form->get_id() );
41
+        echo getpaid_hidden_field('form_id', $form->get_id());
42 42
 
43 43
         // And an indication that this is a payment form submission.
44
-        echo getpaid_hidden_field( 'getpaid_payment_form_submission', '1' );
44
+        echo getpaid_hidden_field('getpaid_payment_form_submission', '1');
45 45
 
46 46
         // Fires before displaying payment form elements.
47
-        do_action( 'getpaid_payment_form_before_elements', $form );
47
+        do_action('getpaid_payment_form_before_elements', $form);
48 48
 
49 49
         // Display the elements.
50 50
         ?>
@@ -52,13 +52,13 @@  discard block
 block discarded – undo
52 52
             <div class="row">
53 53
                 <?php
54 54
 
55
-                    foreach ( $form->get_elements() as $element ) {
55
+                    foreach ($form->get_elements() as $element) {
56 56
 
57
-                        if ( isset( $element['type'] ) ) {
58
-                            $grid_class = esc_attr( getpaid_get_form_element_grid_class( $element ) );
57
+                        if (isset($element['type'])) {
58
+                            $grid_class = esc_attr(getpaid_get_form_element_grid_class($element));
59 59
                             echo "<div class='$grid_class'>";
60
-                            do_action( 'getpaid_payment_form_element', $element, $form );
61
-                            do_action( "getpaid_payment_form_element_{$element['type']}_template", $element, $form );
60
+                            do_action('getpaid_payment_form_element', $element, $form);
61
+                            do_action("getpaid_payment_form_element_{$element['type']}_template", $element, $form);
62 62
                             echo "</div>";
63 63
                         }
64 64
 
@@ -70,16 +70,16 @@  discard block
 block discarded – undo
70 70
 
71 71
         <?php
72 72
         // Fires after displaying payment form elements.
73
-        do_action( 'getpaid_payment_form_after_elements', $form );
73
+        do_action('getpaid_payment_form_after_elements', $form);
74 74
 
75 75
         echo "<div class='getpaid-payment-form-errors alert alert-danger d-none'></div>";
76 76
 
77
-        if ( wpinv_current_user_can_manage_invoicing() ) {
77
+        if (wpinv_current_user_can_manage_invoicing()) {
78 78
 
79 79
             edit_post_link(
80
-                __( 'Edit this form.', 'invoicing' ),
80
+                __('Edit this form.', 'invoicing'),
81 81
                 '<small class="form-text text-muted">',
82
-                '&nbsp;' . __( 'This is only visible to website administators.', 'invoicing' ) . '</small>',
82
+                '&nbsp;' . __('This is only visible to website administators.', 'invoicing') . '</small>',
83 83
                 $form->get_id(),
84 84
                 'text-danger'
85 85
             );
@@ -91,7 +91,7 @@  discard block
 block discarded – undo
91 91
 
92 92
     <div class="loading_div overlay overlay-black position-absolute row m-0 rounded overflow-hidden" style="height: 100%;width: 100%;top: 0px;z-index: 2;display:none;">
93 93
         <div class="spinner-border mx-auto align-self-center text-white" role="status">
94
-            <span class="sr-only"><?php _e( 'Loading...', 'invoicing' );?></span>
94
+            <span class="sr-only"><?php _e('Loading...', 'invoicing'); ?></span>
95 95
         </div>
96 96
     </div>
97 97
 
@@ -100,4 +100,4 @@  discard block
 block discarded – undo
100 100
 <?php
101 101
 
102 102
 // Fires after displaying a payment form.
103
-do_action( 'getpaid_after_payment_form', $form );
103
+do_action('getpaid_after_payment_form', $form);
Please login to merge, or discard this patch.
includes/admin/class-getpaid-post-types-admin.php 2 patches
Indentation   +639 added lines, -639 removed lines patch added patch discarded remove patch
@@ -13,646 +13,646 @@  discard block
 block discarded – undo
13 13
 class GetPaid_Post_Types_Admin {
14 14
 
15 15
     /**
16
-	 * Hook in methods.
17
-	 */
18
-	public static function init() {
19
-
20
-		// Init metaboxes.
21
-		GetPaid_Metaboxes::init();
22
-
23
-		// Filter the post updated messages.
24
-		add_filter( 'post_updated_messages', 'GetPaid_Post_Types_Admin::post_updated_messages' );
25
-
26
-		// Filter post actions.
27
-		add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::post_row_actions', 10, 2 );
28
-		add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::filter_invoice_row_actions', 90, 2 );
29
-
30
-		// Invoice table columns.
31
-		add_filter( 'manage_wpi_invoice_posts_columns', array( __CLASS__, 'invoice_columns' ), 100 );
32
-		add_action( 'manage_wpi_invoice_posts_custom_column', array( __CLASS__, 'display_invoice_columns' ), 10, 2 );
33
-
34
-		// Items table columns.
35
-		add_filter( 'manage_wpi_item_posts_columns', array( __CLASS__, 'item_columns' ), 100 );
36
-		add_filter( 'manage_edit-wpi_item_sortable_columns', array( __CLASS__, 'sortable_item_columns' ), 20 );
37
-		add_action( 'manage_wpi_item_posts_custom_column', array( __CLASS__, 'display_item_columns' ), 10, 2 );
38
-		add_action( 'restrict_manage_posts', array( __CLASS__, 'add_item_filters' ), 100 );
39
-		add_action( 'parse_query', array( __CLASS__, 'filter_item_query' ), 100 );
40
-		add_action( 'request', array( __CLASS__, 'reorder_items' ), 100 );
41
-
42
-		// Payment forms columns.
43
-		add_filter( 'manage_wpi_payment_form_posts_columns', array( __CLASS__, 'payment_form_columns' ), 100 );
44
-		add_action( 'manage_wpi_payment_form_posts_custom_column', array( __CLASS__, 'display_payment_form_columns' ), 10, 2 );
45
-		add_filter( 'display_post_states', array( __CLASS__, 'filter_payment_form_state' ), 10, 2 );
46
-
47
-		// Discount table columns.
48
-		add_filter( 'manage_wpi_discount_posts_columns', array( __CLASS__, 'discount_columns' ), 100 );
49
-		add_filter( 'bulk_actions-edit-wpi_discount', '__return_empty_array', 100 );
50
-
51
-		// Deleting posts.
52
-		add_action( 'delete_post', array( __CLASS__, 'delete_post' ) );
53
-		add_filter( 'display_post_states', array( __CLASS__, 'filter_discount_state' ), 10, 2 );
54
-	}
55
-
56
-	/**
57
-	 * Post updated messages.
58
-	 */
59
-	public static function post_updated_messages( $messages ) {
60
-		global $post;
61
-
62
-		$messages['wpi_discount'] = array(
63
-			0   => '',
64
-			1   => __( 'Discount updated.', 'invoicing' ),
65
-			2   => __( 'Custom field updated.', 'invoicing' ),
66
-			3   => __( 'Custom field deleted.', 'invoicing' ),
67
-			4   => __( 'Discount updated.', 'invoicing' ),
68
-			5   => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Discount restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
69
-			6   => __( 'Discount updated.', 'invoicing' ),
70
-			7   => __( 'Discount saved.', 'invoicing' ),
71
-			8   => __( 'Discount submitted.', 'invoicing' ),
72
-			9   => wp_sprintf( __( 'Discount scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
73
-			10  => __( 'Discount draft updated.', 'invoicing' ),
74
-		);
75
-
76
-		$messages['wpi_payment_form'] = array(
77
-			0   => '',
78
-			1   => __( 'Payment Form updated.', 'invoicing' ),
79
-			2   => __( 'Custom field updated.', 'invoicing' ),
80
-			3   => __( 'Custom field deleted.', 'invoicing' ),
81
-			4   => __( 'Payment Form updated.', 'invoicing' ),
82
-			5   => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Payment Form restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
83
-			6   => __( 'Payment Form updated.', 'invoicing' ),
84
-			7   => __( 'Payment Form saved.', 'invoicing' ),
85
-			8   => __( 'Payment Form submitted.', 'invoicing' ),
86
-			9   => wp_sprintf( __( 'Payment Form scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
87
-			10  => __( 'Payment Form draft updated.', 'invoicing' ),
88
-		);
89
-
90
-		return $messages;
91
-
92
-	}
93
-
94
-	/**
95
-	 * Post row actions.
96
-	 */
97
-	public static function post_row_actions( $actions, $post ) {
98
-
99
-		$post = get_post( $post );
100
-
101
-		// We do not want to edit the default payment form.
102
-		if ( 'wpi_payment_form' == $post->post_type && $post->ID == wpinv_get_default_payment_form() ) {
103
-			unset( $actions['trash'] );
104
-			unset( $actions['inline hide-if-no-js'] );
105
-		}
106
-
107
-		return $actions;
108
-	}
109
-
110
-	/**
16
+     * Hook in methods.
17
+     */
18
+    public static function init() {
19
+
20
+        // Init metaboxes.
21
+        GetPaid_Metaboxes::init();
22
+
23
+        // Filter the post updated messages.
24
+        add_filter( 'post_updated_messages', 'GetPaid_Post_Types_Admin::post_updated_messages' );
25
+
26
+        // Filter post actions.
27
+        add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::post_row_actions', 10, 2 );
28
+        add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::filter_invoice_row_actions', 90, 2 );
29
+
30
+        // Invoice table columns.
31
+        add_filter( 'manage_wpi_invoice_posts_columns', array( __CLASS__, 'invoice_columns' ), 100 );
32
+        add_action( 'manage_wpi_invoice_posts_custom_column', array( __CLASS__, 'display_invoice_columns' ), 10, 2 );
33
+
34
+        // Items table columns.
35
+        add_filter( 'manage_wpi_item_posts_columns', array( __CLASS__, 'item_columns' ), 100 );
36
+        add_filter( 'manage_edit-wpi_item_sortable_columns', array( __CLASS__, 'sortable_item_columns' ), 20 );
37
+        add_action( 'manage_wpi_item_posts_custom_column', array( __CLASS__, 'display_item_columns' ), 10, 2 );
38
+        add_action( 'restrict_manage_posts', array( __CLASS__, 'add_item_filters' ), 100 );
39
+        add_action( 'parse_query', array( __CLASS__, 'filter_item_query' ), 100 );
40
+        add_action( 'request', array( __CLASS__, 'reorder_items' ), 100 );
41
+
42
+        // Payment forms columns.
43
+        add_filter( 'manage_wpi_payment_form_posts_columns', array( __CLASS__, 'payment_form_columns' ), 100 );
44
+        add_action( 'manage_wpi_payment_form_posts_custom_column', array( __CLASS__, 'display_payment_form_columns' ), 10, 2 );
45
+        add_filter( 'display_post_states', array( __CLASS__, 'filter_payment_form_state' ), 10, 2 );
46
+
47
+        // Discount table columns.
48
+        add_filter( 'manage_wpi_discount_posts_columns', array( __CLASS__, 'discount_columns' ), 100 );
49
+        add_filter( 'bulk_actions-edit-wpi_discount', '__return_empty_array', 100 );
50
+
51
+        // Deleting posts.
52
+        add_action( 'delete_post', array( __CLASS__, 'delete_post' ) );
53
+        add_filter( 'display_post_states', array( __CLASS__, 'filter_discount_state' ), 10, 2 );
54
+    }
55
+
56
+    /**
57
+     * Post updated messages.
58
+     */
59
+    public static function post_updated_messages( $messages ) {
60
+        global $post;
61
+
62
+        $messages['wpi_discount'] = array(
63
+            0   => '',
64
+            1   => __( 'Discount updated.', 'invoicing' ),
65
+            2   => __( 'Custom field updated.', 'invoicing' ),
66
+            3   => __( 'Custom field deleted.', 'invoicing' ),
67
+            4   => __( 'Discount updated.', 'invoicing' ),
68
+            5   => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Discount restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
69
+            6   => __( 'Discount updated.', 'invoicing' ),
70
+            7   => __( 'Discount saved.', 'invoicing' ),
71
+            8   => __( 'Discount submitted.', 'invoicing' ),
72
+            9   => wp_sprintf( __( 'Discount scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
73
+            10  => __( 'Discount draft updated.', 'invoicing' ),
74
+        );
75
+
76
+        $messages['wpi_payment_form'] = array(
77
+            0   => '',
78
+            1   => __( 'Payment Form updated.', 'invoicing' ),
79
+            2   => __( 'Custom field updated.', 'invoicing' ),
80
+            3   => __( 'Custom field deleted.', 'invoicing' ),
81
+            4   => __( 'Payment Form updated.', 'invoicing' ),
82
+            5   => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Payment Form restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
83
+            6   => __( 'Payment Form updated.', 'invoicing' ),
84
+            7   => __( 'Payment Form saved.', 'invoicing' ),
85
+            8   => __( 'Payment Form submitted.', 'invoicing' ),
86
+            9   => wp_sprintf( __( 'Payment Form scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
87
+            10  => __( 'Payment Form draft updated.', 'invoicing' ),
88
+        );
89
+
90
+        return $messages;
91
+
92
+    }
93
+
94
+    /**
95
+     * Post row actions.
96
+     */
97
+    public static function post_row_actions( $actions, $post ) {
98
+
99
+        $post = get_post( $post );
100
+
101
+        // We do not want to edit the default payment form.
102
+        if ( 'wpi_payment_form' == $post->post_type && $post->ID == wpinv_get_default_payment_form() ) {
103
+            unset( $actions['trash'] );
104
+            unset( $actions['inline hide-if-no-js'] );
105
+        }
106
+
107
+        return $actions;
108
+    }
109
+
110
+    /**
111 111
      * Remove bulk edit option from admin side quote listing
112 112
      *
113 113
      * @since    1.0.0
114 114
      * @param array $actions post actions
115
-	 * @param WP_Post $post
115
+     * @param WP_Post $post
116 116
      * @return array $actions actions without edit option
117 117
      */
118 118
     public static function filter_invoice_row_actions( $actions, $post ) {
119 119
 
120 120
         if ( getpaid_is_invoice_post_type( $post->post_type ) ) {
121 121
 
122
-			$actions = array();
123
-			$invoice = new WPInv_Invoice( $post );
124
-
125
-			$actions['edit'] =  sprintf(
126
-				'<a href="%1$s">%2$s</a>',
127
-				esc_url( get_edit_post_link( $invoice->get_id() ) ),
128
-				esc_html( __( 'Edit', 'invoicing' ) )
129
-			);
130
-
131
-			if ( ! $invoice->is_draft() ) {
132
-
133
-				$actions['view'] =  sprintf(
134
-					'<a href="%1$s">%2$s</a>',
135
-					esc_url( $invoice->get_view_url() ),
136
-					sprintf(
137
-						esc_html( __( 'View %s', 'invoicing' ) ),
138
-						getpaid_get_post_type_label( $invoice->get_post_type(), false )
139
-					)
140
-				);
141
-
142
-				$actions['send'] =  sprintf(
143
-					'<a href="%1$s">%2$s</a>',
144
-					esc_url(
145
-						wp_nonce_url(
146
-							add_query_arg(
147
-								array(
148
-									'getpaid-admin-action' => 'send_invoice',
149
-									'invoice_id'           => $invoice->get_id()
150
-								)
151
-							),
152
-							'getpaid-nonce',
153
-							'getpaid-nonce'
154
-						)
155
-					),
156
-					esc_html( __( 'Send to Customer', 'invoicing' ) )
157
-				);
158
-
159
-			}
122
+            $actions = array();
123
+            $invoice = new WPInv_Invoice( $post );
124
+
125
+            $actions['edit'] =  sprintf(
126
+                '<a href="%1$s">%2$s</a>',
127
+                esc_url( get_edit_post_link( $invoice->get_id() ) ),
128
+                esc_html( __( 'Edit', 'invoicing' ) )
129
+            );
130
+
131
+            if ( ! $invoice->is_draft() ) {
132
+
133
+                $actions['view'] =  sprintf(
134
+                    '<a href="%1$s">%2$s</a>',
135
+                    esc_url( $invoice->get_view_url() ),
136
+                    sprintf(
137
+                        esc_html( __( 'View %s', 'invoicing' ) ),
138
+                        getpaid_get_post_type_label( $invoice->get_post_type(), false )
139
+                    )
140
+                );
141
+
142
+                $actions['send'] =  sprintf(
143
+                    '<a href="%1$s">%2$s</a>',
144
+                    esc_url(
145
+                        wp_nonce_url(
146
+                            add_query_arg(
147
+                                array(
148
+                                    'getpaid-admin-action' => 'send_invoice',
149
+                                    'invoice_id'           => $invoice->get_id()
150
+                                )
151
+                            ),
152
+                            'getpaid-nonce',
153
+                            'getpaid-nonce'
154
+                        )
155
+                    ),
156
+                    esc_html( __( 'Send to Customer', 'invoicing' ) )
157
+                );
158
+
159
+            }
160 160
 
161 161
         }
162 162
 
163 163
         return $actions;
164
-	}
165
-
166
-	/**
167
-	 * Returns an array of invoice table columns.
168
-	 */
169
-	public static function invoice_columns( $columns ) {
170
-
171
-		$columns = array(
172
-			'cb'                => $columns['cb'],
173
-			'number'            => __( 'Invoice', 'invoicing' ),
174
-			'customer'          => __( 'Customer', 'invoicing' ),
175
-			'invoice_date'      => __( 'Created', 'invoicing' ),
176
-			'payment_date'      => __( 'Completed', 'invoicing' ),
177
-			'amount'            => __( 'Amount', 'invoicing' ),
178
-			'recurring'         => __( 'Recurring', 'invoicing' ),
179
-			'status'            => __( 'Status', 'invoicing' ),
180
-		);
181
-
182
-		return apply_filters( 'wpi_invoice_table_columns', $columns );
183
-	}
184
-
185
-	/**
186
-	 * Displays invoice table columns.
187
-	 */
188
-	public static function display_invoice_columns( $column_name, $post_id ) {
189
-
190
-		$invoice = new WPInv_Invoice( $post_id );
191
-
192
-		switch ( $column_name ) {
193
-
194
-			case 'invoice_date' :
195
-				$date_time = esc_attr( $invoice->get_created_date() );
196
-				$date      = getpaid_format_date_value( $date_time, "&mdash;", true );
197
-				echo "<span title='$date_time'>$date</span>";
198
-				break;
199
-
200
-			case 'payment_date' :
201
-
202
-				if ( $invoice->is_paid() ) {
203
-					$date_time = esc_attr( $invoice->get_completed_date() );
204
-					$date      = getpaid_format_date_value( $date_time, "&mdash;", true );
205
-					echo "<span title='$date_time'>$date</span>";
206
-				} else {
207
-					echo "&mdash;";
208
-				}
164
+    }
165
+
166
+    /**
167
+     * Returns an array of invoice table columns.
168
+     */
169
+    public static function invoice_columns( $columns ) {
170
+
171
+        $columns = array(
172
+            'cb'                => $columns['cb'],
173
+            'number'            => __( 'Invoice', 'invoicing' ),
174
+            'customer'          => __( 'Customer', 'invoicing' ),
175
+            'invoice_date'      => __( 'Created', 'invoicing' ),
176
+            'payment_date'      => __( 'Completed', 'invoicing' ),
177
+            'amount'            => __( 'Amount', 'invoicing' ),
178
+            'recurring'         => __( 'Recurring', 'invoicing' ),
179
+            'status'            => __( 'Status', 'invoicing' ),
180
+        );
181
+
182
+        return apply_filters( 'wpi_invoice_table_columns', $columns );
183
+    }
184
+
185
+    /**
186
+     * Displays invoice table columns.
187
+     */
188
+    public static function display_invoice_columns( $column_name, $post_id ) {
189
+
190
+        $invoice = new WPInv_Invoice( $post_id );
191
+
192
+        switch ( $column_name ) {
193
+
194
+            case 'invoice_date' :
195
+                $date_time = esc_attr( $invoice->get_created_date() );
196
+                $date      = getpaid_format_date_value( $date_time, "&mdash;", true );
197
+                echo "<span title='$date_time'>$date</span>";
198
+                break;
199
+
200
+            case 'payment_date' :
201
+
202
+                if ( $invoice->is_paid() ) {
203
+                    $date_time = esc_attr( $invoice->get_completed_date() );
204
+                    $date      = getpaid_format_date_value( $date_time, "&mdash;", true );
205
+                    echo "<span title='$date_time'>$date</span>";
206
+                } else {
207
+                    echo "&mdash;";
208
+                }
209 209
 				
210
-				break;
210
+                break;
211 211
 
212
-			case 'amount' :
212
+            case 'amount' :
213 213
 
214
-				$amount = $invoice->get_total();
215
-				$formated_amount = wpinv_price( $amount, $invoice->get_currency() );
214
+                $amount = $invoice->get_total();
215
+                $formated_amount = wpinv_price( $amount, $invoice->get_currency() );
216 216
 
217
-				if ( $invoice->is_refunded() ) {
218
-					$refunded_amount = wpinv_price( 0, $invoice->get_currency() );
219
-					echo "<del>$formated_amount</del>&nbsp;<ins>$refunded_amount</ins>";
220
-				} else {
217
+                if ( $invoice->is_refunded() ) {
218
+                    $refunded_amount = wpinv_price( 0, $invoice->get_currency() );
219
+                    echo "<del>$formated_amount</del>&nbsp;<ins>$refunded_amount</ins>";
220
+                } else {
221 221
 
222
-					$discount = $invoice->get_total_discount();
222
+                    $discount = $invoice->get_total_discount();
223 223
 
224
-					if ( ! empty( $discount ) ) {
225
-						$new_amount = wpinv_price( $amount + $discount, $invoice->get_currency() );
226
-						echo "<del>$new_amount</del>&nbsp;<ins>$formated_amount</ins>";
227
-					} else {
228
-						echo $formated_amount;
229
-					}
224
+                    if ( ! empty( $discount ) ) {
225
+                        $new_amount = wpinv_price( $amount + $discount, $invoice->get_currency() );
226
+                        echo "<del>$new_amount</del>&nbsp;<ins>$formated_amount</ins>";
227
+                    } else {
228
+                        echo $formated_amount;
229
+                    }
230 230
 
231
-				}
231
+                }
232 232
 
233
-				break;
233
+                break;
234 234
 
235
-			case 'status' :
236
-				$status       = sanitize_text_field( $invoice->get_status() );
237
-				$status_label = sanitize_text_field( $invoice->get_status_nicename() );
235
+            case 'status' :
236
+                $status       = sanitize_text_field( $invoice->get_status() );
237
+                $status_label = sanitize_text_field( $invoice->get_status_nicename() );
238 238
 
239
-				// If it is paid, show the gateway title.
240
-				if ( $invoice->is_paid() ) {
241
-					$gateway = sanitize_text_field( $invoice->get_gateway_title() );
242
-					$gateway = wp_sprintf( esc_attr__( 'Paid via %s', 'invoicing' ), $gateway );
239
+                // If it is paid, show the gateway title.
240
+                if ( $invoice->is_paid() ) {
241
+                    $gateway = sanitize_text_field( $invoice->get_gateway_title() );
242
+                    $gateway = wp_sprintf( esc_attr__( 'Paid via %s', 'invoicing' ), $gateway );
243 243
 
244
-					echo "<mark class='wpi-help-tip getpaid-invoice-status $status' title='$gateway'><span>$status_label</span></mark>";
245
-				} else {
246
-					echo "<mark class='getpaid-invoice-status $status'><span>$status_label</span></mark>";
247
-				}
244
+                    echo "<mark class='wpi-help-tip getpaid-invoice-status $status' title='$gateway'><span>$status_label</span></mark>";
245
+                } else {
246
+                    echo "<mark class='getpaid-invoice-status $status'><span>$status_label</span></mark>";
247
+                }
248 248
 
249
-				// If it is not paid, display the overdue and view status.
250
-				if ( ! $invoice->is_paid() && ! $invoice->is_refunded() ) {
249
+                // If it is not paid, display the overdue and view status.
250
+                if ( ! $invoice->is_paid() && ! $invoice->is_refunded() ) {
251 251
 
252
-					// Invoice view status.
253
-					if ( wpinv_is_invoice_viewed( $invoice->get_id() ) ) {
254
-						echo '&nbsp;&nbsp;<i class="fa fa-eye wpi-help-tip" title="'. esc_attr__( 'Viewed by Customer', 'invoicing' ).'"></i>';
255
-					} else {
256
-						echo '&nbsp;&nbsp;<i class="fa fa-eye-slash wpi-help-tip" title="'. esc_attr__( 'Not Viewed by Customer', 'invoicing' ).'"></i>';
257
-					}
252
+                    // Invoice view status.
253
+                    if ( wpinv_is_invoice_viewed( $invoice->get_id() ) ) {
254
+                        echo '&nbsp;&nbsp;<i class="fa fa-eye wpi-help-tip" title="'. esc_attr__( 'Viewed by Customer', 'invoicing' ).'"></i>';
255
+                    } else {
256
+                        echo '&nbsp;&nbsp;<i class="fa fa-eye-slash wpi-help-tip" title="'. esc_attr__( 'Not Viewed by Customer', 'invoicing' ).'"></i>';
257
+                    }
258 258
 
259
-					// Display the overview status.
260
-					if ( wpinv_get_option( 'overdue_active' ) ) {
261
-						$due_date = $invoice->get_due_date();
262
-						$fomatted = getpaid_format_date( $due_date );
259
+                    // Display the overview status.
260
+                    if ( wpinv_get_option( 'overdue_active' ) ) {
261
+                        $due_date = $invoice->get_due_date();
262
+                        $fomatted = getpaid_format_date( $due_date );
263 263
 
264
-						if ( ! empty( $fomatted ) ) {
265
-							$date = wp_sprintf( __( 'Due %s', 'invoicing' ), $fomatted );
266
-							echo "<p class='description' style='color: #888;' title='$due_date'>$fomatted</p>";
267
-						}
268
-					}
264
+                        if ( ! empty( $fomatted ) ) {
265
+                            $date = wp_sprintf( __( 'Due %s', 'invoicing' ), $fomatted );
266
+                            echo "<p class='description' style='color: #888;' title='$due_date'>$fomatted</p>";
267
+                        }
268
+                    }
269 269
 
270
-				}
270
+                }
271 271
 
272
-				break;
272
+                break;
273 273
 
274
-			case 'recurring':
274
+            case 'recurring':
275 275
 
276
-				if ( $invoice->is_recurring() ) {
277
-					echo '<i class="fa fa-check" style="color:#43850a;"></i>';
278
-				} else {
279
-					echo '<i class="fa fa-times" style="color:#616161;"></i>';
280
-				}
281
-				break;
276
+                if ( $invoice->is_recurring() ) {
277
+                    echo '<i class="fa fa-check" style="color:#43850a;"></i>';
278
+                } else {
279
+                    echo '<i class="fa fa-times" style="color:#616161;"></i>';
280
+                }
281
+                break;
282 282
 
283
-			case 'number' :
283
+            case 'number' :
284 284
 
285
-				$edit_link       = esc_url( get_edit_post_link( $invoice->get_id() ) );
286
-				$invoice_number  = sanitize_text_field( $invoice->get_number() );
287
-				$invoice_details = esc_attr__( 'View Invoice Details', 'invoicing' );
285
+                $edit_link       = esc_url( get_edit_post_link( $invoice->get_id() ) );
286
+                $invoice_number  = sanitize_text_field( $invoice->get_number() );
287
+                $invoice_details = esc_attr__( 'View Invoice Details', 'invoicing' );
288 288
 
289
-				echo "<a href='$edit_link' title='$invoice_details'><strong>$invoice_number</strong></a>";
289
+                echo "<a href='$edit_link' title='$invoice_details'><strong>$invoice_number</strong></a>";
290 290
 
291
-				break;
291
+                break;
292 292
 
293
-			case 'customer' :
293
+            case 'customer' :
294 294
 	
295
-				$customer_name = $invoice->get_user_full_name();
295
+                $customer_name = $invoice->get_user_full_name();
296 296
 	
297
-				if ( empty( $customer_name ) ) {
298
-					$customer_name = $invoice->get_email();
299
-				}
297
+                if ( empty( $customer_name ) ) {
298
+                    $customer_name = $invoice->get_email();
299
+                }
300 300
 	
301
-				if ( ! empty( $customer_name ) ) {
302
-					$customer_details = esc_attr__( 'View Customer Details', 'invoicing' );
303
-					$view_link        = esc_url( add_query_arg( 'user_id', $invoice->get_user_id(), admin_url( 'user-edit.php' ) ) );
304
-					echo "<a href='$view_link' title='$customer_details'><span>$customer_name</span></a>";
305
-				} else {
306
-					echo '<div>&mdash;</div>';
307
-				}
301
+                if ( ! empty( $customer_name ) ) {
302
+                    $customer_details = esc_attr__( 'View Customer Details', 'invoicing' );
303
+                    $view_link        = esc_url( add_query_arg( 'user_id', $invoice->get_user_id(), admin_url( 'user-edit.php' ) ) );
304
+                    echo "<a href='$view_link' title='$customer_details'><span>$customer_name</span></a>";
305
+                } else {
306
+                    echo '<div>&mdash;</div>';
307
+                }
308 308
 
309
-				break;
309
+                break;
310 310
 
311
-		}
311
+        }
312 312
 
313
-	}
313
+    }
314 314
 
315
-	/**
316
-	 * Returns an array of payment forms table columns.
317
-	 */
318
-	public static function payment_form_columns( $columns ) {
315
+    /**
316
+     * Returns an array of payment forms table columns.
317
+     */
318
+    public static function payment_form_columns( $columns ) {
319 319
 
320
-		$columns = array(
321
-			'cb'                => $columns['cb'],
322
-			'title'             => __( 'Name', 'invoicing' ),
323
-			'shortcode'         => __( 'Shortcode', 'invoicing' ),
324
-			'earnings'          => __( 'Revenue', 'invoicing' ),
325
-			'refunds'           => __( 'Refunded', 'invoicing' ),
326
-			'items'             => __( 'Items', 'invoicing' ),
327
-			'date'              => __( 'Date', 'invoicing' ),
328
-		);
320
+        $columns = array(
321
+            'cb'                => $columns['cb'],
322
+            'title'             => __( 'Name', 'invoicing' ),
323
+            'shortcode'         => __( 'Shortcode', 'invoicing' ),
324
+            'earnings'          => __( 'Revenue', 'invoicing' ),
325
+            'refunds'           => __( 'Refunded', 'invoicing' ),
326
+            'items'             => __( 'Items', 'invoicing' ),
327
+            'date'              => __( 'Date', 'invoicing' ),
328
+        );
329 329
 
330
-		return apply_filters( 'wpi_payment_form_table_columns', $columns );
330
+        return apply_filters( 'wpi_payment_form_table_columns', $columns );
331 331
 
332
-	}
332
+    }
333 333
 
334
-	/**
335
-	 * Displays payment form table columns.
336
-	 */
337
-	public static function display_payment_form_columns( $column_name, $post_id ) {
334
+    /**
335
+     * Displays payment form table columns.
336
+     */
337
+    public static function display_payment_form_columns( $column_name, $post_id ) {
338 338
 
339
-		// Retrieve the payment form.
340
-		$form = new GetPaid_Payment_Form( $post_id );
339
+        // Retrieve the payment form.
340
+        $form = new GetPaid_Payment_Form( $post_id );
341 341
 
342
-		switch ( $column_name ) {
342
+        switch ( $column_name ) {
343 343
 
344
-			case 'earnings' :
345
-				echo wpinv_price( $form->get_earned() );
346
-				break;
344
+            case 'earnings' :
345
+                echo wpinv_price( $form->get_earned() );
346
+                break;
347 347
 
348
-			case 'refunds' :
349
-				echo wpinv_price( $form->get_refunded() );
350
-				break;
348
+            case 'refunds' :
349
+                echo wpinv_price( $form->get_refunded() );
350
+                break;
351 351
 
352
-			case 'refunds' :
353
-				echo wpinv_price( $form->get_refunded() );
354
-				break;
352
+            case 'refunds' :
353
+                echo wpinv_price( $form->get_refunded() );
354
+                break;
355 355
 
356
-			case 'shortcode' :
356
+            case 'shortcode' :
357 357
 
358
-				if ( $form->is_default() ) {
359
-					echo '&mdash;';
360
-				} else {
361
-					echo '<input onClick="this.select()" type="text" value="[getpaid form=' . esc_attr( $form->get_id() ) . ']" style="width: 100%;" readonly/>';
362
-				}
358
+                if ( $form->is_default() ) {
359
+                    echo '&mdash;';
360
+                } else {
361
+                    echo '<input onClick="this.select()" type="text" value="[getpaid form=' . esc_attr( $form->get_id() ) . ']" style="width: 100%;" readonly/>';
362
+                }
363 363
 
364
-				break;
364
+                break;
365 365
 
366
-			case 'items' :
366
+            case 'items' :
367 367
 
368
-				$items = $form->get_items();
368
+                $items = $form->get_items();
369 369
 
370
-				if ( $form->is_default() || empty( $items ) ) {
371
-					echo '&mdash;';
372
-					return;
373
-				}
370
+                if ( $form->is_default() || empty( $items ) ) {
371
+                    echo '&mdash;';
372
+                    return;
373
+                }
374 374
 
375
-				$_items = array();
375
+                $_items = array();
376 376
 
377
-				foreach ( $items as $item ) {
378
-					$url = $item->get_edit_url();
377
+                foreach ( $items as $item ) {
378
+                    $url = $item->get_edit_url();
379 379
 
380
-					if ( empty( $url ) ) {
381
-						$_items[] = sanitize_text_field( $item->get_name() );
382
-					} else {
383
-						$_items[] = sprintf(
384
-							'<a href="%s">%s</a>',
385
-							esc_url( $url ),
386
-							sanitize_text_field( $item->get_name() )
387
-						);
388
-					}
380
+                    if ( empty( $url ) ) {
381
+                        $_items[] = sanitize_text_field( $item->get_name() );
382
+                    } else {
383
+                        $_items[] = sprintf(
384
+                            '<a href="%s">%s</a>',
385
+                            esc_url( $url ),
386
+                            sanitize_text_field( $item->get_name() )
387
+                        );
388
+                    }
389 389
 
390
-				}
390
+                }
391 391
 
392
-				echo implode( '<br>', $_items );
392
+                echo implode( '<br>', $_items );
393 393
 
394
-				break;
394
+                break;
395 395
 
396
-		}
396
+        }
397 397
 
398
-	}
398
+    }
399 399
 
400
-	/**
401
-	 * Filters post states.
402
-	 */
403
-	public static function filter_payment_form_state( $post_states, $post ) {
400
+    /**
401
+     * Filters post states.
402
+     */
403
+    public static function filter_payment_form_state( $post_states, $post ) {
404 404
 
405
-		if ( 'wpi_payment_form' == $post->post_type && wpinv_get_default_payment_form() == $post->ID ) {
406
-			$post_states[ 'default_form' ] = __( 'Default Payment Form', 'invoicing' );
407
-		}
405
+        if ( 'wpi_payment_form' == $post->post_type && wpinv_get_default_payment_form() == $post->ID ) {
406
+            $post_states[ 'default_form' ] = __( 'Default Payment Form', 'invoicing' );
407
+        }
408 408
 	
409
-		return $post_states;
410
-
411
-	}
412
-
413
-	/**
414
-	 * Returns an array of coupon table columns.
415
-	 */
416
-	public static function discount_columns( $columns ) {
417
-
418
-		$columns = array(
419
-			'cb'                => $columns['cb'],
420
-			'title'             => __( 'Name', 'invoicing' ),
421
-			'code'              => __( 'Code', 'invoicing' ),
422
-			'amount'            => __( 'Amount', 'invoicing' ),
423
-			'usage'             => __( 'Usage / Limit', 'invoicing' ),
424
-			'start_date'        => __( 'Start Date', 'invoicing' ),
425
-			'expiry_date'       => __( 'Expiry Date', 'invoicing' ),
426
-		);
427
-
428
-		return apply_filters( 'wpi_discount_table_columns', $columns );
429
-	}
430
-
431
-	/**
432
-	 * Filters post states.
433
-	 */
434
-	public static function filter_discount_state( $post_states, $post ) {
435
-
436
-		if ( 'wpi_discount' == $post->post_type ) {
437
-
438
-			$discount = new WPInv_Discount( $post );
439
-
440
-			$status = $discount->is_expired() ? 'expired' : $discount->get_status();
441
-
442
-			if ( $status != 'publish' ) {
443
-				return array(
444
-					'discount_status' => wpinv_discount_status( $status ),
445
-				);
446
-			}
447
-
448
-			return array();
449
-
450
-		}
451
-
452
-		return $post_states;
453
-
454
-	}
455
-
456
-	/**
457
-	 * Returns an array of items table columns.
458
-	 */
459
-	public static function item_columns( $columns ) {
460
-
461
-		$columns = array(
462
-			'cb'                => $columns['cb'],
463
-			'title'             => __( 'Name', 'invoicing' ),
464
-			'price'             => __( 'Price', 'invoicing' ),
465
-			'vat_rule'          => __( 'VAT rule', 'invoicing' ),
466
-			'vat_class'         => __( 'VAT class', 'invoicing' ),
467
-			'type'              => __( 'Type', 'invoicing' ),
468
-			'shortcode'         => __( 'Shortcode', 'invoicing' ),
469
-		);
470
-
471
-		if ( ! wpinv_use_taxes() ) {
472
-			unset( $columns['vat_rule'] );
473
-			unset( $columns['vat_class'] );
474
-		}
475
-
476
-		return apply_filters( 'wpi_item_table_columns', $columns );
477
-	}
478
-
479
-	/**
480
-	 * Returns an array of sortable items table columns.
481
-	 */
482
-	public static function sortable_item_columns( $columns ) {
483
-
484
-		return array_merge(
485
-			$columns,
486
-			array(
487
-				'price'     => 'price',
488
-				'vat_rule'  => 'vat_rule',
489
-				'vat_class' => 'vat_class',
490
-				'type'      => 'type',
491
-			)
492
-		);
493
-
494
-	}
495
-
496
-	/**
497
-	 * Displays items table columns.
498
-	 */
499
-	public static function display_item_columns( $column_name, $post_id ) {
409
+        return $post_states;
410
+
411
+    }
412
+
413
+    /**
414
+     * Returns an array of coupon table columns.
415
+     */
416
+    public static function discount_columns( $columns ) {
417
+
418
+        $columns = array(
419
+            'cb'                => $columns['cb'],
420
+            'title'             => __( 'Name', 'invoicing' ),
421
+            'code'              => __( 'Code', 'invoicing' ),
422
+            'amount'            => __( 'Amount', 'invoicing' ),
423
+            'usage'             => __( 'Usage / Limit', 'invoicing' ),
424
+            'start_date'        => __( 'Start Date', 'invoicing' ),
425
+            'expiry_date'       => __( 'Expiry Date', 'invoicing' ),
426
+        );
427
+
428
+        return apply_filters( 'wpi_discount_table_columns', $columns );
429
+    }
430
+
431
+    /**
432
+     * Filters post states.
433
+     */
434
+    public static function filter_discount_state( $post_states, $post ) {
435
+
436
+        if ( 'wpi_discount' == $post->post_type ) {
437
+
438
+            $discount = new WPInv_Discount( $post );
439
+
440
+            $status = $discount->is_expired() ? 'expired' : $discount->get_status();
441
+
442
+            if ( $status != 'publish' ) {
443
+                return array(
444
+                    'discount_status' => wpinv_discount_status( $status ),
445
+                );
446
+            }
447
+
448
+            return array();
449
+
450
+        }
451
+
452
+        return $post_states;
453
+
454
+    }
455
+
456
+    /**
457
+     * Returns an array of items table columns.
458
+     */
459
+    public static function item_columns( $columns ) {
460
+
461
+        $columns = array(
462
+            'cb'                => $columns['cb'],
463
+            'title'             => __( 'Name', 'invoicing' ),
464
+            'price'             => __( 'Price', 'invoicing' ),
465
+            'vat_rule'          => __( 'VAT rule', 'invoicing' ),
466
+            'vat_class'         => __( 'VAT class', 'invoicing' ),
467
+            'type'              => __( 'Type', 'invoicing' ),
468
+            'shortcode'         => __( 'Shortcode', 'invoicing' ),
469
+        );
470
+
471
+        if ( ! wpinv_use_taxes() ) {
472
+            unset( $columns['vat_rule'] );
473
+            unset( $columns['vat_class'] );
474
+        }
475
+
476
+        return apply_filters( 'wpi_item_table_columns', $columns );
477
+    }
478
+
479
+    /**
480
+     * Returns an array of sortable items table columns.
481
+     */
482
+    public static function sortable_item_columns( $columns ) {
483
+
484
+        return array_merge(
485
+            $columns,
486
+            array(
487
+                'price'     => 'price',
488
+                'vat_rule'  => 'vat_rule',
489
+                'vat_class' => 'vat_class',
490
+                'type'      => 'type',
491
+            )
492
+        );
493
+
494
+    }
495
+
496
+    /**
497
+     * Displays items table columns.
498
+     */
499
+    public static function display_item_columns( $column_name, $post_id ) {
500 500
  
501
-		$item = new WPInv_Item( $post_id );
501
+        $item = new WPInv_Item( $post_id );
502 502
 
503
-		switch ( $column_name ) {
503
+        switch ( $column_name ) {
504 504
 
505
-			case 'price' :
505
+            case 'price' :
506 506
 
507
-				if ( ! $item->is_recurring() ) {
508
-					echo $item->get_the_price();
509
-					break;
510
-				}
507
+                if ( ! $item->is_recurring() ) {
508
+                    echo $item->get_the_price();
509
+                    break;
510
+                }
511 511
 
512
-				$price = wp_sprintf(
513
-					__( '%s / %s', 'invoicing' ),
514
-					$item->get_the_price(),
515
-					getpaid_get_subscription_period_label( $item->get_recurring_period(), $item->get_recurring_interval(), '' )
516
-				);
512
+                $price = wp_sprintf(
513
+                    __( '%s / %s', 'invoicing' ),
514
+                    $item->get_the_price(),
515
+                    getpaid_get_subscription_period_label( $item->get_recurring_period(), $item->get_recurring_interval(), '' )
516
+                );
517 517
 
518
-				if ( $item->get_the_price() == $item->get_the_initial_price() ) {
519
-					echo $price;
520
-					break;
521
-				}
518
+                if ( $item->get_the_price() == $item->get_the_initial_price() ) {
519
+                    echo $price;
520
+                    break;
521
+                }
522 522
 
523
-				echo $item->get_the_initial_price();
523
+                echo $item->get_the_initial_price();
524 524
 
525
-				echo '<span class="meta">' . wp_sprintf( __( 'then %s', 'invoicing' ), $price )  .'</span>';
526
-				break;
525
+                echo '<span class="meta">' . wp_sprintf( __( 'then %s', 'invoicing' ), $price )  .'</span>';
526
+                break;
527 527
 
528
-			case 'vat_rule' :
529
-				echo getpaid_get_tax_rule_label( $item->get_vat_rule() );
530
-				break;
528
+            case 'vat_rule' :
529
+                echo getpaid_get_tax_rule_label( $item->get_vat_rule() );
530
+                break;
531 531
 
532
-			case 'vat_class' :
533
-				echo getpaid_get_tax_class_label( $item->get_vat_class() );
534
-				break;
532
+            case 'vat_class' :
533
+                echo getpaid_get_tax_class_label( $item->get_vat_class() );
534
+                break;
535 535
 
536
-			case 'shortcode' :
537
-				echo '<input onClick="this.select()" type="text" value="[getpaid item=' . esc_attr( $item->get_id() ) . ' button=\'Buy Now\']" style="width: 100%;" readonly/>';
538
-				break;
536
+            case 'shortcode' :
537
+                echo '<input onClick="this.select()" type="text" value="[getpaid item=' . esc_attr( $item->get_id() ) . ' button=\'Buy Now\']" style="width: 100%;" readonly/>';
538
+                break;
539 539
 
540
-			case 'type' :
541
-				echo wpinv_item_type( $item->get_id() ) . '<span class="meta">' . $item->get_custom_singular_name() . '</span>';
542
-				break;
540
+            case 'type' :
541
+                echo wpinv_item_type( $item->get_id() ) . '<span class="meta">' . $item->get_custom_singular_name() . '</span>';
542
+                break;
543 543
 
544
-		}
544
+        }
545 545
 
546
-	}
546
+    }
547 547
 
548
-	/**
549
-	 * Lets users filter items using taxes.
550
-	 */
551
-	public static function add_item_filters( $post_type ) {
548
+    /**
549
+     * Lets users filter items using taxes.
550
+     */
551
+    public static function add_item_filters( $post_type ) {
552 552
 
553
-		// Abort if we're not dealing with items.
554
-		if ( $post_type != 'wpi_item' ) {
555
-			return;
556
-		}
553
+        // Abort if we're not dealing with items.
554
+        if ( $post_type != 'wpi_item' ) {
555
+            return;
556
+        }
557 557
 
558
-		// Filter by vat rules.
559
-		if ( wpinv_use_taxes() ) {
558
+        // Filter by vat rules.
559
+        if ( wpinv_use_taxes() ) {
560 560
 	
561
-			// Sanitize selected vat rule.
562
-			$vat_rule   = '';
563
-			$vat_rules  = getpaid_get_tax_rules();
564
-			if ( isset( $_GET['vat_rule'] ) ) {
565
-				$vat_rule   =  $_GET['vat_rule'];
566
-			}
567
-
568
-			// Filter by VAT rule.
569
-			echo wpinv_html_select(
570
-				array(
571
-					'options'          => array_merge(
572
-						array(
573
-							'' => __( 'All VAT rules', 'invoicing' )
574
-						),
575
-						$vat_rules
576
-					),
577
-					'name'             => 'vat_rule',
578
-					'id'               => 'vat_rule',
579
-					'selected'         => in_array( $vat_rule, array_keys( $vat_rules ) ) ? $vat_rule : '',
580
-					'show_option_all'  => false,
581
-					'show_option_none' => false,
582
-				)
583
-			);
584
-
585
-			// Filter by VAT class.
561
+            // Sanitize selected vat rule.
562
+            $vat_rule   = '';
563
+            $vat_rules  = getpaid_get_tax_rules();
564
+            if ( isset( $_GET['vat_rule'] ) ) {
565
+                $vat_rule   =  $_GET['vat_rule'];
566
+            }
567
+
568
+            // Filter by VAT rule.
569
+            echo wpinv_html_select(
570
+                array(
571
+                    'options'          => array_merge(
572
+                        array(
573
+                            '' => __( 'All VAT rules', 'invoicing' )
574
+                        ),
575
+                        $vat_rules
576
+                    ),
577
+                    'name'             => 'vat_rule',
578
+                    'id'               => 'vat_rule',
579
+                    'selected'         => in_array( $vat_rule, array_keys( $vat_rules ) ) ? $vat_rule : '',
580
+                    'show_option_all'  => false,
581
+                    'show_option_none' => false,
582
+                )
583
+            );
584
+
585
+            // Filter by VAT class.
586 586
 	
587
-			// Sanitize selected vat rule.
588
-			$vat_class   = '';
589
-			$vat_classes = getpaid_get_tax_classes();
590
-			if ( isset( $_GET['vat_class'] ) ) {
591
-				$vat_class   =  $_GET['vat_class'];
592
-			}
593
-
594
-			echo wpinv_html_select(
595
-				array(
596
-					'options'          => array_merge(
597
-						array(
598
-							'' => __( 'All VAT classes', 'invoicing' )
599
-						),
600
-						$vat_classes
601
-					),
602
-					'name'             => 'vat_class',
603
-					'id'               => 'vat_class',
604
-					'selected'         => in_array( $vat_class, array_keys( $vat_classes ) ) ? $vat_class : '',
605
-					'show_option_all'  => false,
606
-					'show_option_none' => false,
607
-				)
608
-			);
609
-
610
-		}
611
-
612
-		// Filter by item type.
613
-		$type   = '';
614
-		if ( isset( $_GET['type'] ) ) {
615
-			$type   =  $_GET['type'];
616
-		}
617
-
618
-		echo wpinv_html_select(
619
-			array(
620
-				'options'          => array_merge(
621
-					array(
622
-						'' => __( 'All item types', 'invoicing' )
623
-					),
624
-					wpinv_get_item_types()
625
-				),
626
-				'name'             => 'type',
627
-				'id'               => 'type',
628
-				'selected'         => in_array( $type, wpinv_item_types() ) ? $type : '',
629
-				'show_option_all'  => false,
630
-				'show_option_none' => false,
631
-			)
632
-		);
633
-
634
-	}
635
-
636
-	/**
637
-	 * Filters the item query.
638
-	 */
639
-	public static function filter_item_query( $query ) {
640
-
641
-		// modify the query only if it admin and main query.
642
-		if ( ! ( is_admin() && $query->is_main_query() ) ){ 
643
-			return $query;
644
-		}
645
-
646
-		// we want to modify the query for our items.
647
-		if ( empty( $query->query['post_type'] ) || 'wpi_item' != $query->query['post_type'] ){
648
-			return $query;
649
-		}
650
-
651
-		if ( empty( $query->query_vars['meta_query'] ) ) {
652
-			$query->query_vars['meta_query'] = array();
653
-		}
654
-
655
-		// Filter vat rule type
587
+            // Sanitize selected vat rule.
588
+            $vat_class   = '';
589
+            $vat_classes = getpaid_get_tax_classes();
590
+            if ( isset( $_GET['vat_class'] ) ) {
591
+                $vat_class   =  $_GET['vat_class'];
592
+            }
593
+
594
+            echo wpinv_html_select(
595
+                array(
596
+                    'options'          => array_merge(
597
+                        array(
598
+                            '' => __( 'All VAT classes', 'invoicing' )
599
+                        ),
600
+                        $vat_classes
601
+                    ),
602
+                    'name'             => 'vat_class',
603
+                    'id'               => 'vat_class',
604
+                    'selected'         => in_array( $vat_class, array_keys( $vat_classes ) ) ? $vat_class : '',
605
+                    'show_option_all'  => false,
606
+                    'show_option_none' => false,
607
+                )
608
+            );
609
+
610
+        }
611
+
612
+        // Filter by item type.
613
+        $type   = '';
614
+        if ( isset( $_GET['type'] ) ) {
615
+            $type   =  $_GET['type'];
616
+        }
617
+
618
+        echo wpinv_html_select(
619
+            array(
620
+                'options'          => array_merge(
621
+                    array(
622
+                        '' => __( 'All item types', 'invoicing' )
623
+                    ),
624
+                    wpinv_get_item_types()
625
+                ),
626
+                'name'             => 'type',
627
+                'id'               => 'type',
628
+                'selected'         => in_array( $type, wpinv_item_types() ) ? $type : '',
629
+                'show_option_all'  => false,
630
+                'show_option_none' => false,
631
+            )
632
+        );
633
+
634
+    }
635
+
636
+    /**
637
+     * Filters the item query.
638
+     */
639
+    public static function filter_item_query( $query ) {
640
+
641
+        // modify the query only if it admin and main query.
642
+        if ( ! ( is_admin() && $query->is_main_query() ) ){ 
643
+            return $query;
644
+        }
645
+
646
+        // we want to modify the query for our items.
647
+        if ( empty( $query->query['post_type'] ) || 'wpi_item' != $query->query['post_type'] ){
648
+            return $query;
649
+        }
650
+
651
+        if ( empty( $query->query_vars['meta_query'] ) ) {
652
+            $query->query_vars['meta_query'] = array();
653
+        }
654
+
655
+        // Filter vat rule type
656 656
         if ( ! empty( $_GET['vat_rule'] ) ) {
657 657
             $query->query_vars['meta_query'][] = array(
658 658
                 'key'     => '_wpinv_vat_rule',
@@ -677,94 +677,94 @@  discard block
 block discarded – undo
677 677
                 'value'   => sanitize_text_field( $_GET['type'] ),
678 678
                 'compare' => '='
679 679
             );
680
-		}
681
-
682
-	}
683
-
684
-	/**
685
-	 * Reorders items.
686
-	 */
687
-	public static function reorder_items( $vars ) {
688
-		global $typenow;
689
-
690
-		if ( 'wpi_item' !== $typenow || empty( $vars['orderby'] ) ) {
691
-			return $vars;
692
-		}
693
-
694
-		// By item type.
695
-		if ( 'type' == $vars['orderby'] ) {
696
-			return array_merge(
697
-				$vars,
698
-				array(
699
-					'meta_key' => '_wpinv_type',
700
-					'orderby'  => 'meta_value'
701
-				)
702
-			);
703
-		}
704
-
705
-		// By vat class.
706
-		if ( 'vat_class' == $vars['orderby'] ) {
707
-			return array_merge(
708
-				$vars,
709
-				array(
710
-					'meta_key' => '_wpinv_vat_class',
711
-					'orderby'  => 'meta_value'
712
-				)
713
-			);
714
-		}
715
-
716
-		// By vat rule.
717
-		if ( 'vat_rule' == $vars['orderby'] ) {
718
-			return array_merge(
719
-				$vars,
720
-				array(
721
-					'meta_key' => '_wpinv_vat_rule',
722
-					'orderby'  => 'meta_value'
723
-				)
724
-			);
725
-		}
726
-
727
-		// By price.
728
-		if ( 'price' == $vars['orderby'] ) {
729
-			return array_merge(
730
-				$vars,
731
-				array(
732
-					'meta_key' => '_wpinv_price',
733
-					'orderby'  => 'meta_value_num'
734
-				)
735
-			);
736
-		}
737
-
738
-		return $vars;
739
-
740
-	}
741
-
742
-	/**
743
-	 * Fired when deleting a post.
744
-	 */
745
-	public static function delete_post( $post_id ) {
746
-
747
-		switch ( get_post_type( $post_id ) ) {
748
-
749
-			case 'wpi_item' :
750
-				do_action( "getpaid_before_delete_item", new WPInv_Item( $post_id ) );
751
-				break;
752
-
753
-			case 'wpi_payment_form' :
754
-				do_action( "getpaid_before_delete_payment_form", new GetPaid_Payment_Form( $post_id ) );
755
-				break;
756
-
757
-			case 'wpi_discount' :
758
-				do_action( "getpaid_before_delete_discount", new WPInv_Discount( $post_id ) );
759
-				break;
760
-
761
-			case 'wpi_invoice' :
762
-				$invoice = new WPInv_Invoice( $post_id );
763
-				do_action( "getpaid_before_delete_invoice", $invoice );
764
-				$invoice->get_data_store()->delete_items( $invoice );
765
-				$invoice->get_data_store()->delete_special_fields( $invoice );
766
-				break;
767
-		}
768
-	}
680
+        }
681
+
682
+    }
683
+
684
+    /**
685
+     * Reorders items.
686
+     */
687
+    public static function reorder_items( $vars ) {
688
+        global $typenow;
689
+
690
+        if ( 'wpi_item' !== $typenow || empty( $vars['orderby'] ) ) {
691
+            return $vars;
692
+        }
693
+
694
+        // By item type.
695
+        if ( 'type' == $vars['orderby'] ) {
696
+            return array_merge(
697
+                $vars,
698
+                array(
699
+                    'meta_key' => '_wpinv_type',
700
+                    'orderby'  => 'meta_value'
701
+                )
702
+            );
703
+        }
704
+
705
+        // By vat class.
706
+        if ( 'vat_class' == $vars['orderby'] ) {
707
+            return array_merge(
708
+                $vars,
709
+                array(
710
+                    'meta_key' => '_wpinv_vat_class',
711
+                    'orderby'  => 'meta_value'
712
+                )
713
+            );
714
+        }
715
+
716
+        // By vat rule.
717
+        if ( 'vat_rule' == $vars['orderby'] ) {
718
+            return array_merge(
719
+                $vars,
720
+                array(
721
+                    'meta_key' => '_wpinv_vat_rule',
722
+                    'orderby'  => 'meta_value'
723
+                )
724
+            );
725
+        }
726
+
727
+        // By price.
728
+        if ( 'price' == $vars['orderby'] ) {
729
+            return array_merge(
730
+                $vars,
731
+                array(
732
+                    'meta_key' => '_wpinv_price',
733
+                    'orderby'  => 'meta_value_num'
734
+                )
735
+            );
736
+        }
737
+
738
+        return $vars;
739
+
740
+    }
741
+
742
+    /**
743
+     * Fired when deleting a post.
744
+     */
745
+    public static function delete_post( $post_id ) {
746
+
747
+        switch ( get_post_type( $post_id ) ) {
748
+
749
+            case 'wpi_item' :
750
+                do_action( "getpaid_before_delete_item", new WPInv_Item( $post_id ) );
751
+                break;
752
+
753
+            case 'wpi_payment_form' :
754
+                do_action( "getpaid_before_delete_payment_form", new GetPaid_Payment_Form( $post_id ) );
755
+                break;
756
+
757
+            case 'wpi_discount' :
758
+                do_action( "getpaid_before_delete_discount", new WPInv_Discount( $post_id ) );
759
+                break;
760
+
761
+            case 'wpi_invoice' :
762
+                $invoice = new WPInv_Invoice( $post_id );
763
+                do_action( "getpaid_before_delete_invoice", $invoice );
764
+                $invoice->get_data_store()->delete_items( $invoice );
765
+                $invoice->get_data_store()->delete_special_fields( $invoice );
766
+                break;
767
+        }
768
+    }
769 769
 
770 770
 }
Please login to merge, or discard this patch.
Spacing   +205 added lines, -205 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 
7
-defined( 'ABSPATH' ) || exit;
7
+defined('ABSPATH') || exit;
8 8
 
9 9
 /**
10 10
  * Post types Admin Class
@@ -21,70 +21,70 @@  discard block
 block discarded – undo
21 21
 		GetPaid_Metaboxes::init();
22 22
 
23 23
 		// Filter the post updated messages.
24
-		add_filter( 'post_updated_messages', 'GetPaid_Post_Types_Admin::post_updated_messages' );
24
+		add_filter('post_updated_messages', 'GetPaid_Post_Types_Admin::post_updated_messages');
25 25
 
26 26
 		// Filter post actions.
27
-		add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::post_row_actions', 10, 2 );
28
-		add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::filter_invoice_row_actions', 90, 2 );
27
+		add_filter('post_row_actions', 'GetPaid_Post_Types_Admin::post_row_actions', 10, 2);
28
+		add_filter('post_row_actions', 'GetPaid_Post_Types_Admin::filter_invoice_row_actions', 90, 2);
29 29
 
30 30
 		// Invoice table columns.
31
-		add_filter( 'manage_wpi_invoice_posts_columns', array( __CLASS__, 'invoice_columns' ), 100 );
32
-		add_action( 'manage_wpi_invoice_posts_custom_column', array( __CLASS__, 'display_invoice_columns' ), 10, 2 );
31
+		add_filter('manage_wpi_invoice_posts_columns', array(__CLASS__, 'invoice_columns'), 100);
32
+		add_action('manage_wpi_invoice_posts_custom_column', array(__CLASS__, 'display_invoice_columns'), 10, 2);
33 33
 
34 34
 		// Items table columns.
35
-		add_filter( 'manage_wpi_item_posts_columns', array( __CLASS__, 'item_columns' ), 100 );
36
-		add_filter( 'manage_edit-wpi_item_sortable_columns', array( __CLASS__, 'sortable_item_columns' ), 20 );
37
-		add_action( 'manage_wpi_item_posts_custom_column', array( __CLASS__, 'display_item_columns' ), 10, 2 );
38
-		add_action( 'restrict_manage_posts', array( __CLASS__, 'add_item_filters' ), 100 );
39
-		add_action( 'parse_query', array( __CLASS__, 'filter_item_query' ), 100 );
40
-		add_action( 'request', array( __CLASS__, 'reorder_items' ), 100 );
35
+		add_filter('manage_wpi_item_posts_columns', array(__CLASS__, 'item_columns'), 100);
36
+		add_filter('manage_edit-wpi_item_sortable_columns', array(__CLASS__, 'sortable_item_columns'), 20);
37
+		add_action('manage_wpi_item_posts_custom_column', array(__CLASS__, 'display_item_columns'), 10, 2);
38
+		add_action('restrict_manage_posts', array(__CLASS__, 'add_item_filters'), 100);
39
+		add_action('parse_query', array(__CLASS__, 'filter_item_query'), 100);
40
+		add_action('request', array(__CLASS__, 'reorder_items'), 100);
41 41
 
42 42
 		// Payment forms columns.
43
-		add_filter( 'manage_wpi_payment_form_posts_columns', array( __CLASS__, 'payment_form_columns' ), 100 );
44
-		add_action( 'manage_wpi_payment_form_posts_custom_column', array( __CLASS__, 'display_payment_form_columns' ), 10, 2 );
45
-		add_filter( 'display_post_states', array( __CLASS__, 'filter_payment_form_state' ), 10, 2 );
43
+		add_filter('manage_wpi_payment_form_posts_columns', array(__CLASS__, 'payment_form_columns'), 100);
44
+		add_action('manage_wpi_payment_form_posts_custom_column', array(__CLASS__, 'display_payment_form_columns'), 10, 2);
45
+		add_filter('display_post_states', array(__CLASS__, 'filter_payment_form_state'), 10, 2);
46 46
 
47 47
 		// Discount table columns.
48
-		add_filter( 'manage_wpi_discount_posts_columns', array( __CLASS__, 'discount_columns' ), 100 );
49
-		add_filter( 'bulk_actions-edit-wpi_discount', '__return_empty_array', 100 );
48
+		add_filter('manage_wpi_discount_posts_columns', array(__CLASS__, 'discount_columns'), 100);
49
+		add_filter('bulk_actions-edit-wpi_discount', '__return_empty_array', 100);
50 50
 
51 51
 		// Deleting posts.
52
-		add_action( 'delete_post', array( __CLASS__, 'delete_post' ) );
53
-		add_filter( 'display_post_states', array( __CLASS__, 'filter_discount_state' ), 10, 2 );
52
+		add_action('delete_post', array(__CLASS__, 'delete_post'));
53
+		add_filter('display_post_states', array(__CLASS__, 'filter_discount_state'), 10, 2);
54 54
 	}
55 55
 
56 56
 	/**
57 57
 	 * Post updated messages.
58 58
 	 */
59
-	public static function post_updated_messages( $messages ) {
59
+	public static function post_updated_messages($messages) {
60 60
 		global $post;
61 61
 
62 62
 		$messages['wpi_discount'] = array(
63 63
 			0   => '',
64
-			1   => __( 'Discount updated.', 'invoicing' ),
65
-			2   => __( 'Custom field updated.', 'invoicing' ),
66
-			3   => __( 'Custom field deleted.', 'invoicing' ),
67
-			4   => __( 'Discount updated.', 'invoicing' ),
68
-			5   => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Discount restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
69
-			6   => __( 'Discount updated.', 'invoicing' ),
70
-			7   => __( 'Discount saved.', 'invoicing' ),
71
-			8   => __( 'Discount submitted.', 'invoicing' ),
72
-			9   => wp_sprintf( __( 'Discount scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
73
-			10  => __( 'Discount draft updated.', 'invoicing' ),
64
+			1   => __('Discount updated.', 'invoicing'),
65
+			2   => __('Custom field updated.', 'invoicing'),
66
+			3   => __('Custom field deleted.', 'invoicing'),
67
+			4   => __('Discount updated.', 'invoicing'),
68
+			5   => isset($_GET['revision']) ? wp_sprintf(__('Discount restored to revision from %s', 'invoicing'), wp_post_revision_title((int) $_GET['revision'], false)) : false,
69
+			6   => __('Discount updated.', 'invoicing'),
70
+			7   => __('Discount saved.', 'invoicing'),
71
+			8   => __('Discount submitted.', 'invoicing'),
72
+			9   => wp_sprintf(__('Discount scheduled for: <strong>%1$s</strong>.', 'invoicing'), date_i18n(__('M j, Y @ G:i', 'invoicing'), strtotime($post->post_date))),
73
+			10  => __('Discount draft updated.', 'invoicing'),
74 74
 		);
75 75
 
76 76
 		$messages['wpi_payment_form'] = array(
77 77
 			0   => '',
78
-			1   => __( 'Payment Form updated.', 'invoicing' ),
79
-			2   => __( 'Custom field updated.', 'invoicing' ),
80
-			3   => __( 'Custom field deleted.', 'invoicing' ),
81
-			4   => __( 'Payment Form updated.', 'invoicing' ),
82
-			5   => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Payment Form restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
83
-			6   => __( 'Payment Form updated.', 'invoicing' ),
84
-			7   => __( 'Payment Form saved.', 'invoicing' ),
85
-			8   => __( 'Payment Form submitted.', 'invoicing' ),
86
-			9   => wp_sprintf( __( 'Payment Form scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
87
-			10  => __( 'Payment Form draft updated.', 'invoicing' ),
78
+			1   => __('Payment Form updated.', 'invoicing'),
79
+			2   => __('Custom field updated.', 'invoicing'),
80
+			3   => __('Custom field deleted.', 'invoicing'),
81
+			4   => __('Payment Form updated.', 'invoicing'),
82
+			5   => isset($_GET['revision']) ? wp_sprintf(__('Payment Form restored to revision from %s', 'invoicing'), wp_post_revision_title((int) $_GET['revision'], false)) : false,
83
+			6   => __('Payment Form updated.', 'invoicing'),
84
+			7   => __('Payment Form saved.', 'invoicing'),
85
+			8   => __('Payment Form submitted.', 'invoicing'),
86
+			9   => wp_sprintf(__('Payment Form scheduled for: <strong>%1$s</strong>.', 'invoicing'), date_i18n(__('M j, Y @ G:i', 'invoicing'), strtotime($post->post_date))),
87
+			10  => __('Payment Form draft updated.', 'invoicing'),
88 88
 		);
89 89
 
90 90
 		return $messages;
@@ -94,14 +94,14 @@  discard block
 block discarded – undo
94 94
 	/**
95 95
 	 * Post row actions.
96 96
 	 */
97
-	public static function post_row_actions( $actions, $post ) {
97
+	public static function post_row_actions($actions, $post) {
98 98
 
99
-		$post = get_post( $post );
99
+		$post = get_post($post);
100 100
 
101 101
 		// We do not want to edit the default payment form.
102
-		if ( 'wpi_payment_form' == $post->post_type && $post->ID == wpinv_get_default_payment_form() ) {
103
-			unset( $actions['trash'] );
104
-			unset( $actions['inline hide-if-no-js'] );
102
+		if ('wpi_payment_form' == $post->post_type && $post->ID == wpinv_get_default_payment_form()) {
103
+			unset($actions['trash']);
104
+			unset($actions['inline hide-if-no-js']);
105 105
 		}
106 106
 
107 107
 		return $actions;
@@ -115,31 +115,31 @@  discard block
 block discarded – undo
115 115
 	 * @param WP_Post $post
116 116
      * @return array $actions actions without edit option
117 117
      */
118
-    public static function filter_invoice_row_actions( $actions, $post ) {
118
+    public static function filter_invoice_row_actions($actions, $post) {
119 119
 
120
-        if ( getpaid_is_invoice_post_type( $post->post_type ) ) {
120
+        if (getpaid_is_invoice_post_type($post->post_type)) {
121 121
 
122 122
 			$actions = array();
123
-			$invoice = new WPInv_Invoice( $post );
123
+			$invoice = new WPInv_Invoice($post);
124 124
 
125
-			$actions['edit'] =  sprintf(
125
+			$actions['edit'] = sprintf(
126 126
 				'<a href="%1$s">%2$s</a>',
127
-				esc_url( get_edit_post_link( $invoice->get_id() ) ),
128
-				esc_html( __( 'Edit', 'invoicing' ) )
127
+				esc_url(get_edit_post_link($invoice->get_id())),
128
+				esc_html(__('Edit', 'invoicing'))
129 129
 			);
130 130
 
131
-			if ( ! $invoice->is_draft() ) {
131
+			if (!$invoice->is_draft()) {
132 132
 
133
-				$actions['view'] =  sprintf(
133
+				$actions['view'] = sprintf(
134 134
 					'<a href="%1$s">%2$s</a>',
135
-					esc_url( $invoice->get_view_url() ),
135
+					esc_url($invoice->get_view_url()),
136 136
 					sprintf(
137
-						esc_html( __( 'View %s', 'invoicing' ) ),
138
-						getpaid_get_post_type_label( $invoice->get_post_type(), false )
137
+						esc_html(__('View %s', 'invoicing')),
138
+						getpaid_get_post_type_label($invoice->get_post_type(), false)
139 139
 					)
140 140
 				);
141 141
 
142
-				$actions['send'] =  sprintf(
142
+				$actions['send'] = sprintf(
143 143
 					'<a href="%1$s">%2$s</a>',
144 144
 					esc_url(
145 145
 						wp_nonce_url(
@@ -153,7 +153,7 @@  discard block
 block discarded – undo
153 153
 							'getpaid-nonce'
154 154
 						)
155 155
 					),
156
-					esc_html( __( 'Send to Customer', 'invoicing' ) )
156
+					esc_html(__('Send to Customer', 'invoicing'))
157 157
 				);
158 158
 
159 159
 			}
@@ -166,42 +166,42 @@  discard block
 block discarded – undo
166 166
 	/**
167 167
 	 * Returns an array of invoice table columns.
168 168
 	 */
169
-	public static function invoice_columns( $columns ) {
169
+	public static function invoice_columns($columns) {
170 170
 
171 171
 		$columns = array(
172 172
 			'cb'                => $columns['cb'],
173
-			'number'            => __( 'Invoice', 'invoicing' ),
174
-			'customer'          => __( 'Customer', 'invoicing' ),
175
-			'invoice_date'      => __( 'Created', 'invoicing' ),
176
-			'payment_date'      => __( 'Completed', 'invoicing' ),
177
-			'amount'            => __( 'Amount', 'invoicing' ),
178
-			'recurring'         => __( 'Recurring', 'invoicing' ),
179
-			'status'            => __( 'Status', 'invoicing' ),
173
+			'number'            => __('Invoice', 'invoicing'),
174
+			'customer'          => __('Customer', 'invoicing'),
175
+			'invoice_date'      => __('Created', 'invoicing'),
176
+			'payment_date'      => __('Completed', 'invoicing'),
177
+			'amount'            => __('Amount', 'invoicing'),
178
+			'recurring'         => __('Recurring', 'invoicing'),
179
+			'status'            => __('Status', 'invoicing'),
180 180
 		);
181 181
 
182
-		return apply_filters( 'wpi_invoice_table_columns', $columns );
182
+		return apply_filters('wpi_invoice_table_columns', $columns);
183 183
 	}
184 184
 
185 185
 	/**
186 186
 	 * Displays invoice table columns.
187 187
 	 */
188
-	public static function display_invoice_columns( $column_name, $post_id ) {
188
+	public static function display_invoice_columns($column_name, $post_id) {
189 189
 
190
-		$invoice = new WPInv_Invoice( $post_id );
190
+		$invoice = new WPInv_Invoice($post_id);
191 191
 
192
-		switch ( $column_name ) {
192
+		switch ($column_name) {
193 193
 
194 194
 			case 'invoice_date' :
195
-				$date_time = esc_attr( $invoice->get_created_date() );
196
-				$date      = getpaid_format_date_value( $date_time, "&mdash;", true );
195
+				$date_time = esc_attr($invoice->get_created_date());
196
+				$date      = getpaid_format_date_value($date_time, "&mdash;", true);
197 197
 				echo "<span title='$date_time'>$date</span>";
198 198
 				break;
199 199
 
200 200
 			case 'payment_date' :
201 201
 
202
-				if ( $invoice->is_paid() ) {
203
-					$date_time = esc_attr( $invoice->get_completed_date() );
204
-					$date      = getpaid_format_date_value( $date_time, "&mdash;", true );
202
+				if ($invoice->is_paid()) {
203
+					$date_time = esc_attr($invoice->get_completed_date());
204
+					$date      = getpaid_format_date_value($date_time, "&mdash;", true);
205 205
 					echo "<span title='$date_time'>$date</span>";
206 206
 				} else {
207 207
 					echo "&mdash;";
@@ -212,17 +212,17 @@  discard block
 block discarded – undo
212 212
 			case 'amount' :
213 213
 
214 214
 				$amount = $invoice->get_total();
215
-				$formated_amount = wpinv_price( $amount, $invoice->get_currency() );
215
+				$formated_amount = wpinv_price($amount, $invoice->get_currency());
216 216
 
217
-				if ( $invoice->is_refunded() ) {
218
-					$refunded_amount = wpinv_price( 0, $invoice->get_currency() );
217
+				if ($invoice->is_refunded()) {
218
+					$refunded_amount = wpinv_price(0, $invoice->get_currency());
219 219
 					echo "<del>$formated_amount</del>&nbsp;<ins>$refunded_amount</ins>";
220 220
 				} else {
221 221
 
222 222
 					$discount = $invoice->get_total_discount();
223 223
 
224
-					if ( ! empty( $discount ) ) {
225
-						$new_amount = wpinv_price( $amount + $discount, $invoice->get_currency() );
224
+					if (!empty($discount)) {
225
+						$new_amount = wpinv_price($amount + $discount, $invoice->get_currency());
226 226
 						echo "<del>$new_amount</del>&nbsp;<ins>$formated_amount</ins>";
227 227
 					} else {
228 228
 						echo $formated_amount;
@@ -233,13 +233,13 @@  discard block
 block discarded – undo
233 233
 				break;
234 234
 
235 235
 			case 'status' :
236
-				$status       = sanitize_text_field( $invoice->get_status() );
237
-				$status_label = sanitize_text_field( $invoice->get_status_nicename() );
236
+				$status       = sanitize_text_field($invoice->get_status());
237
+				$status_label = sanitize_text_field($invoice->get_status_nicename());
238 238
 
239 239
 				// If it is paid, show the gateway title.
240
-				if ( $invoice->is_paid() ) {
241
-					$gateway = sanitize_text_field( $invoice->get_gateway_title() );
242
-					$gateway = wp_sprintf( esc_attr__( 'Paid via %s', 'invoicing' ), $gateway );
240
+				if ($invoice->is_paid()) {
241
+					$gateway = sanitize_text_field($invoice->get_gateway_title());
242
+					$gateway = wp_sprintf(esc_attr__('Paid via %s', 'invoicing'), $gateway);
243 243
 
244 244
 					echo "<mark class='wpi-help-tip getpaid-invoice-status $status' title='$gateway'><span>$status_label</span></mark>";
245 245
 				} else {
@@ -247,22 +247,22 @@  discard block
 block discarded – undo
247 247
 				}
248 248
 
249 249
 				// If it is not paid, display the overdue and view status.
250
-				if ( ! $invoice->is_paid() && ! $invoice->is_refunded() ) {
250
+				if (!$invoice->is_paid() && !$invoice->is_refunded()) {
251 251
 
252 252
 					// Invoice view status.
253
-					if ( wpinv_is_invoice_viewed( $invoice->get_id() ) ) {
254
-						echo '&nbsp;&nbsp;<i class="fa fa-eye wpi-help-tip" title="'. esc_attr__( 'Viewed by Customer', 'invoicing' ).'"></i>';
253
+					if (wpinv_is_invoice_viewed($invoice->get_id())) {
254
+						echo '&nbsp;&nbsp;<i class="fa fa-eye wpi-help-tip" title="' . esc_attr__('Viewed by Customer', 'invoicing') . '"></i>';
255 255
 					} else {
256
-						echo '&nbsp;&nbsp;<i class="fa fa-eye-slash wpi-help-tip" title="'. esc_attr__( 'Not Viewed by Customer', 'invoicing' ).'"></i>';
256
+						echo '&nbsp;&nbsp;<i class="fa fa-eye-slash wpi-help-tip" title="' . esc_attr__('Not Viewed by Customer', 'invoicing') . '"></i>';
257 257
 					}
258 258
 
259 259
 					// Display the overview status.
260
-					if ( wpinv_get_option( 'overdue_active' ) ) {
260
+					if (wpinv_get_option('overdue_active')) {
261 261
 						$due_date = $invoice->get_due_date();
262
-						$fomatted = getpaid_format_date( $due_date );
262
+						$fomatted = getpaid_format_date($due_date);
263 263
 
264
-						if ( ! empty( $fomatted ) ) {
265
-							$date = wp_sprintf( __( 'Due %s', 'invoicing' ), $fomatted );
264
+						if (!empty($fomatted)) {
265
+							$date = wp_sprintf(__('Due %s', 'invoicing'), $fomatted);
266 266
 							echo "<p class='description' style='color: #888;' title='$due_date'>$fomatted</p>";
267 267
 						}
268 268
 					}
@@ -273,7 +273,7 @@  discard block
 block discarded – undo
273 273
 
274 274
 			case 'recurring':
275 275
 
276
-				if ( $invoice->is_recurring() ) {
276
+				if ($invoice->is_recurring()) {
277 277
 					echo '<i class="fa fa-check" style="color:#43850a;"></i>';
278 278
 				} else {
279 279
 					echo '<i class="fa fa-times" style="color:#616161;"></i>';
@@ -282,9 +282,9 @@  discard block
 block discarded – undo
282 282
 
283 283
 			case 'number' :
284 284
 
285
-				$edit_link       = esc_url( get_edit_post_link( $invoice->get_id() ) );
286
-				$invoice_number  = sanitize_text_field( $invoice->get_number() );
287
-				$invoice_details = esc_attr__( 'View Invoice Details', 'invoicing' );
285
+				$edit_link       = esc_url(get_edit_post_link($invoice->get_id()));
286
+				$invoice_number  = sanitize_text_field($invoice->get_number());
287
+				$invoice_details = esc_attr__('View Invoice Details', 'invoicing');
288 288
 
289 289
 				echo "<a href='$edit_link' title='$invoice_details'><strong>$invoice_number</strong></a>";
290 290
 
@@ -294,13 +294,13 @@  discard block
 block discarded – undo
294 294
 	
295 295
 				$customer_name = $invoice->get_user_full_name();
296 296
 	
297
-				if ( empty( $customer_name ) ) {
297
+				if (empty($customer_name)) {
298 298
 					$customer_name = $invoice->get_email();
299 299
 				}
300 300
 	
301
-				if ( ! empty( $customer_name ) ) {
302
-					$customer_details = esc_attr__( 'View Customer Details', 'invoicing' );
303
-					$view_link        = esc_url( add_query_arg( 'user_id', $invoice->get_user_id(), admin_url( 'user-edit.php' ) ) );
301
+				if (!empty($customer_name)) {
302
+					$customer_details = esc_attr__('View Customer Details', 'invoicing');
303
+					$view_link        = esc_url(add_query_arg('user_id', $invoice->get_user_id(), admin_url('user-edit.php')));
304 304
 					echo "<a href='$view_link' title='$customer_details'><span>$customer_name</span></a>";
305 305
 				} else {
306 306
 					echo '<div>&mdash;</div>';
@@ -315,50 +315,50 @@  discard block
 block discarded – undo
315 315
 	/**
316 316
 	 * Returns an array of payment forms table columns.
317 317
 	 */
318
-	public static function payment_form_columns( $columns ) {
318
+	public static function payment_form_columns($columns) {
319 319
 
320 320
 		$columns = array(
321 321
 			'cb'                => $columns['cb'],
322
-			'title'             => __( 'Name', 'invoicing' ),
323
-			'shortcode'         => __( 'Shortcode', 'invoicing' ),
324
-			'earnings'          => __( 'Revenue', 'invoicing' ),
325
-			'refunds'           => __( 'Refunded', 'invoicing' ),
326
-			'items'             => __( 'Items', 'invoicing' ),
327
-			'date'              => __( 'Date', 'invoicing' ),
322
+			'title'             => __('Name', 'invoicing'),
323
+			'shortcode'         => __('Shortcode', 'invoicing'),
324
+			'earnings'          => __('Revenue', 'invoicing'),
325
+			'refunds'           => __('Refunded', 'invoicing'),
326
+			'items'             => __('Items', 'invoicing'),
327
+			'date'              => __('Date', 'invoicing'),
328 328
 		);
329 329
 
330
-		return apply_filters( 'wpi_payment_form_table_columns', $columns );
330
+		return apply_filters('wpi_payment_form_table_columns', $columns);
331 331
 
332 332
 	}
333 333
 
334 334
 	/**
335 335
 	 * Displays payment form table columns.
336 336
 	 */
337
-	public static function display_payment_form_columns( $column_name, $post_id ) {
337
+	public static function display_payment_form_columns($column_name, $post_id) {
338 338
 
339 339
 		// Retrieve the payment form.
340
-		$form = new GetPaid_Payment_Form( $post_id );
340
+		$form = new GetPaid_Payment_Form($post_id);
341 341
 
342
-		switch ( $column_name ) {
342
+		switch ($column_name) {
343 343
 
344 344
 			case 'earnings' :
345
-				echo wpinv_price( $form->get_earned() );
345
+				echo wpinv_price($form->get_earned());
346 346
 				break;
347 347
 
348 348
 			case 'refunds' :
349
-				echo wpinv_price( $form->get_refunded() );
349
+				echo wpinv_price($form->get_refunded());
350 350
 				break;
351 351
 
352 352
 			case 'refunds' :
353
-				echo wpinv_price( $form->get_refunded() );
353
+				echo wpinv_price($form->get_refunded());
354 354
 				break;
355 355
 
356 356
 			case 'shortcode' :
357 357
 
358
-				if ( $form->is_default() ) {
358
+				if ($form->is_default()) {
359 359
 					echo '&mdash;';
360 360
 				} else {
361
-					echo '<input onClick="this.select()" type="text" value="[getpaid form=' . esc_attr( $form->get_id() ) . ']" style="width: 100%;" readonly/>';
361
+					echo '<input onClick="this.select()" type="text" value="[getpaid form=' . esc_attr($form->get_id()) . ']" style="width: 100%;" readonly/>';
362 362
 				}
363 363
 
364 364
 				break;
@@ -367,29 +367,29 @@  discard block
 block discarded – undo
367 367
 
368 368
 				$items = $form->get_items();
369 369
 
370
-				if ( $form->is_default() || empty( $items ) ) {
370
+				if ($form->is_default() || empty($items)) {
371 371
 					echo '&mdash;';
372 372
 					return;
373 373
 				}
374 374
 
375 375
 				$_items = array();
376 376
 
377
-				foreach ( $items as $item ) {
377
+				foreach ($items as $item) {
378 378
 					$url = $item->get_edit_url();
379 379
 
380
-					if ( empty( $url ) ) {
381
-						$_items[] = sanitize_text_field( $item->get_name() );
380
+					if (empty($url)) {
381
+						$_items[] = sanitize_text_field($item->get_name());
382 382
 					} else {
383 383
 						$_items[] = sprintf(
384 384
 							'<a href="%s">%s</a>',
385
-							esc_url( $url ),
386
-							sanitize_text_field( $item->get_name() )
385
+							esc_url($url),
386
+							sanitize_text_field($item->get_name())
387 387
 						);
388 388
 					}
389 389
 
390 390
 				}
391 391
 
392
-				echo implode( '<br>', $_items );
392
+				echo implode('<br>', $_items);
393 393
 
394 394
 				break;
395 395
 
@@ -400,10 +400,10 @@  discard block
 block discarded – undo
400 400
 	/**
401 401
 	 * Filters post states.
402 402
 	 */
403
-	public static function filter_payment_form_state( $post_states, $post ) {
403
+	public static function filter_payment_form_state($post_states, $post) {
404 404
 
405
-		if ( 'wpi_payment_form' == $post->post_type && wpinv_get_default_payment_form() == $post->ID ) {
406
-			$post_states[ 'default_form' ] = __( 'Default Payment Form', 'invoicing' );
405
+		if ('wpi_payment_form' == $post->post_type && wpinv_get_default_payment_form() == $post->ID) {
406
+			$post_states['default_form'] = __('Default Payment Form', 'invoicing');
407 407
 		}
408 408
 	
409 409
 		return $post_states;
@@ -413,35 +413,35 @@  discard block
 block discarded – undo
413 413
 	/**
414 414
 	 * Returns an array of coupon table columns.
415 415
 	 */
416
-	public static function discount_columns( $columns ) {
416
+	public static function discount_columns($columns) {
417 417
 
418 418
 		$columns = array(
419 419
 			'cb'                => $columns['cb'],
420
-			'title'             => __( 'Name', 'invoicing' ),
421
-			'code'              => __( 'Code', 'invoicing' ),
422
-			'amount'            => __( 'Amount', 'invoicing' ),
423
-			'usage'             => __( 'Usage / Limit', 'invoicing' ),
424
-			'start_date'        => __( 'Start Date', 'invoicing' ),
425
-			'expiry_date'       => __( 'Expiry Date', 'invoicing' ),
420
+			'title'             => __('Name', 'invoicing'),
421
+			'code'              => __('Code', 'invoicing'),
422
+			'amount'            => __('Amount', 'invoicing'),
423
+			'usage'             => __('Usage / Limit', 'invoicing'),
424
+			'start_date'        => __('Start Date', 'invoicing'),
425
+			'expiry_date'       => __('Expiry Date', 'invoicing'),
426 426
 		);
427 427
 
428
-		return apply_filters( 'wpi_discount_table_columns', $columns );
428
+		return apply_filters('wpi_discount_table_columns', $columns);
429 429
 	}
430 430
 
431 431
 	/**
432 432
 	 * Filters post states.
433 433
 	 */
434
-	public static function filter_discount_state( $post_states, $post ) {
434
+	public static function filter_discount_state($post_states, $post) {
435 435
 
436
-		if ( 'wpi_discount' == $post->post_type ) {
436
+		if ('wpi_discount' == $post->post_type) {
437 437
 
438
-			$discount = new WPInv_Discount( $post );
438
+			$discount = new WPInv_Discount($post);
439 439
 
440 440
 			$status = $discount->is_expired() ? 'expired' : $discount->get_status();
441 441
 
442
-			if ( $status != 'publish' ) {
442
+			if ($status != 'publish') {
443 443
 				return array(
444
-					'discount_status' => wpinv_discount_status( $status ),
444
+					'discount_status' => wpinv_discount_status($status),
445 445
 				);
446 446
 			}
447 447
 
@@ -456,30 +456,30 @@  discard block
 block discarded – undo
456 456
 	/**
457 457
 	 * Returns an array of items table columns.
458 458
 	 */
459
-	public static function item_columns( $columns ) {
459
+	public static function item_columns($columns) {
460 460
 
461 461
 		$columns = array(
462 462
 			'cb'                => $columns['cb'],
463
-			'title'             => __( 'Name', 'invoicing' ),
464
-			'price'             => __( 'Price', 'invoicing' ),
465
-			'vat_rule'          => __( 'VAT rule', 'invoicing' ),
466
-			'vat_class'         => __( 'VAT class', 'invoicing' ),
467
-			'type'              => __( 'Type', 'invoicing' ),
468
-			'shortcode'         => __( 'Shortcode', 'invoicing' ),
463
+			'title'             => __('Name', 'invoicing'),
464
+			'price'             => __('Price', 'invoicing'),
465
+			'vat_rule'          => __('VAT rule', 'invoicing'),
466
+			'vat_class'         => __('VAT class', 'invoicing'),
467
+			'type'              => __('Type', 'invoicing'),
468
+			'shortcode'         => __('Shortcode', 'invoicing'),
469 469
 		);
470 470
 
471
-		if ( ! wpinv_use_taxes() ) {
472
-			unset( $columns['vat_rule'] );
473
-			unset( $columns['vat_class'] );
471
+		if (!wpinv_use_taxes()) {
472
+			unset($columns['vat_rule']);
473
+			unset($columns['vat_class']);
474 474
 		}
475 475
 
476
-		return apply_filters( 'wpi_item_table_columns', $columns );
476
+		return apply_filters('wpi_item_table_columns', $columns);
477 477
 	}
478 478
 
479 479
 	/**
480 480
 	 * Returns an array of sortable items table columns.
481 481
 	 */
482
-	public static function sortable_item_columns( $columns ) {
482
+	public static function sortable_item_columns($columns) {
483 483
 
484 484
 		return array_merge(
485 485
 			$columns,
@@ -496,49 +496,49 @@  discard block
 block discarded – undo
496 496
 	/**
497 497
 	 * Displays items table columns.
498 498
 	 */
499
-	public static function display_item_columns( $column_name, $post_id ) {
499
+	public static function display_item_columns($column_name, $post_id) {
500 500
  
501
-		$item = new WPInv_Item( $post_id );
501
+		$item = new WPInv_Item($post_id);
502 502
 
503
-		switch ( $column_name ) {
503
+		switch ($column_name) {
504 504
 
505 505
 			case 'price' :
506 506
 
507
-				if ( ! $item->is_recurring() ) {
507
+				if (!$item->is_recurring()) {
508 508
 					echo $item->get_the_price();
509 509
 					break;
510 510
 				}
511 511
 
512 512
 				$price = wp_sprintf(
513
-					__( '%s / %s', 'invoicing' ),
513
+					__('%s / %s', 'invoicing'),
514 514
 					$item->get_the_price(),
515
-					getpaid_get_subscription_period_label( $item->get_recurring_period(), $item->get_recurring_interval(), '' )
515
+					getpaid_get_subscription_period_label($item->get_recurring_period(), $item->get_recurring_interval(), '')
516 516
 				);
517 517
 
518
-				if ( $item->get_the_price() == $item->get_the_initial_price() ) {
518
+				if ($item->get_the_price() == $item->get_the_initial_price()) {
519 519
 					echo $price;
520 520
 					break;
521 521
 				}
522 522
 
523 523
 				echo $item->get_the_initial_price();
524 524
 
525
-				echo '<span class="meta">' . wp_sprintf( __( 'then %s', 'invoicing' ), $price )  .'</span>';
525
+				echo '<span class="meta">' . wp_sprintf(__('then %s', 'invoicing'), $price) . '</span>';
526 526
 				break;
527 527
 
528 528
 			case 'vat_rule' :
529
-				echo getpaid_get_tax_rule_label( $item->get_vat_rule() );
529
+				echo getpaid_get_tax_rule_label($item->get_vat_rule());
530 530
 				break;
531 531
 
532 532
 			case 'vat_class' :
533
-				echo getpaid_get_tax_class_label( $item->get_vat_class() );
533
+				echo getpaid_get_tax_class_label($item->get_vat_class());
534 534
 				break;
535 535
 
536 536
 			case 'shortcode' :
537
-				echo '<input onClick="this.select()" type="text" value="[getpaid item=' . esc_attr( $item->get_id() ) . ' button=\'Buy Now\']" style="width: 100%;" readonly/>';
537
+				echo '<input onClick="this.select()" type="text" value="[getpaid item=' . esc_attr($item->get_id()) . ' button=\'Buy Now\']" style="width: 100%;" readonly/>';
538 538
 				break;
539 539
 
540 540
 			case 'type' :
541
-				echo wpinv_item_type( $item->get_id() ) . '<span class="meta">' . $item->get_custom_singular_name() . '</span>';
541
+				echo wpinv_item_type($item->get_id()) . '<span class="meta">' . $item->get_custom_singular_name() . '</span>';
542 542
 				break;
543 543
 
544 544
 		}
@@ -548,21 +548,21 @@  discard block
 block discarded – undo
548 548
 	/**
549 549
 	 * Lets users filter items using taxes.
550 550
 	 */
551
-	public static function add_item_filters( $post_type ) {
551
+	public static function add_item_filters($post_type) {
552 552
 
553 553
 		// Abort if we're not dealing with items.
554
-		if ( $post_type != 'wpi_item' ) {
554
+		if ($post_type != 'wpi_item') {
555 555
 			return;
556 556
 		}
557 557
 
558 558
 		// Filter by vat rules.
559
-		if ( wpinv_use_taxes() ) {
559
+		if (wpinv_use_taxes()) {
560 560
 	
561 561
 			// Sanitize selected vat rule.
562 562
 			$vat_rule   = '';
563 563
 			$vat_rules  = getpaid_get_tax_rules();
564
-			if ( isset( $_GET['vat_rule'] ) ) {
565
-				$vat_rule   =  $_GET['vat_rule'];
564
+			if (isset($_GET['vat_rule'])) {
565
+				$vat_rule = $_GET['vat_rule'];
566 566
 			}
567 567
 
568 568
 			// Filter by VAT rule.
@@ -570,13 +570,13 @@  discard block
 block discarded – undo
570 570
 				array(
571 571
 					'options'          => array_merge(
572 572
 						array(
573
-							'' => __( 'All VAT rules', 'invoicing' )
573
+							'' => __('All VAT rules', 'invoicing')
574 574
 						),
575 575
 						$vat_rules
576 576
 					),
577 577
 					'name'             => 'vat_rule',
578 578
 					'id'               => 'vat_rule',
579
-					'selected'         => in_array( $vat_rule, array_keys( $vat_rules ) ) ? $vat_rule : '',
579
+					'selected'         => in_array($vat_rule, array_keys($vat_rules)) ? $vat_rule : '',
580 580
 					'show_option_all'  => false,
581 581
 					'show_option_none' => false,
582 582
 				)
@@ -587,21 +587,21 @@  discard block
 block discarded – undo
587 587
 			// Sanitize selected vat rule.
588 588
 			$vat_class   = '';
589 589
 			$vat_classes = getpaid_get_tax_classes();
590
-			if ( isset( $_GET['vat_class'] ) ) {
591
-				$vat_class   =  $_GET['vat_class'];
590
+			if (isset($_GET['vat_class'])) {
591
+				$vat_class = $_GET['vat_class'];
592 592
 			}
593 593
 
594 594
 			echo wpinv_html_select(
595 595
 				array(
596 596
 					'options'          => array_merge(
597 597
 						array(
598
-							'' => __( 'All VAT classes', 'invoicing' )
598
+							'' => __('All VAT classes', 'invoicing')
599 599
 						),
600 600
 						$vat_classes
601 601
 					),
602 602
 					'name'             => 'vat_class',
603 603
 					'id'               => 'vat_class',
604
-					'selected'         => in_array( $vat_class, array_keys( $vat_classes ) ) ? $vat_class : '',
604
+					'selected'         => in_array($vat_class, array_keys($vat_classes)) ? $vat_class : '',
605 605
 					'show_option_all'  => false,
606 606
 					'show_option_none' => false,
607 607
 				)
@@ -610,22 +610,22 @@  discard block
 block discarded – undo
610 610
 		}
611 611
 
612 612
 		// Filter by item type.
613
-		$type   = '';
614
-		if ( isset( $_GET['type'] ) ) {
615
-			$type   =  $_GET['type'];
613
+		$type = '';
614
+		if (isset($_GET['type'])) {
615
+			$type = $_GET['type'];
616 616
 		}
617 617
 
618 618
 		echo wpinv_html_select(
619 619
 			array(
620 620
 				'options'          => array_merge(
621 621
 					array(
622
-						'' => __( 'All item types', 'invoicing' )
622
+						'' => __('All item types', 'invoicing')
623 623
 					),
624 624
 					wpinv_get_item_types()
625 625
 				),
626 626
 				'name'             => 'type',
627 627
 				'id'               => 'type',
628
-				'selected'         => in_array( $type, wpinv_item_types() ) ? $type : '',
628
+				'selected'         => in_array($type, wpinv_item_types()) ? $type : '',
629 629
 				'show_option_all'  => false,
630 630
 				'show_option_none' => false,
631 631
 			)
@@ -636,45 +636,45 @@  discard block
 block discarded – undo
636 636
 	/**
637 637
 	 * Filters the item query.
638 638
 	 */
639
-	public static function filter_item_query( $query ) {
639
+	public static function filter_item_query($query) {
640 640
 
641 641
 		// modify the query only if it admin and main query.
642
-		if ( ! ( is_admin() && $query->is_main_query() ) ){ 
642
+		if (!(is_admin() && $query->is_main_query())) { 
643 643
 			return $query;
644 644
 		}
645 645
 
646 646
 		// we want to modify the query for our items.
647
-		if ( empty( $query->query['post_type'] ) || 'wpi_item' != $query->query['post_type'] ){
647
+		if (empty($query->query['post_type']) || 'wpi_item' != $query->query['post_type']) {
648 648
 			return $query;
649 649
 		}
650 650
 
651
-		if ( empty( $query->query_vars['meta_query'] ) ) {
651
+		if (empty($query->query_vars['meta_query'])) {
652 652
 			$query->query_vars['meta_query'] = array();
653 653
 		}
654 654
 
655 655
 		// Filter vat rule type
656
-        if ( ! empty( $_GET['vat_rule'] ) ) {
656
+        if (!empty($_GET['vat_rule'])) {
657 657
             $query->query_vars['meta_query'][] = array(
658 658
                 'key'     => '_wpinv_vat_rule',
659
-                'value'   => sanitize_text_field( $_GET['vat_rule'] ),
659
+                'value'   => sanitize_text_field($_GET['vat_rule']),
660 660
                 'compare' => '='
661 661
             );
662 662
         }
663 663
 
664 664
         // Filter vat class
665
-        if ( ! empty( $_GET['vat_class'] ) ) {
665
+        if (!empty($_GET['vat_class'])) {
666 666
             $query->query_vars['meta_query'][] = array(
667 667
                 'key'     => '_wpinv_vat_class',
668
-                'value'   => sanitize_text_field( $_GET['vat_class'] ),
668
+                'value'   => sanitize_text_field($_GET['vat_class']),
669 669
                 'compare' => '='
670 670
             );
671 671
         }
672 672
 
673 673
         // Filter item type
674
-        if ( ! empty( $_GET['type'] ) ) {
674
+        if (!empty($_GET['type'])) {
675 675
             $query->query_vars['meta_query'][] = array(
676 676
                 'key'     => '_wpinv_type',
677
-                'value'   => sanitize_text_field( $_GET['type'] ),
677
+                'value'   => sanitize_text_field($_GET['type']),
678 678
                 'compare' => '='
679 679
             );
680 680
 		}
@@ -684,15 +684,15 @@  discard block
 block discarded – undo
684 684
 	/**
685 685
 	 * Reorders items.
686 686
 	 */
687
-	public static function reorder_items( $vars ) {
687
+	public static function reorder_items($vars) {
688 688
 		global $typenow;
689 689
 
690
-		if ( 'wpi_item' !== $typenow || empty( $vars['orderby'] ) ) {
690
+		if ('wpi_item' !== $typenow || empty($vars['orderby'])) {
691 691
 			return $vars;
692 692
 		}
693 693
 
694 694
 		// By item type.
695
-		if ( 'type' == $vars['orderby'] ) {
695
+		if ('type' == $vars['orderby']) {
696 696
 			return array_merge(
697 697
 				$vars,
698 698
 				array(
@@ -703,7 +703,7 @@  discard block
 block discarded – undo
703 703
 		}
704 704
 
705 705
 		// By vat class.
706
-		if ( 'vat_class' == $vars['orderby'] ) {
706
+		if ('vat_class' == $vars['orderby']) {
707 707
 			return array_merge(
708 708
 				$vars,
709 709
 				array(
@@ -714,7 +714,7 @@  discard block
 block discarded – undo
714 714
 		}
715 715
 
716 716
 		// By vat rule.
717
-		if ( 'vat_rule' == $vars['orderby'] ) {
717
+		if ('vat_rule' == $vars['orderby']) {
718 718
 			return array_merge(
719 719
 				$vars,
720 720
 				array(
@@ -725,7 +725,7 @@  discard block
 block discarded – undo
725 725
 		}
726 726
 
727 727
 		// By price.
728
-		if ( 'price' == $vars['orderby'] ) {
728
+		if ('price' == $vars['orderby']) {
729 729
 			return array_merge(
730 730
 				$vars,
731 731
 				array(
@@ -742,27 +742,27 @@  discard block
 block discarded – undo
742 742
 	/**
743 743
 	 * Fired when deleting a post.
744 744
 	 */
745
-	public static function delete_post( $post_id ) {
745
+	public static function delete_post($post_id) {
746 746
 
747
-		switch ( get_post_type( $post_id ) ) {
747
+		switch (get_post_type($post_id)) {
748 748
 
749 749
 			case 'wpi_item' :
750
-				do_action( "getpaid_before_delete_item", new WPInv_Item( $post_id ) );
750
+				do_action("getpaid_before_delete_item", new WPInv_Item($post_id));
751 751
 				break;
752 752
 
753 753
 			case 'wpi_payment_form' :
754
-				do_action( "getpaid_before_delete_payment_form", new GetPaid_Payment_Form( $post_id ) );
754
+				do_action("getpaid_before_delete_payment_form", new GetPaid_Payment_Form($post_id));
755 755
 				break;
756 756
 
757 757
 			case 'wpi_discount' :
758
-				do_action( "getpaid_before_delete_discount", new WPInv_Discount( $post_id ) );
758
+				do_action("getpaid_before_delete_discount", new WPInv_Discount($post_id));
759 759
 				break;
760 760
 
761 761
 			case 'wpi_invoice' :
762
-				$invoice = new WPInv_Invoice( $post_id );
763
-				do_action( "getpaid_before_delete_invoice", $invoice );
764
-				$invoice->get_data_store()->delete_items( $invoice );
765
-				$invoice->get_data_store()->delete_special_fields( $invoice );
762
+				$invoice = new WPInv_Invoice($post_id);
763
+				do_action("getpaid_before_delete_invoice", $invoice);
764
+				$invoice->get_data_store()->delete_items($invoice);
765
+				$invoice->get_data_store()->delete_special_fields($invoice);
766 766
 				break;
767 767
 		}
768 768
 	}
Please login to merge, or discard this patch.
includes/admin/views/html-gateways-edit.php 1 patch
Spacing   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -4,26 +4,26 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 
7
-defined( 'ABSPATH' ) || exit;
7
+defined('ABSPATH') || exit;
8 8
 
9 9
 ?>
10 10
 <div class="table-responsive">
11 11
     <table id="wpinv_gateways_select" class="table border bg-white form-table">
12
-        <caption><?php echo esc_html_e( 'This table displays installed payment methods.', 'invoicing' ); ?></caption>
12
+        <caption><?php echo esc_html_e('This table displays installed payment methods.', 'invoicing'); ?></caption>
13 13
 
14 14
         <thead>
15 15
             <tr class="table-light">
16 16
 
17 17
                 <th scope="col" class="border-bottom border-top text-left">
18
-                    <?php _e( 'Payment Method', 'invoicing' ); ?>
18
+                    <?php _e('Payment Method', 'invoicing'); ?>
19 19
                 </th>
20 20
 
21 21
                 <th scope="col" class="border-bottom border-top text-center">
22
-                    <?php _e( 'Enabled', 'invoicing' ); ?>
22
+                    <?php _e('Enabled', 'invoicing'); ?>
23 23
                 </th>
24 24
 
25 25
                 <th scope="col" class="border-bottom border-top text-center">
26
-                    <?php _e( 'Supports Subscriptions', 'invoicing' ); ?>
26
+                    <?php _e('Supports Subscriptions', 'invoicing'); ?>
27 27
                 </th>
28 28
 
29 29
                 <th scope="col" class="border-bottom border-top text-right" style="width:32px">&nbsp;</th>
@@ -32,15 +32,15 @@  discard block
 block discarded – undo
32 32
         </thead>
33 33
 
34 34
         <tbody>
35
-            <?php foreach ( wpinv_get_payment_gateways() as $id => $gateway ) : ?>
35
+            <?php foreach (wpinv_get_payment_gateways() as $id => $gateway) : ?>
36 36
                 <tr>
37 37
                     <td class="getpaid-payment-method text-left">
38
-                        <a style="color: #0073aa;" href="<?php echo esc_url( add_query_arg( 'section', $id ) ); ?>" class="font-weight-bold"><?php echo sanitize_text_field( $gateway['admin_label'] ); ?></a>
38
+                        <a style="color: #0073aa;" href="<?php echo esc_url(add_query_arg('section', $id)); ?>" class="font-weight-bold"><?php echo sanitize_text_field($gateway['admin_label']); ?></a>
39 39
                     </td>
40 40
                     <td class="getpaid-payment-method-enabled text-center">
41 41
                         <?php
42 42
 
43
-                            $id = esc_attr( $id );
43
+                            $id = esc_attr($id);
44 44
                             echo aui()->input(
45 45
                                 array(
46 46
                                     'type'    => 'checkbox',
@@ -49,7 +49,7 @@  discard block
 block discarded – undo
49 49
                                     'value'   => 1,
50 50
                                     'switch'  => true,
51 51
                                     'label'   => '&nbsp;',
52
-                                    'checked' => wpinv_is_gateway_active( $id ),
52
+                                    'checked' => wpinv_is_gateway_active($id),
53 53
                                     'no_wrap' => true,
54 54
                                 )
55 55
                             );
@@ -59,10 +59,10 @@  discard block
 block discarded – undo
59 59
                     <td class="getpaid-payment-method-subscription text-center">
60 60
                         <?php
61 61
 
62
-                            $supports = apply_filters( "wpinv_{$id}_support_subscription", false );
63
-                            $supports = apply_filters( 'getapid_gateway_supports_subscription', $supports, $id );
62
+                            $supports = apply_filters("wpinv_{$id}_support_subscription", false);
63
+                            $supports = apply_filters('getapid_gateway_supports_subscription', $supports, $id);
64 64
 
65
-                            if ( $supports ) {
65
+                            if ($supports) {
66 66
                                 echo "<i class='text-success fa fa-check'></i>";
67 67
                             } else {
68 68
                                 echo "<i class='text-dark fa fa-times'></i>";
@@ -72,7 +72,7 @@  discard block
 block discarded – undo
72 72
                     </td>
73 73
 
74 74
                     <td class="getpaid-payment-method-action text-right">
75
-                        <a class="button button-secondary" href="<?php echo esc_url( add_query_arg( 'section', $id ) ); ?>"><?php _e( 'Manage', 'invoicing' ); ?></a>
75
+                        <a class="button button-secondary" href="<?php echo esc_url(add_query_arg('section', $id)); ?>"><?php _e('Manage', 'invoicing'); ?></a>
76 76
                     </td>
77 77
 
78 78
                 </tr>
@@ -83,7 +83,7 @@  discard block
 block discarded – undo
83 83
             <tr class="table-light">
84 84
                 <td colspan="4" class="border-top">
85 85
                     <a class="button button-secondary getpaid-install-gateways" href="https://wpgetpaid.com/downloads/category/gateways/">
86
-                        <span><?php _e( 'Add Payment Methods', 'invoicing' ); ?></span>
86
+                        <span><?php _e('Add Payment Methods', 'invoicing'); ?></span>
87 87
                     </a>
88 88
                 </td>
89 89
             </tr>
Please login to merge, or discard this patch.