Passed
Push — master ( 114ba5...63d401 )
by Brian
03:52
created
includes/gateways/class-getpaid-paypal-gateway.php 2 patches
Indentation   +343 added lines, -343 removed lines patch added patch discarded remove patch
@@ -13,96 +13,96 @@  discard block
 block discarded – undo
13 13
 class GetPaid_Paypal_Gateway extends GetPaid_Payment_Gateway {
14 14
 
15 15
     /**
16
-	 * Payment method id.
17
-	 *
18
-	 * @var string
19
-	 */
16
+     * Payment method id.
17
+     *
18
+     * @var string
19
+     */
20 20
     public $id = 'paypal';
21 21
 
22 22
     /**
23
-	 * An array of features that this gateway supports.
24
-	 *
25
-	 * @var array
26
-	 */
23
+     * An array of features that this gateway supports.
24
+     *
25
+     * @var array
26
+     */
27 27
     protected $supports = array( 'subscription', 'sandbox', 'single_subscription_group' );
28 28
 
29 29
     /**
30
-	 * Payment method order.
31
-	 *
32
-	 * @var int
33
-	 */
30
+     * Payment method order.
31
+     *
32
+     * @var int
33
+     */
34 34
     public $order = 1;
35 35
 
36 36
     /**
37
-	 * Stores line items to send to PayPal.
38
-	 *
39
-	 * @var array
40
-	 */
37
+     * Stores line items to send to PayPal.
38
+     *
39
+     * @var array
40
+     */
41 41
     protected $line_items = array();
42 42
 
43 43
     /**
44
-	 * Endpoint for requests from PayPal.
45
-	 *
46
-	 * @var string
47
-	 */
48
-	protected $notify_url;
49
-
50
-	/**
51
-	 * Endpoint for requests to PayPal.
52
-	 *
53
-	 * @var string
54
-	 */
44
+     * Endpoint for requests from PayPal.
45
+     *
46
+     * @var string
47
+     */
48
+    protected $notify_url;
49
+
50
+    /**
51
+     * Endpoint for requests to PayPal.
52
+     *
53
+     * @var string
54
+     */
55 55
     protected $endpoint;
56 56
 
57 57
     /**
58
-	 * Currencies this gateway is allowed for.
59
-	 *
60
-	 * @var array
61
-	 */
62
-	public $currencies = array( 'AUD', 'BRL', 'CAD', 'MXN', 'NZD', 'HKD', 'SGD', 'USD', 'EUR', 'JPY', 'TRY', 'NOK', 'CZK', 'DKK', 'HUF', 'ILS', 'MYR', 'PHP', 'PLN', 'SEK', 'CHF', 'TWD', 'THB', 'GBP', 'RMB', 'RUB', 'INR' );
58
+     * Currencies this gateway is allowed for.
59
+     *
60
+     * @var array
61
+     */
62
+    public $currencies = array( 'AUD', 'BRL', 'CAD', 'MXN', 'NZD', 'HKD', 'SGD', 'USD', 'EUR', 'JPY', 'TRY', 'NOK', 'CZK', 'DKK', 'HUF', 'ILS', 'MYR', 'PHP', 'PLN', 'SEK', 'CHF', 'TWD', 'THB', 'GBP', 'RMB', 'RUB', 'INR' );
63 63
 
64 64
     /**
65
-	 * URL to view a transaction.
66
-	 *
67
-	 * @var string
68
-	 */
65
+     * URL to view a transaction.
66
+     *
67
+     * @var string
68
+     */
69 69
     public $view_transaction_url = 'https://www.{sandbox}paypal.com/activity/payment/%s';
70 70
 
71 71
     /**
72
-	 * URL to view a subscription.
73
-	 *
74
-	 * @var string
75
-	 */
76
-	public $view_subscription_url = 'https://www.{sandbox}paypal.com/cgi-bin/webscr?cmd=_profile-recurring-payments&encrypted_profile_id=%s';
72
+     * URL to view a subscription.
73
+     *
74
+     * @var string
75
+     */
76
+    public $view_subscription_url = 'https://www.{sandbox}paypal.com/cgi-bin/webscr?cmd=_profile-recurring-payments&encrypted_profile_id=%s';
77 77
 
78 78
     /**
79
-	 * Class constructor.
80
-	 */
81
-	public function __construct() {
79
+     * Class constructor.
80
+     */
81
+    public function __construct() {
82 82
 
83 83
         $this->title                = __( 'PayPal Standard', 'invoicing' );
84 84
         $this->method_title         = __( 'PayPal Standard', 'invoicing' );
85 85
         $this->checkout_button_text = __( 'Proceed to PayPal', 'invoicing' );
86 86
         $this->notify_url           = wpinv_get_ipn_url( $this->id );
87 87
 
88
-		add_filter( 'getpaid_paypal_args', array( $this, 'process_subscription' ), 10, 2 );
88
+        add_filter( 'getpaid_paypal_args', array( $this, 'process_subscription' ), 10, 2 );
89 89
         add_filter( 'getpaid_paypal_sandbox_notice', array( $this, 'sandbox_notice' ) );
90
-		add_filter( 'getpaid_get_paypal_connect_url', array( $this, 'maybe_get_connect_url' ), 10, 2 );
91
-		add_action( 'getpaid_authenticated_admin_action_connect_paypal', array( $this, 'connect_paypal' ) );
90
+        add_filter( 'getpaid_get_paypal_connect_url', array( $this, 'maybe_get_connect_url' ), 10, 2 );
91
+        add_action( 'getpaid_authenticated_admin_action_connect_paypal', array( $this, 'connect_paypal' ) );
92 92
 
93 93
         parent::__construct();
94 94
     }
95 95
 
96 96
     /**
97
-	 * Process Payment.
98
-	 *
99
-	 *
100
-	 * @param WPInv_Invoice $invoice Invoice.
101
-	 * @param array $submission_data Posted checkout fields.
102
-	 * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
103
-	 * @return array
104
-	 */
105
-	public function process_payment( $invoice, $submission_data, $submission ) {
97
+     * Process Payment.
98
+     *
99
+     *
100
+     * @param WPInv_Invoice $invoice Invoice.
101
+     * @param array $submission_data Posted checkout fields.
102
+     * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
103
+     * @return array
104
+     */
105
+    public function process_payment( $invoice, $submission_data, $submission ) {
106 106
 
107 107
         // Get redirect url.
108 108
         $paypal_redirect = $this->get_request_url( $invoice );
@@ -125,15 +125,15 @@  discard block
 block discarded – undo
125 125
     }
126 126
 
127 127
     /**
128
-	 * Get the PayPal request URL for an invoice.
129
-	 *
130
-	 * @param  WPInv_Invoice $invoice Invoice object.
131
-	 * @return string
132
-	 */
133
-	public function get_request_url( $invoice ) {
128
+     * Get the PayPal request URL for an invoice.
129
+     *
130
+     * @param  WPInv_Invoice $invoice Invoice object.
131
+     * @return string
132
+     */
133
+    public function get_request_url( $invoice ) {
134 134
 
135 135
         // Endpoint for this request
136
-		$this->endpoint    = $this->is_sandbox( $invoice ) ? 'https://www.sandbox.paypal.com/cgi-bin/webscr?test_ipn=1&' : 'https://www.paypal.com/cgi-bin/webscr?';
136
+        $this->endpoint    = $this->is_sandbox( $invoice ) ? 'https://www.sandbox.paypal.com/cgi-bin/webscr?test_ipn=1&' : 'https://www.paypal.com/cgi-bin/webscr?';
137 137
 
138 138
         // Retrieve paypal args.
139 139
         $paypal_args       = map_deep( $this->get_paypal_args( $invoice ), 'urlencode' );
@@ -146,44 +146,44 @@  discard block
 block discarded – undo
146 146
 
147 147
         return add_query_arg( $paypal_args, $this->endpoint );
148 148
 
149
-	}
149
+    }
150 150
 
151 151
     /**
152
-	 * Get PayPal Args for passing to PP.
153
-	 *
154
-	 * @param  WPInv_Invoice $invoice Invoice object.
155
-	 * @return array
156
-	 */
157
-	protected function get_paypal_args( $invoice ) {
152
+     * Get PayPal Args for passing to PP.
153
+     *
154
+     * @param  WPInv_Invoice $invoice Invoice object.
155
+     * @return array
156
+     */
157
+    protected function get_paypal_args( $invoice ) {
158 158
 
159 159
         // Whether or not to send the line items as one item.
160
-		$force_one_line_item = apply_filters( 'getpaid_paypal_force_one_line_item', true, $invoice );
161
-
162
-		if ( $invoice->is_recurring() || ( wpinv_use_taxes() && wpinv_prices_include_tax() ) ) {
163
-			$force_one_line_item = true;
164
-		}
165
-
166
-		$paypal_args = apply_filters(
167
-			'getpaid_paypal_args',
168
-			array_merge(
169
-				$this->get_transaction_args( $invoice ),
170
-				$this->get_line_item_args( $invoice, $force_one_line_item )
171
-			),
172
-			$invoice
173
-		);
174
-
175
-		return $this->fix_request_length( $invoice, $paypal_args );
160
+        $force_one_line_item = apply_filters( 'getpaid_paypal_force_one_line_item', true, $invoice );
161
+
162
+        if ( $invoice->is_recurring() || ( wpinv_use_taxes() && wpinv_prices_include_tax() ) ) {
163
+            $force_one_line_item = true;
164
+        }
165
+
166
+        $paypal_args = apply_filters(
167
+            'getpaid_paypal_args',
168
+            array_merge(
169
+                $this->get_transaction_args( $invoice ),
170
+                $this->get_line_item_args( $invoice, $force_one_line_item )
171
+            ),
172
+            $invoice
173
+        );
174
+
175
+        return $this->fix_request_length( $invoice, $paypal_args );
176 176
     }
177 177
 
178 178
     /**
179
-	 * Get transaction args for paypal request.
180
-	 *
181
-	 * @param WPInv_Invoice $invoice Invoice object.
182
-	 * @return array
183
-	 */
184
-	protected function get_transaction_args( $invoice ) {
185
-
186
-		return array(
179
+     * Get transaction args for paypal request.
180
+     *
181
+     * @param WPInv_Invoice $invoice Invoice object.
182
+     * @return array
183
+     */
184
+    protected function get_transaction_args( $invoice ) {
185
+
186
+        return array(
187 187
             'cmd'           => '_cart',
188 188
             'business'      => wpinv_get_option( 'paypal_email', false ),
189 189
             'no_shipping'   => '1',
@@ -208,16 +208,16 @@  discard block
 block discarded – undo
208 208
     }
209 209
 
210 210
     /**
211
-	 * Get line item args for paypal request.
212
-	 *
213
-	 * @param  WPInv_Invoice $invoice Invoice object.
214
-	 * @param  bool     $force_one_line_item Create only one item for this invoice.
215
-	 * @return array
216
-	 */
217
-	protected function get_line_item_args( $invoice, $force_one_line_item = false ) {
211
+     * Get line item args for paypal request.
212
+     *
213
+     * @param  WPInv_Invoice $invoice Invoice object.
214
+     * @param  bool     $force_one_line_item Create only one item for this invoice.
215
+     * @return array
216
+     */
217
+    protected function get_line_item_args( $invoice, $force_one_line_item = false ) {
218 218
 
219 219
         // Maybe send invoice as a single item.
220
-		if ( $force_one_line_item ) {
220
+        if ( $force_one_line_item ) {
221 221
             return $this->get_line_item_args_single_item( $invoice );
222 222
         }
223 223
 
@@ -237,129 +237,129 @@  discard block
 block discarded – undo
237 237
             $line_item_args['discount_amount_cart'] = wpinv_sanitize_amount( (float) $invoice->get_total_discount(), 2 );
238 238
         }
239 239
 
240
-		return array_merge( $line_item_args, $this->get_line_items() );
240
+        return array_merge( $line_item_args, $this->get_line_items() );
241 241
 
242 242
     }
243 243
 
244 244
     /**
245
-	 * Get line item args for paypal request as a single line item.
246
-	 *
247
-	 * @param  WPInv_Invoice $invoice Invoice object.
248
-	 * @return array
249
-	 */
250
-	protected function get_line_item_args_single_item( $invoice ) {
251
-		$this->delete_line_items();
245
+     * Get line item args for paypal request as a single line item.
246
+     *
247
+     * @param  WPInv_Invoice $invoice Invoice object.
248
+     * @return array
249
+     */
250
+    protected function get_line_item_args_single_item( $invoice ) {
251
+        $this->delete_line_items();
252 252
 
253 253
         $item_name = sprintf( __( 'Invoice #%s', 'invoicing' ), $invoice->get_number() );
254
-		$this->add_line_item( $item_name, 1, wpinv_round_amount( (float) $invoice->get_total(), 2, true ), $invoice->get_id() );
254
+        $this->add_line_item( $item_name, 1, wpinv_round_amount( (float) $invoice->get_total(), 2, true ), $invoice->get_id() );
255 255
 
256
-		return $this->get_line_items();
256
+        return $this->get_line_items();
257 257
     }
258 258
 
259 259
     /**
260
-	 * Return all line items.
261
-	 */
262
-	protected function get_line_items() {
263
-		return $this->line_items;
264
-	}
260
+     * Return all line items.
261
+     */
262
+    protected function get_line_items() {
263
+        return $this->line_items;
264
+    }
265 265
 
266 266
     /**
267
-	 * Remove all line items.
268
-	 */
269
-	protected function delete_line_items() {
270
-		$this->line_items = array();
267
+     * Remove all line items.
268
+     */
269
+    protected function delete_line_items() {
270
+        $this->line_items = array();
271 271
     }
272 272
 
273 273
     /**
274
-	 * Prepare line items to send to paypal.
275
-	 *
276
-	 * @param  WPInv_Invoice $invoice Invoice object.
277
-	 */
278
-	protected function prepare_line_items( $invoice ) {
279
-		$this->delete_line_items();
280
-
281
-		// Items.
282
-		foreach ( $invoice->get_items() as $item ) {
283
-			$amount   = $item->get_price();
284
-			$quantity = $invoice->get_template() == 'amount' ? 1 : $item->get_quantity();
285
-			$this->add_line_item( $item->get_raw_name(), $quantity, $amount, $item->get_id() );
274
+     * Prepare line items to send to paypal.
275
+     *
276
+     * @param  WPInv_Invoice $invoice Invoice object.
277
+     */
278
+    protected function prepare_line_items( $invoice ) {
279
+        $this->delete_line_items();
280
+
281
+        // Items.
282
+        foreach ( $invoice->get_items() as $item ) {
283
+            $amount   = $item->get_price();
284
+            $quantity = $invoice->get_template() == 'amount' ? 1 : $item->get_quantity();
285
+            $this->add_line_item( $item->get_raw_name(), $quantity, $amount, $item->get_id() );
286 286
         }
287 287
 
288 288
         // Fees.
289
-		foreach ( $invoice->get_fees() as $fee => $data ) {
289
+        foreach ( $invoice->get_fees() as $fee => $data ) {
290 290
             $this->add_line_item( $fee, 1, wpinv_sanitize_amount( $data['initial_fee'] ) );
291 291
         }
292 292
 
293 293
     }
294 294
 
295 295
     /**
296
-	 * Add PayPal Line Item.
297
-	 *
298
-	 * @param  string $item_name Item name.
299
-	 * @param  float    $quantity Item quantity.
300
-	 * @param  float  $amount Amount.
301
-	 * @param  string $item_number Item number.
302
-	 */
303
-	protected function add_line_item( $item_name, $quantity = 1, $amount = 0.0, $item_number = '' ) {
304
-		$index = ( count( $this->line_items ) / 4 ) + 1;
305
-
306
-		$item = apply_filters(
307
-			'getpaid_paypal_line_item',
308
-			array(
309
-				'item_name'   => html_entity_decode( getpaid_limit_length( $item_name ? wp_strip_all_tags( $item_name ) : __( 'Item', 'invoicing' ), 127 ), ENT_NOQUOTES, 'UTF-8' ),
310
-				'quantity'    => (float) $quantity,
311
-				'amount'      => wpinv_sanitize_amount( (float) $amount, 2 ),
312
-				'item_number' => $item_number,
313
-			),
314
-			$item_name,
315
-			$quantity,
316
-			$amount,
317
-			$item_number
318
-		);
319
-
320
-		$this->line_items[ 'item_name_' . $index ]   = getpaid_limit_length( $item['item_name'], 127 );
296
+     * Add PayPal Line Item.
297
+     *
298
+     * @param  string $item_name Item name.
299
+     * @param  float    $quantity Item quantity.
300
+     * @param  float  $amount Amount.
301
+     * @param  string $item_number Item number.
302
+     */
303
+    protected function add_line_item( $item_name, $quantity = 1, $amount = 0.0, $item_number = '' ) {
304
+        $index = ( count( $this->line_items ) / 4 ) + 1;
305
+
306
+        $item = apply_filters(
307
+            'getpaid_paypal_line_item',
308
+            array(
309
+                'item_name'   => html_entity_decode( getpaid_limit_length( $item_name ? wp_strip_all_tags( $item_name ) : __( 'Item', 'invoicing' ), 127 ), ENT_NOQUOTES, 'UTF-8' ),
310
+                'quantity'    => (float) $quantity,
311
+                'amount'      => wpinv_sanitize_amount( (float) $amount, 2 ),
312
+                'item_number' => $item_number,
313
+            ),
314
+            $item_name,
315
+            $quantity,
316
+            $amount,
317
+            $item_number
318
+        );
319
+
320
+        $this->line_items[ 'item_name_' . $index ]   = getpaid_limit_length( $item['item_name'], 127 );
321 321
         $this->line_items[ 'quantity_' . $index ]    = $item['quantity'];
322 322
 
323 323
         // The price or amount of the product, service, or contribution, not including shipping, handling, or tax.
324
-		$this->line_items[ 'amount_' . $index ]      = $item['amount'] * $item['quantity'];
325
-		$this->line_items[ 'item_number_' . $index ] = getpaid_limit_length( $item['item_number'], 127 );
324
+        $this->line_items[ 'amount_' . $index ]      = $item['amount'] * $item['quantity'];
325
+        $this->line_items[ 'item_number_' . $index ] = getpaid_limit_length( $item['item_number'], 127 );
326 326
     }
327 327
 
328 328
     /**
329
-	 * If the default request with line items is too long, generate a new one with only one line item.
330
-	 *
331
-	 * https://support.microsoft.com/en-us/help/208427/maximum-url-length-is-2-083-characters-in-internet-explorer.
332
-	 *
333
-	 * @param WPInv_Invoice $invoice Invoice to be sent to Paypal.
334
-	 * @param array    $paypal_args Arguments sent to Paypal in the request.
335
-	 * @return array
336
-	 */
337
-	protected function fix_request_length( $invoice, $paypal_args ) {
338
-		$max_paypal_length = 2083;
339
-		$query_candidate   = http_build_query( $paypal_args, '', '&' );
340
-
341
-		if ( strlen( $this->endpoint . $query_candidate ) <= $max_paypal_length ) {
342
-			return $paypal_args;
343
-		}
344
-
345
-		return apply_filters(
346
-			'getpaid_paypal_args',
347
-			array_merge(
348
-				$this->get_transaction_args( $invoice ),
349
-				$this->get_line_item_args( $invoice, true )
350
-			),
351
-			$invoice
352
-		);
329
+     * If the default request with line items is too long, generate a new one with only one line item.
330
+     *
331
+     * https://support.microsoft.com/en-us/help/208427/maximum-url-length-is-2-083-characters-in-internet-explorer.
332
+     *
333
+     * @param WPInv_Invoice $invoice Invoice to be sent to Paypal.
334
+     * @param array    $paypal_args Arguments sent to Paypal in the request.
335
+     * @return array
336
+     */
337
+    protected function fix_request_length( $invoice, $paypal_args ) {
338
+        $max_paypal_length = 2083;
339
+        $query_candidate   = http_build_query( $paypal_args, '', '&' );
340
+
341
+        if ( strlen( $this->endpoint . $query_candidate ) <= $max_paypal_length ) {
342
+            return $paypal_args;
343
+        }
344
+
345
+        return apply_filters(
346
+            'getpaid_paypal_args',
347
+            array_merge(
348
+                $this->get_transaction_args( $invoice ),
349
+                $this->get_line_item_args( $invoice, true )
350
+            ),
351
+            $invoice
352
+        );
353 353
 
354 354
     }
355 355
 
356 356
     /**
357
-	 * Processes recurring invoices.
358
-	 *
359
-	 * @param  array $paypal_args PayPal args.
360
-	 * @param  WPInv_Invoice    $invoice Invoice object.
361
-	 */
362
-	public function process_subscription( $paypal_args, $invoice ) {
357
+     * Processes recurring invoices.
358
+     *
359
+     * @param  array $paypal_args PayPal args.
360
+     * @param  WPInv_Invoice    $invoice Invoice object.
361
+     */
362
+    public function process_subscription( $paypal_args, $invoice ) {
363 363
 
364 364
         // Make sure this is a subscription.
365 365
         if ( ! $invoice->is_recurring() || ! $subscription = getpaid_get_invoice_subscription( $invoice ) ) {
@@ -384,11 +384,11 @@  discard block
 block discarded – undo
384 384
 
385 385
             $paypal_args['a1'] = 0 == $initial_amount ? 0 : $initial_amount;
386 386
 
387
-			// Trial period length.
388
-			$paypal_args['p1'] = $subscription_item->get_trial_interval();
387
+            // Trial period length.
388
+            $paypal_args['p1'] = $subscription_item->get_trial_interval();
389 389
 
390
-			// Trial period.
391
-			$paypal_args['t1'] = $subscription_item->get_trial_period();
390
+            // Trial period.
391
+            $paypal_args['t1'] = $subscription_item->get_trial_period();
392 392
 
393 393
         } else if ( $initial_amount != $recurring_amount ) {
394 394
 
@@ -411,40 +411,40 @@  discard block
 block discarded – undo
411 411
         }
412 412
 
413 413
         // We have a recurring payment
414
-		if ( ! isset( $param_number ) || 1 == $param_number ) {
414
+        if ( ! isset( $param_number ) || 1 == $param_number ) {
415 415
 
416
-			// Subscription price
417
-			$paypal_args['a3'] = $recurring_amount;
416
+            // Subscription price
417
+            $paypal_args['a3'] = $recurring_amount;
418 418
 
419
-			// Subscription duration
420
-			$paypal_args['p3'] = $interval;
419
+            // Subscription duration
420
+            $paypal_args['p3'] = $interval;
421 421
 
422
-			// Subscription period
423
-			$paypal_args['t3'] = $period;
422
+            // Subscription period
423
+            $paypal_args['t3'] = $period;
424 424
 
425 425
         }
426 426
 
427 427
         // Recurring payments
428
-		if ( 1 == $bill_times || ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() && 2 == $bill_times ) ) {
428
+        if ( 1 == $bill_times || ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() && 2 == $bill_times ) ) {
429 429
 
430
-			// Non-recurring payments
431
-			$paypal_args['src'] = 0;
430
+            // Non-recurring payments
431
+            $paypal_args['src'] = 0;
432 432
 
433
-		} else {
433
+        } else {
434 434
 
435
-			$paypal_args['src'] = 1;
435
+            $paypal_args['src'] = 1;
436 436
 
437
-			if ( $bill_times > 0 ) {
437
+            if ( $bill_times > 0 ) {
438 438
 
439
-				// An initial period is being used to charge a sign-up fee
440
-				if ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() ) {
441
-					$bill_times--;
442
-				}
439
+                // An initial period is being used to charge a sign-up fee
440
+                if ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() ) {
441
+                    $bill_times--;
442
+                }
443 443
 
444 444
                 // Make sure it's not over the max of 52
445 445
                 $paypal_args['srt'] = ( $bill_times <= 52 ? absint( $bill_times ) : 52 );
446 446
 
447
-			}
447
+            }
448 448
         }
449 449
 
450 450
         // Force return URL so that order description & instructions display
@@ -460,19 +460,19 @@  discard block
 block discarded – undo
460 460
         }
461 461
 
462 462
         return apply_filters(
463
-			'getpaid_paypal_subscription_args',
464
-			$paypal_args,
465
-			$invoice
463
+            'getpaid_paypal_subscription_args',
464
+            $paypal_args,
465
+            $invoice
466 466
         );
467 467
 
468 468
     }
469 469
 
470 470
     /**
471
-	 * Processes ipns and marks payments as complete.
472
-	 *
473
-	 * @return void
474
-	 */
475
-	public function verify_ipn() {
471
+     * Processes ipns and marks payments as complete.
472
+     *
473
+     * @return void
474
+     */
475
+    public function verify_ipn() {
476 476
         new GetPaid_Paypal_Gateway_IPN_Handler( $this );
477 477
     }
478 478
 
@@ -482,19 +482,19 @@  discard block
 block discarded – undo
482 482
     public function sandbox_notice() {
483 483
 
484 484
         return sprintf(
485
-			__( 'SANDBOX ENABLED. You can use sandbox testing accounts only. See the %sPayPal Sandbox Testing Guide%s for more details.', 'invoicing' ),
486
-			'<a href="https://developer.paypal.com/docs/classic/lifecycle/ug_sandbox/">',
487
-			'</a>'
488
-		);
485
+            __( 'SANDBOX ENABLED. You can use sandbox testing accounts only. See the %sPayPal Sandbox Testing Guide%s for more details.', 'invoicing' ),
486
+            '<a href="https://developer.paypal.com/docs/classic/lifecycle/ug_sandbox/">',
487
+            '</a>'
488
+        );
489 489
 
490 490
     }
491 491
 
492
-	/**
493
-	 * Filters the gateway settings.
494
-	 *
495
-	 * @param array $admin_settings
496
-	 */
497
-	public function admin_settings( $admin_settings ) {
492
+    /**
493
+     * Filters the gateway settings.
494
+     *
495
+     * @param array $admin_settings
496
+     */
497
+    public function admin_settings( $admin_settings ) {
498 498
 
499 499
         $currencies = sprintf(
500 500
             __( 'Supported Currencies: %s', 'invoicing' ),
@@ -504,39 +504,39 @@  discard block
 block discarded – undo
504 504
         $admin_settings['paypal_active']['desc'] .= " ($currencies)";
505 505
         $admin_settings['paypal_desc']['std']     = __( 'Pay via PayPal: you can pay with your credit card if you don\'t have a PayPal account.', 'invoicing' );
506 506
 
507
-		// Access tokens.
508
-		$live_email      = wpinv_get_option( 'paypal_email' );
509
-		$sandbox_email   = wpinv_get_option( 'paypal_sandbox_email' );
510
-
511
-		$admin_settings['paypal_connect'] = array(
512
-			'type'       => 'raw_html',
513
-			'id'         => 'paypal_connect',
514
-			'name'       => __( 'Connect to PayPal', 'invoicing' ),
515
-			'desc'       => sprintf(
516
-				'<div class="wpinv-paypal-connect-live"><a class="button button-primary" href="%s">%s</a></div><div class="wpinv-paypal-connect-sandbox"><a class="button button-primary" href="%s">%s</a></div>%s',
517
-				esc_url( self::get_connect_url( false ) ),
518
-				__( 'Connect to PayPal', 'invoicing' ),
519
-				esc_url( self::get_connect_url( true ) ),
520
-				__( 'Connect to PayPal Sandox', 'invoicing' ),
521
-				$this->get_js()
522
-			),
523
-		);
507
+        // Access tokens.
508
+        $live_email      = wpinv_get_option( 'paypal_email' );
509
+        $sandbox_email   = wpinv_get_option( 'paypal_sandbox_email' );
510
+
511
+        $admin_settings['paypal_connect'] = array(
512
+            'type'       => 'raw_html',
513
+            'id'         => 'paypal_connect',
514
+            'name'       => __( 'Connect to PayPal', 'invoicing' ),
515
+            'desc'       => sprintf(
516
+                '<div class="wpinv-paypal-connect-live"><a class="button button-primary" href="%s">%s</a></div><div class="wpinv-paypal-connect-sandbox"><a class="button button-primary" href="%s">%s</a></div>%s',
517
+                esc_url( self::get_connect_url( false ) ),
518
+                __( 'Connect to PayPal', 'invoicing' ),
519
+                esc_url( self::get_connect_url( true ) ),
520
+                __( 'Connect to PayPal Sandox', 'invoicing' ),
521
+                $this->get_js()
522
+            ),
523
+        );
524 524
 
525 525
         $admin_settings['paypal_email'] = array(
526 526
             'type'  => 'text',
527
-			'class' => 'live-auth-data',
527
+            'class' => 'live-auth-data',
528 528
             'id'    => 'paypal_email',
529 529
             'name'  => __( 'Live Email Address', 'invoicing' ),
530 530
             'desc'  => __( 'The email address of your PayPal account.', 'invoicing' ),
531 531
         );
532 532
 
533
-		$admin_settings['paypal_sandbox_email'] = array(
533
+        $admin_settings['paypal_sandbox_email'] = array(
534 534
             'type'  => 'text',
535
-			'class' => 'sandbox-auth-data',
535
+            'class' => 'sandbox-auth-data',
536 536
             'id'    => 'paypal_sandbox_email',
537 537
             'name'  => __( 'Sandbox Email Address', 'invoicing' ),
538 538
             'desc'  => __( 'The email address of your sandbox PayPal account.', 'invoicing' ),
539
-			'std'   => wpinv_get_option( 'paypal_email', '' ),
539
+            'std'   => wpinv_get_option( 'paypal_email', '' ),
540 540
         );
541 541
 
542 542
         $admin_settings['paypal_ipn_url'] = array(
@@ -548,29 +548,29 @@  discard block
 block discarded – undo
548 548
             'readonly' => true,
549 549
         );
550 550
 
551
-		return $admin_settings;
552
-	}
551
+        return $admin_settings;
552
+    }
553 553
 
554
-	/**
555
-	 * Retrieves the PayPal connect URL when using the setup wizzard.
556
-	 *
557
-	 *
554
+    /**
555
+     * Retrieves the PayPal connect URL when using the setup wizzard.
556
+     *
557
+     *
558 558
      * @param array $data
559 559
      * @return string
560
-	 */
561
-	public static function maybe_get_connect_url( $url = '', $data ) {
562
-		return self::get_connect_url( false, urldecode( $data['redirect'] ) );
563
-	}
564
-
565
-	/**
566
-	 * Retrieves the PayPal connect URL.
567
-	 *
568
-	 *
560
+     */
561
+    public static function maybe_get_connect_url( $url = '', $data ) {
562
+        return self::get_connect_url( false, urldecode( $data['redirect'] ) );
563
+    }
564
+
565
+    /**
566
+     * Retrieves the PayPal connect URL.
567
+     *
568
+     *
569 569
      * @param bool $is_sandbox
570
-	 * @param string $redirect
570
+     * @param string $redirect
571 571
      * @return string
572
-	 */
573
-	public static function get_connect_url( $is_sandbox, $redirect = '' ) {
572
+     */
573
+    public static function get_connect_url( $is_sandbox, $redirect = '' ) {
574 574
 
575 575
         $redirect_url = add_query_arg(
576 576
             array(
@@ -580,7 +580,7 @@  discard block
 block discarded – undo
580 580
                 'tab'                  => 'gateways',
581 581
                 'section'              => 'paypal',
582 582
                 'getpaid-nonce'        => wp_create_nonce( 'getpaid-nonce' ),
583
-				'redirect'             => urlencode( $redirect ),
583
+                'redirect'             => urlencode( $redirect ),
584 584
             ),
585 585
             admin_url( 'admin.php' )
586 586
         );
@@ -595,12 +595,12 @@  discard block
 block discarded – undo
595 595
 
596 596
     }
597 597
 
598
-	/**
599
-	 * Generates settings page js.
600
-	 *
598
+    /**
599
+     * Generates settings page js.
600
+     *
601 601
      * @return void
602
-	 */
603
-	public static function get_js() {
602
+     */
603
+    public static function get_js() {
604 604
         ob_start();
605 605
         ?>
606 606
             <script>
@@ -636,72 +636,72 @@  discard block
 block discarded – undo
636 636
         return ob_get_clean();
637 637
     }
638 638
 
639
-	/**
640
-	 * Connects to PayPal.
641
-	 *
642
-	 * @param array $data Connection data.
643
-	 * @return void
644
-	 */
645
-	public function connect_paypal( $data ) {
646
-
647
-		$sandbox      = $this->is_sandbox();
648
-		$data         = wp_unslash( $data );
649
-		$access_token = empty( $data['access_token'] ) ? '' : sanitize_text_field( $data['access_token'] );
650
-
651
-		if ( isset( $data['live_mode'] ) ) {
652
-			$sandbox = empty( $data['live_mode'] );
653
-		}
654
-
655
-		wpinv_update_option( 'paypal_sandbox', (int) $sandbox );
656
-		wpinv_update_option( 'paypal_active', 1 );
657
-
658
-		if ( ! empty( $data['error_description'] ) ) {
659
-			getpaid_admin()->show_error( wp_kses_post( urldecode( $data['error_description'] ) ) );
660
-		} else {
661
-
662
-			// Retrieve the user info.
663
-			$user_info = wp_remote_get(
664
-				! $sandbox ? 'https://api-m.paypal.com/v1/identity/oauth2/userinfo?schema=paypalv1.1' : 'https://api-m.sandbox.paypal.com/v1/identity/oauth2/userinfo?schema=paypalv1.1',
665
-				array(
666
-
667
-					'headers' => array(
668
-						'Authorization' => 'Bearer ' . $access_token,
669
-						'Content-type'  => 'application/json',
670
-					)
671
-
672
-				)
673
-			);
674
-
675
-			if ( is_wp_error( $user_info ) ) {
676
-				getpaid_admin()->show_error( wp_kses_post( $user_info->get_error_message() ) );
677
-			} else {
678
-
679
-				// Create application.
680
-				$user_info = json_decode( wp_remote_retrieve_body( $user_info ) );
681
-
682
-				if ( $sandbox ) {
683
-					wpinv_update_option( 'paypal_sandbox_email', sanitize_email( $user_info->emails[0]->value ) );
684
-					wpinv_update_option( 'paypal_sandbox_refresh_token', sanitize_text_field( urldecode( $data['refresh_token'] ) ) );
685
-					set_transient( 'getpaid_paypal_sandbox_access_token', sanitize_text_field( urldecode( $data['access_token'] ) ), (int) $data['expires_in'] );
686
-					getpaid_admin()->show_success( __( 'Successfully connected your PayPal sandbox account', 'invoicing' ) );
687
-				} else {
688
-					wpinv_update_option( 'paypal_email', sanitize_email( $user_info->emails[0]->value ) );
689
-					wpinv_update_option( 'paypal_refresh_token', sanitize_text_field( urldecode( $data['refresh_token'] ) ) );
690
-					set_transient( 'getpaid_paypal_access_token', sanitize_text_field( urldecode( $data['access_token'] ) ), (int) $data['expires_in'] );
691
-					getpaid_admin()->show_success( __( 'Successfully connected your PayPal account', 'invoicing' ) );
692
-				}
693
-
694
-			}
695
-
696
-		}
697
-
698
-		$redirect = empty( $data['redirect'] ) ? admin_url( 'admin.php?page=wpinv-settings&tab=gateways&section=paypal' ) : urldecode( $data['redirect'] );
699
-
700
-		if ( isset( $data['step'] ) ) {
701
-			$redirect = add_query_arg( 'step', $data['step'], $redirect );
702
-		}
703
-		wp_redirect( $redirect );
704
-		exit;
705
-	}
639
+    /**
640
+     * Connects to PayPal.
641
+     *
642
+     * @param array $data Connection data.
643
+     * @return void
644
+     */
645
+    public function connect_paypal( $data ) {
646
+
647
+        $sandbox      = $this->is_sandbox();
648
+        $data         = wp_unslash( $data );
649
+        $access_token = empty( $data['access_token'] ) ? '' : sanitize_text_field( $data['access_token'] );
650
+
651
+        if ( isset( $data['live_mode'] ) ) {
652
+            $sandbox = empty( $data['live_mode'] );
653
+        }
654
+
655
+        wpinv_update_option( 'paypal_sandbox', (int) $sandbox );
656
+        wpinv_update_option( 'paypal_active', 1 );
657
+
658
+        if ( ! empty( $data['error_description'] ) ) {
659
+            getpaid_admin()->show_error( wp_kses_post( urldecode( $data['error_description'] ) ) );
660
+        } else {
661
+
662
+            // Retrieve the user info.
663
+            $user_info = wp_remote_get(
664
+                ! $sandbox ? 'https://api-m.paypal.com/v1/identity/oauth2/userinfo?schema=paypalv1.1' : 'https://api-m.sandbox.paypal.com/v1/identity/oauth2/userinfo?schema=paypalv1.1',
665
+                array(
666
+
667
+                    'headers' => array(
668
+                        'Authorization' => 'Bearer ' . $access_token,
669
+                        'Content-type'  => 'application/json',
670
+                    )
671
+
672
+                )
673
+            );
674
+
675
+            if ( is_wp_error( $user_info ) ) {
676
+                getpaid_admin()->show_error( wp_kses_post( $user_info->get_error_message() ) );
677
+            } else {
678
+
679
+                // Create application.
680
+                $user_info = json_decode( wp_remote_retrieve_body( $user_info ) );
681
+
682
+                if ( $sandbox ) {
683
+                    wpinv_update_option( 'paypal_sandbox_email', sanitize_email( $user_info->emails[0]->value ) );
684
+                    wpinv_update_option( 'paypal_sandbox_refresh_token', sanitize_text_field( urldecode( $data['refresh_token'] ) ) );
685
+                    set_transient( 'getpaid_paypal_sandbox_access_token', sanitize_text_field( urldecode( $data['access_token'] ) ), (int) $data['expires_in'] );
686
+                    getpaid_admin()->show_success( __( 'Successfully connected your PayPal sandbox account', 'invoicing' ) );
687
+                } else {
688
+                    wpinv_update_option( 'paypal_email', sanitize_email( $user_info->emails[0]->value ) );
689
+                    wpinv_update_option( 'paypal_refresh_token', sanitize_text_field( urldecode( $data['refresh_token'] ) ) );
690
+                    set_transient( 'getpaid_paypal_access_token', sanitize_text_field( urldecode( $data['access_token'] ) ), (int) $data['expires_in'] );
691
+                    getpaid_admin()->show_success( __( 'Successfully connected your PayPal account', 'invoicing' ) );
692
+                }
693
+
694
+            }
695
+
696
+        }
697
+
698
+        $redirect = empty( $data['redirect'] ) ? admin_url( 'admin.php?page=wpinv-settings&tab=gateways&section=paypal' ) : urldecode( $data['redirect'] );
699
+
700
+        if ( isset( $data['step'] ) ) {
701
+            $redirect = add_query_arg( 'step', $data['step'], $redirect );
702
+        }
703
+        wp_redirect( $redirect );
704
+        exit;
705
+    }
706 706
 
707 707
 }
Please login to merge, or discard this patch.
Spacing   +144 added lines, -144 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
  * Paypal Payment Gateway class.
@@ -24,7 +24,7 @@  discard block
 block discarded – undo
24 24
 	 *
25 25
 	 * @var array
26 26
 	 */
27
-    protected $supports = array( 'subscription', 'sandbox', 'single_subscription_group' );
27
+    protected $supports = array('subscription', 'sandbox', 'single_subscription_group');
28 28
 
29 29
     /**
30 30
 	 * Payment method order.
@@ -59,7 +59,7 @@  discard block
 block discarded – undo
59 59
 	 *
60 60
 	 * @var array
61 61
 	 */
62
-	public $currencies = array( 'AUD', 'BRL', 'CAD', 'MXN', 'NZD', 'HKD', 'SGD', 'USD', 'EUR', 'JPY', 'TRY', 'NOK', 'CZK', 'DKK', 'HUF', 'ILS', 'MYR', 'PHP', 'PLN', 'SEK', 'CHF', 'TWD', 'THB', 'GBP', 'RMB', 'RUB', 'INR' );
62
+	public $currencies = array('AUD', 'BRL', 'CAD', 'MXN', 'NZD', 'HKD', 'SGD', 'USD', 'EUR', 'JPY', 'TRY', 'NOK', 'CZK', 'DKK', 'HUF', 'ILS', 'MYR', 'PHP', 'PLN', 'SEK', 'CHF', 'TWD', 'THB', 'GBP', 'RMB', 'RUB', 'INR');
63 63
 
64 64
     /**
65 65
 	 * URL to view a transaction.
@@ -80,15 +80,15 @@  discard block
 block discarded – undo
80 80
 	 */
81 81
 	public function __construct() {
82 82
 
83
-        $this->title                = __( 'PayPal Standard', 'invoicing' );
84
-        $this->method_title         = __( 'PayPal Standard', 'invoicing' );
85
-        $this->checkout_button_text = __( 'Proceed to PayPal', 'invoicing' );
86
-        $this->notify_url           = wpinv_get_ipn_url( $this->id );
83
+        $this->title                = __('PayPal Standard', 'invoicing');
84
+        $this->method_title         = __('PayPal Standard', 'invoicing');
85
+        $this->checkout_button_text = __('Proceed to PayPal', 'invoicing');
86
+        $this->notify_url           = wpinv_get_ipn_url($this->id);
87 87
 
88
-		add_filter( 'getpaid_paypal_args', array( $this, 'process_subscription' ), 10, 2 );
89
-        add_filter( 'getpaid_paypal_sandbox_notice', array( $this, 'sandbox_notice' ) );
90
-		add_filter( 'getpaid_get_paypal_connect_url', array( $this, 'maybe_get_connect_url' ), 10, 2 );
91
-		add_action( 'getpaid_authenticated_admin_action_connect_paypal', array( $this, 'connect_paypal' ) );
88
+		add_filter('getpaid_paypal_args', array($this, 'process_subscription'), 10, 2);
89
+        add_filter('getpaid_paypal_sandbox_notice', array($this, 'sandbox_notice'));
90
+		add_filter('getpaid_get_paypal_connect_url', array($this, 'maybe_get_connect_url'), 10, 2);
91
+		add_action('getpaid_authenticated_admin_action_connect_paypal', array($this, 'connect_paypal'));
92 92
 
93 93
         parent::__construct();
94 94
     }
@@ -102,16 +102,16 @@  discard block
 block discarded – undo
102 102
 	 * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
103 103
 	 * @return array
104 104
 	 */
105
-	public function process_payment( $invoice, $submission_data, $submission ) {
105
+	public function process_payment($invoice, $submission_data, $submission) {
106 106
 
107 107
         // Get redirect url.
108
-        $paypal_redirect = $this->get_request_url( $invoice );
108
+        $paypal_redirect = $this->get_request_url($invoice);
109 109
 
110 110
         // Add a note about the request url.
111 111
         $invoice->add_note(
112 112
             sprintf(
113
-                __( 'Redirecting to PayPal: %s', 'invoicing' ),
114
-                esc_url( $paypal_redirect )
113
+                __('Redirecting to PayPal: %s', 'invoicing'),
114
+                esc_url($paypal_redirect)
115 115
             ),
116 116
             false,
117 117
             false,
@@ -119,7 +119,7 @@  discard block
 block discarded – undo
119 119
         );
120 120
 
121 121
         // Redirect to PayPal
122
-        wp_redirect( $paypal_redirect );
122
+        wp_redirect($paypal_redirect);
123 123
         exit;
124 124
 
125 125
     }
@@ -130,21 +130,21 @@  discard block
 block discarded – undo
130 130
 	 * @param  WPInv_Invoice $invoice Invoice object.
131 131
 	 * @return string
132 132
 	 */
133
-	public function get_request_url( $invoice ) {
133
+	public function get_request_url($invoice) {
134 134
 
135 135
         // Endpoint for this request
136
-		$this->endpoint    = $this->is_sandbox( $invoice ) ? 'https://www.sandbox.paypal.com/cgi-bin/webscr?test_ipn=1&' : 'https://www.paypal.com/cgi-bin/webscr?';
136
+		$this->endpoint = $this->is_sandbox($invoice) ? 'https://www.sandbox.paypal.com/cgi-bin/webscr?test_ipn=1&' : 'https://www.paypal.com/cgi-bin/webscr?';
137 137
 
138 138
         // Retrieve paypal args.
139
-        $paypal_args       = map_deep( $this->get_paypal_args( $invoice ), 'urlencode' );
139
+        $paypal_args = map_deep($this->get_paypal_args($invoice), 'urlencode');
140 140
 
141
-        if ( $invoice->is_recurring() ) {
141
+        if ($invoice->is_recurring()) {
142 142
             $paypal_args['bn'] = 'GetPaid_Subscribe_WPS_US';
143 143
         } else {
144 144
             $paypal_args['bn'] = 'GetPaid_ShoppingCart_WPS_US';
145 145
         }
146 146
 
147
-        return add_query_arg( $paypal_args, $this->endpoint );
147
+        return add_query_arg($paypal_args, $this->endpoint);
148 148
 
149 149
 	}
150 150
 
@@ -154,25 +154,25 @@  discard block
 block discarded – undo
154 154
 	 * @param  WPInv_Invoice $invoice Invoice object.
155 155
 	 * @return array
156 156
 	 */
157
-	protected function get_paypal_args( $invoice ) {
157
+	protected function get_paypal_args($invoice) {
158 158
 
159 159
         // Whether or not to send the line items as one item.
160
-		$force_one_line_item = apply_filters( 'getpaid_paypal_force_one_line_item', true, $invoice );
160
+		$force_one_line_item = apply_filters('getpaid_paypal_force_one_line_item', true, $invoice);
161 161
 
162
-		if ( $invoice->is_recurring() || ( wpinv_use_taxes() && wpinv_prices_include_tax() ) ) {
162
+		if ($invoice->is_recurring() || (wpinv_use_taxes() && wpinv_prices_include_tax())) {
163 163
 			$force_one_line_item = true;
164 164
 		}
165 165
 
166 166
 		$paypal_args = apply_filters(
167 167
 			'getpaid_paypal_args',
168 168
 			array_merge(
169
-				$this->get_transaction_args( $invoice ),
170
-				$this->get_line_item_args( $invoice, $force_one_line_item )
169
+				$this->get_transaction_args($invoice),
170
+				$this->get_line_item_args($invoice, $force_one_line_item)
171 171
 			),
172 172
 			$invoice
173 173
 		);
174 174
 
175
-		return $this->fix_request_length( $invoice, $paypal_args );
175
+		return $this->fix_request_length($invoice, $paypal_args);
176 176
     }
177 177
 
178 178
     /**
@@ -181,11 +181,11 @@  discard block
 block discarded – undo
181 181
 	 * @param WPInv_Invoice $invoice Invoice object.
182 182
 	 * @return array
183 183
 	 */
184
-	protected function get_transaction_args( $invoice ) {
184
+	protected function get_transaction_args($invoice) {
185 185
 
186 186
 		return array(
187 187
             'cmd'           => '_cart',
188
-            'business'      => wpinv_get_option( 'paypal_email', false ),
188
+            'business'      => wpinv_get_option('paypal_email', false),
189 189
             'no_shipping'   => '1',
190 190
             'shipping'      => '0',
191 191
             'no_note'       => '1',
@@ -193,16 +193,16 @@  discard block
 block discarded – undo
193 193
             'rm'            => is_ssl() ? 2 : 1,
194 194
             'upload'        => 1,
195 195
             'currency_code' => $invoice->get_currency(), // https://developer.paypal.com/docs/nvp-soap-api/currency-codes/#paypal
196
-            'return'        => esc_url_raw( $this->get_return_url( $invoice ) ),
197
-            'cancel_return' => esc_url_raw( $invoice->get_checkout_payment_url() ),
198
-            'notify_url'    => getpaid_limit_length( $this->notify_url, 255 ),
199
-            'invoice'       => getpaid_limit_length( $invoice->get_number(), 127 ),
196
+            'return'        => esc_url_raw($this->get_return_url($invoice)),
197
+            'cancel_return' => esc_url_raw($invoice->get_checkout_payment_url()),
198
+            'notify_url'    => getpaid_limit_length($this->notify_url, 255),
199
+            'invoice'       => getpaid_limit_length($invoice->get_number(), 127),
200 200
             'custom'        => $invoice->get_id(),
201
-            'first_name'    => getpaid_limit_length( $invoice->get_first_name(), 32 ),
202
-            'last_name'     => getpaid_limit_length( $invoice->get_last_name(), 64 ),
203
-            'country'       => getpaid_limit_length( $invoice->get_country(), 2 ),
204
-            'email'         => getpaid_limit_length( $invoice->get_email(), 127 ),
205
-            'cbt'           => get_bloginfo( 'name' )
201
+            'first_name'    => getpaid_limit_length($invoice->get_first_name(), 32),
202
+            'last_name'     => getpaid_limit_length($invoice->get_last_name(), 64),
203
+            'country'       => getpaid_limit_length($invoice->get_country(), 2),
204
+            'email'         => getpaid_limit_length($invoice->get_email(), 127),
205
+            'cbt'           => get_bloginfo('name')
206 206
         );
207 207
 
208 208
     }
@@ -214,30 +214,30 @@  discard block
 block discarded – undo
214 214
 	 * @param  bool     $force_one_line_item Create only one item for this invoice.
215 215
 	 * @return array
216 216
 	 */
217
-	protected function get_line_item_args( $invoice, $force_one_line_item = false ) {
217
+	protected function get_line_item_args($invoice, $force_one_line_item = false) {
218 218
 
219 219
         // Maybe send invoice as a single item.
220
-		if ( $force_one_line_item ) {
221
-            return $this->get_line_item_args_single_item( $invoice );
220
+		if ($force_one_line_item) {
221
+            return $this->get_line_item_args_single_item($invoice);
222 222
         }
223 223
 
224 224
         // Send each line item individually.
225 225
         $line_item_args = array();
226 226
 
227 227
         // Prepare line items.
228
-        $this->prepare_line_items( $invoice );
228
+        $this->prepare_line_items($invoice);
229 229
 
230 230
         // Add taxes to the cart
231
-        if ( wpinv_use_taxes() && $invoice->is_taxable() ) {
232
-            $line_item_args['tax_cart'] = wpinv_sanitize_amount( (float) $invoice->get_total_tax(), 2 );
231
+        if (wpinv_use_taxes() && $invoice->is_taxable()) {
232
+            $line_item_args['tax_cart'] = wpinv_sanitize_amount((float) $invoice->get_total_tax(), 2);
233 233
         }
234 234
 
235 235
         // Add discount.
236
-        if ( $invoice->get_total_discount() > 0 ) {
237
-            $line_item_args['discount_amount_cart'] = wpinv_sanitize_amount( (float) $invoice->get_total_discount(), 2 );
236
+        if ($invoice->get_total_discount() > 0) {
237
+            $line_item_args['discount_amount_cart'] = wpinv_sanitize_amount((float) $invoice->get_total_discount(), 2);
238 238
         }
239 239
 
240
-		return array_merge( $line_item_args, $this->get_line_items() );
240
+		return array_merge($line_item_args, $this->get_line_items());
241 241
 
242 242
     }
243 243
 
@@ -247,11 +247,11 @@  discard block
 block discarded – undo
247 247
 	 * @param  WPInv_Invoice $invoice Invoice object.
248 248
 	 * @return array
249 249
 	 */
250
-	protected function get_line_item_args_single_item( $invoice ) {
250
+	protected function get_line_item_args_single_item($invoice) {
251 251
 		$this->delete_line_items();
252 252
 
253
-        $item_name = sprintf( __( 'Invoice #%s', 'invoicing' ), $invoice->get_number() );
254
-		$this->add_line_item( $item_name, 1, wpinv_round_amount( (float) $invoice->get_total(), 2, true ), $invoice->get_id() );
253
+        $item_name = sprintf(__('Invoice #%s', 'invoicing'), $invoice->get_number());
254
+		$this->add_line_item($item_name, 1, wpinv_round_amount((float) $invoice->get_total(), 2, true), $invoice->get_id());
255 255
 
256 256
 		return $this->get_line_items();
257 257
     }
@@ -275,19 +275,19 @@  discard block
 block discarded – undo
275 275
 	 *
276 276
 	 * @param  WPInv_Invoice $invoice Invoice object.
277 277
 	 */
278
-	protected function prepare_line_items( $invoice ) {
278
+	protected function prepare_line_items($invoice) {
279 279
 		$this->delete_line_items();
280 280
 
281 281
 		// Items.
282
-		foreach ( $invoice->get_items() as $item ) {
282
+		foreach ($invoice->get_items() as $item) {
283 283
 			$amount   = $item->get_price();
284 284
 			$quantity = $invoice->get_template() == 'amount' ? 1 : $item->get_quantity();
285
-			$this->add_line_item( $item->get_raw_name(), $quantity, $amount, $item->get_id() );
285
+			$this->add_line_item($item->get_raw_name(), $quantity, $amount, $item->get_id());
286 286
         }
287 287
 
288 288
         // Fees.
289
-		foreach ( $invoice->get_fees() as $fee => $data ) {
290
-            $this->add_line_item( $fee, 1, wpinv_sanitize_amount( $data['initial_fee'] ) );
289
+		foreach ($invoice->get_fees() as $fee => $data) {
290
+            $this->add_line_item($fee, 1, wpinv_sanitize_amount($data['initial_fee']));
291 291
         }
292 292
 
293 293
     }
@@ -300,15 +300,15 @@  discard block
 block discarded – undo
300 300
 	 * @param  float  $amount Amount.
301 301
 	 * @param  string $item_number Item number.
302 302
 	 */
303
-	protected function add_line_item( $item_name, $quantity = 1, $amount = 0.0, $item_number = '' ) {
304
-		$index = ( count( $this->line_items ) / 4 ) + 1;
303
+	protected function add_line_item($item_name, $quantity = 1, $amount = 0.0, $item_number = '') {
304
+		$index = (count($this->line_items) / 4) + 1;
305 305
 
306 306
 		$item = apply_filters(
307 307
 			'getpaid_paypal_line_item',
308 308
 			array(
309
-				'item_name'   => html_entity_decode( getpaid_limit_length( $item_name ? wp_strip_all_tags( $item_name ) : __( 'Item', 'invoicing' ), 127 ), ENT_NOQUOTES, 'UTF-8' ),
309
+				'item_name'   => html_entity_decode(getpaid_limit_length($item_name ? wp_strip_all_tags($item_name) : __('Item', 'invoicing'), 127), ENT_NOQUOTES, 'UTF-8'),
310 310
 				'quantity'    => (float) $quantity,
311
-				'amount'      => wpinv_sanitize_amount( (float) $amount, 2 ),
311
+				'amount'      => wpinv_sanitize_amount((float) $amount, 2),
312 312
 				'item_number' => $item_number,
313 313
 			),
314 314
 			$item_name,
@@ -317,12 +317,12 @@  discard block
 block discarded – undo
317 317
 			$item_number
318 318
 		);
319 319
 
320
-		$this->line_items[ 'item_name_' . $index ]   = getpaid_limit_length( $item['item_name'], 127 );
321
-        $this->line_items[ 'quantity_' . $index ]    = $item['quantity'];
320
+		$this->line_items['item_name_' . $index] = getpaid_limit_length($item['item_name'], 127);
321
+        $this->line_items['quantity_' . $index] = $item['quantity'];
322 322
 
323 323
         // The price or amount of the product, service, or contribution, not including shipping, handling, or tax.
324
-		$this->line_items[ 'amount_' . $index ]      = $item['amount'] * $item['quantity'];
325
-		$this->line_items[ 'item_number_' . $index ] = getpaid_limit_length( $item['item_number'], 127 );
324
+		$this->line_items['amount_' . $index]      = $item['amount'] * $item['quantity'];
325
+		$this->line_items['item_number_' . $index] = getpaid_limit_length($item['item_number'], 127);
326 326
     }
327 327
 
328 328
     /**
@@ -334,19 +334,19 @@  discard block
 block discarded – undo
334 334
 	 * @param array    $paypal_args Arguments sent to Paypal in the request.
335 335
 	 * @return array
336 336
 	 */
337
-	protected function fix_request_length( $invoice, $paypal_args ) {
337
+	protected function fix_request_length($invoice, $paypal_args) {
338 338
 		$max_paypal_length = 2083;
339
-		$query_candidate   = http_build_query( $paypal_args, '', '&' );
339
+		$query_candidate   = http_build_query($paypal_args, '', '&');
340 340
 
341
-		if ( strlen( $this->endpoint . $query_candidate ) <= $max_paypal_length ) {
341
+		if (strlen($this->endpoint . $query_candidate) <= $max_paypal_length) {
342 342
 			return $paypal_args;
343 343
 		}
344 344
 
345 345
 		return apply_filters(
346 346
 			'getpaid_paypal_args',
347 347
 			array_merge(
348
-				$this->get_transaction_args( $invoice ),
349
-				$this->get_line_item_args( $invoice, true )
348
+				$this->get_transaction_args($invoice),
349
+				$this->get_line_item_args($invoice, true)
350 350
 			),
351 351
 			$invoice
352 352
 		);
@@ -359,10 +359,10 @@  discard block
 block discarded – undo
359 359
 	 * @param  array $paypal_args PayPal args.
360 360
 	 * @param  WPInv_Invoice    $invoice Invoice object.
361 361
 	 */
362
-	public function process_subscription( $paypal_args, $invoice ) {
362
+	public function process_subscription($paypal_args, $invoice) {
363 363
 
364 364
         // Make sure this is a subscription.
365
-        if ( ! $invoice->is_recurring() || ! $subscription = getpaid_get_invoice_subscription( $invoice ) ) {
365
+        if (!$invoice->is_recurring() || !$subscription = getpaid_get_invoice_subscription($invoice)) {
366 366
             return $paypal_args;
367 367
         }
368 368
 
@@ -370,17 +370,17 @@  discard block
 block discarded – undo
370 370
         $paypal_args['cmd'] = '_xclick-subscriptions';
371 371
 
372 372
         // Subscription name.
373
-        $paypal_args['item_name'] = sprintf( __( 'Invoice #%s', 'invoicing' ), $invoice->get_number() );
373
+        $paypal_args['item_name'] = sprintf(__('Invoice #%s', 'invoicing'), $invoice->get_number());
374 374
 
375 375
         // Get subscription args.
376
-        $period                 = strtoupper( substr( $subscription->get_period(), 0, 1) );
376
+        $period                 = strtoupper(substr($subscription->get_period(), 0, 1));
377 377
         $interval               = (int) $subscription->get_frequency();
378 378
         $bill_times             = (int) $subscription->get_bill_times();
379
-        $initial_amount         = (float) wpinv_sanitize_amount( $invoice->get_initial_total(), 2 );
380
-        $recurring_amount       = (float) wpinv_sanitize_amount( $invoice->get_recurring_total(), 2 );
381
-        $subscription_item      = $invoice->get_recurring( true );
379
+        $initial_amount         = (float) wpinv_sanitize_amount($invoice->get_initial_total(), 2);
380
+        $recurring_amount       = (float) wpinv_sanitize_amount($invoice->get_recurring_total(), 2);
381
+        $subscription_item      = $invoice->get_recurring(true);
382 382
 
383
-        if ( $subscription_item->has_free_trial() ) {
383
+        if ($subscription_item->has_free_trial()) {
384 384
 
385 385
             $paypal_args['a1'] = 0 == $initial_amount ? 0 : $initial_amount;
386 386
 
@@ -390,28 +390,28 @@  discard block
 block discarded – undo
390 390
 			// Trial period.
391 391
 			$paypal_args['t1'] = $subscription_item->get_trial_period();
392 392
 
393
-        } else if ( $initial_amount != $recurring_amount ) {
393
+        } else if ($initial_amount != $recurring_amount) {
394 394
 
395 395
             // No trial period, but initial amount includes a sign-up fee and/or other items, so charge it as a separate period.
396 396
 
397
-            if ( 1 == $bill_times ) {
397
+            if (1 == $bill_times) {
398 398
                 $param_number = 3;
399 399
             } else {
400 400
                 $param_number = 1;
401 401
             }
402 402
 
403
-            $paypal_args[ 'a' . $param_number ] = $initial_amount ? $initial_amount : 0;
403
+            $paypal_args['a' . $param_number] = $initial_amount ? $initial_amount : 0;
404 404
 
405 405
             // Sign Up interval
406
-            $paypal_args[ 'p' . $param_number ] = $interval;
406
+            $paypal_args['p' . $param_number] = $interval;
407 407
 
408 408
             // Sign Up unit of duration
409
-            $paypal_args[ 't' . $param_number ] = $period;
409
+            $paypal_args['t' . $param_number] = $period;
410 410
 
411 411
         }
412 412
 
413 413
         // We have a recurring payment
414
-		if ( ! isset( $param_number ) || 1 == $param_number ) {
414
+		if (!isset($param_number) || 1 == $param_number) {
415 415
 
416 416
 			// Subscription price
417 417
 			$paypal_args['a3'] = $recurring_amount;
@@ -425,7 +425,7 @@  discard block
 block discarded – undo
425 425
         }
426 426
 
427 427
         // Recurring payments
428
-		if ( 1 == $bill_times || ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() && 2 == $bill_times ) ) {
428
+		if (1 == $bill_times || ($initial_amount != $recurring_amount && !$subscription_item->has_free_trial() && 2 == $bill_times)) {
429 429
 
430 430
 			// Non-recurring payments
431 431
 			$paypal_args['src'] = 0;
@@ -434,15 +434,15 @@  discard block
 block discarded – undo
434 434
 
435 435
 			$paypal_args['src'] = 1;
436 436
 
437
-			if ( $bill_times > 0 ) {
437
+			if ($bill_times > 0) {
438 438
 
439 439
 				// An initial period is being used to charge a sign-up fee
440
-				if ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() ) {
440
+				if ($initial_amount != $recurring_amount && !$subscription_item->has_free_trial()) {
441 441
 					$bill_times--;
442 442
 				}
443 443
 
444 444
                 // Make sure it's not over the max of 52
445
-                $paypal_args['srt'] = ( $bill_times <= 52 ? absint( $bill_times ) : 52 );
445
+                $paypal_args['srt'] = ($bill_times <= 52 ? absint($bill_times) : 52);
446 446
 
447 447
 			}
448 448
         }
@@ -451,10 +451,10 @@  discard block
 block discarded – undo
451 451
         $paypal_args['rm'] = 2;
452 452
 
453 453
         // Get rid of redudant items.
454
-        foreach ( array( 'item_name_1', 'quantity_1', 'amount_1', 'item_number_1' ) as $arg ) {
454
+        foreach (array('item_name_1', 'quantity_1', 'amount_1', 'item_number_1') as $arg) {
455 455
 
456
-            if ( isset( $paypal_args[ $arg ] ) ) {
457
-                unset( $paypal_args[ $arg ] );
456
+            if (isset($paypal_args[$arg])) {
457
+                unset($paypal_args[$arg]);
458 458
             }
459 459
 
460 460
         }
@@ -473,7 +473,7 @@  discard block
 block discarded – undo
473 473
 	 * @return void
474 474
 	 */
475 475
 	public function verify_ipn() {
476
-        new GetPaid_Paypal_Gateway_IPN_Handler( $this );
476
+        new GetPaid_Paypal_Gateway_IPN_Handler($this);
477 477
     }
478 478
 
479 479
     /**
@@ -482,7 +482,7 @@  discard block
 block discarded – undo
482 482
     public function sandbox_notice() {
483 483
 
484 484
         return sprintf(
485
-			__( 'SANDBOX ENABLED. You can use sandbox testing accounts only. See the %sPayPal Sandbox Testing Guide%s for more details.', 'invoicing' ),
485
+			__('SANDBOX ENABLED. You can use sandbox testing accounts only. See the %sPayPal Sandbox Testing Guide%s for more details.', 'invoicing'),
486 486
 			'<a href="https://developer.paypal.com/docs/classic/lifecycle/ug_sandbox/">',
487 487
 			'</a>'
488 488
 		);
@@ -494,30 +494,30 @@  discard block
 block discarded – undo
494 494
 	 *
495 495
 	 * @param array $admin_settings
496 496
 	 */
497
-	public function admin_settings( $admin_settings ) {
497
+	public function admin_settings($admin_settings) {
498 498
 
499 499
         $currencies = sprintf(
500
-            __( 'Supported Currencies: %s', 'invoicing' ),
501
-            implode( ', ', $this->currencies )
500
+            __('Supported Currencies: %s', 'invoicing'),
501
+            implode(', ', $this->currencies)
502 502
         );
503 503
 
504 504
         $admin_settings['paypal_active']['desc'] .= " ($currencies)";
505
-        $admin_settings['paypal_desc']['std']     = __( 'Pay via PayPal: you can pay with your credit card if you don\'t have a PayPal account.', 'invoicing' );
505
+        $admin_settings['paypal_desc']['std']     = __('Pay via PayPal: you can pay with your credit card if you don\'t have a PayPal account.', 'invoicing');
506 506
 
507 507
 		// Access tokens.
508
-		$live_email      = wpinv_get_option( 'paypal_email' );
509
-		$sandbox_email   = wpinv_get_option( 'paypal_sandbox_email' );
508
+		$live_email      = wpinv_get_option('paypal_email');
509
+		$sandbox_email   = wpinv_get_option('paypal_sandbox_email');
510 510
 
511 511
 		$admin_settings['paypal_connect'] = array(
512 512
 			'type'       => 'raw_html',
513 513
 			'id'         => 'paypal_connect',
514
-			'name'       => __( 'Connect to PayPal', 'invoicing' ),
514
+			'name'       => __('Connect to PayPal', 'invoicing'),
515 515
 			'desc'       => sprintf(
516 516
 				'<div class="wpinv-paypal-connect-live"><a class="button button-primary" href="%s">%s</a></div><div class="wpinv-paypal-connect-sandbox"><a class="button button-primary" href="%s">%s</a></div>%s',
517
-				esc_url( self::get_connect_url( false ) ),
518
-				__( 'Connect to PayPal', 'invoicing' ),
519
-				esc_url( self::get_connect_url( true ) ),
520
-				__( 'Connect to PayPal Sandox', 'invoicing' ),
517
+				esc_url(self::get_connect_url(false)),
518
+				__('Connect to PayPal', 'invoicing'),
519
+				esc_url(self::get_connect_url(true)),
520
+				__('Connect to PayPal Sandox', 'invoicing'),
521 521
 				$this->get_js()
522 522
 			),
523 523
 		);
@@ -526,25 +526,25 @@  discard block
 block discarded – undo
526 526
             'type'  => 'text',
527 527
 			'class' => 'live-auth-data',
528 528
             'id'    => 'paypal_email',
529
-            'name'  => __( 'Live Email Address', 'invoicing' ),
530
-            'desc'  => __( 'The email address of your PayPal account.', 'invoicing' ),
529
+            'name'  => __('Live Email Address', 'invoicing'),
530
+            'desc'  => __('The email address of your PayPal account.', 'invoicing'),
531 531
         );
532 532
 
533 533
 		$admin_settings['paypal_sandbox_email'] = array(
534 534
             'type'  => 'text',
535 535
 			'class' => 'sandbox-auth-data',
536 536
             'id'    => 'paypal_sandbox_email',
537
-            'name'  => __( 'Sandbox Email Address', 'invoicing' ),
538
-            'desc'  => __( 'The email address of your sandbox PayPal account.', 'invoicing' ),
539
-			'std'   => wpinv_get_option( 'paypal_email', '' ),
537
+            'name'  => __('Sandbox Email Address', 'invoicing'),
538
+            'desc'  => __('The email address of your sandbox PayPal account.', 'invoicing'),
539
+			'std'   => wpinv_get_option('paypal_email', ''),
540 540
         );
541 541
 
542 542
         $admin_settings['paypal_ipn_url'] = array(
543 543
             'type'     => 'ipn_url',
544 544
             'id'       => 'paypal_ipn_url',
545
-            'name'     => __( 'IPN Url', 'invoicing' ),
545
+            'name'     => __('IPN Url', 'invoicing'),
546 546
             'std'      => $this->notify_url,
547
-            'desc'     => __( "If you've not enabled IPNs in your paypal account, use the above URL to enable them.", 'invoicing' ) . ' <a href="https://developer.paypal.com/docs/api-basics/notifications/ipn/"><em>' . __( 'Learn more.', 'invoicing' ) . '</em></a>',
547
+            'desc'     => __("If you've not enabled IPNs in your paypal account, use the above URL to enable them.", 'invoicing') . ' <a href="https://developer.paypal.com/docs/api-basics/notifications/ipn/"><em>' . __('Learn more.', 'invoicing') . '</em></a>',
548 548
             'readonly' => true,
549 549
         );
550 550
 
@@ -558,8 +558,8 @@  discard block
 block discarded – undo
558 558
      * @param array $data
559 559
      * @return string
560 560
 	 */
561
-	public static function maybe_get_connect_url( $url = '', $data ) {
562
-		return self::get_connect_url( false, urldecode( $data['redirect'] ) );
561
+	public static function maybe_get_connect_url($url = '', $data) {
562
+		return self::get_connect_url(false, urldecode($data['redirect']));
563 563
 	}
564 564
 
565 565
 	/**
@@ -570,25 +570,25 @@  discard block
 block discarded – undo
570 570
 	 * @param string $redirect
571 571
      * @return string
572 572
 	 */
573
-	public static function get_connect_url( $is_sandbox, $redirect = '' ) {
573
+	public static function get_connect_url($is_sandbox, $redirect = '') {
574 574
 
575 575
         $redirect_url = add_query_arg(
576 576
             array(
577 577
                 'getpaid-admin-action' => 'connect_paypal',
578 578
                 'page'                 => 'wpinv-settings',
579
-                'live_mode'            => (int) empty( $is_sandbox ),
579
+                'live_mode'            => (int) empty($is_sandbox),
580 580
                 'tab'                  => 'gateways',
581 581
                 'section'              => 'paypal',
582
-                'getpaid-nonce'        => wp_create_nonce( 'getpaid-nonce' ),
583
-				'redirect'             => urlencode( $redirect ),
582
+                'getpaid-nonce'        => wp_create_nonce('getpaid-nonce'),
583
+				'redirect'             => urlencode($redirect),
584 584
             ),
585
-            admin_url( 'admin.php' )
585
+            admin_url('admin.php')
586 586
         );
587 587
 
588 588
         return add_query_arg(
589 589
             array(
590
-                'live_mode'    => (int) empty( $is_sandbox ),
591
-                'redirect_url' => urlencode( str_replace( '&amp;', '&', $redirect_url ) )
590
+                'live_mode'    => (int) empty($is_sandbox),
591
+                'redirect_url' => urlencode(str_replace('&amp;', '&', $redirect_url))
592 592
             ),
593 593
             'https://ayecode.io/oauth/paypal'
594 594
         );
@@ -642,26 +642,26 @@  discard block
 block discarded – undo
642 642
 	 * @param array $data Connection data.
643 643
 	 * @return void
644 644
 	 */
645
-	public function connect_paypal( $data ) {
645
+	public function connect_paypal($data) {
646 646
 
647 647
 		$sandbox      = $this->is_sandbox();
648
-		$data         = wp_unslash( $data );
649
-		$access_token = empty( $data['access_token'] ) ? '' : sanitize_text_field( $data['access_token'] );
648
+		$data         = wp_unslash($data);
649
+		$access_token = empty($data['access_token']) ? '' : sanitize_text_field($data['access_token']);
650 650
 
651
-		if ( isset( $data['live_mode'] ) ) {
652
-			$sandbox = empty( $data['live_mode'] );
651
+		if (isset($data['live_mode'])) {
652
+			$sandbox = empty($data['live_mode']);
653 653
 		}
654 654
 
655
-		wpinv_update_option( 'paypal_sandbox', (int) $sandbox );
656
-		wpinv_update_option( 'paypal_active', 1 );
655
+		wpinv_update_option('paypal_sandbox', (int) $sandbox);
656
+		wpinv_update_option('paypal_active', 1);
657 657
 
658
-		if ( ! empty( $data['error_description'] ) ) {
659
-			getpaid_admin()->show_error( wp_kses_post( urldecode( $data['error_description'] ) ) );
658
+		if (!empty($data['error_description'])) {
659
+			getpaid_admin()->show_error(wp_kses_post(urldecode($data['error_description'])));
660 660
 		} else {
661 661
 
662 662
 			// Retrieve the user info.
663 663
 			$user_info = wp_remote_get(
664
-				! $sandbox ? 'https://api-m.paypal.com/v1/identity/oauth2/userinfo?schema=paypalv1.1' : 'https://api-m.sandbox.paypal.com/v1/identity/oauth2/userinfo?schema=paypalv1.1',
664
+				!$sandbox ? 'https://api-m.paypal.com/v1/identity/oauth2/userinfo?schema=paypalv1.1' : 'https://api-m.sandbox.paypal.com/v1/identity/oauth2/userinfo?schema=paypalv1.1',
665 665
 				array(
666 666
 
667 667
 					'headers' => array(
@@ -672,35 +672,35 @@  discard block
 block discarded – undo
672 672
 				)
673 673
 			);
674 674
 
675
-			if ( is_wp_error( $user_info ) ) {
676
-				getpaid_admin()->show_error( wp_kses_post( $user_info->get_error_message() ) );
675
+			if (is_wp_error($user_info)) {
676
+				getpaid_admin()->show_error(wp_kses_post($user_info->get_error_message()));
677 677
 			} else {
678 678
 
679 679
 				// Create application.
680
-				$user_info = json_decode( wp_remote_retrieve_body( $user_info ) );
680
+				$user_info = json_decode(wp_remote_retrieve_body($user_info));
681 681
 
682
-				if ( $sandbox ) {
683
-					wpinv_update_option( 'paypal_sandbox_email', sanitize_email( $user_info->emails[0]->value ) );
684
-					wpinv_update_option( 'paypal_sandbox_refresh_token', sanitize_text_field( urldecode( $data['refresh_token'] ) ) );
685
-					set_transient( 'getpaid_paypal_sandbox_access_token', sanitize_text_field( urldecode( $data['access_token'] ) ), (int) $data['expires_in'] );
686
-					getpaid_admin()->show_success( __( 'Successfully connected your PayPal sandbox account', 'invoicing' ) );
682
+				if ($sandbox) {
683
+					wpinv_update_option('paypal_sandbox_email', sanitize_email($user_info->emails[0]->value));
684
+					wpinv_update_option('paypal_sandbox_refresh_token', sanitize_text_field(urldecode($data['refresh_token'])));
685
+					set_transient('getpaid_paypal_sandbox_access_token', sanitize_text_field(urldecode($data['access_token'])), (int) $data['expires_in']);
686
+					getpaid_admin()->show_success(__('Successfully connected your PayPal sandbox account', 'invoicing'));
687 687
 				} else {
688
-					wpinv_update_option( 'paypal_email', sanitize_email( $user_info->emails[0]->value ) );
689
-					wpinv_update_option( 'paypal_refresh_token', sanitize_text_field( urldecode( $data['refresh_token'] ) ) );
690
-					set_transient( 'getpaid_paypal_access_token', sanitize_text_field( urldecode( $data['access_token'] ) ), (int) $data['expires_in'] );
691
-					getpaid_admin()->show_success( __( 'Successfully connected your PayPal account', 'invoicing' ) );
688
+					wpinv_update_option('paypal_email', sanitize_email($user_info->emails[0]->value));
689
+					wpinv_update_option('paypal_refresh_token', sanitize_text_field(urldecode($data['refresh_token'])));
690
+					set_transient('getpaid_paypal_access_token', sanitize_text_field(urldecode($data['access_token'])), (int) $data['expires_in']);
691
+					getpaid_admin()->show_success(__('Successfully connected your PayPal account', 'invoicing'));
692 692
 				}
693 693
 
694 694
 			}
695 695
 
696 696
 		}
697 697
 
698
-		$redirect = empty( $data['redirect'] ) ? admin_url( 'admin.php?page=wpinv-settings&tab=gateways&section=paypal' ) : urldecode( $data['redirect'] );
698
+		$redirect = empty($data['redirect']) ? admin_url('admin.php?page=wpinv-settings&tab=gateways&section=paypal') : urldecode($data['redirect']);
699 699
 
700
-		if ( isset( $data['step'] ) ) {
701
-			$redirect = add_query_arg( 'step', $data['step'], $redirect );
700
+		if (isset($data['step'])) {
701
+			$redirect = add_query_arg('step', $data['step'], $redirect);
702 702
 		}
703
-		wp_redirect( $redirect );
703
+		wp_redirect($redirect);
704 704
 		exit;
705 705
 	}
706 706
 
Please login to merge, or discard this patch.