Completed
Push — master ( 9041b7...12aea4 )
by Brian
18s queued 14s
created
includes/data/email-settings.php 1 patch
Spacing   +226 added lines, -226 removed lines patch added patch discarded remove patch
@@ -8,24 +8,24 @@  discard block
 block discarded – undo
8 8
  * @version 1.0.19
9 9
  */
10 10
 
11
-defined( 'ABSPATH' ) || exit;
11
+defined('ABSPATH') || exit;
12 12
 
13 13
 // Prepare the due date reminder options.
14 14
 $overdue_days_options       = array();
15
-$overdue_days_options['0']  = __( 'On the Due Date', 'invoicing' );
16
-$overdue_days_options['1']  = __( '1 day after Due Date', 'invoicing' );
15
+$overdue_days_options['0']  = __('On the Due Date', 'invoicing');
16
+$overdue_days_options['1']  = __('1 day after Due Date', 'invoicing');
17 17
 
18
-for ( $i = 2; $i <= 10; $i++ ) {
19
-    $overdue_days_options["$i"] = wp_sprintf( __( '%d days after Due Date', 'invoicing' ), $i );
18
+for ($i = 2; $i <= 10; $i++) {
19
+    $overdue_days_options["$i"] = wp_sprintf(__('%d days after Due Date', 'invoicing'), $i);
20 20
 }
21 21
 
22 22
 // Prepare up coming renewal reminder options.
23 23
 $renewal_days_options       = array();
24
-$renewal_days_options['0']  = __( 'On the renewal date', 'invoicing' );
25
-$renewal_days_options['1']  = __( '1 day before the renewal date', 'invoicing' );
24
+$renewal_days_options['0']  = __('On the renewal date', 'invoicing');
25
+$renewal_days_options['1']  = __('1 day before the renewal date', 'invoicing');
26 26
 
27
-for ( $i = 2; $i <= 10; $i++ ) {
28
-    $renewal_days_options["$i"]   = wp_sprintf( __( '%d days before the renewal date', 'invoicing' ), $i );
27
+for ($i = 2; $i <= 10; $i++) {
28
+    $renewal_days_options["$i"] = wp_sprintf(__('%d days before the renewal date', 'invoicing'), $i);
29 29
 }
30 30
 
31 31
 // Default, built-in gateways
@@ -34,45 +34,45 @@  discard block
 block discarded – undo
34 34
 
35 35
         'email_new_invoice_header' => array(
36 36
             'id'       => 'email_new_invoice_header',
37
-            'name'     => '<h3>' . __( 'New Invoice', 'invoicing' ) . '</h3>',
38
-            'desc'     => __( 'These emails are sent to the site admin whenever there is a new invoice.', 'invoicing' ),
37
+            'name'     => '<h3>' . __('New Invoice', 'invoicing') . '</h3>',
38
+            'desc'     => __('These emails are sent to the site admin whenever there is a new invoice.', 'invoicing'),
39 39
             'type'     => 'header',
40 40
         ),
41 41
 
42 42
         'email_new_invoice_active' => array(
43 43
             'id'       => 'email_new_invoice_active',
44
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
45
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
44
+            'name'     => __('Enable/Disable', 'invoicing'),
45
+            'desc'     => __('Enable this email notification', 'invoicing'),
46 46
             'type'     => 'checkbox',
47 47
             'std'      => 1
48 48
         ),
49 49
 
50 50
         'email_new_invoice_subject' => array(
51 51
             'id'       => 'email_new_invoice_subject',
52
-            'name'     => __( 'Subject', 'invoicing' ),
53
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
52
+            'name'     => __('Subject', 'invoicing'),
53
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
54 54
             'help-tip' => true,
55 55
             'type'     => 'text',
56
-            'std'      => __( '[{site_title}] New invoice ({invoice_number}) for {invoice_total} {invoice_currency}', 'invoicing' ),
56
+            'std'      => __('[{site_title}] New invoice ({invoice_number}) for {invoice_total} {invoice_currency}', 'invoicing'),
57 57
             'size'     => 'large'
58 58
         ),
59 59
 
60 60
         'email_new_invoice_heading' => array(
61 61
             'id'       => 'email_new_invoice_heading',
62
-            'name'     => __( 'Email Heading', 'invoicing' ),
63
-            'desc'     => __( 'Enter the main heading contained within the email notification for the invoice receipt email.', 'invoicing' ),
62
+            'name'     => __('Email Heading', 'invoicing'),
63
+            'desc'     => __('Enter the main heading contained within the email notification for the invoice receipt email.', 'invoicing'),
64 64
             'help-tip' => true,
65 65
             'type'     => 'text',
66
-            'std'      => __( 'New invoice', 'invoicing' ),
66
+            'std'      => __('New invoice', 'invoicing'),
67 67
             'size'     => 'large'
68 68
         ),
69 69
 
70 70
         'email_new_invoice_body' => array(
71 71
             'id'       => 'email_new_invoice_body',
72
-            'name'     => __( 'Email Content', 'invoicing' ),
72
+            'name'     => __('Email Content', 'invoicing'),
73 73
             'desc'     => wpinv_get_merge_tags_help_text(),
74 74
             'type'     => 'rich_editor',
75
-            'std'      => __( '<p>A new invoice <a href="{invoice_link}">({invoice_number})</a> to {name} for {invoice_total} {invoice_currency} has been created on your site.</p>', 'invoicing' ),
75
+            'std'      => __('<p>A new invoice <a href="{invoice_link}">({invoice_number})</a> to {name} for {invoice_total} {invoice_currency} has been created on your site.</p>', 'invoicing'),
76 76
             'class'    => 'large',
77 77
             'size'     => '10'
78 78
         ),
@@ -82,45 +82,45 @@  discard block
 block discarded – undo
82 82
 
83 83
         'email_cancelled_invoice_header' => array(
84 84
             'id'       => 'email_cancelled_invoice_header',
85
-            'name'     => '<h3>' . __( 'Cancelled Invoice', 'invoicing' ) . '</h3>',
86
-            'desc'     => __( 'These emails are sent to the site admin whenever invoices are cancelled.', 'invoicing' ),
85
+            'name'     => '<h3>' . __('Cancelled Invoice', 'invoicing') . '</h3>',
86
+            'desc'     => __('These emails are sent to the site admin whenever invoices are cancelled.', 'invoicing'),
87 87
             'type'     => 'header',
88 88
         ),
89 89
 
90 90
         'email_cancelled_invoice_active' => array(
91 91
             'id'       => 'email_cancelled_invoice_active',
92
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
93
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
92
+            'name'     => __('Enable/Disable', 'invoicing'),
93
+            'desc'     => __('Enable this email notification', 'invoicing'),
94 94
             'type'     => 'checkbox',
95 95
             'std'      => 1
96 96
         ),
97 97
 
98 98
         'email_cancelled_invoice_subject' => array(
99 99
             'id'       => 'email_cancelled_invoice_subject',
100
-            'name'     => __( 'Subject', 'invoicing' ),
101
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
100
+            'name'     => __('Subject', 'invoicing'),
101
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
102 102
             'help-tip' => true,
103 103
             'type'     => 'text',
104
-            'std'      => __( '[{site_title}] Cancelled invoice ({invoice_number})', 'invoicing' ),
104
+            'std'      => __('[{site_title}] Cancelled invoice ({invoice_number})', 'invoicing'),
105 105
             'size'     => 'large'
106 106
         ),
107 107
 
108 108
         'email_cancelled_invoice_heading' => array(
109 109
             'id'       => 'email_cancelled_invoice_heading',
110
-            'name'     => __( 'Email Heading', 'invoicing' ),
111
-            'desc'     => __( 'Enter the main heading contained within the email notification.', 'invoicing' ),
110
+            'name'     => __('Email Heading', 'invoicing'),
111
+            'desc'     => __('Enter the main heading contained within the email notification.', 'invoicing'),
112 112
             'help-tip' => true,
113 113
             'type'     => 'text',
114
-            'std'      => __( 'Cancelled Invoice', 'invoicing' ),
114
+            'std'      => __('Cancelled Invoice', 'invoicing'),
115 115
             'size'     => 'large'
116 116
         ),
117 117
 
118 118
         'email_cancelled_invoice_body' => array(
119 119
             'id'       => 'email_cancelled_invoice_body',
120
-            'name'     => __( 'Email Content', 'invoicing' ),
120
+            'name'     => __('Email Content', 'invoicing'),
121 121
             'desc'     => wpinv_get_merge_tags_help_text(),
122 122
             'type'     => 'rich_editor',
123
-            'std'      => __( '<p>The invoice <a href="{invoice_link}">#{invoice_number}</a> created for {name} on {site_title} has been cancelled.</p>', 'invoicing' ),
123
+            'std'      => __('<p>The invoice <a href="{invoice_link}">#{invoice_number}</a> created for {name} on {site_title} has been cancelled.</p>', 'invoicing'),
124 124
             'class'    => 'large',
125 125
             'size'     => '10'
126 126
         ),
@@ -131,45 +131,45 @@  discard block
 block discarded – undo
131 131
 
132 132
         'email_failed_invoice_header' => array(
133 133
             'id'       => 'email_failed_invoice_header',
134
-            'name'     => '<h3>' . __( 'Failed Invoice', 'invoicing' ) . '</h3>',
135
-            'desc'     => __( 'Failed invoice emails are sent to the site admin when invoice payments fail.', 'invoicing' ),
134
+            'name'     => '<h3>' . __('Failed Invoice', 'invoicing') . '</h3>',
135
+            'desc'     => __('Failed invoice emails are sent to the site admin when invoice payments fail.', 'invoicing'),
136 136
             'type'     => 'header',
137 137
         ),
138 138
 
139 139
         'email_failed_invoice_active' => array(
140 140
             'id'       => 'email_failed_invoice_active',
141
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
142
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
141
+            'name'     => __('Enable/Disable', 'invoicing'),
142
+            'desc'     => __('Enable this email notification', 'invoicing'),
143 143
             'type'     => 'checkbox',
144 144
             'std'      => 1
145 145
         ),
146 146
 
147 147
         'email_failed_invoice_subject' => array(
148 148
             'id'       => 'email_failed_invoice_subject',
149
-            'name'     => __( 'Subject', 'invoicing' ),
150
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
149
+            'name'     => __('Subject', 'invoicing'),
150
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
151 151
             'help-tip' => true,
152 152
             'type'     => 'text',
153
-            'std'      => __( '[{site_title}] Failed invoice ({invoice_number})', 'invoicing' ),
153
+            'std'      => __('[{site_title}] Failed invoice ({invoice_number})', 'invoicing'),
154 154
             'size'     => 'large'
155 155
         ),
156 156
 
157 157
         'email_failed_invoice_heading' => array(
158 158
             'id'       => 'email_failed_invoice_heading',
159
-            'name'     => __( 'Email Heading', 'invoicing' ),
160
-            'desc'     => __( 'Enter the main heading contained within the email notification.', 'invoicing' ),
159
+            'name'     => __('Email Heading', 'invoicing'),
160
+            'desc'     => __('Enter the main heading contained within the email notification.', 'invoicing'),
161 161
             'help-tip' => true,
162 162
             'type'     => 'text',
163
-            'std'      => __( 'Failed invoice', 'invoicing' ),
163
+            'std'      => __('Failed invoice', 'invoicing'),
164 164
             'size'     => 'large'
165 165
         ),
166 166
 
167 167
         'email_failed_invoice_body' => array(
168 168
             'id'       => 'email_failed_invoice_body',
169
-            'name'     => __( 'Email Content', 'invoicing' ),
169
+            'name'     => __('Email Content', 'invoicing'),
170 170
             'desc'     => wpinv_get_merge_tags_help_text(),
171 171
             'type'     => 'rich_editor',
172
-            'std'      => __( '<p>Payment for the invoice <a href="{invoice_link}">#{invoice_number}</a> on {site_title} has failed to go through.</p>', 'invoicing' ),
172
+            'std'      => __('<p>Payment for the invoice <a href="{invoice_link}">#{invoice_number}</a> on {site_title} has failed to go through.</p>', 'invoicing'),
173 173
             'class'    => 'large',
174 174
             'size'     => '10'
175 175
         ),
@@ -179,53 +179,53 @@  discard block
 block discarded – undo
179 179
 
180 180
         'email_onhold_invoice_header' => array(
181 181
             'id'       => 'email_onhold_invoice_header',
182
-            'name'     => '<h3>' . __( 'On Hold Invoice', 'invoicing' ) . '</h3>',
183
-            'desc'     => __( 'These emails are sent to customers whenever their invoices are held.', 'invoicing' ),
182
+            'name'     => '<h3>' . __('On Hold Invoice', 'invoicing') . '</h3>',
183
+            'desc'     => __('These emails are sent to customers whenever their invoices are held.', 'invoicing'),
184 184
             'type'     => 'header',
185 185
         ),
186 186
 
187 187
         'email_onhold_invoice_active' => array(
188 188
             'id'       => 'email_onhold_invoice_active',
189
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
190
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
189
+            'name'     => __('Enable/Disable', 'invoicing'),
190
+            'desc'     => __('Enable this email notification', 'invoicing'),
191 191
             'type'     => 'checkbox',
192 192
             'std'      => 1
193 193
         ),
194 194
 
195 195
         'email_onhold_invoice_admin_bcc' => array(
196 196
             'id'       => 'email_onhold_invoice_admin_bcc',
197
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
198
-            'desc'     => __( 'Check if you want to send this notification email to site Admin.', 'invoicing' ),
197
+            'name'     => __('Enable Admin BCC', 'invoicing'),
198
+            'desc'     => __('Check if you want to send this notification email to site Admin.', 'invoicing'),
199 199
             'type'     => 'checkbox',
200 200
             'std'      => 1
201 201
         ),
202 202
 
203 203
         'email_onhold_invoice_subject' => array(
204 204
             'id'       => 'email_onhold_invoice_subject',
205
-            'name'     => __( 'Subject', 'invoicing' ),
206
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
205
+            'name'     => __('Subject', 'invoicing'),
206
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
207 207
             'help-tip' => true,
208 208
             'type'     => 'text',
209
-            'std'      => __( '[{site_title}] Your invoice receipt from {invoice_date}', 'invoicing' ),
209
+            'std'      => __('[{site_title}] Your invoice receipt from {invoice_date}', 'invoicing'),
210 210
             'size'     => 'large'
211 211
         ),
212 212
 
213 213
         'email_onhold_invoice_heading' => array(
214 214
             'id'       => 'email_onhold_invoice_heading',
215
-            'name'     => __( 'Email Heading', 'invoicing' ),
216
-            'desc'     => __( 'Enter the main heading contained within the email notification.', 'invoicing' ),
215
+            'name'     => __('Email Heading', 'invoicing'),
216
+            'desc'     => __('Enter the main heading contained within the email notification.', 'invoicing'),
217 217
             'help-tip' => true,
218 218
             'type'     => 'text',
219
-            'std'      => __( 'Thank you for your invoice', 'invoicing' ),
219
+            'std'      => __('Thank you for your invoice', 'invoicing'),
220 220
             'size'     => 'large'
221 221
         ),
222 222
 
223 223
         'email_onhold_invoice_body' => array(
224 224
             'id'       => 'email_onhold_invoice_body',
225
-            'name'     => __( 'Email Content', 'invoicing' ),
225
+            'name'     => __('Email Content', 'invoicing'),
226 226
             'desc'     => wpinv_get_merge_tags_help_text(),
227 227
             'type'     => 'rich_editor',
228
-            'std'      => __( '<p>Hi {name},</p><p>Your invoice is on-hold and will be processed when we receive your payment.</p>', 'invoicing' ),
228
+            'std'      => __('<p>Hi {name},</p><p>Your invoice is on-hold and will be processed when we receive your payment.</p>', 'invoicing'),
229 229
             'class'    => 'large',
230 230
             'size'     => '10'
231 231
         ),
@@ -236,53 +236,53 @@  discard block
 block discarded – undo
236 236
 
237 237
         'email_processing_invoice_header' => array(
238 238
             'id'       => 'email_processing_invoice_header',
239
-            'name'     => '<h3>' . __( 'Processing Invoice', 'invoicing' ) . '</h3>',
240
-            'desc'     => __( 'These emails are sent to users whenever payments for their invoices are processing.', 'invoicing' ),
239
+            'name'     => '<h3>' . __('Processing Invoice', 'invoicing') . '</h3>',
240
+            'desc'     => __('These emails are sent to users whenever payments for their invoices are processing.', 'invoicing'),
241 241
             'type'     => 'header',
242 242
         ),
243 243
 
244 244
         'email_processing_invoice_active' => array(
245 245
             'id'       => 'email_processing_invoice_active',
246
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
247
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
246
+            'name'     => __('Enable/Disable', 'invoicing'),
247
+            'desc'     => __('Enable this email notification', 'invoicing'),
248 248
             'type'     => 'checkbox',
249 249
             'std'      => 1
250 250
         ),
251 251
 
252 252
         'email_processing_invoice_admin_bcc' => array(
253 253
             'id'       => 'email_processing_invoice_admin_bcc',
254
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
255
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
254
+            'name'     => __('Enable Admin BCC', 'invoicing'),
255
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
256 256
             'type'     => 'checkbox',
257 257
             'std'      => 1
258 258
         ),
259 259
 
260 260
         'email_processing_invoice_subject' => array(
261 261
             'id'       => 'email_processing_invoice_subject',
262
-            'name'     => __( 'Subject', 'invoicing' ),
263
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
262
+            'name'     => __('Subject', 'invoicing'),
263
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
264 264
             'help-tip' => true,
265 265
             'type'     => 'text',
266
-            'std'      => __( '[{site_title}] Your invoice receipt from {invoice_date}', 'invoicing' ),
266
+            'std'      => __('[{site_title}] Your invoice receipt from {invoice_date}', 'invoicing'),
267 267
             'size'     => 'large'
268 268
         ),
269 269
 
270 270
         'email_processing_invoice_heading' => array(
271 271
             'id'       => 'email_processing_invoice_heading',
272
-            'name'     => __( 'Email Heading', 'invoicing' ),
273
-            'desc'     => __( 'Enter the main heading contained within the email notification for the invoice receipt email.', 'invoicing' ),
272
+            'name'     => __('Email Heading', 'invoicing'),
273
+            'desc'     => __('Enter the main heading contained within the email notification for the invoice receipt email.', 'invoicing'),
274 274
             'help-tip' => true,
275 275
             'type'     => 'text',
276
-            'std'      => __( 'Thank you for your invoice', 'invoicing' ),
276
+            'std'      => __('Thank you for your invoice', 'invoicing'),
277 277
             'size'     => 'large'
278 278
         ),
279 279
 
280 280
         'email_processing_invoice_body' => array(
281 281
             'id'       => 'email_processing_invoice_body',
282
-            'name'     => __( 'Email Content', 'invoicing' ),
282
+            'name'     => __('Email Content', 'invoicing'),
283 283
             'desc'     => wpinv_get_merge_tags_help_text(),
284 284
             'type'     => 'rich_editor',
285
-            'std'      => __( '<p>Hi {name},</p><p>I would like to let you know that we have received and are currently processing your payment for the invoice <a href="{invoice_link}">#{invoice_number}</a> on {site_title}.</p>', 'invoicing' ),
285
+            'std'      => __('<p>Hi {name},</p><p>I would like to let you know that we have received and are currently processing your payment for the invoice <a href="{invoice_link}">#{invoice_number}</a> on {site_title}.</p>', 'invoicing'),
286 286
             'class'    => 'large',
287 287
             'size'     => '10'
288 288
         ),
@@ -293,61 +293,61 @@  discard block
 block discarded – undo
293 293
 
294 294
         'email_completed_invoice_header' => array(
295 295
             'id'       => 'email_completed_invoice_header',
296
-            'name'     => '<h3>' . __( 'Paid Invoice', 'invoicing' ) . '</h3>',
297
-            'desc'     => __( 'These emails are sent to customers when their invoices are marked as paid.', 'invoicing' ),
296
+            'name'     => '<h3>' . __('Paid Invoice', 'invoicing') . '</h3>',
297
+            'desc'     => __('These emails are sent to customers when their invoices are marked as paid.', 'invoicing'),
298 298
             'type'     => 'header',
299 299
         ),
300 300
 
301 301
         'email_completed_invoice_active' => array(
302 302
             'id'       => 'email_completed_invoice_active',
303
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
304
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
303
+            'name'     => __('Enable/Disable', 'invoicing'),
304
+            'desc'     => __('Enable this email notification', 'invoicing'),
305 305
             'type'     => 'checkbox',
306 306
             'std'      => 1
307 307
         ),
308 308
 
309 309
         'email_completed_invoice_renewal_active' => array(
310 310
             'id'       => 'email_completed_invoice_renewal_active',
311
-            'name'     => __( 'Enable renewal notification', 'invoicing' ),
312
-            'desc'     => __( 'Should this email be sent for renewals too?', 'invoicing' ),
311
+            'name'     => __('Enable renewal notification', 'invoicing'),
312
+            'desc'     => __('Should this email be sent for renewals too?', 'invoicing'),
313 313
             'type'     => 'checkbox',
314 314
             'std'      => 1
315 315
         ),
316 316
 
317 317
         'email_completed_invoice_admin_bcc' => array(
318 318
             'id'       => 'email_completed_invoice_admin_bcc',
319
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
320
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
319
+            'name'     => __('Enable Admin BCC', 'invoicing'),
320
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
321 321
             'type'     => 'checkbox',
322 322
             'std'      => 1,
323 323
         ),
324 324
 
325 325
         'email_completed_invoice_subject' => array(
326 326
             'id'       => 'email_completed_invoice_subject',
327
-            'name'     => __( 'Subject', 'invoicing' ),
328
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
327
+            'name'     => __('Subject', 'invoicing'),
328
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
329 329
             'help-tip' => true,
330 330
             'type'     => 'text',
331
-            'std'      => __( '[{site_title}] Your invoice from {invoice_date} has been paid', 'invoicing' ),
331
+            'std'      => __('[{site_title}] Your invoice from {invoice_date} has been paid', 'invoicing'),
332 332
             'size'     => 'large'
333 333
         ),
334 334
 
335 335
         'email_completed_invoice_heading' => array(
336 336
             'id'       => 'email_completed_invoice_heading',
337
-            'name'     => __( 'Email Heading', 'invoicing' ),
338
-            'desc'     => __( 'Enter the main heading contained within the email notification for the invoice receipt email.', 'invoicing' ),
337
+            'name'     => __('Email Heading', 'invoicing'),
338
+            'desc'     => __('Enter the main heading contained within the email notification for the invoice receipt email.', 'invoicing'),
339 339
             'help-tip' => true,
340 340
             'type'     => 'text',
341
-            'std'      => __( 'Your invoice has been paid', 'invoicing' ),
341
+            'std'      => __('Your invoice has been paid', 'invoicing'),
342 342
             'size'     => 'large'
343 343
         ),
344 344
 
345 345
         'email_completed_invoice_body' => array(
346 346
             'id'       => 'email_completed_invoice_body',
347
-            'name'     => __( 'Email Content', 'invoicing' ),
347
+            'name'     => __('Email Content', 'invoicing'),
348 348
             'desc'     => wpinv_get_merge_tags_help_text(),
349 349
             'type'     => 'rich_editor',
350
-            'std'      => __( '<p>Hi {name},</p><p>Your recent invoice on {site_title} has been paid.</p>', 'invoicing' ),
350
+            'std'      => __('<p>Hi {name},</p><p>Your recent invoice on {site_title} has been paid.</p>', 'invoicing'),
351 351
             'class'    => 'large',
352 352
             'size'     => '10'
353 353
         ),
@@ -358,53 +358,53 @@  discard block
 block discarded – undo
358 358
 
359 359
         'email_refunded_invoice_header' => array(
360 360
             'id'       => 'email_refunded_invoice_header',
361
-            'name'     => '<h3>' . __( 'Refunded Invoice', 'invoicing' ) . '</h3>',
362
-            'desc'     => __( 'These emails are sent to users when their invoices are marked as refunded.', 'invoicing' ),
361
+            'name'     => '<h3>' . __('Refunded Invoice', 'invoicing') . '</h3>',
362
+            'desc'     => __('These emails are sent to users when their invoices are marked as refunded.', 'invoicing'),
363 363
             'type'     => 'header',
364 364
         ),
365 365
 
366 366
         'email_refunded_invoice_active' => array(
367 367
             'id'       => 'email_refunded_invoice_active',
368
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
369
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
368
+            'name'     => __('Enable/Disable', 'invoicing'),
369
+            'desc'     => __('Enable this email notification', 'invoicing'),
370 370
             'type'     => 'checkbox',
371 371
             'std'      => 1
372 372
         ),
373 373
 
374 374
         'email_refunded_invoice_admin_bcc' => array(
375 375
             'id'       => 'email_refunded_invoice_admin_bcc',
376
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
377
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
376
+            'name'     => __('Enable Admin BCC', 'invoicing'),
377
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
378 378
             'type'     => 'checkbox',
379 379
             'std'      => 1
380 380
         ),
381 381
 
382 382
         'email_refunded_invoice_subject' => array(
383 383
             'id'       => 'email_refunded_invoice_subject',
384
-            'name'     => __( 'Subject', 'invoicing' ),
385
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
384
+            'name'     => __('Subject', 'invoicing'),
385
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
386 386
             'help-tip' => true,
387 387
             'type'     => 'text',
388
-            'std'      => __( '[{site_title}] Your invoice from {invoice_date} has been refunded', 'invoicing' ),
388
+            'std'      => __('[{site_title}] Your invoice from {invoice_date} has been refunded', 'invoicing'),
389 389
             'size'     => 'large'
390 390
         ),
391 391
 
392 392
         'email_refunded_invoice_heading' => array(
393 393
             'id'       => 'email_refunded_invoice_heading',
394
-            'name'     => __( 'Email Heading', 'invoicing' ),
395
-            'desc'     => __( 'Enter the main heading contained within the email notification.', 'invoicing' ),
394
+            'name'     => __('Email Heading', 'invoicing'),
395
+            'desc'     => __('Enter the main heading contained within the email notification.', 'invoicing'),
396 396
             'help-tip' => true,
397 397
             'type'     => 'text',
398
-            'std'      => __( 'Your invoice has been refunded', 'invoicing' ),
398
+            'std'      => __('Your invoice has been refunded', 'invoicing'),
399 399
             'size'     => 'large'
400 400
         ),
401 401
 
402 402
         'email_refunded_invoice_body' => array(
403 403
             'id'       => 'email_refunded_invoice_body',
404
-            'name'     => __( 'Email Content', 'invoicing' ),
404
+            'name'     => __('Email Content', 'invoicing'),
405 405
             'desc'     => wpinv_get_merge_tags_help_text(),
406 406
             'type'     => 'rich_editor',
407
-            'std'      => __( '<p>Hi {name},</p><p>Your invoice on {site_title} has been refunded.</p>', 'invoicing' ),
407
+            'std'      => __('<p>Hi {name},</p><p>Your invoice on {site_title} has been refunded.</p>', 'invoicing'),
408 408
             'class'    => 'large',
409 409
             'size'     => '10'
410 410
         ),
@@ -415,53 +415,53 @@  discard block
 block discarded – undo
415 415
 
416 416
         'email_user_invoice_header' => array(
417 417
             'id'       => 'email_user_invoice_header',
418
-            'name'     => '<h3>' . __( 'Customer Invoice', 'invoicing' ) . '</h3>',
419
-            'desc'     => __( 'These emails are sent to customers containing their invoice information and payment links.', 'invoicing' ),
418
+            'name'     => '<h3>' . __('Customer Invoice', 'invoicing') . '</h3>',
419
+            'desc'     => __('These emails are sent to customers containing their invoice information and payment links.', 'invoicing'),
420 420
             'type'     => 'header',
421 421
         ),
422 422
 
423 423
         'email_user_invoice_active' => array(
424 424
             'id'       => 'email_user_invoice_active',
425
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
426
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
425
+            'name'     => __('Enable/Disable', 'invoicing'),
426
+            'desc'     => __('Enable this email notification', 'invoicing'),
427 427
             'type'     => 'checkbox',
428 428
             'std'      => 1
429 429
         ),
430 430
 
431 431
         'email_user_invoice_admin_bcc' => array(
432 432
             'id'       => 'email_user_invoice_admin_bcc',
433
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
434
-            'desc'     => __( 'Check if you want to send a copy of this notification email to to the site admin.', 'invoicing' ),
433
+            'name'     => __('Enable Admin BCC', 'invoicing'),
434
+            'desc'     => __('Check if you want to send a copy of this notification email to to the site admin.', 'invoicing'),
435 435
             'type'     => 'checkbox',
436 436
             'std'      => 0
437 437
         ),
438 438
 
439 439
         'email_user_invoice_subject' => array(
440 440
             'id'       => 'email_user_invoice_subject',
441
-            'name'     => __( 'Subject', 'invoicing' ),
442
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
441
+            'name'     => __('Subject', 'invoicing'),
442
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
443 443
             'help-tip' => true,
444 444
             'type'     => 'text',
445
-            'std'      => __( '[{site_title}] Your invoice from {invoice_date}', 'invoicing' ),
445
+            'std'      => __('[{site_title}] Your invoice from {invoice_date}', 'invoicing'),
446 446
             'size'     => 'large'
447 447
         ),
448 448
 
449 449
         'email_user_invoice_heading' => array(
450 450
             'id'       => 'email_user_invoice_heading',
451
-            'name'     => __( 'Email Heading', 'invoicing' ),
452
-            'desc'     => __( 'Enter the main heading contained within the email notification for the invoice receipt email.', 'invoicing' ),
451
+            'name'     => __('Email Heading', 'invoicing'),
452
+            'desc'     => __('Enter the main heading contained within the email notification for the invoice receipt email.', 'invoicing'),
453 453
             'help-tip' => true,
454 454
             'type'     => 'text',
455
-            'std'      => __( 'Your invoice {invoice_number} details', 'invoicing' ),
455
+            'std'      => __('Your invoice {invoice_number} details', 'invoicing'),
456 456
             'size'     => 'large'
457 457
         ),
458 458
 
459 459
         'email_user_invoice_body' => array(
460 460
             'id'       => 'email_user_invoice_body',
461
-            'name'     => __( 'Email Content', 'invoicing' ),
461
+            'name'     => __('Email Content', 'invoicing'),
462 462
             'desc'     => wpinv_get_merge_tags_help_text(),
463 463
             'type'     => 'rich_editor',
464
-            'std'      => __( '<p>Hi {name},</p><p>An invoice of {invoice_total} has been created for you on {site_title}. You can <a href="{invoice_link}">view</a> or <a href="{invoice_pay_link}">pay</a> the invoice. Please reply to this email if you have any questions about the invoice.', 'invoicing' ),
464
+            'std'      => __('<p>Hi {name},</p><p>An invoice of {invoice_total} has been created for you on {site_title}. You can <a href="{invoice_link}">view</a> or <a href="{invoice_pay_link}">pay</a> the invoice. Please reply to this email if you have any questions about the invoice.', 'invoicing'),
465 465
             'class'    => 'large',
466 466
             'size'     => '10'
467 467
         ),
@@ -471,53 +471,53 @@  discard block
 block discarded – undo
471 471
 
472 472
         'email_user_note_header' => array(
473 473
             'id'       => 'email_user_note_header',
474
-            'name'     => '<h3>' . __( 'Customer Note', 'invoicing' ) . '</h3>',
475
-            'desc'     => __( 'These emails are sent when you add a customer note to an invoice/quote.', 'invoicing' ),
474
+            'name'     => '<h3>' . __('Customer Note', 'invoicing') . '</h3>',
475
+            'desc'     => __('These emails are sent when you add a customer note to an invoice/quote.', 'invoicing'),
476 476
             'type'     => 'header',
477 477
         ),
478 478
 
479 479
         'email_user_note_active' => array(
480 480
             'id'       => 'email_user_note_active',
481
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
482
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
481
+            'name'     => __('Enable/Disable', 'invoicing'),
482
+            'desc'     => __('Enable this email notification', 'invoicing'),
483 483
             'type'     => 'checkbox',
484 484
             'std'      => 1
485 485
         ),
486 486
 
487 487
         'email_user_note_admin_bcc' => array(
488 488
             'id'       => 'email_user_note_admin_bcc',
489
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
490
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
489
+            'name'     => __('Enable Admin BCC', 'invoicing'),
490
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
491 491
             'type'     => 'checkbox',
492 492
             'std'      => 0
493 493
         ),
494 494
 
495 495
         'email_user_note_subject' => array(
496 496
             'id'       => 'email_user_note_subject',
497
-            'name'     => __( 'Subject', 'invoicing' ),
498
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
497
+            'name'     => __('Subject', 'invoicing'),
498
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
499 499
             'help-tip' => true,
500 500
             'type'     => 'text',
501
-            'std'      => __( '[{site_title}] Note added to your {invoice_label} #{invoice_number} from {invoice_date}', 'invoicing' ),
501
+            'std'      => __('[{site_title}] Note added to your {invoice_label} #{invoice_number} from {invoice_date}', 'invoicing'),
502 502
             'size'     => 'large'
503 503
         ),
504 504
 
505 505
         'email_user_note_heading' => array(
506 506
             'id'       => 'email_user_note_heading',
507
-            'name'     => __( 'Email Heading', 'invoicing' ),
508
-            'desc'     => __( 'Enter the main heading contained within the email notification.', 'invoicing' ),
507
+            'name'     => __('Email Heading', 'invoicing'),
508
+            'desc'     => __('Enter the main heading contained within the email notification.', 'invoicing'),
509 509
             'help-tip' => true,
510 510
             'type'     => 'text',
511
-            'std'      => __( 'A note has been added to your {invoice_label}', 'invoicing' ),
511
+            'std'      => __('A note has been added to your {invoice_label}', 'invoicing'),
512 512
             'size'     => 'large'
513 513
         ),
514 514
 
515 515
         'email_user_note_body' => array(
516 516
             'id'       => 'email_user_note_body',
517
-            'name'     => __( 'Email Content', 'invoicing' ),
517
+            'name'     => __('Email Content', 'invoicing'),
518 518
             'desc'     => wpinv_get_merge_tags_help_text(),
519 519
             'type'     => 'rich_editor',
520
-            'std'      => __( '<p>Hi {name},</p><p>Following note has been added to your {invoice_label}:</p><blockquote class="wpinv-note">{customer_note}</blockquote>', 'invoicing' ),
520
+            'std'      => __('<p>Hi {name},</p><p>Following note has been added to your {invoice_label}:</p><blockquote class="wpinv-note">{customer_note}</blockquote>', 'invoicing'),
521 521
             'class'    => 'large',
522 522
             'size'     => '10'
523 523
         ),
@@ -528,63 +528,63 @@  discard block
 block discarded – undo
528 528
 
529 529
         'email_overdue_header' => array(
530 530
             'id'       => 'email_overdue_header',
531
-            'name'     => '<h3>' . __( 'Payment Reminder', 'invoicing' ) . '</h3>',
532
-            'desc'     => __( 'Payment reminder emails are sent to customers whenever their invoices are due.', 'invoicing' ),
531
+            'name'     => '<h3>' . __('Payment Reminder', 'invoicing') . '</h3>',
532
+            'desc'     => __('Payment reminder emails are sent to customers whenever their invoices are due.', 'invoicing'),
533 533
             'type'     => 'header',
534 534
         ),
535 535
 
536 536
         'email_overdue_active' => array(
537 537
             'id'       => 'email_overdue_active',
538
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
539
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
538
+            'name'     => __('Enable/Disable', 'invoicing'),
539
+            'desc'     => __('Enable this email notification', 'invoicing'),
540 540
             'type'     => 'checkbox',
541 541
             'std'      => 1
542 542
         ),
543 543
 
544 544
         'email_overdue_admin_bcc' => array(
545 545
             'id'       => 'email_overdue_admin_bcc',
546
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
547
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
546
+            'name'     => __('Enable Admin BCC', 'invoicing'),
547
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
548 548
             'type'     => 'checkbox',
549 549
             'std'      => 0
550 550
         ),
551 551
 
552 552
         'email_overdue_days' => array(
553 553
             'id'       => 'email_overdue_days',
554
-            'name'     => __( 'When to Send', 'invoicing' ),
555
-            'desc'     => __( 'Check when you would like payment reminders sent out.', 'invoicing' ),
554
+            'name'     => __('When to Send', 'invoicing'),
555
+            'desc'     => __('Check when you would like payment reminders sent out.', 'invoicing'),
556 556
             'help-tip' => true,
557
-            'std'      => array( '1' ),
557
+            'std'      => array('1'),
558 558
             'type'     => 'multicheck',
559 559
             'options'  => $overdue_days_options,
560 560
         ),
561 561
 
562 562
         'email_overdue_subject' => array(
563 563
             'id'       => 'email_overdue_subject',
564
-            'name'     => __( 'Subject', 'invoicing' ),
565
-            'desc'     => __( 'Enter the subject line for the invoice receipt email.', 'invoicing' ),
564
+            'name'     => __('Subject', 'invoicing'),
565
+            'desc'     => __('Enter the subject line for the invoice receipt email.', 'invoicing'),
566 566
             'help-tip' => true,
567 567
             'type'     => 'text',
568
-            'std'      => __( '[{site_title}] Payment Reminder', 'invoicing' ),
568
+            'std'      => __('[{site_title}] Payment Reminder', 'invoicing'),
569 569
             'size'     => 'large'
570 570
         ),
571 571
 
572 572
         'email_overdue_heading' => array(
573 573
             'id'       => 'email_overdue_heading',
574
-            'name'     => __( 'Email Heading', 'invoicing' ),
575
-            'desc'     => __( 'Enter the main heading contained within the email notification.', 'invoicing' ),
574
+            'name'     => __('Email Heading', 'invoicing'),
575
+            'desc'     => __('Enter the main heading contained within the email notification.', 'invoicing'),
576 576
             'help-tip' => true,
577 577
             'type'     => 'text',
578
-            'std'      => __( 'Payment reminder for your invoice', 'invoicing' ),
578
+            'std'      => __('Payment reminder for your invoice', 'invoicing'),
579 579
             'size'     => 'large'
580 580
         ),
581 581
 
582 582
         'email_overdue_body' => array(
583 583
             'id'       => 'email_overdue_body',
584
-            'name'     => __( 'Email Content', 'invoicing' ),
584
+            'name'     => __('Email Content', 'invoicing'),
585 585
             'desc'     => wpinv_get_merge_tags_help_text(),
586 586
             'type'     => 'rich_editor',
587
-            'std'      => __( '<p>Hi {full_name},</p><p>This is just a friendly reminder that your invoice <a href="{invoice_link}">#{invoice_number}</a> {is_was} due on {invoice_due_date}.</p><p>The total of this invoice is {invoice_total}</p><p>To view / pay now for this invoice please use the following link: <a class="btn btn-success" href="{invoice_link}">View / Pay</a></p>', 'invoicing' ),
587
+            'std'      => __('<p>Hi {full_name},</p><p>This is just a friendly reminder that your invoice <a href="{invoice_link}">#{invoice_number}</a> {is_was} due on {invoice_due_date}.</p><p>The total of this invoice is {invoice_total}</p><p>To view / pay now for this invoice please use the following link: <a class="btn btn-success" href="{invoice_link}">View / Pay</a></p>', 'invoicing'),
588 588
             'class'    => 'large',
589 589
             'size'     => 10,
590 590
         ),
@@ -595,63 +595,63 @@  discard block
 block discarded – undo
595 595
 
596 596
         'email_renewal_reminder_header' => array(
597 597
             'id'       => 'email_renewal_reminder_header',
598
-            'name'     => '<h3>' . __( 'Renewal Reminder', 'invoicing' ) . '</h3>',
599
-            'desc'     => __( 'These emails are sent to customers whenever their subscription is about to expire.', 'invoicing' ),
598
+            'name'     => '<h3>' . __('Renewal Reminder', 'invoicing') . '</h3>',
599
+            'desc'     => __('These emails are sent to customers whenever their subscription is about to expire.', 'invoicing'),
600 600
             'type'     => 'header',
601 601
         ),
602 602
 
603 603
         'email_renewal_reminder_active' => array(
604 604
             'id'       => 'email_renewal_reminder_active',
605
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
606
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
605
+            'name'     => __('Enable/Disable', 'invoicing'),
606
+            'desc'     => __('Enable this email notification', 'invoicing'),
607 607
             'type'     => 'checkbox',
608 608
             'std'      => 0
609 609
         ),
610 610
 
611 611
         'email_renewal_reminder_admin_bcc' => array(
612 612
             'id'       => 'email_renewal_reminder_admin_bcc',
613
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
614
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
613
+            'name'     => __('Enable Admin BCC', 'invoicing'),
614
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
615 615
             'type'     => 'checkbox',
616 616
             'std'      => 0
617 617
         ),
618 618
 
619 619
         'email_renewal_reminder_days' => array(
620 620
             'id'       => 'email_renewal_reminder_days',
621
-            'name'     => __( 'When to Send', 'invoicing' ),
622
-            'desc'     => __( 'Check when you would like renewal reminders sent out.', 'invoicing' ),
621
+            'name'     => __('When to Send', 'invoicing'),
622
+            'desc'     => __('Check when you would like renewal reminders sent out.', 'invoicing'),
623 623
             'help-tip' => true,
624
-            'std'      => array( '1', '5', '10' ),
624
+            'std'      => array('1', '5', '10'),
625 625
             'type'     => 'multicheck',
626 626
             'options'  => $renewal_days_options,
627 627
         ),
628 628
 
629 629
         'email_renewal_reminder_subject' => array(
630 630
             'id'       => 'email_renewal_reminder_subject',
631
-            'name'     => __( 'Subject', 'invoicing' ),
632
-            'desc'     => __( 'Enter the subject line for the email.', 'invoicing' ),
631
+            'name'     => __('Subject', 'invoicing'),
632
+            'desc'     => __('Enter the subject line for the email.', 'invoicing'),
633 633
             'help-tip' => true,
634 634
             'type'     => 'text',
635
-            'std'      => __( '[{site_title}] Renewal Reminder', 'invoicing' ),
635
+            'std'      => __('[{site_title}] Renewal Reminder', 'invoicing'),
636 636
             'size'     => 'large'
637 637
         ),
638 638
 
639 639
         'email_renewal_reminder_heading' => array(
640 640
             'id'       => 'email_renewal_reminder_heading',
641
-            'name'     => __( 'Email Heading', 'invoicing' ),
642
-            'desc'     => __( 'Enter the main heading contained within the email notification.', 'invoicing' ),
641
+            'name'     => __('Email Heading', 'invoicing'),
642
+            'desc'     => __('Enter the main heading contained within the email notification.', 'invoicing'),
643 643
             'help-tip' => true,
644 644
             'type'     => 'text',
645
-            'std'      => __( 'Upcoming renewal reminder', 'invoicing' ),
645
+            'std'      => __('Upcoming renewal reminder', 'invoicing'),
646 646
             'size'     => 'large'
647 647
         ),
648 648
 
649 649
         'email_renewal_reminder_body' => array(
650 650
             'id'       => 'email_renewal_reminder_body',
651
-            'name'     => __( 'Email Content', 'invoicing' ),
652
-            'desc'     => wpinv_get_merge_tags_help_text( true ),
651
+            'name'     => __('Email Content', 'invoicing'),
652
+            'desc'     => wpinv_get_merge_tags_help_text(true),
653 653
             'type'     => 'rich_editor',
654
-            'std'      => __( '<p>Hi {full_name},</p><p>This is just a friendly reminder that your subscription for invoice <a href="{invoice_link}">#{invoice_number}</a> will renew on {subscription_renewal_date}.</p>', 'invoicing' ),
654
+            'std'      => __('<p>Hi {full_name},</p><p>This is just a friendly reminder that your subscription for invoice <a href="{invoice_link}">#{invoice_number}</a> will renew on {subscription_renewal_date}.</p>', 'invoicing'),
655 655
             'class'    => 'large',
656 656
             'size'     => 10,
657 657
         ),
@@ -662,53 +662,53 @@  discard block
 block discarded – undo
662 662
 
663 663
         'email_subscription_trial_header' => array(
664 664
             'id'       => 'email_subscription_trial_header',
665
-            'name'     => '<h3>' . __( 'Trial Started', 'invoicing' ) . '</h3>',
666
-            'desc'     => __( 'These emails are sent when a customer starts a subscription trial.', 'invoicing' ),
665
+            'name'     => '<h3>' . __('Trial Started', 'invoicing') . '</h3>',
666
+            'desc'     => __('These emails are sent when a customer starts a subscription trial.', 'invoicing'),
667 667
             'type'     => 'header',
668 668
         ),
669 669
 
670 670
         'email_subscription_trial_active' => array(
671 671
             'id'       => 'email_subscription_trial_active',
672
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
673
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
672
+            'name'     => __('Enable/Disable', 'invoicing'),
673
+            'desc'     => __('Enable this email notification', 'invoicing'),
674 674
             'type'     => 'checkbox',
675 675
             'std'      => 0
676 676
         ),
677 677
 
678 678
         'email_subscription_trial_admin_bcc' => array(
679 679
             'id'       => 'email_subscription_trial_admin_bcc',
680
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
681
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
680
+            'name'     => __('Enable Admin BCC', 'invoicing'),
681
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
682 682
             'type'     => 'checkbox',
683 683
             'std'      => 0
684 684
         ),
685 685
 
686 686
         'email_subscription_trial_subject' => array(
687 687
             'id'       => 'email_subscription_trial_subject',
688
-            'name'     => __( 'Subject', 'invoicing' ),
689
-            'desc'     => __( 'Enter the subject line for the subscription trial email.', 'invoicing' ),
688
+            'name'     => __('Subject', 'invoicing'),
689
+            'desc'     => __('Enter the subject line for the subscription trial email.', 'invoicing'),
690 690
             'help-tip' => true,
691 691
             'type'     => 'text',
692
-            'std'      => __( '[{site_title}] Trial Started', 'invoicing' ),
692
+            'std'      => __('[{site_title}] Trial Started', 'invoicing'),
693 693
             'size'     => 'large'
694 694
         ),
695 695
 
696 696
         'email_subscription_trial_heading' => array(
697 697
             'id'       => 'email_subscription_trial_heading',
698
-            'name'     => __( 'Email Heading', 'invoicing' ),
699
-            'desc'     => __( 'Enter the main heading of this email.', 'invoicing' ),
698
+            'name'     => __('Email Heading', 'invoicing'),
699
+            'desc'     => __('Enter the main heading of this email.', 'invoicing'),
700 700
             'help-tip' => true,
701 701
             'type'     => 'text',
702
-            'std'      => __( 'Trial Started', 'invoicing' ),
702
+            'std'      => __('Trial Started', 'invoicing'),
703 703
             'size'     => 'large'
704 704
         ),
705 705
 
706 706
         'email_subscription_trial_body' => array(
707 707
             'id'       => 'email_subscription_trial_body',
708
-            'name'     => __( 'Email Content', 'invoicing' ),
709
-            'desc'     => wpinv_get_merge_tags_help_text( true ),
708
+            'name'     => __('Email Content', 'invoicing'),
709
+            'desc'     => wpinv_get_merge_tags_help_text(true),
710 710
             'type'     => 'rich_editor',
711
-            'std'      => __( '<p>Hi {first_name},</p><p>Your trial for {subscription_name} is now active and will renew on {subscription_renewal_date}.</p>', 'invoicing' ),
711
+            'std'      => __('<p>Hi {first_name},</p><p>Your trial for {subscription_name} is now active and will renew on {subscription_renewal_date}.</p>', 'invoicing'),
712 712
             'class'    => 'large',
713 713
             'size'     => 10,
714 714
         ),
@@ -718,53 +718,53 @@  discard block
 block discarded – undo
718 718
 
719 719
         'email_subscription_cancelled_header' => array(
720 720
             'id'       => 'email_subscription_cancelled_header',
721
-            'name'     => '<h3>' . __( 'Subscription Cancelled', 'invoicing' ) . '</h3>',
722
-            'desc'     => __( 'These emails are sent when a customer cancels their subscription.', 'invoicing' ),
721
+            'name'     => '<h3>' . __('Subscription Cancelled', 'invoicing') . '</h3>',
722
+            'desc'     => __('These emails are sent when a customer cancels their subscription.', 'invoicing'),
723 723
             'type'     => 'header',
724 724
         ),
725 725
 
726 726
         'email_subscription_cancelled_active' => array(
727 727
             'id'       => 'email_subscription_cancelled_active',
728
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
729
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
728
+            'name'     => __('Enable/Disable', 'invoicing'),
729
+            'desc'     => __('Enable this email notification', 'invoicing'),
730 730
             'type'     => 'checkbox',
731 731
             'std'      => 1
732 732
         ),
733 733
 
734 734
         'email_subscription_cancelled_admin_bcc' => array(
735 735
             'id'       => 'email_subscription_cancelled_admin_bcc',
736
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
737
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
736
+            'name'     => __('Enable Admin BCC', 'invoicing'),
737
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
738 738
             'type'     => 'checkbox',
739 739
             'std'      => 1
740 740
         ),
741 741
 
742 742
         'email_subscription_cancelled_subject' => array(
743 743
             'id'       => 'email_subscription_cancelled_subject',
744
-            'name'     => __( 'Subject', 'invoicing' ),
745
-            'desc'     => __( 'Enter the subject line for the subscription cancelled email.', 'invoicing' ),
744
+            'name'     => __('Subject', 'invoicing'),
745
+            'desc'     => __('Enter the subject line for the subscription cancelled email.', 'invoicing'),
746 746
             'help-tip' => true,
747 747
             'type'     => 'text',
748
-            'std'      => __( '[{site_title}] Subscription Cancelled', 'invoicing' ),
748
+            'std'      => __('[{site_title}] Subscription Cancelled', 'invoicing'),
749 749
             'size'     => 'large'
750 750
         ),
751 751
 
752 752
         'email_subscription_cancelled_heading' => array(
753 753
             'id'       => 'email_subscription_cancelled_heading',
754
-            'name'     => __( 'Email Heading', 'invoicing' ),
755
-            'desc'     => __( 'Enter the main heading of this email.', 'invoicing' ),
754
+            'name'     => __('Email Heading', 'invoicing'),
755
+            'desc'     => __('Enter the main heading of this email.', 'invoicing'),
756 756
             'help-tip' => true,
757 757
             'type'     => 'text',
758
-            'std'      => __( 'Subscription Cancelled', 'invoicing' ),
758
+            'std'      => __('Subscription Cancelled', 'invoicing'),
759 759
             'size'     => 'large'
760 760
         ),
761 761
 
762 762
         'email_subscription_cancelled_body' => array(
763 763
             'id'       => 'email_subscription_cancelled_body',
764
-            'name'     => __( 'Email Content', 'invoicing' ),
765
-            'desc'     => wpinv_get_merge_tags_help_text( true ),
764
+            'name'     => __('Email Content', 'invoicing'),
765
+            'desc'     => wpinv_get_merge_tags_help_text(true),
766 766
             'type'     => 'rich_editor',
767
-            'std'      => __( '<p>Hi {first_name},</p><p>Your subscription for {subscription_name} has been cancelled and will no longer renew.</p>', 'invoicing' ),
767
+            'std'      => __('<p>Hi {first_name},</p><p>Your subscription for {subscription_name} has been cancelled and will no longer renew.</p>', 'invoicing'),
768 768
             'class'    => 'large',
769 769
             'size'     => 10,
770 770
         ),
@@ -774,53 +774,53 @@  discard block
 block discarded – undo
774 774
 
775 775
         'email_subscription_expired_header' => array(
776 776
             'id'       => 'email_subscription_expired_header',
777
-            'name'     => '<h3>' . __( 'Subscription Expired', 'invoicing' ) . '</h3>',
778
-            'desc'     => __( "These emails are sent when a customer's subscription expires and automatic renewal fails.", 'invoicing' ),
777
+            'name'     => '<h3>' . __('Subscription Expired', 'invoicing') . '</h3>',
778
+            'desc'     => __("These emails are sent when a customer's subscription expires and automatic renewal fails.", 'invoicing'),
779 779
             'type'     => 'header',
780 780
         ),
781 781
 
782 782
         'email_subscription_expired_active' => array(
783 783
             'id'       => 'email_subscription_expired_active',
784
-            'name'     => __( 'Enable/Disable', 'invoicing' ),
785
-            'desc'     => __( 'Enable this email notification', 'invoicing' ),
784
+            'name'     => __('Enable/Disable', 'invoicing'),
785
+            'desc'     => __('Enable this email notification', 'invoicing'),
786 786
             'type'     => 'checkbox',
787 787
             'std'      => 1
788 788
         ),
789 789
 
790 790
         'email_subscription_expired_admin_bcc' => array(
791 791
             'id'       => 'email_subscription_expired_admin_bcc',
792
-            'name'     => __( 'Enable Admin BCC', 'invoicing' ),
793
-            'desc'     => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
792
+            'name'     => __('Enable Admin BCC', 'invoicing'),
793
+            'desc'     => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
794 794
             'type'     => 'checkbox',
795 795
             'std'      => 1
796 796
         ),
797 797
 
798 798
         'email_subscription_expired_subject' => array(
799 799
             'id'       => 'email_subscription_expired_subject',
800
-            'name'     => __( 'Subject', 'invoicing' ),
801
-            'desc'     => __( 'Enter the subject line for the subscription expired email.', 'invoicing' ),
800
+            'name'     => __('Subject', 'invoicing'),
801
+            'desc'     => __('Enter the subject line for the subscription expired email.', 'invoicing'),
802 802
             'help-tip' => true,
803 803
             'type'     => 'text',
804
-            'std'      => __( '[{site_title}] Subscription Expired', 'invoicing' ),
804
+            'std'      => __('[{site_title}] Subscription Expired', 'invoicing'),
805 805
             'size'     => 'large'
806 806
         ),
807 807
 
808 808
         'email_subscription_expired_heading' => array(
809 809
             'id'       => 'email_subscription_expired_heading',
810
-            'name'     => __( 'Email Heading', 'invoicing' ),
811
-            'desc'     => __( 'Enter the main heading of this email.', 'invoicing' ),
810
+            'name'     => __('Email Heading', 'invoicing'),
811
+            'desc'     => __('Enter the main heading of this email.', 'invoicing'),
812 812
             'type'     => 'text',
813
-            'std'      => __( 'Subscription Expired', 'invoicing' ),
813
+            'std'      => __('Subscription Expired', 'invoicing'),
814 814
             'help-tip' => true,
815 815
             'size'     => 'large'
816 816
         ),
817 817
 
818 818
         'email_subscription_expired_body' => array(
819 819
             'id'       => 'email_subscription_expired_body',
820
-            'name'     => __( 'Email Content', 'invoicing' ),
821
-            'desc'     => wpinv_get_merge_tags_help_text( true ),
820
+            'name'     => __('Email Content', 'invoicing'),
821
+            'desc'     => wpinv_get_merge_tags_help_text(true),
822 822
             'type'     => 'rich_editor',
823
-            'std'      => __( '<p>Hi {first_name},</p><p>Your subscription for {subscription_name} has expired.</p>', 'invoicing' ),
823
+            'std'      => __('<p>Hi {first_name},</p><p>Your subscription for {subscription_name} has expired.</p>', 'invoicing'),
824 824
             'class'    => 'large',
825 825
             'size'     => 10,
826 826
         ),
@@ -830,53 +830,53 @@  discard block
 block discarded – undo
830 830
 
831 831
         'email_subscription_complete_header' => array(
832 832
             'id'     => 'email_subscription_complete_header',
833
-            'name'   => '<h3>' . __( 'Subscription Complete', 'invoicing' ) . '</h3>',
834
-            'desc'   => __( 'These emails are sent when a customer completes their subscription.', 'invoicing' ),
833
+            'name'   => '<h3>' . __('Subscription Complete', 'invoicing') . '</h3>',
834
+            'desc'   => __('These emails are sent when a customer completes their subscription.', 'invoicing'),
835 835
             'type'   => 'header',
836 836
         ),
837 837
 
838 838
         'email_subscription_complete_active' => array(
839 839
             'id'      => 'email_subscription_complete_active',
840
-            'name'    => __( 'Enable/Disable', 'invoicing' ),
841
-            'desc'    => __( 'Enable this email notification', 'invoicing' ),
840
+            'name'    => __('Enable/Disable', 'invoicing'),
841
+            'desc'    => __('Enable this email notification', 'invoicing'),
842 842
             'type'    => 'checkbox',
843 843
             'std'     => 1
844 844
         ),
845 845
 
846 846
         'email_subscription_complete_admin_bcc' => array(
847 847
             'id'      => 'email_subscription_complete_admin_bcc',
848
-            'name'    => __( 'Enable Admin BCC', 'invoicing' ),
849
-            'desc'    => __( 'Check if you want to send a copy of this notification email to the site admin.', 'invoicing' ),
848
+            'name'    => __('Enable Admin BCC', 'invoicing'),
849
+            'desc'    => __('Check if you want to send a copy of this notification email to the site admin.', 'invoicing'),
850 850
             'type'    => 'checkbox',
851 851
             'std'     => 1
852 852
         ),
853 853
 
854 854
         'email_subscription_complete_subject' => array(
855 855
             'id'       => 'email_subscription_complete_subject',
856
-            'name'     => __( 'Subject', 'invoicing' ),
857
-            'desc'     => __( 'Enter the subject line for the subscription complete email.', 'invoicing' ),
856
+            'name'     => __('Subject', 'invoicing'),
857
+            'desc'     => __('Enter the subject line for the subscription complete email.', 'invoicing'),
858 858
             'help-tip' => true,
859 859
             'type'     => 'text',
860
-            'std'      => __( '[{site_title}] Subscription Complete', 'invoicing' ),
860
+            'std'      => __('[{site_title}] Subscription Complete', 'invoicing'),
861 861
             'size'     => 'large'
862 862
         ),
863 863
 
864 864
         'email_subscription_complete_heading' => array(
865 865
             'id'       => 'email_subscription_complete_heading',
866
-            'name'     => __( 'Email Heading', 'invoicing' ),
867
-            'desc'     => __( 'Enter the main heading of this email.', 'invoicing' ),
866
+            'name'     => __('Email Heading', 'invoicing'),
867
+            'desc'     => __('Enter the main heading of this email.', 'invoicing'),
868 868
             'help-tip' => true,
869 869
             'type'     => 'text',
870
-            'std'      => __( 'Subscription Complete', 'invoicing' ),
870
+            'std'      => __('Subscription Complete', 'invoicing'),
871 871
             'size'     => 'large'
872 872
         ),
873 873
 
874 874
         'email_subscription_complete_body' => array(
875 875
             'id'       => 'email_subscription_complete_body',
876
-            'name'     => __( 'Email Content', 'invoicing' ),
877
-            'desc'     => wpinv_get_merge_tags_help_text( true ),
876
+            'name'     => __('Email Content', 'invoicing'),
877
+            'desc'     => wpinv_get_merge_tags_help_text(true),
878 878
             'type'     => 'rich_editor',
879
-            'std'      => __( '<p>Hi {first_name},</p><p>Your subscription for {subscription_name} is now complete.</p>', 'invoicing' ),
879
+            'std'      => __('<p>Hi {first_name},</p><p>Your subscription for {subscription_name} is now complete.</p>', 'invoicing'),
880 880
             'class'    => 'large',
881 881
             'size'     => 10,
882 882
         ),
Please login to merge, or discard this patch.
includes/admin/class-getpaid-admin.php 2 patches
Indentation   +417 added lines, -417 removed lines patch added patch discarded remove patch
@@ -14,77 +14,77 @@  discard block
 block discarded – undo
14 14
 class GetPaid_Admin {
15 15
 
16 16
     /**
17
-	 * Local path to this plugins admin directory
18
-	 *
19
-	 * @var         string
20
-	 */
21
-	public $admin_path;
22
-
23
-	/**
24
-	 * Web path to this plugins admin directory
25
-	 *
26
-	 * @var         string
27
-	 */
28
-	public $admin_url;
17
+     * Local path to this plugins admin directory
18
+     *
19
+     * @var         string
20
+     */
21
+    public $admin_path;
22
+
23
+    /**
24
+     * Web path to this plugins admin directory
25
+     *
26
+     * @var         string
27
+     */
28
+    public $admin_url;
29 29
 	
30
-	/**
31
-	 * Reports components.
32
-	 *
33
-	 * @var GetPaid_Reports
34
-	 */
30
+    /**
31
+     * Reports components.
32
+     *
33
+     * @var GetPaid_Reports
34
+     */
35 35
     public $reports;
36 36
 
37 37
     /**
38
-	 * Class constructor.
39
-	 */
40
-	public function __construct(){
38
+     * Class constructor.
39
+     */
40
+    public function __construct(){
41 41
 
42 42
         $this->admin_path  = plugin_dir_path( __FILE__ );
43
-		$this->admin_url   = plugins_url( '/', __FILE__ );
44
-		$this->reports     = new GetPaid_Reports();
43
+        $this->admin_url   = plugins_url( '/', __FILE__ );
44
+        $this->reports     = new GetPaid_Reports();
45 45
 
46 46
         if ( is_admin() ) {
47
-			$this->init_admin_hooks();
47
+            $this->init_admin_hooks();
48 48
         }
49 49
 
50 50
     }
51 51
 
52 52
     /**
53
-	 * Init action and filter hooks
54
-	 *
55
-	 */
56
-	private function init_admin_hooks() {
53
+     * Init action and filter hooks
54
+     *
55
+     */
56
+    private function init_admin_hooks() {
57 57
         add_action( 'admin_enqueue_scripts', array( $this, 'enqeue_scripts' ) );
58 58
         add_filter( 'admin_body_class', array( $this, 'admin_body_class' ) );
59 59
         add_action( 'admin_init', array( $this, 'init_ayecode_connect_helper' ) );
60 60
         add_action( 'admin_init', array( $this, 'activation_redirect') );
61 61
         add_action( 'admin_init', array( $this, 'maybe_do_admin_action') );
62
-		add_action( 'admin_notices', array( $this, 'show_notices' ) );
63
-		add_action( 'getpaid_authenticated_admin_action_rate_plugin', array( $this, 'redirect_to_wordpress_rating_page' ) );
64
-		add_action( 'getpaid_authenticated_admin_action_send_invoice', array( $this, 'send_customer_invoice' ) );
65
-		add_action( 'getpaid_authenticated_admin_action_send_invoice_reminder', array( $this, 'send_customer_payment_reminder' ) );
62
+        add_action( 'admin_notices', array( $this, 'show_notices' ) );
63
+        add_action( 'getpaid_authenticated_admin_action_rate_plugin', array( $this, 'redirect_to_wordpress_rating_page' ) );
64
+        add_action( 'getpaid_authenticated_admin_action_send_invoice', array( $this, 'send_customer_invoice' ) );
65
+        add_action( 'getpaid_authenticated_admin_action_send_invoice_reminder', array( $this, 'send_customer_payment_reminder' ) );
66 66
         add_action( 'getpaid_authenticated_admin_action_reset_tax_rates', array( $this, 'admin_reset_tax_rates' ) );
67
-		add_action( 'getpaid_authenticated_admin_action_create_missing_pages', array( $this, 'admin_create_missing_pages' ) );
68
-		add_action( 'getpaid_authenticated_admin_action_create_missing_tables', array( $this, 'admin_create_missing_tables' ) );
69
-		add_action( 'getpaid_authenticated_admin_action_migrate_old_invoices', array( $this, 'admin_migrate_old_invoices' ) );
70
-		add_action( 'getpaid_authenticated_admin_action_recalculate_discounts', array( $this, 'admin_recalculate_discounts' ) );
71
-		add_filter( 'admin_footer_text', array( $this, 'admin_footer_text' ) );
72
-		do_action( 'getpaid_init_admin_hooks', $this );
67
+        add_action( 'getpaid_authenticated_admin_action_create_missing_pages', array( $this, 'admin_create_missing_pages' ) );
68
+        add_action( 'getpaid_authenticated_admin_action_create_missing_tables', array( $this, 'admin_create_missing_tables' ) );
69
+        add_action( 'getpaid_authenticated_admin_action_migrate_old_invoices', array( $this, 'admin_migrate_old_invoices' ) );
70
+        add_action( 'getpaid_authenticated_admin_action_recalculate_discounts', array( $this, 'admin_recalculate_discounts' ) );
71
+        add_filter( 'admin_footer_text', array( $this, 'admin_footer_text' ) );
72
+        do_action( 'getpaid_init_admin_hooks', $this );
73 73
 
74 74
     }
75 75
 
76 76
     /**
77
-	 * Register admin scripts
78
-	 *
79
-	 */
80
-	public function enqeue_scripts() {
77
+     * Register admin scripts
78
+     *
79
+     */
80
+    public function enqeue_scripts() {
81 81
         global $current_screen, $pagenow;
82 82
 
83
-		$page    = isset( $_GET['page'] ) ? $_GET['page'] : '';
84
-		$editing = $pagenow == 'post.php' || $pagenow == 'post-new.php';
83
+        $page    = isset( $_GET['page'] ) ? $_GET['page'] : '';
84
+        $editing = $pagenow == 'post.php' || $pagenow == 'post-new.php';
85 85
 
86 86
         if ( ! empty( $current_screen->post_type ) ) {
87
-			$page = $current_screen->post_type;
87
+            $page = $current_screen->post_type;
88 88
         }
89 89
 
90 90
         // General styles.
@@ -105,54 +105,54 @@  discard block
 block discarded – undo
105 105
         }
106 106
 
107 107
         // Payment form scripts.
108
-		if ( 'wpi_payment_form' == $page && $editing ) {
108
+        if ( 'wpi_payment_form' == $page && $editing ) {
109 109
             $this->load_payment_form_scripts();
110 110
         }
111 111
 
112
-		if ( $page == 'wpinv-subscriptions' ) {
113
-			wp_enqueue_script( 'postbox' );
114
-		}
112
+        if ( $page == 'wpinv-subscriptions' ) {
113
+            wp_enqueue_script( 'postbox' );
114
+        }
115 115
 
116 116
     }
117 117
 
118 118
     /**
119
-	 * Returns admin js translations.
120
-	 *
121
-	 */
122
-	protected function get_admin_i18() {
119
+     * Returns admin js translations.
120
+     *
121
+     */
122
+    protected function get_admin_i18() {
123 123
         global $post;
124 124
 
125
-		$date_range = array(
126
-			'period' => isset( $_GET['date_range'] ) ? sanitize_text_field( $_GET['date_range'] ) : '7_days'
127
-		);
125
+        $date_range = array(
126
+            'period' => isset( $_GET['date_range'] ) ? sanitize_text_field( $_GET['date_range'] ) : '7_days'
127
+        );
128 128
 
129
-		if ( $date_range['period'] == 'custom' ) {
129
+        if ( $date_range['period'] == 'custom' ) {
130 130
 			
131
-			if ( isset( $_GET['from'] ) ) {
132
-				$date_range[ 'after' ] = date( 'Y-m-d', strtotime( sanitize_text_field( $_GET['from'] ), current_time( 'timestamp' ) ) - DAY_IN_SECONDS );
133
-			}
131
+            if ( isset( $_GET['from'] ) ) {
132
+                $date_range[ 'after' ] = date( 'Y-m-d', strtotime( sanitize_text_field( $_GET['from'] ), current_time( 'timestamp' ) ) - DAY_IN_SECONDS );
133
+            }
134 134
 
135
-			if ( isset( $_GET['to'] ) ) {
136
-				$date_range[ 'before' ] = date( 'Y-m-d', strtotime( sanitize_text_field( $_GET['to'] ), current_time( 'timestamp' ) ) + DAY_IN_SECONDS );
137
-			}
135
+            if ( isset( $_GET['to'] ) ) {
136
+                $date_range[ 'before' ] = date( 'Y-m-d', strtotime( sanitize_text_field( $_GET['to'] ), current_time( 'timestamp' ) ) + DAY_IN_SECONDS );
137
+            }
138 138
 
139
-		}
139
+        }
140 140
 
141 141
         $i18n = array(
142 142
             'ajax_url'                  => admin_url( 'admin-ajax.php' ),
143 143
             'post_ID'                   => isset( $post->ID ) ? $post->ID : '',
144
-			'wpinv_nonce'               => wp_create_nonce( 'wpinv-nonce' ),
145
-			'rest_nonce'                => wp_create_nonce( 'wp_rest' ),
146
-			'rest_root'                 => esc_url_raw( rest_url() ),
147
-			'date_range'                => $date_range,
144
+            'wpinv_nonce'               => wp_create_nonce( 'wpinv-nonce' ),
145
+            'rest_nonce'                => wp_create_nonce( 'wp_rest' ),
146
+            'rest_root'                 => esc_url_raw( rest_url() ),
147
+            'date_range'                => $date_range,
148 148
             'add_invoice_note_nonce'    => wp_create_nonce( 'add-invoice-note' ),
149 149
             'delete_invoice_note_nonce' => wp_create_nonce( 'delete-invoice-note' ),
150 150
             'invoice_item_nonce'        => wp_create_nonce( 'invoice-item' ),
151 151
             'billing_details_nonce'     => wp_create_nonce( 'get-billing-details' ),
152 152
             'tax'                       => wpinv_tax_amount(),
153 153
             'discount'                  => 0,
154
-			'currency_symbol'           => wpinv_currency_symbol(),
155
-			'currency'                  => wpinv_get_currency(),
154
+            'currency_symbol'           => wpinv_currency_symbol(),
155
+            'currency'                  => wpinv_get_currency(),
156 156
             'currency_pos'              => wpinv_currency_position(),
157 157
             'thousand_sep'              => wpinv_thousands_separator(),
158 158
             'decimal_sep'               => wpinv_decimal_separator(),
@@ -172,118 +172,118 @@  discard block
 block discarded – undo
172 172
             'item_description'          => __( 'Item Description', 'invoicing' ),
173 173
             'invoice_description'       => __( 'Invoice Description', 'invoicing' ),
174 174
             'discount_description'      => __( 'Discount Description', 'invoicing' ),
175
-			'searching'                 => __( 'Searching', 'invoicing' ),
176
-			'loading'                   => __( 'Loading...', 'invoicing' ),
177
-			'search_customers'          => __( 'Enter customer name or email', 'invoicing' ),
178
-			'search_items'              => __( 'Enter item name', 'invoicing' ),
175
+            'searching'                 => __( 'Searching', 'invoicing' ),
176
+            'loading'                   => __( 'Loading...', 'invoicing' ),
177
+            'search_customers'          => __( 'Enter customer name or email', 'invoicing' ),
178
+            'search_items'              => __( 'Enter item name', 'invoicing' ),
179 179
         );
180 180
 
181
-		if ( ! empty( $post ) && getpaid_is_invoice_post_type( $post->post_type ) ) {
181
+        if ( ! empty( $post ) && getpaid_is_invoice_post_type( $post->post_type ) ) {
182 182
 
183
-			$invoice              = new WPInv_Invoice( $post );
184
-			$i18n['save_invoice'] = sprintf(
185
-				__( 'Save %s', 'invoicing' ),
186
-				ucfirst( $invoice->get_invoice_quote_type() )
187
-			);
183
+            $invoice              = new WPInv_Invoice( $post );
184
+            $i18n['save_invoice'] = sprintf(
185
+                __( 'Save %s', 'invoicing' ),
186
+                ucfirst( $invoice->get_invoice_quote_type() )
187
+            );
188 188
 
189
-			$i18n['invoice_description'] = sprintf(
190
-				__( '%s Description', 'invoicing' ),
191
-				ucfirst( $invoice->get_invoice_quote_type() )
192
-			);
189
+            $i18n['invoice_description'] = sprintf(
190
+                __( '%s Description', 'invoicing' ),
191
+                ucfirst( $invoice->get_invoice_quote_type() )
192
+            );
193 193
 
194
-		}
195
-		return $i18n;
196
-	}
194
+        }
195
+        return $i18n;
196
+    }
197 197
 
198
-	/**
199
-	 * Change the admin footer text on GetPaid admin pages.
200
-	 *
201
-	 * @since  2.0.0
202
-	 * @param  string $footer_text
203
-	 * @return string
204
-	 */
205
-	public function admin_footer_text( $footer_text ) {
206
-		global $current_screen;
198
+    /**
199
+     * Change the admin footer text on GetPaid admin pages.
200
+     *
201
+     * @since  2.0.0
202
+     * @param  string $footer_text
203
+     * @return string
204
+     */
205
+    public function admin_footer_text( $footer_text ) {
206
+        global $current_screen;
207 207
 
208
-		$page    = isset( $_GET['page'] ) ? $_GET['page'] : '';
208
+        $page    = isset( $_GET['page'] ) ? $_GET['page'] : '';
209 209
 
210 210
         if ( ! empty( $current_screen->post_type ) ) {
211
-			$page = $current_screen->post_type;
211
+            $page = $current_screen->post_type;
212 212
         }
213 213
 
214 214
         // General styles.
215 215
         if ( apply_filters( 'getpaid_display_admin_footer_text', wpinv_current_user_can_manage_invoicing() ) && false !== stripos( $page, 'wpi' ) ) {
216 216
 
217
-			// Change the footer text
218
-			if ( ! get_user_meta( get_current_user_id(), 'getpaid_admin_footer_text_rated', true ) ) {
219
-
220
-				$rating_url  = esc_url(
221
-					wp_nonce_url(
222
-						admin_url( 'admin.php?page=wpinv-reports&getpaid-admin-action=rate_plugin' ),
223
-						'getpaid-nonce',
224
-						'getpaid-nonce'
225
-						)
226
-				);
227
-
228
-				$footer_text = sprintf(
229
-					/* translators: %s: five stars */
230
-					__( 'If you like <strong>GetPaid</strong>, please leave us a %s rating. A huge thanks in advance!', 'invoicing' ),
231
-					"<a href='$rating_url'>&#9733;&#9733;&#9733;&#9733;&#9733;</a>"
232
-				);
233
-
234
-			} else {
235
-
236
-				$footer_text = sprintf(
237
-					/* translators: %s: GetPaid */
238
-					__( 'Thank you for using %s!', 'invoicing' ),
239
-					"<a href='https://wpgetpaid.com/' target='_blank'><strong>GetPaid</strong></a>"
240
-				);
241
-
242
-			}
243
-
244
-		}
245
-
246
-		return $footer_text;
247
-	}
248
-
249
-	/**
250
-	 * Redirects to wp.org to rate the plugin.
251
-	 *
252
-	 * @since  2.0.0
253
-	 */
254
-	public function redirect_to_wordpress_rating_page() {
255
-		update_user_meta( get_current_user_id(), 'getpaid_admin_footer_text_rated', 1 );
256
-		wp_redirect( 'https://wordpress.org/support/plugin/invoicing/reviews?rate=5#new-post' );
257
-		exit;
258
-	}
217
+            // Change the footer text
218
+            if ( ! get_user_meta( get_current_user_id(), 'getpaid_admin_footer_text_rated', true ) ) {
219
+
220
+                $rating_url  = esc_url(
221
+                    wp_nonce_url(
222
+                        admin_url( 'admin.php?page=wpinv-reports&getpaid-admin-action=rate_plugin' ),
223
+                        'getpaid-nonce',
224
+                        'getpaid-nonce'
225
+                        )
226
+                );
227
+
228
+                $footer_text = sprintf(
229
+                    /* translators: %s: five stars */
230
+                    __( 'If you like <strong>GetPaid</strong>, please leave us a %s rating. A huge thanks in advance!', 'invoicing' ),
231
+                    "<a href='$rating_url'>&#9733;&#9733;&#9733;&#9733;&#9733;</a>"
232
+                );
233
+
234
+            } else {
235
+
236
+                $footer_text = sprintf(
237
+                    /* translators: %s: GetPaid */
238
+                    __( 'Thank you for using %s!', 'invoicing' ),
239
+                    "<a href='https://wpgetpaid.com/' target='_blank'><strong>GetPaid</strong></a>"
240
+                );
241
+
242
+            }
243
+
244
+        }
245
+
246
+        return $footer_text;
247
+    }
259 248
 
260 249
     /**
261
-	 * Loads payment form js.
262
-	 *
263
-	 */
264
-	protected function load_payment_form_scripts() {
250
+     * Redirects to wp.org to rate the plugin.
251
+     *
252
+     * @since  2.0.0
253
+     */
254
+    public function redirect_to_wordpress_rating_page() {
255
+        update_user_meta( get_current_user_id(), 'getpaid_admin_footer_text_rated', 1 );
256
+        wp_redirect( 'https://wordpress.org/support/plugin/invoicing/reviews?rate=5#new-post' );
257
+        exit;
258
+    }
259
+
260
+    /**
261
+     * Loads payment form js.
262
+     *
263
+     */
264
+    protected function load_payment_form_scripts() {
265 265
         global $post;
266 266
 
267 267
         wp_enqueue_script( 'vue', WPINV_PLUGIN_URL . 'assets/js/vue/vue.js', array(), WPINV_VERSION );
268
-		wp_enqueue_script( 'sortable', WPINV_PLUGIN_URL . 'assets/js/sortable.min.js', array(), WPINV_VERSION );
269
-		wp_enqueue_script( 'vue_draggable', WPINV_PLUGIN_URL . 'assets/js/vue/vuedraggable.min.js', array( 'sortable', 'vue' ), WPINV_VERSION );
268
+        wp_enqueue_script( 'sortable', WPINV_PLUGIN_URL . 'assets/js/sortable.min.js', array(), WPINV_VERSION );
269
+        wp_enqueue_script( 'vue_draggable', WPINV_PLUGIN_URL . 'assets/js/vue/vuedraggable.min.js', array( 'sortable', 'vue' ), WPINV_VERSION );
270 270
 
271
-		$version = filemtime( WPINV_PLUGIN_DIR . 'assets/js/admin-payment-forms.js' );
272
-		wp_register_script( 'wpinv-admin-payment-form-script', WPINV_PLUGIN_URL . 'assets/js/admin-payment-forms.js', array( 'wpinv-admin-script', 'vue_draggable' ),  $version );
271
+        $version = filemtime( WPINV_PLUGIN_DIR . 'assets/js/admin-payment-forms.js' );
272
+        wp_register_script( 'wpinv-admin-payment-form-script', WPINV_PLUGIN_URL . 'assets/js/admin-payment-forms.js', array( 'wpinv-admin-script', 'vue_draggable' ),  $version );
273 273
 
274
-		wp_localize_script(
274
+        wp_localize_script(
275 275
             'wpinv-admin-payment-form-script',
276 276
             'wpinvPaymentFormAdmin',
277 277
             array(
278
-				'elements'      => wpinv_get_data( 'payment-form-elements' ),
279
-				'form_elements' => getpaid_get_payment_form_elements( $post->ID ),
280
-				'currency'      => wpinv_currency_symbol(),
281
-				'position'      => wpinv_currency_position(),
282
-				'decimals'      => (int) wpinv_decimals(),
283
-				'thousands_sep' => wpinv_thousands_separator(),
284
-				'decimals_sep'  => wpinv_decimal_separator(),
285
-				'form_items'    => gepaid_get_form_items( $post->ID ),
286
-				'is_default'    => $post->ID == wpinv_get_default_payment_form(),
278
+                'elements'      => wpinv_get_data( 'payment-form-elements' ),
279
+                'form_elements' => getpaid_get_payment_form_elements( $post->ID ),
280
+                'currency'      => wpinv_currency_symbol(),
281
+                'position'      => wpinv_currency_position(),
282
+                'decimals'      => (int) wpinv_decimals(),
283
+                'thousands_sep' => wpinv_thousands_separator(),
284
+                'decimals_sep'  => wpinv_decimal_separator(),
285
+                'form_items'    => gepaid_get_form_items( $post->ID ),
286
+                'is_default'    => $post->ID == wpinv_get_default_payment_form(),
287 287
             )
288 288
         );
289 289
 
@@ -292,20 +292,20 @@  discard block
 block discarded – undo
292 292
     }
293 293
 
294 294
     /**
295
-	 * Add our classes to admin pages.
295
+     * Add our classes to admin pages.
296 296
      *
297 297
      * @param string $classes
298 298
      * @return string
299
-	 *
300
-	 */
299
+     *
300
+     */
301 301
     public function admin_body_class( $classes ) {
302
-		global $pagenow, $post, $current_screen;
302
+        global $pagenow, $post, $current_screen;
303 303
 
304 304
 
305 305
         $page = isset( $_GET['page'] ) ? $_GET['page'] : '';
306 306
 
307 307
         if ( ! empty( $current_screen->post_type ) ) {
308
-			$page = $current_screen->post_type;
308
+            $page = $current_screen->post_type;
309 309
         }
310 310
 
311 311
         if ( false !== stripos( $page, 'wpi' ) ) {
@@ -314,59 +314,59 @@  discard block
 block discarded – undo
314 314
 
315 315
         if ( in_array( $page, wpinv_parse_list( 'wpi_invoice wpi_payment_form wpi_quote' ) ) ) {
316 316
             $classes .= ' wpinv-cpt wpinv';
317
-		}
317
+        }
318 318
 		
319
-		if ( getpaid_is_invoice_post_type( $page ) ) {
319
+        if ( getpaid_is_invoice_post_type( $page ) ) {
320 320
             $classes .= ' getpaid-is-invoice-cpt';
321 321
         }
322 322
 
323
-		return $classes;
323
+        return $classes;
324 324
     }
325 325
 
326 326
     /**
327
-	 * Maybe show the AyeCode Connect Notice.
328
-	 */
329
-	public function init_ayecode_connect_helper(){
327
+     * Maybe show the AyeCode Connect Notice.
328
+     */
329
+    public function init_ayecode_connect_helper(){
330 330
 
331 331
         new AyeCode_Connect_Helper(
332 332
             array(
333
-				'connect_title' => __("WP Invoicing - an AyeCode product!","invoicing"),
334
-				'connect_external'  => __( "Please confirm you wish to connect your site?","invoicing" ),
335
-				'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s","invoicing" ),"<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>","</a>" ),
336
-				'connect_button'    => __("Connect Site","invoicing"),
337
-				'connecting_button'    => __("Connecting...","invoicing"),
338
-				'error_localhost'   => __( "This service will only work with a live domain, not a localhost.","invoicing" ),
339
-				'error'             => __( "Something went wrong, please refresh and try again.","invoicing" ),
333
+                'connect_title' => __("WP Invoicing - an AyeCode product!","invoicing"),
334
+                'connect_external'  => __( "Please confirm you wish to connect your site?","invoicing" ),
335
+                'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s","invoicing" ),"<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>","</a>" ),
336
+                'connect_button'    => __("Connect Site","invoicing"),
337
+                'connecting_button'    => __("Connecting...","invoicing"),
338
+                'error_localhost'   => __( "This service will only work with a live domain, not a localhost.","invoicing" ),
339
+                'error'             => __( "Something went wrong, please refresh and try again.","invoicing" ),
340 340
             ),
341 341
             array( 'wpi-addons' )
342 342
         );
343 343
 
344 344
     }
345 345
 
346
-	/**
347
-	 * Redirect users to settings on activation.
348
-	 *
349
-	 * @return void
350
-	 */
351
-	public function activation_redirect() {
346
+    /**
347
+     * Redirect users to settings on activation.
348
+     *
349
+     * @return void
350
+     */
351
+    public function activation_redirect() {
352 352
 
353
-		$redirected = get_option( 'wpinv_redirected_to_settings' );
353
+        $redirected = get_option( 'wpinv_redirected_to_settings' );
354 354
 
355
-		if ( ! empty( $redirected ) || wp_doing_ajax() || ! current_user_can( 'manage_options' ) ) {
356
-			return;
357
-		}
355
+        if ( ! empty( $redirected ) || wp_doing_ajax() || ! current_user_can( 'manage_options' ) ) {
356
+            return;
357
+        }
358 358
 
359
-		// Bail if activating from network, or bulk
360
-		if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) {
361
-			return;
362
-		}
359
+        // Bail if activating from network, or bulk
360
+        if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) {
361
+            return;
362
+        }
363 363
 
364
-	    update_option( 'wpinv_redirected_to_settings', 1 );
364
+        update_option( 'wpinv_redirected_to_settings', 1 );
365 365
 
366 366
         wp_safe_redirect( admin_url( 'admin.php?page=wpinv-settings&tab=general' ) );
367 367
         exit;
368 368
 
369
-	}
369
+    }
370 370
 
371 371
     /**
372 372
      * Fires an admin action after verifying that a user can fire them.
@@ -380,304 +380,304 @@  discard block
 block discarded – undo
380 380
 
381 381
     }
382 382
 
383
-	/**
383
+    /**
384 384
      * Sends a payment reminder to a customer.
385
-	 * 
386
-	 * @param array $args
385
+     * 
386
+     * @param array $args
387 387
      */
388 388
     public function send_customer_invoice( $args ) {
389
-		$sent = getpaid()->get( 'invoice_emails' )->user_invoice( new WPInv_Invoice( $args['invoice_id'] ), true );
389
+        $sent = getpaid()->get( 'invoice_emails' )->user_invoice( new WPInv_Invoice( $args['invoice_id'] ), true );
390 390
 
391
-		if ( $sent ) {
392
-			$this->show_success( __( 'Invoice was successfully sent to the customer', 'invoicing' ) );
393
-		} else {
394
-			$this->show_error( __( 'Could not send the invoice to the customer', 'invoicing' ) );
395
-		}
391
+        if ( $sent ) {
392
+            $this->show_success( __( 'Invoice was successfully sent to the customer', 'invoicing' ) );
393
+        } else {
394
+            $this->show_error( __( 'Could not send the invoice to the customer', 'invoicing' ) );
395
+        }
396 396
 
397
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce', 'invoice_id' ) ) );
398
-		exit;
399
-	}
397
+        wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce', 'invoice_id' ) ) );
398
+        exit;
399
+    }
400 400
 
401
-	/**
401
+    /**
402 402
      * Sends a payment reminder to a customer.
403
-	 * 
404
-	 * @param array $args
403
+     * 
404
+     * @param array $args
405 405
      */
406 406
     public function send_customer_payment_reminder( $args ) {
407
-		$sent = getpaid()->get( 'invoice_emails' )->force_send_overdue_notice( new WPInv_Invoice( $args['invoice_id'] ) );
407
+        $sent = getpaid()->get( 'invoice_emails' )->force_send_overdue_notice( new WPInv_Invoice( $args['invoice_id'] ) );
408 408
 
409
-		if ( $sent ) {
410
-			$this->show_success( __( 'Payment reminder was successfully sent to the customer', 'invoicing' ) );
411
-		} else {
412
-			$this->show_error( __( 'Could not sent payment reminder to the customer', 'invoicing' ) );
413
-		}
409
+        if ( $sent ) {
410
+            $this->show_success( __( 'Payment reminder was successfully sent to the customer', 'invoicing' ) );
411
+        } else {
412
+            $this->show_error( __( 'Could not sent payment reminder to the customer', 'invoicing' ) );
413
+        }
414 414
 
415
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce', 'invoice_id' ) ) );
416
-		exit;
417
-	}
415
+        wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce', 'invoice_id' ) ) );
416
+        exit;
417
+    }
418 418
 
419
-	/**
419
+    /**
420 420
      * Resets tax rates.
421
-	 * 
421
+     * 
422 422
      */
423 423
     public function admin_reset_tax_rates() {
424 424
 
425
-		update_option( 'wpinv_tax_rates', wpinv_get_data( 'tax-rates' ) );
426
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
427
-		exit;
425
+        update_option( 'wpinv_tax_rates', wpinv_get_data( 'tax-rates' ) );
426
+        wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
427
+        exit;
428 428
 
429
-	}
429
+    }
430 430
 
431
-	/**
431
+    /**
432 432
      * Resets admin pages.
433
-	 * 
433
+     * 
434 434
      */
435 435
     public function admin_create_missing_pages() {
436
-		$installer = new GetPaid_Installer();
437
-		$installer->create_pages();
438
-		$this->show_success( __( 'GetPaid pages updated.', 'invoicing' ) );
439
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
440
-		exit;
441
-	}
442
-
443
-	/**
436
+        $installer = new GetPaid_Installer();
437
+        $installer->create_pages();
438
+        $this->show_success( __( 'GetPaid pages updated.', 'invoicing' ) );
439
+        wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
440
+        exit;
441
+    }
442
+
443
+    /**
444 444
      * Creates an missing admin tables.
445
-	 * 
445
+     * 
446 446
      */
447 447
     public function admin_create_missing_tables() {
448
-		global $wpdb;
449
-		$installer = new GetPaid_Installer();
448
+        global $wpdb;
449
+        $installer = new GetPaid_Installer();
450 450
 
451
-		if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}wpinv_subscriptions'" ) != $wpdb->prefix . 'wpinv_subscriptions' ) {
452
-			$installer->create_subscriptions_table();
451
+        if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}wpinv_subscriptions'" ) != $wpdb->prefix . 'wpinv_subscriptions' ) {
452
+            $installer->create_subscriptions_table();
453 453
 
454
-			if ( $wpdb->last_error !== '' ) {
455
-				$this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
456
-			}
457
-		}
454
+            if ( $wpdb->last_error !== '' ) {
455
+                $this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
456
+            }
457
+        }
458 458
 
459
-		if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}getpaid_invoices'" ) != $wpdb->prefix . 'getpaid_invoices' ) {
460
-			$installer->create_invoices_table();
459
+        if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}getpaid_invoices'" ) != $wpdb->prefix . 'getpaid_invoices' ) {
460
+            $installer->create_invoices_table();
461 461
 
462
-			if ( $wpdb->last_error !== '' ) {
463
-				$this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
464
-			}
465
-		}
462
+            if ( $wpdb->last_error !== '' ) {
463
+                $this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
464
+            }
465
+        }
466 466
 
467
-		if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}getpaid_invoice_items'" ) != $wpdb->prefix . 'getpaid_invoice_items' ) {
468
-			$installer->create_invoice_items_table();
467
+        if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}getpaid_invoice_items'" ) != $wpdb->prefix . 'getpaid_invoice_items' ) {
468
+            $installer->create_invoice_items_table();
469 469
 
470
-			if ( $wpdb->last_error !== '' ) {
471
-				$this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
472
-			}
473
-		}
470
+            if ( $wpdb->last_error !== '' ) {
471
+                $this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
472
+            }
473
+        }
474 474
 
475
-		if ( ! $this->has_notices() ) {
476
-			$this->show_success( __( 'Your GetPaid tables have been updated.', 'invoicing' ) );
477
-		}
475
+        if ( ! $this->has_notices() ) {
476
+            $this->show_success( __( 'Your GetPaid tables have been updated.', 'invoicing' ) );
477
+        }
478 478
 
479
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
480
-		exit;
481
-	}
479
+        wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
480
+        exit;
481
+    }
482 482
 
483
-	/**
483
+    /**
484 484
      * Migrates old invoices to the new database tables.
485
-	 * 
485
+     * 
486 486
      */
487 487
     public function admin_migrate_old_invoices() {
488 488
 
489
-		// Migrate the invoices.
490
-		$installer = new GetPaid_Installer();
491
-		$installer->migrate_old_invoices();
489
+        // Migrate the invoices.
490
+        $installer = new GetPaid_Installer();
491
+        $installer->migrate_old_invoices();
492 492
 
493
-		// Show an admin message.
494
-		$this->show_success( __( 'Your invoices have been migrated.', 'invoicing' ) );
493
+        // Show an admin message.
494
+        $this->show_success( __( 'Your invoices have been migrated.', 'invoicing' ) );
495 495
 
496
-		// Redirect the admin.
497
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
498
-		exit;
496
+        // Redirect the admin.
497
+        wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
498
+        exit;
499 499
 
500
-	}
500
+    }
501 501
 
502
-	/**
502
+    /**
503 503
      * Recalculates discounts.
504
-	 * 
504
+     * 
505 505
      */
506 506
     public function admin_recalculate_discounts() {
507
-		global $wpdb;
507
+        global $wpdb;
508 508
 
509
-		// Fetch all invoices that have discount codes.
510
-		$table    = $wpdb->prefix . 'getpaid_invoices';
511
-		$invoices = $wpdb->get_col( "SELECT `post_id` FROM `$table` WHERE `discount` = 0 && `discount_code` <> ''" );
509
+        // Fetch all invoices that have discount codes.
510
+        $table    = $wpdb->prefix . 'getpaid_invoices';
511
+        $invoices = $wpdb->get_col( "SELECT `post_id` FROM `$table` WHERE `discount` = 0 && `discount_code` <> ''" );
512 512
 
513
-		foreach ( $invoices as $invoice ) {
513
+        foreach ( $invoices as $invoice ) {
514 514
 
515
-			$invoice = new WPInv_Invoice( $invoice );
515
+            $invoice = new WPInv_Invoice( $invoice );
516 516
 
517
-			if ( ! $invoice->exists() ) {
518
-				continue;
519
-			}
517
+            if ( ! $invoice->exists() ) {
518
+                continue;
519
+            }
520 520
 
521
-			// Abort if the discount does not exist or does not apply here.
522
-			$discount = new WPInv_Discount( $invoice->get_discount_code() );
523
-			if ( ! $discount->exists() ) {
524
-				continue;
525
-			}
521
+            // Abort if the discount does not exist or does not apply here.
522
+            $discount = new WPInv_Discount( $invoice->get_discount_code() );
523
+            if ( ! $discount->exists() ) {
524
+                continue;
525
+            }
526 526
 
527
-			$invoice->add_discount( getpaid_calculate_invoice_discount( $invoice, $discount ) );
528
-			$invoice->recalculate_total();
527
+            $invoice->add_discount( getpaid_calculate_invoice_discount( $invoice, $discount ) );
528
+            $invoice->recalculate_total();
529 529
 
530
-			if ( $invoice->get_total_discount() > 0 ) {
531
-				$invoice->save();
532
-			}
530
+            if ( $invoice->get_total_discount() > 0 ) {
531
+                $invoice->save();
532
+            }
533 533
 
534
-		}
534
+        }
535 535
 
536
-		// Show an admin message.
537
-		$this->show_success( __( 'Discounts have been recalculated.', 'invoicing' ) );
536
+        // Show an admin message.
537
+        $this->show_success( __( 'Discounts have been recalculated.', 'invoicing' ) );
538 538
 
539
-		// Redirect the admin.
540
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
541
-		exit;
539
+        // Redirect the admin.
540
+        wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
541
+        exit;
542 542
 
543
-	}
543
+    }
544 544
 
545 545
     /**
546
-	 * Returns an array of admin notices.
547
-	 *
548
-	 * @since       1.0.19
546
+     * Returns an array of admin notices.
547
+     *
548
+     * @since       1.0.19
549 549
      * @return array
550
-	 */
551
-	public function get_notices() {
552
-		$notices = get_option( 'wpinv_admin_notices' );
550
+     */
551
+    public function get_notices() {
552
+        $notices = get_option( 'wpinv_admin_notices' );
553 553
         return is_array( $notices ) ? $notices : array();
554
-	}
554
+    }
555 555
 
556
-	/**
557
-	 * Checks if we have any admin notices.
558
-	 *
559
-	 * @since       2.0.4
556
+    /**
557
+     * Checks if we have any admin notices.
558
+     *
559
+     * @since       2.0.4
560 560
      * @return array
561
-	 */
562
-	public function has_notices() {
563
-		return count( $this->get_notices() ) > 0;
564
-	}
565
-
566
-	/**
567
-	 * Clears all admin notices
568
-	 *
569
-	 * @access      public
570
-	 * @since       1.0.19
571
-	 */
572
-	public function clear_notices() {
573
-		delete_option( 'wpinv_admin_notices' );
574
-	}
575
-
576
-	/**
577
-	 * Saves a new admin notice
578
-	 *
579
-	 * @access      public
580
-	 * @since       1.0.19
581
-	 */
582
-	public function save_notice( $type, $message ) {
583
-		$notices = $this->get_notices();
584
-
585
-		if ( empty( $notices[ $type ] ) || ! is_array( $notices[ $type ]) ) {
586
-			$notices[ $type ] = array();
587
-		}
588
-
589
-		$notices[ $type ][] = $message;
590
-
591
-		update_option( 'wpinv_admin_notices', $notices );
592
-	}
593
-
594
-	/**
595
-	 * Displays a success notice
596
-	 *
597
-	 * @param       string $msg The message to qeue.
598
-	 * @access      public
599
-	 * @since       1.0.19
600
-	 */
601
-	public function show_success( $msg ) {
602
-		$this->save_notice( 'success', $msg );
603
-	}
604
-
605
-	/**
606
-	 * Displays a error notice
607
-	 *
608
-	 * @access      public
609
-	 * @param       string $msg The message to qeue.
610
-	 * @since       1.0.19
611
-	 */
612
-	public function show_error( $msg ) {
613
-		$this->save_notice( 'error', $msg );
614
-	}
615
-
616
-	/**
617
-	 * Displays a warning notice
618
-	 *
619
-	 * @access      public
620
-	 * @param       string $msg The message to qeue.
621
-	 * @since       1.0.19
622
-	 */
623
-	public function show_warning( $msg ) {
624
-		$this->save_notice( 'warning', $msg );
625
-	}
626
-
627
-	/**
628
-	 * Displays a info notice
629
-	 *
630
-	 * @access      public
631
-	 * @param       string $msg The message to qeue.
632
-	 * @since       1.0.19
633
-	 */
634
-	public function show_info( $msg ) {
635
-		$this->save_notice( 'info', $msg );
636
-	}
637
-
638
-	/**
639
-	 * Show notices
640
-	 *
641
-	 * @access      public
642
-	 * @since       1.0.19
643
-	 */
644
-	public function show_notices() {
561
+     */
562
+    public function has_notices() {
563
+        return count( $this->get_notices() ) > 0;
564
+    }
565
+
566
+    /**
567
+     * Clears all admin notices
568
+     *
569
+     * @access      public
570
+     * @since       1.0.19
571
+     */
572
+    public function clear_notices() {
573
+        delete_option( 'wpinv_admin_notices' );
574
+    }
575
+
576
+    /**
577
+     * Saves a new admin notice
578
+     *
579
+     * @access      public
580
+     * @since       1.0.19
581
+     */
582
+    public function save_notice( $type, $message ) {
583
+        $notices = $this->get_notices();
584
+
585
+        if ( empty( $notices[ $type ] ) || ! is_array( $notices[ $type ]) ) {
586
+            $notices[ $type ] = array();
587
+        }
588
+
589
+        $notices[ $type ][] = $message;
590
+
591
+        update_option( 'wpinv_admin_notices', $notices );
592
+    }
593
+
594
+    /**
595
+     * Displays a success notice
596
+     *
597
+     * @param       string $msg The message to qeue.
598
+     * @access      public
599
+     * @since       1.0.19
600
+     */
601
+    public function show_success( $msg ) {
602
+        $this->save_notice( 'success', $msg );
603
+    }
604
+
605
+    /**
606
+     * Displays a error notice
607
+     *
608
+     * @access      public
609
+     * @param       string $msg The message to qeue.
610
+     * @since       1.0.19
611
+     */
612
+    public function show_error( $msg ) {
613
+        $this->save_notice( 'error', $msg );
614
+    }
615
+
616
+    /**
617
+     * Displays a warning notice
618
+     *
619
+     * @access      public
620
+     * @param       string $msg The message to qeue.
621
+     * @since       1.0.19
622
+     */
623
+    public function show_warning( $msg ) {
624
+        $this->save_notice( 'warning', $msg );
625
+    }
626
+
627
+    /**
628
+     * Displays a info notice
629
+     *
630
+     * @access      public
631
+     * @param       string $msg The message to qeue.
632
+     * @since       1.0.19
633
+     */
634
+    public function show_info( $msg ) {
635
+        $this->save_notice( 'info', $msg );
636
+    }
637
+
638
+    /**
639
+     * Show notices
640
+     *
641
+     * @access      public
642
+     * @since       1.0.19
643
+     */
644
+    public function show_notices() {
645 645
 
646 646
         $notices = $this->get_notices();
647 647
         $this->clear_notices();
648 648
 
649
-		foreach ( $notices as $type => $messages ) {
649
+        foreach ( $notices as $type => $messages ) {
650 650
 
651
-			if ( ! is_array( $messages ) ) {
652
-				continue;
653
-			}
651
+            if ( ! is_array( $messages ) ) {
652
+                continue;
653
+            }
654 654
 
655 655
             $type  = sanitize_key( $type );
656
-			foreach ( $messages as $message ) {
656
+            foreach ( $messages as $message ) {
657 657
                 $message = wp_kses_post( $message );
658
-				echo "<div class='notice notice-$type is-dismissible'><p>$message</p></div>";
658
+                echo "<div class='notice notice-$type is-dismissible'><p>$message</p></div>";
659
+            }
660
+
661
+        }
662
+
663
+        foreach ( array( 'checkout_page', 'invoice_history_page', 'success_page', 'failure_page', 'invoice_subscription_page' ) as $page ) {
664
+
665
+            if ( ! is_numeric( wpinv_get_option( $page, false ) ) ) {
666
+                $url     = esc_url(
667
+                    wp_nonce_url(
668
+                        add_query_arg( 'getpaid-admin-action', 'create_missing_pages' ),
669
+                        'getpaid-nonce',
670
+                        'getpaid-nonce'
671
+                    )
672
+                );
673
+                $message  = __( 'Some GetPaid pages are missing. To use GetPaid without any issues, click the button below to generate the missing pages.', 'invoicing' );
674
+                $message2 = __( 'Generate Pages', 'invoicing' );
675
+                echo "<div class='notice notice-warning is-dismissible'><p>$message<br><br><a href='$url' class='button button-primary'>$message2</a></p></div>";
676
+                break;
659 677
             }
660 678
 
661 679
         }
662 680
 
663
-		foreach ( array( 'checkout_page', 'invoice_history_page', 'success_page', 'failure_page', 'invoice_subscription_page' ) as $page ) {
664
-
665
-			if ( ! is_numeric( wpinv_get_option( $page, false ) ) ) {
666
-				$url     = esc_url(
667
-					wp_nonce_url(
668
-						add_query_arg( 'getpaid-admin-action', 'create_missing_pages' ),
669
-						'getpaid-nonce',
670
-						'getpaid-nonce'
671
-					)
672
-				);
673
-				$message  = __( 'Some GetPaid pages are missing. To use GetPaid without any issues, click the button below to generate the missing pages.', 'invoicing' );
674
-				$message2 = __( 'Generate Pages', 'invoicing' );
675
-				echo "<div class='notice notice-warning is-dismissible'><p>$message<br><br><a href='$url' class='button button-primary'>$message2</a></p></div>";
676
-				break;
677
-			}
678
-
679
-		}
680
-
681
-	}
681
+    }
682 682
 
683 683
 }
Please login to merge, or discard this patch.
Spacing   +186 added lines, -186 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
  * The main admin class.
@@ -37,13 +37,13 @@  discard block
 block discarded – undo
37 37
     /**
38 38
 	 * Class constructor.
39 39
 	 */
40
-	public function __construct(){
40
+	public function __construct() {
41 41
 
42
-        $this->admin_path  = plugin_dir_path( __FILE__ );
43
-		$this->admin_url   = plugins_url( '/', __FILE__ );
42
+        $this->admin_path = plugin_dir_path(__FILE__);
43
+		$this->admin_url   = plugins_url('/', __FILE__);
44 44
 		$this->reports     = new GetPaid_Reports();
45 45
 
46
-        if ( is_admin() ) {
46
+        if (is_admin()) {
47 47
 			$this->init_admin_hooks();
48 48
         }
49 49
 
@@ -54,22 +54,22 @@  discard block
 block discarded – undo
54 54
 	 *
55 55
 	 */
56 56
 	private function init_admin_hooks() {
57
-        add_action( 'admin_enqueue_scripts', array( $this, 'enqeue_scripts' ) );
58
-        add_filter( 'admin_body_class', array( $this, 'admin_body_class' ) );
59
-        add_action( 'admin_init', array( $this, 'init_ayecode_connect_helper' ) );
60
-        add_action( 'admin_init', array( $this, 'activation_redirect') );
61
-        add_action( 'admin_init', array( $this, 'maybe_do_admin_action') );
62
-		add_action( 'admin_notices', array( $this, 'show_notices' ) );
63
-		add_action( 'getpaid_authenticated_admin_action_rate_plugin', array( $this, 'redirect_to_wordpress_rating_page' ) );
64
-		add_action( 'getpaid_authenticated_admin_action_send_invoice', array( $this, 'send_customer_invoice' ) );
65
-		add_action( 'getpaid_authenticated_admin_action_send_invoice_reminder', array( $this, 'send_customer_payment_reminder' ) );
66
-        add_action( 'getpaid_authenticated_admin_action_reset_tax_rates', array( $this, 'admin_reset_tax_rates' ) );
67
-		add_action( 'getpaid_authenticated_admin_action_create_missing_pages', array( $this, 'admin_create_missing_pages' ) );
68
-		add_action( 'getpaid_authenticated_admin_action_create_missing_tables', array( $this, 'admin_create_missing_tables' ) );
69
-		add_action( 'getpaid_authenticated_admin_action_migrate_old_invoices', array( $this, 'admin_migrate_old_invoices' ) );
70
-		add_action( 'getpaid_authenticated_admin_action_recalculate_discounts', array( $this, 'admin_recalculate_discounts' ) );
71
-		add_filter( 'admin_footer_text', array( $this, 'admin_footer_text' ) );
72
-		do_action( 'getpaid_init_admin_hooks', $this );
57
+        add_action('admin_enqueue_scripts', array($this, 'enqeue_scripts'));
58
+        add_filter('admin_body_class', array($this, 'admin_body_class'));
59
+        add_action('admin_init', array($this, 'init_ayecode_connect_helper'));
60
+        add_action('admin_init', array($this, 'activation_redirect'));
61
+        add_action('admin_init', array($this, 'maybe_do_admin_action'));
62
+		add_action('admin_notices', array($this, 'show_notices'));
63
+		add_action('getpaid_authenticated_admin_action_rate_plugin', array($this, 'redirect_to_wordpress_rating_page'));
64
+		add_action('getpaid_authenticated_admin_action_send_invoice', array($this, 'send_customer_invoice'));
65
+		add_action('getpaid_authenticated_admin_action_send_invoice_reminder', array($this, 'send_customer_payment_reminder'));
66
+        add_action('getpaid_authenticated_admin_action_reset_tax_rates', array($this, 'admin_reset_tax_rates'));
67
+		add_action('getpaid_authenticated_admin_action_create_missing_pages', array($this, 'admin_create_missing_pages'));
68
+		add_action('getpaid_authenticated_admin_action_create_missing_tables', array($this, 'admin_create_missing_tables'));
69
+		add_action('getpaid_authenticated_admin_action_migrate_old_invoices', array($this, 'admin_migrate_old_invoices'));
70
+		add_action('getpaid_authenticated_admin_action_recalculate_discounts', array($this, 'admin_recalculate_discounts'));
71
+		add_filter('admin_footer_text', array($this, 'admin_footer_text'));
72
+		do_action('getpaid_init_admin_hooks', $this);
73 73
 
74 74
     }
75 75
 
@@ -80,37 +80,37 @@  discard block
 block discarded – undo
80 80
 	public function enqeue_scripts() {
81 81
         global $current_screen, $pagenow;
82 82
 
83
-		$page    = isset( $_GET['page'] ) ? $_GET['page'] : '';
83
+		$page    = isset($_GET['page']) ? $_GET['page'] : '';
84 84
 		$editing = $pagenow == 'post.php' || $pagenow == 'post-new.php';
85 85
 
86
-        if ( ! empty( $current_screen->post_type ) ) {
86
+        if (!empty($current_screen->post_type)) {
87 87
 			$page = $current_screen->post_type;
88 88
         }
89 89
 
90 90
         // General styles.
91
-        if ( false !== stripos( $page, 'wpi' ) ) {
91
+        if (false !== stripos($page, 'wpi')) {
92 92
 
93 93
             // Styles.
94
-            $version = filemtime( WPINV_PLUGIN_DIR . 'assets/css/admin.css' );
95
-            wp_enqueue_style( 'wpinv_admin_style', WPINV_PLUGIN_URL . 'assets/css/admin.css', array( 'wp-color-picker' ), $version );
96
-            wp_enqueue_style( 'select2', WPINV_PLUGIN_URL . 'assets/css/select2/select2.min.css', array(), '4.0.13', 'all' );
94
+            $version = filemtime(WPINV_PLUGIN_DIR . 'assets/css/admin.css');
95
+            wp_enqueue_style('wpinv_admin_style', WPINV_PLUGIN_URL . 'assets/css/admin.css', array('wp-color-picker'), $version);
96
+            wp_enqueue_style('select2', WPINV_PLUGIN_URL . 'assets/css/select2/select2.min.css', array(), '4.0.13', 'all');
97 97
 
98 98
             // Scripts.
99
-            wp_enqueue_script('select2', WPINV_PLUGIN_URL . 'assets/js/select2/select2.full.min.js', array( 'jquery' ), WPINV_VERSION );
99
+            wp_enqueue_script('select2', WPINV_PLUGIN_URL . 'assets/js/select2/select2.full.min.js', array('jquery'), WPINV_VERSION);
100 100
 
101
-            $version = filemtime( WPINV_PLUGIN_DIR . 'assets/js/admin.js' );
102
-            wp_enqueue_script( 'wpinv-admin-script', WPINV_PLUGIN_URL . 'assets/js/admin.js', array( 'jquery', 'wp-color-picker' ),  $version );
103
-            wp_localize_script( 'wpinv-admin-script', 'WPInv_Admin', apply_filters( 'wpinv_admin_js_localize', $this->get_admin_i18() ) );
101
+            $version = filemtime(WPINV_PLUGIN_DIR . 'assets/js/admin.js');
102
+            wp_enqueue_script('wpinv-admin-script', WPINV_PLUGIN_URL . 'assets/js/admin.js', array('jquery', 'wp-color-picker'), $version);
103
+            wp_localize_script('wpinv-admin-script', 'WPInv_Admin', apply_filters('wpinv_admin_js_localize', $this->get_admin_i18()));
104 104
 
105 105
         }
106 106
 
107 107
         // Payment form scripts.
108
-		if ( 'wpi_payment_form' == $page && $editing ) {
108
+		if ('wpi_payment_form' == $page && $editing) {
109 109
             $this->load_payment_form_scripts();
110 110
         }
111 111
 
112
-		if ( $page == 'wpinv-subscriptions' ) {
113
-			wp_enqueue_script( 'postbox' );
112
+		if ($page == 'wpinv-subscriptions') {
113
+			wp_enqueue_script('postbox');
114 114
 		}
115 115
 
116 116
     }
@@ -123,32 +123,32 @@  discard block
 block discarded – undo
123 123
         global $post;
124 124
 
125 125
 		$date_range = array(
126
-			'period' => isset( $_GET['date_range'] ) ? sanitize_text_field( $_GET['date_range'] ) : '7_days'
126
+			'period' => isset($_GET['date_range']) ? sanitize_text_field($_GET['date_range']) : '7_days'
127 127
 		);
128 128
 
129
-		if ( $date_range['period'] == 'custom' ) {
129
+		if ($date_range['period'] == 'custom') {
130 130
 			
131
-			if ( isset( $_GET['from'] ) ) {
132
-				$date_range[ 'after' ] = date( 'Y-m-d', strtotime( sanitize_text_field( $_GET['from'] ), current_time( 'timestamp' ) ) - DAY_IN_SECONDS );
131
+			if (isset($_GET['from'])) {
132
+				$date_range['after'] = date('Y-m-d', strtotime(sanitize_text_field($_GET['from']), current_time('timestamp')) - DAY_IN_SECONDS);
133 133
 			}
134 134
 
135
-			if ( isset( $_GET['to'] ) ) {
136
-				$date_range[ 'before' ] = date( 'Y-m-d', strtotime( sanitize_text_field( $_GET['to'] ), current_time( 'timestamp' ) ) + DAY_IN_SECONDS );
135
+			if (isset($_GET['to'])) {
136
+				$date_range['before'] = date('Y-m-d', strtotime(sanitize_text_field($_GET['to']), current_time('timestamp')) + DAY_IN_SECONDS);
137 137
 			}
138 138
 
139 139
 		}
140 140
 
141 141
         $i18n = array(
142
-            'ajax_url'                  => admin_url( 'admin-ajax.php' ),
143
-            'post_ID'                   => isset( $post->ID ) ? $post->ID : '',
144
-			'wpinv_nonce'               => wp_create_nonce( 'wpinv-nonce' ),
145
-			'rest_nonce'                => wp_create_nonce( 'wp_rest' ),
146
-			'rest_root'                 => esc_url_raw( rest_url() ),
142
+            'ajax_url'                  => admin_url('admin-ajax.php'),
143
+            'post_ID'                   => isset($post->ID) ? $post->ID : '',
144
+			'wpinv_nonce'               => wp_create_nonce('wpinv-nonce'),
145
+			'rest_nonce'                => wp_create_nonce('wp_rest'),
146
+			'rest_root'                 => esc_url_raw(rest_url()),
147 147
 			'date_range'                => $date_range,
148
-            'add_invoice_note_nonce'    => wp_create_nonce( 'add-invoice-note' ),
149
-            'delete_invoice_note_nonce' => wp_create_nonce( 'delete-invoice-note' ),
150
-            'invoice_item_nonce'        => wp_create_nonce( 'invoice-item' ),
151
-            'billing_details_nonce'     => wp_create_nonce( 'get-billing-details' ),
148
+            'add_invoice_note_nonce'    => wp_create_nonce('add-invoice-note'),
149
+            'delete_invoice_note_nonce' => wp_create_nonce('delete-invoice-note'),
150
+            'invoice_item_nonce'        => wp_create_nonce('invoice-item'),
151
+            'billing_details_nonce'     => wp_create_nonce('get-billing-details'),
152 152
             'tax'                       => wpinv_tax_amount(),
153 153
             'discount'                  => 0,
154 154
 			'currency_symbol'           => wpinv_currency_symbol(),
@@ -157,38 +157,38 @@  discard block
 block discarded – undo
157 157
             'thousand_sep'              => wpinv_thousands_separator(),
158 158
             'decimal_sep'               => wpinv_decimal_separator(),
159 159
             'decimals'                  => wpinv_decimals(),
160
-            'save_invoice'              => __( 'Save Invoice', 'invoicing' ),
161
-            'status_publish'            => wpinv_status_nicename( 'publish' ),
162
-            'status_pending'            => wpinv_status_nicename( 'wpi-pending' ),
163
-            'delete_tax_rate'           => __( 'Are you sure you wish to delete this tax rate?', 'invoicing' ),
164
-            'status_pending'            => wpinv_status_nicename( 'wpi-pending' ),
165
-            'FillBillingDetails'        => __( 'Fill the user\'s billing information? This will remove any currently entered billing information', 'invoicing' ),
166
-            'confirmCalcTotals'         => __( 'Recalculate totals? This will recalculate totals based on the user billing country. If no billing country is set it will use the base country.', 'invoicing' ),
167
-            'AreYouSure'                => __( 'Are you sure?', 'invoicing' ),
168
-            'errDeleteItem'             => __( 'This item is in use! Before delete this item, you need to delete all the invoice(s) using this item.', 'invoicing' ),
169
-            'delete_subscription'       => __( 'Are you sure you want to delete this subscription?', 'invoicing' ),
170
-            'action_edit'               => __( 'Edit', 'invoicing' ),
171
-            'action_cancel'             => __( 'Cancel', 'invoicing' ),
172
-            'item_description'          => __( 'Item Description', 'invoicing' ),
173
-            'invoice_description'       => __( 'Invoice Description', 'invoicing' ),
174
-            'discount_description'      => __( 'Discount Description', 'invoicing' ),
175
-			'searching'                 => __( 'Searching', 'invoicing' ),
176
-			'loading'                   => __( 'Loading...', 'invoicing' ),
177
-			'search_customers'          => __( 'Enter customer name or email', 'invoicing' ),
178
-			'search_items'              => __( 'Enter item name', 'invoicing' ),
160
+            'save_invoice'              => __('Save Invoice', 'invoicing'),
161
+            'status_publish'            => wpinv_status_nicename('publish'),
162
+            'status_pending'            => wpinv_status_nicename('wpi-pending'),
163
+            'delete_tax_rate'           => __('Are you sure you wish to delete this tax rate?', 'invoicing'),
164
+            'status_pending'            => wpinv_status_nicename('wpi-pending'),
165
+            'FillBillingDetails'        => __('Fill the user\'s billing information? This will remove any currently entered billing information', 'invoicing'),
166
+            'confirmCalcTotals'         => __('Recalculate totals? This will recalculate totals based on the user billing country. If no billing country is set it will use the base country.', 'invoicing'),
167
+            'AreYouSure'                => __('Are you sure?', 'invoicing'),
168
+            'errDeleteItem'             => __('This item is in use! Before delete this item, you need to delete all the invoice(s) using this item.', 'invoicing'),
169
+            'delete_subscription'       => __('Are you sure you want to delete this subscription?', 'invoicing'),
170
+            'action_edit'               => __('Edit', 'invoicing'),
171
+            'action_cancel'             => __('Cancel', 'invoicing'),
172
+            'item_description'          => __('Item Description', 'invoicing'),
173
+            'invoice_description'       => __('Invoice Description', 'invoicing'),
174
+            'discount_description'      => __('Discount Description', 'invoicing'),
175
+			'searching'                 => __('Searching', 'invoicing'),
176
+			'loading'                   => __('Loading...', 'invoicing'),
177
+			'search_customers'          => __('Enter customer name or email', 'invoicing'),
178
+			'search_items'              => __('Enter item name', 'invoicing'),
179 179
         );
180 180
 
181
-		if ( ! empty( $post ) && getpaid_is_invoice_post_type( $post->post_type ) ) {
181
+		if (!empty($post) && getpaid_is_invoice_post_type($post->post_type)) {
182 182
 
183
-			$invoice              = new WPInv_Invoice( $post );
183
+			$invoice              = new WPInv_Invoice($post);
184 184
 			$i18n['save_invoice'] = sprintf(
185
-				__( 'Save %s', 'invoicing' ),
186
-				ucfirst( $invoice->get_invoice_quote_type() )
185
+				__('Save %s', 'invoicing'),
186
+				ucfirst($invoice->get_invoice_quote_type())
187 187
 			);
188 188
 
189 189
 			$i18n['invoice_description'] = sprintf(
190
-				__( '%s Description', 'invoicing' ),
191
-				ucfirst( $invoice->get_invoice_quote_type() )
190
+				__('%s Description', 'invoicing'),
191
+				ucfirst($invoice->get_invoice_quote_type())
192 192
 			);
193 193
 
194 194
 		}
@@ -202,24 +202,24 @@  discard block
 block discarded – undo
202 202
 	 * @param  string $footer_text
203 203
 	 * @return string
204 204
 	 */
205
-	public function admin_footer_text( $footer_text ) {
205
+	public function admin_footer_text($footer_text) {
206 206
 		global $current_screen;
207 207
 
208
-		$page    = isset( $_GET['page'] ) ? $_GET['page'] : '';
208
+		$page = isset($_GET['page']) ? $_GET['page'] : '';
209 209
 
210
-        if ( ! empty( $current_screen->post_type ) ) {
210
+        if (!empty($current_screen->post_type)) {
211 211
 			$page = $current_screen->post_type;
212 212
         }
213 213
 
214 214
         // General styles.
215
-        if ( apply_filters( 'getpaid_display_admin_footer_text', wpinv_current_user_can_manage_invoicing() ) && false !== stripos( $page, 'wpi' ) ) {
215
+        if (apply_filters('getpaid_display_admin_footer_text', wpinv_current_user_can_manage_invoicing()) && false !== stripos($page, 'wpi')) {
216 216
 
217 217
 			// Change the footer text
218
-			if ( ! get_user_meta( get_current_user_id(), 'getpaid_admin_footer_text_rated', true ) ) {
218
+			if (!get_user_meta(get_current_user_id(), 'getpaid_admin_footer_text_rated', true)) {
219 219
 
220
-				$rating_url  = esc_url(
220
+				$rating_url = esc_url(
221 221
 					wp_nonce_url(
222
-						admin_url( 'admin.php?page=wpinv-reports&getpaid-admin-action=rate_plugin' ),
222
+						admin_url('admin.php?page=wpinv-reports&getpaid-admin-action=rate_plugin'),
223 223
 						'getpaid-nonce',
224 224
 						'getpaid-nonce'
225 225
 						)
@@ -227,7 +227,7 @@  discard block
 block discarded – undo
227 227
 
228 228
 				$footer_text = sprintf(
229 229
 					/* translators: %s: five stars */
230
-					__( 'If you like <strong>GetPaid</strong>, please leave us a %s rating. A huge thanks in advance!', 'invoicing' ),
230
+					__('If you like <strong>GetPaid</strong>, please leave us a %s rating. A huge thanks in advance!', 'invoicing'),
231 231
 					"<a href='$rating_url'>&#9733;&#9733;&#9733;&#9733;&#9733;</a>"
232 232
 				);
233 233
 
@@ -235,7 +235,7 @@  discard block
 block discarded – undo
235 235
 
236 236
 				$footer_text = sprintf(
237 237
 					/* translators: %s: GetPaid */
238
-					__( 'Thank you for using %s!', 'invoicing' ),
238
+					__('Thank you for using %s!', 'invoicing'),
239 239
 					"<a href='https://wpgetpaid.com/' target='_blank'><strong>GetPaid</strong></a>"
240 240
 				);
241 241
 
@@ -252,8 +252,8 @@  discard block
 block discarded – undo
252 252
 	 * @since  2.0.0
253 253
 	 */
254 254
 	public function redirect_to_wordpress_rating_page() {
255
-		update_user_meta( get_current_user_id(), 'getpaid_admin_footer_text_rated', 1 );
256
-		wp_redirect( 'https://wordpress.org/support/plugin/invoicing/reviews?rate=5#new-post' );
255
+		update_user_meta(get_current_user_id(), 'getpaid_admin_footer_text_rated', 1);
256
+		wp_redirect('https://wordpress.org/support/plugin/invoicing/reviews?rate=5#new-post');
257 257
 		exit;
258 258
 	}
259 259
 
@@ -264,30 +264,30 @@  discard block
 block discarded – undo
264 264
 	protected function load_payment_form_scripts() {
265 265
         global $post;
266 266
 
267
-        wp_enqueue_script( 'vue', WPINV_PLUGIN_URL . 'assets/js/vue/vue.js', array(), WPINV_VERSION );
268
-		wp_enqueue_script( 'sortable', WPINV_PLUGIN_URL . 'assets/js/sortable.min.js', array(), WPINV_VERSION );
269
-		wp_enqueue_script( 'vue_draggable', WPINV_PLUGIN_URL . 'assets/js/vue/vuedraggable.min.js', array( 'sortable', 'vue' ), WPINV_VERSION );
267
+        wp_enqueue_script('vue', WPINV_PLUGIN_URL . 'assets/js/vue/vue.js', array(), WPINV_VERSION);
268
+		wp_enqueue_script('sortable', WPINV_PLUGIN_URL . 'assets/js/sortable.min.js', array(), WPINV_VERSION);
269
+		wp_enqueue_script('vue_draggable', WPINV_PLUGIN_URL . 'assets/js/vue/vuedraggable.min.js', array('sortable', 'vue'), WPINV_VERSION);
270 270
 
271
-		$version = filemtime( WPINV_PLUGIN_DIR . 'assets/js/admin-payment-forms.js' );
272
-		wp_register_script( 'wpinv-admin-payment-form-script', WPINV_PLUGIN_URL . 'assets/js/admin-payment-forms.js', array( 'wpinv-admin-script', 'vue_draggable' ),  $version );
271
+		$version = filemtime(WPINV_PLUGIN_DIR . 'assets/js/admin-payment-forms.js');
272
+		wp_register_script('wpinv-admin-payment-form-script', WPINV_PLUGIN_URL . 'assets/js/admin-payment-forms.js', array('wpinv-admin-script', 'vue_draggable'), $version);
273 273
 
274 274
 		wp_localize_script(
275 275
             'wpinv-admin-payment-form-script',
276 276
             'wpinvPaymentFormAdmin',
277 277
             array(
278
-				'elements'      => wpinv_get_data( 'payment-form-elements' ),
279
-				'form_elements' => getpaid_get_payment_form_elements( $post->ID ),
278
+				'elements'      => wpinv_get_data('payment-form-elements'),
279
+				'form_elements' => getpaid_get_payment_form_elements($post->ID),
280 280
 				'currency'      => wpinv_currency_symbol(),
281 281
 				'position'      => wpinv_currency_position(),
282 282
 				'decimals'      => (int) wpinv_decimals(),
283 283
 				'thousands_sep' => wpinv_thousands_separator(),
284 284
 				'decimals_sep'  => wpinv_decimal_separator(),
285
-				'form_items'    => gepaid_get_form_items( $post->ID ),
285
+				'form_items'    => gepaid_get_form_items($post->ID),
286 286
 				'is_default'    => $post->ID == wpinv_get_default_payment_form(),
287 287
             )
288 288
         );
289 289
 
290
-        wp_enqueue_script( 'wpinv-admin-payment-form-script' );
290
+        wp_enqueue_script('wpinv-admin-payment-form-script');
291 291
 
292 292
     }
293 293
 
@@ -298,25 +298,25 @@  discard block
 block discarded – undo
298 298
      * @return string
299 299
 	 *
300 300
 	 */
301
-    public function admin_body_class( $classes ) {
301
+    public function admin_body_class($classes) {
302 302
 		global $pagenow, $post, $current_screen;
303 303
 
304 304
 
305
-        $page = isset( $_GET['page'] ) ? $_GET['page'] : '';
305
+        $page = isset($_GET['page']) ? $_GET['page'] : '';
306 306
 
307
-        if ( ! empty( $current_screen->post_type ) ) {
307
+        if (!empty($current_screen->post_type)) {
308 308
 			$page = $current_screen->post_type;
309 309
         }
310 310
 
311
-        if ( false !== stripos( $page, 'wpi' ) ) {
312
-            $classes .= ' wpi-' . sanitize_key( $page );
311
+        if (false !== stripos($page, 'wpi')) {
312
+            $classes .= ' wpi-' . sanitize_key($page);
313 313
         }
314 314
 
315
-        if ( in_array( $page, wpinv_parse_list( 'wpi_invoice wpi_payment_form wpi_quote' ) ) ) {
315
+        if (in_array($page, wpinv_parse_list('wpi_invoice wpi_payment_form wpi_quote'))) {
316 316
             $classes .= ' wpinv-cpt wpinv';
317 317
 		}
318 318
 		
319
-		if ( getpaid_is_invoice_post_type( $page ) ) {
319
+		if (getpaid_is_invoice_post_type($page)) {
320 320
             $classes .= ' getpaid-is-invoice-cpt';
321 321
         }
322 322
 
@@ -326,19 +326,19 @@  discard block
 block discarded – undo
326 326
     /**
327 327
 	 * Maybe show the AyeCode Connect Notice.
328 328
 	 */
329
-	public function init_ayecode_connect_helper(){
329
+	public function init_ayecode_connect_helper() {
330 330
 
331 331
         new AyeCode_Connect_Helper(
332 332
             array(
333
-				'connect_title' => __("WP Invoicing - an AyeCode product!","invoicing"),
334
-				'connect_external'  => __( "Please confirm you wish to connect your site?","invoicing" ),
335
-				'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s","invoicing" ),"<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>","</a>" ),
336
-				'connect_button'    => __("Connect Site","invoicing"),
337
-				'connecting_button'    => __("Connecting...","invoicing"),
338
-				'error_localhost'   => __( "This service will only work with a live domain, not a localhost.","invoicing" ),
339
-				'error'             => __( "Something went wrong, please refresh and try again.","invoicing" ),
333
+				'connect_title' => __("WP Invoicing - an AyeCode product!", "invoicing"),
334
+				'connect_external'  => __("Please confirm you wish to connect your site?", "invoicing"),
335
+				'connect'           => sprintf(__("<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s", "invoicing"), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>"),
336
+				'connect_button'    => __("Connect Site", "invoicing"),
337
+				'connecting_button'    => __("Connecting...", "invoicing"),
338
+				'error_localhost'   => __("This service will only work with a live domain, not a localhost.", "invoicing"),
339
+				'error'             => __("Something went wrong, please refresh and try again.", "invoicing"),
340 340
             ),
341
-            array( 'wpi-addons' )
341
+            array('wpi-addons')
342 342
         );
343 343
 
344 344
     }
@@ -350,20 +350,20 @@  discard block
 block discarded – undo
350 350
 	 */
351 351
 	public function activation_redirect() {
352 352
 
353
-		$redirected = get_option( 'wpinv_redirected_to_settings' );
353
+		$redirected = get_option('wpinv_redirected_to_settings');
354 354
 
355
-		if ( ! empty( $redirected ) || wp_doing_ajax() || ! current_user_can( 'manage_options' ) ) {
355
+		if (!empty($redirected) || wp_doing_ajax() || !current_user_can('manage_options')) {
356 356
 			return;
357 357
 		}
358 358
 
359 359
 		// Bail if activating from network, or bulk
360
-		if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) {
360
+		if (is_network_admin() || isset($_GET['activate-multi'])) {
361 361
 			return;
362 362
 		}
363 363
 
364
-	    update_option( 'wpinv_redirected_to_settings', 1 );
364
+	    update_option('wpinv_redirected_to_settings', 1);
365 365
 
366
-        wp_safe_redirect( admin_url( 'admin.php?page=wpinv-settings&tab=general' ) );
366
+        wp_safe_redirect(admin_url('admin.php?page=wpinv-settings&tab=general'));
367 367
         exit;
368 368
 
369 369
 	}
@@ -373,9 +373,9 @@  discard block
 block discarded – undo
373 373
      */
374 374
     public function maybe_do_admin_action() {
375 375
 
376
-        if ( wpinv_current_user_can_manage_invoicing() && isset( $_REQUEST['getpaid-admin-action'] ) && isset( $_REQUEST['getpaid-nonce'] ) && wp_verify_nonce( $_REQUEST['getpaid-nonce'], 'getpaid-nonce' ) ) {
377
-            $key = sanitize_key( $_REQUEST['getpaid-admin-action'] );
378
-            do_action( "getpaid_authenticated_admin_action_$key", $_REQUEST );
376
+        if (wpinv_current_user_can_manage_invoicing() && isset($_REQUEST['getpaid-admin-action']) && isset($_REQUEST['getpaid-nonce']) && wp_verify_nonce($_REQUEST['getpaid-nonce'], 'getpaid-nonce')) {
377
+            $key = sanitize_key($_REQUEST['getpaid-admin-action']);
378
+            do_action("getpaid_authenticated_admin_action_$key", $_REQUEST);
379 379
         }
380 380
 
381 381
     }
@@ -385,16 +385,16 @@  discard block
 block discarded – undo
385 385
 	 * 
386 386
 	 * @param array $args
387 387
      */
388
-    public function send_customer_invoice( $args ) {
389
-		$sent = getpaid()->get( 'invoice_emails' )->user_invoice( new WPInv_Invoice( $args['invoice_id'] ), true );
388
+    public function send_customer_invoice($args) {
389
+		$sent = getpaid()->get('invoice_emails')->user_invoice(new WPInv_Invoice($args['invoice_id']), true);
390 390
 
391
-		if ( $sent ) {
392
-			$this->show_success( __( 'Invoice was successfully sent to the customer', 'invoicing' ) );
391
+		if ($sent) {
392
+			$this->show_success(__('Invoice was successfully sent to the customer', 'invoicing'));
393 393
 		} else {
394
-			$this->show_error( __( 'Could not send the invoice to the customer', 'invoicing' ) );
394
+			$this->show_error(__('Could not send the invoice to the customer', 'invoicing'));
395 395
 		}
396 396
 
397
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce', 'invoice_id' ) ) );
397
+		wp_safe_redirect(remove_query_arg(array('getpaid-admin-action', 'getpaid-nonce', 'invoice_id')));
398 398
 		exit;
399 399
 	}
400 400
 
@@ -403,16 +403,16 @@  discard block
 block discarded – undo
403 403
 	 * 
404 404
 	 * @param array $args
405 405
      */
406
-    public function send_customer_payment_reminder( $args ) {
407
-		$sent = getpaid()->get( 'invoice_emails' )->force_send_overdue_notice( new WPInv_Invoice( $args['invoice_id'] ) );
406
+    public function send_customer_payment_reminder($args) {
407
+		$sent = getpaid()->get('invoice_emails')->force_send_overdue_notice(new WPInv_Invoice($args['invoice_id']));
408 408
 
409
-		if ( $sent ) {
410
-			$this->show_success( __( 'Payment reminder was successfully sent to the customer', 'invoicing' ) );
409
+		if ($sent) {
410
+			$this->show_success(__('Payment reminder was successfully sent to the customer', 'invoicing'));
411 411
 		} else {
412
-			$this->show_error( __( 'Could not sent payment reminder to the customer', 'invoicing' ) );
412
+			$this->show_error(__('Could not sent payment reminder to the customer', 'invoicing'));
413 413
 		}
414 414
 
415
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce', 'invoice_id' ) ) );
415
+		wp_safe_redirect(remove_query_arg(array('getpaid-admin-action', 'getpaid-nonce', 'invoice_id')));
416 416
 		exit;
417 417
 	}
418 418
 
@@ -422,8 +422,8 @@  discard block
 block discarded – undo
422 422
      */
423 423
     public function admin_reset_tax_rates() {
424 424
 
425
-		update_option( 'wpinv_tax_rates', wpinv_get_data( 'tax-rates' ) );
426
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
425
+		update_option('wpinv_tax_rates', wpinv_get_data('tax-rates'));
426
+		wp_safe_redirect(remove_query_arg(array('getpaid-admin-action', 'getpaid-nonce')));
427 427
 		exit;
428 428
 
429 429
 	}
@@ -435,8 +435,8 @@  discard block
 block discarded – undo
435 435
     public function admin_create_missing_pages() {
436 436
 		$installer = new GetPaid_Installer();
437 437
 		$installer->create_pages();
438
-		$this->show_success( __( 'GetPaid pages updated.', 'invoicing' ) );
439
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
438
+		$this->show_success(__('GetPaid pages updated.', 'invoicing'));
439
+		wp_safe_redirect(remove_query_arg(array('getpaid-admin-action', 'getpaid-nonce')));
440 440
 		exit;
441 441
 	}
442 442
 
@@ -448,35 +448,35 @@  discard block
 block discarded – undo
448 448
 		global $wpdb;
449 449
 		$installer = new GetPaid_Installer();
450 450
 
451
-		if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}wpinv_subscriptions'" ) != $wpdb->prefix . 'wpinv_subscriptions' ) {
451
+		if ($wpdb->get_var("SHOW TABLES LIKE '{$wpdb->prefix}wpinv_subscriptions'") != $wpdb->prefix . 'wpinv_subscriptions') {
452 452
 			$installer->create_subscriptions_table();
453 453
 
454
-			if ( $wpdb->last_error !== '' ) {
455
-				$this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
454
+			if ($wpdb->last_error !== '') {
455
+				$this->show_error(__('Your GetPaid tables have been updated:', 'invoicing') . ' ' . $wpdb->last_error);
456 456
 			}
457 457
 		}
458 458
 
459
-		if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}getpaid_invoices'" ) != $wpdb->prefix . 'getpaid_invoices' ) {
459
+		if ($wpdb->get_var("SHOW TABLES LIKE '{$wpdb->prefix}getpaid_invoices'") != $wpdb->prefix . 'getpaid_invoices') {
460 460
 			$installer->create_invoices_table();
461 461
 
462
-			if ( $wpdb->last_error !== '' ) {
463
-				$this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
462
+			if ($wpdb->last_error !== '') {
463
+				$this->show_error(__('Your GetPaid tables have been updated:', 'invoicing') . ' ' . $wpdb->last_error);
464 464
 			}
465 465
 		}
466 466
 
467
-		if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->prefix}getpaid_invoice_items'" ) != $wpdb->prefix . 'getpaid_invoice_items' ) {
467
+		if ($wpdb->get_var("SHOW TABLES LIKE '{$wpdb->prefix}getpaid_invoice_items'") != $wpdb->prefix . 'getpaid_invoice_items') {
468 468
 			$installer->create_invoice_items_table();
469 469
 
470
-			if ( $wpdb->last_error !== '' ) {
471
-				$this->show_error( __( 'Your GetPaid tables have been updated:', 'invoicing' ) . ' ' . $wpdb->last_error );
470
+			if ($wpdb->last_error !== '') {
471
+				$this->show_error(__('Your GetPaid tables have been updated:', 'invoicing') . ' ' . $wpdb->last_error);
472 472
 			}
473 473
 		}
474 474
 
475
-		if ( ! $this->has_notices() ) {
476
-			$this->show_success( __( 'Your GetPaid tables have been updated.', 'invoicing' ) );
475
+		if (!$this->has_notices()) {
476
+			$this->show_success(__('Your GetPaid tables have been updated.', 'invoicing'));
477 477
 		}
478 478
 
479
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
479
+		wp_safe_redirect(remove_query_arg(array('getpaid-admin-action', 'getpaid-nonce')));
480 480
 		exit;
481 481
 	}
482 482
 
@@ -491,10 +491,10 @@  discard block
 block discarded – undo
491 491
 		$installer->migrate_old_invoices();
492 492
 
493 493
 		// Show an admin message.
494
-		$this->show_success( __( 'Your invoices have been migrated.', 'invoicing' ) );
494
+		$this->show_success(__('Your invoices have been migrated.', 'invoicing'));
495 495
 
496 496
 		// Redirect the admin.
497
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
497
+		wp_safe_redirect(remove_query_arg(array('getpaid-admin-action', 'getpaid-nonce')));
498 498
 		exit;
499 499
 
500 500
 	}
@@ -508,36 +508,36 @@  discard block
 block discarded – undo
508 508
 
509 509
 		// Fetch all invoices that have discount codes.
510 510
 		$table    = $wpdb->prefix . 'getpaid_invoices';
511
-		$invoices = $wpdb->get_col( "SELECT `post_id` FROM `$table` WHERE `discount` = 0 && `discount_code` <> ''" );
511
+		$invoices = $wpdb->get_col("SELECT `post_id` FROM `$table` WHERE `discount` = 0 && `discount_code` <> ''");
512 512
 
513
-		foreach ( $invoices as $invoice ) {
513
+		foreach ($invoices as $invoice) {
514 514
 
515
-			$invoice = new WPInv_Invoice( $invoice );
515
+			$invoice = new WPInv_Invoice($invoice);
516 516
 
517
-			if ( ! $invoice->exists() ) {
517
+			if (!$invoice->exists()) {
518 518
 				continue;
519 519
 			}
520 520
 
521 521
 			// Abort if the discount does not exist or does not apply here.
522
-			$discount = new WPInv_Discount( $invoice->get_discount_code() );
523
-			if ( ! $discount->exists() ) {
522
+			$discount = new WPInv_Discount($invoice->get_discount_code());
523
+			if (!$discount->exists()) {
524 524
 				continue;
525 525
 			}
526 526
 
527
-			$invoice->add_discount( getpaid_calculate_invoice_discount( $invoice, $discount ) );
527
+			$invoice->add_discount(getpaid_calculate_invoice_discount($invoice, $discount));
528 528
 			$invoice->recalculate_total();
529 529
 
530
-			if ( $invoice->get_total_discount() > 0 ) {
530
+			if ($invoice->get_total_discount() > 0) {
531 531
 				$invoice->save();
532 532
 			}
533 533
 
534 534
 		}
535 535
 
536 536
 		// Show an admin message.
537
-		$this->show_success( __( 'Discounts have been recalculated.', 'invoicing' ) );
537
+		$this->show_success(__('Discounts have been recalculated.', 'invoicing'));
538 538
 
539 539
 		// Redirect the admin.
540
-		wp_safe_redirect( remove_query_arg( array( 'getpaid-admin-action', 'getpaid-nonce' ) ) );
540
+		wp_safe_redirect(remove_query_arg(array('getpaid-admin-action', 'getpaid-nonce')));
541 541
 		exit;
542 542
 
543 543
 	}
@@ -549,8 +549,8 @@  discard block
 block discarded – undo
549 549
      * @return array
550 550
 	 */
551 551
 	public function get_notices() {
552
-		$notices = get_option( 'wpinv_admin_notices' );
553
-        return is_array( $notices ) ? $notices : array();
552
+		$notices = get_option('wpinv_admin_notices');
553
+        return is_array($notices) ? $notices : array();
554 554
 	}
555 555
 
556 556
 	/**
@@ -560,7 +560,7 @@  discard block
 block discarded – undo
560 560
      * @return array
561 561
 	 */
562 562
 	public function has_notices() {
563
-		return count( $this->get_notices() ) > 0;
563
+		return count($this->get_notices()) > 0;
564 564
 	}
565 565
 
566 566
 	/**
@@ -570,7 +570,7 @@  discard block
 block discarded – undo
570 570
 	 * @since       1.0.19
571 571
 	 */
572 572
 	public function clear_notices() {
573
-		delete_option( 'wpinv_admin_notices' );
573
+		delete_option('wpinv_admin_notices');
574 574
 	}
575 575
 
576 576
 	/**
@@ -579,16 +579,16 @@  discard block
 block discarded – undo
579 579
 	 * @access      public
580 580
 	 * @since       1.0.19
581 581
 	 */
582
-	public function save_notice( $type, $message ) {
582
+	public function save_notice($type, $message) {
583 583
 		$notices = $this->get_notices();
584 584
 
585
-		if ( empty( $notices[ $type ] ) || ! is_array( $notices[ $type ]) ) {
586
-			$notices[ $type ] = array();
585
+		if (empty($notices[$type]) || !is_array($notices[$type])) {
586
+			$notices[$type] = array();
587 587
 		}
588 588
 
589
-		$notices[ $type ][] = $message;
589
+		$notices[$type][] = $message;
590 590
 
591
-		update_option( 'wpinv_admin_notices', $notices );
591
+		update_option('wpinv_admin_notices', $notices);
592 592
 	}
593 593
 
594 594
 	/**
@@ -598,8 +598,8 @@  discard block
 block discarded – undo
598 598
 	 * @access      public
599 599
 	 * @since       1.0.19
600 600
 	 */
601
-	public function show_success( $msg ) {
602
-		$this->save_notice( 'success', $msg );
601
+	public function show_success($msg) {
602
+		$this->save_notice('success', $msg);
603 603
 	}
604 604
 
605 605
 	/**
@@ -609,8 +609,8 @@  discard block
 block discarded – undo
609 609
 	 * @param       string $msg The message to qeue.
610 610
 	 * @since       1.0.19
611 611
 	 */
612
-	public function show_error( $msg ) {
613
-		$this->save_notice( 'error', $msg );
612
+	public function show_error($msg) {
613
+		$this->save_notice('error', $msg);
614 614
 	}
615 615
 
616 616
 	/**
@@ -620,8 +620,8 @@  discard block
 block discarded – undo
620 620
 	 * @param       string $msg The message to qeue.
621 621
 	 * @since       1.0.19
622 622
 	 */
623
-	public function show_warning( $msg ) {
624
-		$this->save_notice( 'warning', $msg );
623
+	public function show_warning($msg) {
624
+		$this->save_notice('warning', $msg);
625 625
 	}
626 626
 
627 627
 	/**
@@ -631,8 +631,8 @@  discard block
 block discarded – undo
631 631
 	 * @param       string $msg The message to qeue.
632 632
 	 * @since       1.0.19
633 633
 	 */
634
-	public function show_info( $msg ) {
635
-		$this->save_notice( 'info', $msg );
634
+	public function show_info($msg) {
635
+		$this->save_notice('info', $msg);
636 636
 	}
637 637
 
638 638
 	/**
@@ -646,32 +646,32 @@  discard block
 block discarded – undo
646 646
         $notices = $this->get_notices();
647 647
         $this->clear_notices();
648 648
 
649
-		foreach ( $notices as $type => $messages ) {
649
+		foreach ($notices as $type => $messages) {
650 650
 
651
-			if ( ! is_array( $messages ) ) {
651
+			if (!is_array($messages)) {
652 652
 				continue;
653 653
 			}
654 654
 
655
-            $type  = sanitize_key( $type );
656
-			foreach ( $messages as $message ) {
657
-                $message = wp_kses_post( $message );
655
+            $type = sanitize_key($type);
656
+			foreach ($messages as $message) {
657
+                $message = wp_kses_post($message);
658 658
 				echo "<div class='notice notice-$type is-dismissible'><p>$message</p></div>";
659 659
             }
660 660
 
661 661
         }
662 662
 
663
-		foreach ( array( 'checkout_page', 'invoice_history_page', 'success_page', 'failure_page', 'invoice_subscription_page' ) as $page ) {
663
+		foreach (array('checkout_page', 'invoice_history_page', 'success_page', 'failure_page', 'invoice_subscription_page') as $page) {
664 664
 
665
-			if ( ! is_numeric( wpinv_get_option( $page, false ) ) ) {
666
-				$url     = esc_url(
665
+			if (!is_numeric(wpinv_get_option($page, false))) {
666
+				$url = esc_url(
667 667
 					wp_nonce_url(
668
-						add_query_arg( 'getpaid-admin-action', 'create_missing_pages' ),
668
+						add_query_arg('getpaid-admin-action', 'create_missing_pages'),
669 669
 						'getpaid-nonce',
670 670
 						'getpaid-nonce'
671 671
 					)
672 672
 				);
673
-				$message  = __( 'Some GetPaid pages are missing. To use GetPaid without any issues, click the button below to generate the missing pages.', 'invoicing' );
674
-				$message2 = __( 'Generate Pages', 'invoicing' );
673
+				$message  = __('Some GetPaid pages are missing. To use GetPaid without any issues, click the button below to generate the missing pages.', 'invoicing');
674
+				$message2 = __('Generate Pages', 'invoicing');
675 675
 				echo "<div class='notice notice-warning is-dismissible'><p>$message<br><br><a href='$url' class='button button-primary'>$message2</a></p></div>";
676 676
 				break;
677 677
 			}
Please login to merge, or discard this patch.
includes/class-getpaid-invoice-notification-emails.php 2 patches
Indentation   +395 added lines, -395 removed lines patch added patch discarded remove patch
@@ -12,449 +12,449 @@
 block discarded – undo
12 12
  */
13 13
 class GetPaid_Invoice_Notification_Emails {
14 14
 
15
-	/**
16
-	 * The array of invoice email actions.
17
-	 *
18
-	 * @param array
19
-	 */
20
-	public $invoice_actions;
21
-
22
-	/**
23
-	 * Class constructor
24
-	 *
25
-	 */
26
-	public function __construct() {
27
-
28
-		$this->invoice_actions = apply_filters(
29
-			'getpaid_notification_email_invoice_triggers',
30
-			array(
31
-				'getpaid_new_invoice'                   => array( 'new_invoice', 'user_invoice' ),
32
-				'getpaid_invoice_status_wpi-cancelled'  => 'cancelled_invoice',
33
-				'getpaid_invoice_status_wpi-failed'     => 'failed_invoice',
34
-				'getpaid_invoice_status_wpi-onhold'     => 'onhold_invoice',
35
-				'getpaid_invoice_status_wpi-processing' => 'processing_invoice',
36
-				'getpaid_invoice_status_publish'        => 'completed_invoice',
37
-				'getpaid_invoice_status_wpi-renewal'    => 'completed_invoice',
38
-				'getpaid_invoice_status_wpi-refunded'   => 'refunded_invoice',
39
-				'getpaid_new_customer_note'             => 'user_note',
40
-				'getpaid_daily_maintenance'             => 'overdue',
41
-			)
42
-		);
43
-
44
-		$this->init_hooks();
45
-
46
-	}
47
-
48
-	/**
49
-	 * Registers email hooks.
50
-	 */
51
-	public function init_hooks() {
52
-
53
-		add_filter( 'getpaid_get_email_merge_tags', array( $this, 'invoice_merge_tags' ), 10, 2 );
54
-		add_filter( 'getpaid_invoice_email_recipients', array( $this, 'filter_email_recipients' ), 10, 2 );
55
-
56
-		foreach ( $this->invoice_actions as $hook => $email_type ) {
57
-			$this->init_email_type_hook( $hook, $email_type );
58
-		}
59
-	}
60
-
61
-	/**
62
-	 * Registers an email hook for an invoice action.
63
-	 * 
64
-	 * @param string $hook
65
-	 * @param string|array $email_type
66
-	 */
67
-	public function init_email_type_hook( $hook, $email_type ) {
68
-
69
-		$email_type = wpinv_parse_list( $email_type );
70
-
71
-		foreach ( $email_type as $type ) {
72
-
73
-			$email = new GetPaid_Notification_Email( $type );
74
-
75
-			// Abort if it is not active.
76
-			if ( ! $email->is_active() ) {
77
-				continue;
78
-			}
79
-
80
-			if ( method_exists( $this, $type ) ) {
81
-				add_action( $hook, array( $this, $type ), 100, 2 );
82
-				continue;
83
-			}
84
-
85
-			do_action( 'getpaid_invoice_init_email_type_hook', $type, $hook );
86
-		}
87
-
88
-	}
89
-
90
-	/**
91
-	 * Filters invoice merge tags.
92
-	 *
93
-	 * @param array $merge_tags
94
-	 * @param mixed|WPInv_Invoice|WPInv_Subscription $object
95
-	 */
96
-	public function invoice_merge_tags( $merge_tags, $object ) {
97
-
98
-		if ( is_a( $object, 'WPInv_Invoice' ) ) {
99
-			return array_merge(
100
-				$merge_tags,
101
-				$this->get_invoice_merge_tags( $object )
102
-			);
103
-		}
104
-
105
-		if ( is_a( $object, 'WPInv_Subscription' ) ) {
106
-			return array_merge(
107
-				$merge_tags,
108
-				$this->get_invoice_merge_tags( $object->get_parent_payment() )
109
-			);
110
-		}
111
-
112
-		return $merge_tags;
113
-
114
-	}
115
-
116
-	/**
117
-	 * Generates invoice merge tags.
118
-	 *
119
-	 * @param WPInv_Invoice $invoice
120
-	 * @return array
121
-	 */
122
-	public function get_invoice_merge_tags( $invoice ) {
123
-
124
-		// Abort if it does not exist.
125
-		if ( ! $invoice->get_id() ) {
126
-			return array();
127
-		}
128
-
129
-		$merge_tags = array(
130
-			'{name}'                => sanitize_text_field( $invoice->get_user_full_name() ),
131
-			'{full_name}'           => sanitize_text_field( $invoice->get_user_full_name() ),
132
-			'{first_name}'          => sanitize_text_field( $invoice->get_first_name() ),
133
-			'{last_name}'           => sanitize_text_field( $invoice->get_last_name() ),
134
-			'{email}'               => sanitize_email( $invoice->get_email() ),
135
-			'{invoice_number}'      => sanitize_text_field( $invoice->get_number() ),
136
-			'{invoice_currency}'    => sanitize_text_field( $invoice->get_currency() ),
137
-			'{invoice_total}'       => sanitize_text_field( wpinv_price( $invoice->get_total(), $invoice->get_currency() ) ),
138
-			'{invoice_link}'        => esc_url( $invoice->get_view_url() ),
139
-			'{invoice_pay_link}'    => esc_url( $invoice->get_checkout_payment_url() ),
140
-			'{invoice_receipt_link}'=> esc_url( $invoice->get_receipt_url() ),
141
-			'{invoice_date}'        => getpaid_format_date_value( $invoice->get_date_created() ),
142
-			'{invoice_due_date}'    => getpaid_format_date_value( $invoice->get_due_date(), __( 'on receipt', 'invoicing' ) ),
143
-			'{invoice_quote}'       => sanitize_text_field( strtolower( $invoice->get_label() ) ),
144
-			'{invoice_label}'       => sanitize_text_field( ucfirst( $invoice->get_label() ) ),
145
-			'{invoice_description}' => wp_kses_post( $invoice->get_description() ),
146
-			'{subscription_name}'   => wp_kses_post( $invoice->get_subscription_name() ),
147
-			'{is_was}'              => strtotime( $invoice->get_due_date() ) < current_time( 'timestamp' ) ? __( 'was', 'invoicing' ) : __( 'is', 'invoicing' ),
148
-		);
149
-
150
-		return apply_filters( 'getpaid_invoice_email_merge_tags', $merge_tags, $invoice );
151
-	}
152
-
153
-	/**
154
-	 * Helper function to send an email.
155
-	 *
156
-	 * @param WPInv_Invoice $invoice
157
-	 * @param GetPaid_Notification_Email $email
158
-	 * @param string $type
159
-	 * @param string|array $recipients
160
-	 * @param array $extra_args Extra template args.
161
-	 */
162
-	public function send_email( $invoice, $email, $type, $recipients, $extra_args = array() ) {
163
-
164
-		do_action( 'getpaid_before_send_invoice_notification', $type, $invoice, $email );
165
-
166
-		$mailer     = new GetPaid_Notification_Email_Sender();
167
-		$merge_tags = $email->get_merge_tags();
168
-
169
-		$result = $mailer->send(
170
-			apply_filters( 'getpaid_invoice_email_recipients', wpinv_parse_list( $recipients ), $email ),
171
-			$email->add_merge_tags( $email->get_subject(), $merge_tags ),
172
-			$email->get_content( $merge_tags, $extra_args ),
173
-			$email->get_attachments()
174
-		);
175
-
176
-		// Maybe send a copy to the admin.
177
-		if ( $email->include_admin_bcc() ) {
178
-			$mailer->send(
179
-				wpinv_get_admin_email(),
180
-				$email->add_merge_tags( $email->get_subject() . __( ' - ADMIN BCC COPY', 'invoicing' ), $merge_tags ),
181
-				$email->get_content( $merge_tags ),
182
-				$email->get_attachments()
183
-			);
184
-		}
185
-
186
-		if ( ! $result ) {
187
-			$invoice->add_note( sprintf( __( 'Failed sending %s notification email.', 'invoicing' ), sanitize_key( $type ) ), false, false, true );
188
-		}
189
-
190
-		do_action( 'getpaid_after_send_invoice_notification', $type, $invoice, $email );
191
-
192
-		return $result;
193
-	}
194
-
195
-	/**
196
-	 * Also send emails to any cc users.
197
-	 *
198
-	 * @param array $recipients
199
-	 * @param GetPaid_Notification_Email $email
200
-	 */
201
-	public function filter_email_recipients( $recipients, $email ) {
202
-
203
-		if ( ! $email->is_admin_email() ) {
204
-			$cc = $email->object->get_email_cc();
205
-
206
-			if ( ! empty( $cc ) ) {
207
-				$cc = array_map( 'sanitize_email', wpinv_parse_list( $cc ) );
208
-				$recipients = array_filter( array_unique( array_merge( $recipients, $cc ) ) );
209
-			}
210
-
211
-		}
212
-
213
-		return $recipients;
214
-
215
-	}
216
-
217
-	/**
218
-	 * Sends a new invoice notification.
219
-	 *
220
-	 * @param WPInv_Invoice $invoice
221
-	 */
222
-	public function new_invoice( $invoice ) {
223
-
224
-		// Only send this email for invoices created via the admin page.
225
-		if ( ! $invoice->is_type( 'invoice' ) || $this->is_payment_form_invoice( $invoice->get_id() ) ) {
226
-			return;
227
-		}
228
-
229
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
230
-		$recipient = wpinv_get_admin_email();
231
-
232
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
233
-
234
-	}
235
-
236
-	/**
237
-	 * Sends a cancelled invoice notification.
238
-	 *
239
-	 * @param WPInv_Invoice $invoice
240
-	 */
241
-	public function cancelled_invoice( $invoice ) {
242
-
243
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
244
-		$recipient = wpinv_get_admin_email();
15
+    /**
16
+     * The array of invoice email actions.
17
+     *
18
+     * @param array
19
+     */
20
+    public $invoice_actions;
21
+
22
+    /**
23
+     * Class constructor
24
+     *
25
+     */
26
+    public function __construct() {
27
+
28
+        $this->invoice_actions = apply_filters(
29
+            'getpaid_notification_email_invoice_triggers',
30
+            array(
31
+                'getpaid_new_invoice'                   => array( 'new_invoice', 'user_invoice' ),
32
+                'getpaid_invoice_status_wpi-cancelled'  => 'cancelled_invoice',
33
+                'getpaid_invoice_status_wpi-failed'     => 'failed_invoice',
34
+                'getpaid_invoice_status_wpi-onhold'     => 'onhold_invoice',
35
+                'getpaid_invoice_status_wpi-processing' => 'processing_invoice',
36
+                'getpaid_invoice_status_publish'        => 'completed_invoice',
37
+                'getpaid_invoice_status_wpi-renewal'    => 'completed_invoice',
38
+                'getpaid_invoice_status_wpi-refunded'   => 'refunded_invoice',
39
+                'getpaid_new_customer_note'             => 'user_note',
40
+                'getpaid_daily_maintenance'             => 'overdue',
41
+            )
42
+        );
43
+
44
+        $this->init_hooks();
45
+
46
+    }
47
+
48
+    /**
49
+     * Registers email hooks.
50
+     */
51
+    public function init_hooks() {
52
+
53
+        add_filter( 'getpaid_get_email_merge_tags', array( $this, 'invoice_merge_tags' ), 10, 2 );
54
+        add_filter( 'getpaid_invoice_email_recipients', array( $this, 'filter_email_recipients' ), 10, 2 );
55
+
56
+        foreach ( $this->invoice_actions as $hook => $email_type ) {
57
+            $this->init_email_type_hook( $hook, $email_type );
58
+        }
59
+    }
60
+
61
+    /**
62
+     * Registers an email hook for an invoice action.
63
+     * 
64
+     * @param string $hook
65
+     * @param string|array $email_type
66
+     */
67
+    public function init_email_type_hook( $hook, $email_type ) {
68
+
69
+        $email_type = wpinv_parse_list( $email_type );
70
+
71
+        foreach ( $email_type as $type ) {
72
+
73
+            $email = new GetPaid_Notification_Email( $type );
74
+
75
+            // Abort if it is not active.
76
+            if ( ! $email->is_active() ) {
77
+                continue;
78
+            }
79
+
80
+            if ( method_exists( $this, $type ) ) {
81
+                add_action( $hook, array( $this, $type ), 100, 2 );
82
+                continue;
83
+            }
84
+
85
+            do_action( 'getpaid_invoice_init_email_type_hook', $type, $hook );
86
+        }
87
+
88
+    }
89
+
90
+    /**
91
+     * Filters invoice merge tags.
92
+     *
93
+     * @param array $merge_tags
94
+     * @param mixed|WPInv_Invoice|WPInv_Subscription $object
95
+     */
96
+    public function invoice_merge_tags( $merge_tags, $object ) {
97
+
98
+        if ( is_a( $object, 'WPInv_Invoice' ) ) {
99
+            return array_merge(
100
+                $merge_tags,
101
+                $this->get_invoice_merge_tags( $object )
102
+            );
103
+        }
104
+
105
+        if ( is_a( $object, 'WPInv_Subscription' ) ) {
106
+            return array_merge(
107
+                $merge_tags,
108
+                $this->get_invoice_merge_tags( $object->get_parent_payment() )
109
+            );
110
+        }
111
+
112
+        return $merge_tags;
113
+
114
+    }
115
+
116
+    /**
117
+     * Generates invoice merge tags.
118
+     *
119
+     * @param WPInv_Invoice $invoice
120
+     * @return array
121
+     */
122
+    public function get_invoice_merge_tags( $invoice ) {
123
+
124
+        // Abort if it does not exist.
125
+        if ( ! $invoice->get_id() ) {
126
+            return array();
127
+        }
128
+
129
+        $merge_tags = array(
130
+            '{name}'                => sanitize_text_field( $invoice->get_user_full_name() ),
131
+            '{full_name}'           => sanitize_text_field( $invoice->get_user_full_name() ),
132
+            '{first_name}'          => sanitize_text_field( $invoice->get_first_name() ),
133
+            '{last_name}'           => sanitize_text_field( $invoice->get_last_name() ),
134
+            '{email}'               => sanitize_email( $invoice->get_email() ),
135
+            '{invoice_number}'      => sanitize_text_field( $invoice->get_number() ),
136
+            '{invoice_currency}'    => sanitize_text_field( $invoice->get_currency() ),
137
+            '{invoice_total}'       => sanitize_text_field( wpinv_price( $invoice->get_total(), $invoice->get_currency() ) ),
138
+            '{invoice_link}'        => esc_url( $invoice->get_view_url() ),
139
+            '{invoice_pay_link}'    => esc_url( $invoice->get_checkout_payment_url() ),
140
+            '{invoice_receipt_link}'=> esc_url( $invoice->get_receipt_url() ),
141
+            '{invoice_date}'        => getpaid_format_date_value( $invoice->get_date_created() ),
142
+            '{invoice_due_date}'    => getpaid_format_date_value( $invoice->get_due_date(), __( 'on receipt', 'invoicing' ) ),
143
+            '{invoice_quote}'       => sanitize_text_field( strtolower( $invoice->get_label() ) ),
144
+            '{invoice_label}'       => sanitize_text_field( ucfirst( $invoice->get_label() ) ),
145
+            '{invoice_description}' => wp_kses_post( $invoice->get_description() ),
146
+            '{subscription_name}'   => wp_kses_post( $invoice->get_subscription_name() ),
147
+            '{is_was}'              => strtotime( $invoice->get_due_date() ) < current_time( 'timestamp' ) ? __( 'was', 'invoicing' ) : __( 'is', 'invoicing' ),
148
+        );
149
+
150
+        return apply_filters( 'getpaid_invoice_email_merge_tags', $merge_tags, $invoice );
151
+    }
152
+
153
+    /**
154
+     * Helper function to send an email.
155
+     *
156
+     * @param WPInv_Invoice $invoice
157
+     * @param GetPaid_Notification_Email $email
158
+     * @param string $type
159
+     * @param string|array $recipients
160
+     * @param array $extra_args Extra template args.
161
+     */
162
+    public function send_email( $invoice, $email, $type, $recipients, $extra_args = array() ) {
163
+
164
+        do_action( 'getpaid_before_send_invoice_notification', $type, $invoice, $email );
165
+
166
+        $mailer     = new GetPaid_Notification_Email_Sender();
167
+        $merge_tags = $email->get_merge_tags();
168
+
169
+        $result = $mailer->send(
170
+            apply_filters( 'getpaid_invoice_email_recipients', wpinv_parse_list( $recipients ), $email ),
171
+            $email->add_merge_tags( $email->get_subject(), $merge_tags ),
172
+            $email->get_content( $merge_tags, $extra_args ),
173
+            $email->get_attachments()
174
+        );
175
+
176
+        // Maybe send a copy to the admin.
177
+        if ( $email->include_admin_bcc() ) {
178
+            $mailer->send(
179
+                wpinv_get_admin_email(),
180
+                $email->add_merge_tags( $email->get_subject() . __( ' - ADMIN BCC COPY', 'invoicing' ), $merge_tags ),
181
+                $email->get_content( $merge_tags ),
182
+                $email->get_attachments()
183
+            );
184
+        }
185
+
186
+        if ( ! $result ) {
187
+            $invoice->add_note( sprintf( __( 'Failed sending %s notification email.', 'invoicing' ), sanitize_key( $type ) ), false, false, true );
188
+        }
189
+
190
+        do_action( 'getpaid_after_send_invoice_notification', $type, $invoice, $email );
191
+
192
+        return $result;
193
+    }
194
+
195
+    /**
196
+     * Also send emails to any cc users.
197
+     *
198
+     * @param array $recipients
199
+     * @param GetPaid_Notification_Email $email
200
+     */
201
+    public function filter_email_recipients( $recipients, $email ) {
202
+
203
+        if ( ! $email->is_admin_email() ) {
204
+            $cc = $email->object->get_email_cc();
205
+
206
+            if ( ! empty( $cc ) ) {
207
+                $cc = array_map( 'sanitize_email', wpinv_parse_list( $cc ) );
208
+                $recipients = array_filter( array_unique( array_merge( $recipients, $cc ) ) );
209
+            }
210
+
211
+        }
212
+
213
+        return $recipients;
214
+
215
+    }
216
+
217
+    /**
218
+     * Sends a new invoice notification.
219
+     *
220
+     * @param WPInv_Invoice $invoice
221
+     */
222
+    public function new_invoice( $invoice ) {
223
+
224
+        // Only send this email for invoices created via the admin page.
225
+        if ( ! $invoice->is_type( 'invoice' ) || $this->is_payment_form_invoice( $invoice->get_id() ) ) {
226
+            return;
227
+        }
228
+
229
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
230
+        $recipient = wpinv_get_admin_email();
231
+
232
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
233
+
234
+    }
235
+
236
+    /**
237
+     * Sends a cancelled invoice notification.
238
+     *
239
+     * @param WPInv_Invoice $invoice
240
+     */
241
+    public function cancelled_invoice( $invoice ) {
242
+
243
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
244
+        $recipient = wpinv_get_admin_email();
245 245
 
246
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
246
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
247 247
 
248
-	}
248
+    }
249 249
 
250
-	/**
251
-	 * Sends a failed invoice notification.
252
-	 *
253
-	 * @param WPInv_Invoice $invoice
254
-	 */
255
-	public function failed_invoice( $invoice ) {
250
+    /**
251
+     * Sends a failed invoice notification.
252
+     *
253
+     * @param WPInv_Invoice $invoice
254
+     */
255
+    public function failed_invoice( $invoice ) {
256 256
 
257
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
258
-		$recipient = wpinv_get_admin_email();
257
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
258
+        $recipient = wpinv_get_admin_email();
259 259
 
260
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
260
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
261 261
 
262
-	}
262
+    }
263 263
 
264
-	/**
265
-	 * Sends a notification whenever an invoice is put on hold.
266
-	 *
267
-	 * @param WPInv_Invoice $invoice
268
-	 */
269
-	public function onhold_invoice( $invoice ) {
264
+    /**
265
+     * Sends a notification whenever an invoice is put on hold.
266
+     *
267
+     * @param WPInv_Invoice $invoice
268
+     */
269
+    public function onhold_invoice( $invoice ) {
270 270
 
271
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
272
-		$recipient = $invoice->get_email();
271
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
272
+        $recipient = $invoice->get_email();
273 273
 
274
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
274
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
275 275
 
276
-	}
276
+    }
277 277
 
278
-	/**
279
-	 * Sends a notification whenever an invoice is marked as processing payment.
280
-	 *
281
-	 * @param WPInv_Invoice $invoice
282
-	 */
283
-	public function processing_invoice( $invoice ) {
278
+    /**
279
+     * Sends a notification whenever an invoice is marked as processing payment.
280
+     *
281
+     * @param WPInv_Invoice $invoice
282
+     */
283
+    public function processing_invoice( $invoice ) {
284 284
 
285
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
286
-		$recipient = $invoice->get_email();
285
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
286
+        $recipient = $invoice->get_email();
287 287
 
288
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
288
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
289 289
 
290
-	}
290
+    }
291 291
 
292
-	/**
293
-	 * Sends a notification whenever an invoice is paid.
294
-	 *
295
-	 * @param WPInv_Invoice $invoice
296
-	 */
297
-	public function completed_invoice( $invoice ) {
292
+    /**
293
+     * Sends a notification whenever an invoice is paid.
294
+     *
295
+     * @param WPInv_Invoice $invoice
296
+     */
297
+    public function completed_invoice( $invoice ) {
298 298
 
299
-		// (Maybe) abort if it is a renewal invoice.
300
-		if ( $invoice->is_renewal() && ! wpinv_get_option( 'email_completed_invoice_renewal_active', false ) ) {
301
-			return;
302
-		}
299
+        // (Maybe) abort if it is a renewal invoice.
300
+        if ( $invoice->is_renewal() && ! wpinv_get_option( 'email_completed_invoice_renewal_active', false ) ) {
301
+            return;
302
+        }
303 303
 
304
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
305
-		$recipient = $invoice->get_email();
304
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
305
+        $recipient = $invoice->get_email();
306 306
 
307
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
307
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
308 308
 
309
-	}
309
+    }
310 310
 
311
-	/**
312
-	 * Sends a notification whenever an invoice is refunded.
313
-	 *
314
-	 * @param WPInv_Invoice $invoice
315
-	 */
316
-	public function refunded_invoice( $invoice ) {
311
+    /**
312
+     * Sends a notification whenever an invoice is refunded.
313
+     *
314
+     * @param WPInv_Invoice $invoice
315
+     */
316
+    public function refunded_invoice( $invoice ) {
317 317
 
318
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
319
-		$recipient = $invoice->get_email();
318
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
319
+        $recipient = $invoice->get_email();
320 320
 
321
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
321
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
322 322
 
323
-	}
323
+    }
324 324
 
325
-	/**
326
-	 * Notifies a user about new invoices
327
-	 *
328
-	 * @param WPInv_Invoice $invoice
329
-	 * @param bool $force
330
-	 */
331
-	public function user_invoice( $invoice, $force = false ) {
325
+    /**
326
+     * Notifies a user about new invoices
327
+     *
328
+     * @param WPInv_Invoice $invoice
329
+     * @param bool $force
330
+     */
331
+    public function user_invoice( $invoice, $force = false ) {
332 332
 
333
-		if ( ! empty( $GLOBALS['wpinv_skip_invoice_notification'] ) ) {
334
-			return;
335
-		}
333
+        if ( ! empty( $GLOBALS['wpinv_skip_invoice_notification'] ) ) {
334
+            return;
335
+        }
336 336
 
337
-		// Only send this email for invoices created via the admin page.
338
-		if ( ! $invoice->is_type( 'invoice' ) || ( empty( $force ) && $this->is_payment_form_invoice( $invoice->get_id() ) ) ) {
339
-			return;
340
-		}
337
+        // Only send this email for invoices created via the admin page.
338
+        if ( ! $invoice->is_type( 'invoice' ) || ( empty( $force ) && $this->is_payment_form_invoice( $invoice->get_id() ) ) ) {
339
+            return;
340
+        }
341 341
 
342
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
343
-		$recipient = $invoice->get_email();
342
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
343
+        $recipient = $invoice->get_email();
344 344
 
345
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
345
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
346 346
 
347
-	}
347
+    }
348 348
 
349
-	/**
350
-	 * Checks if an invoice is a payment form invoice.
351
-	 *
352
-	 * @param int $invoice
353
-	 * @return bool
354
-	 */
355
-	public function is_payment_form_invoice( $invoice ) {
356
-		return empty( $_GET['getpaid-admin-action'] ) && ( 'payment_form' == get_post_meta( $invoice, 'wpinv_created_via', true ) || 'geodirectory' == get_post_meta( $invoice, 'wpinv_created_via', true ) );
357
-	}
349
+    /**
350
+     * Checks if an invoice is a payment form invoice.
351
+     *
352
+     * @param int $invoice
353
+     * @return bool
354
+     */
355
+    public function is_payment_form_invoice( $invoice ) {
356
+        return empty( $_GET['getpaid-admin-action'] ) && ( 'payment_form' == get_post_meta( $invoice, 'wpinv_created_via', true ) || 'geodirectory' == get_post_meta( $invoice, 'wpinv_created_via', true ) );
357
+    }
358 358
 
359
-	/**
360
-	 * Notifies admin about new invoice notes
361
-	 *
362
-	 * @param WPInv_Invoice $invoice
363
-	 * @param string $note
364
-	 */
365
-	public function user_note( $invoice, $note ) {
366
-
367
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
368
-		$recipient = $invoice->get_email();
359
+    /**
360
+     * Notifies admin about new invoice notes
361
+     *
362
+     * @param WPInv_Invoice $invoice
363
+     * @param string $note
364
+     */
365
+    public function user_note( $invoice, $note ) {
366
+
367
+        $email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
368
+        $recipient = $invoice->get_email();
369 369
 
370
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient, array( 'customer_note' => $note ) );
371
-
372
-	}
370
+        return $this->send_email( $invoice, $email, __FUNCTION__, $recipient, array( 'customer_note' => $note ) );
371
+
372
+    }
373 373
 
374
-	/**
375
-	 * (Force) Sends overdue notices.
376
-	 *
377
-	 * @param WPInv_Invoice $invoice
378
-	 */
379
-	public function force_send_overdue_notice( $invoice ) {
380
-		$email = new GetPaid_Notification_Email( 'overdue', $invoice );
381
-		return $this->send_email( $invoice, $email, 'overdue', $invoice->get_email() );
382
-	}
383
-
384
-	/**
385
-	 * Sends overdue notices.
386
-	 *
387
-	 * @TODO: Create an invoices query class.
388
-	 */
389
-	public function overdue() {
390
-		global $wpdb;
391
-
392
-		$email = new GetPaid_Notification_Email( __FUNCTION__ );
393
-
394
-		// Fetch reminder days.
395
-		$reminder_days = array_unique( wp_parse_id_list( $email->get_option( 'days' ) ) );
396
-
397
-		// Abort if non is set.
398
-		if ( empty( $reminder_days ) ) {
399
-			return;
400
-		}
401
-
402
-		// Retrieve date query.
403
-		$date_query = $this->get_date_query( $reminder_days );
404
-
405
-		// Invoices table.
406
-		$table = $wpdb->prefix . 'getpaid_invoices';
407
-
408
-		// Fetch invoices.
409
-		$invoices  = $wpdb->get_col(
410
-			"SELECT posts.ID FROM $wpdb->posts as posts
374
+    /**
375
+     * (Force) Sends overdue notices.
376
+     *
377
+     * @param WPInv_Invoice $invoice
378
+     */
379
+    public function force_send_overdue_notice( $invoice ) {
380
+        $email = new GetPaid_Notification_Email( 'overdue', $invoice );
381
+        return $this->send_email( $invoice, $email, 'overdue', $invoice->get_email() );
382
+    }
383
+
384
+    /**
385
+     * Sends overdue notices.
386
+     *
387
+     * @TODO: Create an invoices query class.
388
+     */
389
+    public function overdue() {
390
+        global $wpdb;
391
+
392
+        $email = new GetPaid_Notification_Email( __FUNCTION__ );
393
+
394
+        // Fetch reminder days.
395
+        $reminder_days = array_unique( wp_parse_id_list( $email->get_option( 'days' ) ) );
396
+
397
+        // Abort if non is set.
398
+        if ( empty( $reminder_days ) ) {
399
+            return;
400
+        }
401
+
402
+        // Retrieve date query.
403
+        $date_query = $this->get_date_query( $reminder_days );
404
+
405
+        // Invoices table.
406
+        $table = $wpdb->prefix . 'getpaid_invoices';
407
+
408
+        // Fetch invoices.
409
+        $invoices  = $wpdb->get_col(
410
+            "SELECT posts.ID FROM $wpdb->posts as posts
411 411
 			LEFT JOIN $table as invoices ON invoices.post_id = posts.ID
412 412
 			WHERE posts.post_type = 'wpi_invoice' AND posts.post_status = 'wpi-pending' $date_query");
413 413
 
414
-		foreach ( $invoices as $invoice ) {
414
+        foreach ( $invoices as $invoice ) {
415 415
 
416
-			// Only send this email for invoices created via the admin page.
417
-			if ( ! $this->is_payment_form_invoice( $invoice ) ) {
418
-				$invoice       = new WPInv_Invoice( $invoice );
419
-				$email->object = $invoice;
416
+            // Only send this email for invoices created via the admin page.
417
+            if ( ! $this->is_payment_form_invoice( $invoice ) ) {
418
+                $invoice       = new WPInv_Invoice( $invoice );
419
+                $email->object = $invoice;
420 420
 
421
-				if ( $invoice->needs_payment() ) {
422
-					$this->send_email( $invoice, $email, __FUNCTION__, $invoice->get_email() );
423
-				}
421
+                if ( $invoice->needs_payment() ) {
422
+                    $this->send_email( $invoice, $email, __FUNCTION__, $invoice->get_email() );
423
+                }
424 424
 
425
-			}
425
+            }
426 426
 
427
-		}
427
+        }
428 428
 
429
-	}
429
+    }
430 430
 
431
-	/**
432
-	 * Calculates the date query for an invoices query
433
-	 *
434
-	 * @param array $reminder_days
435
-	 * @return string
436
-	 */
437
-	public function get_date_query( $reminder_days ) {
431
+    /**
432
+     * Calculates the date query for an invoices query
433
+     *
434
+     * @param array $reminder_days
435
+     * @return string
436
+     */
437
+    public function get_date_query( $reminder_days ) {
438 438
 
439
-		$date_query = array(
440
-			'relation'  => 'OR'
441
-		);
439
+        $date_query = array(
440
+            'relation'  => 'OR'
441
+        );
442 442
 
443
-		foreach ( $reminder_days as $days ) {
444
-			$date = date_parse( date( 'Y-m-d', strtotime( "-$days days", current_time( 'timestamp' ) ) ) );
443
+        foreach ( $reminder_days as $days ) {
444
+            $date = date_parse( date( 'Y-m-d', strtotime( "-$days days", current_time( 'timestamp' ) ) ) );
445 445
 
446
-			$date_query[] = array(
447
-				'year'  => $date['year'],
448
-				'month' => $date['month'],
449
-				'day'   => $date['day'],
450
-			);
446
+            $date_query[] = array(
447
+                'year'  => $date['year'],
448
+                'month' => $date['month'],
449
+                'day'   => $date['day'],
450
+            );
451 451
 
452
-		}
452
+        }
453 453
 
454
-		$date_query = new WP_Date_Query( $date_query, 'invoices.due_date' );
454
+        $date_query = new WP_Date_Query( $date_query, 'invoices.due_date' );
455 455
 
456
-		return $date_query->get_sql();
456
+        return $date_query->get_sql();
457 457
 
458
-	}
458
+    }
459 459
 
460 460
 }
Please login to merge, or discard this patch.
Spacing   +106 added lines, -106 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
  * This class handles invoice notificaiton emails.
@@ -28,7 +28,7 @@  discard block
 block discarded – undo
28 28
 		$this->invoice_actions = apply_filters(
29 29
 			'getpaid_notification_email_invoice_triggers',
30 30
 			array(
31
-				'getpaid_new_invoice'                   => array( 'new_invoice', 'user_invoice' ),
31
+				'getpaid_new_invoice'                   => array('new_invoice', 'user_invoice'),
32 32
 				'getpaid_invoice_status_wpi-cancelled'  => 'cancelled_invoice',
33 33
 				'getpaid_invoice_status_wpi-failed'     => 'failed_invoice',
34 34
 				'getpaid_invoice_status_wpi-onhold'     => 'onhold_invoice',
@@ -50,11 +50,11 @@  discard block
 block discarded – undo
50 50
 	 */
51 51
 	public function init_hooks() {
52 52
 
53
-		add_filter( 'getpaid_get_email_merge_tags', array( $this, 'invoice_merge_tags' ), 10, 2 );
54
-		add_filter( 'getpaid_invoice_email_recipients', array( $this, 'filter_email_recipients' ), 10, 2 );
53
+		add_filter('getpaid_get_email_merge_tags', array($this, 'invoice_merge_tags'), 10, 2);
54
+		add_filter('getpaid_invoice_email_recipients', array($this, 'filter_email_recipients'), 10, 2);
55 55
 
56
-		foreach ( $this->invoice_actions as $hook => $email_type ) {
57
-			$this->init_email_type_hook( $hook, $email_type );
56
+		foreach ($this->invoice_actions as $hook => $email_type) {
57
+			$this->init_email_type_hook($hook, $email_type);
58 58
 		}
59 59
 	}
60 60
 
@@ -64,25 +64,25 @@  discard block
 block discarded – undo
64 64
 	 * @param string $hook
65 65
 	 * @param string|array $email_type
66 66
 	 */
67
-	public function init_email_type_hook( $hook, $email_type ) {
67
+	public function init_email_type_hook($hook, $email_type) {
68 68
 
69
-		$email_type = wpinv_parse_list( $email_type );
69
+		$email_type = wpinv_parse_list($email_type);
70 70
 
71
-		foreach ( $email_type as $type ) {
71
+		foreach ($email_type as $type) {
72 72
 
73
-			$email = new GetPaid_Notification_Email( $type );
73
+			$email = new GetPaid_Notification_Email($type);
74 74
 
75 75
 			// Abort if it is not active.
76
-			if ( ! $email->is_active() ) {
76
+			if (!$email->is_active()) {
77 77
 				continue;
78 78
 			}
79 79
 
80
-			if ( method_exists( $this, $type ) ) {
81
-				add_action( $hook, array( $this, $type ), 100, 2 );
80
+			if (method_exists($this, $type)) {
81
+				add_action($hook, array($this, $type), 100, 2);
82 82
 				continue;
83 83
 			}
84 84
 
85
-			do_action( 'getpaid_invoice_init_email_type_hook', $type, $hook );
85
+			do_action('getpaid_invoice_init_email_type_hook', $type, $hook);
86 86
 		}
87 87
 
88 88
 	}
@@ -93,19 +93,19 @@  discard block
 block discarded – undo
93 93
 	 * @param array $merge_tags
94 94
 	 * @param mixed|WPInv_Invoice|WPInv_Subscription $object
95 95
 	 */
96
-	public function invoice_merge_tags( $merge_tags, $object ) {
96
+	public function invoice_merge_tags($merge_tags, $object) {
97 97
 
98
-		if ( is_a( $object, 'WPInv_Invoice' ) ) {
98
+		if (is_a($object, 'WPInv_Invoice')) {
99 99
 			return array_merge(
100 100
 				$merge_tags,
101
-				$this->get_invoice_merge_tags( $object )
101
+				$this->get_invoice_merge_tags($object)
102 102
 			);
103 103
 		}
104 104
 
105
-		if ( is_a( $object, 'WPInv_Subscription' ) ) {
105
+		if (is_a($object, 'WPInv_Subscription')) {
106 106
 			return array_merge(
107 107
 				$merge_tags,
108
-				$this->get_invoice_merge_tags( $object->get_parent_payment() )
108
+				$this->get_invoice_merge_tags($object->get_parent_payment())
109 109
 			);
110 110
 		}
111 111
 
@@ -119,35 +119,35 @@  discard block
 block discarded – undo
119 119
 	 * @param WPInv_Invoice $invoice
120 120
 	 * @return array
121 121
 	 */
122
-	public function get_invoice_merge_tags( $invoice ) {
122
+	public function get_invoice_merge_tags($invoice) {
123 123
 
124 124
 		// Abort if it does not exist.
125
-		if ( ! $invoice->get_id() ) {
125
+		if (!$invoice->get_id()) {
126 126
 			return array();
127 127
 		}
128 128
 
129 129
 		$merge_tags = array(
130
-			'{name}'                => sanitize_text_field( $invoice->get_user_full_name() ),
131
-			'{full_name}'           => sanitize_text_field( $invoice->get_user_full_name() ),
132
-			'{first_name}'          => sanitize_text_field( $invoice->get_first_name() ),
133
-			'{last_name}'           => sanitize_text_field( $invoice->get_last_name() ),
134
-			'{email}'               => sanitize_email( $invoice->get_email() ),
135
-			'{invoice_number}'      => sanitize_text_field( $invoice->get_number() ),
136
-			'{invoice_currency}'    => sanitize_text_field( $invoice->get_currency() ),
137
-			'{invoice_total}'       => sanitize_text_field( wpinv_price( $invoice->get_total(), $invoice->get_currency() ) ),
138
-			'{invoice_link}'        => esc_url( $invoice->get_view_url() ),
139
-			'{invoice_pay_link}'    => esc_url( $invoice->get_checkout_payment_url() ),
140
-			'{invoice_receipt_link}'=> esc_url( $invoice->get_receipt_url() ),
141
-			'{invoice_date}'        => getpaid_format_date_value( $invoice->get_date_created() ),
142
-			'{invoice_due_date}'    => getpaid_format_date_value( $invoice->get_due_date(), __( 'on receipt', 'invoicing' ) ),
143
-			'{invoice_quote}'       => sanitize_text_field( strtolower( $invoice->get_label() ) ),
144
-			'{invoice_label}'       => sanitize_text_field( ucfirst( $invoice->get_label() ) ),
145
-			'{invoice_description}' => wp_kses_post( $invoice->get_description() ),
146
-			'{subscription_name}'   => wp_kses_post( $invoice->get_subscription_name() ),
147
-			'{is_was}'              => strtotime( $invoice->get_due_date() ) < current_time( 'timestamp' ) ? __( 'was', 'invoicing' ) : __( 'is', 'invoicing' ),
130
+			'{name}'                => sanitize_text_field($invoice->get_user_full_name()),
131
+			'{full_name}'           => sanitize_text_field($invoice->get_user_full_name()),
132
+			'{first_name}'          => sanitize_text_field($invoice->get_first_name()),
133
+			'{last_name}'           => sanitize_text_field($invoice->get_last_name()),
134
+			'{email}'               => sanitize_email($invoice->get_email()),
135
+			'{invoice_number}'      => sanitize_text_field($invoice->get_number()),
136
+			'{invoice_currency}'    => sanitize_text_field($invoice->get_currency()),
137
+			'{invoice_total}'       => sanitize_text_field(wpinv_price($invoice->get_total(), $invoice->get_currency())),
138
+			'{invoice_link}'        => esc_url($invoice->get_view_url()),
139
+			'{invoice_pay_link}'    => esc_url($invoice->get_checkout_payment_url()),
140
+			'{invoice_receipt_link}'=> esc_url($invoice->get_receipt_url()),
141
+			'{invoice_date}'        => getpaid_format_date_value($invoice->get_date_created()),
142
+			'{invoice_due_date}'    => getpaid_format_date_value($invoice->get_due_date(), __('on receipt', 'invoicing')),
143
+			'{invoice_quote}'       => sanitize_text_field(strtolower($invoice->get_label())),
144
+			'{invoice_label}'       => sanitize_text_field(ucfirst($invoice->get_label())),
145
+			'{invoice_description}' => wp_kses_post($invoice->get_description()),
146
+			'{subscription_name}'   => wp_kses_post($invoice->get_subscription_name()),
147
+			'{is_was}'              => strtotime($invoice->get_due_date()) < current_time('timestamp') ? __('was', 'invoicing') : __('is', 'invoicing'),
148 148
 		);
149 149
 
150
-		return apply_filters( 'getpaid_invoice_email_merge_tags', $merge_tags, $invoice );
150
+		return apply_filters('getpaid_invoice_email_merge_tags', $merge_tags, $invoice);
151 151
 	}
152 152
 
153 153
 	/**
@@ -159,35 +159,35 @@  discard block
 block discarded – undo
159 159
 	 * @param string|array $recipients
160 160
 	 * @param array $extra_args Extra template args.
161 161
 	 */
162
-	public function send_email( $invoice, $email, $type, $recipients, $extra_args = array() ) {
162
+	public function send_email($invoice, $email, $type, $recipients, $extra_args = array()) {
163 163
 
164
-		do_action( 'getpaid_before_send_invoice_notification', $type, $invoice, $email );
164
+		do_action('getpaid_before_send_invoice_notification', $type, $invoice, $email);
165 165
 
166 166
 		$mailer     = new GetPaid_Notification_Email_Sender();
167 167
 		$merge_tags = $email->get_merge_tags();
168 168
 
169 169
 		$result = $mailer->send(
170
-			apply_filters( 'getpaid_invoice_email_recipients', wpinv_parse_list( $recipients ), $email ),
171
-			$email->add_merge_tags( $email->get_subject(), $merge_tags ),
172
-			$email->get_content( $merge_tags, $extra_args ),
170
+			apply_filters('getpaid_invoice_email_recipients', wpinv_parse_list($recipients), $email),
171
+			$email->add_merge_tags($email->get_subject(), $merge_tags),
172
+			$email->get_content($merge_tags, $extra_args),
173 173
 			$email->get_attachments()
174 174
 		);
175 175
 
176 176
 		// Maybe send a copy to the admin.
177
-		if ( $email->include_admin_bcc() ) {
177
+		if ($email->include_admin_bcc()) {
178 178
 			$mailer->send(
179 179
 				wpinv_get_admin_email(),
180
-				$email->add_merge_tags( $email->get_subject() . __( ' - ADMIN BCC COPY', 'invoicing' ), $merge_tags ),
181
-				$email->get_content( $merge_tags ),
180
+				$email->add_merge_tags($email->get_subject() . __(' - ADMIN BCC COPY', 'invoicing'), $merge_tags),
181
+				$email->get_content($merge_tags),
182 182
 				$email->get_attachments()
183 183
 			);
184 184
 		}
185 185
 
186
-		if ( ! $result ) {
187
-			$invoice->add_note( sprintf( __( 'Failed sending %s notification email.', 'invoicing' ), sanitize_key( $type ) ), false, false, true );
186
+		if (!$result) {
187
+			$invoice->add_note(sprintf(__('Failed sending %s notification email.', 'invoicing'), sanitize_key($type)), false, false, true);
188 188
 		}
189 189
 
190
-		do_action( 'getpaid_after_send_invoice_notification', $type, $invoice, $email );
190
+		do_action('getpaid_after_send_invoice_notification', $type, $invoice, $email);
191 191
 
192 192
 		return $result;
193 193
 	}
@@ -198,14 +198,14 @@  discard block
 block discarded – undo
198 198
 	 * @param array $recipients
199 199
 	 * @param GetPaid_Notification_Email $email
200 200
 	 */
201
-	public function filter_email_recipients( $recipients, $email ) {
201
+	public function filter_email_recipients($recipients, $email) {
202 202
 
203
-		if ( ! $email->is_admin_email() ) {
203
+		if (!$email->is_admin_email()) {
204 204
 			$cc = $email->object->get_email_cc();
205 205
 
206
-			if ( ! empty( $cc ) ) {
207
-				$cc = array_map( 'sanitize_email', wpinv_parse_list( $cc ) );
208
-				$recipients = array_filter( array_unique( array_merge( $recipients, $cc ) ) );
206
+			if (!empty($cc)) {
207
+				$cc = array_map('sanitize_email', wpinv_parse_list($cc));
208
+				$recipients = array_filter(array_unique(array_merge($recipients, $cc)));
209 209
 			}
210 210
 
211 211
 		}
@@ -219,17 +219,17 @@  discard block
 block discarded – undo
219 219
 	 *
220 220
 	 * @param WPInv_Invoice $invoice
221 221
 	 */
222
-	public function new_invoice( $invoice ) {
222
+	public function new_invoice($invoice) {
223 223
 
224 224
 		// Only send this email for invoices created via the admin page.
225
-		if ( ! $invoice->is_type( 'invoice' ) || $this->is_payment_form_invoice( $invoice->get_id() ) ) {
225
+		if (!$invoice->is_type('invoice') || $this->is_payment_form_invoice($invoice->get_id())) {
226 226
 			return;
227 227
 		}
228 228
 
229
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
229
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
230 230
 		$recipient = wpinv_get_admin_email();
231 231
 
232
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
232
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient);
233 233
 
234 234
 	}
235 235
 
@@ -238,12 +238,12 @@  discard block
 block discarded – undo
238 238
 	 *
239 239
 	 * @param WPInv_Invoice $invoice
240 240
 	 */
241
-	public function cancelled_invoice( $invoice ) {
241
+	public function cancelled_invoice($invoice) {
242 242
 
243
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
243
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
244 244
 		$recipient = wpinv_get_admin_email();
245 245
 
246
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
246
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient);
247 247
 
248 248
 	}
249 249
 
@@ -252,12 +252,12 @@  discard block
 block discarded – undo
252 252
 	 *
253 253
 	 * @param WPInv_Invoice $invoice
254 254
 	 */
255
-	public function failed_invoice( $invoice ) {
255
+	public function failed_invoice($invoice) {
256 256
 
257
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
257
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
258 258
 		$recipient = wpinv_get_admin_email();
259 259
 
260
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
260
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient);
261 261
 
262 262
 	}
263 263
 
@@ -266,12 +266,12 @@  discard block
 block discarded – undo
266 266
 	 *
267 267
 	 * @param WPInv_Invoice $invoice
268 268
 	 */
269
-	public function onhold_invoice( $invoice ) {
269
+	public function onhold_invoice($invoice) {
270 270
 
271
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
271
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
272 272
 		$recipient = $invoice->get_email();
273 273
 
274
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
274
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient);
275 275
 
276 276
 	}
277 277
 
@@ -280,12 +280,12 @@  discard block
 block discarded – undo
280 280
 	 *
281 281
 	 * @param WPInv_Invoice $invoice
282 282
 	 */
283
-	public function processing_invoice( $invoice ) {
283
+	public function processing_invoice($invoice) {
284 284
 
285
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
285
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
286 286
 		$recipient = $invoice->get_email();
287 287
 
288
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
288
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient);
289 289
 
290 290
 	}
291 291
 
@@ -294,17 +294,17 @@  discard block
 block discarded – undo
294 294
 	 *
295 295
 	 * @param WPInv_Invoice $invoice
296 296
 	 */
297
-	public function completed_invoice( $invoice ) {
297
+	public function completed_invoice($invoice) {
298 298
 
299 299
 		// (Maybe) abort if it is a renewal invoice.
300
-		if ( $invoice->is_renewal() && ! wpinv_get_option( 'email_completed_invoice_renewal_active', false ) ) {
300
+		if ($invoice->is_renewal() && !wpinv_get_option('email_completed_invoice_renewal_active', false)) {
301 301
 			return;
302 302
 		}
303 303
 
304
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
304
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
305 305
 		$recipient = $invoice->get_email();
306 306
 
307
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
307
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient);
308 308
 
309 309
 	}
310 310
 
@@ -313,12 +313,12 @@  discard block
 block discarded – undo
313 313
 	 *
314 314
 	 * @param WPInv_Invoice $invoice
315 315
 	 */
316
-	public function refunded_invoice( $invoice ) {
316
+	public function refunded_invoice($invoice) {
317 317
 
318
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
318
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
319 319
 		$recipient = $invoice->get_email();
320 320
 
321
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
321
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient);
322 322
 
323 323
 	}
324 324
 
@@ -328,21 +328,21 @@  discard block
 block discarded – undo
328 328
 	 * @param WPInv_Invoice $invoice
329 329
 	 * @param bool $force
330 330
 	 */
331
-	public function user_invoice( $invoice, $force = false ) {
331
+	public function user_invoice($invoice, $force = false) {
332 332
 
333
-		if ( ! empty( $GLOBALS['wpinv_skip_invoice_notification'] ) ) {
333
+		if (!empty($GLOBALS['wpinv_skip_invoice_notification'])) {
334 334
 			return;
335 335
 		}
336 336
 
337 337
 		// Only send this email for invoices created via the admin page.
338
-		if ( ! $invoice->is_type( 'invoice' ) || ( empty( $force ) && $this->is_payment_form_invoice( $invoice->get_id() ) ) ) {
338
+		if (!$invoice->is_type('invoice') || (empty($force) && $this->is_payment_form_invoice($invoice->get_id()))) {
339 339
 			return;
340 340
 		}
341 341
 
342
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
342
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
343 343
 		$recipient = $invoice->get_email();
344 344
 
345
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient );
345
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient);
346 346
 
347 347
 	}
348 348
 
@@ -352,8 +352,8 @@  discard block
 block discarded – undo
352 352
 	 * @param int $invoice
353 353
 	 * @return bool
354 354
 	 */
355
-	public function is_payment_form_invoice( $invoice ) {
356
-		return empty( $_GET['getpaid-admin-action'] ) && ( 'payment_form' == get_post_meta( $invoice, 'wpinv_created_via', true ) || 'geodirectory' == get_post_meta( $invoice, 'wpinv_created_via', true ) );
355
+	public function is_payment_form_invoice($invoice) {
356
+		return empty($_GET['getpaid-admin-action']) && ('payment_form' == get_post_meta($invoice, 'wpinv_created_via', true) || 'geodirectory' == get_post_meta($invoice, 'wpinv_created_via', true));
357 357
 	}
358 358
 
359 359
 	/**
@@ -362,12 +362,12 @@  discard block
 block discarded – undo
362 362
 	 * @param WPInv_Invoice $invoice
363 363
 	 * @param string $note
364 364
 	 */
365
-	public function user_note( $invoice, $note ) {
365
+	public function user_note($invoice, $note) {
366 366
 
367
-		$email     = new GetPaid_Notification_Email( __FUNCTION__, $invoice );
367
+		$email     = new GetPaid_Notification_Email(__FUNCTION__, $invoice);
368 368
 		$recipient = $invoice->get_email();
369 369
 
370
-		return $this->send_email( $invoice, $email, __FUNCTION__, $recipient, array( 'customer_note' => $note ) );
370
+		return $this->send_email($invoice, $email, __FUNCTION__, $recipient, array('customer_note' => $note));
371 371
 
372 372
 	}
373 373
 
@@ -376,9 +376,9 @@  discard block
 block discarded – undo
376 376
 	 *
377 377
 	 * @param WPInv_Invoice $invoice
378 378
 	 */
379
-	public function force_send_overdue_notice( $invoice ) {
380
-		$email = new GetPaid_Notification_Email( 'overdue', $invoice );
381
-		return $this->send_email( $invoice, $email, 'overdue', $invoice->get_email() );
379
+	public function force_send_overdue_notice($invoice) {
380
+		$email = new GetPaid_Notification_Email('overdue', $invoice);
381
+		return $this->send_email($invoice, $email, 'overdue', $invoice->get_email());
382 382
 	}
383 383
 
384 384
 	/**
@@ -389,37 +389,37 @@  discard block
 block discarded – undo
389 389
 	public function overdue() {
390 390
 		global $wpdb;
391 391
 
392
-		$email = new GetPaid_Notification_Email( __FUNCTION__ );
392
+		$email = new GetPaid_Notification_Email(__FUNCTION__);
393 393
 
394 394
 		// Fetch reminder days.
395
-		$reminder_days = array_unique( wp_parse_id_list( $email->get_option( 'days' ) ) );
395
+		$reminder_days = array_unique(wp_parse_id_list($email->get_option('days')));
396 396
 
397 397
 		// Abort if non is set.
398
-		if ( empty( $reminder_days ) ) {
398
+		if (empty($reminder_days)) {
399 399
 			return;
400 400
 		}
401 401
 
402 402
 		// Retrieve date query.
403
-		$date_query = $this->get_date_query( $reminder_days );
403
+		$date_query = $this->get_date_query($reminder_days);
404 404
 
405 405
 		// Invoices table.
406 406
 		$table = $wpdb->prefix . 'getpaid_invoices';
407 407
 
408 408
 		// Fetch invoices.
409
-		$invoices  = $wpdb->get_col(
409
+		$invoices = $wpdb->get_col(
410 410
 			"SELECT posts.ID FROM $wpdb->posts as posts
411 411
 			LEFT JOIN $table as invoices ON invoices.post_id = posts.ID
412 412
 			WHERE posts.post_type = 'wpi_invoice' AND posts.post_status = 'wpi-pending' $date_query");
413 413
 
414
-		foreach ( $invoices as $invoice ) {
414
+		foreach ($invoices as $invoice) {
415 415
 
416 416
 			// Only send this email for invoices created via the admin page.
417
-			if ( ! $this->is_payment_form_invoice( $invoice ) ) {
418
-				$invoice       = new WPInv_Invoice( $invoice );
417
+			if (!$this->is_payment_form_invoice($invoice)) {
418
+				$invoice       = new WPInv_Invoice($invoice);
419 419
 				$email->object = $invoice;
420 420
 
421
-				if ( $invoice->needs_payment() ) {
422
-					$this->send_email( $invoice, $email, __FUNCTION__, $invoice->get_email() );
421
+				if ($invoice->needs_payment()) {
422
+					$this->send_email($invoice, $email, __FUNCTION__, $invoice->get_email());
423 423
 				}
424 424
 
425 425
 			}
@@ -434,14 +434,14 @@  discard block
 block discarded – undo
434 434
 	 * @param array $reminder_days
435 435
 	 * @return string
436 436
 	 */
437
-	public function get_date_query( $reminder_days ) {
437
+	public function get_date_query($reminder_days) {
438 438
 
439 439
 		$date_query = array(
440 440
 			'relation'  => 'OR'
441 441
 		);
442 442
 
443
-		foreach ( $reminder_days as $days ) {
444
-			$date = date_parse( date( 'Y-m-d', strtotime( "-$days days", current_time( 'timestamp' ) ) ) );
443
+		foreach ($reminder_days as $days) {
444
+			$date = date_parse(date('Y-m-d', strtotime("-$days days", current_time('timestamp'))));
445 445
 
446 446
 			$date_query[] = array(
447 447
 				'year'  => $date['year'],
@@ -451,7 +451,7 @@  discard block
 block discarded – undo
451 451
 
452 452
 		}
453 453
 
454
-		$date_query = new WP_Date_Query( $date_query, 'invoices.due_date' );
454
+		$date_query = new WP_Date_Query($date_query, 'invoices.due_date');
455 455
 
456 456
 		return $date_query->get_sql();
457 457
 
Please login to merge, or discard this patch.
includes/admin/class-getpaid-installer.php 2 patches
Indentation   +363 added lines, -363 removed lines patch added patch discarded remove patch
@@ -20,214 +20,214 @@  discard block
 block discarded – undo
20 20
  */
21 21
 class GetPaid_Installer {
22 22
 
23
-	/**
24
-	 * Upgrades the install.
25
-	 *
26
-	 * @param string $upgrade_from The current invoicing version.
27
-	 */
28
-	public function upgrade_db( $upgrade_from ) {
29
-
30
-		// Save the current invoicing version.
31
-		update_option( 'wpinv_version', WPINV_VERSION );
32
-
33
-		// Setup the invoice Custom Post Type.
34
-		GetPaid_Post_Types::register_post_types();
35
-
36
-		// Clear the permalinks
37
-		flush_rewrite_rules();
38
-
39
-		// Maybe create new/missing pages.
40
-		$this->create_pages();
41
-
42
-		// Maybe re(add) admin capabilities.
43
-		$this->add_capabilities();
44
-
45
-		// Maybe create the default payment form.
46
-		wpinv_get_default_payment_form();
47
-
48
-		// Create any missing database tables.
49
-		$method = "upgrade_from_$upgrade_from";
50
-
51
-		if ( method_exists( $this, $method ) ) {
52
-			$this->$method();
53
-		}
54
-
55
-	}
56
-
57
-	/**
58
-	 * Do a fresh install.
59
-	 *
60
-	 */
61
-	public function upgrade_from_0() {
62
-		$this->create_subscriptions_table();
63
-		$this->create_invoices_table();
64
-		$this->create_invoice_items_table();
65
-
66
-		// Save default tax rates.
67
-		update_option( 'wpinv_tax_rates', wpinv_get_data( 'tax-rates' ) );
68
-	}
69
-
70
-	/**
71
-	 * Upgrade to 0.0.5
72
-	 *
73
-	 */
74
-	public function upgrade_from_004() {
75
-		global $wpdb;
76
-
77
-		// Invoices.
78
-		$results = $wpdb->get_results( "SELECT ID FROM {$wpdb->posts} WHERE post_type = 'wpi_invoice' AND post_status IN( 'pending', 'processing', 'onhold', 'refunded', 'cancelled', 'failed', 'renewal' )" );
79
-		if ( ! empty( $results ) ) {
80
-			$wpdb->query( "UPDATE {$wpdb->posts} SET post_status = CONCAT( 'wpi-', post_status ) WHERE post_type = 'wpi_invoice' AND post_status IN( 'pending', 'processing', 'onhold', 'refunded', 'cancelled', 'failed', 'renewal' )" );
81
-
82
-			// Clean post cache
83
-			foreach ( $results as $row ) {
84
-				clean_post_cache( $row->ID );
85
-			}
86
-
87
-		}
88
-
89
-		// Item meta key changes
90
-		$query = "SELECT DISTINCT post_id FROM " . $wpdb->postmeta . " WHERE meta_key IN( '_wpinv_item_id', '_wpinv_package_id', '_wpinv_post_id', '_wpinv_cpt_name', '_wpinv_cpt_singular_name' )";
91
-		$results = $wpdb->get_results( $query );
92
-
93
-		if ( ! empty( $results ) ) {
94
-			$wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_id' WHERE meta_key IN( '_wpinv_item_id', '_wpinv_package_id', '_wpinv_post_id' )" );
95
-			$wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_name' WHERE meta_key = '_wpinv_cpt_name'" );
96
-			$wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_singular_name' WHERE meta_key = '_wpinv_cpt_singular_name'" );
97
-
98
-			foreach ( $results as $row ) {
99
-				clean_post_cache( $row->post_id );
100
-			}
101
-
102
-		}
103
-
104
-		$this->upgrade_from_102();
105
-	}
106
-
107
-	/**
108
-	 * Upgrade to 1.0.3
109
-	 *
110
-	 */
111
-	public function upgrade_from_102() {
112
-		$this->create_subscriptions_table();
113
-		$this->upgrade_from_118();
114
-	}
115
-
116
-	/**
117
-	 * Upgrade to version 2.0.0.
118
-	 *
119
-	 */
120
-	public function upgrade_from_118() {
121
-		$this->create_invoices_table();
122
-		$this->create_invoice_items_table();
123
-		$this->migrate_old_invoices();
124
-	}
125
-
126
-	/**
127
-	 * Upgrade to version 2.0.8.
128
-	 *
129
-	 */
130
-	public function upgrade_from_207() {
131
-		global $wpdb;
132
-		$wpdb->query( "ALTER TABLE {$wpdb->prefix}getpaid_invoice_items MODIFY COLUMN quantity FLOAT(20);" );
133
-	}
134
-
135
-	/**
136
-	 * Give administrators the capability to manage GetPaid.
137
-	 *
138
-	 */
139
-	public function add_capabilities() {
140
-		$GLOBALS['wp_roles']->add_cap( 'administrator', 'manage_invoicing' );
141
-	}
142
-
143
-	/**
144
-	 * Re-create GetPaid pages.
145
-	 *
146
-	 */
147
-	public function create_pages() {
148
-
149
-		$pages = apply_filters(
150
-			'wpinv_create_pages',
151
-			array(
152
-
153
-				// Checkout page.
154
-				'checkout_page' => array(
155
-					'name'      => _x( 'gp-checkout', 'Page slug', 'invoicing' ),
156
-					'title'     => _x( 'Checkout', 'Page title', 'invoicing' ),
157
-					'content'   => '
23
+    /**
24
+     * Upgrades the install.
25
+     *
26
+     * @param string $upgrade_from The current invoicing version.
27
+     */
28
+    public function upgrade_db( $upgrade_from ) {
29
+
30
+        // Save the current invoicing version.
31
+        update_option( 'wpinv_version', WPINV_VERSION );
32
+
33
+        // Setup the invoice Custom Post Type.
34
+        GetPaid_Post_Types::register_post_types();
35
+
36
+        // Clear the permalinks
37
+        flush_rewrite_rules();
38
+
39
+        // Maybe create new/missing pages.
40
+        $this->create_pages();
41
+
42
+        // Maybe re(add) admin capabilities.
43
+        $this->add_capabilities();
44
+
45
+        // Maybe create the default payment form.
46
+        wpinv_get_default_payment_form();
47
+
48
+        // Create any missing database tables.
49
+        $method = "upgrade_from_$upgrade_from";
50
+
51
+        if ( method_exists( $this, $method ) ) {
52
+            $this->$method();
53
+        }
54
+
55
+    }
56
+
57
+    /**
58
+     * Do a fresh install.
59
+     *
60
+     */
61
+    public function upgrade_from_0() {
62
+        $this->create_subscriptions_table();
63
+        $this->create_invoices_table();
64
+        $this->create_invoice_items_table();
65
+
66
+        // Save default tax rates.
67
+        update_option( 'wpinv_tax_rates', wpinv_get_data( 'tax-rates' ) );
68
+    }
69
+
70
+    /**
71
+     * Upgrade to 0.0.5
72
+     *
73
+     */
74
+    public function upgrade_from_004() {
75
+        global $wpdb;
76
+
77
+        // Invoices.
78
+        $results = $wpdb->get_results( "SELECT ID FROM {$wpdb->posts} WHERE post_type = 'wpi_invoice' AND post_status IN( 'pending', 'processing', 'onhold', 'refunded', 'cancelled', 'failed', 'renewal' )" );
79
+        if ( ! empty( $results ) ) {
80
+            $wpdb->query( "UPDATE {$wpdb->posts} SET post_status = CONCAT( 'wpi-', post_status ) WHERE post_type = 'wpi_invoice' AND post_status IN( 'pending', 'processing', 'onhold', 'refunded', 'cancelled', 'failed', 'renewal' )" );
81
+
82
+            // Clean post cache
83
+            foreach ( $results as $row ) {
84
+                clean_post_cache( $row->ID );
85
+            }
86
+
87
+        }
88
+
89
+        // Item meta key changes
90
+        $query = "SELECT DISTINCT post_id FROM " . $wpdb->postmeta . " WHERE meta_key IN( '_wpinv_item_id', '_wpinv_package_id', '_wpinv_post_id', '_wpinv_cpt_name', '_wpinv_cpt_singular_name' )";
91
+        $results = $wpdb->get_results( $query );
92
+
93
+        if ( ! empty( $results ) ) {
94
+            $wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_id' WHERE meta_key IN( '_wpinv_item_id', '_wpinv_package_id', '_wpinv_post_id' )" );
95
+            $wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_name' WHERE meta_key = '_wpinv_cpt_name'" );
96
+            $wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_singular_name' WHERE meta_key = '_wpinv_cpt_singular_name'" );
97
+
98
+            foreach ( $results as $row ) {
99
+                clean_post_cache( $row->post_id );
100
+            }
101
+
102
+        }
103
+
104
+        $this->upgrade_from_102();
105
+    }
106
+
107
+    /**
108
+     * Upgrade to 1.0.3
109
+     *
110
+     */
111
+    public function upgrade_from_102() {
112
+        $this->create_subscriptions_table();
113
+        $this->upgrade_from_118();
114
+    }
115
+
116
+    /**
117
+     * Upgrade to version 2.0.0.
118
+     *
119
+     */
120
+    public function upgrade_from_118() {
121
+        $this->create_invoices_table();
122
+        $this->create_invoice_items_table();
123
+        $this->migrate_old_invoices();
124
+    }
125
+
126
+    /**
127
+     * Upgrade to version 2.0.8.
128
+     *
129
+     */
130
+    public function upgrade_from_207() {
131
+        global $wpdb;
132
+        $wpdb->query( "ALTER TABLE {$wpdb->prefix}getpaid_invoice_items MODIFY COLUMN quantity FLOAT(20);" );
133
+    }
134
+
135
+    /**
136
+     * Give administrators the capability to manage GetPaid.
137
+     *
138
+     */
139
+    public function add_capabilities() {
140
+        $GLOBALS['wp_roles']->add_cap( 'administrator', 'manage_invoicing' );
141
+    }
142
+
143
+    /**
144
+     * Re-create GetPaid pages.
145
+     *
146
+     */
147
+    public function create_pages() {
148
+
149
+        $pages = apply_filters(
150
+            'wpinv_create_pages',
151
+            array(
152
+
153
+                // Checkout page.
154
+                'checkout_page' => array(
155
+                    'name'      => _x( 'gp-checkout', 'Page slug', 'invoicing' ),
156
+                    'title'     => _x( 'Checkout', 'Page title', 'invoicing' ),
157
+                    'content'   => '
158 158
 						<!-- wp:shortcode -->
159 159
 						[wpinv_checkout]
160 160
 						<!-- /wp:shortcode -->
161 161
 					',
162
-					'parent'    => '',
163
-				),
164
-
165
-				// Invoice history page.
166
-				'invoice_history_page' => array(
167
-					'name'    => _x( 'gp-invoices', 'Page slug', 'invoicing' ),
168
-					'title'   => _x( 'My Invoices', 'Page title', 'invoicing' ),
169
-					'content' => '
162
+                    'parent'    => '',
163
+                ),
164
+
165
+                // Invoice history page.
166
+                'invoice_history_page' => array(
167
+                    'name'    => _x( 'gp-invoices', 'Page slug', 'invoicing' ),
168
+                    'title'   => _x( 'My Invoices', 'Page title', 'invoicing' ),
169
+                    'content' => '
170 170
 					<!-- wp:shortcode -->
171 171
 					[wpinv_history]
172 172
 					<!-- /wp:shortcode -->
173 173
 				',
174
-					'parent'  => '',
175
-				),
176
-
177
-				// Success page content.
178
-				'success_page' => array(
179
-					'name'     => _x( 'gp-receipt', 'Page slug', 'invoicing' ),
180
-					'title'    => _x( 'Payment Confirmation', 'Page title', 'invoicing' ),
181
-					'content'  => '
174
+                    'parent'  => '',
175
+                ),
176
+
177
+                // Success page content.
178
+                'success_page' => array(
179
+                    'name'     => _x( 'gp-receipt', 'Page slug', 'invoicing' ),
180
+                    'title'    => _x( 'Payment Confirmation', 'Page title', 'invoicing' ),
181
+                    'content'  => '
182 182
 					<!-- wp:shortcode -->
183 183
 					[wpinv_receipt]
184 184
 					<!-- /wp:shortcode -->
185 185
 				',
186
-					'parent'   => 'gp-checkout',
187
-				),
188
-
189
-				// Failure page content.
190
-				'failure_page' => array(
191
-					'name'    => _x( 'gp-transaction-failed', 'Page slug', 'invoicing' ),
192
-					'title'   => _x( 'Transaction Failed', 'Page title', 'invoicing' ),
193
-					'content' => __( 'Your transaction failed, please try again or contact site support.', 'invoicing' ),
194
-					'parent'  => 'gp-checkout',
195
-				),
196
-
197
-				// Subscriptions history page.
198
-				'invoice_subscription_page' => array(
199
-					'name'    => _x( 'gp-subscriptions', 'Page slug', 'invoicing' ),
200
-					'title'   => _x( 'My Subscriptions', 'Page title', 'invoicing' ),
201
-					'content' => '
186
+                    'parent'   => 'gp-checkout',
187
+                ),
188
+
189
+                // Failure page content.
190
+                'failure_page' => array(
191
+                    'name'    => _x( 'gp-transaction-failed', 'Page slug', 'invoicing' ),
192
+                    'title'   => _x( 'Transaction Failed', 'Page title', 'invoicing' ),
193
+                    'content' => __( 'Your transaction failed, please try again or contact site support.', 'invoicing' ),
194
+                    'parent'  => 'gp-checkout',
195
+                ),
196
+
197
+                // Subscriptions history page.
198
+                'invoice_subscription_page' => array(
199
+                    'name'    => _x( 'gp-subscriptions', 'Page slug', 'invoicing' ),
200
+                    'title'   => _x( 'My Subscriptions', 'Page title', 'invoicing' ),
201
+                    'content' => '
202 202
 					<!-- wp:shortcode -->
203 203
 					[wpinv_subscriptions]
204 204
 					<!-- /wp:shortcode -->
205 205
 				',
206
-					'parent' => '',
207
-				),
206
+                    'parent' => '',
207
+                ),
208 208
 
209
-			)
210
-		);
209
+            )
210
+        );
211 211
 
212
-		foreach ( $pages as $key => $page ) {
213
-			wpinv_create_page( esc_sql( $page['name'] ), $key, $page['title'], $page['content'], $page['parent'] );
214
-		}
212
+        foreach ( $pages as $key => $page ) {
213
+            wpinv_create_page( esc_sql( $page['name'] ), $key, $page['title'], $page['content'], $page['parent'] );
214
+        }
215 215
 
216
-	}
216
+    }
217 217
 
218
-	/**
219
-	 * Create subscriptions table.
220
-	 *
221
-	 */
222
-	public function create_subscriptions_table() {
218
+    /**
219
+     * Create subscriptions table.
220
+     *
221
+     */
222
+    public function create_subscriptions_table() {
223 223
 
224
-		global $wpdb;
224
+        global $wpdb;
225 225
 
226
-		require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
226
+        require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
227 227
 
228
-		// Create tables.
229
-		$charset_collate = $wpdb->get_charset_collate();
230
-		$sql             = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}wpinv_subscriptions (
228
+        // Create tables.
229
+        $charset_collate = $wpdb->get_charset_collate();
230
+        $sql             = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}wpinv_subscriptions (
231 231
 			id bigint(20) unsigned NOT NULL auto_increment,
232 232
 			customer_id bigint(20) NOT NULL,
233 233
 			frequency int(11) NOT NULL DEFAULT '1',
@@ -250,22 +250,22 @@  discard block
 block discarded – undo
250 250
 			KEY customer_and_status (customer_id, status)
251 251
 		  ) $charset_collate;";
252 252
 
253
-		dbDelta( $sql );
253
+        dbDelta( $sql );
254 254
 
255
-	}
255
+    }
256 256
 
257
-	/**
258
-	 * Create invoices table.
259
-	 *
260
-	 */
261
-	public function create_invoices_table() {
262
-		global $wpdb;
257
+    /**
258
+     * Create invoices table.
259
+     *
260
+     */
261
+    public function create_invoices_table() {
262
+        global $wpdb;
263 263
 
264
-		require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
264
+        require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
265 265
 
266
-		// Create tables.
267
-		$charset_collate = $wpdb->get_charset_collate();
268
-		$sql             = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}getpaid_invoices (
266
+        // Create tables.
267
+        $charset_collate = $wpdb->get_charset_collate();
268
+        $sql             = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}getpaid_invoices (
269 269
 			post_id BIGINT(20) NOT NULL,
270 270
             `number` VARCHAR(100),
271 271
             `key` VARCHAR(100),
@@ -301,22 +301,22 @@  discard block
 block discarded – undo
301 301
 			KEY `key` (`key`)
302 302
 		  ) $charset_collate;";
303 303
 
304
-		dbDelta( $sql );
304
+        dbDelta( $sql );
305 305
 
306
-	}
306
+    }
307 307
 
308
-	/**
309
-	 * Create invoice items table.
310
-	 *
311
-	 */
312
-	public function create_invoice_items_table() {
313
-		global $wpdb;
308
+    /**
309
+     * Create invoice items table.
310
+     *
311
+     */
312
+    public function create_invoice_items_table() {
313
+        global $wpdb;
314 314
 
315
-		require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
315
+        require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
316 316
 
317
-		// Create tables.
318
-		$charset_collate = $wpdb->get_charset_collate();
319
-		$sql             = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}getpaid_invoice_items (
317
+        // Create tables.
318
+        $charset_collate = $wpdb->get_charset_collate();
319
+        $sql             = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}getpaid_invoice_items (
320 320
 			ID BIGINT(20) NOT NULL AUTO_INCREMENT,
321 321
             post_id BIGINT(20) NOT NULL,
322 322
             item_id BIGINT(20) NOT NULL,
@@ -338,159 +338,159 @@  discard block
 block discarded – undo
338 338
 			KEY post_id (post_id)
339 339
 		  ) $charset_collate;";
340 340
 
341
-		dbDelta( $sql );
342
-
343
-	}
344
-
345
-	/**
346
-	 * Migrates old invoices to new invoices.
347
-	 *
348
-	 */
349
-	public function migrate_old_invoices() {
350
-		global $wpdb;
351
-
352
-		$invoices_table      = $wpdb->prefix . 'getpaid_invoices';
353
-		$invoice_items_table = $wpdb->prefix . 'getpaid_invoice_items';
354
-		$migrated            = $wpdb->get_col( "SELECT post_id FROM $invoices_table" );
355
-		$invoices            = array_unique(
356
-			get_posts(
357
-				array(
358
-					'post_type'      => array( 'wpi_invoice', 'wpi_quote' ),
359
-					'posts_per_page' => -1,
360
-					'fields'         => 'ids',
361
-					'post_status'    => array_keys( get_post_stati() ),
362
-					'exclude'        => (array) $migrated,
363
-				)
364
-			)
365
-		);
366
-
367
-		// Abort if we do not have any invoices.
368
-		if ( empty( $invoices ) ) {
369
-			return;
370
-		}
371
-
372
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-legacy-invoice.php' );
373
-
374
-		$invoice_rows = array();
375
-		foreach ( $invoices as $invoice ) {
376
-
377
-			$invoice = new WPInv_Legacy_Invoice( $invoice );
378
-
379
-			if ( empty( $invoice->ID ) ) {
380
-				return;
381
-			}
382
-
383
-			$fields = array (
384
-				'post_id'        => $invoice->ID,
385
-				'number'         => $invoice->get_number(),
386
-				'key'            => $invoice->get_key(),
387
-				'type'           => str_replace( 'wpi_', '', $invoice->post_type ),
388
-				'mode'           => $invoice->mode,
389
-				'user_ip'        => $invoice->get_ip(),
390
-				'first_name'     => $invoice->get_first_name(),
391
-				'last_name'      => $invoice->get_last_name(),
392
-				'address'        => $invoice->get_address(),
393
-				'city'           => $invoice->city,
394
-				'state'          => $invoice->state,
395
-				'country'        => $invoice->country,
396
-				'zip'            => $invoice->zip,
397
-				'adddress_confirmed' => (int) $invoice->adddress_confirmed,
398
-				'gateway'        => $invoice->get_gateway(),
399
-				'transaction_id' => $invoice->get_transaction_id(),
400
-				'currency'       => $invoice->get_currency(),
401
-				'subtotal'       => $invoice->get_subtotal(),
402
-				'tax'            => $invoice->get_tax(),
403
-				'fees_total'     => $invoice->get_fees_total(),
404
-				'total'          => $invoice->get_total(),
405
-				'discount'       => $invoice->get_discount(),
406
-				'discount_code'  => $invoice->get_discount_code(),
407
-				'disable_taxes'  => $invoice->disable_taxes,
408
-				'due_date'       => $invoice->get_due_date(),
409
-				'completed_date' => $invoice->get_completed_date(),
410
-				'company'        => $invoice->company,
411
-				'vat_number'     => $invoice->vat_number,
412
-				'vat_rate'       => $invoice->vat_rate,
413
-				'custom_meta'    => $invoice->payment_meta
414
-			);
415
-
416
-			foreach ( $fields as $key => $val ) {
417
-				if ( is_null( $val ) ) {
418
-					$val = '';
419
-				}
420
-				$val = maybe_serialize( $val );
421
-				$fields[ $key ] = $wpdb->prepare( '%s', $val );
422
-			}
423
-
424
-			$fields = implode( ', ', $fields );
425
-			$invoice_rows[] = "($fields)";
426
-
427
-			$item_rows    = array();
428
-			$item_columns = array();
429
-			foreach ( $invoice->get_cart_details() as $details ) {
430
-				$fields = array(
431
-					'post_id'          => $invoice->ID,
432
-					'item_id'          => $details['id'],
433
-					'item_name'        => $details['name'],
434
-					'item_description' => empty( $details['meta']['description'] ) ? '' : $details['meta']['description'],
435
-					'vat_rate'         => $details['vat_rate'],
436
-					'vat_class'        => empty( $details['vat_class'] ) ? '_standard' : $details['vat_class'],
437
-					'tax'              => $details['tax'],
438
-					'item_price'       => $details['item_price'],
439
-					'custom_price'     => $details['custom_price'],
440
-					'quantity'         => $details['quantity'],
441
-					'discount'         => $details['discount'],
442
-					'subtotal'         => $details['subtotal'],
443
-					'price'            => $details['price'],
444
-					'meta'             => $details['meta'],
445
-					'fees'             => $details['fees'],
446
-				);
447
-
448
-				$item_columns = array_keys ( $fields );
449
-
450
-				foreach ( $fields as $key => $val ) {
451
-					if ( is_null( $val ) ) {
452
-						$val = '';
453
-					}
454
-					$val = maybe_serialize( $val );
455
-					$fields[ $key ] = $wpdb->prepare( '%s', $val );
456
-				}
457
-
458
-				$fields = implode( ', ', $fields );
459
-				$item_rows[] = "($fields)";
460
-			}
461
-
462
-			$item_rows    = implode( ', ', $item_rows );
463
-			$item_columns = implode( ', ', $item_columns );
464
-			$wpdb->query( "INSERT INTO $invoice_items_table ($item_columns) VALUES $item_rows" );
465
-		}
466
-
467
-		if ( empty( $invoice_rows ) ) {
468
-			return;
469
-		}
470
-
471
-		$invoice_rows = implode( ', ', $invoice_rows );
472
-		$wpdb->query( "INSERT INTO $invoices_table VALUES $invoice_rows" );
473
-
474
-	}
475
-
476
-	/**
477
-	 * Migrates old invoices to new invoices.
478
-	 *
479
-	 */
480
-	public static function rename_gateways_label() {
481
-		global $wpdb;
482
-
483
-		foreach ( array_keys( wpinv_get_payment_gateways() ) as $gateway ) {
484
-
485
-			$wpdb->update(
486
-				$wpdb->prefix . 'getpaid_invoices',
487
-				array( 'gateway' => $gateway ),
488
-				array( 'gateway' => wpinv_get_gateway_admin_label( $gateway ) ),
489
-				'%s',
490
-				'%s'
491
-			);
492
-
493
-		}
494
-	}
341
+        dbDelta( $sql );
342
+
343
+    }
344
+
345
+    /**
346
+     * Migrates old invoices to new invoices.
347
+     *
348
+     */
349
+    public function migrate_old_invoices() {
350
+        global $wpdb;
351
+
352
+        $invoices_table      = $wpdb->prefix . 'getpaid_invoices';
353
+        $invoice_items_table = $wpdb->prefix . 'getpaid_invoice_items';
354
+        $migrated            = $wpdb->get_col( "SELECT post_id FROM $invoices_table" );
355
+        $invoices            = array_unique(
356
+            get_posts(
357
+                array(
358
+                    'post_type'      => array( 'wpi_invoice', 'wpi_quote' ),
359
+                    'posts_per_page' => -1,
360
+                    'fields'         => 'ids',
361
+                    'post_status'    => array_keys( get_post_stati() ),
362
+                    'exclude'        => (array) $migrated,
363
+                )
364
+            )
365
+        );
366
+
367
+        // Abort if we do not have any invoices.
368
+        if ( empty( $invoices ) ) {
369
+            return;
370
+        }
371
+
372
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-legacy-invoice.php' );
373
+
374
+        $invoice_rows = array();
375
+        foreach ( $invoices as $invoice ) {
376
+
377
+            $invoice = new WPInv_Legacy_Invoice( $invoice );
378
+
379
+            if ( empty( $invoice->ID ) ) {
380
+                return;
381
+            }
382
+
383
+            $fields = array (
384
+                'post_id'        => $invoice->ID,
385
+                'number'         => $invoice->get_number(),
386
+                'key'            => $invoice->get_key(),
387
+                'type'           => str_replace( 'wpi_', '', $invoice->post_type ),
388
+                'mode'           => $invoice->mode,
389
+                'user_ip'        => $invoice->get_ip(),
390
+                'first_name'     => $invoice->get_first_name(),
391
+                'last_name'      => $invoice->get_last_name(),
392
+                'address'        => $invoice->get_address(),
393
+                'city'           => $invoice->city,
394
+                'state'          => $invoice->state,
395
+                'country'        => $invoice->country,
396
+                'zip'            => $invoice->zip,
397
+                'adddress_confirmed' => (int) $invoice->adddress_confirmed,
398
+                'gateway'        => $invoice->get_gateway(),
399
+                'transaction_id' => $invoice->get_transaction_id(),
400
+                'currency'       => $invoice->get_currency(),
401
+                'subtotal'       => $invoice->get_subtotal(),
402
+                'tax'            => $invoice->get_tax(),
403
+                'fees_total'     => $invoice->get_fees_total(),
404
+                'total'          => $invoice->get_total(),
405
+                'discount'       => $invoice->get_discount(),
406
+                'discount_code'  => $invoice->get_discount_code(),
407
+                'disable_taxes'  => $invoice->disable_taxes,
408
+                'due_date'       => $invoice->get_due_date(),
409
+                'completed_date' => $invoice->get_completed_date(),
410
+                'company'        => $invoice->company,
411
+                'vat_number'     => $invoice->vat_number,
412
+                'vat_rate'       => $invoice->vat_rate,
413
+                'custom_meta'    => $invoice->payment_meta
414
+            );
415
+
416
+            foreach ( $fields as $key => $val ) {
417
+                if ( is_null( $val ) ) {
418
+                    $val = '';
419
+                }
420
+                $val = maybe_serialize( $val );
421
+                $fields[ $key ] = $wpdb->prepare( '%s', $val );
422
+            }
423
+
424
+            $fields = implode( ', ', $fields );
425
+            $invoice_rows[] = "($fields)";
426
+
427
+            $item_rows    = array();
428
+            $item_columns = array();
429
+            foreach ( $invoice->get_cart_details() as $details ) {
430
+                $fields = array(
431
+                    'post_id'          => $invoice->ID,
432
+                    'item_id'          => $details['id'],
433
+                    'item_name'        => $details['name'],
434
+                    'item_description' => empty( $details['meta']['description'] ) ? '' : $details['meta']['description'],
435
+                    'vat_rate'         => $details['vat_rate'],
436
+                    'vat_class'        => empty( $details['vat_class'] ) ? '_standard' : $details['vat_class'],
437
+                    'tax'              => $details['tax'],
438
+                    'item_price'       => $details['item_price'],
439
+                    'custom_price'     => $details['custom_price'],
440
+                    'quantity'         => $details['quantity'],
441
+                    'discount'         => $details['discount'],
442
+                    'subtotal'         => $details['subtotal'],
443
+                    'price'            => $details['price'],
444
+                    'meta'             => $details['meta'],
445
+                    'fees'             => $details['fees'],
446
+                );
447
+
448
+                $item_columns = array_keys ( $fields );
449
+
450
+                foreach ( $fields as $key => $val ) {
451
+                    if ( is_null( $val ) ) {
452
+                        $val = '';
453
+                    }
454
+                    $val = maybe_serialize( $val );
455
+                    $fields[ $key ] = $wpdb->prepare( '%s', $val );
456
+                }
457
+
458
+                $fields = implode( ', ', $fields );
459
+                $item_rows[] = "($fields)";
460
+            }
461
+
462
+            $item_rows    = implode( ', ', $item_rows );
463
+            $item_columns = implode( ', ', $item_columns );
464
+            $wpdb->query( "INSERT INTO $invoice_items_table ($item_columns) VALUES $item_rows" );
465
+        }
466
+
467
+        if ( empty( $invoice_rows ) ) {
468
+            return;
469
+        }
470
+
471
+        $invoice_rows = implode( ', ', $invoice_rows );
472
+        $wpdb->query( "INSERT INTO $invoices_table VALUES $invoice_rows" );
473
+
474
+    }
475
+
476
+    /**
477
+     * Migrates old invoices to new invoices.
478
+     *
479
+     */
480
+    public static function rename_gateways_label() {
481
+        global $wpdb;
482
+
483
+        foreach ( array_keys( wpinv_get_payment_gateways() ) as $gateway ) {
484
+
485
+            $wpdb->update(
486
+                $wpdb->prefix . 'getpaid_invoices',
487
+                array( 'gateway' => $gateway ),
488
+                array( 'gateway' => wpinv_get_gateway_admin_label( $gateway ) ),
489
+                '%s',
490
+                '%s'
491
+            );
492
+
493
+        }
494
+    }
495 495
 
496 496
 }
Please login to merge, or discard this patch.
Spacing   +71 added lines, -71 removed lines patch added patch discarded remove patch
@@ -8,7 +8,7 @@  discard block
 block discarded – undo
8 8
  * @since   2.0.2
9 9
  */
10 10
 
11
-defined( 'ABSPATH' ) || exit;
11
+defined('ABSPATH') || exit;
12 12
 
13 13
 /**
14 14
  * The main installer/updater class.
@@ -25,10 +25,10 @@  discard block
 block discarded – undo
25 25
 	 *
26 26
 	 * @param string $upgrade_from The current invoicing version.
27 27
 	 */
28
-	public function upgrade_db( $upgrade_from ) {
28
+	public function upgrade_db($upgrade_from) {
29 29
 
30 30
 		// Save the current invoicing version.
31
-		update_option( 'wpinv_version', WPINV_VERSION );
31
+		update_option('wpinv_version', WPINV_VERSION);
32 32
 
33 33
 		// Setup the invoice Custom Post Type.
34 34
 		GetPaid_Post_Types::register_post_types();
@@ -48,7 +48,7 @@  discard block
 block discarded – undo
48 48
 		// Create any missing database tables.
49 49
 		$method = "upgrade_from_$upgrade_from";
50 50
 
51
-		if ( method_exists( $this, $method ) ) {
51
+		if (method_exists($this, $method)) {
52 52
 			$this->$method();
53 53
 		}
54 54
 
@@ -64,7 +64,7 @@  discard block
 block discarded – undo
64 64
 		$this->create_invoice_items_table();
65 65
 
66 66
 		// Save default tax rates.
67
-		update_option( 'wpinv_tax_rates', wpinv_get_data( 'tax-rates' ) );
67
+		update_option('wpinv_tax_rates', wpinv_get_data('tax-rates'));
68 68
 	}
69 69
 
70 70
 	/**
@@ -75,28 +75,28 @@  discard block
 block discarded – undo
75 75
 		global $wpdb;
76 76
 
77 77
 		// Invoices.
78
-		$results = $wpdb->get_results( "SELECT ID FROM {$wpdb->posts} WHERE post_type = 'wpi_invoice' AND post_status IN( 'pending', 'processing', 'onhold', 'refunded', 'cancelled', 'failed', 'renewal' )" );
79
-		if ( ! empty( $results ) ) {
80
-			$wpdb->query( "UPDATE {$wpdb->posts} SET post_status = CONCAT( 'wpi-', post_status ) WHERE post_type = 'wpi_invoice' AND post_status IN( 'pending', 'processing', 'onhold', 'refunded', 'cancelled', 'failed', 'renewal' )" );
78
+		$results = $wpdb->get_results("SELECT ID FROM {$wpdb->posts} WHERE post_type = 'wpi_invoice' AND post_status IN( 'pending', 'processing', 'onhold', 'refunded', 'cancelled', 'failed', 'renewal' )");
79
+		if (!empty($results)) {
80
+			$wpdb->query("UPDATE {$wpdb->posts} SET post_status = CONCAT( 'wpi-', post_status ) WHERE post_type = 'wpi_invoice' AND post_status IN( 'pending', 'processing', 'onhold', 'refunded', 'cancelled', 'failed', 'renewal' )");
81 81
 
82 82
 			// Clean post cache
83
-			foreach ( $results as $row ) {
84
-				clean_post_cache( $row->ID );
83
+			foreach ($results as $row) {
84
+				clean_post_cache($row->ID);
85 85
 			}
86 86
 
87 87
 		}
88 88
 
89 89
 		// Item meta key changes
90 90
 		$query = "SELECT DISTINCT post_id FROM " . $wpdb->postmeta . " WHERE meta_key IN( '_wpinv_item_id', '_wpinv_package_id', '_wpinv_post_id', '_wpinv_cpt_name', '_wpinv_cpt_singular_name' )";
91
-		$results = $wpdb->get_results( $query );
91
+		$results = $wpdb->get_results($query);
92 92
 
93
-		if ( ! empty( $results ) ) {
94
-			$wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_id' WHERE meta_key IN( '_wpinv_item_id', '_wpinv_package_id', '_wpinv_post_id' )" );
95
-			$wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_name' WHERE meta_key = '_wpinv_cpt_name'" );
96
-			$wpdb->query( "UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_singular_name' WHERE meta_key = '_wpinv_cpt_singular_name'" );
93
+		if (!empty($results)) {
94
+			$wpdb->query("UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_id' WHERE meta_key IN( '_wpinv_item_id', '_wpinv_package_id', '_wpinv_post_id' )");
95
+			$wpdb->query("UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_name' WHERE meta_key = '_wpinv_cpt_name'");
96
+			$wpdb->query("UPDATE " . $wpdb->postmeta . " SET meta_key = '_wpinv_custom_singular_name' WHERE meta_key = '_wpinv_cpt_singular_name'");
97 97
 
98
-			foreach ( $results as $row ) {
99
-				clean_post_cache( $row->post_id );
98
+			foreach ($results as $row) {
99
+				clean_post_cache($row->post_id);
100 100
 			}
101 101
 
102 102
 		}
@@ -129,7 +129,7 @@  discard block
 block discarded – undo
129 129
 	 */
130 130
 	public function upgrade_from_207() {
131 131
 		global $wpdb;
132
-		$wpdb->query( "ALTER TABLE {$wpdb->prefix}getpaid_invoice_items MODIFY COLUMN quantity FLOAT(20);" );
132
+		$wpdb->query("ALTER TABLE {$wpdb->prefix}getpaid_invoice_items MODIFY COLUMN quantity FLOAT(20);");
133 133
 	}
134 134
 
135 135
 	/**
@@ -137,7 +137,7 @@  discard block
 block discarded – undo
137 137
 	 *
138 138
 	 */
139 139
 	public function add_capabilities() {
140
-		$GLOBALS['wp_roles']->add_cap( 'administrator', 'manage_invoicing' );
140
+		$GLOBALS['wp_roles']->add_cap('administrator', 'manage_invoicing');
141 141
 	}
142 142
 
143 143
 	/**
@@ -152,8 +152,8 @@  discard block
 block discarded – undo
152 152
 
153 153
 				// Checkout page.
154 154
 				'checkout_page' => array(
155
-					'name'      => _x( 'gp-checkout', 'Page slug', 'invoicing' ),
156
-					'title'     => _x( 'Checkout', 'Page title', 'invoicing' ),
155
+					'name'      => _x('gp-checkout', 'Page slug', 'invoicing'),
156
+					'title'     => _x('Checkout', 'Page title', 'invoicing'),
157 157
 					'content'   => '
158 158
 						<!-- wp:shortcode -->
159 159
 						[wpinv_checkout]
@@ -164,8 +164,8 @@  discard block
 block discarded – undo
164 164
 
165 165
 				// Invoice history page.
166 166
 				'invoice_history_page' => array(
167
-					'name'    => _x( 'gp-invoices', 'Page slug', 'invoicing' ),
168
-					'title'   => _x( 'My Invoices', 'Page title', 'invoicing' ),
167
+					'name'    => _x('gp-invoices', 'Page slug', 'invoicing'),
168
+					'title'   => _x('My Invoices', 'Page title', 'invoicing'),
169 169
 					'content' => '
170 170
 					<!-- wp:shortcode -->
171 171
 					[wpinv_history]
@@ -176,8 +176,8 @@  discard block
 block discarded – undo
176 176
 
177 177
 				// Success page content.
178 178
 				'success_page' => array(
179
-					'name'     => _x( 'gp-receipt', 'Page slug', 'invoicing' ),
180
-					'title'    => _x( 'Payment Confirmation', 'Page title', 'invoicing' ),
179
+					'name'     => _x('gp-receipt', 'Page slug', 'invoicing'),
180
+					'title'    => _x('Payment Confirmation', 'Page title', 'invoicing'),
181 181
 					'content'  => '
182 182
 					<!-- wp:shortcode -->
183 183
 					[wpinv_receipt]
@@ -188,16 +188,16 @@  discard block
 block discarded – undo
188 188
 
189 189
 				// Failure page content.
190 190
 				'failure_page' => array(
191
-					'name'    => _x( 'gp-transaction-failed', 'Page slug', 'invoicing' ),
192
-					'title'   => _x( 'Transaction Failed', 'Page title', 'invoicing' ),
193
-					'content' => __( 'Your transaction failed, please try again or contact site support.', 'invoicing' ),
191
+					'name'    => _x('gp-transaction-failed', 'Page slug', 'invoicing'),
192
+					'title'   => _x('Transaction Failed', 'Page title', 'invoicing'),
193
+					'content' => __('Your transaction failed, please try again or contact site support.', 'invoicing'),
194 194
 					'parent'  => 'gp-checkout',
195 195
 				),
196 196
 
197 197
 				// Subscriptions history page.
198 198
 				'invoice_subscription_page' => array(
199
-					'name'    => _x( 'gp-subscriptions', 'Page slug', 'invoicing' ),
200
-					'title'   => _x( 'My Subscriptions', 'Page title', 'invoicing' ),
199
+					'name'    => _x('gp-subscriptions', 'Page slug', 'invoicing'),
200
+					'title'   => _x('My Subscriptions', 'Page title', 'invoicing'),
201 201
 					'content' => '
202 202
 					<!-- wp:shortcode -->
203 203
 					[wpinv_subscriptions]
@@ -209,8 +209,8 @@  discard block
 block discarded – undo
209 209
 			)
210 210
 		);
211 211
 
212
-		foreach ( $pages as $key => $page ) {
213
-			wpinv_create_page( esc_sql( $page['name'] ), $key, $page['title'], $page['content'], $page['parent'] );
212
+		foreach ($pages as $key => $page) {
213
+			wpinv_create_page(esc_sql($page['name']), $key, $page['title'], $page['content'], $page['parent']);
214 214
 		}
215 215
 
216 216
 	}
@@ -223,7 +223,7 @@  discard block
 block discarded – undo
223 223
 
224 224
 		global $wpdb;
225 225
 
226
-		require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
226
+		require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
227 227
 
228 228
 		// Create tables.
229 229
 		$charset_collate = $wpdb->get_charset_collate();
@@ -250,7 +250,7 @@  discard block
 block discarded – undo
250 250
 			KEY customer_and_status (customer_id, status)
251 251
 		  ) $charset_collate;";
252 252
 
253
-		dbDelta( $sql );
253
+		dbDelta($sql);
254 254
 
255 255
 	}
256 256
 
@@ -261,7 +261,7 @@  discard block
 block discarded – undo
261 261
 	public function create_invoices_table() {
262 262
 		global $wpdb;
263 263
 
264
-		require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
264
+		require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
265 265
 
266 266
 		// Create tables.
267 267
 		$charset_collate = $wpdb->get_charset_collate();
@@ -301,7 +301,7 @@  discard block
 block discarded – undo
301 301
 			KEY `key` (`key`)
302 302
 		  ) $charset_collate;";
303 303
 
304
-		dbDelta( $sql );
304
+		dbDelta($sql);
305 305
 
306 306
 	}
307 307
 
@@ -312,7 +312,7 @@  discard block
 block discarded – undo
312 312
 	public function create_invoice_items_table() {
313 313
 		global $wpdb;
314 314
 
315
-		require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
315
+		require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
316 316
 
317 317
 		// Create tables.
318 318
 		$charset_collate = $wpdb->get_charset_collate();
@@ -338,7 +338,7 @@  discard block
 block discarded – undo
338 338
 			KEY post_id (post_id)
339 339
 		  ) $charset_collate;";
340 340
 
341
-		dbDelta( $sql );
341
+		dbDelta($sql);
342 342
 
343 343
 	}
344 344
 
@@ -351,40 +351,40 @@  discard block
 block discarded – undo
351 351
 
352 352
 		$invoices_table      = $wpdb->prefix . 'getpaid_invoices';
353 353
 		$invoice_items_table = $wpdb->prefix . 'getpaid_invoice_items';
354
-		$migrated            = $wpdb->get_col( "SELECT post_id FROM $invoices_table" );
354
+		$migrated            = $wpdb->get_col("SELECT post_id FROM $invoices_table");
355 355
 		$invoices            = array_unique(
356 356
 			get_posts(
357 357
 				array(
358
-					'post_type'      => array( 'wpi_invoice', 'wpi_quote' ),
358
+					'post_type'      => array('wpi_invoice', 'wpi_quote'),
359 359
 					'posts_per_page' => -1,
360 360
 					'fields'         => 'ids',
361
-					'post_status'    => array_keys( get_post_stati() ),
361
+					'post_status'    => array_keys(get_post_stati()),
362 362
 					'exclude'        => (array) $migrated,
363 363
 				)
364 364
 			)
365 365
 		);
366 366
 
367 367
 		// Abort if we do not have any invoices.
368
-		if ( empty( $invoices ) ) {
368
+		if (empty($invoices)) {
369 369
 			return;
370 370
 		}
371 371
 
372
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-legacy-invoice.php' );
372
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-legacy-invoice.php');
373 373
 
374 374
 		$invoice_rows = array();
375
-		foreach ( $invoices as $invoice ) {
375
+		foreach ($invoices as $invoice) {
376 376
 
377
-			$invoice = new WPInv_Legacy_Invoice( $invoice );
377
+			$invoice = new WPInv_Legacy_Invoice($invoice);
378 378
 
379
-			if ( empty( $invoice->ID ) ) {
379
+			if (empty($invoice->ID)) {
380 380
 				return;
381 381
 			}
382 382
 
383
-			$fields = array (
383
+			$fields = array(
384 384
 				'post_id'        => $invoice->ID,
385 385
 				'number'         => $invoice->get_number(),
386 386
 				'key'            => $invoice->get_key(),
387
-				'type'           => str_replace( 'wpi_', '', $invoice->post_type ),
387
+				'type'           => str_replace('wpi_', '', $invoice->post_type),
388 388
 				'mode'           => $invoice->mode,
389 389
 				'user_ip'        => $invoice->get_ip(),
390 390
 				'first_name'     => $invoice->get_first_name(),
@@ -413,27 +413,27 @@  discard block
 block discarded – undo
413 413
 				'custom_meta'    => $invoice->payment_meta
414 414
 			);
415 415
 
416
-			foreach ( $fields as $key => $val ) {
417
-				if ( is_null( $val ) ) {
416
+			foreach ($fields as $key => $val) {
417
+				if (is_null($val)) {
418 418
 					$val = '';
419 419
 				}
420
-				$val = maybe_serialize( $val );
421
-				$fields[ $key ] = $wpdb->prepare( '%s', $val );
420
+				$val = maybe_serialize($val);
421
+				$fields[$key] = $wpdb->prepare('%s', $val);
422 422
 			}
423 423
 
424
-			$fields = implode( ', ', $fields );
424
+			$fields = implode(', ', $fields);
425 425
 			$invoice_rows[] = "($fields)";
426 426
 
427 427
 			$item_rows    = array();
428 428
 			$item_columns = array();
429
-			foreach ( $invoice->get_cart_details() as $details ) {
429
+			foreach ($invoice->get_cart_details() as $details) {
430 430
 				$fields = array(
431 431
 					'post_id'          => $invoice->ID,
432 432
 					'item_id'          => $details['id'],
433 433
 					'item_name'        => $details['name'],
434
-					'item_description' => empty( $details['meta']['description'] ) ? '' : $details['meta']['description'],
434
+					'item_description' => empty($details['meta']['description']) ? '' : $details['meta']['description'],
435 435
 					'vat_rate'         => $details['vat_rate'],
436
-					'vat_class'        => empty( $details['vat_class'] ) ? '_standard' : $details['vat_class'],
436
+					'vat_class'        => empty($details['vat_class']) ? '_standard' : $details['vat_class'],
437 437
 					'tax'              => $details['tax'],
438 438
 					'item_price'       => $details['item_price'],
439 439
 					'custom_price'     => $details['custom_price'],
@@ -445,31 +445,31 @@  discard block
 block discarded – undo
445 445
 					'fees'             => $details['fees'],
446 446
 				);
447 447
 
448
-				$item_columns = array_keys ( $fields );
448
+				$item_columns = array_keys($fields);
449 449
 
450
-				foreach ( $fields as $key => $val ) {
451
-					if ( is_null( $val ) ) {
450
+				foreach ($fields as $key => $val) {
451
+					if (is_null($val)) {
452 452
 						$val = '';
453 453
 					}
454
-					$val = maybe_serialize( $val );
455
-					$fields[ $key ] = $wpdb->prepare( '%s', $val );
454
+					$val = maybe_serialize($val);
455
+					$fields[$key] = $wpdb->prepare('%s', $val);
456 456
 				}
457 457
 
458
-				$fields = implode( ', ', $fields );
458
+				$fields = implode(', ', $fields);
459 459
 				$item_rows[] = "($fields)";
460 460
 			}
461 461
 
462
-			$item_rows    = implode( ', ', $item_rows );
463
-			$item_columns = implode( ', ', $item_columns );
464
-			$wpdb->query( "INSERT INTO $invoice_items_table ($item_columns) VALUES $item_rows" );
462
+			$item_rows    = implode(', ', $item_rows);
463
+			$item_columns = implode(', ', $item_columns);
464
+			$wpdb->query("INSERT INTO $invoice_items_table ($item_columns) VALUES $item_rows");
465 465
 		}
466 466
 
467
-		if ( empty( $invoice_rows ) ) {
467
+		if (empty($invoice_rows)) {
468 468
 			return;
469 469
 		}
470 470
 
471
-		$invoice_rows = implode( ', ', $invoice_rows );
472
-		$wpdb->query( "INSERT INTO $invoices_table VALUES $invoice_rows" );
471
+		$invoice_rows = implode(', ', $invoice_rows);
472
+		$wpdb->query("INSERT INTO $invoices_table VALUES $invoice_rows");
473 473
 
474 474
 	}
475 475
 
@@ -480,12 +480,12 @@  discard block
 block discarded – undo
480 480
 	public static function rename_gateways_label() {
481 481
 		global $wpdb;
482 482
 
483
-		foreach ( array_keys( wpinv_get_payment_gateways() ) as $gateway ) {
483
+		foreach (array_keys(wpinv_get_payment_gateways()) as $gateway) {
484 484
 
485 485
 			$wpdb->update(
486 486
 				$wpdb->prefix . 'getpaid_invoices',
487
-				array( 'gateway' => $gateway ),
488
-				array( 'gateway' => wpinv_get_gateway_admin_label( $gateway ) ),
487
+				array('gateway' => $gateway),
488
+				array('gateway' => wpinv_get_gateway_admin_label($gateway)),
489 489
 				'%s',
490 490
 				'%s'
491 491
 			);
Please login to merge, or discard this patch.
includes/class-wpinv.php 2 patches
Indentation   +500 added lines, -500 removed lines patch added patch discarded remove patch
@@ -14,543 +14,543 @@
 block discarded – undo
14 14
  */
15 15
 class WPInv_Plugin {
16 16
 
17
-	/**
18
-	 * GetPaid version.
19
-	 *
20
-	 * @var string
21
-	 */
22
-	public $version;
23
-
24
-	/**
25
-	 * Data container.
26
-	 *
27
-	 * @var array
28
-	 */
29
-	protected $data = array();
30
-
31
-	/**
32
-	 * Form elements instance.
33
-	 *
34
-	 * @var WPInv_Payment_Form_Elements
35
-	 */
36
-	public $form_elements;
37
-
38
-	/**
39
-	 * @param array An array of payment gateways.
40
-	 */
41
-	public $gateways;
42
-
43
-	/**
44
-	 * Class constructor.
45
-	 */
46
-	public function __construct() {
47
-		$this->define_constants();
48
-		$this->includes();
49
-		$this->init_hooks();
50
-		$this->set_properties();
51
-	}
52
-
53
-	/**
54
-	 * Sets a custom data property.
55
-	 * 
56
-	 * @param string $prop The prop to set.
57
-	 * @param mixed $value The value to retrieve.
58
-	 */
59
-	public function set( $prop, $value ) {
60
-		$this->data[ $prop ] = $value;
61
-	}
62
-
63
-	/**
64
-	 * Gets a custom data property.
65
-	 *
66
-	 * @param string $prop The prop to set.
67
-	 * @return mixed The value.
68
-	 */
69
-	public function get( $prop ) {
70
-
71
-		if ( isset( $this->data[ $prop ] ) ) {
72
-			return $this->data[ $prop ];
73
-		}
74
-
75
-		return null;
76
-	}
77
-
78
-	/**
79
-	 * Define class properties.
80
-	 */
81
-	public function set_properties() {
82
-
83
-		// Sessions.
84
-		$this->set( 'session', new WPInv_Session_Handler() );
85
-		$GLOBALS['wpi_session'] = $this->get( 'session' ); // Backwards compatibility.
86
-		$GLOBALS['wpinv_euvat'] = new WPInv_EUVat(); // Backwards compatibility.
87
-
88
-		// Init other objects.
89
-		$this->set( 'session', new WPInv_Session_Handler() );
90
-		$this->set( 'notes', new WPInv_Notes() );
91
-		$this->set( 'api', new WPInv_API() );
92
-		$this->set( 'post_types', new GetPaid_Post_Types() );
93
-		$this->set( 'template', new GetPaid_Template() );
94
-		$this->set( 'admin', new GetPaid_Admin() );
95
-		$this->set( 'subscriptions', new WPInv_Subscriptions() );
96
-		$this->set( 'invoice_emails', new GetPaid_Invoice_Notification_Emails() );
97
-		$this->set( 'subscription_emails', new GetPaid_Subscription_Notification_Emails() );
98
-		$this->set( 'daily_maintenace', new GetPaid_Daily_Maintenance() );
99
-		$this->set( 'payment_forms', new GetPaid_Payment_Forms() );
100
-		$this->set( 'maxmind', new GetPaid_MaxMind_Geolocation() );
101
-
102
-	}
103
-
104
-	 /**
105
-	 * Define plugin constants.
106
-	 */
107
-	public function define_constants() {
108
-		define( 'WPINV_PLUGIN_DIR', plugin_dir_path( WPINV_PLUGIN_FILE ) );
109
-		define( 'WPINV_PLUGIN_URL', plugin_dir_url( WPINV_PLUGIN_FILE ) );
110
-		$this->version = WPINV_VERSION;
111
-	}
112
-
113
-	/**
114
-	 * Hook into actions and filters.
115
-	 *
116
-	 * @since 1.0.19
117
-	 */
118
-	protected function init_hooks() {
119
-		/* Internationalize the text strings used. */
120
-		add_action( 'plugins_loaded', array( &$this, 'plugins_loaded' ) );
121
-
122
-		// Init the plugin after WordPress inits.
123
-		add_action( 'init', array( $this, 'init' ), 1 );
124
-		add_action( 'init', array( $this, 'maybe_process_ipn' ), 10 );
125
-		add_action( 'init', array( $this, 'wpinv_actions' ) );
126
-		add_action( 'init', array( $this, 'maybe_do_authenticated_action' ), 100 );
127
-		add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 11 );
128
-		add_action( 'wp_footer', array( $this, 'wp_footer' ) );
129
-		add_action( 'wp_head', array( $this, 'wp_head' ) );
130
-		add_action( 'widgets_init', array( &$this, 'register_widgets' ) );
131
-		add_filter( 'wpseo_exclude_from_sitemap_by_post_ids', array( $this, 'wpseo_exclude_from_sitemap_by_post_ids' ) );
132
-		add_filter( 'pre_get_posts', array( &$this, 'pre_get_posts' ) );
133
-
134
-		// Fires after registering actions.
135
-		do_action( 'wpinv_actions', $this );
136
-		do_action( 'getpaid_actions', $this );
137
-
138
-	}
139
-
140
-	public function plugins_loaded() {
141
-		/* Internationalize the text strings used. */
142
-		$this->load_textdomain();
143
-
144
-		do_action( 'wpinv_loaded' );
145
-
146
-		// Fix oxygen page builder conflict
147
-		if ( function_exists( 'ct_css_output' ) ) {
148
-			wpinv_oxygen_fix_conflict();
149
-		}
150
-	}
151
-
152
-	/**
153
-	 * Load the translation of the plugin.
154
-	 *
155
-	 * @since 1.0
156
-	 */
157
-	public function load_textdomain( $locale = NULL ) {
158
-		if ( empty( $locale ) ) {
159
-			$locale = is_admin() && function_exists( 'get_user_locale' ) ? get_user_locale() : get_locale();
160
-		}
161
-
162
-		$locale = apply_filters( 'plugin_locale', $locale, 'invoicing' );
163
-
164
-		unload_textdomain( 'invoicing' );
165
-		load_textdomain( 'invoicing', WP_LANG_DIR . '/invoicing/invoicing-' . $locale . '.mo' );
166
-		load_plugin_textdomain( 'invoicing', false, WPINV_PLUGIN_DIR . 'languages' );
167
-
168
-		/**
169
-		 * Define language constants.
170
-		 */
171
-		require_once( WPINV_PLUGIN_DIR . 'language.php' );
172
-	}
173
-
174
-	/**
175
-	 * Include required core files used in admin and on the frontend.
176
-	 */
177
-	public function includes() {
178
-
179
-		// Start with the settings.
180
-		require_once( WPINV_PLUGIN_DIR . 'includes/admin/register-settings.php' );
181
-
182
-		// Packages/libraries.
183
-		require_once( WPINV_PLUGIN_DIR . 'vendor/autoload.php' );
184
-		require_once( WPINV_PLUGIN_DIR . 'vendor/ayecode/wp-ayecode-ui/ayecode-ui-loader.php' );
185
-
186
-		// Load functions.
187
-		require_once( WPINV_PLUGIN_DIR . 'includes/deprecated-functions.php' );
188
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-email-functions.php' );
189
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-general-functions.php' );
190
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-helper-functions.php' );
191
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-tax-functions.php' );
192
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-template-functions.php' );
193
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-address-functions.php' );
194
-		require_once( WPINV_PLUGIN_DIR . 'includes/invoice-functions.php' );
195
-		require_once( WPINV_PLUGIN_DIR . 'includes/subscription-functions.php' );
196
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-item-functions.php' );
197
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-discount-functions.php' );
198
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-gateway-functions.php' );
199
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-payment-functions.php' );
200
-		require_once( WPINV_PLUGIN_DIR . 'includes/user-functions.php' );
201
-		require_once( WPINV_PLUGIN_DIR . 'includes/error-functions.php' );
202
-
203
-		// Register autoloader.
204
-		try {
205
-			spl_autoload_register( array( $this, 'autoload' ), true );
206
-		} catch ( Exception $e ) {
207
-			wpinv_error_log( $e->getMessage(), '', __FILE__, 149, true );
208
-		}
209
-
210
-		require_once( WPINV_PLUGIN_DIR . 'includes/abstracts/abstract-wpinv-session.php' );
211
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-session-handler.php' );
212
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-ajax.php' );
213
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-api.php' );
214
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-cache-helper.php' );
215
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-db.php' );
216
-		require_once( WPINV_PLUGIN_DIR . 'includes/admin/subscriptions.php' );
217
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-subscriptions-db.php' );
218
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-subscription.php' );
219
-		require_once( WPINV_PLUGIN_DIR . 'includes/abstracts/abstract-wpinv-privacy.php' );
220
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-privacy.php' );
221
-		require_once( WPINV_PLUGIN_DIR . 'includes/libraries/class-ayecode-addons.php' );
222
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-addons.php' );
223
-		require_once( WPINV_PLUGIN_DIR . 'widgets/checkout.php' );
224
-		require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-history.php' );
225
-		require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-receipt.php' );
226
-		require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-messages.php' );
227
-		require_once( WPINV_PLUGIN_DIR . 'widgets/subscriptions.php' );
228
-		require_once( WPINV_PLUGIN_DIR . 'widgets/buy-item.php' );
229
-		require_once( WPINV_PLUGIN_DIR . 'widgets/getpaid.php' );
230
-		require_once( WPINV_PLUGIN_DIR . 'includes/admin/admin-pages.php' );
231
-
232
-		if ( is_admin() || ( defined( 'WP_CLI' ) && WP_CLI ) ) {
233
-			GetPaid_Post_Types_Admin::init();
234
-
235
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/wpinv-admin-functions.php' );
236
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-payment-form.php' );
237
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-notes.php' );
238
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-admin-menus.php' );
239
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-users.php' );
240
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-getpaid-admin-profile.php' );
241
-			// load the user class only on the users.php page
242
-			global $pagenow;
243
-			if($pagenow=='users.php'){
244
-				new WPInv_Admin_Users();
245
-			}
246
-		}
247
-
248
-		// Register cli commands
249
-		if ( defined( 'WP_CLI' ) && WP_CLI ) {
250
-			require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-cli.php' );
251
-			WP_CLI::add_command( 'invoicing', 'WPInv_CLI' );
252
-		}
253
-
254
-	}
255
-
256
-	/**
257
-	 * Class autoloader
258
-	 *
259
-	 * @param       string $class_name The name of the class to load.
260
-	 * @access      public
261
-	 * @since       1.0.19
262
-	 * @return      void
263
-	 */
264
-	public function autoload( $class_name ) {
265
-
266
-		// Normalize the class name...
267
-		$class_name  = strtolower( $class_name );
268
-
269
-		// ... and make sure it is our class.
270
-		if ( false === strpos( $class_name, 'getpaid_' ) && false === strpos( $class_name, 'wpinv_' ) ) {
271
-			return;
272
-		}
273
-
274
-		// Next, prepare the file name from the class.
275
-		$file_name = 'class-' . str_replace( '_', '-', $class_name ) . '.php';
276
-
277
-		// Base path of the classes.
278
-		$plugin_path = untrailingslashit( WPINV_PLUGIN_DIR );
279
-
280
-		// And an array of possible locations in order of importance.
281
-		$locations = array(
282
-			"$plugin_path/includes",
283
-			"$plugin_path/includes/data-stores",
284
-			"$plugin_path/includes/gateways",
285
-			"$plugin_path/includes/payments",
286
-			"$plugin_path/includes/geolocation",
287
-			"$plugin_path/includes/reports",
288
-			"$plugin_path/includes/api",
289
-			"$plugin_path/includes/admin",
290
-			"$plugin_path/includes/admin/meta-boxes",
291
-		);
292
-
293
-		foreach ( apply_filters( 'getpaid_autoload_locations', $locations ) as $location ) {
294
-
295
-			if ( file_exists( trailingslashit( $location ) . $file_name ) ) {
296
-				include trailingslashit( $location ) . $file_name;
297
-				break;
298
-			}
299
-
300
-		}
301
-
302
-	}
303
-
304
-	/**
305
-	 * Inits hooks etc.
306
-	 */
307
-	public function init() {
308
-
309
-		// Fires before getpaid inits.
310
-		do_action( 'before_getpaid_init', $this );
311
-
312
-		// Maybe upgrade.
313
-		$this->maybe_upgrade_database();
314
-
315
-		// Load default gateways.
316
-		$gateways = apply_filters(
317
-			'getpaid_default_gateways',
318
-			array(
319
-				'manual'        => 'GetPaid_Manual_Gateway',
320
-				'paypal'        => 'GetPaid_Paypal_Gateway',
321
-				'worldpay'      => 'GetPaid_Worldpay_Gateway',
322
-				'bank_transfer' => 'GetPaid_Bank_Transfer_Gateway',
323
-				'authorizenet'  => 'GetPaid_Authorize_Net_Gateway',
324
-			)
325
-		);
326
-
327
-		foreach ( $gateways as $id => $class ) {
328
-			$this->gateways[ $id ] = new $class();
329
-		}
330
-
331
-		if ( 'yes' != get_option( 'wpinv_renamed_gateways' ) ) {
332
-			GetPaid_Installer::rename_gateways_label();
333
-			update_option( 'wpinv_renamed_gateways', 'yes' );
334
-		}
335
-
336
-		// Fires after getpaid inits.
337
-		do_action( 'getpaid_init', $this );
338
-
339
-	}
340
-
341
-	/**
342
-	 * Checks if this is an IPN request and processes it.
343
-	 */
344
-	public function maybe_process_ipn() {
345
-
346
-		// Ensure that this is an IPN request.
347
-		if ( empty( $_GET['wpi-listener'] ) || 'IPN' !== $_GET['wpi-listener'] || empty( $_GET['wpi-gateway'] ) ) {
348
-			return;
349
-		}
350
-
351
-		$gateway = wpinv_clean( $_GET['wpi-gateway'] );
352
-
353
-		do_action( 'wpinv_verify_payment_ipn', $gateway );
354
-		do_action( "wpinv_verify_{$gateway}_ipn" );
355
-		exit;
356
-
357
-	}
358
-
359
-	public function enqueue_scripts() {
360
-
361
-		// Fires before adding scripts.
362
-		do_action( 'getpaid_enqueue_scripts' );
363
-
364
-		$localize                         = array();
365
-		$localize['ajax_url']             = admin_url( 'admin-ajax.php' );
366
-		$localize['nonce']                = wp_create_nonce( 'wpinv-nonce' );
367
-		$localize['txtComplete']          = __( 'Continue', 'invoicing' );
368
-		$localize['UseTaxes']             = wpinv_use_taxes();
369
-		$localize['formNonce']            = wp_create_nonce( 'getpaid_form_nonce' );
370
-		$localize['loading']              = __( 'Loading...', 'invoicing' );
371
-		$localize['connectionError']      = __( 'Could not establish a connection to the server.', 'invoicing' );
372
-
373
-		$localize = apply_filters( 'wpinv_front_js_localize', $localize );
374
-
375
-		$version = filemtime( WPINV_PLUGIN_DIR . 'assets/js/payment-forms.js' );
376
-		wp_enqueue_script( 'wpinv-front-script', WPINV_PLUGIN_URL . 'assets/js/payment-forms.js', array( 'jquery' ),  $version, true );
377
-		wp_localize_script( 'wpinv-front-script', 'WPInv', $localize );
378
-	}
379
-
380
-	public function wpinv_actions() {
381
-		if ( isset( $_REQUEST['wpi_action'] ) ) {
382
-			do_action( 'wpinv_' . wpinv_sanitize_key( $_REQUEST['wpi_action'] ), $_REQUEST );
383
-		}
384
-	}
385
-
386
-	/**
17
+    /**
18
+     * GetPaid version.
19
+     *
20
+     * @var string
21
+     */
22
+    public $version;
23
+
24
+    /**
25
+     * Data container.
26
+     *
27
+     * @var array
28
+     */
29
+    protected $data = array();
30
+
31
+    /**
32
+     * Form elements instance.
33
+     *
34
+     * @var WPInv_Payment_Form_Elements
35
+     */
36
+    public $form_elements;
37
+
38
+    /**
39
+     * @param array An array of payment gateways.
40
+     */
41
+    public $gateways;
42
+
43
+    /**
44
+     * Class constructor.
45
+     */
46
+    public function __construct() {
47
+        $this->define_constants();
48
+        $this->includes();
49
+        $this->init_hooks();
50
+        $this->set_properties();
51
+    }
52
+
53
+    /**
54
+     * Sets a custom data property.
55
+     * 
56
+     * @param string $prop The prop to set.
57
+     * @param mixed $value The value to retrieve.
58
+     */
59
+    public function set( $prop, $value ) {
60
+        $this->data[ $prop ] = $value;
61
+    }
62
+
63
+    /**
64
+     * Gets a custom data property.
65
+     *
66
+     * @param string $prop The prop to set.
67
+     * @return mixed The value.
68
+     */
69
+    public function get( $prop ) {
70
+
71
+        if ( isset( $this->data[ $prop ] ) ) {
72
+            return $this->data[ $prop ];
73
+        }
74
+
75
+        return null;
76
+    }
77
+
78
+    /**
79
+     * Define class properties.
80
+     */
81
+    public function set_properties() {
82
+
83
+        // Sessions.
84
+        $this->set( 'session', new WPInv_Session_Handler() );
85
+        $GLOBALS['wpi_session'] = $this->get( 'session' ); // Backwards compatibility.
86
+        $GLOBALS['wpinv_euvat'] = new WPInv_EUVat(); // Backwards compatibility.
87
+
88
+        // Init other objects.
89
+        $this->set( 'session', new WPInv_Session_Handler() );
90
+        $this->set( 'notes', new WPInv_Notes() );
91
+        $this->set( 'api', new WPInv_API() );
92
+        $this->set( 'post_types', new GetPaid_Post_Types() );
93
+        $this->set( 'template', new GetPaid_Template() );
94
+        $this->set( 'admin', new GetPaid_Admin() );
95
+        $this->set( 'subscriptions', new WPInv_Subscriptions() );
96
+        $this->set( 'invoice_emails', new GetPaid_Invoice_Notification_Emails() );
97
+        $this->set( 'subscription_emails', new GetPaid_Subscription_Notification_Emails() );
98
+        $this->set( 'daily_maintenace', new GetPaid_Daily_Maintenance() );
99
+        $this->set( 'payment_forms', new GetPaid_Payment_Forms() );
100
+        $this->set( 'maxmind', new GetPaid_MaxMind_Geolocation() );
101
+
102
+    }
103
+
104
+        /**
105
+         * Define plugin constants.
106
+         */
107
+    public function define_constants() {
108
+        define( 'WPINV_PLUGIN_DIR', plugin_dir_path( WPINV_PLUGIN_FILE ) );
109
+        define( 'WPINV_PLUGIN_URL', plugin_dir_url( WPINV_PLUGIN_FILE ) );
110
+        $this->version = WPINV_VERSION;
111
+    }
112
+
113
+    /**
114
+     * Hook into actions and filters.
115
+     *
116
+     * @since 1.0.19
117
+     */
118
+    protected function init_hooks() {
119
+        /* Internationalize the text strings used. */
120
+        add_action( 'plugins_loaded', array( &$this, 'plugins_loaded' ) );
121
+
122
+        // Init the plugin after WordPress inits.
123
+        add_action( 'init', array( $this, 'init' ), 1 );
124
+        add_action( 'init', array( $this, 'maybe_process_ipn' ), 10 );
125
+        add_action( 'init', array( $this, 'wpinv_actions' ) );
126
+        add_action( 'init', array( $this, 'maybe_do_authenticated_action' ), 100 );
127
+        add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 11 );
128
+        add_action( 'wp_footer', array( $this, 'wp_footer' ) );
129
+        add_action( 'wp_head', array( $this, 'wp_head' ) );
130
+        add_action( 'widgets_init', array( &$this, 'register_widgets' ) );
131
+        add_filter( 'wpseo_exclude_from_sitemap_by_post_ids', array( $this, 'wpseo_exclude_from_sitemap_by_post_ids' ) );
132
+        add_filter( 'pre_get_posts', array( &$this, 'pre_get_posts' ) );
133
+
134
+        // Fires after registering actions.
135
+        do_action( 'wpinv_actions', $this );
136
+        do_action( 'getpaid_actions', $this );
137
+
138
+    }
139
+
140
+    public function plugins_loaded() {
141
+        /* Internationalize the text strings used. */
142
+        $this->load_textdomain();
143
+
144
+        do_action( 'wpinv_loaded' );
145
+
146
+        // Fix oxygen page builder conflict
147
+        if ( function_exists( 'ct_css_output' ) ) {
148
+            wpinv_oxygen_fix_conflict();
149
+        }
150
+    }
151
+
152
+    /**
153
+     * Load the translation of the plugin.
154
+     *
155
+     * @since 1.0
156
+     */
157
+    public function load_textdomain( $locale = NULL ) {
158
+        if ( empty( $locale ) ) {
159
+            $locale = is_admin() && function_exists( 'get_user_locale' ) ? get_user_locale() : get_locale();
160
+        }
161
+
162
+        $locale = apply_filters( 'plugin_locale', $locale, 'invoicing' );
163
+
164
+        unload_textdomain( 'invoicing' );
165
+        load_textdomain( 'invoicing', WP_LANG_DIR . '/invoicing/invoicing-' . $locale . '.mo' );
166
+        load_plugin_textdomain( 'invoicing', false, WPINV_PLUGIN_DIR . 'languages' );
167
+
168
+        /**
169
+         * Define language constants.
170
+         */
171
+        require_once( WPINV_PLUGIN_DIR . 'language.php' );
172
+    }
173
+
174
+    /**
175
+     * Include required core files used in admin and on the frontend.
176
+     */
177
+    public function includes() {
178
+
179
+        // Start with the settings.
180
+        require_once( WPINV_PLUGIN_DIR . 'includes/admin/register-settings.php' );
181
+
182
+        // Packages/libraries.
183
+        require_once( WPINV_PLUGIN_DIR . 'vendor/autoload.php' );
184
+        require_once( WPINV_PLUGIN_DIR . 'vendor/ayecode/wp-ayecode-ui/ayecode-ui-loader.php' );
185
+
186
+        // Load functions.
187
+        require_once( WPINV_PLUGIN_DIR . 'includes/deprecated-functions.php' );
188
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-email-functions.php' );
189
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-general-functions.php' );
190
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-helper-functions.php' );
191
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-tax-functions.php' );
192
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-template-functions.php' );
193
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-address-functions.php' );
194
+        require_once( WPINV_PLUGIN_DIR . 'includes/invoice-functions.php' );
195
+        require_once( WPINV_PLUGIN_DIR . 'includes/subscription-functions.php' );
196
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-item-functions.php' );
197
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-discount-functions.php' );
198
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-gateway-functions.php' );
199
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-payment-functions.php' );
200
+        require_once( WPINV_PLUGIN_DIR . 'includes/user-functions.php' );
201
+        require_once( WPINV_PLUGIN_DIR . 'includes/error-functions.php' );
202
+
203
+        // Register autoloader.
204
+        try {
205
+            spl_autoload_register( array( $this, 'autoload' ), true );
206
+        } catch ( Exception $e ) {
207
+            wpinv_error_log( $e->getMessage(), '', __FILE__, 149, true );
208
+        }
209
+
210
+        require_once( WPINV_PLUGIN_DIR . 'includes/abstracts/abstract-wpinv-session.php' );
211
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-session-handler.php' );
212
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-ajax.php' );
213
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-api.php' );
214
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-cache-helper.php' );
215
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-db.php' );
216
+        require_once( WPINV_PLUGIN_DIR . 'includes/admin/subscriptions.php' );
217
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-subscriptions-db.php' );
218
+        require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-subscription.php' );
219
+        require_once( WPINV_PLUGIN_DIR . 'includes/abstracts/abstract-wpinv-privacy.php' );
220
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-privacy.php' );
221
+        require_once( WPINV_PLUGIN_DIR . 'includes/libraries/class-ayecode-addons.php' );
222
+        require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-addons.php' );
223
+        require_once( WPINV_PLUGIN_DIR . 'widgets/checkout.php' );
224
+        require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-history.php' );
225
+        require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-receipt.php' );
226
+        require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-messages.php' );
227
+        require_once( WPINV_PLUGIN_DIR . 'widgets/subscriptions.php' );
228
+        require_once( WPINV_PLUGIN_DIR . 'widgets/buy-item.php' );
229
+        require_once( WPINV_PLUGIN_DIR . 'widgets/getpaid.php' );
230
+        require_once( WPINV_PLUGIN_DIR . 'includes/admin/admin-pages.php' );
231
+
232
+        if ( is_admin() || ( defined( 'WP_CLI' ) && WP_CLI ) ) {
233
+            GetPaid_Post_Types_Admin::init();
234
+
235
+            require_once( WPINV_PLUGIN_DIR . 'includes/admin/wpinv-admin-functions.php' );
236
+            require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-payment-form.php' );
237
+            require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-notes.php' );
238
+            require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-admin-menus.php' );
239
+            require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-users.php' );
240
+            require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-getpaid-admin-profile.php' );
241
+            // load the user class only on the users.php page
242
+            global $pagenow;
243
+            if($pagenow=='users.php'){
244
+                new WPInv_Admin_Users();
245
+            }
246
+        }
247
+
248
+        // Register cli commands
249
+        if ( defined( 'WP_CLI' ) && WP_CLI ) {
250
+            require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-cli.php' );
251
+            WP_CLI::add_command( 'invoicing', 'WPInv_CLI' );
252
+        }
253
+
254
+    }
255
+
256
+    /**
257
+     * Class autoloader
258
+     *
259
+     * @param       string $class_name The name of the class to load.
260
+     * @access      public
261
+     * @since       1.0.19
262
+     * @return      void
263
+     */
264
+    public function autoload( $class_name ) {
265
+
266
+        // Normalize the class name...
267
+        $class_name  = strtolower( $class_name );
268
+
269
+        // ... and make sure it is our class.
270
+        if ( false === strpos( $class_name, 'getpaid_' ) && false === strpos( $class_name, 'wpinv_' ) ) {
271
+            return;
272
+        }
273
+
274
+        // Next, prepare the file name from the class.
275
+        $file_name = 'class-' . str_replace( '_', '-', $class_name ) . '.php';
276
+
277
+        // Base path of the classes.
278
+        $plugin_path = untrailingslashit( WPINV_PLUGIN_DIR );
279
+
280
+        // And an array of possible locations in order of importance.
281
+        $locations = array(
282
+            "$plugin_path/includes",
283
+            "$plugin_path/includes/data-stores",
284
+            "$plugin_path/includes/gateways",
285
+            "$plugin_path/includes/payments",
286
+            "$plugin_path/includes/geolocation",
287
+            "$plugin_path/includes/reports",
288
+            "$plugin_path/includes/api",
289
+            "$plugin_path/includes/admin",
290
+            "$plugin_path/includes/admin/meta-boxes",
291
+        );
292
+
293
+        foreach ( apply_filters( 'getpaid_autoload_locations', $locations ) as $location ) {
294
+
295
+            if ( file_exists( trailingslashit( $location ) . $file_name ) ) {
296
+                include trailingslashit( $location ) . $file_name;
297
+                break;
298
+            }
299
+
300
+        }
301
+
302
+    }
303
+
304
+    /**
305
+     * Inits hooks etc.
306
+     */
307
+    public function init() {
308
+
309
+        // Fires before getpaid inits.
310
+        do_action( 'before_getpaid_init', $this );
311
+
312
+        // Maybe upgrade.
313
+        $this->maybe_upgrade_database();
314
+
315
+        // Load default gateways.
316
+        $gateways = apply_filters(
317
+            'getpaid_default_gateways',
318
+            array(
319
+                'manual'        => 'GetPaid_Manual_Gateway',
320
+                'paypal'        => 'GetPaid_Paypal_Gateway',
321
+                'worldpay'      => 'GetPaid_Worldpay_Gateway',
322
+                'bank_transfer' => 'GetPaid_Bank_Transfer_Gateway',
323
+                'authorizenet'  => 'GetPaid_Authorize_Net_Gateway',
324
+            )
325
+        );
326
+
327
+        foreach ( $gateways as $id => $class ) {
328
+            $this->gateways[ $id ] = new $class();
329
+        }
330
+
331
+        if ( 'yes' != get_option( 'wpinv_renamed_gateways' ) ) {
332
+            GetPaid_Installer::rename_gateways_label();
333
+            update_option( 'wpinv_renamed_gateways', 'yes' );
334
+        }
335
+
336
+        // Fires after getpaid inits.
337
+        do_action( 'getpaid_init', $this );
338
+
339
+    }
340
+
341
+    /**
342
+     * Checks if this is an IPN request and processes it.
343
+     */
344
+    public function maybe_process_ipn() {
345
+
346
+        // Ensure that this is an IPN request.
347
+        if ( empty( $_GET['wpi-listener'] ) || 'IPN' !== $_GET['wpi-listener'] || empty( $_GET['wpi-gateway'] ) ) {
348
+            return;
349
+        }
350
+
351
+        $gateway = wpinv_clean( $_GET['wpi-gateway'] );
352
+
353
+        do_action( 'wpinv_verify_payment_ipn', $gateway );
354
+        do_action( "wpinv_verify_{$gateway}_ipn" );
355
+        exit;
356
+
357
+    }
358
+
359
+    public function enqueue_scripts() {
360
+
361
+        // Fires before adding scripts.
362
+        do_action( 'getpaid_enqueue_scripts' );
363
+
364
+        $localize                         = array();
365
+        $localize['ajax_url']             = admin_url( 'admin-ajax.php' );
366
+        $localize['nonce']                = wp_create_nonce( 'wpinv-nonce' );
367
+        $localize['txtComplete']          = __( 'Continue', 'invoicing' );
368
+        $localize['UseTaxes']             = wpinv_use_taxes();
369
+        $localize['formNonce']            = wp_create_nonce( 'getpaid_form_nonce' );
370
+        $localize['loading']              = __( 'Loading...', 'invoicing' );
371
+        $localize['connectionError']      = __( 'Could not establish a connection to the server.', 'invoicing' );
372
+
373
+        $localize = apply_filters( 'wpinv_front_js_localize', $localize );
374
+
375
+        $version = filemtime( WPINV_PLUGIN_DIR . 'assets/js/payment-forms.js' );
376
+        wp_enqueue_script( 'wpinv-front-script', WPINV_PLUGIN_URL . 'assets/js/payment-forms.js', array( 'jquery' ),  $version, true );
377
+        wp_localize_script( 'wpinv-front-script', 'WPInv', $localize );
378
+    }
379
+
380
+    public function wpinv_actions() {
381
+        if ( isset( $_REQUEST['wpi_action'] ) ) {
382
+            do_action( 'wpinv_' . wpinv_sanitize_key( $_REQUEST['wpi_action'] ), $_REQUEST );
383
+        }
384
+    }
385
+
386
+    /**
387 387
      * Fires an action after verifying that a user can fire them.
388
-	 *
389
-	 * Note: If the action is on an invoice, subscription etc, esure that the
390
-	 * current user owns the invoice/subscription.
388
+     *
389
+     * Note: If the action is on an invoice, subscription etc, esure that the
390
+     * current user owns the invoice/subscription.
391 391
      */
392 392
     public function maybe_do_authenticated_action() {
393 393
 
394
-		if ( isset( $_REQUEST['getpaid-action'] ) && isset( $_REQUEST['getpaid-nonce'] ) && wp_verify_nonce( $_REQUEST['getpaid-nonce'], 'getpaid-nonce' ) ) {
394
+        if ( isset( $_REQUEST['getpaid-action'] ) && isset( $_REQUEST['getpaid-nonce'] ) && wp_verify_nonce( $_REQUEST['getpaid-nonce'], 'getpaid-nonce' ) ) {
395 395
 
396
-			$key  = sanitize_key( $_REQUEST['getpaid-action'] );
397
-			$data = wp_unslash( $_REQUEST );
398
-			if ( is_user_logged_in() ) {
399
-				do_action( "getpaid_authenticated_action_$key", $data );
400
-			}
396
+            $key  = sanitize_key( $_REQUEST['getpaid-action'] );
397
+            $data = wp_unslash( $_REQUEST );
398
+            if ( is_user_logged_in() ) {
399
+                do_action( "getpaid_authenticated_action_$key", $data );
400
+            }
401 401
 
402
-			do_action( "getpaid_unauthenticated_action_$key", $data );
402
+            do_action( "getpaid_unauthenticated_action_$key", $data );
403 403
 
404
-		}
404
+        }
405 405
 
406 406
     }
407 407
 
408
-	public function pre_get_posts( $wp_query ) {
409
-
410
-		if ( ! is_admin() && ! empty( $wp_query->query_vars['post_type'] ) && getpaid_is_invoice_post_type( $wp_query->query_vars['post_type'] ) && is_user_logged_in() && is_single() && $wp_query->is_main_query() ) {
411
-			$wp_query->query_vars['post_status'] = array_keys( wpinv_get_invoice_statuses( false, false, $wp_query->query_vars['post_type'] ) );
412
-		}
413
-
414
-		return $wp_query;
415
-	}
416
-
417
-	/**
418
-	 * Register widgets
419
-	 *
420
-	 */
421
-	public function register_widgets() {
422
-
423
-		// Currently, UX Builder does not work particulaly well with SuperDuper.
424
-		// So we disable our widgets when editing a page with UX Builder.
425
-		if ( function_exists( 'ux_builder_is_active' ) && ux_builder_is_active() ) {
426
-			return;
427
-		}
428
-
429
-		$widgets = apply_filters(
430
-			'getpaid_widget_classes',
431
-			array(
432
-				'WPInv_Checkout_Widget',
433
-				'WPInv_History_Widget',
434
-				'WPInv_Receipt_Widget',
435
-				'WPInv_Subscriptions_Widget',
436
-				'WPInv_Buy_Item_Widget',
437
-				'WPInv_Messages_Widget',
438
-				'WPInv_GetPaid_Widget'
439
-			)
440
-		);
441
-
442
-		foreach ( $widgets as $widget ) {
443
-			register_widget( $widget );
444
-		}
408
+    public function pre_get_posts( $wp_query ) {
409
+
410
+        if ( ! is_admin() && ! empty( $wp_query->query_vars['post_type'] ) && getpaid_is_invoice_post_type( $wp_query->query_vars['post_type'] ) && is_user_logged_in() && is_single() && $wp_query->is_main_query() ) {
411
+            $wp_query->query_vars['post_status'] = array_keys( wpinv_get_invoice_statuses( false, false, $wp_query->query_vars['post_type'] ) );
412
+        }
413
+
414
+        return $wp_query;
415
+    }
416
+
417
+    /**
418
+     * Register widgets
419
+     *
420
+     */
421
+    public function register_widgets() {
422
+
423
+        // Currently, UX Builder does not work particulaly well with SuperDuper.
424
+        // So we disable our widgets when editing a page with UX Builder.
425
+        if ( function_exists( 'ux_builder_is_active' ) && ux_builder_is_active() ) {
426
+            return;
427
+        }
428
+
429
+        $widgets = apply_filters(
430
+            'getpaid_widget_classes',
431
+            array(
432
+                'WPInv_Checkout_Widget',
433
+                'WPInv_History_Widget',
434
+                'WPInv_Receipt_Widget',
435
+                'WPInv_Subscriptions_Widget',
436
+                'WPInv_Buy_Item_Widget',
437
+                'WPInv_Messages_Widget',
438
+                'WPInv_GetPaid_Widget'
439
+            )
440
+        );
441
+
442
+        foreach ( $widgets as $widget ) {
443
+            register_widget( $widget );
444
+        }
445 445
 		
446
-	}
446
+    }
447 447
 
448
-	/**
449
-	 * Upgrades the database.
450
-	 *
451
-	 * @since 2.0.2
452
-	 */
453
-	public function maybe_upgrade_database() {
448
+    /**
449
+     * Upgrades the database.
450
+     *
451
+     * @since 2.0.2
452
+     */
453
+    public function maybe_upgrade_database() {
454 454
 
455
-		$wpi_version = get_option( 'wpinv_version', 0 );
455
+        $wpi_version = get_option( 'wpinv_version', 0 );
456 456
 
457
-		if ( $wpi_version == WPINV_VERSION ) {
458
-			return;
459
-		}
457
+        if ( $wpi_version == WPINV_VERSION ) {
458
+            return;
459
+        }
460 460
 
461
-		$installer = new GetPaid_Installer();
461
+        $installer = new GetPaid_Installer();
462 462
 
463
-		if ( empty( $wpi_version ) ) {
464
-			return $installer->upgrade_db( 0 );
465
-		}
463
+        if ( empty( $wpi_version ) ) {
464
+            return $installer->upgrade_db( 0 );
465
+        }
466 466
 
467
-		$upgrades  = array(
468
-			'0.0.5' => '004',
469
-			'1.0.3' => '102',
470
-			'2.0.0' => '118',
471
-			'2.0.8' => '207',
472
-		);
467
+        $upgrades  = array(
468
+            '0.0.5' => '004',
469
+            '1.0.3' => '102',
470
+            '2.0.0' => '118',
471
+            '2.0.8' => '207',
472
+        );
473 473
 
474
-		foreach ( $upgrades as $key => $method ) {
474
+        foreach ( $upgrades as $key => $method ) {
475 475
 
476
-			if ( version_compare( $wpi_version, $key, '<' ) ) {
477
-				return $installer->upgrade_db( $method );
478
-			}
476
+            if ( version_compare( $wpi_version, $key, '<' ) ) {
477
+                return $installer->upgrade_db( $method );
478
+            }
479 479
 
480
-		}
480
+        }
481 481
 
482
-	}
482
+    }
483 483
 
484
-	/**
485
-	 * Flushes the permalinks if needed.
486
-	 *
487
-	 * @since 2.0.8
488
-	 */
489
-	public function maybe_flush_permalinks() {
484
+    /**
485
+     * Flushes the permalinks if needed.
486
+     *
487
+     * @since 2.0.8
488
+     */
489
+    public function maybe_flush_permalinks() {
490 490
 
491
-		$flush = get_option( 'wpinv_flush_permalinks', 0 );
491
+        $flush = get_option( 'wpinv_flush_permalinks', 0 );
492 492
 
493
-		if ( ! empty( $flush ) ) {
494
-			flush_rewrite_rules();
495
-			delete_option( 'wpinv_flush_permalinks' );
496
-		}
493
+        if ( ! empty( $flush ) ) {
494
+            flush_rewrite_rules();
495
+            delete_option( 'wpinv_flush_permalinks' );
496
+        }
497 497
 
498
-	}
498
+    }
499 499
 
500
-	/**
501
-	 * Remove our pages from yoast sitemaps.
502
-	 *
503
-	 * @since 1.0.19
504
-	 * @param int[] $excluded_posts_ids
505
-	 */
506
-	public function wpseo_exclude_from_sitemap_by_post_ids( $excluded_posts_ids ){
500
+    /**
501
+     * Remove our pages from yoast sitemaps.
502
+     *
503
+     * @since 1.0.19
504
+     * @param int[] $excluded_posts_ids
505
+     */
506
+    public function wpseo_exclude_from_sitemap_by_post_ids( $excluded_posts_ids ){
507 507
 
508
-		// Ensure that we have an array.
509
-		if ( ! is_array( $excluded_posts_ids ) ) {
510
-			$excluded_posts_ids = array();
511
-		}
508
+        // Ensure that we have an array.
509
+        if ( ! is_array( $excluded_posts_ids ) ) {
510
+            $excluded_posts_ids = array();
511
+        }
512 512
 
513
-		// Prepare our pages.
514
-		$our_pages = array();
513
+        // Prepare our pages.
514
+        $our_pages = array();
515 515
 
516
-		// Checkout page.
517
-		$our_pages[] = wpinv_get_option( 'checkout_page', false );
516
+        // Checkout page.
517
+        $our_pages[] = wpinv_get_option( 'checkout_page', false );
518 518
 
519
-		// Success page.
520
-		$our_pages[] = wpinv_get_option( 'success_page', false );
519
+        // Success page.
520
+        $our_pages[] = wpinv_get_option( 'success_page', false );
521 521
 
522
-		// Failure page.
523
-		$our_pages[] = wpinv_get_option( 'failure_page', false );
522
+        // Failure page.
523
+        $our_pages[] = wpinv_get_option( 'failure_page', false );
524 524
 
525
-		// History page.
526
-		$our_pages[] = wpinv_get_option( 'invoice_history_page', false );
525
+        // History page.
526
+        $our_pages[] = wpinv_get_option( 'invoice_history_page', false );
527 527
 
528
-		// Subscriptions page.
529
-		$our_pages[] = wpinv_get_option( 'invoice_subscription_page', false );
528
+        // Subscriptions page.
529
+        $our_pages[] = wpinv_get_option( 'invoice_subscription_page', false );
530 530
 
531
-		$our_pages   = array_map( 'intval', array_filter( $our_pages ) );
531
+        $our_pages   = array_map( 'intval', array_filter( $our_pages ) );
532 532
 
533
-		$excluded_posts_ids = $excluded_posts_ids + $our_pages;
534
-		return array_unique( $excluded_posts_ids );
533
+        $excluded_posts_ids = $excluded_posts_ids + $our_pages;
534
+        return array_unique( $excluded_posts_ids );
535 535
 
536
-	}
536
+    }
537 537
 
538
-	/**
539
-	 * Displays additional footer code.
540
-	 * 
541
-	 * @since 2.0.0
542
-	 */
543
-	public function wp_footer() {
544
-		wpinv_get_template( 'frontend-footer.php' );
545
-	}
538
+    /**
539
+     * Displays additional footer code.
540
+     * 
541
+     * @since 2.0.0
542
+     */
543
+    public function wp_footer() {
544
+        wpinv_get_template( 'frontend-footer.php' );
545
+    }
546 546
 
547
-	/**
548
-	 * Displays additional header code.
549
-	 * 
550
-	 * @since 2.0.0
551
-	 */
552
-	public function wp_head() {
553
-		wpinv_get_template( 'frontend-head.php' );
554
-	}
547
+    /**
548
+     * Displays additional header code.
549
+     * 
550
+     * @since 2.0.0
551
+     */
552
+    public function wp_head() {
553
+        wpinv_get_template( 'frontend-head.php' );
554
+    }
555 555
 
556 556
 }
Please login to merge, or discard this patch.
Spacing   +164 added lines, -164 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
  * @since   1.0.0
7 7
  */
8 8
 
9
-defined( 'ABSPATH' ) || exit;
9
+defined('ABSPATH') || exit;
10 10
 
11 11
 /**
12 12
  * Main Invoicing class.
@@ -56,8 +56,8 @@  discard block
 block discarded – undo
56 56
 	 * @param string $prop The prop to set.
57 57
 	 * @param mixed $value The value to retrieve.
58 58
 	 */
59
-	public function set( $prop, $value ) {
60
-		$this->data[ $prop ] = $value;
59
+	public function set($prop, $value) {
60
+		$this->data[$prop] = $value;
61 61
 	}
62 62
 
63 63
 	/**
@@ -66,10 +66,10 @@  discard block
 block discarded – undo
66 66
 	 * @param string $prop The prop to set.
67 67
 	 * @return mixed The value.
68 68
 	 */
69
-	public function get( $prop ) {
69
+	public function get($prop) {
70 70
 
71
-		if ( isset( $this->data[ $prop ] ) ) {
72
-			return $this->data[ $prop ];
71
+		if (isset($this->data[$prop])) {
72
+			return $this->data[$prop];
73 73
 		}
74 74
 
75 75
 		return null;
@@ -81,23 +81,23 @@  discard block
 block discarded – undo
81 81
 	public function set_properties() {
82 82
 
83 83
 		// Sessions.
84
-		$this->set( 'session', new WPInv_Session_Handler() );
85
-		$GLOBALS['wpi_session'] = $this->get( 'session' ); // Backwards compatibility.
84
+		$this->set('session', new WPInv_Session_Handler());
85
+		$GLOBALS['wpi_session'] = $this->get('session'); // Backwards compatibility.
86 86
 		$GLOBALS['wpinv_euvat'] = new WPInv_EUVat(); // Backwards compatibility.
87 87
 
88 88
 		// Init other objects.
89
-		$this->set( 'session', new WPInv_Session_Handler() );
90
-		$this->set( 'notes', new WPInv_Notes() );
91
-		$this->set( 'api', new WPInv_API() );
92
-		$this->set( 'post_types', new GetPaid_Post_Types() );
93
-		$this->set( 'template', new GetPaid_Template() );
94
-		$this->set( 'admin', new GetPaid_Admin() );
95
-		$this->set( 'subscriptions', new WPInv_Subscriptions() );
96
-		$this->set( 'invoice_emails', new GetPaid_Invoice_Notification_Emails() );
97
-		$this->set( 'subscription_emails', new GetPaid_Subscription_Notification_Emails() );
98
-		$this->set( 'daily_maintenace', new GetPaid_Daily_Maintenance() );
99
-		$this->set( 'payment_forms', new GetPaid_Payment_Forms() );
100
-		$this->set( 'maxmind', new GetPaid_MaxMind_Geolocation() );
89
+		$this->set('session', new WPInv_Session_Handler());
90
+		$this->set('notes', new WPInv_Notes());
91
+		$this->set('api', new WPInv_API());
92
+		$this->set('post_types', new GetPaid_Post_Types());
93
+		$this->set('template', new GetPaid_Template());
94
+		$this->set('admin', new GetPaid_Admin());
95
+		$this->set('subscriptions', new WPInv_Subscriptions());
96
+		$this->set('invoice_emails', new GetPaid_Invoice_Notification_Emails());
97
+		$this->set('subscription_emails', new GetPaid_Subscription_Notification_Emails());
98
+		$this->set('daily_maintenace', new GetPaid_Daily_Maintenance());
99
+		$this->set('payment_forms', new GetPaid_Payment_Forms());
100
+		$this->set('maxmind', new GetPaid_MaxMind_Geolocation());
101 101
 
102 102
 	}
103 103
 
@@ -105,8 +105,8 @@  discard block
 block discarded – undo
105 105
 	 * Define plugin constants.
106 106
 	 */
107 107
 	public function define_constants() {
108
-		define( 'WPINV_PLUGIN_DIR', plugin_dir_path( WPINV_PLUGIN_FILE ) );
109
-		define( 'WPINV_PLUGIN_URL', plugin_dir_url( WPINV_PLUGIN_FILE ) );
108
+		define('WPINV_PLUGIN_DIR', plugin_dir_path(WPINV_PLUGIN_FILE));
109
+		define('WPINV_PLUGIN_URL', plugin_dir_url(WPINV_PLUGIN_FILE));
110 110
 		$this->version = WPINV_VERSION;
111 111
 	}
112 112
 
@@ -117,23 +117,23 @@  discard block
 block discarded – undo
117 117
 	 */
118 118
 	protected function init_hooks() {
119 119
 		/* Internationalize the text strings used. */
120
-		add_action( 'plugins_loaded', array( &$this, 'plugins_loaded' ) );
120
+		add_action('plugins_loaded', array(&$this, 'plugins_loaded'));
121 121
 
122 122
 		// Init the plugin after WordPress inits.
123
-		add_action( 'init', array( $this, 'init' ), 1 );
124
-		add_action( 'init', array( $this, 'maybe_process_ipn' ), 10 );
125
-		add_action( 'init', array( $this, 'wpinv_actions' ) );
126
-		add_action( 'init', array( $this, 'maybe_do_authenticated_action' ), 100 );
127
-		add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 11 );
128
-		add_action( 'wp_footer', array( $this, 'wp_footer' ) );
129
-		add_action( 'wp_head', array( $this, 'wp_head' ) );
130
-		add_action( 'widgets_init', array( &$this, 'register_widgets' ) );
131
-		add_filter( 'wpseo_exclude_from_sitemap_by_post_ids', array( $this, 'wpseo_exclude_from_sitemap_by_post_ids' ) );
132
-		add_filter( 'pre_get_posts', array( &$this, 'pre_get_posts' ) );
123
+		add_action('init', array($this, 'init'), 1);
124
+		add_action('init', array($this, 'maybe_process_ipn'), 10);
125
+		add_action('init', array($this, 'wpinv_actions'));
126
+		add_action('init', array($this, 'maybe_do_authenticated_action'), 100);
127
+		add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts'), 11);
128
+		add_action('wp_footer', array($this, 'wp_footer'));
129
+		add_action('wp_head', array($this, 'wp_head'));
130
+		add_action('widgets_init', array(&$this, 'register_widgets'));
131
+		add_filter('wpseo_exclude_from_sitemap_by_post_ids', array($this, 'wpseo_exclude_from_sitemap_by_post_ids'));
132
+		add_filter('pre_get_posts', array(&$this, 'pre_get_posts'));
133 133
 
134 134
 		// Fires after registering actions.
135
-		do_action( 'wpinv_actions', $this );
136
-		do_action( 'getpaid_actions', $this );
135
+		do_action('wpinv_actions', $this);
136
+		do_action('getpaid_actions', $this);
137 137
 
138 138
 	}
139 139
 
@@ -141,10 +141,10 @@  discard block
 block discarded – undo
141 141
 		/* Internationalize the text strings used. */
142 142
 		$this->load_textdomain();
143 143
 
144
-		do_action( 'wpinv_loaded' );
144
+		do_action('wpinv_loaded');
145 145
 
146 146
 		// Fix oxygen page builder conflict
147
-		if ( function_exists( 'ct_css_output' ) ) {
147
+		if (function_exists('ct_css_output')) {
148 148
 			wpinv_oxygen_fix_conflict();
149 149
 		}
150 150
 	}
@@ -154,21 +154,21 @@  discard block
 block discarded – undo
154 154
 	 *
155 155
 	 * @since 1.0
156 156
 	 */
157
-	public function load_textdomain( $locale = NULL ) {
158
-		if ( empty( $locale ) ) {
159
-			$locale = is_admin() && function_exists( 'get_user_locale' ) ? get_user_locale() : get_locale();
157
+	public function load_textdomain($locale = NULL) {
158
+		if (empty($locale)) {
159
+			$locale = is_admin() && function_exists('get_user_locale') ? get_user_locale() : get_locale();
160 160
 		}
161 161
 
162
-		$locale = apply_filters( 'plugin_locale', $locale, 'invoicing' );
162
+		$locale = apply_filters('plugin_locale', $locale, 'invoicing');
163 163
 
164
-		unload_textdomain( 'invoicing' );
165
-		load_textdomain( 'invoicing', WP_LANG_DIR . '/invoicing/invoicing-' . $locale . '.mo' );
166
-		load_plugin_textdomain( 'invoicing', false, WPINV_PLUGIN_DIR . 'languages' );
164
+		unload_textdomain('invoicing');
165
+		load_textdomain('invoicing', WP_LANG_DIR . '/invoicing/invoicing-' . $locale . '.mo');
166
+		load_plugin_textdomain('invoicing', false, WPINV_PLUGIN_DIR . 'languages');
167 167
 
168 168
 		/**
169 169
 		 * Define language constants.
170 170
 		 */
171
-		require_once( WPINV_PLUGIN_DIR . 'language.php' );
171
+		require_once(WPINV_PLUGIN_DIR . 'language.php');
172 172
 	}
173 173
 
174 174
 	/**
@@ -177,78 +177,78 @@  discard block
 block discarded – undo
177 177
 	public function includes() {
178 178
 
179 179
 		// Start with the settings.
180
-		require_once( WPINV_PLUGIN_DIR . 'includes/admin/register-settings.php' );
180
+		require_once(WPINV_PLUGIN_DIR . 'includes/admin/register-settings.php');
181 181
 
182 182
 		// Packages/libraries.
183
-		require_once( WPINV_PLUGIN_DIR . 'vendor/autoload.php' );
184
-		require_once( WPINV_PLUGIN_DIR . 'vendor/ayecode/wp-ayecode-ui/ayecode-ui-loader.php' );
183
+		require_once(WPINV_PLUGIN_DIR . 'vendor/autoload.php');
184
+		require_once(WPINV_PLUGIN_DIR . 'vendor/ayecode/wp-ayecode-ui/ayecode-ui-loader.php');
185 185
 
186 186
 		// Load functions.
187
-		require_once( WPINV_PLUGIN_DIR . 'includes/deprecated-functions.php' );
188
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-email-functions.php' );
189
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-general-functions.php' );
190
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-helper-functions.php' );
191
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-tax-functions.php' );
192
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-template-functions.php' );
193
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-address-functions.php' );
194
-		require_once( WPINV_PLUGIN_DIR . 'includes/invoice-functions.php' );
195
-		require_once( WPINV_PLUGIN_DIR . 'includes/subscription-functions.php' );
196
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-item-functions.php' );
197
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-discount-functions.php' );
198
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-gateway-functions.php' );
199
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-payment-functions.php' );
200
-		require_once( WPINV_PLUGIN_DIR . 'includes/user-functions.php' );
201
-		require_once( WPINV_PLUGIN_DIR . 'includes/error-functions.php' );
187
+		require_once(WPINV_PLUGIN_DIR . 'includes/deprecated-functions.php');
188
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-email-functions.php');
189
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-general-functions.php');
190
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-helper-functions.php');
191
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-tax-functions.php');
192
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-template-functions.php');
193
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-address-functions.php');
194
+		require_once(WPINV_PLUGIN_DIR . 'includes/invoice-functions.php');
195
+		require_once(WPINV_PLUGIN_DIR . 'includes/subscription-functions.php');
196
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-item-functions.php');
197
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-discount-functions.php');
198
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-gateway-functions.php');
199
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-payment-functions.php');
200
+		require_once(WPINV_PLUGIN_DIR . 'includes/user-functions.php');
201
+		require_once(WPINV_PLUGIN_DIR . 'includes/error-functions.php');
202 202
 
203 203
 		// Register autoloader.
204 204
 		try {
205
-			spl_autoload_register( array( $this, 'autoload' ), true );
206
-		} catch ( Exception $e ) {
207
-			wpinv_error_log( $e->getMessage(), '', __FILE__, 149, true );
205
+			spl_autoload_register(array($this, 'autoload'), true);
206
+		} catch (Exception $e) {
207
+			wpinv_error_log($e->getMessage(), '', __FILE__, 149, true);
208 208
 		}
209 209
 
210
-		require_once( WPINV_PLUGIN_DIR . 'includes/abstracts/abstract-wpinv-session.php' );
211
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-session-handler.php' );
212
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-ajax.php' );
213
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-api.php' );
214
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-cache-helper.php' );
215
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-db.php' );
216
-		require_once( WPINV_PLUGIN_DIR . 'includes/admin/subscriptions.php' );
217
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-subscriptions-db.php' );
218
-		require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-subscription.php' );
219
-		require_once( WPINV_PLUGIN_DIR . 'includes/abstracts/abstract-wpinv-privacy.php' );
220
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-privacy.php' );
221
-		require_once( WPINV_PLUGIN_DIR . 'includes/libraries/class-ayecode-addons.php' );
222
-		require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-addons.php' );
223
-		require_once( WPINV_PLUGIN_DIR . 'widgets/checkout.php' );
224
-		require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-history.php' );
225
-		require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-receipt.php' );
226
-		require_once( WPINV_PLUGIN_DIR . 'widgets/invoice-messages.php' );
227
-		require_once( WPINV_PLUGIN_DIR . 'widgets/subscriptions.php' );
228
-		require_once( WPINV_PLUGIN_DIR . 'widgets/buy-item.php' );
229
-		require_once( WPINV_PLUGIN_DIR . 'widgets/getpaid.php' );
230
-		require_once( WPINV_PLUGIN_DIR . 'includes/admin/admin-pages.php' );
231
-
232
-		if ( is_admin() || ( defined( 'WP_CLI' ) && WP_CLI ) ) {
210
+		require_once(WPINV_PLUGIN_DIR . 'includes/abstracts/abstract-wpinv-session.php');
211
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-session-handler.php');
212
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-ajax.php');
213
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-api.php');
214
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-cache-helper.php');
215
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-db.php');
216
+		require_once(WPINV_PLUGIN_DIR . 'includes/admin/subscriptions.php');
217
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-subscriptions-db.php');
218
+		require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-subscription.php');
219
+		require_once(WPINV_PLUGIN_DIR . 'includes/abstracts/abstract-wpinv-privacy.php');
220
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-privacy.php');
221
+		require_once(WPINV_PLUGIN_DIR . 'includes/libraries/class-ayecode-addons.php');
222
+		require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-addons.php');
223
+		require_once(WPINV_PLUGIN_DIR . 'widgets/checkout.php');
224
+		require_once(WPINV_PLUGIN_DIR . 'widgets/invoice-history.php');
225
+		require_once(WPINV_PLUGIN_DIR . 'widgets/invoice-receipt.php');
226
+		require_once(WPINV_PLUGIN_DIR . 'widgets/invoice-messages.php');
227
+		require_once(WPINV_PLUGIN_DIR . 'widgets/subscriptions.php');
228
+		require_once(WPINV_PLUGIN_DIR . 'widgets/buy-item.php');
229
+		require_once(WPINV_PLUGIN_DIR . 'widgets/getpaid.php');
230
+		require_once(WPINV_PLUGIN_DIR . 'includes/admin/admin-pages.php');
231
+
232
+		if (is_admin() || (defined('WP_CLI') && WP_CLI)) {
233 233
 			GetPaid_Post_Types_Admin::init();
234 234
 
235
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/wpinv-admin-functions.php' );
236
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-payment-form.php' );
237
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-notes.php' );
238
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-admin-menus.php' );
239
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-users.php' );
240
-			require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-getpaid-admin-profile.php' );
235
+			require_once(WPINV_PLUGIN_DIR . 'includes/admin/wpinv-admin-functions.php');
236
+			require_once(WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-payment-form.php');
237
+			require_once(WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-notes.php');
238
+			require_once(WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-admin-menus.php');
239
+			require_once(WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-users.php');
240
+			require_once(WPINV_PLUGIN_DIR . 'includes/admin/class-getpaid-admin-profile.php');
241 241
 			// load the user class only on the users.php page
242 242
 			global $pagenow;
243
-			if($pagenow=='users.php'){
243
+			if ($pagenow == 'users.php') {
244 244
 				new WPInv_Admin_Users();
245 245
 			}
246 246
 		}
247 247
 
248 248
 		// Register cli commands
249
-		if ( defined( 'WP_CLI' ) && WP_CLI ) {
250
-			require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-cli.php' );
251
-			WP_CLI::add_command( 'invoicing', 'WPInv_CLI' );
249
+		if (defined('WP_CLI') && WP_CLI) {
250
+			require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-cli.php');
251
+			WP_CLI::add_command('invoicing', 'WPInv_CLI');
252 252
 		}
253 253
 
254 254
 	}
@@ -261,21 +261,21 @@  discard block
 block discarded – undo
261 261
 	 * @since       1.0.19
262 262
 	 * @return      void
263 263
 	 */
264
-	public function autoload( $class_name ) {
264
+	public function autoload($class_name) {
265 265
 
266 266
 		// Normalize the class name...
267
-		$class_name  = strtolower( $class_name );
267
+		$class_name = strtolower($class_name);
268 268
 
269 269
 		// ... and make sure it is our class.
270
-		if ( false === strpos( $class_name, 'getpaid_' ) && false === strpos( $class_name, 'wpinv_' ) ) {
270
+		if (false === strpos($class_name, 'getpaid_') && false === strpos($class_name, 'wpinv_')) {
271 271
 			return;
272 272
 		}
273 273
 
274 274
 		// Next, prepare the file name from the class.
275
-		$file_name = 'class-' . str_replace( '_', '-', $class_name ) . '.php';
275
+		$file_name = 'class-' . str_replace('_', '-', $class_name) . '.php';
276 276
 
277 277
 		// Base path of the classes.
278
-		$plugin_path = untrailingslashit( WPINV_PLUGIN_DIR );
278
+		$plugin_path = untrailingslashit(WPINV_PLUGIN_DIR);
279 279
 
280 280
 		// And an array of possible locations in order of importance.
281 281
 		$locations = array(
@@ -290,10 +290,10 @@  discard block
 block discarded – undo
290 290
 			"$plugin_path/includes/admin/meta-boxes",
291 291
 		);
292 292
 
293
-		foreach ( apply_filters( 'getpaid_autoload_locations', $locations ) as $location ) {
293
+		foreach (apply_filters('getpaid_autoload_locations', $locations) as $location) {
294 294
 
295
-			if ( file_exists( trailingslashit( $location ) . $file_name ) ) {
296
-				include trailingslashit( $location ) . $file_name;
295
+			if (file_exists(trailingslashit($location) . $file_name)) {
296
+				include trailingslashit($location) . $file_name;
297 297
 				break;
298 298
 			}
299 299
 
@@ -307,7 +307,7 @@  discard block
 block discarded – undo
307 307
 	public function init() {
308 308
 
309 309
 		// Fires before getpaid inits.
310
-		do_action( 'before_getpaid_init', $this );
310
+		do_action('before_getpaid_init', $this);
311 311
 
312 312
 		// Maybe upgrade.
313 313
 		$this->maybe_upgrade_database();
@@ -324,17 +324,17 @@  discard block
 block discarded – undo
324 324
 			)
325 325
 		);
326 326
 
327
-		foreach ( $gateways as $id => $class ) {
328
-			$this->gateways[ $id ] = new $class();
327
+		foreach ($gateways as $id => $class) {
328
+			$this->gateways[$id] = new $class();
329 329
 		}
330 330
 
331
-		if ( 'yes' != get_option( 'wpinv_renamed_gateways' ) ) {
331
+		if ('yes' != get_option('wpinv_renamed_gateways')) {
332 332
 			GetPaid_Installer::rename_gateways_label();
333
-			update_option( 'wpinv_renamed_gateways', 'yes' );
333
+			update_option('wpinv_renamed_gateways', 'yes');
334 334
 		}
335 335
 
336 336
 		// Fires after getpaid inits.
337
-		do_action( 'getpaid_init', $this );
337
+		do_action('getpaid_init', $this);
338 338
 
339 339
 	}
340 340
 
@@ -344,14 +344,14 @@  discard block
 block discarded – undo
344 344
 	public function maybe_process_ipn() {
345 345
 
346 346
 		// Ensure that this is an IPN request.
347
-		if ( empty( $_GET['wpi-listener'] ) || 'IPN' !== $_GET['wpi-listener'] || empty( $_GET['wpi-gateway'] ) ) {
347
+		if (empty($_GET['wpi-listener']) || 'IPN' !== $_GET['wpi-listener'] || empty($_GET['wpi-gateway'])) {
348 348
 			return;
349 349
 		}
350 350
 
351
-		$gateway = wpinv_clean( $_GET['wpi-gateway'] );
351
+		$gateway = wpinv_clean($_GET['wpi-gateway']);
352 352
 
353
-		do_action( 'wpinv_verify_payment_ipn', $gateway );
354
-		do_action( "wpinv_verify_{$gateway}_ipn" );
353
+		do_action('wpinv_verify_payment_ipn', $gateway);
354
+		do_action("wpinv_verify_{$gateway}_ipn");
355 355
 		exit;
356 356
 
357 357
 	}
@@ -359,27 +359,27 @@  discard block
 block discarded – undo
359 359
 	public function enqueue_scripts() {
360 360
 
361 361
 		// Fires before adding scripts.
362
-		do_action( 'getpaid_enqueue_scripts' );
362
+		do_action('getpaid_enqueue_scripts');
363 363
 
364 364
 		$localize                         = array();
365
-		$localize['ajax_url']             = admin_url( 'admin-ajax.php' );
366
-		$localize['nonce']                = wp_create_nonce( 'wpinv-nonce' );
367
-		$localize['txtComplete']          = __( 'Continue', 'invoicing' );
365
+		$localize['ajax_url']             = admin_url('admin-ajax.php');
366
+		$localize['nonce']                = wp_create_nonce('wpinv-nonce');
367
+		$localize['txtComplete']          = __('Continue', 'invoicing');
368 368
 		$localize['UseTaxes']             = wpinv_use_taxes();
369
-		$localize['formNonce']            = wp_create_nonce( 'getpaid_form_nonce' );
370
-		$localize['loading']              = __( 'Loading...', 'invoicing' );
371
-		$localize['connectionError']      = __( 'Could not establish a connection to the server.', 'invoicing' );
369
+		$localize['formNonce']            = wp_create_nonce('getpaid_form_nonce');
370
+		$localize['loading']              = __('Loading...', 'invoicing');
371
+		$localize['connectionError']      = __('Could not establish a connection to the server.', 'invoicing');
372 372
 
373
-		$localize = apply_filters( 'wpinv_front_js_localize', $localize );
373
+		$localize = apply_filters('wpinv_front_js_localize', $localize);
374 374
 
375
-		$version = filemtime( WPINV_PLUGIN_DIR . 'assets/js/payment-forms.js' );
376
-		wp_enqueue_script( 'wpinv-front-script', WPINV_PLUGIN_URL . 'assets/js/payment-forms.js', array( 'jquery' ),  $version, true );
377
-		wp_localize_script( 'wpinv-front-script', 'WPInv', $localize );
375
+		$version = filemtime(WPINV_PLUGIN_DIR . 'assets/js/payment-forms.js');
376
+		wp_enqueue_script('wpinv-front-script', WPINV_PLUGIN_URL . 'assets/js/payment-forms.js', array('jquery'), $version, true);
377
+		wp_localize_script('wpinv-front-script', 'WPInv', $localize);
378 378
 	}
379 379
 
380 380
 	public function wpinv_actions() {
381
-		if ( isset( $_REQUEST['wpi_action'] ) ) {
382
-			do_action( 'wpinv_' . wpinv_sanitize_key( $_REQUEST['wpi_action'] ), $_REQUEST );
381
+		if (isset($_REQUEST['wpi_action'])) {
382
+			do_action('wpinv_' . wpinv_sanitize_key($_REQUEST['wpi_action']), $_REQUEST);
383 383
 		}
384 384
 	}
385 385
 
@@ -391,24 +391,24 @@  discard block
 block discarded – undo
391 391
      */
392 392
     public function maybe_do_authenticated_action() {
393 393
 
394
-		if ( isset( $_REQUEST['getpaid-action'] ) && isset( $_REQUEST['getpaid-nonce'] ) && wp_verify_nonce( $_REQUEST['getpaid-nonce'], 'getpaid-nonce' ) ) {
394
+		if (isset($_REQUEST['getpaid-action']) && isset($_REQUEST['getpaid-nonce']) && wp_verify_nonce($_REQUEST['getpaid-nonce'], 'getpaid-nonce')) {
395 395
 
396
-			$key  = sanitize_key( $_REQUEST['getpaid-action'] );
397
-			$data = wp_unslash( $_REQUEST );
398
-			if ( is_user_logged_in() ) {
399
-				do_action( "getpaid_authenticated_action_$key", $data );
396
+			$key  = sanitize_key($_REQUEST['getpaid-action']);
397
+			$data = wp_unslash($_REQUEST);
398
+			if (is_user_logged_in()) {
399
+				do_action("getpaid_authenticated_action_$key", $data);
400 400
 			}
401 401
 
402
-			do_action( "getpaid_unauthenticated_action_$key", $data );
402
+			do_action("getpaid_unauthenticated_action_$key", $data);
403 403
 
404 404
 		}
405 405
 
406 406
     }
407 407
 
408
-	public function pre_get_posts( $wp_query ) {
408
+	public function pre_get_posts($wp_query) {
409 409
 
410
-		if ( ! is_admin() && ! empty( $wp_query->query_vars['post_type'] ) && getpaid_is_invoice_post_type( $wp_query->query_vars['post_type'] ) && is_user_logged_in() && is_single() && $wp_query->is_main_query() ) {
411
-			$wp_query->query_vars['post_status'] = array_keys( wpinv_get_invoice_statuses( false, false, $wp_query->query_vars['post_type'] ) );
410
+		if (!is_admin() && !empty($wp_query->query_vars['post_type']) && getpaid_is_invoice_post_type($wp_query->query_vars['post_type']) && is_user_logged_in() && is_single() && $wp_query->is_main_query()) {
411
+			$wp_query->query_vars['post_status'] = array_keys(wpinv_get_invoice_statuses(false, false, $wp_query->query_vars['post_type']));
412 412
 		}
413 413
 
414 414
 		return $wp_query;
@@ -422,7 +422,7 @@  discard block
 block discarded – undo
422 422
 
423 423
 		// Currently, UX Builder does not work particulaly well with SuperDuper.
424 424
 		// So we disable our widgets when editing a page with UX Builder.
425
-		if ( function_exists( 'ux_builder_is_active' ) && ux_builder_is_active() ) {
425
+		if (function_exists('ux_builder_is_active') && ux_builder_is_active()) {
426 426
 			return;
427 427
 		}
428 428
 
@@ -439,8 +439,8 @@  discard block
 block discarded – undo
439 439
 			)
440 440
 		);
441 441
 
442
-		foreach ( $widgets as $widget ) {
443
-			register_widget( $widget );
442
+		foreach ($widgets as $widget) {
443
+			register_widget($widget);
444 444
 		}
445 445
 		
446 446
 	}
@@ -452,29 +452,29 @@  discard block
 block discarded – undo
452 452
 	 */
453 453
 	public function maybe_upgrade_database() {
454 454
 
455
-		$wpi_version = get_option( 'wpinv_version', 0 );
455
+		$wpi_version = get_option('wpinv_version', 0);
456 456
 
457
-		if ( $wpi_version == WPINV_VERSION ) {
457
+		if ($wpi_version == WPINV_VERSION) {
458 458
 			return;
459 459
 		}
460 460
 
461 461
 		$installer = new GetPaid_Installer();
462 462
 
463
-		if ( empty( $wpi_version ) ) {
464
-			return $installer->upgrade_db( 0 );
463
+		if (empty($wpi_version)) {
464
+			return $installer->upgrade_db(0);
465 465
 		}
466 466
 
467
-		$upgrades  = array(
467
+		$upgrades = array(
468 468
 			'0.0.5' => '004',
469 469
 			'1.0.3' => '102',
470 470
 			'2.0.0' => '118',
471 471
 			'2.0.8' => '207',
472 472
 		);
473 473
 
474
-		foreach ( $upgrades as $key => $method ) {
474
+		foreach ($upgrades as $key => $method) {
475 475
 
476
-			if ( version_compare( $wpi_version, $key, '<' ) ) {
477
-				return $installer->upgrade_db( $method );
476
+			if (version_compare($wpi_version, $key, '<')) {
477
+				return $installer->upgrade_db($method);
478 478
 			}
479 479
 
480 480
 		}
@@ -488,11 +488,11 @@  discard block
 block discarded – undo
488 488
 	 */
489 489
 	public function maybe_flush_permalinks() {
490 490
 
491
-		$flush = get_option( 'wpinv_flush_permalinks', 0 );
491
+		$flush = get_option('wpinv_flush_permalinks', 0);
492 492
 
493
-		if ( ! empty( $flush ) ) {
493
+		if (!empty($flush)) {
494 494
 			flush_rewrite_rules();
495
-			delete_option( 'wpinv_flush_permalinks' );
495
+			delete_option('wpinv_flush_permalinks');
496 496
 		}
497 497
 
498 498
 	}
@@ -503,10 +503,10 @@  discard block
 block discarded – undo
503 503
 	 * @since 1.0.19
504 504
 	 * @param int[] $excluded_posts_ids
505 505
 	 */
506
-	public function wpseo_exclude_from_sitemap_by_post_ids( $excluded_posts_ids ){
506
+	public function wpseo_exclude_from_sitemap_by_post_ids($excluded_posts_ids) {
507 507
 
508 508
 		// Ensure that we have an array.
509
-		if ( ! is_array( $excluded_posts_ids ) ) {
509
+		if (!is_array($excluded_posts_ids)) {
510 510
 			$excluded_posts_ids = array();
511 511
 		}
512 512
 
@@ -514,24 +514,24 @@  discard block
 block discarded – undo
514 514
 		$our_pages = array();
515 515
 
516 516
 		// Checkout page.
517
-		$our_pages[] = wpinv_get_option( 'checkout_page', false );
517
+		$our_pages[] = wpinv_get_option('checkout_page', false);
518 518
 
519 519
 		// Success page.
520
-		$our_pages[] = wpinv_get_option( 'success_page', false );
520
+		$our_pages[] = wpinv_get_option('success_page', false);
521 521
 
522 522
 		// Failure page.
523
-		$our_pages[] = wpinv_get_option( 'failure_page', false );
523
+		$our_pages[] = wpinv_get_option('failure_page', false);
524 524
 
525 525
 		// History page.
526
-		$our_pages[] = wpinv_get_option( 'invoice_history_page', false );
526
+		$our_pages[] = wpinv_get_option('invoice_history_page', false);
527 527
 
528 528
 		// Subscriptions page.
529
-		$our_pages[] = wpinv_get_option( 'invoice_subscription_page', false );
529
+		$our_pages[] = wpinv_get_option('invoice_subscription_page', false);
530 530
 
531
-		$our_pages   = array_map( 'intval', array_filter( $our_pages ) );
531
+		$our_pages   = array_map('intval', array_filter($our_pages));
532 532
 
533 533
 		$excluded_posts_ids = $excluded_posts_ids + $our_pages;
534
-		return array_unique( $excluded_posts_ids );
534
+		return array_unique($excluded_posts_ids);
535 535
 
536 536
 	}
537 537
 
@@ -541,7 +541,7 @@  discard block
 block discarded – undo
541 541
 	 * @since 2.0.0
542 542
 	 */
543 543
 	public function wp_footer() {
544
-		wpinv_get_template( 'frontend-footer.php' );
544
+		wpinv_get_template('frontend-footer.php');
545 545
 	}
546 546
 
547 547
 	/**
@@ -550,7 +550,7 @@  discard block
 block discarded – undo
550 550
 	 * @since 2.0.0
551 551
 	 */
552 552
 	public function wp_head() {
553
-		wpinv_get_template( 'frontend-head.php' );
553
+		wpinv_get_template('frontend-head.php');
554 554
 	}
555 555
 
556 556
 }
Please login to merge, or discard this patch.
includes/payments/class-getpaid-payment-form-submission-taxes.php 2 patches
Indentation   +209 added lines, -209 removed lines patch added patch discarded remove patch
@@ -12,228 +12,228 @@
 block discarded – undo
12 12
  */
13 13
 class GetPaid_Payment_Form_Submission_Taxes {
14 14
 
15
-	/**
16
-	 * Submission taxes.
17
-	 * @var array
18
-	 */
19
-	public $taxes = array();
20
-
21
-	/**
22
-	 * Whether or not we should skip the taxes.
23
-	 * @var bool
24
-	 */
25
-	protected $skip_taxes = false;
15
+    /**
16
+     * Submission taxes.
17
+     * @var array
18
+     */
19
+    public $taxes = array();
20
+
21
+    /**
22
+     * Whether or not we should skip the taxes.
23
+     * @var bool
24
+     */
25
+    protected $skip_taxes = false;
26
+
27
+    /**
28
+     * Class constructor
29
+     *
30
+     * @param GetPaid_Payment_Form_Submission $submission
31
+     */
32
+    public function __construct( $submission ) {
33
+
34
+        // Validate VAT number.
35
+        $this->validate_vat( $submission );
36
+
37
+        if ( $this->skip_taxes ) {
38
+            return;
39
+        }
40
+
41
+        foreach ( $submission->get_items() as $item ) {
42
+            $this->process_item_tax( $item, $submission );
43
+        }
44
+
45
+        // Process any existing invoice taxes.
46
+        if ( $submission->has_invoice() ) {
47
+            $this->taxes = array_replace( $submission->get_invoice()->get_taxes(), $this->taxes );
48
+        }
49
+
50
+    }
51
+
52
+    /**
53
+     * Maybe process tax.
54
+     *
55
+     * @since 1.0.19
56
+     * @param GetPaid_Form_Item $item
57
+     * @param GetPaid_Payment_Form_Submission $submission
58
+     */
59
+    public function process_item_tax( $item, $submission ) {
60
+
61
+        $rates    = getpaid_get_item_tax_rates( $item, $submission->country, $submission->state );
62
+        $rates    = getpaid_filter_item_tax_rates( $item, $rates );
63
+        $taxes    = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_sub_total(), $submission->get_discount_code(), false ), $rates );
64
+        $r_taxes  = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_recurring_sub_total(), $submission->get_discount_code(), true ), $rates );
65
+
66
+        foreach ( $taxes as $name => $amount ) {
67
+            $recurring = isset( $r_taxes[ $name ] ) ? $r_taxes[ $name ] : 0;
68
+            $tax       = getpaid_prepare_item_tax( $item, $name, $amount, $recurring );
69
+
70
+            if ( ! isset( $this->taxes[ $name ] ) ) {
71
+                $this->taxes[ $name ] = $tax;
72
+                continue;
73
+            }
74
+
75
+            $this->taxes[ $name ]['initial_tax']   += $tax['initial_tax'];
76
+            $this->taxes[ $name ]['recurring_tax'] += $tax['recurring_tax'];
77
+
78
+        }
79
+
80
+    }
81
+
82
+    /**
83
+     * Checks if the submission has a digital item.
84
+     *
85
+     * @param GetPaid_Payment_Form_Submission $submission
86
+     * @since 1.0.19
87
+     * @return bool
88
+     */
89
+    public function has_digital_item( $submission ) {
90
+
91
+        foreach ( $submission->get_items() as $item ) {
92
+
93
+            if ( 'digital' == $item->get_vat_rule() ) {
94
+                return true;
95
+            }
96
+
97
+        }
98
+
99
+        return false;
100
+    }
101
+
102
+    /**
103
+     * Checks if this is an eu store.
104
+     *
105
+     * @since 1.0.19
106
+     * @return bool
107
+     */
108
+    public static function is_eu_store() {
109
+        return self::is_eu_country( wpinv_get_default_country() );
110
+    }
26 111
 
27 112
     /**
28
-	 * Class constructor
29
-	 *
30
-	 * @param GetPaid_Payment_Form_Submission $submission
31
-	 */
32
-	public function __construct( $submission ) {
33
-
34
-		// Validate VAT number.
35
-		$this->validate_vat( $submission );
36
-
37
-		if ( $this->skip_taxes ) {
38
-			return;
39
-		}
40
-
41
-		foreach ( $submission->get_items() as $item ) {
42
-			$this->process_item_tax( $item, $submission );
43
-		}
44
-
45
-		// Process any existing invoice taxes.
46
-		if ( $submission->has_invoice() ) {
47
-			$this->taxes = array_replace( $submission->get_invoice()->get_taxes(), $this->taxes );
48
-		}
49
-
50
-	}
51
-
52
-	/**
53
-	 * Maybe process tax.
54
-	 *
55
-	 * @since 1.0.19
56
-	 * @param GetPaid_Form_Item $item
57
-	 * @param GetPaid_Payment_Form_Submission $submission
58
-	 */
59
-	public function process_item_tax( $item, $submission ) {
60
-
61
-		$rates    = getpaid_get_item_tax_rates( $item, $submission->country, $submission->state );
62
-		$rates    = getpaid_filter_item_tax_rates( $item, $rates );
63
-		$taxes    = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_sub_total(), $submission->get_discount_code(), false ), $rates );
64
-		$r_taxes  = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_recurring_sub_total(), $submission->get_discount_code(), true ), $rates );
65
-
66
-		foreach ( $taxes as $name => $amount ) {
67
-			$recurring = isset( $r_taxes[ $name ] ) ? $r_taxes[ $name ] : 0;
68
-			$tax       = getpaid_prepare_item_tax( $item, $name, $amount, $recurring );
69
-
70
-			if ( ! isset( $this->taxes[ $name ] ) ) {
71
-				$this->taxes[ $name ] = $tax;
72
-				continue;
73
-			}
74
-
75
-			$this->taxes[ $name ]['initial_tax']   += $tax['initial_tax'];
76
-			$this->taxes[ $name ]['recurring_tax'] += $tax['recurring_tax'];
77
-
78
-		}
79
-
80
-	}
81
-
82
-	/**
83
-	 * Checks if the submission has a digital item.
84
-	 *
85
-	 * @param GetPaid_Payment_Form_Submission $submission
86
-	 * @since 1.0.19
87
-	 * @return bool
88
-	 */
89
-	public function has_digital_item( $submission ) {
90
-
91
-		foreach ( $submission->get_items() as $item ) {
92
-
93
-			if ( 'digital' == $item->get_vat_rule() ) {
94
-				return true;
95
-			}
96
-
97
-		}
98
-
99
-		return false;
100
-	}
101
-
102
-	/**
103
-	 * Checks if this is an eu store.
104
-	 *
105
-	 * @since 1.0.19
106
-	 * @return bool
107
-	 */
108
-	public static function is_eu_store() {
109
-		return self::is_eu_country( wpinv_get_default_country() );
110
-	}
111
-
112
-	/**
113
-	 * Checks if this is an eu country.
114
-	 *
115
-	 * @param string $country
116
-	 * @since 1.0.19
117
-	 * @return bool
118
-	 */
119
-	public static function is_eu_country( $country ) {
120
-		return getpaid_is_eu_state( $country ) || getpaid_is_gst_country( $country );
121
-	}
122
-
123
-	/**
124
-	 * Checks if this is an eu purchase.
125
-	 *
126
-	 * @param string $customer_country
127
-	 * @since 1.0.19
128
-	 * @return bool
129
-	 */
130
-	public static function is_eu_transaction( $customer_country ) {
131
-		return self::is_eu_country( $customer_country ) && self::is_eu_store();
132
-	}
133
-
134
-	/**
135
-	 * Retrieves the vat number.
136
-	 *
137
-	 * @param GetPaid_Payment_Form_Submission $submission
138
-	 * @since 1.0.19
139
-	 * @return string
140
-	 */
141
-	public function get_vat_number( $submission ) {
142
-
143
-		// Retrieve from the posted number.
144
-		$vat_number = $submission->get_field( 'wpinv_vat_number', 'billing' );
145
-		if ( ! is_null( $vat_number ) ) {
146
-			return wpinv_clean( $vat_number );
147
-		}
148
-
149
-		return $submission->has_invoice() ? $submission->get_invoice()->get_vat_number() : '';
150
-	}
151
-
152
-	/**
153
-	 * Retrieves the company.
154
-	 *
155
-	 * @param GetPaid_Payment_Form_Submission $submission
156
-	 * @since 1.0.19
157
-	 * @return string
158
-	 */
159
-	public function get_company( $submission ) {
160
-
161
-		// Retrieve from the posted data.
162
-		$company = $submission->get_field( 'wpinv_company', 'billing' );
163
-		if ( ! empty( $company ) ) {
164
-			return wpinv_clean( $company );
165
-		}
166
-
167
-		// Retrieve from the invoice.
168
-		return $submission->has_invoice() ? $submission->get_invoice()->get_company() : '';
169
-	}
170
-
171
-	/**
172
-	 * Checks if we require a VAT number.
173
-	 *
174
-	 * @param bool $ip_in_eu Whether the customer IP is from the EU
175
-	 * @param bool $country_in_eu Whether the customer country is from the EU
176
-	 * @since 1.0.19
177
-	 * @return string
178
-	 */
179
-	public function requires_vat( $ip_in_eu, $country_in_eu ) {
180
-
181
-		$prevent_b2c = wpinv_get_option( 'vat_prevent_b2c_purchase' );
182
-		$prevent_b2c = ! empty( $prevent_b2c );
183
-		$is_eu       = $ip_in_eu || $country_in_eu;
184
-
185
-		return $prevent_b2c && $is_eu;
186
-	}
187
-
188
-	/**
189
-	 * Validate VAT data.
190
-	 *
191
-	 * @param GetPaid_Payment_Form_Submission $submission
192
-	 * @since 1.0.19
193
-	 */
194
-	public function validate_vat( $submission ) {
195
-
196
-		$in_eu = $this->is_eu_transaction( $submission->country );
197
-
198
-		// Abort if we are not validating vat numbers.
199
-		if ( ! $in_eu ) {
113
+     * Checks if this is an eu country.
114
+     *
115
+     * @param string $country
116
+     * @since 1.0.19
117
+     * @return bool
118
+     */
119
+    public static function is_eu_country( $country ) {
120
+        return getpaid_is_eu_state( $country ) || getpaid_is_gst_country( $country );
121
+    }
122
+
123
+    /**
124
+     * Checks if this is an eu purchase.
125
+     *
126
+     * @param string $customer_country
127
+     * @since 1.0.19
128
+     * @return bool
129
+     */
130
+    public static function is_eu_transaction( $customer_country ) {
131
+        return self::is_eu_country( $customer_country ) && self::is_eu_store();
132
+    }
133
+
134
+    /**
135
+     * Retrieves the vat number.
136
+     *
137
+     * @param GetPaid_Payment_Form_Submission $submission
138
+     * @since 1.0.19
139
+     * @return string
140
+     */
141
+    public function get_vat_number( $submission ) {
142
+
143
+        // Retrieve from the posted number.
144
+        $vat_number = $submission->get_field( 'wpinv_vat_number', 'billing' );
145
+        if ( ! is_null( $vat_number ) ) {
146
+            return wpinv_clean( $vat_number );
147
+        }
148
+
149
+        return $submission->has_invoice() ? $submission->get_invoice()->get_vat_number() : '';
150
+    }
151
+
152
+    /**
153
+     * Retrieves the company.
154
+     *
155
+     * @param GetPaid_Payment_Form_Submission $submission
156
+     * @since 1.0.19
157
+     * @return string
158
+     */
159
+    public function get_company( $submission ) {
160
+
161
+        // Retrieve from the posted data.
162
+        $company = $submission->get_field( 'wpinv_company', 'billing' );
163
+        if ( ! empty( $company ) ) {
164
+            return wpinv_clean( $company );
165
+        }
166
+
167
+        // Retrieve from the invoice.
168
+        return $submission->has_invoice() ? $submission->get_invoice()->get_company() : '';
169
+    }
170
+
171
+    /**
172
+     * Checks if we require a VAT number.
173
+     *
174
+     * @param bool $ip_in_eu Whether the customer IP is from the EU
175
+     * @param bool $country_in_eu Whether the customer country is from the EU
176
+     * @since 1.0.19
177
+     * @return string
178
+     */
179
+    public function requires_vat( $ip_in_eu, $country_in_eu ) {
180
+
181
+        $prevent_b2c = wpinv_get_option( 'vat_prevent_b2c_purchase' );
182
+        $prevent_b2c = ! empty( $prevent_b2c );
183
+        $is_eu       = $ip_in_eu || $country_in_eu;
184
+
185
+        return $prevent_b2c && $is_eu;
186
+    }
187
+
188
+    /**
189
+     * Validate VAT data.
190
+     *
191
+     * @param GetPaid_Payment_Form_Submission $submission
192
+     * @since 1.0.19
193
+     */
194
+    public function validate_vat( $submission ) {
195
+
196
+        $in_eu = $this->is_eu_transaction( $submission->country );
197
+
198
+        // Abort if we are not validating vat numbers.
199
+        if ( ! $in_eu ) {
200 200
             return;
201
-		}
201
+        }
202 202
 
203
-		// Prepare variables.
204
-		$vat_number  = $this->get_vat_number( $submission );
205
-		$ip_country  = getpaid_get_ip_country();
203
+        // Prepare variables.
204
+        $vat_number  = $this->get_vat_number( $submission );
205
+        $ip_country  = getpaid_get_ip_country();
206 206
         $is_eu       = $this->is_eu_country( $submission->country );
207 207
         $is_ip_eu    = $this->is_eu_country( $ip_country );
208 208
 
209
-		// Maybe abort early for initial fetches.
210
-		if ( $submission->is_initial_fetch() && empty( $vat_number ) ) {
211
-			return;
212
-		}
209
+        // Maybe abort early for initial fetches.
210
+        if ( $submission->is_initial_fetch() && empty( $vat_number ) ) {
211
+            return;
212
+        }
213 213
 
214
-		// If we're preventing business to consumer purchases,
215
-		if ( $this->requires_vat( $is_ip_eu, $is_eu ) && empty( $vat_number ) ) {
214
+        // If we're preventing business to consumer purchases,
215
+        if ( $this->requires_vat( $is_ip_eu, $is_eu ) && empty( $vat_number ) ) {
216 216
 
217
-			// Ensure that a vat number has been specified.
218
-			throw new Exception(
219
-				__( 'Please enter your VAT number to verify your purchase is by an EU business.', 'invoicing' )
220
-			);
217
+            // Ensure that a vat number has been specified.
218
+            throw new Exception(
219
+                __( 'Please enter your VAT number to verify your purchase is by an EU business.', 'invoicing' )
220
+            );
221 221
 
222
-		}
222
+        }
223 223
 
224
-		if ( empty( $vat_number ) ) {
225
-			return;
226
-		}
224
+        if ( empty( $vat_number ) ) {
225
+            return;
226
+        }
227 227
 
228
-		if ( wpinv_should_validate_vat_number() && ! wpinv_validate_vat_number( $vat_number, $submission->country ) ) {
229
-			throw new Exception( __( 'Your VAT number is invalid', 'invoicing' ) );
230
-		}
228
+        if ( wpinv_should_validate_vat_number() && ! wpinv_validate_vat_number( $vat_number, $submission->country ) ) {
229
+            throw new Exception( __( 'Your VAT number is invalid', 'invoicing' ) );
230
+        }
231 231
 
232
-		if (  wpinv_default_billing_country() == $submission->country && 'vat_too' == wpinv_get_option( 'vat_same_country_rule', 'vat_too' ) ) {
233
-			return;
234
-		}
232
+        if (  wpinv_default_billing_country() == $submission->country && 'vat_too' == wpinv_get_option( 'vat_same_country_rule', 'vat_too' ) ) {
233
+            return;
234
+        }
235 235
 
236
-		$this->skip_taxes = true;
237
-	}
236
+        $this->skip_taxes = true;
237
+    }
238 238
 
239 239
 }
Please login to merge, or discard this patch.
Spacing   +52 added lines, -52 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
  * Payment form submission taxes class
@@ -29,22 +29,22 @@  discard block
 block discarded – undo
29 29
 	 *
30 30
 	 * @param GetPaid_Payment_Form_Submission $submission
31 31
 	 */
32
-	public function __construct( $submission ) {
32
+	public function __construct($submission) {
33 33
 
34 34
 		// Validate VAT number.
35
-		$this->validate_vat( $submission );
35
+		$this->validate_vat($submission);
36 36
 
37
-		if ( $this->skip_taxes ) {
37
+		if ($this->skip_taxes) {
38 38
 			return;
39 39
 		}
40 40
 
41
-		foreach ( $submission->get_items() as $item ) {
42
-			$this->process_item_tax( $item, $submission );
41
+		foreach ($submission->get_items() as $item) {
42
+			$this->process_item_tax($item, $submission);
43 43
 		}
44 44
 
45 45
 		// Process any existing invoice taxes.
46
-		if ( $submission->has_invoice() ) {
47
-			$this->taxes = array_replace( $submission->get_invoice()->get_taxes(), $this->taxes );
46
+		if ($submission->has_invoice()) {
47
+			$this->taxes = array_replace($submission->get_invoice()->get_taxes(), $this->taxes);
48 48
 		}
49 49
 
50 50
 	}
@@ -56,24 +56,24 @@  discard block
 block discarded – undo
56 56
 	 * @param GetPaid_Form_Item $item
57 57
 	 * @param GetPaid_Payment_Form_Submission $submission
58 58
 	 */
59
-	public function process_item_tax( $item, $submission ) {
59
+	public function process_item_tax($item, $submission) {
60 60
 
61
-		$rates    = getpaid_get_item_tax_rates( $item, $submission->country, $submission->state );
62
-		$rates    = getpaid_filter_item_tax_rates( $item, $rates );
63
-		$taxes    = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_sub_total(), $submission->get_discount_code(), false ), $rates );
64
-		$r_taxes  = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_recurring_sub_total(), $submission->get_discount_code(), true ), $rates );
61
+		$rates    = getpaid_get_item_tax_rates($item, $submission->country, $submission->state);
62
+		$rates    = getpaid_filter_item_tax_rates($item, $rates);
63
+		$taxes    = getpaid_calculate_item_taxes(getpaid_get_taxable_amount($item->get_id(), $item->get_sub_total(), $submission->get_discount_code(), false), $rates);
64
+		$r_taxes  = getpaid_calculate_item_taxes(getpaid_get_taxable_amount($item->get_id(), $item->get_recurring_sub_total(), $submission->get_discount_code(), true), $rates);
65 65
 
66
-		foreach ( $taxes as $name => $amount ) {
67
-			$recurring = isset( $r_taxes[ $name ] ) ? $r_taxes[ $name ] : 0;
68
-			$tax       = getpaid_prepare_item_tax( $item, $name, $amount, $recurring );
66
+		foreach ($taxes as $name => $amount) {
67
+			$recurring = isset($r_taxes[$name]) ? $r_taxes[$name] : 0;
68
+			$tax       = getpaid_prepare_item_tax($item, $name, $amount, $recurring);
69 69
 
70
-			if ( ! isset( $this->taxes[ $name ] ) ) {
71
-				$this->taxes[ $name ] = $tax;
70
+			if (!isset($this->taxes[$name])) {
71
+				$this->taxes[$name] = $tax;
72 72
 				continue;
73 73
 			}
74 74
 
75
-			$this->taxes[ $name ]['initial_tax']   += $tax['initial_tax'];
76
-			$this->taxes[ $name ]['recurring_tax'] += $tax['recurring_tax'];
75
+			$this->taxes[$name]['initial_tax']   += $tax['initial_tax'];
76
+			$this->taxes[$name]['recurring_tax'] += $tax['recurring_tax'];
77 77
 
78 78
 		}
79 79
 
@@ -86,11 +86,11 @@  discard block
 block discarded – undo
86 86
 	 * @since 1.0.19
87 87
 	 * @return bool
88 88
 	 */
89
-	public function has_digital_item( $submission ) {
89
+	public function has_digital_item($submission) {
90 90
 
91
-		foreach ( $submission->get_items() as $item ) {
91
+		foreach ($submission->get_items() as $item) {
92 92
 
93
-			if ( 'digital' == $item->get_vat_rule() ) {
93
+			if ('digital' == $item->get_vat_rule()) {
94 94
 				return true;
95 95
 			}
96 96
 
@@ -106,7 +106,7 @@  discard block
 block discarded – undo
106 106
 	 * @return bool
107 107
 	 */
108 108
 	public static function is_eu_store() {
109
-		return self::is_eu_country( wpinv_get_default_country() );
109
+		return self::is_eu_country(wpinv_get_default_country());
110 110
 	}
111 111
 
112 112
 	/**
@@ -116,8 +116,8 @@  discard block
 block discarded – undo
116 116
 	 * @since 1.0.19
117 117
 	 * @return bool
118 118
 	 */
119
-	public static function is_eu_country( $country ) {
120
-		return getpaid_is_eu_state( $country ) || getpaid_is_gst_country( $country );
119
+	public static function is_eu_country($country) {
120
+		return getpaid_is_eu_state($country) || getpaid_is_gst_country($country);
121 121
 	}
122 122
 
123 123
 	/**
@@ -127,8 +127,8 @@  discard block
 block discarded – undo
127 127
 	 * @since 1.0.19
128 128
 	 * @return bool
129 129
 	 */
130
-	public static function is_eu_transaction( $customer_country ) {
131
-		return self::is_eu_country( $customer_country ) && self::is_eu_store();
130
+	public static function is_eu_transaction($customer_country) {
131
+		return self::is_eu_country($customer_country) && self::is_eu_store();
132 132
 	}
133 133
 
134 134
 	/**
@@ -138,12 +138,12 @@  discard block
 block discarded – undo
138 138
 	 * @since 1.0.19
139 139
 	 * @return string
140 140
 	 */
141
-	public function get_vat_number( $submission ) {
141
+	public function get_vat_number($submission) {
142 142
 
143 143
 		// Retrieve from the posted number.
144
-		$vat_number = $submission->get_field( 'wpinv_vat_number', 'billing' );
145
-		if ( ! is_null( $vat_number ) ) {
146
-			return wpinv_clean( $vat_number );
144
+		$vat_number = $submission->get_field('wpinv_vat_number', 'billing');
145
+		if (!is_null($vat_number)) {
146
+			return wpinv_clean($vat_number);
147 147
 		}
148 148
 
149 149
 		return $submission->has_invoice() ? $submission->get_invoice()->get_vat_number() : '';
@@ -156,12 +156,12 @@  discard block
 block discarded – undo
156 156
 	 * @since 1.0.19
157 157
 	 * @return string
158 158
 	 */
159
-	public function get_company( $submission ) {
159
+	public function get_company($submission) {
160 160
 
161 161
 		// Retrieve from the posted data.
162
-		$company = $submission->get_field( 'wpinv_company', 'billing' );
163
-		if ( ! empty( $company ) ) {
164
-			return wpinv_clean( $company );
162
+		$company = $submission->get_field('wpinv_company', 'billing');
163
+		if (!empty($company)) {
164
+			return wpinv_clean($company);
165 165
 		}
166 166
 
167 167
 		// Retrieve from the invoice.
@@ -176,10 +176,10 @@  discard block
 block discarded – undo
176 176
 	 * @since 1.0.19
177 177
 	 * @return string
178 178
 	 */
179
-	public function requires_vat( $ip_in_eu, $country_in_eu ) {
179
+	public function requires_vat($ip_in_eu, $country_in_eu) {
180 180
 
181
-		$prevent_b2c = wpinv_get_option( 'vat_prevent_b2c_purchase' );
182
-		$prevent_b2c = ! empty( $prevent_b2c );
181
+		$prevent_b2c = wpinv_get_option('vat_prevent_b2c_purchase');
182
+		$prevent_b2c = !empty($prevent_b2c);
183 183
 		$is_eu       = $ip_in_eu || $country_in_eu;
184 184
 
185 185
 		return $prevent_b2c && $is_eu;
@@ -191,45 +191,45 @@  discard block
 block discarded – undo
191 191
 	 * @param GetPaid_Payment_Form_Submission $submission
192 192
 	 * @since 1.0.19
193 193
 	 */
194
-	public function validate_vat( $submission ) {
194
+	public function validate_vat($submission) {
195 195
 
196
-		$in_eu = $this->is_eu_transaction( $submission->country );
196
+		$in_eu = $this->is_eu_transaction($submission->country);
197 197
 
198 198
 		// Abort if we are not validating vat numbers.
199
-		if ( ! $in_eu ) {
199
+		if (!$in_eu) {
200 200
             return;
201 201
 		}
202 202
 
203 203
 		// Prepare variables.
204
-		$vat_number  = $this->get_vat_number( $submission );
204
+		$vat_number  = $this->get_vat_number($submission);
205 205
 		$ip_country  = getpaid_get_ip_country();
206
-        $is_eu       = $this->is_eu_country( $submission->country );
207
-        $is_ip_eu    = $this->is_eu_country( $ip_country );
206
+        $is_eu       = $this->is_eu_country($submission->country);
207
+        $is_ip_eu    = $this->is_eu_country($ip_country);
208 208
 
209 209
 		// Maybe abort early for initial fetches.
210
-		if ( $submission->is_initial_fetch() && empty( $vat_number ) ) {
210
+		if ($submission->is_initial_fetch() && empty($vat_number)) {
211 211
 			return;
212 212
 		}
213 213
 
214 214
 		// If we're preventing business to consumer purchases,
215
-		if ( $this->requires_vat( $is_ip_eu, $is_eu ) && empty( $vat_number ) ) {
215
+		if ($this->requires_vat($is_ip_eu, $is_eu) && empty($vat_number)) {
216 216
 
217 217
 			// Ensure that a vat number has been specified.
218 218
 			throw new Exception(
219
-				__( 'Please enter your VAT number to verify your purchase is by an EU business.', 'invoicing' )
219
+				__('Please enter your VAT number to verify your purchase is by an EU business.', 'invoicing')
220 220
 			);
221 221
 
222 222
 		}
223 223
 
224
-		if ( empty( $vat_number ) ) {
224
+		if (empty($vat_number)) {
225 225
 			return;
226 226
 		}
227 227
 
228
-		if ( wpinv_should_validate_vat_number() && ! wpinv_validate_vat_number( $vat_number, $submission->country ) ) {
229
-			throw new Exception( __( 'Your VAT number is invalid', 'invoicing' ) );
228
+		if (wpinv_should_validate_vat_number() && !wpinv_validate_vat_number($vat_number, $submission->country)) {
229
+			throw new Exception(__('Your VAT number is invalid', 'invoicing'));
230 230
 		}
231 231
 
232
-		if (  wpinv_default_billing_country() == $submission->country && 'vat_too' == wpinv_get_option( 'vat_same_country_rule', 'vat_too' ) ) {
232
+		if (wpinv_default_billing_country() == $submission->country && 'vat_too' == wpinv_get_option('vat_same_country_rule', 'vat_too')) {
233 233
 			return;
234 234
 		}
235 235
 
Please login to merge, or discard this patch.
includes/class-wpinv-invoice.php 2 patches
Indentation   +2486 added lines, -2486 removed lines patch added patch discarded remove patch
@@ -14,30 +14,30 @@  discard block
 block discarded – undo
14 14
 class WPInv_Invoice extends GetPaid_Data {
15 15
 
16 16
     /**
17
-	 * Which data store to load.
18
-	 *
19
-	 * @var string
20
-	 */
17
+     * Which data store to load.
18
+     *
19
+     * @var string
20
+     */
21 21
     protected $data_store_name = 'invoice';
22 22
 
23 23
     /**
24
-	 * This is the name of this object type.
25
-	 *
26
-	 * @var string
27
-	 */
24
+     * This is the name of this object type.
25
+     *
26
+     * @var string
27
+     */
28 28
     protected $object_type = 'invoice';
29 29
 
30 30
     /**
31
-	 * Item Data array. This is the core item data exposed in APIs.
32
-	 *
33
-	 * @since 1.0.19
34
-	 * @var array
35
-	 */
36
-	protected $data = array(
37
-		'parent_id'            => 0,
38
-		'status'               => 'wpi-pending',
39
-		'version'              => '',
40
-		'date_created'         => null,
31
+     * Item Data array. This is the core item data exposed in APIs.
32
+     *
33
+     * @since 1.0.19
34
+     * @var array
35
+     */
36
+    protected $data = array(
37
+        'parent_id'            => 0,
38
+        'status'               => 'wpi-pending',
39
+        'version'              => '',
40
+        'date_created'         => null,
41 41
         'date_modified'        => null,
42 42
         'due_date'             => null,
43 43
         'completed_date'       => null,
@@ -67,8 +67,8 @@  discard block
 block discarded – undo
67 67
         'subtotal'             => 0,
68 68
         'total_discount'       => 0,
69 69
         'total_tax'            => 0,
70
-		'total_fees'           => 0,
71
-		'total'                => 0,
70
+        'total_fees'           => 0,
71
+        'total'                => 0,
72 72
         'fees'                 => array(),
73 73
         'discounts'            => array(),
74 74
         'taxes'                => array(),
@@ -80,22 +80,22 @@  discard block
 block discarded – undo
80 80
         'transaction_id'       => '',
81 81
         'currency'             => '',
82 82
         'disable_taxes'        => false,
83
-		'subscription_id'      => null,
84
-		'remote_subscription_id' => null,
85
-		'is_viewed'            => false,
86
-		'email_cc'             => '',
87
-		'template'             => 'quantity', // hours, amount only
88
-		'created_via'          => null,
83
+        'subscription_id'      => null,
84
+        'remote_subscription_id' => null,
85
+        'is_viewed'            => false,
86
+        'email_cc'             => '',
87
+        'template'             => 'quantity', // hours, amount only
88
+        'created_via'          => null,
89 89
     );
90 90
 
91 91
     /**
92
-	 * Stores meta in cache for future reads.
93
-	 *
94
-	 * A group must be set to to enable caching.
95
-	 *
96
-	 * @var string
97
-	 */
98
-	protected $cache_group = 'getpaid_invoices';
92
+     * Stores meta in cache for future reads.
93
+     *
94
+     * A group must be set to to enable caching.
95
+     *
96
+     * @var string
97
+     */
98
+    protected $cache_group = 'getpaid_invoices';
99 99
 
100 100
     /**
101 101
      * Stores a reference to the original WP_Post object
@@ -109,104 +109,104 @@  discard block
 block discarded – undo
109 109
      *
110 110
      * @var int
111 111
      */
112
-	protected $recurring_item = null;
112
+    protected $recurring_item = null;
113 113
 
114
-	/**
114
+    /**
115 115
      * Stores an array of item totals.
116
-	 *
117
-	 * e.g $totals['discount'] = array(
118
-	 * 		'initial'   => 10,
119
-	 * 		'recurring' => 10,
120
-	 * )
116
+     *
117
+     * e.g $totals['discount'] = array(
118
+     * 		'initial'   => 10,
119
+     * 		'recurring' => 10,
120
+     * )
121 121
      *
122 122
      * @var array
123 123
      */
124
-	protected $totals = array();
124
+    protected $totals = array();
125 125
 
126
-	/**
127
-	 * Stores the status transition information.
128
-	 *
129
-	 * @since 1.0.19
130
-	 * @var bool|array
131
-	 */
132
-	protected $status_transition = false;
126
+    /**
127
+     * Stores the status transition information.
128
+     *
129
+     * @since 1.0.19
130
+     * @var bool|array
131
+     */
132
+    protected $status_transition = false;
133 133
 
134 134
     /**
135
-	 * Get the invoice if ID is passed, otherwise the invoice is new and empty.
136
-	 *
137
-	 * @param  int|string|object|WPInv_Invoice|WPInv_Legacy_Invoice|WP_Post $invoice Invoice id, key, transaction id, number or object to read.
138
-	 */
135
+     * Get the invoice if ID is passed, otherwise the invoice is new and empty.
136
+     *
137
+     * @param  int|string|object|WPInv_Invoice|WPInv_Legacy_Invoice|WP_Post $invoice Invoice id, key, transaction id, number or object to read.
138
+     */
139 139
     public function __construct( $invoice = 0 ) {
140 140
 
141 141
         parent::__construct( $invoice );
142 142
 
143
-		if ( ! empty( $invoice ) && is_numeric( $invoice ) && getpaid_is_invoice_post_type( get_post_type( (int) $invoice ) ) ) {
144
-			$this->set_id( (int) $invoice );
145
-		} elseif ( $invoice instanceof self ) {
146
-			$this->set_id( $invoice->get_id() );
147
-		} elseif ( ! empty( $invoice->ID ) ) {
148
-			$this->set_id( $invoice->ID );
149
-		} elseif ( is_array( $invoice ) ) {
150
-			$this->set_props( $invoice );
151
-
152
-			if ( isset( $invoice['ID'] ) ) {
153
-				$this->set_id( $invoice['ID'] );
154
-			}
155
-
156
-		} elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'key' ) ) {
157
-			$this->set_id( $invoice_id );
158
-		} elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'number' ) ) {
159
-			$this->set_id( $invoice_id );
160
-		} elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'transaction_id' ) ) {
161
-			$this->set_id( $invoice_id );
162
-		} else {
163
-			$this->set_object_read( true );
164
-		}
143
+        if ( ! empty( $invoice ) && is_numeric( $invoice ) && getpaid_is_invoice_post_type( get_post_type( (int) $invoice ) ) ) {
144
+            $this->set_id( (int) $invoice );
145
+        } elseif ( $invoice instanceof self ) {
146
+            $this->set_id( $invoice->get_id() );
147
+        } elseif ( ! empty( $invoice->ID ) ) {
148
+            $this->set_id( $invoice->ID );
149
+        } elseif ( is_array( $invoice ) ) {
150
+            $this->set_props( $invoice );
151
+
152
+            if ( isset( $invoice['ID'] ) ) {
153
+                $this->set_id( $invoice['ID'] );
154
+            }
155
+
156
+        } elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'key' ) ) {
157
+            $this->set_id( $invoice_id );
158
+        } elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'number' ) ) {
159
+            $this->set_id( $invoice_id );
160
+        } elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'transaction_id' ) ) {
161
+            $this->set_id( $invoice_id );
162
+        } else {
163
+            $this->set_object_read( true );
164
+        }
165 165
 
166 166
         // Load the datastore.
167
-		$this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
167
+        $this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
168 168
 
169
-		if ( $this->get_id() > 0 ) {
169
+        if ( $this->get_id() > 0 ) {
170 170
             $this->post = get_post( $this->get_id() );
171 171
             $this->ID   = $this->get_id();
172
-			$this->data_store->read( $this );
172
+            $this->data_store->read( $this );
173 173
         }
174 174
 
175 175
     }
176 176
 
177 177
     /**
178
-	 * Given an invoice key/number, it returns its id.
179
-	 *
180
-	 *
181
-	 * @static
182
-	 * @param string $value The invoice key or number
183
-	 * @param string $field Either key, transaction_id or number.
184
-	 * @since 1.0.15
185
-	 * @return int
186
-	 */
187
-	public static function get_invoice_id_by_field( $value, $field = 'key' ) {
178
+     * Given an invoice key/number, it returns its id.
179
+     *
180
+     *
181
+     * @static
182
+     * @param string $value The invoice key or number
183
+     * @param string $field Either key, transaction_id or number.
184
+     * @since 1.0.15
185
+     * @return int
186
+     */
187
+    public static function get_invoice_id_by_field( $value, $field = 'key' ) {
188 188
         global $wpdb;
189 189
 
190
-		// Trim the value.
191
-		$value = trim( $value );
190
+        // Trim the value.
191
+        $value = trim( $value );
192 192
 
193
-		if ( empty( $value ) ) {
194
-			return 0;
195
-		}
193
+        if ( empty( $value ) ) {
194
+            return 0;
195
+        }
196 196
 
197 197
         // Valid fields.
198 198
         $fields = array( 'key', 'number', 'transaction_id' );
199 199
 
200
-		// Ensure a field has been passed.
201
-		if ( empty( $field ) || ! in_array( $field, $fields ) ) {
202
-			return 0;
203
-		}
200
+        // Ensure a field has been passed.
201
+        if ( empty( $field ) || ! in_array( $field, $fields ) ) {
202
+            return 0;
203
+        }
204 204
 
205
-		// Maybe retrieve from the cache.
206
-		$invoice_id   = wp_cache_get( $value, "getpaid_invoice_{$field}s_to_invoice_ids" );
207
-		if ( false !== $invoice_id ) {
208
-			return $invoice_id;
209
-		}
205
+        // Maybe retrieve from the cache.
206
+        $invoice_id   = wp_cache_get( $value, "getpaid_invoice_{$field}s_to_invoice_ids" );
207
+        if ( false !== $invoice_id ) {
208
+            return $invoice_id;
209
+        }
210 210
 
211 211
         // Fetch from the db.
212 212
         $table       = $wpdb->prefix . 'getpaid_invoices';
@@ -214,10 +214,10 @@  discard block
 block discarded – undo
214 214
             $wpdb->prepare( "SELECT `post_id` FROM $table WHERE `$field`=%s LIMIT 1", $value )
215 215
         );
216 216
 
217
-		// Update the cache with our data
218
-		wp_cache_set( $value, $invoice_id, "getpaid_invoice_{$field}s_to_invoice_ids" );
217
+        // Update the cache with our data
218
+        wp_cache_set( $value, $invoice_id, "getpaid_invoice_{$field}s_to_invoice_ids" );
219 219
 
220
-		return $invoice_id;
220
+        return $invoice_id;
221 221
     }
222 222
 
223 223
     /**
@@ -243,83 +243,83 @@  discard block
 block discarded – undo
243 243
     */
244 244
 
245 245
     /**
246
-	 * Get parent invoice ID.
247
-	 *
248
-	 * @since 1.0.19
249
-	 * @param  string $context View or edit context.
250
-	 * @return int
251
-	 */
252
-	public function get_parent_id( $context = 'view' ) {
253
-		return (int) $this->get_prop( 'parent_id', $context );
246
+     * Get parent invoice ID.
247
+     *
248
+     * @since 1.0.19
249
+     * @param  string $context View or edit context.
250
+     * @return int
251
+     */
252
+    public function get_parent_id( $context = 'view' ) {
253
+        return (int) $this->get_prop( 'parent_id', $context );
254 254
     }
255 255
 
256 256
     /**
257
-	 * Get parent invoice.
258
-	 *
259
-	 * @since 1.0.19
260
-	 * @return WPInv_Invoice
261
-	 */
257
+     * Get parent invoice.
258
+     *
259
+     * @since 1.0.19
260
+     * @return WPInv_Invoice
261
+     */
262 262
     public function get_parent_payment() {
263 263
         return new WPInv_Invoice( $this->get_parent_id() );
264 264
     }
265 265
 
266 266
     /**
267
-	 * Alias for self::get_parent_payment().
268
-	 *
269
-	 * @since 1.0.19
270
-	 * @return WPInv_Invoice
271
-	 */
267
+     * Alias for self::get_parent_payment().
268
+     *
269
+     * @since 1.0.19
270
+     * @return WPInv_Invoice
271
+     */
272 272
     public function get_parent() {
273 273
         return $this->get_parent_payment();
274 274
     }
275 275
 
276 276
     /**
277
-	 * Get invoice status.
278
-	 *
279
-	 * @since 1.0.19
280
-	 * @param  string $context View or edit context.
281
-	 * @return string
282
-	 */
283
-	public function get_status( $context = 'view' ) {
284
-		return $this->get_prop( 'status', $context );
285
-	}
277
+     * Get invoice status.
278
+     *
279
+     * @since 1.0.19
280
+     * @param  string $context View or edit context.
281
+     * @return string
282
+     */
283
+    public function get_status( $context = 'view' ) {
284
+        return $this->get_prop( 'status', $context );
285
+    }
286 286
 	
287
-	/**
288
-	 * Retrieves an array of possible invoice statuses.
289
-	 *
290
-	 * @since 1.0.19
291
-	 * @return array
292
-	 */
293
-	public function get_all_statuses() {
294
-		return wpinv_get_invoice_statuses( true, true, $this );
295
-    }
296
-
297
-    /**
298
-	 * Get invoice status nice name.
299
-	 *
300
-	 * @since 1.0.19
301
-	 * @return string
302
-	 */
287
+    /**
288
+     * Retrieves an array of possible invoice statuses.
289
+     *
290
+     * @since 1.0.19
291
+     * @return array
292
+     */
293
+    public function get_all_statuses() {
294
+        return wpinv_get_invoice_statuses( true, true, $this );
295
+    }
296
+
297
+    /**
298
+     * Get invoice status nice name.
299
+     *
300
+     * @since 1.0.19
301
+     * @return string
302
+     */
303 303
     public function get_status_nicename() {
304
-		$statuses = $this->get_all_statuses();
304
+        $statuses = $this->get_all_statuses();
305 305
 
306 306
         $status = isset( $statuses[ $this->get_status() ] ) ? $statuses[ $this->get_status() ] : $this->get_status();
307 307
 
308 308
         return apply_filters( 'wpinv_get_invoice_status_nicename', $status, $this );
309 309
     }
310 310
 
311
-	/**
312
-	 * Retrieves the invoice status class
313
-	 *
314
-	 * @since  1.0.19
315
-	 * @return string
316
-	 */
317
-	public function get_status_class() {
318
-		$statuses = getpaid_get_invoice_status_classes();
319
-		return isset( $statuses[ $this->get_status() ] ) ? $statuses[ $this->get_status() ] : 'badge-dark';
320
-	}
311
+    /**
312
+     * Retrieves the invoice status class
313
+     *
314
+     * @since  1.0.19
315
+     * @return string
316
+     */
317
+    public function get_status_class() {
318
+        $statuses = getpaid_get_invoice_status_classes();
319
+        return isset( $statuses[ $this->get_status() ] ) ? $statuses[ $this->get_status() ] : 'badge-dark';
320
+    }
321 321
 
322
-	/**
322
+    /**
323 323
      * Retrieves the invoice status label html
324 324
      *
325 325
      * @since  1.0.0
@@ -327,263 +327,263 @@  discard block
 block discarded – undo
327 327
      */
328 328
     public function get_status_label_html() {
329 329
 
330
-		$status_label = sanitize_text_field( $this->get_status_nicename() );
331
-		$status       = sanitize_html_class( $this->get_status() );
332
-		$class        = esc_attr( $this->get_status_class() );
330
+        $status_label = sanitize_text_field( $this->get_status_nicename() );
331
+        $status       = sanitize_html_class( $this->get_status() );
332
+        $class        = esc_attr( $this->get_status_class() );
333 333
 
334
-		return "<span class='bsui'><span class='badge $class $status'>$status_label</span></span>";
335
-	}
334
+        return "<span class='bsui'><span class='badge $class $status'>$status_label</span></span>";
335
+    }
336 336
 
337 337
     /**
338
-	 * Get plugin version when the invoice was created.
339
-	 *
340
-	 * @since 1.0.19
341
-	 * @param  string $context View or edit context.
342
-	 * @return string
343
-	 */
344
-	public function get_version( $context = 'view' ) {
345
-		return $this->get_prop( 'version', $context );
346
-	}
338
+     * Get plugin version when the invoice was created.
339
+     *
340
+     * @since 1.0.19
341
+     * @param  string $context View or edit context.
342
+     * @return string
343
+     */
344
+    public function get_version( $context = 'view' ) {
345
+        return $this->get_prop( 'version', $context );
346
+    }
347 347
 
348
-	/**
349
-	 * @deprecated
350
-	 */
351
-	public function get_invoice_date( $format = true ) {
352
-		$date      = getpaid_format_date( $this->get_date_completed() );
353
-		$date      = empty( $date ) ? $this->get_date_created() : $this->get_date_completed();
354
-		$formatted = getpaid_format_date( $date );
348
+    /**
349
+     * @deprecated
350
+     */
351
+    public function get_invoice_date( $format = true ) {
352
+        $date      = getpaid_format_date( $this->get_date_completed() );
353
+        $date      = empty( $date ) ? $this->get_date_created() : $this->get_date_completed();
354
+        $formatted = getpaid_format_date( $date );
355 355
 
356
-		if ( $format ) {
357
-			return $formatted;
358
-		}
356
+        if ( $format ) {
357
+            return $formatted;
358
+        }
359 359
 
360
-		return empty( $formatted ) ? '' : $date;
360
+        return empty( $formatted ) ? '' : $date;
361 361
 
362 362
     }
363 363
 
364 364
     /**
365
-	 * Get date when the invoice was created.
366
-	 *
367
-	 * @since 1.0.19
368
-	 * @param  string $context View or edit context.
369
-	 * @return string
370
-	 */
371
-	public function get_date_created( $context = 'view' ) {
372
-		return $this->get_prop( 'date_created', $context );
373
-	}
365
+     * Get date when the invoice was created.
366
+     *
367
+     * @since 1.0.19
368
+     * @param  string $context View or edit context.
369
+     * @return string
370
+     */
371
+    public function get_date_created( $context = 'view' ) {
372
+        return $this->get_prop( 'date_created', $context );
373
+    }
374 374
 	
375
-	/**
376
-	 * Alias for self::get_date_created().
377
-	 *
378
-	 * @since 1.0.19
379
-	 * @param  string $context View or edit context.
380
-	 * @return string
381
-	 */
382
-	public function get_created_date( $context = 'view' ) {
383
-		return $this->get_date_created( $context );
384
-    }
385
-
386
-    /**
387
-	 * Get GMT date when the invoice was created.
388
-	 *
389
-	 * @since 1.0.19
390
-	 * @param  string $context View or edit context.
391
-	 * @return string
392
-	 */
393
-	public function get_date_created_gmt( $context = 'view' ) {
375
+    /**
376
+     * Alias for self::get_date_created().
377
+     *
378
+     * @since 1.0.19
379
+     * @param  string $context View or edit context.
380
+     * @return string
381
+     */
382
+    public function get_created_date( $context = 'view' ) {
383
+        return $this->get_date_created( $context );
384
+    }
385
+
386
+    /**
387
+     * Get GMT date when the invoice was created.
388
+     *
389
+     * @since 1.0.19
390
+     * @param  string $context View or edit context.
391
+     * @return string
392
+     */
393
+    public function get_date_created_gmt( $context = 'view' ) {
394 394
         $date = $this->get_date_created( $context );
395 395
 
396 396
         if ( $date ) {
397 397
             $date = get_gmt_from_date( $date );
398 398
         }
399
-		return $date;
399
+        return $date;
400 400
     }
401 401
 
402 402
     /**
403
-	 * Get date when the invoice was last modified.
404
-	 *
405
-	 * @since 1.0.19
406
-	 * @param  string $context View or edit context.
407
-	 * @return string
408
-	 */
409
-	public function get_date_modified( $context = 'view' ) {
410
-		return $this->get_prop( 'date_modified', $context );
411
-	}
403
+     * Get date when the invoice was last modified.
404
+     *
405
+     * @since 1.0.19
406
+     * @param  string $context View or edit context.
407
+     * @return string
408
+     */
409
+    public function get_date_modified( $context = 'view' ) {
410
+        return $this->get_prop( 'date_modified', $context );
411
+    }
412 412
 
413
-	/**
414
-	 * Alias for self::get_date_modified().
415
-	 *
416
-	 * @since 1.0.19
417
-	 * @param  string $context View or edit context.
418
-	 * @return string
419
-	 */
420
-	public function get_modified_date( $context = 'view' ) {
421
-		return $this->get_date_modified( $context );
413
+    /**
414
+     * Alias for self::get_date_modified().
415
+     *
416
+     * @since 1.0.19
417
+     * @param  string $context View or edit context.
418
+     * @return string
419
+     */
420
+    public function get_modified_date( $context = 'view' ) {
421
+        return $this->get_date_modified( $context );
422 422
     }
423 423
 
424 424
     /**
425
-	 * Get GMT date when the invoice was last modified.
426
-	 *
427
-	 * @since 1.0.19
428
-	 * @param  string $context View or edit context.
429
-	 * @return string
430
-	 */
431
-	public function get_date_modified_gmt( $context = 'view' ) {
425
+     * Get GMT date when the invoice was last modified.
426
+     *
427
+     * @since 1.0.19
428
+     * @param  string $context View or edit context.
429
+     * @return string
430
+     */
431
+    public function get_date_modified_gmt( $context = 'view' ) {
432 432
         $date = $this->get_date_modified( $context );
433 433
 
434 434
         if ( $date ) {
435 435
             $date = get_gmt_from_date( $date );
436 436
         }
437
-		return $date;
437
+        return $date;
438 438
     }
439 439
 
440 440
     /**
441
-	 * Get the invoice due date.
442
-	 *
443
-	 * @since 1.0.19
444
-	 * @param  string $context View or edit context.
445
-	 * @return string
446
-	 */
447
-	public function get_due_date( $context = 'view' ) {
448
-		return $this->get_prop( 'due_date', $context );
441
+     * Get the invoice due date.
442
+     *
443
+     * @since 1.0.19
444
+     * @param  string $context View or edit context.
445
+     * @return string
446
+     */
447
+    public function get_due_date( $context = 'view' ) {
448
+        return $this->get_prop( 'due_date', $context );
449 449
     }
450 450
 
451 451
     /**
452
-	 * Alias for self::get_due_date().
453
-	 *
454
-	 * @since 1.0.19
455
-	 * @param  string $context View or edit context.
456
-	 * @return string
457
-	 */
458
-	public function get_date_due( $context = 'view' ) {
459
-		return $this->get_due_date( $context );
452
+     * Alias for self::get_due_date().
453
+     *
454
+     * @since 1.0.19
455
+     * @param  string $context View or edit context.
456
+     * @return string
457
+     */
458
+    public function get_date_due( $context = 'view' ) {
459
+        return $this->get_due_date( $context );
460 460
     }
461 461
 
462 462
     /**
463
-	 * Get the invoice GMT due date.
464
-	 *
465
-	 * @since 1.0.19
466
-	 * @param  string $context View or edit context.
467
-	 * @return string
468
-	 */
469
-	public function get_due_date_gmt( $context = 'view' ) {
463
+     * Get the invoice GMT due date.
464
+     *
465
+     * @since 1.0.19
466
+     * @param  string $context View or edit context.
467
+     * @return string
468
+     */
469
+    public function get_due_date_gmt( $context = 'view' ) {
470 470
         $date = $this->get_due_date( $context );
471 471
 
472 472
         if ( $date ) {
473 473
             $date = get_gmt_from_date( $date );
474 474
         }
475
-		return $date;
475
+        return $date;
476 476
     }
477 477
 
478 478
     /**
479
-	 * Alias for self::get_due_date_gmt().
480
-	 *
481
-	 * @since 1.0.19
482
-	 * @param  string $context View or edit context.
483
-	 * @return string
484
-	 */
485
-	public function get_gmt_date_due( $context = 'view' ) {
486
-		return $this->get_due_date_gmt( $context );
479
+     * Alias for self::get_due_date_gmt().
480
+     *
481
+     * @since 1.0.19
482
+     * @param  string $context View or edit context.
483
+     * @return string
484
+     */
485
+    public function get_gmt_date_due( $context = 'view' ) {
486
+        return $this->get_due_date_gmt( $context );
487 487
     }
488 488
 
489 489
     /**
490
-	 * Get date when the invoice was completed.
491
-	 *
492
-	 * @since 1.0.19
493
-	 * @param  string $context View or edit context.
494
-	 * @return string
495
-	 */
496
-	public function get_completed_date( $context = 'view' ) {
497
-		return $this->get_prop( 'completed_date', $context );
490
+     * Get date when the invoice was completed.
491
+     *
492
+     * @since 1.0.19
493
+     * @param  string $context View or edit context.
494
+     * @return string
495
+     */
496
+    public function get_completed_date( $context = 'view' ) {
497
+        return $this->get_prop( 'completed_date', $context );
498 498
     }
499 499
 
500 500
     /**
501
-	 * Alias for self::get_completed_date().
502
-	 *
503
-	 * @since 1.0.19
504
-	 * @param  string $context View or edit context.
505
-	 * @return string
506
-	 */
507
-	public function get_date_completed( $context = 'view' ) {
508
-		return $this->get_completed_date( $context );
501
+     * Alias for self::get_completed_date().
502
+     *
503
+     * @since 1.0.19
504
+     * @param  string $context View or edit context.
505
+     * @return string
506
+     */
507
+    public function get_date_completed( $context = 'view' ) {
508
+        return $this->get_completed_date( $context );
509 509
     }
510 510
 
511 511
     /**
512
-	 * Get GMT date when the invoice was was completed.
513
-	 *
514
-	 * @since 1.0.19
515
-	 * @param  string $context View or edit context.
516
-	 * @return string
517
-	 */
518
-	public function get_completed_date_gmt( $context = 'view' ) {
512
+     * Get GMT date when the invoice was was completed.
513
+     *
514
+     * @since 1.0.19
515
+     * @param  string $context View or edit context.
516
+     * @return string
517
+     */
518
+    public function get_completed_date_gmt( $context = 'view' ) {
519 519
         $date = $this->get_completed_date( $context );
520 520
 
521 521
         if ( $date ) {
522 522
             $date = get_gmt_from_date( $date );
523 523
         }
524
-		return $date;
524
+        return $date;
525 525
     }
526 526
 
527 527
     /**
528
-	 * Alias for self::get_completed_date_gmt().
529
-	 *
530
-	 * @since 1.0.19
531
-	 * @param  string $context View or edit context.
532
-	 * @return string
533
-	 */
534
-	public function get_gmt_completed_date( $context = 'view' ) {
535
-		return $this->get_completed_date_gmt( $context );
528
+     * Alias for self::get_completed_date_gmt().
529
+     *
530
+     * @since 1.0.19
531
+     * @param  string $context View or edit context.
532
+     * @return string
533
+     */
534
+    public function get_gmt_completed_date( $context = 'view' ) {
535
+        return $this->get_completed_date_gmt( $context );
536 536
     }
537 537
 
538 538
     /**
539
-	 * Get the invoice number.
540
-	 *
541
-	 * @since 1.0.19
542
-	 * @param  string $context View or edit context.
543
-	 * @return string
544
-	 */
545
-	public function get_number( $context = 'view' ) {
546
-		$number = $this->get_prop( 'number', $context );
539
+     * Get the invoice number.
540
+     *
541
+     * @since 1.0.19
542
+     * @param  string $context View or edit context.
543
+     * @return string
544
+     */
545
+    public function get_number( $context = 'view' ) {
546
+        $number = $this->get_prop( 'number', $context );
547 547
 
548
-		if ( empty( $number ) ) {
549
-			$number = $this->generate_number();
550
-			$this->set_number( $this->generate_number() );
551
-		}
548
+        if ( empty( $number ) ) {
549
+            $number = $this->generate_number();
550
+            $this->set_number( $this->generate_number() );
551
+        }
552 552
 
553
-		return $number;
553
+        return $number;
554 554
     }
555 555
 
556
-	/**
557
-	 * Set the invoice number.
558
-	 *
559
-	 * @since 1.0.19
560
-	 */
561
-	public function maybe_set_number() {
556
+    /**
557
+     * Set the invoice number.
558
+     *
559
+     * @since 1.0.19
560
+     */
561
+    public function maybe_set_number() {
562 562
         $number = $this->get_number();
563 563
 
564 564
         if ( empty( $number ) || $this->get_id() == $number ) {
565
-			$this->set_number( $this->generate_number() );
565
+            $this->set_number( $this->generate_number() );
566 566
         }
567 567
 
568
-	}
568
+    }
569 569
 
570 570
     /**
571
-	 * Get the invoice key.
572
-	 *
573
-	 * @since 1.0.19
574
-	 * @param  string $context View or edit context.
575
-	 * @return string
576
-	 */
577
-	public function get_key( $context = 'view' ) {
571
+     * Get the invoice key.
572
+     *
573
+     * @since 1.0.19
574
+     * @param  string $context View or edit context.
575
+     * @return string
576
+     */
577
+    public function get_key( $context = 'view' ) {
578 578
         return $this->get_prop( 'key', $context );
579
-	}
580
-
581
-	/**
582
-	 * Set the invoice key.
583
-	 *
584
-	 * @since 1.0.19
585
-	 */
586
-	public function maybe_set_key() {
579
+    }
580
+
581
+    /**
582
+     * Set the invoice key.
583
+     *
584
+     * @since 1.0.19
585
+     */
586
+    public function maybe_set_key() {
587 587
         $key = $this->get_key();
588 588
 
589 589
         if ( empty( $key ) ) {
@@ -594,140 +594,140 @@  discard block
 block discarded – undo
594 594
     }
595 595
 
596 596
     /**
597
-	 * Get the invoice type.
598
-	 *
599
-	 * @since 1.0.19
600
-	 * @param  string $context View or edit context.
601
-	 * @return string
602
-	 */
603
-	public function get_type( $context = 'view' ) {
597
+     * Get the invoice type.
598
+     *
599
+     * @since 1.0.19
600
+     * @param  string $context View or edit context.
601
+     * @return string
602
+     */
603
+    public function get_type( $context = 'view' ) {
604 604
         return $this->get_prop( 'type', $context );
605
-	}
606
-
607
-	/**
608
-	 * Returns the post type name.
609
-	 *
610
-	 * @since 1.0.19
611
-	 * @return string
612
-	 */
613
-	public function get_invoice_quote_type() {
605
+    }
606
+
607
+    /**
608
+     * Returns the post type name.
609
+     *
610
+     * @since 1.0.19
611
+     * @return string
612
+     */
613
+    public function get_invoice_quote_type() {
614 614
         return getpaid_get_post_type_label( $this->get_post_type(), false );
615 615
     }
616 616
 
617 617
     /**
618
-	 * Get the invoice post type label.
619
-	 *
620
-	 * @since 1.0.19
621
-	 * @param  string $context View or edit context.
622
-	 * @return string
623
-	 */
624
-	public function get_label( $context = 'view' ) {
618
+     * Get the invoice post type label.
619
+     *
620
+     * @since 1.0.19
621
+     * @param  string $context View or edit context.
622
+     * @return string
623
+     */
624
+    public function get_label( $context = 'view' ) {
625 625
         return getpaid_get_post_type_label( $this->get_post_type( $context ), false );
626
-	}
627
-
628
-	/**
629
-	 * Get the invoice post type.
630
-	 *
631
-	 * @since 1.0.19
632
-	 * @param  string $context View or edit context.
633
-	 * @return string
634
-	 */
635
-	public function get_post_type( $context = 'view' ) {
626
+    }
627
+
628
+    /**
629
+     * Get the invoice post type.
630
+     *
631
+     * @since 1.0.19
632
+     * @param  string $context View or edit context.
633
+     * @return string
634
+     */
635
+    public function get_post_type( $context = 'view' ) {
636 636
         return $this->get_prop( 'post_type', $context );
637 637
     }
638 638
 
639 639
     /**
640
-	 * Get the invoice mode.
641
-	 *
642
-	 * @since 1.0.19
643
-	 * @param  string $context View or edit context.
644
-	 * @return string
645
-	 */
646
-	public function get_mode( $context = 'view' ) {
640
+     * Get the invoice mode.
641
+     *
642
+     * @since 1.0.19
643
+     * @param  string $context View or edit context.
644
+     * @return string
645
+     */
646
+    public function get_mode( $context = 'view' ) {
647 647
         return $this->get_prop( 'mode', $context );
648 648
     }
649 649
 
650 650
     /**
651
-	 * Get the invoice path.
652
-	 *
653
-	 * @since 1.0.19
654
-	 * @param  string $context View or edit context.
655
-	 * @return string
656
-	 */
657
-	public function get_path( $context = 'view' ) {
651
+     * Get the invoice path.
652
+     *
653
+     * @since 1.0.19
654
+     * @param  string $context View or edit context.
655
+     * @return string
656
+     */
657
+    public function get_path( $context = 'view' ) {
658 658
         $path   = $this->get_prop( 'path', $context );
659
-		$prefix = $this->get_type();
659
+        $prefix = $this->get_type();
660 660
 
661
-		if ( 0 !== strpos( $path, $prefix ) ) {
662
-			$path = sanitize_title(  $prefix . '-' . $this->get_id()  );
663
-			$this->set_path( $path );
664
-		}
661
+        if ( 0 !== strpos( $path, $prefix ) ) {
662
+            $path = sanitize_title(  $prefix . '-' . $this->get_id()  );
663
+            $this->set_path( $path );
664
+        }
665 665
 
666
-		return $path;
666
+        return $path;
667 667
     }
668 668
 
669 669
     /**
670
-	 * Get the invoice name/title.
671
-	 *
672
-	 * @since 1.0.19
673
-	 * @param  string $context View or edit context.
674
-	 * @return string
675
-	 */
676
-	public function get_name( $context = 'view' ) {
670
+     * Get the invoice name/title.
671
+     *
672
+     * @since 1.0.19
673
+     * @param  string $context View or edit context.
674
+     * @return string
675
+     */
676
+    public function get_name( $context = 'view' ) {
677 677
         return $this->get_prop( 'title', $context );
678 678
     }
679 679
 
680 680
     /**
681
-	 * Alias of self::get_name().
682
-	 *
683
-	 * @since 1.0.19
684
-	 * @param  string $context View or edit context.
685
-	 * @return string
686
-	 */
687
-	public function get_title( $context = 'view' ) {
688
-		return $this->get_name( $context );
681
+     * Alias of self::get_name().
682
+     *
683
+     * @since 1.0.19
684
+     * @param  string $context View or edit context.
685
+     * @return string
686
+     */
687
+    public function get_title( $context = 'view' ) {
688
+        return $this->get_name( $context );
689 689
     }
690 690
 
691 691
     /**
692
-	 * Get the invoice description.
693
-	 *
694
-	 * @since 1.0.19
695
-	 * @param  string $context View or edit context.
696
-	 * @return string
697
-	 */
698
-	public function get_description( $context = 'view' ) {
699
-		return $this->get_prop( 'description', $context );
692
+     * Get the invoice description.
693
+     *
694
+     * @since 1.0.19
695
+     * @param  string $context View or edit context.
696
+     * @return string
697
+     */
698
+    public function get_description( $context = 'view' ) {
699
+        return $this->get_prop( 'description', $context );
700 700
     }
701 701
 
702 702
     /**
703
-	 * Alias of self::get_description().
704
-	 *
705
-	 * @since 1.0.19
706
-	 * @param  string $context View or edit context.
707
-	 * @return string
708
-	 */
709
-	public function get_excerpt( $context = 'view' ) {
710
-		return $this->get_description( $context );
703
+     * Alias of self::get_description().
704
+     *
705
+     * @since 1.0.19
706
+     * @param  string $context View or edit context.
707
+     * @return string
708
+     */
709
+    public function get_excerpt( $context = 'view' ) {
710
+        return $this->get_description( $context );
711 711
     }
712 712
 
713 713
     /**
714
-	 * Alias of self::get_description().
715
-	 *
716
-	 * @since 1.0.19
717
-	 * @param  string $context View or edit context.
718
-	 * @return string
719
-	 */
720
-	public function get_summary( $context = 'view' ) {
721
-		return $this->get_description( $context );
714
+     * Alias of self::get_description().
715
+     *
716
+     * @since 1.0.19
717
+     * @param  string $context View or edit context.
718
+     * @return string
719
+     */
720
+    public function get_summary( $context = 'view' ) {
721
+        return $this->get_description( $context );
722 722
     }
723 723
 
724 724
     /**
725
-	 * Returns the user info.
726
-	 *
727
-	 * @since 1.0.19
725
+     * Returns the user info.
726
+     *
727
+     * @since 1.0.19
728 728
      * @param  string $context View or edit context.
729
-	 * @return array
730
-	 */
729
+     * @return array
730
+     */
731 731
     public function get_user_info( $context = 'view' ) {
732 732
 
733 733
         $user_info = array(
@@ -744,616 +744,616 @@  discard block
 block discarded – undo
744 744
             'company'    => $this->get_company( $context ),
745 745
             'vat_number' => $this->get_vat_number( $context ),
746 746
             'discount'   => $this->get_discount_code( $context ),
747
-		);
747
+        );
748 748
 
749
-		return apply_filters( 'wpinv_user_info', $user_info, $this->get_id(), $this );
749
+        return apply_filters( 'wpinv_user_info', $user_info, $this->get_id(), $this );
750 750
 
751 751
     }
752 752
 
753 753
     /**
754
-	 * Get the customer id.
755
-	 *
756
-	 * @since 1.0.19
757
-	 * @param  string $context View or edit context.
758
-	 * @return int
759
-	 */
760
-	public function get_author( $context = 'view' ) {
761
-		return (int) $this->get_prop( 'author', $context );
754
+     * Get the customer id.
755
+     *
756
+     * @since 1.0.19
757
+     * @param  string $context View or edit context.
758
+     * @return int
759
+     */
760
+    public function get_author( $context = 'view' ) {
761
+        return (int) $this->get_prop( 'author', $context );
762 762
     }
763 763
 
764 764
     /**
765
-	 * Alias of self::get_author().
766
-	 *
767
-	 * @since 1.0.19
768
-	 * @param  string $context View or edit context.
769
-	 * @return int
770
-	 */
771
-	public function get_user_id( $context = 'view' ) {
772
-		return $this->get_author( $context );
765
+     * Alias of self::get_author().
766
+     *
767
+     * @since 1.0.19
768
+     * @param  string $context View or edit context.
769
+     * @return int
770
+     */
771
+    public function get_user_id( $context = 'view' ) {
772
+        return $this->get_author( $context );
773 773
     }
774 774
 
775
-     /**
776
-	 * Alias of self::get_author().
777
-	 *
778
-	 * @since 1.0.19
779
-	 * @param  string $context View or edit context.
780
-	 * @return int
781
-	 */
782
-	public function get_customer_id( $context = 'view' ) {
783
-		return $this->get_author( $context );
775
+        /**
776
+         * Alias of self::get_author().
777
+         *
778
+         * @since 1.0.19
779
+         * @param  string $context View or edit context.
780
+         * @return int
781
+         */
782
+    public function get_customer_id( $context = 'view' ) {
783
+        return $this->get_author( $context );
784 784
     }
785 785
 
786 786
     /**
787
-	 * Get the customer's ip.
788
-	 *
789
-	 * @since 1.0.19
790
-	 * @param  string $context View or edit context.
791
-	 * @return string
792
-	 */
793
-	public function get_ip( $context = 'view' ) {
794
-		return $this->get_prop( 'user_ip', $context );
787
+     * Get the customer's ip.
788
+     *
789
+     * @since 1.0.19
790
+     * @param  string $context View or edit context.
791
+     * @return string
792
+     */
793
+    public function get_ip( $context = 'view' ) {
794
+        return $this->get_prop( 'user_ip', $context );
795 795
     }
796 796
 
797 797
     /**
798
-	 * Alias of self::get_ip().
799
-	 *
800
-	 * @since 1.0.19
801
-	 * @param  string $context View or edit context.
802
-	 * @return string
803
-	 */
804
-	public function get_user_ip( $context = 'view' ) {
805
-		return $this->get_ip( $context );
798
+     * Alias of self::get_ip().
799
+     *
800
+     * @since 1.0.19
801
+     * @param  string $context View or edit context.
802
+     * @return string
803
+     */
804
+    public function get_user_ip( $context = 'view' ) {
805
+        return $this->get_ip( $context );
806 806
     }
807 807
 
808
-     /**
809
-	 * Alias of self::get_ip().
810
-	 *
811
-	 * @since 1.0.19
812
-	 * @param  string $context View or edit context.
813
-	 * @return string
814
-	 */
815
-	public function get_customer_ip( $context = 'view' ) {
816
-		return $this->get_ip( $context );
808
+        /**
809
+         * Alias of self::get_ip().
810
+         *
811
+         * @since 1.0.19
812
+         * @param  string $context View or edit context.
813
+         * @return string
814
+         */
815
+    public function get_customer_ip( $context = 'view' ) {
816
+        return $this->get_ip( $context );
817 817
     }
818 818
 
819 819
     /**
820
-	 * Get the customer's first name.
821
-	 *
822
-	 * @since 1.0.19
823
-	 * @param  string $context View or edit context.
824
-	 * @return string
825
-	 */
826
-	public function get_first_name( $context = 'view' ) {
827
-		return $this->get_prop( 'first_name', $context );
820
+     * Get the customer's first name.
821
+     *
822
+     * @since 1.0.19
823
+     * @param  string $context View or edit context.
824
+     * @return string
825
+     */
826
+    public function get_first_name( $context = 'view' ) {
827
+        return $this->get_prop( 'first_name', $context );
828 828
     }
829 829
 
830 830
     /**
831
-	 * Alias of self::get_first_name().
832
-	 *
833
-	 * @since 1.0.19
834
-	 * @param  string $context View or edit context.
835
-	 * @return string
836
-	 */
837
-	public function get_user_first_name( $context = 'view' ) {
838
-		return $this->get_first_name( $context );
831
+     * Alias of self::get_first_name().
832
+     *
833
+     * @since 1.0.19
834
+     * @param  string $context View or edit context.
835
+     * @return string
836
+     */
837
+    public function get_user_first_name( $context = 'view' ) {
838
+        return $this->get_first_name( $context );
839 839
     }
840 840
 
841
-     /**
842
-	 * Alias of self::get_first_name().
843
-	 *
844
-	 * @since 1.0.19
845
-	 * @param  string $context View or edit context.
846
-	 * @return string
847
-	 */
848
-	public function get_customer_first_name( $context = 'view' ) {
849
-		return $this->get_first_name( $context );
841
+        /**
842
+         * Alias of self::get_first_name().
843
+         *
844
+         * @since 1.0.19
845
+         * @param  string $context View or edit context.
846
+         * @return string
847
+         */
848
+    public function get_customer_first_name( $context = 'view' ) {
849
+        return $this->get_first_name( $context );
850 850
     }
851 851
 
852 852
     /**
853
-	 * Get the customer's last name.
854
-	 *
855
-	 * @since 1.0.19
856
-	 * @param  string $context View or edit context.
857
-	 * @return string
858
-	 */
859
-	public function get_last_name( $context = 'view' ) {
860
-		return $this->get_prop( 'last_name', $context );
853
+     * Get the customer's last name.
854
+     *
855
+     * @since 1.0.19
856
+     * @param  string $context View or edit context.
857
+     * @return string
858
+     */
859
+    public function get_last_name( $context = 'view' ) {
860
+        return $this->get_prop( 'last_name', $context );
861 861
     }
862 862
 
863 863
     /**
864
-	 * Alias of self::get_last_name().
865
-	 *
866
-	 * @since 1.0.19
867
-	 * @param  string $context View or edit context.
868
-	 * @return string
869
-	 */
870
-	public function get_user_last_name( $context = 'view' ) {
871
-		return $this->get_last_name( $context );
864
+     * Alias of self::get_last_name().
865
+     *
866
+     * @since 1.0.19
867
+     * @param  string $context View or edit context.
868
+     * @return string
869
+     */
870
+    public function get_user_last_name( $context = 'view' ) {
871
+        return $this->get_last_name( $context );
872 872
     }
873 873
 
874 874
     /**
875
-	 * Alias of self::get_last_name().
876
-	 *
877
-	 * @since 1.0.19
878
-	 * @param  string $context View or edit context.
879
-	 * @return string
880
-	 */
881
-	public function get_customer_last_name( $context = 'view' ) {
882
-		return $this->get_last_name( $context );
875
+     * Alias of self::get_last_name().
876
+     *
877
+     * @since 1.0.19
878
+     * @param  string $context View or edit context.
879
+     * @return string
880
+     */
881
+    public function get_customer_last_name( $context = 'view' ) {
882
+        return $this->get_last_name( $context );
883 883
     }
884 884
 
885 885
     /**
886
-	 * Get the customer's full name.
887
-	 *
888
-	 * @since 1.0.19
889
-	 * @param  string $context View or edit context.
890
-	 * @return string
891
-	 */
892
-	public function get_full_name( $context = 'view' ) {
893
-		return trim( $this->get_first_name( $context ) . ' ' . $this->get_last_name( $context ) );
886
+     * Get the customer's full name.
887
+     *
888
+     * @since 1.0.19
889
+     * @param  string $context View or edit context.
890
+     * @return string
891
+     */
892
+    public function get_full_name( $context = 'view' ) {
893
+        return trim( $this->get_first_name( $context ) . ' ' . $this->get_last_name( $context ) );
894 894
     }
895 895
 
896 896
     /**
897
-	 * Alias of self::get_full_name().
898
-	 *
899
-	 * @since 1.0.19
900
-	 * @param  string $context View or edit context.
901
-	 * @return string
902
-	 */
903
-	public function get_user_full_name( $context = 'view' ) {
904
-		return $this->get_full_name( $context );
897
+     * Alias of self::get_full_name().
898
+     *
899
+     * @since 1.0.19
900
+     * @param  string $context View or edit context.
901
+     * @return string
902
+     */
903
+    public function get_user_full_name( $context = 'view' ) {
904
+        return $this->get_full_name( $context );
905 905
     }
906 906
 
907 907
     /**
908
-	 * Alias of self::get_full_name().
909
-	 *
910
-	 * @since 1.0.19
911
-	 * @param  string $context View or edit context.
912
-	 * @return string
913
-	 */
914
-	public function get_customer_full_name( $context = 'view' ) {
915
-		return $this->get_full_name( $context );
908
+     * Alias of self::get_full_name().
909
+     *
910
+     * @since 1.0.19
911
+     * @param  string $context View or edit context.
912
+     * @return string
913
+     */
914
+    public function get_customer_full_name( $context = 'view' ) {
915
+        return $this->get_full_name( $context );
916 916
     }
917 917
 
918 918
     /**
919
-	 * Get the customer's phone number.
920
-	 *
921
-	 * @since 1.0.19
922
-	 * @param  string $context View or edit context.
923
-	 * @return string
924
-	 */
925
-	public function get_phone( $context = 'view' ) {
926
-		return $this->get_prop( 'phone', $context );
919
+     * Get the customer's phone number.
920
+     *
921
+     * @since 1.0.19
922
+     * @param  string $context View or edit context.
923
+     * @return string
924
+     */
925
+    public function get_phone( $context = 'view' ) {
926
+        return $this->get_prop( 'phone', $context );
927 927
     }
928 928
 
929 929
     /**
930
-	 * Alias of self::get_phone().
931
-	 *
932
-	 * @since 1.0.19
933
-	 * @param  string $context View or edit context.
934
-	 * @return string
935
-	 */
936
-	public function get_phone_number( $context = 'view' ) {
937
-		return $this->get_phone( $context );
930
+     * Alias of self::get_phone().
931
+     *
932
+     * @since 1.0.19
933
+     * @param  string $context View or edit context.
934
+     * @return string
935
+     */
936
+    public function get_phone_number( $context = 'view' ) {
937
+        return $this->get_phone( $context );
938 938
     }
939 939
 
940 940
     /**
941
-	 * Alias of self::get_phone().
942
-	 *
943
-	 * @since 1.0.19
944
-	 * @param  string $context View or edit context.
945
-	 * @return string
946
-	 */
947
-	public function get_user_phone( $context = 'view' ) {
948
-		return $this->get_phone( $context );
941
+     * Alias of self::get_phone().
942
+     *
943
+     * @since 1.0.19
944
+     * @param  string $context View or edit context.
945
+     * @return string
946
+     */
947
+    public function get_user_phone( $context = 'view' ) {
948
+        return $this->get_phone( $context );
949 949
     }
950 950
 
951 951
     /**
952
-	 * Alias of self::get_phone().
953
-	 *
954
-	 * @since 1.0.19
955
-	 * @param  string $context View or edit context.
956
-	 * @return string
957
-	 */
958
-	public function get_customer_phone( $context = 'view' ) {
959
-		return $this->get_phone( $context );
952
+     * Alias of self::get_phone().
953
+     *
954
+     * @since 1.0.19
955
+     * @param  string $context View or edit context.
956
+     * @return string
957
+     */
958
+    public function get_customer_phone( $context = 'view' ) {
959
+        return $this->get_phone( $context );
960 960
     }
961 961
 
962 962
     /**
963
-	 * Get the customer's email address.
964
-	 *
965
-	 * @since 1.0.19
966
-	 * @param  string $context View or edit context.
967
-	 * @return string
968
-	 */
969
-	public function get_email( $context = 'view' ) {
970
-		return $this->get_prop( 'email', $context );
963
+     * Get the customer's email address.
964
+     *
965
+     * @since 1.0.19
966
+     * @param  string $context View or edit context.
967
+     * @return string
968
+     */
969
+    public function get_email( $context = 'view' ) {
970
+        return $this->get_prop( 'email', $context );
971 971
     }
972 972
 
973 973
     /**
974
-	 * Alias of self::get_email().
975
-	 *
976
-	 * @since 1.0.19
977
-	 * @param  string $context View or edit context.
978
-	 * @return string
979
-	 */
980
-	public function get_email_address( $context = 'view' ) {
981
-		return $this->get_email( $context );
974
+     * Alias of self::get_email().
975
+     *
976
+     * @since 1.0.19
977
+     * @param  string $context View or edit context.
978
+     * @return string
979
+     */
980
+    public function get_email_address( $context = 'view' ) {
981
+        return $this->get_email( $context );
982 982
     }
983 983
 
984 984
     /**
985
-	 * Alias of self::get_email().
986
-	 *
987
-	 * @since 1.0.19
988
-	 * @param  string $context View or edit context.
989
-	 * @return string
990
-	 */
991
-	public function get_user_email( $context = 'view' ) {
992
-		return $this->get_email( $context );
985
+     * Alias of self::get_email().
986
+     *
987
+     * @since 1.0.19
988
+     * @param  string $context View or edit context.
989
+     * @return string
990
+     */
991
+    public function get_user_email( $context = 'view' ) {
992
+        return $this->get_email( $context );
993 993
     }
994 994
 
995 995
     /**
996
-	 * Alias of self::get_email().
997
-	 *
998
-	 * @since 1.0.19
999
-	 * @param  string $context View or edit context.
1000
-	 * @return string
1001
-	 */
1002
-	public function get_customer_email( $context = 'view' ) {
1003
-		return $this->get_email( $context );
996
+     * Alias of self::get_email().
997
+     *
998
+     * @since 1.0.19
999
+     * @param  string $context View or edit context.
1000
+     * @return string
1001
+     */
1002
+    public function get_customer_email( $context = 'view' ) {
1003
+        return $this->get_email( $context );
1004 1004
     }
1005 1005
 
1006 1006
     /**
1007
-	 * Get the customer's country.
1008
-	 *
1009
-	 * @since 1.0.19
1010
-	 * @param  string $context View or edit context.
1011
-	 * @return string
1012
-	 */
1013
-	public function get_country( $context = 'view' ) {
1014
-		$country = $this->get_prop( 'country', $context );
1015
-		return empty( $country ) ? wpinv_get_default_country() : $country;
1007
+     * Get the customer's country.
1008
+     *
1009
+     * @since 1.0.19
1010
+     * @param  string $context View or edit context.
1011
+     * @return string
1012
+     */
1013
+    public function get_country( $context = 'view' ) {
1014
+        $country = $this->get_prop( 'country', $context );
1015
+        return empty( $country ) ? wpinv_get_default_country() : $country;
1016 1016
     }
1017 1017
 
1018 1018
     /**
1019
-	 * Alias of self::get_country().
1020
-	 *
1021
-	 * @since 1.0.19
1022
-	 * @param  string $context View or edit context.
1023
-	 * @return string
1024
-	 */
1025
-	public function get_user_country( $context = 'view' ) {
1026
-		return $this->get_country( $context );
1019
+     * Alias of self::get_country().
1020
+     *
1021
+     * @since 1.0.19
1022
+     * @param  string $context View or edit context.
1023
+     * @return string
1024
+     */
1025
+    public function get_user_country( $context = 'view' ) {
1026
+        return $this->get_country( $context );
1027 1027
     }
1028 1028
 
1029 1029
     /**
1030
-	 * Alias of self::get_country().
1031
-	 *
1032
-	 * @since 1.0.19
1033
-	 * @param  string $context View or edit context.
1034
-	 * @return string
1035
-	 */
1036
-	public function get_customer_country( $context = 'view' ) {
1037
-		return $this->get_country( $context );
1030
+     * Alias of self::get_country().
1031
+     *
1032
+     * @since 1.0.19
1033
+     * @param  string $context View or edit context.
1034
+     * @return string
1035
+     */
1036
+    public function get_customer_country( $context = 'view' ) {
1037
+        return $this->get_country( $context );
1038 1038
     }
1039 1039
 
1040 1040
     /**
1041
-	 * Get the customer's state.
1042
-	 *
1043
-	 * @since 1.0.19
1044
-	 * @param  string $context View or edit context.
1045
-	 * @return string
1046
-	 */
1047
-	public function get_state( $context = 'view' ) {
1048
-		$state = $this->get_prop( 'state', $context );
1049
-		return empty( $state ) ? wpinv_get_default_state() : $state;
1041
+     * Get the customer's state.
1042
+     *
1043
+     * @since 1.0.19
1044
+     * @param  string $context View or edit context.
1045
+     * @return string
1046
+     */
1047
+    public function get_state( $context = 'view' ) {
1048
+        $state = $this->get_prop( 'state', $context );
1049
+        return empty( $state ) ? wpinv_get_default_state() : $state;
1050 1050
     }
1051 1051
 
1052 1052
     /**
1053
-	 * Alias of self::get_state().
1054
-	 *
1055
-	 * @since 1.0.19
1056
-	 * @param  string $context View or edit context.
1057
-	 * @return string
1058
-	 */
1059
-	public function get_user_state( $context = 'view' ) {
1060
-		return $this->get_state( $context );
1053
+     * Alias of self::get_state().
1054
+     *
1055
+     * @since 1.0.19
1056
+     * @param  string $context View or edit context.
1057
+     * @return string
1058
+     */
1059
+    public function get_user_state( $context = 'view' ) {
1060
+        return $this->get_state( $context );
1061 1061
     }
1062 1062
 
1063 1063
     /**
1064
-	 * Alias of self::get_state().
1065
-	 *
1066
-	 * @since 1.0.19
1067
-	 * @param  string $context View or edit context.
1068
-	 * @return string
1069
-	 */
1070
-	public function get_customer_state( $context = 'view' ) {
1071
-		return $this->get_state( $context );
1064
+     * Alias of self::get_state().
1065
+     *
1066
+     * @since 1.0.19
1067
+     * @param  string $context View or edit context.
1068
+     * @return string
1069
+     */
1070
+    public function get_customer_state( $context = 'view' ) {
1071
+        return $this->get_state( $context );
1072 1072
     }
1073 1073
 
1074 1074
     /**
1075
-	 * Get the customer's city.
1076
-	 *
1077
-	 * @since 1.0.19
1078
-	 * @param  string $context View or edit context.
1079
-	 * @return string
1080
-	 */
1081
-	public function get_city( $context = 'view' ) {
1082
-		return $this->get_prop( 'city', $context );
1075
+     * Get the customer's city.
1076
+     *
1077
+     * @since 1.0.19
1078
+     * @param  string $context View or edit context.
1079
+     * @return string
1080
+     */
1081
+    public function get_city( $context = 'view' ) {
1082
+        return $this->get_prop( 'city', $context );
1083 1083
     }
1084 1084
 
1085 1085
     /**
1086
-	 * Alias of self::get_city().
1087
-	 *
1088
-	 * @since 1.0.19
1089
-	 * @param  string $context View or edit context.
1090
-	 * @return string
1091
-	 */
1092
-	public function get_user_city( $context = 'view' ) {
1093
-		return $this->get_city( $context );
1086
+     * Alias of self::get_city().
1087
+     *
1088
+     * @since 1.0.19
1089
+     * @param  string $context View or edit context.
1090
+     * @return string
1091
+     */
1092
+    public function get_user_city( $context = 'view' ) {
1093
+        return $this->get_city( $context );
1094 1094
     }
1095 1095
 
1096 1096
     /**
1097
-	 * Alias of self::get_city().
1098
-	 *
1099
-	 * @since 1.0.19
1100
-	 * @param  string $context View or edit context.
1101
-	 * @return string
1102
-	 */
1103
-	public function get_customer_city( $context = 'view' ) {
1104
-		return $this->get_city( $context );
1097
+     * Alias of self::get_city().
1098
+     *
1099
+     * @since 1.0.19
1100
+     * @param  string $context View or edit context.
1101
+     * @return string
1102
+     */
1103
+    public function get_customer_city( $context = 'view' ) {
1104
+        return $this->get_city( $context );
1105 1105
     }
1106 1106
 
1107 1107
     /**
1108
-	 * Get the customer's zip.
1109
-	 *
1110
-	 * @since 1.0.19
1111
-	 * @param  string $context View or edit context.
1112
-	 * @return string
1113
-	 */
1114
-	public function get_zip( $context = 'view' ) {
1115
-		return $this->get_prop( 'zip', $context );
1108
+     * Get the customer's zip.
1109
+     *
1110
+     * @since 1.0.19
1111
+     * @param  string $context View or edit context.
1112
+     * @return string
1113
+     */
1114
+    public function get_zip( $context = 'view' ) {
1115
+        return $this->get_prop( 'zip', $context );
1116 1116
     }
1117 1117
 
1118 1118
     /**
1119
-	 * Alias of self::get_zip().
1120
-	 *
1121
-	 * @since 1.0.19
1122
-	 * @param  string $context View or edit context.
1123
-	 * @return string
1124
-	 */
1125
-	public function get_user_zip( $context = 'view' ) {
1126
-		return $this->get_zip( $context );
1119
+     * Alias of self::get_zip().
1120
+     *
1121
+     * @since 1.0.19
1122
+     * @param  string $context View or edit context.
1123
+     * @return string
1124
+     */
1125
+    public function get_user_zip( $context = 'view' ) {
1126
+        return $this->get_zip( $context );
1127 1127
     }
1128 1128
 
1129 1129
     /**
1130
-	 * Alias of self::get_zip().
1131
-	 *
1132
-	 * @since 1.0.19
1133
-	 * @param  string $context View or edit context.
1134
-	 * @return string
1135
-	 */
1136
-	public function get_customer_zip( $context = 'view' ) {
1137
-		return $this->get_zip( $context );
1130
+     * Alias of self::get_zip().
1131
+     *
1132
+     * @since 1.0.19
1133
+     * @param  string $context View or edit context.
1134
+     * @return string
1135
+     */
1136
+    public function get_customer_zip( $context = 'view' ) {
1137
+        return $this->get_zip( $context );
1138 1138
     }
1139 1139
 
1140 1140
     /**
1141
-	 * Get the customer's company.
1142
-	 *
1143
-	 * @since 1.0.19
1144
-	 * @param  string $context View or edit context.
1145
-	 * @return string
1146
-	 */
1147
-	public function get_company( $context = 'view' ) {
1148
-		return $this->get_prop( 'company', $context );
1141
+     * Get the customer's company.
1142
+     *
1143
+     * @since 1.0.19
1144
+     * @param  string $context View or edit context.
1145
+     * @return string
1146
+     */
1147
+    public function get_company( $context = 'view' ) {
1148
+        return $this->get_prop( 'company', $context );
1149 1149
     }
1150 1150
 
1151 1151
     /**
1152
-	 * Alias of self::get_company().
1153
-	 *
1154
-	 * @since 1.0.19
1155
-	 * @param  string $context View or edit context.
1156
-	 * @return string
1157
-	 */
1158
-	public function get_user_company( $context = 'view' ) {
1159
-		return $this->get_company( $context );
1152
+     * Alias of self::get_company().
1153
+     *
1154
+     * @since 1.0.19
1155
+     * @param  string $context View or edit context.
1156
+     * @return string
1157
+     */
1158
+    public function get_user_company( $context = 'view' ) {
1159
+        return $this->get_company( $context );
1160 1160
     }
1161 1161
 
1162 1162
     /**
1163
-	 * Alias of self::get_company().
1164
-	 *
1165
-	 * @since 1.0.19
1166
-	 * @param  string $context View or edit context.
1167
-	 * @return string
1168
-	 */
1169
-	public function get_customer_company( $context = 'view' ) {
1170
-		return $this->get_company( $context );
1163
+     * Alias of self::get_company().
1164
+     *
1165
+     * @since 1.0.19
1166
+     * @param  string $context View or edit context.
1167
+     * @return string
1168
+     */
1169
+    public function get_customer_company( $context = 'view' ) {
1170
+        return $this->get_company( $context );
1171 1171
     }
1172 1172
 
1173 1173
     /**
1174
-	 * Get the customer's vat number.
1175
-	 *
1176
-	 * @since 1.0.19
1177
-	 * @param  string $context View or edit context.
1178
-	 * @return string
1179
-	 */
1180
-	public function get_vat_number( $context = 'view' ) {
1181
-		return $this->get_prop( 'vat_number', $context );
1174
+     * Get the customer's vat number.
1175
+     *
1176
+     * @since 1.0.19
1177
+     * @param  string $context View or edit context.
1178
+     * @return string
1179
+     */
1180
+    public function get_vat_number( $context = 'view' ) {
1181
+        return $this->get_prop( 'vat_number', $context );
1182 1182
     }
1183 1183
 
1184 1184
     /**
1185
-	 * Alias of self::get_vat_number().
1186
-	 *
1187
-	 * @since 1.0.19
1188
-	 * @param  string $context View or edit context.
1189
-	 * @return string
1190
-	 */
1191
-	public function get_user_vat_number( $context = 'view' ) {
1192
-		return $this->get_vat_number( $context );
1185
+     * Alias of self::get_vat_number().
1186
+     *
1187
+     * @since 1.0.19
1188
+     * @param  string $context View or edit context.
1189
+     * @return string
1190
+     */
1191
+    public function get_user_vat_number( $context = 'view' ) {
1192
+        return $this->get_vat_number( $context );
1193 1193
     }
1194 1194
 
1195 1195
     /**
1196
-	 * Alias of self::get_vat_number().
1197
-	 *
1198
-	 * @since 1.0.19
1199
-	 * @param  string $context View or edit context.
1200
-	 * @return string
1201
-	 */
1202
-	public function get_customer_vat_number( $context = 'view' ) {
1203
-		return $this->get_vat_number( $context );
1196
+     * Alias of self::get_vat_number().
1197
+     *
1198
+     * @since 1.0.19
1199
+     * @param  string $context View or edit context.
1200
+     * @return string
1201
+     */
1202
+    public function get_customer_vat_number( $context = 'view' ) {
1203
+        return $this->get_vat_number( $context );
1204 1204
     }
1205 1205
 
1206 1206
     /**
1207
-	 * Get the customer's vat rate.
1208
-	 *
1209
-	 * @since 1.0.19
1210
-	 * @param  string $context View or edit context.
1211
-	 * @return string
1212
-	 */
1213
-	public function get_vat_rate( $context = 'view' ) {
1214
-		return $this->get_prop( 'vat_rate', $context );
1215
-    }
1216
-
1217
-    /**
1218
-	 * Alias of self::get_vat_rate().
1219
-	 *
1220
-	 * @since 1.0.19
1221
-	 * @param  string $context View or edit context.
1222
-	 * @return string
1223
-	 */
1224
-	public function get_user_vat_rate( $context = 'view' ) {
1225
-		return $this->get_vat_rate( $context );
1226
-    }
1227
-
1228
-    /**
1229
-	 * Alias of self::get_vat_rate().
1230
-	 *
1231
-	 * @since 1.0.19
1232
-	 * @param  string $context View or edit context.
1233
-	 * @return string
1234
-	 */
1235
-	public function get_customer_vat_rate( $context = 'view' ) {
1236
-		return $this->get_vat_rate( $context );
1237
-    }
1238
-
1239
-    /**
1240
-	 * Get the customer's address.
1241
-	 *
1242
-	 * @since 1.0.19
1243
-	 * @param  string $context View or edit context.
1244
-	 * @return string
1245
-	 */
1246
-	public function get_address( $context = 'view' ) {
1247
-		return $this->get_prop( 'address', $context );
1248
-    }
1249
-
1250
-    /**
1251
-	 * Alias of self::get_address().
1252
-	 *
1253
-	 * @since 1.0.19
1254
-	 * @param  string $context View or edit context.
1255
-	 * @return string
1256
-	 */
1257
-	public function get_user_address( $context = 'view' ) {
1258
-		return $this->get_address( $context );
1259
-    }
1260
-
1261
-    /**
1262
-	 * Alias of self::get_address().
1263
-	 *
1264
-	 * @since 1.0.19
1265
-	 * @param  string $context View or edit context.
1266
-	 * @return string
1267
-	 */
1268
-	public function get_customer_address( $context = 'view' ) {
1269
-		return $this->get_address( $context );
1270
-    }
1271
-
1272
-    /**
1273
-	 * Get whether the customer has viewed the invoice or not.
1274
-	 *
1275
-	 * @since 1.0.19
1276
-	 * @param  string $context View or edit context.
1277
-	 * @return bool
1278
-	 */
1279
-	public function get_is_viewed( $context = 'view' ) {
1280
-		return (bool) $this->get_prop( 'is_viewed', $context );
1281
-	}
1282
-
1283
-	/**
1284
-	 * Get other recipients for invoice communications.
1285
-	 *
1286
-	 * @since 1.0.19
1287
-	 * @param  string $context View or edit context.
1288
-	 * @return bool
1289
-	 */
1290
-	public function get_email_cc( $context = 'view' ) {
1291
-		return $this->get_prop( 'email_cc', $context );
1292
-	}
1293
-
1294
-	/**
1295
-	 * Get invoice template.
1296
-	 *
1297
-	 * @since 1.0.19
1298
-	 * @param  string $context View or edit context.
1299
-	 * @return bool
1300
-	 */
1301
-	public function get_template( $context = 'view' ) {
1302
-		return $this->get_prop( 'template', $context );
1303
-	}
1304
-
1305
-	/**
1306
-	 * Get invoice source.
1307
-	 *
1308
-	 * @since 1.0.19
1309
-	 * @param  string $context View or edit context.
1310
-	 * @return bool
1311
-	 */
1312
-	public function get_created_via( $context = 'view' ) {
1313
-		return $this->get_prop( 'created_via', $context );
1314
-	}
1315
-
1316
-	/**
1317
-	 * Get whether the customer has confirmed their address.
1318
-	 *
1319
-	 * @since 1.0.19
1320
-	 * @param  string $context View or edit context.
1321
-	 * @return bool
1322
-	 */
1323
-	public function get_address_confirmed( $context = 'view' ) {
1324
-		return (bool) $this->get_prop( 'address_confirmed', $context );
1325
-    }
1326
-
1327
-    /**
1328
-	 * Alias of self::get_address_confirmed().
1329
-	 *
1330
-	 * @since 1.0.19
1331
-	 * @param  string $context View or edit context.
1332
-	 * @return bool
1333
-	 */
1334
-	public function get_user_address_confirmed( $context = 'view' ) {
1335
-		return $this->get_address_confirmed( $context );
1336
-    }
1337
-
1338
-    /**
1339
-	 * Alias of self::get_address().
1340
-	 *
1341
-	 * @since 1.0.19
1342
-	 * @param  string $context View or edit context.
1343
-	 * @return bool
1344
-	 */
1345
-	public function get_customer_address_confirmed( $context = 'view' ) {
1346
-		return $this->get_address_confirmed( $context );
1347
-    }
1348
-
1349
-    /**
1350
-	 * Get the invoice subtotal.
1351
-	 *
1352
-	 * @since 1.0.19
1353
-	 * @param  string $context View or edit context.
1354
-	 * @return float
1355
-	 */
1356
-	public function get_subtotal( $context = 'view' ) {
1207
+     * Get the customer's vat rate.
1208
+     *
1209
+     * @since 1.0.19
1210
+     * @param  string $context View or edit context.
1211
+     * @return string
1212
+     */
1213
+    public function get_vat_rate( $context = 'view' ) {
1214
+        return $this->get_prop( 'vat_rate', $context );
1215
+    }
1216
+
1217
+    /**
1218
+     * Alias of self::get_vat_rate().
1219
+     *
1220
+     * @since 1.0.19
1221
+     * @param  string $context View or edit context.
1222
+     * @return string
1223
+     */
1224
+    public function get_user_vat_rate( $context = 'view' ) {
1225
+        return $this->get_vat_rate( $context );
1226
+    }
1227
+
1228
+    /**
1229
+     * Alias of self::get_vat_rate().
1230
+     *
1231
+     * @since 1.0.19
1232
+     * @param  string $context View or edit context.
1233
+     * @return string
1234
+     */
1235
+    public function get_customer_vat_rate( $context = 'view' ) {
1236
+        return $this->get_vat_rate( $context );
1237
+    }
1238
+
1239
+    /**
1240
+     * Get the customer's address.
1241
+     *
1242
+     * @since 1.0.19
1243
+     * @param  string $context View or edit context.
1244
+     * @return string
1245
+     */
1246
+    public function get_address( $context = 'view' ) {
1247
+        return $this->get_prop( 'address', $context );
1248
+    }
1249
+
1250
+    /**
1251
+     * Alias of self::get_address().
1252
+     *
1253
+     * @since 1.0.19
1254
+     * @param  string $context View or edit context.
1255
+     * @return string
1256
+     */
1257
+    public function get_user_address( $context = 'view' ) {
1258
+        return $this->get_address( $context );
1259
+    }
1260
+
1261
+    /**
1262
+     * Alias of self::get_address().
1263
+     *
1264
+     * @since 1.0.19
1265
+     * @param  string $context View or edit context.
1266
+     * @return string
1267
+     */
1268
+    public function get_customer_address( $context = 'view' ) {
1269
+        return $this->get_address( $context );
1270
+    }
1271
+
1272
+    /**
1273
+     * Get whether the customer has viewed the invoice or not.
1274
+     *
1275
+     * @since 1.0.19
1276
+     * @param  string $context View or edit context.
1277
+     * @return bool
1278
+     */
1279
+    public function get_is_viewed( $context = 'view' ) {
1280
+        return (bool) $this->get_prop( 'is_viewed', $context );
1281
+    }
1282
+
1283
+    /**
1284
+     * Get other recipients for invoice communications.
1285
+     *
1286
+     * @since 1.0.19
1287
+     * @param  string $context View or edit context.
1288
+     * @return bool
1289
+     */
1290
+    public function get_email_cc( $context = 'view' ) {
1291
+        return $this->get_prop( 'email_cc', $context );
1292
+    }
1293
+
1294
+    /**
1295
+     * Get invoice template.
1296
+     *
1297
+     * @since 1.0.19
1298
+     * @param  string $context View or edit context.
1299
+     * @return bool
1300
+     */
1301
+    public function get_template( $context = 'view' ) {
1302
+        return $this->get_prop( 'template', $context );
1303
+    }
1304
+
1305
+    /**
1306
+     * Get invoice source.
1307
+     *
1308
+     * @since 1.0.19
1309
+     * @param  string $context View or edit context.
1310
+     * @return bool
1311
+     */
1312
+    public function get_created_via( $context = 'view' ) {
1313
+        return $this->get_prop( 'created_via', $context );
1314
+    }
1315
+
1316
+    /**
1317
+     * Get whether the customer has confirmed their address.
1318
+     *
1319
+     * @since 1.0.19
1320
+     * @param  string $context View or edit context.
1321
+     * @return bool
1322
+     */
1323
+    public function get_address_confirmed( $context = 'view' ) {
1324
+        return (bool) $this->get_prop( 'address_confirmed', $context );
1325
+    }
1326
+
1327
+    /**
1328
+     * Alias of self::get_address_confirmed().
1329
+     *
1330
+     * @since 1.0.19
1331
+     * @param  string $context View or edit context.
1332
+     * @return bool
1333
+     */
1334
+    public function get_user_address_confirmed( $context = 'view' ) {
1335
+        return $this->get_address_confirmed( $context );
1336
+    }
1337
+
1338
+    /**
1339
+     * Alias of self::get_address().
1340
+     *
1341
+     * @since 1.0.19
1342
+     * @param  string $context View or edit context.
1343
+     * @return bool
1344
+     */
1345
+    public function get_customer_address_confirmed( $context = 'view' ) {
1346
+        return $this->get_address_confirmed( $context );
1347
+    }
1348
+
1349
+    /**
1350
+     * Get the invoice subtotal.
1351
+     *
1352
+     * @since 1.0.19
1353
+     * @param  string $context View or edit context.
1354
+     * @return float
1355
+     */
1356
+    public function get_subtotal( $context = 'view' ) {
1357 1357
         $subtotal = (float) $this->get_prop( 'subtotal', $context );
1358 1358
 
1359 1359
         // Backwards compatibility.
@@ -1365,166 +1365,166 @@  discard block
 block discarded – undo
1365 1365
     }
1366 1366
 
1367 1367
     /**
1368
-	 * Get the invoice discount total.
1369
-	 *
1370
-	 * @since 1.0.19
1371
-	 * @param  string $context View or edit context.
1372
-	 * @return float
1373
-	 */
1374
-	public function get_total_discount( $context = 'view' ) {
1375
-		return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_discount', $context ) ) );
1368
+     * Get the invoice discount total.
1369
+     *
1370
+     * @since 1.0.19
1371
+     * @param  string $context View or edit context.
1372
+     * @return float
1373
+     */
1374
+    public function get_total_discount( $context = 'view' ) {
1375
+        return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_discount', $context ) ) );
1376 1376
     }
1377 1377
 
1378 1378
     /**
1379
-	 * Get the invoice tax total.
1380
-	 *
1381
-	 * @since 1.0.19
1382
-	 * @param  string $context View or edit context.
1383
-	 * @return float
1384
-	 */
1385
-	public function get_total_tax( $context = 'view' ) {
1386
-		return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_tax', $context ) ) );
1387
-	}
1379
+     * Get the invoice tax total.
1380
+     *
1381
+     * @since 1.0.19
1382
+     * @param  string $context View or edit context.
1383
+     * @return float
1384
+     */
1385
+    public function get_total_tax( $context = 'view' ) {
1386
+        return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_tax', $context ) ) );
1387
+    }
1388 1388
 
1389
-	/**
1390
-	 * @deprecated
1391
-	 */
1392
-	public function get_final_tax( $currency = false ) {
1393
-		$tax = $this->get_total_tax();
1389
+    /**
1390
+     * @deprecated
1391
+     */
1392
+    public function get_final_tax( $currency = false ) {
1393
+        $tax = $this->get_total_tax();
1394 1394
 
1395 1395
         if ( $currency ) {
1396
-			return wpinv_price( $tax, $this->get_currency() );
1396
+            return wpinv_price( $tax, $this->get_currency() );
1397 1397
         }
1398 1398
 
1399 1399
         return $tax;
1400 1400
     }
1401 1401
 
1402 1402
     /**
1403
-	 * Get the invoice fees total.
1404
-	 *
1405
-	 * @since 1.0.19
1406
-	 * @param  string $context View or edit context.
1407
-	 * @return float
1408
-	 */
1409
-	public function get_total_fees( $context = 'view' ) {
1410
-		return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_fees', $context ) ) );
1403
+     * Get the invoice fees total.
1404
+     *
1405
+     * @since 1.0.19
1406
+     * @param  string $context View or edit context.
1407
+     * @return float
1408
+     */
1409
+    public function get_total_fees( $context = 'view' ) {
1410
+        return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_fees', $context ) ) );
1411 1411
     }
1412 1412
 
1413 1413
     /**
1414
-	 * Alias for self::get_total_fees().
1415
-	 *
1416
-	 * @since 1.0.19
1417
-	 * @param  string $context View or edit context.
1418
-	 * @return float
1419
-	 */
1420
-	public function get_fees_total( $context = 'view' ) {
1421
-		return $this->get_total_fees( $context );
1414
+     * Alias for self::get_total_fees().
1415
+     *
1416
+     * @since 1.0.19
1417
+     * @param  string $context View or edit context.
1418
+     * @return float
1419
+     */
1420
+    public function get_fees_total( $context = 'view' ) {
1421
+        return $this->get_total_fees( $context );
1422 1422
     }
1423 1423
 
1424 1424
     /**
1425
-	 * Get the invoice total.
1426
-	 *
1427
-	 * @since 1.0.19
1425
+     * Get the invoice total.
1426
+     *
1427
+     * @since 1.0.19
1428 1428
      * @return float
1429
-	 */
1430
-	public function get_total( $context = 'view' ) {
1431
-		return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total', $context ) ) );
1432
-	}
1433
-
1434
-	/**
1435
-	 * Get the invoice totals.
1436
-	 *
1437
-	 * @since 1.0.19
1429
+     */
1430
+    public function get_total( $context = 'view' ) {
1431
+        return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total', $context ) ) );
1432
+    }
1433
+
1434
+    /**
1435
+     * Get the invoice totals.
1436
+     *
1437
+     * @since 1.0.19
1438 1438
      * @return array
1439
-	 */
1440
-	public function get_totals() {
1441
-		return $this->totals;
1439
+     */
1440
+    public function get_totals() {
1441
+        return $this->totals;
1442 1442
     }
1443 1443
 
1444 1444
     /**
1445
-	 * Get the initial invoice total.
1446
-	 *
1447
-	 * @since 1.0.19
1445
+     * Get the initial invoice total.
1446
+     *
1447
+     * @since 1.0.19
1448 1448
      * @param  string $context View or edit context.
1449 1449
      * @return float
1450
-	 */
1450
+     */
1451 1451
     public function get_initial_total() {
1452 1452
 
1453
-		if ( empty( $this->totals ) ) {
1454
-			$this->recalculate_total();
1455
-		}
1453
+        if ( empty( $this->totals ) ) {
1454
+            $this->recalculate_total();
1455
+        }
1456 1456
 
1457
-		$tax      = $this->totals['tax']['initial'];
1458
-		$fee      = $this->totals['fee']['initial'];
1459
-		$discount = $this->totals['discount']['initial'];
1460
-		$subtotal = $this->totals['subtotal']['initial'];
1461
-		$total    = $tax + $fee - $discount + $subtotal;
1457
+        $tax      = $this->totals['tax']['initial'];
1458
+        $fee      = $this->totals['fee']['initial'];
1459
+        $discount = $this->totals['discount']['initial'];
1460
+        $subtotal = $this->totals['subtotal']['initial'];
1461
+        $total    = $tax + $fee - $discount + $subtotal;
1462 1462
 
1463
-		if ( 0 > $total ) {
1464
-			$total = 0;
1465
-		}
1463
+        if ( 0 > $total ) {
1464
+            $total = 0;
1465
+        }
1466 1466
 
1467
-		$total = wpinv_round_amount( wpinv_sanitize_amount( $total ) );
1467
+        $total = wpinv_round_amount( wpinv_sanitize_amount( $total ) );
1468 1468
         return apply_filters( 'wpinv_get_initial_invoice_total', $total, $this );
1469
-	}
1469
+    }
1470 1470
 
1471
-	/**
1472
-	 * Get the recurring invoice total.
1473
-	 *
1474
-	 * @since 1.0.19
1471
+    /**
1472
+     * Get the recurring invoice total.
1473
+     *
1474
+     * @since 1.0.19
1475 1475
      * @param  string $context View or edit context.
1476 1476
      * @return float
1477
-	 */
1477
+     */
1478 1478
     public function get_recurring_total() {
1479 1479
 
1480
-		if ( empty( $this->totals ) ) {
1481
-			$this->recalculate_total();
1482
-		}
1480
+        if ( empty( $this->totals ) ) {
1481
+            $this->recalculate_total();
1482
+        }
1483 1483
 
1484
-		$tax      = $this->totals['tax']['recurring'];
1485
-		$fee      = $this->totals['fee']['recurring'];
1486
-		$discount = $this->totals['discount']['recurring'];
1487
-		$subtotal = $this->totals['subtotal']['recurring'];
1488
-		$total    = $tax + $fee - $discount + $subtotal;
1484
+        $tax      = $this->totals['tax']['recurring'];
1485
+        $fee      = $this->totals['fee']['recurring'];
1486
+        $discount = $this->totals['discount']['recurring'];
1487
+        $subtotal = $this->totals['subtotal']['recurring'];
1488
+        $total    = $tax + $fee - $discount + $subtotal;
1489 1489
 
1490
-		if ( 0 > $total ) {
1491
-			$total = 0;
1492
-		}
1490
+        if ( 0 > $total ) {
1491
+            $total = 0;
1492
+        }
1493 1493
 
1494
-		$total = wpinv_round_amount( wpinv_sanitize_amount( $total ) );
1494
+        $total = wpinv_round_amount( wpinv_sanitize_amount( $total ) );
1495 1495
         return apply_filters( 'wpinv_get_recurring_invoice_total', $total, $this );
1496
-	}
1496
+    }
1497 1497
 
1498
-	/**
1499
-	 * Returns recurring payment details.
1500
-	 *
1501
-	 * @since 1.0.19
1498
+    /**
1499
+     * Returns recurring payment details.
1500
+     *
1501
+     * @since 1.0.19
1502 1502
      * @param  string $field Optionally provide a field to return.
1503
-	 * @param string $currency Whether to include the currency.
1503
+     * @param string $currency Whether to include the currency.
1504 1504
      * @return float|string
1505
-	 */
1505
+     */
1506 1506
     public function get_recurring_details( $field = '', $currency = false ) {
1507 1507
 
1508
-		// Maybe recalculate totals.
1509
-		if ( empty( $this->totals ) ) {
1510
-			$this->recalculate_total();
1511
-		}
1508
+        // Maybe recalculate totals.
1509
+        if ( empty( $this->totals ) ) {
1510
+            $this->recalculate_total();
1511
+        }
1512 1512
 
1513
-		// Prepare recurring totals.
1513
+        // Prepare recurring totals.
1514 1514
         $data = apply_filters(
1515
-			'wpinv_get_invoice_recurring_details',
1516
-			array(
1517
-				'cart_details' => $this->get_cart_details(),
1518
-				'subtotal'     => $this->totals['subtotal']['recurring'],
1519
-				'discount'     => $this->totals['discount']['recurring'],
1520
-				'tax'          => $this->totals['tax']['recurring'],
1521
-				'fee'          => $this->totals['fee']['recurring'],
1522
-				'total'        => $this->get_recurring_total(),
1523
-			),
1524
-			$this,
1525
-			$field,
1526
-			$currency
1527
-		);
1515
+            'wpinv_get_invoice_recurring_details',
1516
+            array(
1517
+                'cart_details' => $this->get_cart_details(),
1518
+                'subtotal'     => $this->totals['subtotal']['recurring'],
1519
+                'discount'     => $this->totals['discount']['recurring'],
1520
+                'tax'          => $this->totals['tax']['recurring'],
1521
+                'fee'          => $this->totals['fee']['recurring'],
1522
+                'total'        => $this->get_recurring_total(),
1523
+            ),
1524
+            $this,
1525
+            $field,
1526
+            $currency
1527
+        );
1528 1528
 
1529 1529
         if ( isset( $data[$field] ) ) {
1530 1530
             return ( $currency ? wpinv_price( $data[$field], $this->get_currency() ) : $data[$field] );
@@ -1534,166 +1534,166 @@  discard block
 block discarded – undo
1534 1534
     }
1535 1535
 
1536 1536
     /**
1537
-	 * Get the invoice fees.
1538
-	 *
1539
-	 * @since 1.0.19
1540
-	 * @param  string $context View or edit context.
1541
-	 * @return array
1542
-	 */
1543
-	public function get_fees( $context = 'view' ) {
1544
-		return wpinv_parse_list( $this->get_prop( 'fees', $context ) );
1537
+     * Get the invoice fees.
1538
+     *
1539
+     * @since 1.0.19
1540
+     * @param  string $context View or edit context.
1541
+     * @return array
1542
+     */
1543
+    public function get_fees( $context = 'view' ) {
1544
+        return wpinv_parse_list( $this->get_prop( 'fees', $context ) );
1545 1545
     }
1546 1546
 
1547 1547
     /**
1548
-	 * Get the invoice discounts.
1549
-	 *
1550
-	 * @since 1.0.19
1551
-	 * @param  string $context View or edit context.
1552
-	 * @return array
1553
-	 */
1554
-	public function get_discounts( $context = 'view' ) {
1555
-		return wpinv_parse_list( $this->get_prop( 'discounts', $context ) );
1548
+     * Get the invoice discounts.
1549
+     *
1550
+     * @since 1.0.19
1551
+     * @param  string $context View or edit context.
1552
+     * @return array
1553
+     */
1554
+    public function get_discounts( $context = 'view' ) {
1555
+        return wpinv_parse_list( $this->get_prop( 'discounts', $context ) );
1556 1556
     }
1557 1557
 
1558 1558
     /**
1559
-	 * Get the invoice taxes.
1560
-	 *
1561
-	 * @since 1.0.19
1562
-	 * @param  string $context View or edit context.
1563
-	 * @return array
1564
-	 */
1565
-	public function get_taxes( $context = 'view' ) {
1566
-		return wpinv_parse_list( $this->get_prop( 'taxes', $context ) );
1559
+     * Get the invoice taxes.
1560
+     *
1561
+     * @since 1.0.19
1562
+     * @param  string $context View or edit context.
1563
+     * @return array
1564
+     */
1565
+    public function get_taxes( $context = 'view' ) {
1566
+        return wpinv_parse_list( $this->get_prop( 'taxes', $context ) );
1567 1567
     }
1568 1568
 
1569 1569
     /**
1570
-	 * Get the invoice items.
1571
-	 *
1572
-	 * @since 1.0.19
1573
-	 * @param  string $context View or edit context.
1574
-	 * @return GetPaid_Form_Item[]
1575
-	 */
1576
-	public function get_items( $context = 'view' ) {
1570
+     * Get the invoice items.
1571
+     *
1572
+     * @since 1.0.19
1573
+     * @param  string $context View or edit context.
1574
+     * @return GetPaid_Form_Item[]
1575
+     */
1576
+    public function get_items( $context = 'view' ) {
1577 1577
         return $this->get_prop( 'items', $context );
1578
-	}
1578
+    }
1579 1579
 
1580
-	/**
1581
-	 * Get the invoice item ids.
1582
-	 *
1583
-	 * @since 1.0.19
1584
-	 * @return string
1585
-	 */
1586
-	public function get_item_ids() {
1587
-		return implode( ', ', wp_list_pluck( $this->get_cart_details(), 'item_id' ) );
1580
+    /**
1581
+     * Get the invoice item ids.
1582
+     *
1583
+     * @since 1.0.19
1584
+     * @return string
1585
+     */
1586
+    public function get_item_ids() {
1587
+        return implode( ', ', wp_list_pluck( $this->get_cart_details(), 'item_id' ) );
1588 1588
     }
1589 1589
 
1590 1590
     /**
1591
-	 * Get the invoice's payment form.
1592
-	 *
1593
-	 * @since 1.0.19
1594
-	 * @param  string $context View or edit context.
1595
-	 * @return int
1596
-	 */
1597
-	public function get_payment_form( $context = 'view' ) {
1598
-		return intval( $this->get_prop( 'payment_form', $context ) );
1591
+     * Get the invoice's payment form.
1592
+     *
1593
+     * @since 1.0.19
1594
+     * @param  string $context View or edit context.
1595
+     * @return int
1596
+     */
1597
+    public function get_payment_form( $context = 'view' ) {
1598
+        return intval( $this->get_prop( 'payment_form', $context ) );
1599 1599
     }
1600 1600
 
1601 1601
     /**
1602
-	 * Get the invoice's submission id.
1603
-	 *
1604
-	 * @since 1.0.19
1605
-	 * @param  string $context View or edit context.
1606
-	 * @return string
1607
-	 */
1608
-	public function get_submission_id( $context = 'view' ) {
1609
-		return $this->get_prop( 'submission_id', $context );
1602
+     * Get the invoice's submission id.
1603
+     *
1604
+     * @since 1.0.19
1605
+     * @param  string $context View or edit context.
1606
+     * @return string
1607
+     */
1608
+    public function get_submission_id( $context = 'view' ) {
1609
+        return $this->get_prop( 'submission_id', $context );
1610 1610
     }
1611 1611
 
1612 1612
     /**
1613
-	 * Get the invoice's discount code.
1614
-	 *
1615
-	 * @since 1.0.19
1616
-	 * @param  string $context View or edit context.
1617
-	 * @return string
1618
-	 */
1619
-	public function get_discount_code( $context = 'view' ) {
1620
-		return $this->get_prop( 'discount_code', $context );
1613
+     * Get the invoice's discount code.
1614
+     *
1615
+     * @since 1.0.19
1616
+     * @param  string $context View or edit context.
1617
+     * @return string
1618
+     */
1619
+    public function get_discount_code( $context = 'view' ) {
1620
+        return $this->get_prop( 'discount_code', $context );
1621 1621
     }
1622 1622
 
1623 1623
     /**
1624
-	 * Get the invoice's gateway.
1625
-	 *
1626
-	 * @since 1.0.19
1627
-	 * @param  string $context View or edit context.
1628
-	 * @return string
1629
-	 */
1630
-	public function get_gateway( $context = 'view' ) {
1631
-		return $this->get_prop( 'gateway', $context );
1624
+     * Get the invoice's gateway.
1625
+     *
1626
+     * @since 1.0.19
1627
+     * @param  string $context View or edit context.
1628
+     * @return string
1629
+     */
1630
+    public function get_gateway( $context = 'view' ) {
1631
+        return $this->get_prop( 'gateway', $context );
1632 1632
     }
1633 1633
 
1634 1634
     /**
1635
-	 * Get the invoice's gateway display title.
1636
-	 *
1637
-	 * @since 1.0.19
1638
-	 * @return string
1639
-	 */
1635
+     * Get the invoice's gateway display title.
1636
+     *
1637
+     * @since 1.0.19
1638
+     * @return string
1639
+     */
1640 1640
     public function get_gateway_title() {
1641 1641
         $title =  wpinv_get_gateway_checkout_label( $this->get_gateway() );
1642 1642
         return apply_filters( 'wpinv_gateway_title', $title, $this->get_id(), $this );
1643 1643
     }
1644 1644
 
1645 1645
     /**
1646
-	 * Get the invoice's transaction id.
1647
-	 *
1648
-	 * @since 1.0.19
1649
-	 * @param  string $context View or edit context.
1650
-	 * @return string
1651
-	 */
1652
-	public function get_transaction_id( $context = 'view' ) {
1653
-		return $this->get_prop( 'transaction_id', $context );
1646
+     * Get the invoice's transaction id.
1647
+     *
1648
+     * @since 1.0.19
1649
+     * @param  string $context View or edit context.
1650
+     * @return string
1651
+     */
1652
+    public function get_transaction_id( $context = 'view' ) {
1653
+        return $this->get_prop( 'transaction_id', $context );
1654 1654
     }
1655 1655
 
1656 1656
     /**
1657
-	 * Get the invoice's currency.
1658
-	 *
1659
-	 * @since 1.0.19
1660
-	 * @param  string $context View or edit context.
1661
-	 * @return string
1662
-	 */
1663
-	public function get_currency( $context = 'view' ) {
1657
+     * Get the invoice's currency.
1658
+     *
1659
+     * @since 1.0.19
1660
+     * @param  string $context View or edit context.
1661
+     * @return string
1662
+     */
1663
+    public function get_currency( $context = 'view' ) {
1664 1664
         $currency = $this->get_prop( 'currency', $context );
1665 1665
         return empty( $currency ) ? wpinv_get_currency() : $currency;
1666 1666
     }
1667 1667
 
1668 1668
     /**
1669
-	 * Checks if we are charging taxes for this invoice.
1670
-	 *
1671
-	 * @since 1.0.19
1672
-	 * @param  string $context View or edit context.
1673
-	 * @return bool
1674
-	 */
1675
-	public function get_disable_taxes( $context = 'view' ) {
1669
+     * Checks if we are charging taxes for this invoice.
1670
+     *
1671
+     * @since 1.0.19
1672
+     * @param  string $context View or edit context.
1673
+     * @return bool
1674
+     */
1675
+    public function get_disable_taxes( $context = 'view' ) {
1676 1676
         return (bool) $this->get_prop( 'disable_taxes', $context );
1677 1677
     }
1678 1678
 
1679 1679
     /**
1680
-	 * Retrieves the subscription id for an invoice.
1681
-	 *
1682
-	 * @since 1.0.19
1683
-	 * @param  string $context View or edit context.
1684
-	 * @return int
1685
-	 */
1680
+     * Retrieves the subscription id for an invoice.
1681
+     *
1682
+     * @since 1.0.19
1683
+     * @param  string $context View or edit context.
1684
+     * @return int
1685
+     */
1686 1686
     public function get_subscription_id( $context = 'view' ) {
1687
-		return $this->is_renewal() ? $this->get_parent()->get_subscription_id( $context ) : $this->get_prop( 'subscription_id', $context );
1688
-	}
1689
-
1690
-	/**
1691
-	 * Retrieves the remote subscription id for an invoice.
1692
-	 *
1693
-	 * @since 1.0.19
1694
-	 * @param  string $context View or edit context.
1695
-	 * @return int
1696
-	 */
1687
+        return $this->is_renewal() ? $this->get_parent()->get_subscription_id( $context ) : $this->get_prop( 'subscription_id', $context );
1688
+    }
1689
+
1690
+    /**
1691
+     * Retrieves the remote subscription id for an invoice.
1692
+     *
1693
+     * @since 1.0.19
1694
+     * @param  string $context View or edit context.
1695
+     * @return int
1696
+     */
1697 1697
     public function get_remote_subscription_id( $context = 'view' ) {
1698 1698
         $subscription_id = $this->get_prop( 'remote_subscription_id', $context );
1699 1699
 
@@ -1706,12 +1706,12 @@  discard block
 block discarded – undo
1706 1706
     }
1707 1707
 
1708 1708
     /**
1709
-	 * Retrieves the payment meta for an invoice.
1710
-	 *
1711
-	 * @since 1.0.19
1712
-	 * @param  string $context View or edit context.
1713
-	 * @return array
1714
-	 */
1709
+     * Retrieves the payment meta for an invoice.
1710
+     *
1711
+     * @since 1.0.19
1712
+     * @param  string $context View or edit context.
1713
+     * @return array
1714
+     */
1715 1715
     public function get_payment_meta( $context = 'view' ) {
1716 1716
 
1717 1717
         return array(
@@ -1731,31 +1731,31 @@  discard block
 block discarded – undo
1731 1731
     }
1732 1732
 
1733 1733
     /**
1734
-	 * Retrieves the cart details for an invoice.
1735
-	 *
1736
-	 * @since 1.0.19
1737
-	 * @return array
1738
-	 */
1734
+     * Retrieves the cart details for an invoice.
1735
+     *
1736
+     * @since 1.0.19
1737
+     * @return array
1738
+     */
1739 1739
     public function get_cart_details() {
1740 1740
         $items        = $this->get_items();
1741 1741
         $cart_details = array();
1742 1742
 
1743 1743
         foreach ( $items as $item ) {
1744
-			$item->invoice_id = $this->get_id();
1744
+            $item->invoice_id = $this->get_id();
1745 1745
             $cart_details[]   = $item->prepare_data_for_saving();
1746 1746
         }
1747 1747
 
1748 1748
         return $cart_details;
1749
-	}
1749
+    }
1750 1750
 
1751
-	/**
1752
-	 * Retrieves the recurring item.
1753
-	 *
1754
-	 * @return null|GetPaid_Form_Item|int
1755
-	 */
1756
-	public function get_recurring( $object = false ) {
1751
+    /**
1752
+     * Retrieves the recurring item.
1753
+     *
1754
+     * @return null|GetPaid_Form_Item|int
1755
+     */
1756
+    public function get_recurring( $object = false ) {
1757 1757
 
1758
-		// Are we returning an object?
1758
+        // Are we returning an object?
1759 1759
         if ( $object ) {
1760 1760
             return $this->get_item( $this->recurring_item );
1761 1761
         }
@@ -1763,114 +1763,114 @@  discard block
 block discarded – undo
1763 1763
         return $this->recurring_item;
1764 1764
     }
1765 1765
 
1766
-	/**
1767
-	 * Retrieves the subscription name.
1768
-	 *
1769
-	 * @since 1.0.19
1770
-	 * @return string
1771
-	 */
1772
-	public function get_subscription_name() {
1766
+    /**
1767
+     * Retrieves the subscription name.
1768
+     *
1769
+     * @since 1.0.19
1770
+     * @return string
1771
+     */
1772
+    public function get_subscription_name() {
1773 1773
 
1774
-		// Retrieve the recurring name
1774
+        // Retrieve the recurring name
1775 1775
         $item = $this->get_recurring( true );
1776 1776
 
1777
-		// Abort if it does not exist.
1777
+        // Abort if it does not exist.
1778 1778
         if ( empty( $item ) ) {
1779 1779
             return '';
1780 1780
         }
1781 1781
 
1782
-		// Return the item name.
1782
+        // Return the item name.
1783 1783
         return apply_filters( 'wpinv_invoice_get_subscription_name', $item->get_name(), $this );
1784
-	}
1785
-
1786
-	/**
1787
-	 * Retrieves the view url.
1788
-	 *
1789
-	 * @since 1.0.19
1790
-	 * @return string
1791
-	 */
1792
-	public function get_view_url() {
1784
+    }
1785
+
1786
+    /**
1787
+     * Retrieves the view url.
1788
+     *
1789
+     * @since 1.0.19
1790
+     * @return string
1791
+     */
1792
+    public function get_view_url() {
1793 1793
         $invoice_url = get_permalink( $this->get_id() );
1794
-		$invoice_url = add_query_arg( 'invoice_key', $this->get_key(), $invoice_url );
1794
+        $invoice_url = add_query_arg( 'invoice_key', $this->get_key(), $invoice_url );
1795 1795
         return apply_filters( 'wpinv_get_view_url', $invoice_url, $this );
1796
-	}
1796
+    }
1797 1797
 
1798
-	/**
1799
-	 * Retrieves the payment url.
1800
-	 *
1801
-	 * @since 1.0.19
1802
-	 * @return string
1803
-	 */
1804
-	public function get_checkout_payment_url( $deprecated = false, $secret = false ) {
1798
+    /**
1799
+     * Retrieves the payment url.
1800
+     *
1801
+     * @since 1.0.19
1802
+     * @return string
1803
+     */
1804
+    public function get_checkout_payment_url( $deprecated = false, $secret = false ) {
1805 1805
 
1806
-		// Retrieve the checkout url.
1806
+        // Retrieve the checkout url.
1807 1807
         $pay_url = wpinv_get_checkout_uri();
1808 1808
 
1809
-		// Maybe force ssl.
1809
+        // Maybe force ssl.
1810 1810
         if ( is_ssl() ) {
1811 1811
             $pay_url = str_replace( 'http:', 'https:', $pay_url );
1812 1812
         }
1813 1813
 
1814
-		// Add the invoice key.
1815
-		$pay_url = add_query_arg( 'invoice_key', $this->get_key(), $pay_url );
1814
+        // Add the invoice key.
1815
+        $pay_url = add_query_arg( 'invoice_key', $this->get_key(), $pay_url );
1816 1816
 
1817
-		// (Maybe?) add a secret
1817
+        // (Maybe?) add a secret
1818 1818
         if ( $secret ) {
1819 1819
             $pay_url = add_query_arg( array( '_wpipay' => md5( $this->get_user_id() . '::' . $this->get_email() . '::' . $this->get_key() ) ), $pay_url );
1820 1820
         }
1821 1821
 
1822 1822
         return apply_filters( 'wpinv_get_checkout_payment_url', $pay_url, $this, $deprecated, $secret );
1823
-	}
1823
+    }
1824 1824
 	
1825
-	/**
1826
-	 * Retrieves the receipt url.
1827
-	 *
1828
-	 * @since 1.0.19
1829
-	 * @return string
1830
-	 */
1831
-	public function get_receipt_url() {
1832
-
1833
-		// Retrieve the checkout url.
1825
+    /**
1826
+     * Retrieves the receipt url.
1827
+     *
1828
+     * @since 1.0.19
1829
+     * @return string
1830
+     */
1831
+    public function get_receipt_url() {
1832
+
1833
+        // Retrieve the checkout url.
1834 1834
         $receipt_url = wpinv_get_success_page_uri();
1835 1835
 
1836
-		// Maybe force ssl.
1836
+        // Maybe force ssl.
1837 1837
         if ( is_ssl() ) {
1838 1838
             $receipt_url = str_replace( 'http:', 'https:', $receipt_url );
1839 1839
         }
1840 1840
 
1841
-		// Add the invoice key.
1842
-		$receipt_url = add_query_arg( 'invoice_key', $this->get_key(), $receipt_url );
1841
+        // Add the invoice key.
1842
+        $receipt_url = add_query_arg( 'invoice_key', $this->get_key(), $receipt_url );
1843 1843
 
1844 1844
         return apply_filters( 'getpaid_get_invoice_receipt_url', $receipt_url, $this );
1845
-	}
1845
+    }
1846 1846
 	
1847
-	/**
1848
-	 * Retrieves the default status.
1849
-	 *
1850
-	 * @since 1.0.19
1851
-	 * @return string
1852
-	 */
1853
-	public function get_default_status() {
1854
-
1855
-		$type   = $this->get_type();
1856
-		$status = "wpi-$type-pending";
1857
-		return str_replace( '-invoice', '', $status );
1858
-
1859
-	}
1860
-
1861
-    /**
1862
-	 * Magic method for accessing invoice properties.
1863
-	 *
1864
-	 * @since 1.0.15
1865
-	 * @access public
1866
-	 *
1867
-	 * @param string $key Discount data to retrieve
1868
-	 * @param  string $context View or edit context.
1869
-	 * @return mixed Value of the given invoice property (if set).
1870
-	 */
1871
-	public function get( $key, $context = 'view' ) {
1847
+    /**
1848
+     * Retrieves the default status.
1849
+     *
1850
+     * @since 1.0.19
1851
+     * @return string
1852
+     */
1853
+    public function get_default_status() {
1854
+
1855
+        $type   = $this->get_type();
1856
+        $status = "wpi-$type-pending";
1857
+        return str_replace( '-invoice', '', $status );
1858
+
1859
+    }
1860
+
1861
+    /**
1862
+     * Magic method for accessing invoice properties.
1863
+     *
1864
+     * @since 1.0.15
1865
+     * @access public
1866
+     *
1867
+     * @param string $key Discount data to retrieve
1868
+     * @param  string $context View or edit context.
1869
+     * @return mixed Value of the given invoice property (if set).
1870
+     */
1871
+    public function get( $key, $context = 'view' ) {
1872 1872
         return $this->get_prop( $key, $context );
1873
-	}
1873
+    }
1874 1874
 
1875 1875
     /*
1876 1876
 	|--------------------------------------------------------------------------
@@ -1883,130 +1883,130 @@  discard block
 block discarded – undo
1883 1883
     */
1884 1884
 
1885 1885
     /**
1886
-	 * Magic method for setting invoice properties.
1887
-	 *
1888
-	 * @since 1.0.19
1889
-	 * @access public
1890
-	 *
1891
-	 * @param string $key Discount data to retrieve
1892
-	 * @param  mixed $value new value.
1893
-	 * @return mixed Value of the given invoice property (if set).
1894
-	 */
1895
-	public function set( $key, $value ) {
1886
+     * Magic method for setting invoice properties.
1887
+     *
1888
+     * @since 1.0.19
1889
+     * @access public
1890
+     *
1891
+     * @param string $key Discount data to retrieve
1892
+     * @param  mixed $value new value.
1893
+     * @return mixed Value of the given invoice property (if set).
1894
+     */
1895
+    public function set( $key, $value ) {
1896 1896
 
1897 1897
         $setter = "set_$key";
1898 1898
         if ( is_callable( array( $this, $setter ) ) ) {
1899 1899
             $this->{$setter}( $value );
1900 1900
         }
1901 1901
 
1902
-	}
1902
+    }
1903 1903
 
1904
-	/**
1905
-	 * Sets item status.
1906
-	 *
1907
-	 * @since 1.0.19
1908
-	 * @param string $new_status    New status.
1909
-	 * @param string $note          Optional note to add.
1910
-	 * @param bool   $manual_update Is this a manual status change?.
1911
-	 * @return array details of change.
1912
-	 */
1913
-	public function set_status( $new_status, $note = '', $manual_update = false ) {
1914
-		$old_status = $this->get_status();
1904
+    /**
1905
+     * Sets item status.
1906
+     *
1907
+     * @since 1.0.19
1908
+     * @param string $new_status    New status.
1909
+     * @param string $note          Optional note to add.
1910
+     * @param bool   $manual_update Is this a manual status change?.
1911
+     * @return array details of change.
1912
+     */
1913
+    public function set_status( $new_status, $note = '', $manual_update = false ) {
1914
+        $old_status = $this->get_status();
1915 1915
 
1916
-		$statuses = $this->get_all_statuses();
1916
+        $statuses = $this->get_all_statuses();
1917 1917
 
1918
-		if ( isset( $statuses[ 'draft' ] ) ) {
1919
-			unset( $statuses[ 'draft' ] );
1920
-		}
1918
+        if ( isset( $statuses[ 'draft' ] ) ) {
1919
+            unset( $statuses[ 'draft' ] );
1920
+        }
1921 1921
 
1922
-		$this->set_prop( 'status', $new_status );
1922
+        $this->set_prop( 'status', $new_status );
1923 1923
 
1924
-		// If setting the status, ensure it's set to a valid status.
1925
-		if ( true === $this->object_read ) {
1924
+        // If setting the status, ensure it's set to a valid status.
1925
+        if ( true === $this->object_read ) {
1926 1926
 
1927
-			// Only allow valid new status.
1928
-			if ( ! array_key_exists( $new_status, $statuses ) ) {
1929
-				$new_status = $this->get_default_status();
1930
-			}
1927
+            // Only allow valid new status.
1928
+            if ( ! array_key_exists( $new_status, $statuses ) ) {
1929
+                $new_status = $this->get_default_status();
1930
+            }
1931 1931
 
1932
-			// If the old status is set but unknown (e.g. draft) assume its pending for action usage.
1933
-			if ( $old_status && ! array_key_exists( $new_status, $statuses ) ) {
1934
-				$old_status = $this->get_default_status();
1935
-			}
1932
+            // If the old status is set but unknown (e.g. draft) assume its pending for action usage.
1933
+            if ( $old_status && ! array_key_exists( $new_status, $statuses ) ) {
1934
+                $old_status = $this->get_default_status();
1935
+            }
1936 1936
 
1937
-			// Paid - Renewal (i.e when duplicating a parent invoice )
1938
-			if ( $new_status == 'wpi-pending' && $old_status == 'publish' && ! $this->get_id() ) {
1939
-				$old_status = 'wpi-pending';
1940
-			}
1937
+            // Paid - Renewal (i.e when duplicating a parent invoice )
1938
+            if ( $new_status == 'wpi-pending' && $old_status == 'publish' && ! $this->get_id() ) {
1939
+                $old_status = 'wpi-pending';
1940
+            }
1941 1941
 
1942
-		}
1942
+        }
1943 1943
 
1944
-		if ( true === $this->object_read && $old_status !== $new_status ) {
1945
-			$this->status_transition = array(
1946
-				'from'   => ! empty( $this->status_transition['from'] ) ? $this->status_transition['from'] : $old_status,
1947
-				'to'     => $new_status,
1948
-				'note'   => $note,
1949
-				'manual' => (bool) $manual_update,
1950
-			);
1944
+        if ( true === $this->object_read && $old_status !== $new_status ) {
1945
+            $this->status_transition = array(
1946
+                'from'   => ! empty( $this->status_transition['from'] ) ? $this->status_transition['from'] : $old_status,
1947
+                'to'     => $new_status,
1948
+                'note'   => $note,
1949
+                'manual' => (bool) $manual_update,
1950
+            );
1951 1951
 
1952
-			if ( $manual_update ) {
1953
-				do_action( 'getpaid_' . $this->object_type .'_edit_status', $this->get_id(), $new_status );
1954
-			}
1952
+            if ( $manual_update ) {
1953
+                do_action( 'getpaid_' . $this->object_type .'_edit_status', $this->get_id(), $new_status );
1954
+            }
1955 1955
 
1956
-			$this->maybe_set_date_paid();
1956
+            $this->maybe_set_date_paid();
1957 1957
 
1958
-		}
1958
+        }
1959 1959
 
1960
-		return array(
1961
-			'from' => $old_status,
1962
-			'to'   => $new_status,
1963
-		);
1964
-	}
1960
+        return array(
1961
+            'from' => $old_status,
1962
+            'to'   => $new_status,
1963
+        );
1964
+    }
1965 1965
 
1966
-	/**
1967
-	 * Maybe set date paid.
1968
-	 *
1969
-	 * Sets the date paid variable when transitioning to the payment complete
1970
-	 * order status.
1971
-	 *
1972
-	 * @since 1.0.19
1973
-	 */
1974
-	public function maybe_set_date_paid() {
1966
+    /**
1967
+     * Maybe set date paid.
1968
+     *
1969
+     * Sets the date paid variable when transitioning to the payment complete
1970
+     * order status.
1971
+     *
1972
+     * @since 1.0.19
1973
+     */
1974
+    public function maybe_set_date_paid() {
1975 1975
 
1976
-		if ( ! $this->get_date_completed( 'edit' ) && $this->is_paid() ) {
1977
-			$this->set_date_completed( current_time( 'mysql' ) );
1978
-		}
1979
-	}
1976
+        if ( ! $this->get_date_completed( 'edit' ) && $this->is_paid() ) {
1977
+            $this->set_date_completed( current_time( 'mysql' ) );
1978
+        }
1979
+    }
1980 1980
 
1981 1981
     /**
1982
-	 * Set parent invoice ID.
1983
-	 *
1984
-	 * @since 1.0.19
1985
-	 */
1986
-	public function set_parent_id( $value ) {
1987
-		if ( $value && ( $value === $this->get_id() ) ) {
1988
-			return;
1989
-		}
1990
-		$this->set_prop( 'parent_id', absint( $value ) );
1982
+     * Set parent invoice ID.
1983
+     *
1984
+     * @since 1.0.19
1985
+     */
1986
+    public function set_parent_id( $value ) {
1987
+        if ( $value && ( $value === $this->get_id() ) ) {
1988
+            return;
1989
+        }
1990
+        $this->set_prop( 'parent_id', absint( $value ) );
1991 1991
     }
1992 1992
 
1993 1993
     /**
1994
-	 * Set plugin version when the invoice was created.
1995
-	 *
1996
-	 * @since 1.0.19
1997
-	 */
1998
-	public function set_version( $value ) {
1999
-		$this->set_prop( 'version', $value );
1994
+     * Set plugin version when the invoice was created.
1995
+     *
1996
+     * @since 1.0.19
1997
+     */
1998
+    public function set_version( $value ) {
1999
+        $this->set_prop( 'version', $value );
2000 2000
     }
2001
-
2002
-    /**
2003
-	 * Set date when the invoice was created.
2004
-	 *
2005
-	 * @since 1.0.19
2006
-	 * @param string $value Value to set.
2001
+
2002
+    /**
2003
+     * Set date when the invoice was created.
2004
+     *
2005
+     * @since 1.0.19
2006
+     * @param string $value Value to set.
2007 2007
      * @return bool Whether or not the date was set.
2008
-	 */
2009
-	public function set_date_created( $value ) {
2008
+     */
2009
+    public function set_date_created( $value ) {
2010 2010
         $date = strtotime( $value );
2011 2011
 
2012 2012
         if ( $date && $value !== '0000-00-00 00:00:00' ) {
@@ -2014,19 +2014,19 @@  discard block
 block discarded – undo
2014 2014
             return true;
2015 2015
         }
2016 2016
 
2017
-		$this->set_prop( 'date_created', '' );
2018
-		return false;
2017
+        $this->set_prop( 'date_created', '' );
2018
+        return false;
2019 2019
 
2020 2020
     }
2021 2021
 
2022 2022
     /**
2023
-	 * Set date invoice due date.
2024
-	 *
2025
-	 * @since 1.0.19
2026
-	 * @param string $value Value to set.
2023
+     * Set date invoice due date.
2024
+     *
2025
+     * @since 1.0.19
2026
+     * @param string $value Value to set.
2027 2027
      * @return bool Whether or not the date was set.
2028
-	 */
2029
-	public function set_due_date( $value ) {
2028
+     */
2029
+    public function set_due_date( $value ) {
2030 2030
         $date = strtotime( $value );
2031 2031
 
2032 2032
         if ( $date && $value !== '0000-00-00 00:00:00' ) {
@@ -2034,29 +2034,29 @@  discard block
 block discarded – undo
2034 2034
             return true;
2035 2035
         }
2036 2036
 
2037
-		$this->set_prop( 'due_date', '' );
2037
+        $this->set_prop( 'due_date', '' );
2038 2038
         return false;
2039 2039
 
2040 2040
     }
2041 2041
 
2042 2042
     /**
2043
-	 * Alias of self::set_due_date().
2044
-	 *
2045
-	 * @since 1.0.19
2046
-	 * @param  string $value New name.
2047
-	 */
2048
-	public function set_date_due( $value ) {
2049
-		$this->set_due_date( $value );
2043
+     * Alias of self::set_due_date().
2044
+     *
2045
+     * @since 1.0.19
2046
+     * @param  string $value New name.
2047
+     */
2048
+    public function set_date_due( $value ) {
2049
+        $this->set_due_date( $value );
2050 2050
     }
2051 2051
 
2052 2052
     /**
2053
-	 * Set date invoice was completed.
2054
-	 *
2055
-	 * @since 1.0.19
2056
-	 * @param string $value Value to set.
2053
+     * Set date invoice was completed.
2054
+     *
2055
+     * @since 1.0.19
2056
+     * @param string $value Value to set.
2057 2057
      * @return bool Whether or not the date was set.
2058
-	 */
2059
-	public function set_completed_date( $value ) {
2058
+     */
2059
+    public function set_completed_date( $value ) {
2060 2060
         $date = strtotime( $value );
2061 2061
 
2062 2062
         if ( $date && $value !== '0000-00-00 00:00:00'  ) {
@@ -2064,29 +2064,29 @@  discard block
 block discarded – undo
2064 2064
             return true;
2065 2065
         }
2066 2066
 
2067
-		$this->set_prop( 'completed_date', '' );
2067
+        $this->set_prop( 'completed_date', '' );
2068 2068
         return false;
2069 2069
 
2070 2070
     }
2071 2071
 
2072 2072
     /**
2073
-	 * Alias of self::set_completed_date().
2074
-	 *
2075
-	 * @since 1.0.19
2076
-	 * @param  string $value New name.
2077
-	 */
2078
-	public function set_date_completed( $value ) {
2079
-		$this->set_completed_date( $value );
2073
+     * Alias of self::set_completed_date().
2074
+     *
2075
+     * @since 1.0.19
2076
+     * @param  string $value New name.
2077
+     */
2078
+    public function set_date_completed( $value ) {
2079
+        $this->set_completed_date( $value );
2080 2080
     }
2081 2081
 
2082 2082
     /**
2083
-	 * Set date when the invoice was last modified.
2084
-	 *
2085
-	 * @since 1.0.19
2086
-	 * @param string $value Value to set.
2083
+     * Set date when the invoice was last modified.
2084
+     *
2085
+     * @since 1.0.19
2086
+     * @param string $value Value to set.
2087 2087
      * @return bool Whether or not the date was set.
2088
-	 */
2089
-	public function set_date_modified( $value ) {
2088
+     */
2089
+    public function set_date_modified( $value ) {
2090 2090
         $date = strtotime( $value );
2091 2091
 
2092 2092
         if ( $date && $value !== '0000-00-00 00:00:00' ) {
@@ -2094,788 +2094,788 @@  discard block
 block discarded – undo
2094 2094
             return true;
2095 2095
         }
2096 2096
 
2097
-		$this->set_prop( 'date_modified', '' );
2097
+        $this->set_prop( 'date_modified', '' );
2098 2098
         return false;
2099 2099
 
2100 2100
     }
2101 2101
 
2102 2102
     /**
2103
-	 * Set the invoice number.
2104
-	 *
2105
-	 * @since 1.0.19
2106
-	 * @param  string $value New number.
2107
-	 */
2108
-	public function set_number( $value ) {
2103
+     * Set the invoice number.
2104
+     *
2105
+     * @since 1.0.19
2106
+     * @param  string $value New number.
2107
+     */
2108
+    public function set_number( $value ) {
2109 2109
         $number = sanitize_text_field( $value );
2110
-		$this->set_prop( 'number', $number );
2110
+        $this->set_prop( 'number', $number );
2111 2111
     }
2112 2112
 
2113 2113
     /**
2114
-	 * Set the invoice type.
2115
-	 *
2116
-	 * @since 1.0.19
2117
-	 * @param  string $value Type.
2118
-	 */
2119
-	public function set_type( $value ) {
2114
+     * Set the invoice type.
2115
+     *
2116
+     * @since 1.0.19
2117
+     * @param  string $value Type.
2118
+     */
2119
+    public function set_type( $value ) {
2120 2120
         $type = sanitize_text_field( str_replace( 'wpi_', '', $value ) );
2121
-		$this->set_prop( 'type', $type );
2122
-	}
2121
+        $this->set_prop( 'type', $type );
2122
+    }
2123 2123
 
2124 2124
     /**
2125
-	 * Set the invoice post type.
2126
-	 *
2127
-	 * @since 1.0.19
2128
-	 * @param  string $value Post type.
2129
-	 */
2130
-	public function set_post_type( $value ) {
2125
+     * Set the invoice post type.
2126
+     *
2127
+     * @since 1.0.19
2128
+     * @param  string $value Post type.
2129
+     */
2130
+    public function set_post_type( $value ) {
2131 2131
         if ( getpaid_is_invoice_post_type( $value ) ) {
2132
-			$this->set_type( $value );
2132
+            $this->set_type( $value );
2133 2133
             $this->set_prop( 'post_type', $value );
2134 2134
         }
2135 2135
     }
2136 2136
 
2137 2137
     /**
2138
-	 * Set the invoice key.
2139
-	 *
2140
-	 * @since 1.0.19
2141
-	 * @param  string $value New key.
2142
-	 */
2143
-	public function set_key( $value ) {
2138
+     * Set the invoice key.
2139
+     *
2140
+     * @since 1.0.19
2141
+     * @param  string $value New key.
2142
+     */
2143
+    public function set_key( $value ) {
2144 2144
         $key = sanitize_text_field( $value );
2145
-		$this->set_prop( 'key', $key );
2145
+        $this->set_prop( 'key', $key );
2146 2146
     }
2147 2147
 
2148 2148
     /**
2149
-	 * Set the invoice mode.
2150
-	 *
2151
-	 * @since 1.0.19
2152
-	 * @param  string $value mode.
2153
-	 */
2154
-	public function set_mode( $value ) {
2149
+     * Set the invoice mode.
2150
+     *
2151
+     * @since 1.0.19
2152
+     * @param  string $value mode.
2153
+     */
2154
+    public function set_mode( $value ) {
2155 2155
         if ( in_array( $value, array( 'live', 'test' ) ) ) {
2156 2156
             $this->set_prop( 'mode', $value );
2157 2157
         }
2158 2158
     }
2159 2159
 
2160 2160
     /**
2161
-	 * Set the invoice path.
2162
-	 *
2163
-	 * @since 1.0.19
2164
-	 * @param  string $value path.
2165
-	 */
2166
-	public function set_path( $value ) {
2161
+     * Set the invoice path.
2162
+     *
2163
+     * @since 1.0.19
2164
+     * @param  string $value path.
2165
+     */
2166
+    public function set_path( $value ) {
2167 2167
         $this->set_prop( 'path', $value );
2168 2168
     }
2169 2169
 
2170 2170
     /**
2171
-	 * Set the invoice name.
2172
-	 *
2173
-	 * @since 1.0.19
2174
-	 * @param  string $value New name.
2175
-	 */
2176
-	public function set_name( $value ) {
2171
+     * Set the invoice name.
2172
+     *
2173
+     * @since 1.0.19
2174
+     * @param  string $value New name.
2175
+     */
2176
+    public function set_name( $value ) {
2177 2177
         $name = sanitize_text_field( $value );
2178
-		$this->set_prop( 'name', $name );
2178
+        $this->set_prop( 'name', $name );
2179 2179
     }
2180 2180
 
2181 2181
     /**
2182
-	 * Alias of self::set_name().
2183
-	 *
2184
-	 * @since 1.0.19
2185
-	 * @param  string $value New name.
2186
-	 */
2187
-	public function set_title( $value ) {
2188
-		$this->set_name( $value );
2182
+     * Alias of self::set_name().
2183
+     *
2184
+     * @since 1.0.19
2185
+     * @param  string $value New name.
2186
+     */
2187
+    public function set_title( $value ) {
2188
+        $this->set_name( $value );
2189 2189
     }
2190 2190
 
2191 2191
     /**
2192
-	 * Set the invoice description.
2193
-	 *
2194
-	 * @since 1.0.19
2195
-	 * @param  string $value New description.
2196
-	 */
2197
-	public function set_description( $value ) {
2192
+     * Set the invoice description.
2193
+     *
2194
+     * @since 1.0.19
2195
+     * @param  string $value New description.
2196
+     */
2197
+    public function set_description( $value ) {
2198 2198
         $description = wp_kses_post( $value );
2199
-		$this->set_prop( 'description', $description );
2199
+        $this->set_prop( 'description', $description );
2200
+    }
2201
+
2202
+    /**
2203
+     * Alias of self::set_description().
2204
+     *
2205
+     * @since 1.0.19
2206
+     * @param  string $value New description.
2207
+     */
2208
+    public function set_excerpt( $value ) {
2209
+        $this->set_description( $value );
2210
+    }
2211
+
2212
+    /**
2213
+     * Alias of self::set_description().
2214
+     *
2215
+     * @since 1.0.19
2216
+     * @param  string $value New description.
2217
+     */
2218
+    public function set_summary( $value ) {
2219
+        $this->set_description( $value );
2220
+    }
2221
+
2222
+    /**
2223
+     * Set the receiver of the invoice.
2224
+     *
2225
+     * @since 1.0.19
2226
+     * @param  int $value New author.
2227
+     */
2228
+    public function set_author( $value ) {
2229
+        $user = get_user_by( 'id', (int) $value );
2230
+
2231
+        if ( $user && $user->ID ) {
2232
+            $this->set_prop( 'author', $user->ID );
2233
+            $this->set_prop( 'email', $user->user_email );
2234
+        }
2235
+
2236
+    }
2237
+
2238
+    /**
2239
+     * Alias of self::set_author().
2240
+     *
2241
+     * @since 1.0.19
2242
+     * @param  int $value New user id.
2243
+     */
2244
+    public function set_user_id( $value ) {
2245
+        $this->set_author( $value );
2246
+    }
2247
+
2248
+    /**
2249
+     * Alias of self::set_author().
2250
+     *
2251
+     * @since 1.0.19
2252
+     * @param  int $value New user id.
2253
+     */
2254
+    public function set_customer_id( $value ) {
2255
+        $this->set_author( $value );
2256
+    }
2257
+
2258
+    /**
2259
+     * Set the customer's ip.
2260
+     *
2261
+     * @since 1.0.19
2262
+     * @param  string $value ip address.
2263
+     */
2264
+    public function set_ip( $value ) {
2265
+        $this->set_prop( 'ip', $value );
2266
+    }
2267
+
2268
+    /**
2269
+     * Alias of self::set_ip().
2270
+     *
2271
+     * @since 1.0.19
2272
+     * @param  string $value ip address.
2273
+     */
2274
+    public function set_user_ip( $value ) {
2275
+        $this->set_ip( $value );
2276
+    }
2277
+
2278
+    /**
2279
+     * Set the customer's first name.
2280
+     *
2281
+     * @since 1.0.19
2282
+     * @param  string $value first name.
2283
+     */
2284
+    public function set_first_name( $value ) {
2285
+        $this->set_prop( 'first_name', $value );
2200 2286
     }
2201 2287
 
2202 2288
     /**
2203
-	 * Alias of self::set_description().
2204
-	 *
2205
-	 * @since 1.0.19
2206
-	 * @param  string $value New description.
2207
-	 */
2208
-	public function set_excerpt( $value ) {
2209
-		$this->set_description( $value );
2289
+     * Alias of self::set_first_name().
2290
+     *
2291
+     * @since 1.0.19
2292
+     * @param  string $value first name.
2293
+     */
2294
+    public function set_user_first_name( $value ) {
2295
+        $this->set_first_name( $value );
2210 2296
     }
2211 2297
 
2212 2298
     /**
2213
-	 * Alias of self::set_description().
2214
-	 *
2215
-	 * @since 1.0.19
2216
-	 * @param  string $value New description.
2217
-	 */
2218
-	public function set_summary( $value ) {
2219
-		$this->set_description( $value );
2299
+     * Alias of self::set_first_name().
2300
+     *
2301
+     * @since 1.0.19
2302
+     * @param  string $value first name.
2303
+     */
2304
+    public function set_customer_first_name( $value ) {
2305
+        $this->set_first_name( $value );
2220 2306
     }
2221 2307
 
2222 2308
     /**
2223
-	 * Set the receiver of the invoice.
2224
-	 *
2225
-	 * @since 1.0.19
2226
-	 * @param  int $value New author.
2227
-	 */
2228
-	public function set_author( $value ) {
2229
-		$user = get_user_by( 'id', (int) $value );
2309
+     * Set the customer's last name.
2310
+     *
2311
+     * @since 1.0.19
2312
+     * @param  string $value last name.
2313
+     */
2314
+    public function set_last_name( $value ) {
2315
+        $this->set_prop( 'last_name', $value );
2316
+    }
2230 2317
 
2231
-		if ( $user && $user->ID ) {
2232
-			$this->set_prop( 'author', $user->ID );
2233
-			$this->set_prop( 'email', $user->user_email );
2234
-		}
2318
+    /**
2319
+     * Alias of self::set_last_name().
2320
+     *
2321
+     * @since 1.0.19
2322
+     * @param  string $value last name.
2323
+     */
2324
+    public function set_user_last_name( $value ) {
2325
+        $this->set_last_name( $value );
2326
+    }
2235 2327
 
2328
+    /**
2329
+     * Alias of self::set_last_name().
2330
+     *
2331
+     * @since 1.0.19
2332
+     * @param  string $value last name.
2333
+     */
2334
+    public function set_customer_last_name( $value ) {
2335
+        $this->set_last_name( $value );
2236 2336
     }
2237 2337
 
2238 2338
     /**
2239
-	 * Alias of self::set_author().
2240
-	 *
2241
-	 * @since 1.0.19
2242
-	 * @param  int $value New user id.
2243
-	 */
2244
-	public function set_user_id( $value ) {
2245
-		$this->set_author( $value );
2339
+     * Set the customer's phone number.
2340
+     *
2341
+     * @since 1.0.19
2342
+     * @param  string $value phone.
2343
+     */
2344
+    public function set_phone( $value ) {
2345
+        $this->set_prop( 'phone', $value );
2246 2346
     }
2247 2347
 
2248 2348
     /**
2249
-	 * Alias of self::set_author().
2250
-	 *
2251
-	 * @since 1.0.19
2252
-	 * @param  int $value New user id.
2253
-	 */
2254
-	public function set_customer_id( $value ) {
2255
-		$this->set_author( $value );
2349
+     * Alias of self::set_phone().
2350
+     *
2351
+     * @since 1.0.19
2352
+     * @param  string $value phone.
2353
+     */
2354
+    public function set_user_phone( $value ) {
2355
+        $this->set_phone( $value );
2256 2356
     }
2257 2357
 
2258 2358
     /**
2259
-	 * Set the customer's ip.
2260
-	 *
2261
-	 * @since 1.0.19
2262
-	 * @param  string $value ip address.
2263
-	 */
2264
-	public function set_ip( $value ) {
2265
-		$this->set_prop( 'ip', $value );
2359
+     * Alias of self::set_phone().
2360
+     *
2361
+     * @since 1.0.19
2362
+     * @param  string $value phone.
2363
+     */
2364
+    public function set_customer_phone( $value ) {
2365
+        $this->set_phone( $value );
2266 2366
     }
2267 2367
 
2268 2368
     /**
2269
-	 * Alias of self::set_ip().
2270
-	 *
2271
-	 * @since 1.0.19
2272
-	 * @param  string $value ip address.
2273
-	 */
2274
-	public function set_user_ip( $value ) {
2275
-		$this->set_ip( $value );
2369
+     * Alias of self::set_phone().
2370
+     *
2371
+     * @since 1.0.19
2372
+     * @param  string $value phone.
2373
+     */
2374
+    public function set_phone_number( $value ) {
2375
+        $this->set_phone( $value );
2276 2376
     }
2277 2377
 
2278 2378
     /**
2279
-	 * Set the customer's first name.
2280
-	 *
2281
-	 * @since 1.0.19
2282
-	 * @param  string $value first name.
2283
-	 */
2284
-	public function set_first_name( $value ) {
2285
-		$this->set_prop( 'first_name', $value );
2379
+     * Set the customer's email address.
2380
+     *
2381
+     * @since 1.0.19
2382
+     * @param  string $value email address.
2383
+     */
2384
+    public function set_email( $value ) {
2385
+        $this->set_prop( 'email', $value );
2286 2386
     }
2287 2387
 
2288 2388
     /**
2289
-	 * Alias of self::set_first_name().
2290
-	 *
2291
-	 * @since 1.0.19
2292
-	 * @param  string $value first name.
2293
-	 */
2294
-	public function set_user_first_name( $value ) {
2295
-		$this->set_first_name( $value );
2389
+     * Alias of self::set_email().
2390
+     *
2391
+     * @since 1.0.19
2392
+     * @param  string $value email address.
2393
+     */
2394
+    public function set_user_email( $value ) {
2395
+        $this->set_email( $value );
2296 2396
     }
2297 2397
 
2298 2398
     /**
2299
-	 * Alias of self::set_first_name().
2300
-	 *
2301
-	 * @since 1.0.19
2302
-	 * @param  string $value first name.
2303
-	 */
2304
-	public function set_customer_first_name( $value ) {
2305
-		$this->set_first_name( $value );
2399
+     * Alias of self::set_email().
2400
+     *
2401
+     * @since 1.0.19
2402
+     * @param  string $value email address.
2403
+     */
2404
+    public function set_email_address( $value ) {
2405
+        $this->set_email( $value );
2306 2406
     }
2307 2407
 
2308 2408
     /**
2309
-	 * Set the customer's last name.
2310
-	 *
2311
-	 * @since 1.0.19
2312
-	 * @param  string $value last name.
2313
-	 */
2314
-	public function set_last_name( $value ) {
2315
-		$this->set_prop( 'last_name', $value );
2409
+     * Alias of self::set_email().
2410
+     *
2411
+     * @since 1.0.19
2412
+     * @param  string $value email address.
2413
+     */
2414
+    public function set_customer_email( $value ) {
2415
+        $this->set_email( $value );
2416
+    }
2417
+
2418
+    /**
2419
+     * Set the customer's country.
2420
+     *
2421
+     * @since 1.0.19
2422
+     * @param  string $value country.
2423
+     */
2424
+    public function set_country( $value ) {
2425
+        $this->set_prop( 'country', $value );
2426
+    }
2427
+
2428
+    /**
2429
+     * Alias of self::set_country().
2430
+     *
2431
+     * @since 1.0.19
2432
+     * @param  string $value country.
2433
+     */
2434
+    public function set_user_country( $value ) {
2435
+        $this->set_country( $value );
2436
+    }
2437
+
2438
+    /**
2439
+     * Alias of self::set_country().
2440
+     *
2441
+     * @since 1.0.19
2442
+     * @param  string $value country.
2443
+     */
2444
+    public function set_customer_country( $value ) {
2445
+        $this->set_country( $value );
2316 2446
     }
2317 2447
 
2318 2448
     /**
2319
-	 * Alias of self::set_last_name().
2320
-	 *
2321
-	 * @since 1.0.19
2322
-	 * @param  string $value last name.
2323
-	 */
2324
-	public function set_user_last_name( $value ) {
2325
-		$this->set_last_name( $value );
2449
+     * Set the customer's state.
2450
+     *
2451
+     * @since 1.0.19
2452
+     * @param  string $value state.
2453
+     */
2454
+    public function set_state( $value ) {
2455
+        $this->set_prop( 'state', $value );
2326 2456
     }
2327 2457
 
2328 2458
     /**
2329
-	 * Alias of self::set_last_name().
2330
-	 *
2331
-	 * @since 1.0.19
2332
-	 * @param  string $value last name.
2333
-	 */
2334
-	public function set_customer_last_name( $value ) {
2335
-		$this->set_last_name( $value );
2459
+     * Alias of self::set_state().
2460
+     *
2461
+     * @since 1.0.19
2462
+     * @param  string $value state.
2463
+     */
2464
+    public function set_user_state( $value ) {
2465
+        $this->set_state( $value );
2466
+    }
2467
+
2468
+    /**
2469
+     * Alias of self::set_state().
2470
+     *
2471
+     * @since 1.0.19
2472
+     * @param  string $value state.
2473
+     */
2474
+    public function set_customer_state( $value ) {
2475
+        $this->set_state( $value );
2476
+    }
2477
+
2478
+    /**
2479
+     * Set the customer's city.
2480
+     *
2481
+     * @since 1.0.19
2482
+     * @param  string $value city.
2483
+     */
2484
+    public function set_city( $value ) {
2485
+        $this->set_prop( 'city', $value );
2336 2486
     }
2337 2487
 
2338 2488
     /**
2339
-	 * Set the customer's phone number.
2340
-	 *
2341
-	 * @since 1.0.19
2342
-	 * @param  string $value phone.
2343
-	 */
2344
-	public function set_phone( $value ) {
2345
-		$this->set_prop( 'phone', $value );
2489
+     * Alias of self::set_city().
2490
+     *
2491
+     * @since 1.0.19
2492
+     * @param  string $value city.
2493
+     */
2494
+    public function set_user_city( $value ) {
2495
+        $this->set_city( $value );
2346 2496
     }
2347 2497
 
2348 2498
     /**
2349
-	 * Alias of self::set_phone().
2350
-	 *
2351
-	 * @since 1.0.19
2352
-	 * @param  string $value phone.
2353
-	 */
2354
-	public function set_user_phone( $value ) {
2355
-		$this->set_phone( $value );
2499
+     * Alias of self::set_city().
2500
+     *
2501
+     * @since 1.0.19
2502
+     * @param  string $value city.
2503
+     */
2504
+    public function set_customer_city( $value ) {
2505
+        $this->set_city( $value );
2356 2506
     }
2357 2507
 
2358 2508
     /**
2359
-	 * Alias of self::set_phone().
2360
-	 *
2361
-	 * @since 1.0.19
2362
-	 * @param  string $value phone.
2363
-	 */
2364
-	public function set_customer_phone( $value ) {
2365
-		$this->set_phone( $value );
2509
+     * Set the customer's zip code.
2510
+     *
2511
+     * @since 1.0.19
2512
+     * @param  string $value zip.
2513
+     */
2514
+    public function set_zip( $value ) {
2515
+        $this->set_prop( 'zip', $value );
2366 2516
     }
2367 2517
 
2368 2518
     /**
2369
-	 * Alias of self::set_phone().
2370
-	 *
2371
-	 * @since 1.0.19
2372
-	 * @param  string $value phone.
2373
-	 */
2374
-	public function set_phone_number( $value ) {
2375
-		$this->set_phone( $value );
2519
+     * Alias of self::set_zip().
2520
+     *
2521
+     * @since 1.0.19
2522
+     * @param  string $value zip.
2523
+     */
2524
+    public function set_user_zip( $value ) {
2525
+        $this->set_zip( $value );
2376 2526
     }
2377 2527
 
2378 2528
     /**
2379
-	 * Set the customer's email address.
2380
-	 *
2381
-	 * @since 1.0.19
2382
-	 * @param  string $value email address.
2383
-	 */
2384
-	public function set_email( $value ) {
2385
-		$this->set_prop( 'email', $value );
2529
+     * Alias of self::set_zip().
2530
+     *
2531
+     * @since 1.0.19
2532
+     * @param  string $value zip.
2533
+     */
2534
+    public function set_customer_zip( $value ) {
2535
+        $this->set_zip( $value );
2386 2536
     }
2387 2537
 
2388 2538
     /**
2389
-	 * Alias of self::set_email().
2390
-	 *
2391
-	 * @since 1.0.19
2392
-	 * @param  string $value email address.
2393
-	 */
2394
-	public function set_user_email( $value ) {
2395
-		$this->set_email( $value );
2539
+     * Set the customer's company.
2540
+     *
2541
+     * @since 1.0.19
2542
+     * @param  string $value company.
2543
+     */
2544
+    public function set_company( $value ) {
2545
+        $this->set_prop( 'company', $value );
2396 2546
     }
2397 2547
 
2398 2548
     /**
2399
-	 * Alias of self::set_email().
2400
-	 *
2401
-	 * @since 1.0.19
2402
-	 * @param  string $value email address.
2403
-	 */
2404
-	public function set_email_address( $value ) {
2405
-		$this->set_email( $value );
2549
+     * Alias of self::set_company().
2550
+     *
2551
+     * @since 1.0.19
2552
+     * @param  string $value company.
2553
+     */
2554
+    public function set_user_company( $value ) {
2555
+        $this->set_company( $value );
2406 2556
     }
2407 2557
 
2408 2558
     /**
2409
-	 * Alias of self::set_email().
2410
-	 *
2411
-	 * @since 1.0.19
2412
-	 * @param  string $value email address.
2413
-	 */
2414
-	public function set_customer_email( $value ) {
2415
-		$this->set_email( $value );
2559
+     * Alias of self::set_company().
2560
+     *
2561
+     * @since 1.0.19
2562
+     * @param  string $value company.
2563
+     */
2564
+    public function set_customer_company( $value ) {
2565
+        $this->set_company( $value );
2416 2566
     }
2417 2567
 
2418 2568
     /**
2419
-	 * Set the customer's country.
2420
-	 *
2421
-	 * @since 1.0.19
2422
-	 * @param  string $value country.
2423
-	 */
2424
-	public function set_country( $value ) {
2425
-		$this->set_prop( 'country', $value );
2569
+     * Set the customer's var number.
2570
+     *
2571
+     * @since 1.0.19
2572
+     * @param  string $value var number.
2573
+     */
2574
+    public function set_vat_number( $value ) {
2575
+        $this->set_prop( 'vat_number', $value );
2426 2576
     }
2427 2577
 
2428 2578
     /**
2429
-	 * Alias of self::set_country().
2430
-	 *
2431
-	 * @since 1.0.19
2432
-	 * @param  string $value country.
2433
-	 */
2434
-	public function set_user_country( $value ) {
2435
-		$this->set_country( $value );
2579
+     * Alias of self::set_vat_number().
2580
+     *
2581
+     * @since 1.0.19
2582
+     * @param  string $value var number.
2583
+     */
2584
+    public function set_user_vat_number( $value ) {
2585
+        $this->set_vat_number( $value );
2436 2586
     }
2437 2587
 
2438 2588
     /**
2439
-	 * Alias of self::set_country().
2440
-	 *
2441
-	 * @since 1.0.19
2442
-	 * @param  string $value country.
2443
-	 */
2444
-	public function set_customer_country( $value ) {
2445
-		$this->set_country( $value );
2589
+     * Alias of self::set_vat_number().
2590
+     *
2591
+     * @since 1.0.19
2592
+     * @param  string $value var number.
2593
+     */
2594
+    public function set_customer_vat_number( $value ) {
2595
+        $this->set_vat_number( $value );
2446 2596
     }
2447 2597
 
2448 2598
     /**
2449
-	 * Set the customer's state.
2450
-	 *
2451
-	 * @since 1.0.19
2452
-	 * @param  string $value state.
2453
-	 */
2454
-	public function set_state( $value ) {
2455
-		$this->set_prop( 'state', $value );
2599
+     * Set the customer's vat rate.
2600
+     *
2601
+     * @since 1.0.19
2602
+     * @param  string $value var rate.
2603
+     */
2604
+    public function set_vat_rate( $value ) {
2605
+        $this->set_prop( 'vat_rate', $value );
2456 2606
     }
2457 2607
 
2458 2608
     /**
2459
-	 * Alias of self::set_state().
2460
-	 *
2461
-	 * @since 1.0.19
2462
-	 * @param  string $value state.
2463
-	 */
2464
-	public function set_user_state( $value ) {
2465
-		$this->set_state( $value );
2609
+     * Alias of self::set_vat_rate().
2610
+     *
2611
+     * @since 1.0.19
2612
+     * @param  string $value var number.
2613
+     */
2614
+    public function set_user_vat_rate( $value ) {
2615
+        $this->set_vat_rate( $value );
2466 2616
     }
2467 2617
 
2468 2618
     /**
2469
-	 * Alias of self::set_state().
2470
-	 *
2471
-	 * @since 1.0.19
2472
-	 * @param  string $value state.
2473
-	 */
2474
-	public function set_customer_state( $value ) {
2475
-		$this->set_state( $value );
2619
+     * Alias of self::set_vat_rate().
2620
+     *
2621
+     * @since 1.0.19
2622
+     * @param  string $value var number.
2623
+     */
2624
+    public function set_customer_vat_rate( $value ) {
2625
+        $this->set_vat_rate( $value );
2476 2626
     }
2477 2627
 
2478 2628
     /**
2479
-	 * Set the customer's city.
2480
-	 *
2481
-	 * @since 1.0.19
2482
-	 * @param  string $value city.
2483
-	 */
2484
-	public function set_city( $value ) {
2485
-		$this->set_prop( 'city', $value );
2629
+     * Set the customer's address.
2630
+     *
2631
+     * @since 1.0.19
2632
+     * @param  string $value address.
2633
+     */
2634
+    public function set_address( $value ) {
2635
+        $this->set_prop( 'address', $value );
2486 2636
     }
2487 2637
 
2488 2638
     /**
2489
-	 * Alias of self::set_city().
2490
-	 *
2491
-	 * @since 1.0.19
2492
-	 * @param  string $value city.
2493
-	 */
2494
-	public function set_user_city( $value ) {
2495
-		$this->set_city( $value );
2639
+     * Alias of self::set_address().
2640
+     *
2641
+     * @since 1.0.19
2642
+     * @param  string $value address.
2643
+     */
2644
+    public function set_user_address( $value ) {
2645
+        $this->set_address( $value );
2496 2646
     }
2497 2647
 
2498 2648
     /**
2499
-	 * Alias of self::set_city().
2500
-	 *
2501
-	 * @since 1.0.19
2502
-	 * @param  string $value city.
2503
-	 */
2504
-	public function set_customer_city( $value ) {
2505
-		$this->set_city( $value );
2649
+     * Alias of self::set_address().
2650
+     *
2651
+     * @since 1.0.19
2652
+     * @param  string $value address.
2653
+     */
2654
+    public function set_customer_address( $value ) {
2655
+        $this->set_address( $value );
2506 2656
     }
2507 2657
 
2508 2658
     /**
2509
-	 * Set the customer's zip code.
2510
-	 *
2511
-	 * @since 1.0.19
2512
-	 * @param  string $value zip.
2513
-	 */
2514
-	public function set_zip( $value ) {
2515
-		$this->set_prop( 'zip', $value );
2659
+     * Set whether the customer has viewed the invoice or not.
2660
+     *
2661
+     * @since 1.0.19
2662
+     * @param  int|bool $value confirmed.
2663
+     */
2664
+    public function set_is_viewed( $value ) {
2665
+        $this->set_prop( 'is_viewed', $value );
2516 2666
     }
2517 2667
 
2518 2668
     /**
2519
-	 * Alias of self::set_zip().
2520
-	 *
2521
-	 * @since 1.0.19
2522
-	 * @param  string $value zip.
2523
-	 */
2524
-	public function set_user_zip( $value ) {
2525
-		$this->set_zip( $value );
2669
+     * Set extra email recipients.
2670
+     *
2671
+     * @since 1.0.19
2672
+     * @param  string $value email recipients.
2673
+     */
2674
+    public function set_email_cc( $value ) {
2675
+        $this->set_prop( 'email_cc', $value );
2526 2676
     }
2527 2677
 
2528 2678
     /**
2529
-	 * Alias of self::set_zip().
2530
-	 *
2531
-	 * @since 1.0.19
2532
-	 * @param  string $value zip.
2533
-	 */
2534
-	public function set_customer_zip( $value ) {
2535
-		$this->set_zip( $value );
2679
+     * Set the invoice template.
2680
+     *
2681
+     * @since 1.0.19
2682
+     * @param  string $value template.
2683
+     */
2684
+    public function set_template( $value ) {
2685
+        if ( in_array( $value, array( 'quantity', 'hours', 'amount' ) ) ) {
2686
+            $this->set_prop( 'template', $value );
2687
+        }
2536 2688
     }
2537 2689
 
2538 2690
     /**
2539
-	 * Set the customer's company.
2540
-	 *
2541
-	 * @since 1.0.19
2542
-	 * @param  string $value company.
2543
-	 */
2544
-	public function set_company( $value ) {
2545
-		$this->set_prop( 'company', $value );
2691
+     * Set the invoice source.
2692
+     *
2693
+     * @since 1.0.19
2694
+     * @param  string $value source.
2695
+     * @deprecated
2696
+     */
2697
+    public function created_via( $value ) {
2698
+        $this->set_created_via( sanitize_text_field( $value ) );
2546 2699
     }
2547 2700
 
2548 2701
     /**
2549
-	 * Alias of self::set_company().
2550
-	 *
2551
-	 * @since 1.0.19
2552
-	 * @param  string $value company.
2553
-	 */
2554
-	public function set_user_company( $value ) {
2555
-		$this->set_company( $value );
2702
+     * Set the invoice source.
2703
+     *
2704
+     * @since 1.0.19
2705
+     * @param  string $value source.
2706
+     */
2707
+    public function set_created_via( $value ) {
2708
+        $this->set_prop( 'created_via', sanitize_text_field( $value ) );
2556 2709
     }
2557 2710
 
2558 2711
     /**
2559
-	 * Alias of self::set_company().
2560
-	 *
2561
-	 * @since 1.0.19
2562
-	 * @param  string $value company.
2563
-	 */
2564
-	public function set_customer_company( $value ) {
2565
-		$this->set_company( $value );
2712
+     * Set the customer's address confirmed status.
2713
+     *
2714
+     * @since 1.0.19
2715
+     * @param  int|bool $value confirmed.
2716
+     */
2717
+    public function set_address_confirmed( $value ) {
2718
+        $this->set_prop( 'address_confirmed', $value );
2566 2719
     }
2567 2720
 
2568 2721
     /**
2569
-	 * Set the customer's var number.
2570
-	 *
2571
-	 * @since 1.0.19
2572
-	 * @param  string $value var number.
2573
-	 */
2574
-	public function set_vat_number( $value ) {
2575
-		$this->set_prop( 'vat_number', $value );
2722
+     * Alias of self::set_address_confirmed().
2723
+     *
2724
+     * @since 1.0.19
2725
+     * @param  int|bool $value confirmed.
2726
+     */
2727
+    public function set_user_address_confirmed( $value ) {
2728
+        $this->set_address_confirmed( $value );
2576 2729
     }
2577 2730
 
2578 2731
     /**
2579
-	 * Alias of self::set_vat_number().
2580
-	 *
2581
-	 * @since 1.0.19
2582
-	 * @param  string $value var number.
2583
-	 */
2584
-	public function set_user_vat_number( $value ) {
2585
-		$this->set_vat_number( $value );
2732
+     * Alias of self::set_address_confirmed().
2733
+     *
2734
+     * @since 1.0.19
2735
+     * @param  int|bool $value confirmed.
2736
+     */
2737
+    public function set_customer_address_confirmed( $value ) {
2738
+        $this->set_address_confirmed( $value );
2586 2739
     }
2587 2740
 
2588 2741
     /**
2589
-	 * Alias of self::set_vat_number().
2590
-	 *
2591
-	 * @since 1.0.19
2592
-	 * @param  string $value var number.
2593
-	 */
2594
-	public function set_customer_vat_number( $value ) {
2595
-		$this->set_vat_number( $value );
2742
+     * Set the invoice sub total.
2743
+     *
2744
+     * @since 1.0.19
2745
+     * @param  float $value sub total.
2746
+     */
2747
+    public function set_subtotal( $value ) {
2748
+        $this->set_prop( 'subtotal', max( 0, $value ) );
2596 2749
     }
2597 2750
 
2598 2751
     /**
2599
-	 * Set the customer's vat rate.
2600
-	 *
2601
-	 * @since 1.0.19
2602
-	 * @param  string $value var rate.
2603
-	 */
2604
-	public function set_vat_rate( $value ) {
2605
-		$this->set_prop( 'vat_rate', $value );
2752
+     * Set the invoice total.
2753
+     *
2754
+     * @since 1.0.19
2755
+     * @param  float $value sub total.
2756
+     */
2757
+    public function set_total( $value ) {
2758
+        $this->set_prop( 'total', max( 0, $value ) );
2606 2759
     }
2607 2760
 
2608 2761
     /**
2609
-	 * Alias of self::set_vat_rate().
2610
-	 *
2611
-	 * @since 1.0.19
2612
-	 * @param  string $value var number.
2613
-	 */
2614
-	public function set_user_vat_rate( $value ) {
2615
-		$this->set_vat_rate( $value );
2616
-    }
2617
-
2618
-    /**
2619
-	 * Alias of self::set_vat_rate().
2620
-	 *
2621
-	 * @since 1.0.19
2622
-	 * @param  string $value var number.
2623
-	 */
2624
-	public function set_customer_vat_rate( $value ) {
2625
-		$this->set_vat_rate( $value );
2626
-    }
2627
-
2628
-    /**
2629
-	 * Set the customer's address.
2630
-	 *
2631
-	 * @since 1.0.19
2632
-	 * @param  string $value address.
2633
-	 */
2634
-	public function set_address( $value ) {
2635
-		$this->set_prop( 'address', $value );
2636
-    }
2637
-
2638
-    /**
2639
-	 * Alias of self::set_address().
2640
-	 *
2641
-	 * @since 1.0.19
2642
-	 * @param  string $value address.
2643
-	 */
2644
-	public function set_user_address( $value ) {
2645
-		$this->set_address( $value );
2646
-    }
2647
-
2648
-    /**
2649
-	 * Alias of self::set_address().
2650
-	 *
2651
-	 * @since 1.0.19
2652
-	 * @param  string $value address.
2653
-	 */
2654
-	public function set_customer_address( $value ) {
2655
-		$this->set_address( $value );
2656
-    }
2657
-
2658
-    /**
2659
-	 * Set whether the customer has viewed the invoice or not.
2660
-	 *
2661
-	 * @since 1.0.19
2662
-	 * @param  int|bool $value confirmed.
2663
-	 */
2664
-	public function set_is_viewed( $value ) {
2665
-		$this->set_prop( 'is_viewed', $value );
2666
-	}
2667
-
2668
-	/**
2669
-	 * Set extra email recipients.
2670
-	 *
2671
-	 * @since 1.0.19
2672
-	 * @param  string $value email recipients.
2673
-	 */
2674
-	public function set_email_cc( $value ) {
2675
-		$this->set_prop( 'email_cc', $value );
2676
-	}
2677
-
2678
-	/**
2679
-	 * Set the invoice template.
2680
-	 *
2681
-	 * @since 1.0.19
2682
-	 * @param  string $value template.
2683
-	 */
2684
-	public function set_template( $value ) {
2685
-		if ( in_array( $value, array( 'quantity', 'hours', 'amount' ) ) ) {
2686
-			$this->set_prop( 'template', $value );
2687
-		}
2688
-	}
2689
-
2690
-	/**
2691
-	 * Set the invoice source.
2692
-	 *
2693
-	 * @since 1.0.19
2694
-	 * @param  string $value source.
2695
-	 * @deprecated
2696
-	 */
2697
-	public function created_via( $value ) {
2698
-		$this->set_created_via( sanitize_text_field( $value ) );
2699
-	}
2700
-
2701
-	/**
2702
-	 * Set the invoice source.
2703
-	 *
2704
-	 * @since 1.0.19
2705
-	 * @param  string $value source.
2706
-	 */
2707
-	public function set_created_via( $value ) {
2708
-		$this->set_prop( 'created_via', sanitize_text_field( $value ) );
2709
-	}
2710
-
2711
-	/**
2712
-	 * Set the customer's address confirmed status.
2713
-	 *
2714
-	 * @since 1.0.19
2715
-	 * @param  int|bool $value confirmed.
2716
-	 */
2717
-	public function set_address_confirmed( $value ) {
2718
-		$this->set_prop( 'address_confirmed', $value );
2719
-    }
2720
-
2721
-    /**
2722
-	 * Alias of self::set_address_confirmed().
2723
-	 *
2724
-	 * @since 1.0.19
2725
-	 * @param  int|bool $value confirmed.
2726
-	 */
2727
-	public function set_user_address_confirmed( $value ) {
2728
-		$this->set_address_confirmed( $value );
2729
-    }
2730
-
2731
-    /**
2732
-	 * Alias of self::set_address_confirmed().
2733
-	 *
2734
-	 * @since 1.0.19
2735
-	 * @param  int|bool $value confirmed.
2736
-	 */
2737
-	public function set_customer_address_confirmed( $value ) {
2738
-		$this->set_address_confirmed( $value );
2739
-    }
2740
-
2741
-    /**
2742
-	 * Set the invoice sub total.
2743
-	 *
2744
-	 * @since 1.0.19
2745
-	 * @param  float $value sub total.
2746
-	 */
2747
-	public function set_subtotal( $value ) {
2748
-		$this->set_prop( 'subtotal', max( 0, $value ) );
2749
-	}
2750
-
2751
-	/**
2752
-	 * Set the invoice total.
2753
-	 *
2754
-	 * @since 1.0.19
2755
-	 * @param  float $value sub total.
2756
-	 */
2757
-	public function set_total( $value ) {
2758
-		$this->set_prop( 'total', max( 0, $value ) );
2759
-    }
2760
-
2761
-    /**
2762
-	 * Set the invoice discount amount.
2763
-	 *
2764
-	 * @since 1.0.19
2765
-	 * @param  float $value discount total.
2766
-	 */
2767
-	public function set_total_discount( $value ) {
2768
-		$this->set_prop( 'total_discount', max( 0, $value ) );
2762
+     * Set the invoice discount amount.
2763
+     *
2764
+     * @since 1.0.19
2765
+     * @param  float $value discount total.
2766
+     */
2767
+    public function set_total_discount( $value ) {
2768
+        $this->set_prop( 'total_discount', max( 0, $value ) );
2769 2769
     }
2770 2770
 
2771 2771
     /**
2772
-	 * Alias of self::set_total_discount().
2773
-	 *
2774
-	 * @since 1.0.19
2775
-	 * @param  float $value discount total.
2776
-	 */
2777
-	public function set_discount( $value ) {
2778
-		$this->set_total_discount( $value );
2772
+     * Alias of self::set_total_discount().
2773
+     *
2774
+     * @since 1.0.19
2775
+     * @param  float $value discount total.
2776
+     */
2777
+    public function set_discount( $value ) {
2778
+        $this->set_total_discount( $value );
2779 2779
     }
2780 2780
 
2781 2781
     /**
2782
-	 * Set the invoice tax amount.
2783
-	 *
2784
-	 * @since 1.0.19
2785
-	 * @param  float $value tax total.
2786
-	 */
2787
-	public function set_total_tax( $value ) {
2788
-		$this->set_prop( 'total_tax', max( 0, $value ) );
2782
+     * Set the invoice tax amount.
2783
+     *
2784
+     * @since 1.0.19
2785
+     * @param  float $value tax total.
2786
+     */
2787
+    public function set_total_tax( $value ) {
2788
+        $this->set_prop( 'total_tax', max( 0, $value ) );
2789 2789
     }
2790 2790
 
2791 2791
     /**
2792
-	 * Alias of self::set_total_tax().
2793
-	 *
2794
-	 * @since 1.0.19
2795
-	 * @param  float $value tax total.
2796
-	 */
2797
-	public function set_tax_total( $value ) {
2798
-		$this->set_total_tax( $value );
2792
+     * Alias of self::set_total_tax().
2793
+     *
2794
+     * @since 1.0.19
2795
+     * @param  float $value tax total.
2796
+     */
2797
+    public function set_tax_total( $value ) {
2798
+        $this->set_total_tax( $value );
2799 2799
     }
2800 2800
 
2801 2801
     /**
2802
-	 * Set the invoice fees amount.
2803
-	 *
2804
-	 * @since 1.0.19
2805
-	 * @param  float $value fees total.
2806
-	 */
2807
-	public function set_total_fees( $value ) {
2808
-		$this->set_prop( 'total_fees', max( 0, $value ) );
2802
+     * Set the invoice fees amount.
2803
+     *
2804
+     * @since 1.0.19
2805
+     * @param  float $value fees total.
2806
+     */
2807
+    public function set_total_fees( $value ) {
2808
+        $this->set_prop( 'total_fees', max( 0, $value ) );
2809 2809
     }
2810 2810
 
2811 2811
     /**
2812
-	 * Alias of self::set_total_fees().
2813
-	 *
2814
-	 * @since 1.0.19
2815
-	 * @param  float $value fees total.
2816
-	 */
2817
-	public function set_fees_total( $value ) {
2818
-		$this->set_total_fees( $value );
2812
+     * Alias of self::set_total_fees().
2813
+     *
2814
+     * @since 1.0.19
2815
+     * @param  float $value fees total.
2816
+     */
2817
+    public function set_fees_total( $value ) {
2818
+        $this->set_total_fees( $value );
2819 2819
     }
2820 2820
 
2821 2821
     /**
2822
-	 * Set the invoice fees.
2823
-	 *
2824
-	 * @since 1.0.19
2825
-	 * @param  array $value fees.
2826
-	 */
2827
-	public function set_fees( $value ) {
2822
+     * Set the invoice fees.
2823
+     *
2824
+     * @since 1.0.19
2825
+     * @param  array $value fees.
2826
+     */
2827
+    public function set_fees( $value ) {
2828 2828
 
2829
-		if ( ! is_array( $value ) ) {
2830
-			$value = array();
2831
-		}
2829
+        if ( ! is_array( $value ) ) {
2830
+            $value = array();
2831
+        }
2832 2832
 
2833
-		$this->set_prop( 'fees', $value );
2833
+        $this->set_prop( 'fees', $value );
2834 2834
 
2835 2835
     }
2836 2836
 
2837 2837
     /**
2838
-	 * Set the invoice taxes.
2839
-	 *
2840
-	 * @since 1.0.19
2841
-	 * @param  array $value taxes.
2842
-	 */
2843
-	public function set_taxes( $value ) {
2838
+     * Set the invoice taxes.
2839
+     *
2840
+     * @since 1.0.19
2841
+     * @param  array $value taxes.
2842
+     */
2843
+    public function set_taxes( $value ) {
2844 2844
 
2845
-		if ( ! is_array( $value ) ) {
2846
-			$value = array();
2847
-		}
2845
+        if ( ! is_array( $value ) ) {
2846
+            $value = array();
2847
+        }
2848 2848
 
2849
-		$this->set_prop( 'taxes', $value );
2849
+        $this->set_prop( 'taxes', $value );
2850 2850
 
2851 2851
     }
2852 2852
 
2853 2853
     /**
2854
-	 * Set the invoice discounts.
2855
-	 *
2856
-	 * @since 1.0.19
2857
-	 * @param  array $value discounts.
2858
-	 */
2859
-	public function set_discounts( $value ) {
2854
+     * Set the invoice discounts.
2855
+     *
2856
+     * @since 1.0.19
2857
+     * @param  array $value discounts.
2858
+     */
2859
+    public function set_discounts( $value ) {
2860 2860
 
2861
-		if ( ! is_array( $value ) ) {
2862
-			$value = array();
2863
-		}
2861
+        if ( ! is_array( $value ) ) {
2862
+            $value = array();
2863
+        }
2864 2864
 
2865
-		$this->set_prop( 'discounts', $value );
2865
+        $this->set_prop( 'discounts', $value );
2866 2866
     }
2867 2867
 
2868 2868
     /**
2869
-	 * Set the invoice items.
2870
-	 *
2871
-	 * @since 1.0.19
2872
-	 * @param  GetPaid_Form_Item[] $value items.
2873
-	 */
2874
-	public function set_items( $value ) {
2869
+     * Set the invoice items.
2870
+     *
2871
+     * @since 1.0.19
2872
+     * @param  GetPaid_Form_Item[] $value items.
2873
+     */
2874
+    public function set_items( $value ) {
2875 2875
 
2876 2876
         // Remove existing items.
2877 2877
         $this->set_prop( 'items', array() );
2878
-		$this->recurring_item = null;
2878
+        $this->recurring_item = null;
2879 2879
 
2880 2880
         // Ensure that we have an array.
2881 2881
         if ( ! is_array( $value ) ) {
@@ -2889,95 +2889,95 @@  discard block
 block discarded – undo
2889 2889
     }
2890 2890
 
2891 2891
     /**
2892
-	 * Set the payment form.
2893
-	 *
2894
-	 * @since 1.0.19
2895
-	 * @param  int $value payment form.
2896
-	 */
2897
-	public function set_payment_form( $value ) {
2898
-		$this->set_prop( 'payment_form', $value );
2892
+     * Set the payment form.
2893
+     *
2894
+     * @since 1.0.19
2895
+     * @param  int $value payment form.
2896
+     */
2897
+    public function set_payment_form( $value ) {
2898
+        $this->set_prop( 'payment_form', $value );
2899 2899
     }
2900 2900
 
2901 2901
     /**
2902
-	 * Set the submission id.
2903
-	 *
2904
-	 * @since 1.0.19
2905
-	 * @param  string $value submission id.
2906
-	 */
2907
-	public function set_submission_id( $value ) {
2908
-		$this->set_prop( 'submission_id', $value );
2902
+     * Set the submission id.
2903
+     *
2904
+     * @since 1.0.19
2905
+     * @param  string $value submission id.
2906
+     */
2907
+    public function set_submission_id( $value ) {
2908
+        $this->set_prop( 'submission_id', $value );
2909 2909
     }
2910 2910
 
2911 2911
     /**
2912
-	 * Set the discount code.
2913
-	 *
2914
-	 * @since 1.0.19
2915
-	 * @param  string $value discount code.
2916
-	 */
2917
-	public function set_discount_code( $value ) {
2918
-		$this->set_prop( 'discount_code', sanitize_text_field( $value ) );
2912
+     * Set the discount code.
2913
+     *
2914
+     * @since 1.0.19
2915
+     * @param  string $value discount code.
2916
+     */
2917
+    public function set_discount_code( $value ) {
2918
+        $this->set_prop( 'discount_code', sanitize_text_field( $value ) );
2919 2919
     }
2920 2920
 
2921 2921
     /**
2922
-	 * Set the gateway.
2923
-	 *
2924
-	 * @since 1.0.19
2925
-	 * @param  string $value gateway.
2926
-	 */
2927
-	public function set_gateway( $value ) {
2928
-		$this->set_prop( 'gateway', $value );
2922
+     * Set the gateway.
2923
+     *
2924
+     * @since 1.0.19
2925
+     * @param  string $value gateway.
2926
+     */
2927
+    public function set_gateway( $value ) {
2928
+        $this->set_prop( 'gateway', $value );
2929 2929
     }
2930 2930
 
2931 2931
     /**
2932
-	 * Set the transaction id.
2933
-	 *
2934
-	 * @since 1.0.19
2935
-	 * @param  string $value transaction id.
2936
-	 */
2937
-	public function set_transaction_id( $value ) {
2938
-		if ( ! empty( $value ) ) {
2939
-			$this->set_prop( 'transaction_id', $value );
2940
-		}
2932
+     * Set the transaction id.
2933
+     *
2934
+     * @since 1.0.19
2935
+     * @param  string $value transaction id.
2936
+     */
2937
+    public function set_transaction_id( $value ) {
2938
+        if ( ! empty( $value ) ) {
2939
+            $this->set_prop( 'transaction_id', $value );
2940
+        }
2941 2941
     }
2942 2942
 
2943 2943
     /**
2944
-	 * Set the currency id.
2945
-	 *
2946
-	 * @since 1.0.19
2947
-	 * @param  string $value currency id.
2948
-	 */
2949
-	public function set_currency( $value ) {
2950
-		$this->set_prop( 'currency', $value );
2944
+     * Set the currency id.
2945
+     *
2946
+     * @since 1.0.19
2947
+     * @param  string $value currency id.
2948
+     */
2949
+    public function set_currency( $value ) {
2950
+        $this->set_prop( 'currency', $value );
2951 2951
     }
2952 2952
 
2953
-	/**
2954
-	 * Set whether to disable taxes.
2955
-	 *
2956
-	 * @since 1.0.19
2957
-	 * @param  bool $value value.
2958
-	 */
2959
-	public function set_disable_taxes( $value ) {
2960
-		$this->set_prop( 'disable_taxes', (bool) $value );
2961
-	}
2953
+    /**
2954
+     * Set whether to disable taxes.
2955
+     *
2956
+     * @since 1.0.19
2957
+     * @param  bool $value value.
2958
+     */
2959
+    public function set_disable_taxes( $value ) {
2960
+        $this->set_prop( 'disable_taxes', (bool) $value );
2961
+    }
2962 2962
 
2963 2963
     /**
2964
-	 * Set the subscription id.
2965
-	 *
2966
-	 * @since 1.0.19
2967
-	 * @param  string $value subscription id.
2968
-	 */
2969
-	public function set_subscription_id( $value ) {
2970
-		$this->set_prop( 'subscription_id', $value );
2971
-	}
2964
+     * Set the subscription id.
2965
+     *
2966
+     * @since 1.0.19
2967
+     * @param  string $value subscription id.
2968
+     */
2969
+    public function set_subscription_id( $value ) {
2970
+        $this->set_prop( 'subscription_id', $value );
2971
+    }
2972 2972
 	
2973
-	/**
2974
-	 * Set the remote subscription id.
2975
-	 *
2976
-	 * @since 1.0.19
2977
-	 * @param  string $value subscription id.
2978
-	 */
2979
-	public function set_remote_subscription_id( $value ) {
2980
-		$this->set_prop( 'remote_subscription_id', $value );
2973
+    /**
2974
+     * Set the remote subscription id.
2975
+     *
2976
+     * @since 1.0.19
2977
+     * @param  string $value subscription id.
2978
+     */
2979
+    public function set_remote_subscription_id( $value ) {
2980
+        $this->set_prop( 'remote_subscription_id', $value );
2981 2981
     }
2982 2982
 
2983 2983
     /*
@@ -3016,24 +3016,24 @@  discard block
 block discarded – undo
3016 3016
      */
3017 3017
     public function is_taxable() {
3018 3018
         return ! $this->get_disable_taxes();
3019
-	}
3019
+    }
3020 3020
 
3021
-	/**
3022
-	 * @deprecated
3023
-	 */
3024
-	public function has_vat() {
3021
+    /**
3022
+     * @deprecated
3023
+     */
3024
+    public function has_vat() {
3025 3025
         return $this->is_taxable();
3026
-	}
3026
+    }
3027 3027
 
3028
-	/**
3029
-	 * Checks to see if the invoice requires payment.
3030
-	 */
3031
-	public function is_free() {
3028
+    /**
3029
+     * Checks to see if the invoice requires payment.
3030
+     */
3031
+    public function is_free() {
3032 3032
         $is_free = ( (float) wpinv_round_amount( $this->get_initial_total() ) == 0 );
3033 3033
 
3034
-		if ( $this->is_recurring() && $this->get_recurring_total() > 0 ) {
3035
-			$is_free = false;
3036
-		}
3034
+        if ( $this->is_recurring() && $this->get_recurring_total() > 0 ) {
3035
+            $is_free = false;
3036
+        }
3037 3037
 
3038 3038
         return apply_filters( 'wpinv_invoice_is_free', $is_free, $this );
3039 3039
     }
@@ -3044,46 +3044,46 @@  discard block
 block discarded – undo
3044 3044
     public function is_paid() {
3045 3045
         $is_paid = $this->has_status( array( 'publish', 'wpi-processing', 'wpi-renewal' ) );
3046 3046
         return apply_filters( 'wpinv_invoice_is_paid', $is_paid, $this );
3047
-	}
3047
+    }
3048 3048
 
3049
-	/**
3049
+    /**
3050 3050
      * Checks if the invoice needs payment.
3051 3051
      */
3052
-	public function needs_payment() {
3053
-		$needs_payment = ! $this->is_paid() && ! $this->is_refunded() && ! $this->is_free();
3052
+    public function needs_payment() {
3053
+        $needs_payment = ! $this->is_paid() && ! $this->is_refunded() && ! $this->is_free();
3054 3054
         return apply_filters( 'wpinv_needs_payment', $needs_payment, $this );
3055 3055
     }
3056 3056
   
3057
-	/**
3057
+    /**
3058 3058
      * Checks if the invoice is refunded.
3059 3059
      */
3060
-	public function is_refunded() {
3060
+    public function is_refunded() {
3061 3061
         $is_refunded = $this->has_status( 'wpi-refunded' );
3062 3062
         return apply_filters( 'wpinv_invoice_is_refunded', $is_refunded, $this );
3063
-	}
3063
+    }
3064 3064
 
3065
-	/**
3065
+    /**
3066 3066
      * Checks if the invoice is held.
3067 3067
      */
3068
-	public function is_held() {
3068
+    public function is_held() {
3069 3069
         $is_held = $this->has_status( 'wpi-onhold' );
3070 3070
         return apply_filters( 'wpinv_invoice_is_held', $is_held, $this );
3071
-	}
3071
+    }
3072 3072
 
3073
-	/**
3073
+    /**
3074 3074
      * Checks if the invoice is due.
3075 3075
      */
3076
-	public function is_due() {
3077
-		$due_date = $this->get_due_date();
3078
-		return empty( $due_date ) ? false : current_time( 'timestamp' ) > strtotime( $due_date );
3079
-	}
3076
+    public function is_due() {
3077
+        $due_date = $this->get_due_date();
3078
+        return empty( $due_date ) ? false : current_time( 'timestamp' ) > strtotime( $due_date );
3079
+    }
3080 3080
 
3081
-	/**
3081
+    /**
3082 3082
      * Checks if the invoice is draft.
3083 3083
      */
3084
-	public function is_draft() {
3084
+    public function is_draft() {
3085 3085
         return $this->has_status( 'draft, auto-draft' );
3086
-	}
3086
+    }
3087 3087
 
3088 3088
     /**
3089 3089
      * Checks if the invoice has a given status.
@@ -3091,9 +3091,9 @@  discard block
 block discarded – undo
3091 3091
     public function has_status( $status ) {
3092 3092
         $status = wpinv_parse_list( $status );
3093 3093
         return apply_filters( 'wpinv_has_status', in_array( $this->get_status(), $status ), $status );
3094
-	}
3094
+    }
3095 3095
 
3096
-	/**
3096
+    /**
3097 3097
      * Checks if the invoice is of a given type.
3098 3098
      */
3099 3099
     public function is_type( $type ) {
@@ -3116,25 +3116,25 @@  discard block
 block discarded – undo
3116 3116
      */
3117 3117
     public function has_free_trial() {
3118 3118
         return $this->is_recurring() && 0 == $this->get_initial_total();
3119
-	}
3119
+    }
3120 3120
 
3121
-	/**
3121
+    /**
3122 3122
      * @deprecated
3123 3123
      */
3124 3124
     public function is_free_trial() {
3125 3125
         $this->has_free_trial();
3126 3126
     }
3127 3127
 
3128
-	/**
3128
+    /**
3129 3129
      * Check if the initial payment if 0.
3130 3130
      *
3131 3131
      */
3132
-	public function is_initial_free() {
3132
+    public function is_initial_free() {
3133 3133
         $is_initial_free = ! ( (float) wpinv_round_amount( $this->get_initial_total() ) > 0 );
3134 3134
         return apply_filters( 'wpinv_invoice_is_initial_free', $is_initial_free, $this->get_cart_details(), $this );
3135 3135
     }
3136 3136
 	
3137
-	/**
3137
+    /**
3138 3138
      * Check if the recurring item has a free trial.
3139 3139
      *
3140 3140
      */
@@ -3147,21 +3147,21 @@  discard block
 block discarded – undo
3147 3147
 
3148 3148
         $item = $this->get_recurring( true );
3149 3149
         return $item->has_free_trial();
3150
-	}
3150
+    }
3151 3151
 
3152
-	/**
3152
+    /**
3153 3153
      * Check if the free trial is a result of a discount.
3154 3154
      */
3155 3155
     public function is_free_trial_from_discount() {
3156
-		return $this->has_free_trial() && ! $this->item_has_free_trial();
3157
-	}
3156
+        return $this->has_free_trial() && ! $this->item_has_free_trial();
3157
+    }
3158 3158
 	
3159
-	/**
3159
+    /**
3160 3160
      * @deprecated
3161 3161
      */
3162 3162
     public function discount_first_payment_only() {
3163 3163
 
3164
-		$discount = wpinv_get_discount_obj( $this->get_discount_code() );
3164
+        $discount = wpinv_get_discount_obj( $this->get_discount_code() );
3165 3165
         if ( ! $discount->exists() || ! $this->is_recurring() ) {
3166 3166
             return true;
3167 3167
         }
@@ -3186,149 +3186,149 @@  discard block
 block discarded – undo
3186 3186
      */
3187 3187
     public function add_item( $item ) {
3188 3188
 
3189
-		if ( is_array( $item ) ) {
3190
-			$item = $this->process_array_item( $item );
3191
-		}
3189
+        if ( is_array( $item ) ) {
3190
+            $item = $this->process_array_item( $item );
3191
+        }
3192 3192
 
3193
-		if ( is_numeric( $item ) ) {
3194
-			$item = new GetPaid_Form_Item( $item );
3195
-		}
3193
+        if ( is_numeric( $item ) ) {
3194
+            $item = new GetPaid_Form_Item( $item );
3195
+        }
3196 3196
 
3197 3197
         // Make sure that it is available for purchase.
3198
-		if ( $item->get_id() > 0 && ! $item->can_purchase() ) {
3199
-			return new WP_Error( 'invalid_item', __( 'This item is not available for purchase', 'invoicing' ) );
3198
+        if ( $item->get_id() > 0 && ! $item->can_purchase() ) {
3199
+            return new WP_Error( 'invalid_item', __( 'This item is not available for purchase', 'invoicing' ) );
3200 3200
         }
3201 3201
 
3202 3202
         // Do we have a recurring item?
3203
-		if ( $item->is_recurring() ) {
3203
+        if ( $item->is_recurring() ) {
3204 3204
 
3205
-			// An invoice can only contain one recurring item.
3206
-			if ( ! empty( $this->recurring_item )  && $this->recurring_item != (int) $item->get_id() ) {
3207
-				return new WP_Error( 'recurring_item', __( 'An invoice can only contain one recurring item', 'invoicing' ) );
3208
-			}
3205
+            // An invoice can only contain one recurring item.
3206
+            if ( ! empty( $this->recurring_item )  && $this->recurring_item != (int) $item->get_id() ) {
3207
+                return new WP_Error( 'recurring_item', __( 'An invoice can only contain one recurring item', 'invoicing' ) );
3208
+            }
3209 3209
 
3210
-			$this->recurring_item = $item->get_id();
3210
+            $this->recurring_item = $item->get_id();
3211 3211
         }
3212 3212
 
3213 3213
         // Invoice id.
3214 3214
         $item->invoice_id = (int) $this->get_id();
3215 3215
 
3216
-		// Remove duplicates.
3217
-		$this->remove_item( $item->get_id() );
3216
+        // Remove duplicates.
3217
+        $this->remove_item( $item->get_id() );
3218 3218
 
3219
-		// Retrieve all items.
3219
+        // Retrieve all items.
3220 3220
         $items   = $this->get_items();
3221 3221
 
3222
-		// Add new item.
3222
+        // Add new item.
3223 3223
         $items[] = $item;
3224 3224
 
3225 3225
         $this->set_prop( 'items', $items );
3226 3226
 
3227
-		return true;
3228
-	}
3227
+        return true;
3228
+    }
3229 3229
 
3230
-	/**
3231
-	 * Converts an array to an item.
3232
-	 *
3233
-	 * @since 1.0.19
3234
-	 * @return GetPaid_Form_Item
3235
-	 */
3236
-	protected function process_array_item( $array ) {
3230
+    /**
3231
+     * Converts an array to an item.
3232
+     *
3233
+     * @since 1.0.19
3234
+     * @return GetPaid_Form_Item
3235
+     */
3236
+    protected function process_array_item( $array ) {
3237 3237
 
3238
-		$item_id = isset( $array['item_id'] ) ? $array['item_id'] : 0;
3239
-		$item    = new GetPaid_Form_Item( $item_id );
3238
+        $item_id = isset( $array['item_id'] ) ? $array['item_id'] : 0;
3239
+        $item    = new GetPaid_Form_Item( $item_id );
3240 3240
 
3241
-		// Set item data.
3242
-		foreach ( array( 'name', 'price', 'description' ) as $key ) {
3243
-			if ( isset( $array[ "item_$key" ] ) ) {
3244
-				$method = "set_$key";
3245
-				$item->$method( $array[ "item_$key" ] );
3246
-			}
3247
-		}
3241
+        // Set item data.
3242
+        foreach ( array( 'name', 'price', 'description' ) as $key ) {
3243
+            if ( isset( $array[ "item_$key" ] ) ) {
3244
+                $method = "set_$key";
3245
+                $item->$method( $array[ "item_$key" ] );
3246
+            }
3247
+        }
3248 3248
 
3249
-		if ( isset( $array['quantity'] ) ) {
3250
-			$item->set_quantity( $array['quantity'] );
3251
-		}
3249
+        if ( isset( $array['quantity'] ) ) {
3250
+            $item->set_quantity( $array['quantity'] );
3251
+        }
3252 3252
 
3253
-		// Set item meta.
3254
-		if ( isset( $array['meta'] ) && is_array( $array['meta'] ) ) {
3255
-			$item->set_item_meta( $array['meta'] );
3256
-		}
3253
+        // Set item meta.
3254
+        if ( isset( $array['meta'] ) && is_array( $array['meta'] ) ) {
3255
+            $item->set_item_meta( $array['meta'] );
3256
+        }
3257 3257
 
3258
-		return $item;
3258
+        return $item;
3259 3259
 
3260
-	}
3260
+    }
3261 3261
 
3262 3262
     /**
3263
-	 * Retrieves a specific item.
3264
-	 *
3265
-	 * @since 1.0.19
3266
-	 * @return GetPaid_Form_Item|null
3267
-	 */
3268
-	public function get_item( $item_id ) {
3263
+     * Retrieves a specific item.
3264
+     *
3265
+     * @since 1.0.19
3266
+     * @return GetPaid_Form_Item|null
3267
+     */
3268
+    public function get_item( $item_id ) {
3269 3269
 
3270
-		foreach ( $this->get_items() as $item ) {
3271
-			if ( (int) $item_id == $item->get_id() ) {
3272
-				return $item;
3273
-			}
3274
-		}
3270
+        foreach ( $this->get_items() as $item ) {
3271
+            if ( (int) $item_id == $item->get_id() ) {
3272
+                return $item;
3273
+            }
3274
+        }
3275 3275
 
3276
-		return null;
3276
+        return null;
3277 3277
     }
3278 3278
 
3279 3279
     /**
3280
-	 * Removes a specific item.
3281
-	 *
3282
-	 * @since 1.0.19
3283
-	 */
3284
-	public function remove_item( $item_id ) {
3285
-		$items   = $this->get_items();
3286
-		$item_id = (int) $item_id;
3280
+     * Removes a specific item.
3281
+     *
3282
+     * @since 1.0.19
3283
+     */
3284
+    public function remove_item( $item_id ) {
3285
+        $items   = $this->get_items();
3286
+        $item_id = (int) $item_id;
3287 3287
 
3288
-		foreach ( $items as $index => $item ) {
3289
-			if ( (int) $item_id == $item->get_id() ) {
3290
-				unset( $items[ $index ] );
3291
-				$this->set_prop( 'items', $items );
3288
+        foreach ( $items as $index => $item ) {
3289
+            if ( (int) $item_id == $item->get_id() ) {
3290
+                unset( $items[ $index ] );
3291
+                $this->set_prop( 'items', $items );
3292 3292
 
3293
-				if ( $item_id == $this->recurring_item ) {
3294
-					$this->recurring_item = null;
3295
-				}
3293
+                if ( $item_id == $this->recurring_item ) {
3294
+                    $this->recurring_item = null;
3295
+                }
3296 3296
 
3297
-			}
3298
-		}
3297
+            }
3298
+        }
3299 3299
 
3300 3300
     }
3301 3301
 
3302 3302
     /**
3303
-	 * Adds a fee to the invoice.
3304
-	 *
3305
-	 * @param array $fee An array of fee details. name, initial_fee, and recurring_fee are required.
3306
-	 * @since 1.0.19
3307
-	 */
3303
+     * Adds a fee to the invoice.
3304
+     *
3305
+     * @param array $fee An array of fee details. name, initial_fee, and recurring_fee are required.
3306
+     * @since 1.0.19
3307
+     */
3308 3308
     public function add_fee( $fee ) {
3309 3309
 
3310
-		$fees                 = $this->get_fees();
3311
-		$fees[ $fee['name'] ] = $fee;
3312
-		$this->set_prop( 'fees', $fees );
3310
+        $fees                 = $this->get_fees();
3311
+        $fees[ $fee['name'] ] = $fee;
3312
+        $this->set_prop( 'fees', $fees );
3313 3313
 
3314 3314
     }
3315 3315
 
3316 3316
     /**
3317
-	 * Retrieves a specific fee.
3318
-	 *
3319
-	 * @since 1.0.19
3320
-	 */
3321
-	public function get_fee( $fee ) {
3317
+     * Retrieves a specific fee.
3318
+     *
3319
+     * @since 1.0.19
3320
+     */
3321
+    public function get_fee( $fee ) {
3322 3322
         $fees = $this->get_fees();
3323
-		return isset( $fees[ $fee ] ) ? $fees[ $fee ] : null;
3323
+        return isset( $fees[ $fee ] ) ? $fees[ $fee ] : null;
3324 3324
     }
3325 3325
 
3326 3326
     /**
3327
-	 * Removes a specific fee.
3328
-	 *
3329
-	 * @since 1.0.19
3330
-	 */
3331
-	public function remove_fee( $fee ) {
3327
+     * Removes a specific fee.
3328
+     *
3329
+     * @since 1.0.19
3330
+     */
3331
+    public function remove_fee( $fee ) {
3332 3332
         $fees = $this->get_fees();
3333 3333
         if ( isset( $fees[ $fee ] ) ) {
3334 3334
             unset( $fees[ $fee ] );
@@ -3336,43 +3336,43 @@  discard block
 block discarded – undo
3336 3336
         }
3337 3337
     }
3338 3338
 
3339
-	/**
3340
-	 * Adds a discount to the invoice.
3341
-	 *
3342
-	 * @param array $discount An array of discount details. name, initial_discount, and recurring_discount are required. Include discount_code if the discount is from a discount code.
3343
-	 * @since 1.0.19
3344
-	 */
3345
-	public function add_discount( $discount ) {
3339
+    /**
3340
+     * Adds a discount to the invoice.
3341
+     *
3342
+     * @param array $discount An array of discount details. name, initial_discount, and recurring_discount are required. Include discount_code if the discount is from a discount code.
3343
+     * @since 1.0.19
3344
+     */
3345
+    public function add_discount( $discount ) {
3346 3346
 
3347
-		$discounts = $this->get_discounts();
3348
-		$discounts[ $discount['name'] ] = $discount;
3349
-		$this->set_prop( 'discounts', $discounts );
3347
+        $discounts = $this->get_discounts();
3348
+        $discounts[ $discount['name'] ] = $discount;
3349
+        $this->set_prop( 'discounts', $discounts );
3350 3350
 
3351
-	}
3351
+    }
3352 3352
 
3353 3353
     /**
3354
-	 * Retrieves a specific discount.
3355
-	 *
3356
-	 * @since 1.0.19
3357
-	 * @return float
3358
-	 */
3359
-	public function get_discount( $discount = false ) {
3354
+     * Retrieves a specific discount.
3355
+     *
3356
+     * @since 1.0.19
3357
+     * @return float
3358
+     */
3359
+    public function get_discount( $discount = false ) {
3360 3360
 
3361
-		// Backwards compatibilty.
3362
-		if ( empty( $discount ) ) {
3363
-			return $this->get_total_discount();
3364
-		}
3361
+        // Backwards compatibilty.
3362
+        if ( empty( $discount ) ) {
3363
+            return $this->get_total_discount();
3364
+        }
3365 3365
 
3366 3366
         $discounts = $this->get_discounts();
3367
-		return isset( $discounts[ $discount ] ) ? $discounts[ $discount ] : null;
3367
+        return isset( $discounts[ $discount ] ) ? $discounts[ $discount ] : null;
3368 3368
     }
3369 3369
 
3370 3370
     /**
3371
-	 * Removes a specific discount.
3372
-	 *
3373
-	 * @since 1.0.19
3374
-	 */
3375
-	public function remove_discount( $discount ) {
3371
+     * Removes a specific discount.
3372
+     *
3373
+     * @since 1.0.19
3374
+     */
3375
+    public function remove_discount( $discount ) {
3376 3376
         $discounts = $this->get_discounts();
3377 3377
         if ( isset( $discounts[ $discount ] ) ) {
3378 3378
             unset( $discounts[ $discount ] );
@@ -3389,34 +3389,34 @@  discard block
 block discarded – undo
3389 3389
         if ( $this->is_taxable() ) {
3390 3390
 
3391 3391
             $taxes                 = $this->get_taxes();
3392
-			$taxes[ $tax['name'] ] = $tax;
3393
-			$this->set_prop( 'taxes', $tax );
3392
+            $taxes[ $tax['name'] ] = $tax;
3393
+            $this->set_prop( 'taxes', $tax );
3394 3394
 
3395 3395
         }
3396 3396
     }
3397 3397
 
3398 3398
     /**
3399
-	 * Retrieves a specific tax.
3400
-	 *
3401
-	 * @since 1.0.19
3402
-	 */
3403
-	public function get_tax( $tax = null ) {
3399
+     * Retrieves a specific tax.
3400
+     *
3401
+     * @since 1.0.19
3402
+     */
3403
+    public function get_tax( $tax = null ) {
3404 3404
 
3405
-		// Backwards compatility.
3406
-		if ( empty( $tax ) ) {
3407
-			return $this->get_total_tax();
3408
-		}
3405
+        // Backwards compatility.
3406
+        if ( empty( $tax ) ) {
3407
+            return $this->get_total_tax();
3408
+        }
3409 3409
 
3410 3410
         $taxes = $this->get_taxes();
3411
-		return isset( $taxes[ $tax ] ) ? $taxes[ $tax ] : null;
3411
+        return isset( $taxes[ $tax ] ) ? $taxes[ $tax ] : null;
3412 3412
     }
3413 3413
 
3414 3414
     /**
3415
-	 * Removes a specific tax.
3416
-	 *
3417
-	 * @since 1.0.19
3418
-	 */
3419
-	public function remove_tax( $tax ) {
3415
+     * Removes a specific tax.
3416
+     *
3417
+     * @since 1.0.19
3418
+     */
3419
+    public function remove_tax( $tax ) {
3420 3420
         $taxes = $this->get_taxes();
3421 3421
         if ( isset( $taxes[ $tax ] ) ) {
3422 3422
             unset( $taxes[ $tax ] );
@@ -3425,183 +3425,183 @@  discard block
 block discarded – undo
3425 3425
     }
3426 3426
 
3427 3427
     /**
3428
-	 * Recalculates the invoice subtotal.
3429
-	 *
3430
-	 * @since 1.0.19
3431
-	 * @return float The recalculated subtotal
3432
-	 */
3433
-	public function recalculate_subtotal() {
3428
+     * Recalculates the invoice subtotal.
3429
+     *
3430
+     * @since 1.0.19
3431
+     * @return float The recalculated subtotal
3432
+     */
3433
+    public function recalculate_subtotal() {
3434 3434
         $items     = $this->get_items();
3435
-		$subtotal  = 0;
3436
-		$recurring = 0;
3435
+        $subtotal  = 0;
3436
+        $recurring = 0;
3437 3437
 
3438 3438
         foreach ( $items as $item ) {
3439
-			$subtotal  += $item->get_sub_total();
3440
-			$recurring += $item->get_recurring_sub_total();
3439
+            $subtotal  += $item->get_sub_total();
3440
+            $recurring += $item->get_recurring_sub_total();
3441 3441
         }
3442 3442
 
3443
-		if ( wpinv_prices_include_tax() ) {
3444
-			$subtotal  = max( 0, $subtotal - $this->totals['tax']['initial'] );
3445
-			$recurring = max( 0, $recurring - $this->totals['tax']['recurring'] );
3446
-		}
3443
+        if ( wpinv_prices_include_tax() ) {
3444
+            $subtotal  = max( 0, $subtotal - $this->totals['tax']['initial'] );
3445
+            $recurring = max( 0, $recurring - $this->totals['tax']['recurring'] );
3446
+        }
3447 3447
 
3448
-		$current = $this->is_renewal() ? $recurring : $subtotal;
3449
-		$this->set_subtotal( $current );
3448
+        $current = $this->is_renewal() ? $recurring : $subtotal;
3449
+        $this->set_subtotal( $current );
3450 3450
 
3451
-		$this->totals['subtotal'] = array(
3452
-			'initial'   => $subtotal,
3453
-			'recurring' => $recurring,
3454
-		);
3451
+        $this->totals['subtotal'] = array(
3452
+            'initial'   => $subtotal,
3453
+            'recurring' => $recurring,
3454
+        );
3455 3455
 
3456 3456
         return $current;
3457 3457
     }
3458 3458
 
3459 3459
     /**
3460
-	 * Recalculates the invoice discount total.
3461
-	 *
3462
-	 * @since 1.0.19
3463
-	 * @return float The recalculated discount
3464
-	 */
3465
-	public function recalculate_total_discount() {
3460
+     * Recalculates the invoice discount total.
3461
+     *
3462
+     * @since 1.0.19
3463
+     * @return float The recalculated discount
3464
+     */
3465
+    public function recalculate_total_discount() {
3466 3466
         $discounts = $this->get_discounts();
3467
-		$discount  = 0;
3468
-		$recurring = 0;
3467
+        $discount  = 0;
3468
+        $recurring = 0;
3469 3469
 
3470 3470
         foreach ( $discounts as $data ) {
3471
-			$discount  += wpinv_sanitize_amount( $data['initial_discount'] );
3472
-			$recurring += wpinv_sanitize_amount( $data['recurring_discount'] );
3473
-		}
3471
+            $discount  += wpinv_sanitize_amount( $data['initial_discount'] );
3472
+            $recurring += wpinv_sanitize_amount( $data['recurring_discount'] );
3473
+        }
3474 3474
 
3475
-		$current = $this->is_renewal() ? $recurring : $discount;
3475
+        $current = $this->is_renewal() ? $recurring : $discount;
3476 3476
 
3477
-		$this->set_total_discount( $current );
3477
+        $this->set_total_discount( $current );
3478 3478
 
3479
-		$this->totals['discount'] = array(
3480
-			'initial'   => $discount,
3481
-			'recurring' => $recurring,
3482
-		);
3479
+        $this->totals['discount'] = array(
3480
+            'initial'   => $discount,
3481
+            'recurring' => $recurring,
3482
+        );
3483 3483
 
3484
-		return $current;
3484
+        return $current;
3485 3485
 
3486 3486
     }
3487 3487
 
3488 3488
     /**
3489
-	 * Recalculates the invoice tax total.
3490
-	 *
3491
-	 * @since 1.0.19
3492
-	 * @return float The recalculated tax
3493
-	 */
3494
-	public function recalculate_total_tax() {
3489
+     * Recalculates the invoice tax total.
3490
+     *
3491
+     * @since 1.0.19
3492
+     * @return float The recalculated tax
3493
+     */
3494
+    public function recalculate_total_tax() {
3495 3495
 
3496
-		// Maybe disable taxes.
3497
-		$vat_number = $this->get_vat_number();
3498
-		$skip_tax   = GetPaid_Payment_Form_Submission_Taxes::is_eu_transaction( $this->get_country() ) && ! empty( $vat_number );
3496
+        // Maybe disable taxes.
3497
+        $vat_number = $this->get_vat_number();
3498
+        $skip_tax   = GetPaid_Payment_Form_Submission_Taxes::is_eu_transaction( $this->get_country() ) && ! empty( $vat_number );
3499 3499
 
3500
-		if ( wpinv_is_base_country( $this->get_country() ) && 'vat_too' == wpinv_get_option( 'vat_same_country_rule', 'vat_too' ) ) {
3501
-			$skip_tax = false;
3502
-		}
3500
+        if ( wpinv_is_base_country( $this->get_country() ) && 'vat_too' == wpinv_get_option( 'vat_same_country_rule', 'vat_too' ) ) {
3501
+            $skip_tax = false;
3502
+        }
3503 3503
 
3504
-		if ( ! wpinv_use_taxes() || $this->get_disable_taxes() || ! wpinv_is_country_taxable( $this->get_country() ) || $skip_tax   ) {
3504
+        if ( ! wpinv_use_taxes() || $this->get_disable_taxes() || ! wpinv_is_country_taxable( $this->get_country() ) || $skip_tax   ) {
3505 3505
 
3506
-			$this->totals['tax'] = array(
3507
-				'initial'   => 0,
3508
-				'recurring' => 0,
3509
-			);
3506
+            $this->totals['tax'] = array(
3507
+                'initial'   => 0,
3508
+                'recurring' => 0,
3509
+            );
3510 3510
 
3511
-			$this->set_taxes( array() );
3512
-			$current = 0;
3513
-		} else {
3511
+            $this->set_taxes( array() );
3512
+            $current = 0;
3513
+        } else {
3514 3514
 
3515
-			$item_taxes = array();
3515
+            $item_taxes = array();
3516 3516
 
3517
-			foreach ( $this->get_items() as $item ) {
3518
-				$rates    = getpaid_get_item_tax_rates( $item, $this->get_country(), $this->get_state() );
3519
-				$rates    = getpaid_filter_item_tax_rates( $item, $rates );
3520
-				$taxes    = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_sub_total(), $this->get_discount_code(), false ), $rates );
3521
-				$r_taxes  = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_recurring_sub_total(), $this->get_discount_code(), true ), $rates );
3522
-				foreach ( $taxes as $name => $amount ) {
3523
-					$recurring = isset( $r_taxes[ $name ] ) ? $r_taxes[ $name ] : 0;
3524
-					$tax       = getpaid_prepare_item_tax( $item, $name, $amount, $recurring );
3517
+            foreach ( $this->get_items() as $item ) {
3518
+                $rates    = getpaid_get_item_tax_rates( $item, $this->get_country(), $this->get_state() );
3519
+                $rates    = getpaid_filter_item_tax_rates( $item, $rates );
3520
+                $taxes    = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_sub_total(), $this->get_discount_code(), false ), $rates );
3521
+                $r_taxes  = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_recurring_sub_total(), $this->get_discount_code(), true ), $rates );
3522
+                foreach ( $taxes as $name => $amount ) {
3523
+                    $recurring = isset( $r_taxes[ $name ] ) ? $r_taxes[ $name ] : 0;
3524
+                    $tax       = getpaid_prepare_item_tax( $item, $name, $amount, $recurring );
3525 3525
 
3526
-					if ( ! isset( $item_taxes[ $name ] ) ) {
3527
-						$item_taxes[ $name ] = $tax;
3528
-						continue;
3529
-					}
3526
+                    if ( ! isset( $item_taxes[ $name ] ) ) {
3527
+                        $item_taxes[ $name ] = $tax;
3528
+                        continue;
3529
+                    }
3530 3530
 
3531
-					$item_taxes[ $name ]['initial_tax']   += $tax['initial_tax'];
3532
-					$item_taxes[ $name ]['recurring_tax'] += $tax['recurring_tax'];
3531
+                    $item_taxes[ $name ]['initial_tax']   += $tax['initial_tax'];
3532
+                    $item_taxes[ $name ]['recurring_tax'] += $tax['recurring_tax'];
3533 3533
 
3534
-				}
3534
+                }
3535 3535
 
3536
-			}
3536
+            }
3537 3537
 
3538
-			$item_taxes = array_replace( $this->get_taxes(), $item_taxes );
3539
-			$this->set_taxes( $item_taxes );
3538
+            $item_taxes = array_replace( $this->get_taxes(), $item_taxes );
3539
+            $this->set_taxes( $item_taxes );
3540 3540
 
3541
-			$initial_tax   = array_sum( wp_list_pluck( $item_taxes, 'initial_tax' ) );
3542
-			$recurring_tax = array_sum( wp_list_pluck( $item_taxes, 'recurring_tax' ) );
3541
+            $initial_tax   = array_sum( wp_list_pluck( $item_taxes, 'initial_tax' ) );
3542
+            $recurring_tax = array_sum( wp_list_pluck( $item_taxes, 'recurring_tax' ) );
3543 3543
 
3544
-			$current = $this->is_renewal() ? $recurring_tax : $initial_tax;
3544
+            $current = $this->is_renewal() ? $recurring_tax : $initial_tax;
3545 3545
 
3546
-			$this->totals['tax'] = array(
3547
-				'initial'   => $initial_tax,
3548
-				'recurring' => $recurring_tax,
3549
-			);
3546
+            $this->totals['tax'] = array(
3547
+                'initial'   => $initial_tax,
3548
+                'recurring' => $recurring_tax,
3549
+            );
3550 3550
 
3551
-		}
3551
+        }
3552 3552
 
3553
-		$this->set_total_tax( $current );
3553
+        $this->set_total_tax( $current );
3554 3554
 
3555
-		return $current;
3555
+        return $current;
3556 3556
 
3557 3557
     }
3558 3558
 
3559 3559
     /**
3560
-	 * Recalculates the invoice fees total.
3561
-	 *
3562
-	 * @since 1.0.19
3563
-	 * @return float The recalculated fee
3564
-	 */
3565
-	public function recalculate_total_fees() {
3566
-		$fees      = $this->get_fees();
3567
-		$fee       = 0;
3568
-		$recurring = 0;
3560
+     * Recalculates the invoice fees total.
3561
+     *
3562
+     * @since 1.0.19
3563
+     * @return float The recalculated fee
3564
+     */
3565
+    public function recalculate_total_fees() {
3566
+        $fees      = $this->get_fees();
3567
+        $fee       = 0;
3568
+        $recurring = 0;
3569 3569
 
3570 3570
         foreach ( $fees as $data ) {
3571
-			$fee       += wpinv_sanitize_amount( $data['initial_fee'] );
3572
-			$recurring += wpinv_sanitize_amount( $data['recurring_fee'] );
3573
-		}
3571
+            $fee       += wpinv_sanitize_amount( $data['initial_fee'] );
3572
+            $recurring += wpinv_sanitize_amount( $data['recurring_fee'] );
3573
+        }
3574 3574
 
3575
-		$current = $this->is_renewal() ? $recurring : $fee;
3576
-		$this->set_total_fees( $current );
3575
+        $current = $this->is_renewal() ? $recurring : $fee;
3576
+        $this->set_total_fees( $current );
3577 3577
 
3578
-		$this->totals['fee'] = array(
3579
-			'initial'   => $fee,
3580
-			'recurring' => $recurring,
3581
-		);
3578
+        $this->totals['fee'] = array(
3579
+            'initial'   => $fee,
3580
+            'recurring' => $recurring,
3581
+        );
3582 3582
 
3583 3583
         $this->set_total_fees( $fee );
3584 3584
         return $current;
3585 3585
     }
3586 3586
 
3587 3587
     /**
3588
-	 * Recalculates the invoice total.
3589
-	 *
3590
-	 * @since 1.0.19
3588
+     * Recalculates the invoice total.
3589
+     *
3590
+     * @since 1.0.19
3591 3591
      * @return float The invoice total
3592
-	 */
3593
-	public function recalculate_total() {
3592
+     */
3593
+    public function recalculate_total() {
3594 3594
         $this->recalculate_total_fees();
3595 3595
         $this->recalculate_total_discount();
3596
-		$this->recalculate_total_tax();
3597
-		$this->recalculate_subtotal();
3598
-		$this->set_total( $this->get_total_tax() + $this->get_total_fees() + $this->get_subtotal() - $this->get_total_discount() );
3599
-		return $this->get_total();
3600
-	}
3601
-
3602
-	/**
3603
-	 * @deprecated
3604
-	 */
3596
+        $this->recalculate_total_tax();
3597
+        $this->recalculate_subtotal();
3598
+        $this->set_total( $this->get_total_tax() + $this->get_total_fees() + $this->get_subtotal() - $this->get_total_discount() );
3599
+        return $this->get_total();
3600
+    }
3601
+
3602
+    /**
3603
+     * @deprecated
3604
+     */
3605 3605
     public function recalculate_totals() {
3606 3606
         $this->recalculate_total();
3607 3607
         $this->save( true );
@@ -3619,7 +3619,7 @@  discard block
 block discarded – undo
3619 3619
      * Adds a note to an invoice.
3620 3620
      *
3621 3621
      * @param string $note The note being added.
3622
-	 * @return int|false The new note's ID on success, false on failure.
3622
+     * @return int|false The new note's ID on success, false on failure.
3623 3623
      *
3624 3624
      */
3625 3625
     public function add_note( $note = '', $customer_type = false, $added_by_user = false, $system = false ) {
@@ -3629,21 +3629,21 @@  discard block
 block discarded – undo
3629 3629
             return false;
3630 3630
         }
3631 3631
 
3632
-		$author       = 'System';
3633
-		$author_email = '[email protected]';
3632
+        $author       = 'System';
3633
+        $author_email = '[email protected]';
3634 3634
 
3635
-		// If this is an admin comment or it has been added by the user.
3636
-		if ( is_user_logged_in() && ( ! $system || $added_by_user ) ) {
3637
-			$user         = get_user_by( 'id', get_current_user_id() );
3635
+        // If this is an admin comment or it has been added by the user.
3636
+        if ( is_user_logged_in() && ( ! $system || $added_by_user ) ) {
3637
+            $user         = get_user_by( 'id', get_current_user_id() );
3638 3638
             $author       = $user->display_name;
3639 3639
             $author_email = $user->user_email;
3640
-		}
3640
+        }
3641 3641
 
3642
-		return getpaid_notes()->add_invoice_note( $this, $note, $author, $author_email, $customer_type );
3642
+        return getpaid_notes()->add_invoice_note( $this, $note, $author, $author_email, $customer_type );
3643 3643
 
3644
-	}
3644
+    }
3645 3645
 
3646
-	/**
3646
+    /**
3647 3647
      * Generates a unique key for the invoice.
3648 3648
      */
3649 3649
     public function generate_key( $string = '' ) {
@@ -3663,113 +3663,113 @@  discard block
 block discarded – undo
3663 3663
             $number = wpinv_get_next_invoice_number( $this->get_post_type() );
3664 3664
         }
3665 3665
 
3666
-		return wpinv_format_invoice_number( $number, $this->get_post_type() );
3667
-
3668
-	}
3669
-
3670
-	/**
3671
-	 * Handle the status transition.
3672
-	 */
3673
-	protected function status_transition() {
3674
-		$status_transition = $this->status_transition;
3675
-
3676
-		// Reset status transition variable.
3677
-		$this->status_transition = false;
3666
+        return wpinv_format_invoice_number( $number, $this->get_post_type() );
3678 3667
 
3679
-		if ( $status_transition ) {
3680
-			try {
3681
-
3682
-				// Fire a hook for the status change.
3683
-				do_action( 'getpaid_invoice_status_' . $status_transition['to'], $this, $status_transition );
3684
-
3685
-				// @deprecated this is deprecated and will be removed in the future.
3686
-				do_action( 'wpinv_status_' . $status_transition['to'], $this->get_id(), $status_transition['from'] );
3687
-
3688
-				if ( ! empty( $status_transition['from'] ) ) {
3689
-
3690
-					/* translators: 1: old invoice status 2: new invoice status */
3691
-					$transition_note = sprintf( __( 'Status changed from %1$s to %2$s.', 'invoicing' ), wpinv_status_nicename( $status_transition['from'], $this ), wpinv_status_nicename( $status_transition['to'], $this  ) );
3692
-
3693
-					// Fire another hook.
3694
-					do_action( 'getpaid_invoice_status_' . $status_transition['from'] . '_to_' . $status_transition['to'], $this );
3695
-					do_action( 'getpaid_invoice_status_changed', $this, $status_transition['from'], $status_transition['to'] );
3696
-
3697
-					// @deprecated this is deprecated and will be removed in the future.
3698
-					do_action( 'wpinv_status_' . $status_transition['from'] . '_to_' . $status_transition['to'], $this->get_id(), $status_transition['from'] );
3699
-
3700
-					// Note the transition occurred.
3701
-					$this->add_note( trim( $status_transition['note'] . ' ' . $transition_note ), false, $status_transition['manual'] );
3702
-
3703
-					// Work out if this was for a payment, and trigger a payment_status hook instead.
3704
-					if (
3705
-						in_array( $status_transition['from'], array( 'wpi-cancelled', 'wpi-pending', 'wpi-failed', 'wpi-refunded', 'wpi-onhold' ), true )
3706
-						&& in_array( $status_transition['to'], array( 'publish', 'wpi-processing', 'wpi-renewal' ), true )
3707
-					) {
3708
-						do_action( 'getpaid_invoice_payment_status_changed', $this, $status_transition );
3709
-					}
3710
-
3711
-					// Work out if this was for a payment reversal, and trigger a payment_status_reversed hook instead.
3712
-					if (
3713
-						in_array( $status_transition['from'], array( 'publish', 'wpi-processing', 'wpi-renewal' ), true )
3714
-						&& in_array( $status_transition['to'], array( 'wpi-cancelled', 'wpi-pending', 'wpi-failed', 'wpi-refunded', 'wpi-onhold' ), true )
3715
-					) {
3716
-						do_action( 'getpaid_invoice_payment_status_reversed', $this, $status_transition );
3717
-					}
3718
-				} else {
3719
-					/* translators: %s: new invoice status */
3720
-					$transition_note = sprintf( __( 'Status set to %s.', 'invoicing' ), wpinv_status_nicename( $status_transition['to'], $this  ) );
3721
-
3722
-					// Note the transition occurred.
3723
-					$this->add_note( trim( $status_transition['note'] . ' ' . $transition_note ), 0, $status_transition['manual'] );
3668
+    }
3724 3669
 
3725
-				}
3726
-			} catch ( Exception $e ) {
3727
-				$this->add_note( __( 'Error during status transition.', 'invoicing' ) . ' ' . $e->getMessage() );
3728
-			}
3729
-		}
3730
-	}
3670
+    /**
3671
+     * Handle the status transition.
3672
+     */
3673
+    protected function status_transition() {
3674
+        $status_transition = $this->status_transition;
3675
+
3676
+        // Reset status transition variable.
3677
+        $this->status_transition = false;
3678
+
3679
+        if ( $status_transition ) {
3680
+            try {
3681
+
3682
+                // Fire a hook for the status change.
3683
+                do_action( 'getpaid_invoice_status_' . $status_transition['to'], $this, $status_transition );
3684
+
3685
+                // @deprecated this is deprecated and will be removed in the future.
3686
+                do_action( 'wpinv_status_' . $status_transition['to'], $this->get_id(), $status_transition['from'] );
3687
+
3688
+                if ( ! empty( $status_transition['from'] ) ) {
3689
+
3690
+                    /* translators: 1: old invoice status 2: new invoice status */
3691
+                    $transition_note = sprintf( __( 'Status changed from %1$s to %2$s.', 'invoicing' ), wpinv_status_nicename( $status_transition['from'], $this ), wpinv_status_nicename( $status_transition['to'], $this  ) );
3692
+
3693
+                    // Fire another hook.
3694
+                    do_action( 'getpaid_invoice_status_' . $status_transition['from'] . '_to_' . $status_transition['to'], $this );
3695
+                    do_action( 'getpaid_invoice_status_changed', $this, $status_transition['from'], $status_transition['to'] );
3696
+
3697
+                    // @deprecated this is deprecated and will be removed in the future.
3698
+                    do_action( 'wpinv_status_' . $status_transition['from'] . '_to_' . $status_transition['to'], $this->get_id(), $status_transition['from'] );
3699
+
3700
+                    // Note the transition occurred.
3701
+                    $this->add_note( trim( $status_transition['note'] . ' ' . $transition_note ), false, $status_transition['manual'] );
3702
+
3703
+                    // Work out if this was for a payment, and trigger a payment_status hook instead.
3704
+                    if (
3705
+                        in_array( $status_transition['from'], array( 'wpi-cancelled', 'wpi-pending', 'wpi-failed', 'wpi-refunded', 'wpi-onhold' ), true )
3706
+                        && in_array( $status_transition['to'], array( 'publish', 'wpi-processing', 'wpi-renewal' ), true )
3707
+                    ) {
3708
+                        do_action( 'getpaid_invoice_payment_status_changed', $this, $status_transition );
3709
+                    }
3710
+
3711
+                    // Work out if this was for a payment reversal, and trigger a payment_status_reversed hook instead.
3712
+                    if (
3713
+                        in_array( $status_transition['from'], array( 'publish', 'wpi-processing', 'wpi-renewal' ), true )
3714
+                        && in_array( $status_transition['to'], array( 'wpi-cancelled', 'wpi-pending', 'wpi-failed', 'wpi-refunded', 'wpi-onhold' ), true )
3715
+                    ) {
3716
+                        do_action( 'getpaid_invoice_payment_status_reversed', $this, $status_transition );
3717
+                    }
3718
+                } else {
3719
+                    /* translators: %s: new invoice status */
3720
+                    $transition_note = sprintf( __( 'Status set to %s.', 'invoicing' ), wpinv_status_nicename( $status_transition['to'], $this  ) );
3721
+
3722
+                    // Note the transition occurred.
3723
+                    $this->add_note( trim( $status_transition['note'] . ' ' . $transition_note ), 0, $status_transition['manual'] );
3724
+
3725
+                }
3726
+            } catch ( Exception $e ) {
3727
+                $this->add_note( __( 'Error during status transition.', 'invoicing' ) . ' ' . $e->getMessage() );
3728
+            }
3729
+        }
3730
+    }
3731 3731
 
3732
-	/**
3733
-	 * Updates an invoice status.
3734
-	 */
3735
-	public function update_status( $new_status = false, $note = '', $manual = false ) {
3732
+    /**
3733
+     * Updates an invoice status.
3734
+     */
3735
+    public function update_status( $new_status = false, $note = '', $manual = false ) {
3736 3736
 
3737
-		// Fires before updating a status.
3738
-		do_action( 'wpinv_before_invoice_status_change', $this->get_id(), $new_status, $this->get_status( 'edit' ) );
3737
+        // Fires before updating a status.
3738
+        do_action( 'wpinv_before_invoice_status_change', $this->get_id(), $new_status, $this->get_status( 'edit' ) );
3739 3739
 
3740
-		// Update the status.
3741
-		$this->set_status( $new_status, $note, $manual );
3740
+        // Update the status.
3741
+        $this->set_status( $new_status, $note, $manual );
3742 3742
 
3743
-		// Save the order.
3744
-		return $this->save();
3743
+        // Save the order.
3744
+        return $this->save();
3745 3745
 
3746
-	}
3746
+    }
3747 3747
 
3748
-	/**
3749
-	 * @deprecated
3750
-	 */
3751
-	public function refresh_item_ids() {
3748
+    /**
3749
+     * @deprecated
3750
+     */
3751
+    public function refresh_item_ids() {
3752 3752
         $item_ids = implode( ',', array_unique( wp_list_pluck( $this->get_cart_details(), 'item_id' ) ) );
3753 3753
         update_post_meta( $this->get_id(), '_wpinv_item_ids', $item_ids );
3754
-	}
3754
+    }
3755 3755
 
3756
-	/**
3757
-	 * @deprecated
3758
-	 */
3759
-	public function update_items( $temp = false ) {
3756
+    /**
3757
+     * @deprecated
3758
+     */
3759
+    public function update_items( $temp = false ) {
3760 3760
 
3761
-		$this->set_items( $this->get_items() );
3761
+        $this->set_items( $this->get_items() );
3762 3762
 
3763
-		if ( ! $temp ) {
3764
-			$this->save();
3765
-		}
3763
+        if ( ! $temp ) {
3764
+            $this->save();
3765
+        }
3766 3766
 
3767 3767
         return $this;
3768
-	}
3768
+    }
3769 3769
 
3770
-	/**
3771
-	 * @deprecated
3772
-	 */
3770
+    /**
3771
+     * @deprecated
3772
+     */
3773 3773
     public function validate_discount() {
3774 3774
 
3775 3775
         $discount_code = $this->get_discount_code();
@@ -3785,93 +3785,93 @@  discard block
 block discarded – undo
3785 3785
 
3786 3786
     }
3787 3787
 
3788
-	/**
3789
-	 * Refunds an invoice.
3790
-	 */
3788
+    /**
3789
+     * Refunds an invoice.
3790
+     */
3791 3791
     public function refund() {
3792
-		$this->set_status( 'wpi-refunded' );
3792
+        $this->set_status( 'wpi-refunded' );
3793 3793
         $this->save();
3794
-	}
3794
+    }
3795 3795
 
3796
-	/**
3797
-	 * Marks an invoice as paid.
3798
-	 * 
3799
-	 * @param string $transaction_id
3800
-	 */
3796
+    /**
3797
+     * Marks an invoice as paid.
3798
+     * 
3799
+     * @param string $transaction_id
3800
+     */
3801 3801
     public function mark_paid( $transaction_id = null, $note = '' ) {
3802 3802
 
3803
-		// Set the transaction id.
3804
-		if ( empty( $transaction_id ) ) {
3805
-			$transaction_id = $this->generate_key('trans_');
3806
-		}
3803
+        // Set the transaction id.
3804
+        if ( empty( $transaction_id ) ) {
3805
+            $transaction_id = $this->generate_key('trans_');
3806
+        }
3807 3807
 
3808
-		if ( ! $this->get_transaction_id() ) {
3809
-			$this->set_transaction_id( $transaction_id );
3810
-		}
3808
+        if ( ! $this->get_transaction_id() ) {
3809
+            $this->set_transaction_id( $transaction_id );
3810
+        }
3811 3811
 
3812
-		if ( $this->is_paid() && 'wpi-processing' != $this->get_status() ) {
3813
-			return $this->save();
3814
-		}
3812
+        if ( $this->is_paid() && 'wpi-processing' != $this->get_status() ) {
3813
+            return $this->save();
3814
+        }
3815 3815
 
3816
-		// Set the completed date.
3817
-		$this->set_date_completed( current_time( 'mysql' ) );
3816
+        // Set the completed date.
3817
+        $this->set_date_completed( current_time( 'mysql' ) );
3818 3818
 
3819
-		// Set the new status.
3820
-		$gateway = sanitize_text_field( $this->get_gateway_title() );
3821
-		if ( $this->is_renewal() ) {
3819
+        // Set the new status.
3820
+        $gateway = sanitize_text_field( $this->get_gateway_title() );
3821
+        if ( $this->is_renewal() ) {
3822 3822
 
3823
-			$_note = wp_sprintf( __( 'Renewed via %s', 'invoicing' ), $gateway );
3824
-			$_note = $_note . empty( $note ) ? '' : " ($note)";
3823
+            $_note = wp_sprintf( __( 'Renewed via %s', 'invoicing' ), $gateway );
3824
+            $_note = $_note . empty( $note ) ? '' : " ($note)";
3825 3825
 
3826
-			if ( 'none' == $this->get_gateway() ) {
3827
-				$_note = $note;
3828
-			}
3826
+            if ( 'none' == $this->get_gateway() ) {
3827
+                $_note = $note;
3828
+            }
3829 3829
 
3830
-			$this->set_status( 'wpi-renewal', $_note );
3830
+            $this->set_status( 'wpi-renewal', $_note );
3831 3831
 
3832
-		} else {
3832
+        } else {
3833 3833
 
3834
-			$_note = wp_sprintf( __( 'Paid via %s', 'invoicing' ), $gateway );
3835
-			$_note = $_note . empty( $note ) ? '' : " ($note)";
3834
+            $_note = wp_sprintf( __( 'Paid via %s', 'invoicing' ), $gateway );
3835
+            $_note = $_note . empty( $note ) ? '' : " ($note)";
3836 3836
 
3837
-			if ( 'none' == $this->get_gateway() ) {
3838
-				$_note = $note;
3839
-			}
3837
+            if ( 'none' == $this->get_gateway() ) {
3838
+                $_note = $note;
3839
+            }
3840 3840
 
3841
-			$this->set_status( 'publish', $_note );
3841
+            $this->set_status( 'publish', $_note );
3842 3842
 
3843
-		}
3843
+        }
3844 3844
 
3845
-		// Set checkout mode.
3846
-		$mode = wpinv_is_test_mode( $this->get_gateway() ) ? 'test' : 'live';
3847
-		$this->set_mode( $mode );
3845
+        // Set checkout mode.
3846
+        $mode = wpinv_is_test_mode( $this->get_gateway() ) ? 'test' : 'live';
3847
+        $this->set_mode( $mode );
3848 3848
 
3849
-		// Save the invoice.
3849
+        // Save the invoice.
3850 3850
         $this->save();
3851
-	}
3852
-
3853
-	/**
3854
-	 * Save data to the database.
3855
-	 *
3856
-	 * @since 1.0.19
3857
-	 * @return int invoice ID
3858
-	 */
3859
-	public function save() {
3860
-		$this->maybe_set_date_paid();
3861
-		$this->maybe_set_key();
3862
-		parent::save();
3863
-		$this->clear_cache();
3864
-		$this->status_transition();
3865
-		return $this->get_id();
3866
-	}
3867
-
3868
-	/**
3851
+    }
3852
+
3853
+    /**
3854
+     * Save data to the database.
3855
+     *
3856
+     * @since 1.0.19
3857
+     * @return int invoice ID
3858
+     */
3859
+    public function save() {
3860
+        $this->maybe_set_date_paid();
3861
+        $this->maybe_set_key();
3862
+        parent::save();
3863
+        $this->clear_cache();
3864
+        $this->status_transition();
3865
+        return $this->get_id();
3866
+    }
3867
+
3868
+    /**
3869 3869
      * Clears the subscription's cache.
3870 3870
      */
3871 3871
     public function clear_cache() {
3872
-		wp_cache_delete( $this->get_key(), 'getpaid_invoice_keys_to_invoice_ids' );
3873
-		wp_cache_delete( $this->get_number(), 'getpaid_invoice_numbers_to_invoice_ids' );
3874
-		wp_cache_delete( $this->get_transaction_id(), 'getpaid_invoice_transaction_ids_to_invoice_ids' );
3875
-	}
3872
+        wp_cache_delete( $this->get_key(), 'getpaid_invoice_keys_to_invoice_ids' );
3873
+        wp_cache_delete( $this->get_number(), 'getpaid_invoice_numbers_to_invoice_ids' );
3874
+        wp_cache_delete( $this->get_transaction_id(), 'getpaid_invoice_transaction_ids_to_invoice_ids' );
3875
+    }
3876 3876
 
3877 3877
 }
Please login to merge, or discard this patch.
Spacing   +773 added lines, -773 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
  * @package Invoicing
7 7
  */
8 8
 
9
-defined( 'ABSPATH' ) || exit;
9
+defined('ABSPATH') || exit;
10 10
 
11 11
 /**
12 12
  * Invoice class.
@@ -136,40 +136,40 @@  discard block
 block discarded – undo
136 136
 	 *
137 137
 	 * @param  int|string|object|WPInv_Invoice|WPInv_Legacy_Invoice|WP_Post $invoice Invoice id, key, transaction id, number or object to read.
138 138
 	 */
139
-    public function __construct( $invoice = 0 ) {
139
+    public function __construct($invoice = 0) {
140 140
 
141
-        parent::__construct( $invoice );
141
+        parent::__construct($invoice);
142 142
 
143
-		if ( ! empty( $invoice ) && is_numeric( $invoice ) && getpaid_is_invoice_post_type( get_post_type( (int) $invoice ) ) ) {
144
-			$this->set_id( (int) $invoice );
145
-		} elseif ( $invoice instanceof self ) {
146
-			$this->set_id( $invoice->get_id() );
147
-		} elseif ( ! empty( $invoice->ID ) ) {
148
-			$this->set_id( $invoice->ID );
149
-		} elseif ( is_array( $invoice ) ) {
150
-			$this->set_props( $invoice );
143
+		if (!empty($invoice) && is_numeric($invoice) && getpaid_is_invoice_post_type(get_post_type((int) $invoice))) {
144
+			$this->set_id((int) $invoice);
145
+		} elseif ($invoice instanceof self) {
146
+			$this->set_id($invoice->get_id());
147
+		} elseif (!empty($invoice->ID)) {
148
+			$this->set_id($invoice->ID);
149
+		} elseif (is_array($invoice)) {
150
+			$this->set_props($invoice);
151 151
 
152
-			if ( isset( $invoice['ID'] ) ) {
153
-				$this->set_id( $invoice['ID'] );
152
+			if (isset($invoice['ID'])) {
153
+				$this->set_id($invoice['ID']);
154 154
 			}
155 155
 
156
-		} elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'key' ) ) {
157
-			$this->set_id( $invoice_id );
158
-		} elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'number' ) ) {
159
-			$this->set_id( $invoice_id );
160
-		} elseif ( is_string( $invoice ) && $invoice_id = self::get_invoice_id_by_field( $invoice, 'transaction_id' ) ) {
161
-			$this->set_id( $invoice_id );
156
+		} elseif (is_string($invoice) && $invoice_id = self::get_invoice_id_by_field($invoice, 'key')) {
157
+			$this->set_id($invoice_id);
158
+		} elseif (is_string($invoice) && $invoice_id = self::get_invoice_id_by_field($invoice, 'number')) {
159
+			$this->set_id($invoice_id);
160
+		} elseif (is_string($invoice) && $invoice_id = self::get_invoice_id_by_field($invoice, 'transaction_id')) {
161
+			$this->set_id($invoice_id);
162 162
 		} else {
163
-			$this->set_object_read( true );
163
+			$this->set_object_read(true);
164 164
 		}
165 165
 
166 166
         // Load the datastore.
167
-		$this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
167
+		$this->data_store = GetPaid_Data_Store::load($this->data_store_name);
168 168
 
169
-		if ( $this->get_id() > 0 ) {
170
-            $this->post = get_post( $this->get_id() );
169
+		if ($this->get_id() > 0) {
170
+            $this->post = get_post($this->get_id());
171 171
             $this->ID   = $this->get_id();
172
-			$this->data_store->read( $this );
172
+			$this->data_store->read($this);
173 173
         }
174 174
 
175 175
     }
@@ -184,38 +184,38 @@  discard block
 block discarded – undo
184 184
 	 * @since 1.0.15
185 185
 	 * @return int
186 186
 	 */
187
-	public static function get_invoice_id_by_field( $value, $field = 'key' ) {
187
+	public static function get_invoice_id_by_field($value, $field = 'key') {
188 188
         global $wpdb;
189 189
 
190 190
 		// Trim the value.
191
-		$value = trim( $value );
191
+		$value = trim($value);
192 192
 
193
-		if ( empty( $value ) ) {
193
+		if (empty($value)) {
194 194
 			return 0;
195 195
 		}
196 196
 
197 197
         // Valid fields.
198
-        $fields = array( 'key', 'number', 'transaction_id' );
198
+        $fields = array('key', 'number', 'transaction_id');
199 199
 
200 200
 		// Ensure a field has been passed.
201
-		if ( empty( $field ) || ! in_array( $field, $fields ) ) {
201
+		if (empty($field) || !in_array($field, $fields)) {
202 202
 			return 0;
203 203
 		}
204 204
 
205 205
 		// Maybe retrieve from the cache.
206
-		$invoice_id   = wp_cache_get( $value, "getpaid_invoice_{$field}s_to_invoice_ids" );
207
-		if ( false !== $invoice_id ) {
206
+		$invoice_id = wp_cache_get($value, "getpaid_invoice_{$field}s_to_invoice_ids");
207
+		if (false !== $invoice_id) {
208 208
 			return $invoice_id;
209 209
 		}
210 210
 
211 211
         // Fetch from the db.
212 212
         $table       = $wpdb->prefix . 'getpaid_invoices';
213 213
         $invoice_id  = (int) $wpdb->get_var(
214
-            $wpdb->prepare( "SELECT `post_id` FROM $table WHERE `$field`=%s LIMIT 1", $value )
214
+            $wpdb->prepare("SELECT `post_id` FROM $table WHERE `$field`=%s LIMIT 1", $value)
215 215
         );
216 216
 
217 217
 		// Update the cache with our data
218
-		wp_cache_set( $value, $invoice_id, "getpaid_invoice_{$field}s_to_invoice_ids" );
218
+		wp_cache_set($value, $invoice_id, "getpaid_invoice_{$field}s_to_invoice_ids");
219 219
 
220 220
 		return $invoice_id;
221 221
     }
@@ -223,8 +223,8 @@  discard block
 block discarded – undo
223 223
     /**
224 224
      * Checks if an invoice key is set.
225 225
      */
226
-    public function _isset( $key ) {
227
-        return isset( $this->data[$key] ) || method_exists( $this, "get_$key" );
226
+    public function _isset($key) {
227
+        return isset($this->data[$key]) || method_exists($this, "get_$key");
228 228
     }
229 229
 
230 230
     /*
@@ -249,8 +249,8 @@  discard block
 block discarded – undo
249 249
 	 * @param  string $context View or edit context.
250 250
 	 * @return int
251 251
 	 */
252
-	public function get_parent_id( $context = 'view' ) {
253
-		return (int) $this->get_prop( 'parent_id', $context );
252
+	public function get_parent_id($context = 'view') {
253
+		return (int) $this->get_prop('parent_id', $context);
254 254
     }
255 255
 
256 256
     /**
@@ -260,7 +260,7 @@  discard block
 block discarded – undo
260 260
 	 * @return WPInv_Invoice
261 261
 	 */
262 262
     public function get_parent_payment() {
263
-        return new WPInv_Invoice( $this->get_parent_id() );
263
+        return new WPInv_Invoice($this->get_parent_id());
264 264
     }
265 265
 
266 266
     /**
@@ -280,8 +280,8 @@  discard block
 block discarded – undo
280 280
 	 * @param  string $context View or edit context.
281 281
 	 * @return string
282 282
 	 */
283
-	public function get_status( $context = 'view' ) {
284
-		return $this->get_prop( 'status', $context );
283
+	public function get_status($context = 'view') {
284
+		return $this->get_prop('status', $context);
285 285
 	}
286 286
 	
287 287
 	/**
@@ -291,7 +291,7 @@  discard block
 block discarded – undo
291 291
 	 * @return array
292 292
 	 */
293 293
 	public function get_all_statuses() {
294
-		return wpinv_get_invoice_statuses( true, true, $this );
294
+		return wpinv_get_invoice_statuses(true, true, $this);
295 295
     }
296 296
 
297 297
     /**
@@ -303,9 +303,9 @@  discard block
 block discarded – undo
303 303
     public function get_status_nicename() {
304 304
 		$statuses = $this->get_all_statuses();
305 305
 
306
-        $status = isset( $statuses[ $this->get_status() ] ) ? $statuses[ $this->get_status() ] : $this->get_status();
306
+        $status = isset($statuses[$this->get_status()]) ? $statuses[$this->get_status()] : $this->get_status();
307 307
 
308
-        return apply_filters( 'wpinv_get_invoice_status_nicename', $status, $this );
308
+        return apply_filters('wpinv_get_invoice_status_nicename', $status, $this);
309 309
     }
310 310
 
311 311
 	/**
@@ -316,7 +316,7 @@  discard block
 block discarded – undo
316 316
 	 */
317 317
 	public function get_status_class() {
318 318
 		$statuses = getpaid_get_invoice_status_classes();
319
-		return isset( $statuses[ $this->get_status() ] ) ? $statuses[ $this->get_status() ] : 'badge-dark';
319
+		return isset($statuses[$this->get_status()]) ? $statuses[$this->get_status()] : 'badge-dark';
320 320
 	}
321 321
 
322 322
 	/**
@@ -327,9 +327,9 @@  discard block
 block discarded – undo
327 327
      */
328 328
     public function get_status_label_html() {
329 329
 
330
-		$status_label = sanitize_text_field( $this->get_status_nicename() );
331
-		$status       = sanitize_html_class( $this->get_status() );
332
-		$class        = esc_attr( $this->get_status_class() );
330
+		$status_label = sanitize_text_field($this->get_status_nicename());
331
+		$status       = sanitize_html_class($this->get_status());
332
+		$class        = esc_attr($this->get_status_class());
333 333
 
334 334
 		return "<span class='bsui'><span class='badge $class $status'>$status_label</span></span>";
335 335
 	}
@@ -341,23 +341,23 @@  discard block
 block discarded – undo
341 341
 	 * @param  string $context View or edit context.
342 342
 	 * @return string
343 343
 	 */
344
-	public function get_version( $context = 'view' ) {
345
-		return $this->get_prop( 'version', $context );
344
+	public function get_version($context = 'view') {
345
+		return $this->get_prop('version', $context);
346 346
 	}
347 347
 
348 348
 	/**
349 349
 	 * @deprecated
350 350
 	 */
351
-	public function get_invoice_date( $format = true ) {
352
-		$date      = getpaid_format_date( $this->get_date_completed() );
353
-		$date      = empty( $date ) ? $this->get_date_created() : $this->get_date_completed();
354
-		$formatted = getpaid_format_date( $date );
351
+	public function get_invoice_date($format = true) {
352
+		$date      = getpaid_format_date($this->get_date_completed());
353
+		$date      = empty($date) ? $this->get_date_created() : $this->get_date_completed();
354
+		$formatted = getpaid_format_date($date);
355 355
 
356
-		if ( $format ) {
356
+		if ($format) {
357 357
 			return $formatted;
358 358
 		}
359 359
 
360
-		return empty( $formatted ) ? '' : $date;
360
+		return empty($formatted) ? '' : $date;
361 361
 
362 362
     }
363 363
 
@@ -368,8 +368,8 @@  discard block
 block discarded – undo
368 368
 	 * @param  string $context View or edit context.
369 369
 	 * @return string
370 370
 	 */
371
-	public function get_date_created( $context = 'view' ) {
372
-		return $this->get_prop( 'date_created', $context );
371
+	public function get_date_created($context = 'view') {
372
+		return $this->get_prop('date_created', $context);
373 373
 	}
374 374
 	
375 375
 	/**
@@ -379,8 +379,8 @@  discard block
 block discarded – undo
379 379
 	 * @param  string $context View or edit context.
380 380
 	 * @return string
381 381
 	 */
382
-	public function get_created_date( $context = 'view' ) {
383
-		return $this->get_date_created( $context );
382
+	public function get_created_date($context = 'view') {
383
+		return $this->get_date_created($context);
384 384
     }
385 385
 
386 386
     /**
@@ -390,11 +390,11 @@  discard block
 block discarded – undo
390 390
 	 * @param  string $context View or edit context.
391 391
 	 * @return string
392 392
 	 */
393
-	public function get_date_created_gmt( $context = 'view' ) {
394
-        $date = $this->get_date_created( $context );
393
+	public function get_date_created_gmt($context = 'view') {
394
+        $date = $this->get_date_created($context);
395 395
 
396
-        if ( $date ) {
397
-            $date = get_gmt_from_date( $date );
396
+        if ($date) {
397
+            $date = get_gmt_from_date($date);
398 398
         }
399 399
 		return $date;
400 400
     }
@@ -406,8 +406,8 @@  discard block
 block discarded – undo
406 406
 	 * @param  string $context View or edit context.
407 407
 	 * @return string
408 408
 	 */
409
-	public function get_date_modified( $context = 'view' ) {
410
-		return $this->get_prop( 'date_modified', $context );
409
+	public function get_date_modified($context = 'view') {
410
+		return $this->get_prop('date_modified', $context);
411 411
 	}
412 412
 
413 413
 	/**
@@ -417,8 +417,8 @@  discard block
 block discarded – undo
417 417
 	 * @param  string $context View or edit context.
418 418
 	 * @return string
419 419
 	 */
420
-	public function get_modified_date( $context = 'view' ) {
421
-		return $this->get_date_modified( $context );
420
+	public function get_modified_date($context = 'view') {
421
+		return $this->get_date_modified($context);
422 422
     }
423 423
 
424 424
     /**
@@ -428,11 +428,11 @@  discard block
 block discarded – undo
428 428
 	 * @param  string $context View or edit context.
429 429
 	 * @return string
430 430
 	 */
431
-	public function get_date_modified_gmt( $context = 'view' ) {
432
-        $date = $this->get_date_modified( $context );
431
+	public function get_date_modified_gmt($context = 'view') {
432
+        $date = $this->get_date_modified($context);
433 433
 
434
-        if ( $date ) {
435
-            $date = get_gmt_from_date( $date );
434
+        if ($date) {
435
+            $date = get_gmt_from_date($date);
436 436
         }
437 437
 		return $date;
438 438
     }
@@ -444,8 +444,8 @@  discard block
 block discarded – undo
444 444
 	 * @param  string $context View or edit context.
445 445
 	 * @return string
446 446
 	 */
447
-	public function get_due_date( $context = 'view' ) {
448
-		return $this->get_prop( 'due_date', $context );
447
+	public function get_due_date($context = 'view') {
448
+		return $this->get_prop('due_date', $context);
449 449
     }
450 450
 
451 451
     /**
@@ -455,8 +455,8 @@  discard block
 block discarded – undo
455 455
 	 * @param  string $context View or edit context.
456 456
 	 * @return string
457 457
 	 */
458
-	public function get_date_due( $context = 'view' ) {
459
-		return $this->get_due_date( $context );
458
+	public function get_date_due($context = 'view') {
459
+		return $this->get_due_date($context);
460 460
     }
461 461
 
462 462
     /**
@@ -466,11 +466,11 @@  discard block
 block discarded – undo
466 466
 	 * @param  string $context View or edit context.
467 467
 	 * @return string
468 468
 	 */
469
-	public function get_due_date_gmt( $context = 'view' ) {
470
-        $date = $this->get_due_date( $context );
469
+	public function get_due_date_gmt($context = 'view') {
470
+        $date = $this->get_due_date($context);
471 471
 
472
-        if ( $date ) {
473
-            $date = get_gmt_from_date( $date );
472
+        if ($date) {
473
+            $date = get_gmt_from_date($date);
474 474
         }
475 475
 		return $date;
476 476
     }
@@ -482,8 +482,8 @@  discard block
 block discarded – undo
482 482
 	 * @param  string $context View or edit context.
483 483
 	 * @return string
484 484
 	 */
485
-	public function get_gmt_date_due( $context = 'view' ) {
486
-		return $this->get_due_date_gmt( $context );
485
+	public function get_gmt_date_due($context = 'view') {
486
+		return $this->get_due_date_gmt($context);
487 487
     }
488 488
 
489 489
     /**
@@ -493,8 +493,8 @@  discard block
 block discarded – undo
493 493
 	 * @param  string $context View or edit context.
494 494
 	 * @return string
495 495
 	 */
496
-	public function get_completed_date( $context = 'view' ) {
497
-		return $this->get_prop( 'completed_date', $context );
496
+	public function get_completed_date($context = 'view') {
497
+		return $this->get_prop('completed_date', $context);
498 498
     }
499 499
 
500 500
     /**
@@ -504,8 +504,8 @@  discard block
 block discarded – undo
504 504
 	 * @param  string $context View or edit context.
505 505
 	 * @return string
506 506
 	 */
507
-	public function get_date_completed( $context = 'view' ) {
508
-		return $this->get_completed_date( $context );
507
+	public function get_date_completed($context = 'view') {
508
+		return $this->get_completed_date($context);
509 509
     }
510 510
 
511 511
     /**
@@ -515,11 +515,11 @@  discard block
 block discarded – undo
515 515
 	 * @param  string $context View or edit context.
516 516
 	 * @return string
517 517
 	 */
518
-	public function get_completed_date_gmt( $context = 'view' ) {
519
-        $date = $this->get_completed_date( $context );
518
+	public function get_completed_date_gmt($context = 'view') {
519
+        $date = $this->get_completed_date($context);
520 520
 
521
-        if ( $date ) {
522
-            $date = get_gmt_from_date( $date );
521
+        if ($date) {
522
+            $date = get_gmt_from_date($date);
523 523
         }
524 524
 		return $date;
525 525
     }
@@ -531,8 +531,8 @@  discard block
 block discarded – undo
531 531
 	 * @param  string $context View or edit context.
532 532
 	 * @return string
533 533
 	 */
534
-	public function get_gmt_completed_date( $context = 'view' ) {
535
-		return $this->get_completed_date_gmt( $context );
534
+	public function get_gmt_completed_date($context = 'view') {
535
+		return $this->get_completed_date_gmt($context);
536 536
     }
537 537
 
538 538
     /**
@@ -542,12 +542,12 @@  discard block
 block discarded – undo
542 542
 	 * @param  string $context View or edit context.
543 543
 	 * @return string
544 544
 	 */
545
-	public function get_number( $context = 'view' ) {
546
-		$number = $this->get_prop( 'number', $context );
545
+	public function get_number($context = 'view') {
546
+		$number = $this->get_prop('number', $context);
547 547
 
548
-		if ( empty( $number ) ) {
548
+		if (empty($number)) {
549 549
 			$number = $this->generate_number();
550
-			$this->set_number( $this->generate_number() );
550
+			$this->set_number($this->generate_number());
551 551
 		}
552 552
 
553 553
 		return $number;
@@ -561,8 +561,8 @@  discard block
 block discarded – undo
561 561
 	public function maybe_set_number() {
562 562
         $number = $this->get_number();
563 563
 
564
-        if ( empty( $number ) || $this->get_id() == $number ) {
565
-			$this->set_number( $this->generate_number() );
564
+        if (empty($number) || $this->get_id() == $number) {
565
+			$this->set_number($this->generate_number());
566 566
         }
567 567
 
568 568
 	}
@@ -574,8 +574,8 @@  discard block
 block discarded – undo
574 574
 	 * @param  string $context View or edit context.
575 575
 	 * @return string
576 576
 	 */
577
-	public function get_key( $context = 'view' ) {
578
-        return $this->get_prop( 'key', $context );
577
+	public function get_key($context = 'view') {
578
+        return $this->get_prop('key', $context);
579 579
 	}
580 580
 
581 581
 	/**
@@ -586,9 +586,9 @@  discard block
 block discarded – undo
586 586
 	public function maybe_set_key() {
587 587
         $key = $this->get_key();
588 588
 
589
-        if ( empty( $key ) ) {
590
-            $key = $this->generate_key( $this->get_type() . '_' );
591
-            $this->set_key( $key );
589
+        if (empty($key)) {
590
+            $key = $this->generate_key($this->get_type() . '_');
591
+            $this->set_key($key);
592 592
         }
593 593
 
594 594
     }
@@ -600,8 +600,8 @@  discard block
 block discarded – undo
600 600
 	 * @param  string $context View or edit context.
601 601
 	 * @return string
602 602
 	 */
603
-	public function get_type( $context = 'view' ) {
604
-        return $this->get_prop( 'type', $context );
603
+	public function get_type($context = 'view') {
604
+        return $this->get_prop('type', $context);
605 605
 	}
606 606
 
607 607
 	/**
@@ -611,7 +611,7 @@  discard block
 block discarded – undo
611 611
 	 * @return string
612 612
 	 */
613 613
 	public function get_invoice_quote_type() {
614
-        return getpaid_get_post_type_label( $this->get_post_type(), false );
614
+        return getpaid_get_post_type_label($this->get_post_type(), false);
615 615
     }
616 616
 
617 617
     /**
@@ -621,8 +621,8 @@  discard block
 block discarded – undo
621 621
 	 * @param  string $context View or edit context.
622 622
 	 * @return string
623 623
 	 */
624
-	public function get_label( $context = 'view' ) {
625
-        return getpaid_get_post_type_label( $this->get_post_type( $context ), false );
624
+	public function get_label($context = 'view') {
625
+        return getpaid_get_post_type_label($this->get_post_type($context), false);
626 626
 	}
627 627
 
628 628
 	/**
@@ -632,8 +632,8 @@  discard block
 block discarded – undo
632 632
 	 * @param  string $context View or edit context.
633 633
 	 * @return string
634 634
 	 */
635
-	public function get_post_type( $context = 'view' ) {
636
-        return $this->get_prop( 'post_type', $context );
635
+	public function get_post_type($context = 'view') {
636
+        return $this->get_prop('post_type', $context);
637 637
     }
638 638
 
639 639
     /**
@@ -643,8 +643,8 @@  discard block
 block discarded – undo
643 643
 	 * @param  string $context View or edit context.
644 644
 	 * @return string
645 645
 	 */
646
-	public function get_mode( $context = 'view' ) {
647
-        return $this->get_prop( 'mode', $context );
646
+	public function get_mode($context = 'view') {
647
+        return $this->get_prop('mode', $context);
648 648
     }
649 649
 
650 650
     /**
@@ -654,13 +654,13 @@  discard block
 block discarded – undo
654 654
 	 * @param  string $context View or edit context.
655 655
 	 * @return string
656 656
 	 */
657
-	public function get_path( $context = 'view' ) {
658
-        $path   = $this->get_prop( 'path', $context );
657
+	public function get_path($context = 'view') {
658
+        $path = $this->get_prop('path', $context);
659 659
 		$prefix = $this->get_type();
660 660
 
661
-		if ( 0 !== strpos( $path, $prefix ) ) {
662
-			$path = sanitize_title(  $prefix . '-' . $this->get_id()  );
663
-			$this->set_path( $path );
661
+		if (0 !== strpos($path, $prefix)) {
662
+			$path = sanitize_title($prefix . '-' . $this->get_id());
663
+			$this->set_path($path);
664 664
 		}
665 665
 
666 666
 		return $path;
@@ -673,8 +673,8 @@  discard block
 block discarded – undo
673 673
 	 * @param  string $context View or edit context.
674 674
 	 * @return string
675 675
 	 */
676
-	public function get_name( $context = 'view' ) {
677
-        return $this->get_prop( 'title', $context );
676
+	public function get_name($context = 'view') {
677
+        return $this->get_prop('title', $context);
678 678
     }
679 679
 
680 680
     /**
@@ -684,8 +684,8 @@  discard block
 block discarded – undo
684 684
 	 * @param  string $context View or edit context.
685 685
 	 * @return string
686 686
 	 */
687
-	public function get_title( $context = 'view' ) {
688
-		return $this->get_name( $context );
687
+	public function get_title($context = 'view') {
688
+		return $this->get_name($context);
689 689
     }
690 690
 
691 691
     /**
@@ -695,8 +695,8 @@  discard block
 block discarded – undo
695 695
 	 * @param  string $context View or edit context.
696 696
 	 * @return string
697 697
 	 */
698
-	public function get_description( $context = 'view' ) {
699
-		return $this->get_prop( 'description', $context );
698
+	public function get_description($context = 'view') {
699
+		return $this->get_prop('description', $context);
700 700
     }
701 701
 
702 702
     /**
@@ -706,8 +706,8 @@  discard block
 block discarded – undo
706 706
 	 * @param  string $context View or edit context.
707 707
 	 * @return string
708 708
 	 */
709
-	public function get_excerpt( $context = 'view' ) {
710
-		return $this->get_description( $context );
709
+	public function get_excerpt($context = 'view') {
710
+		return $this->get_description($context);
711 711
     }
712 712
 
713 713
     /**
@@ -717,8 +717,8 @@  discard block
 block discarded – undo
717 717
 	 * @param  string $context View or edit context.
718 718
 	 * @return string
719 719
 	 */
720
-	public function get_summary( $context = 'view' ) {
721
-		return $this->get_description( $context );
720
+	public function get_summary($context = 'view') {
721
+		return $this->get_description($context);
722 722
     }
723 723
 
724 724
     /**
@@ -728,25 +728,25 @@  discard block
 block discarded – undo
728 728
      * @param  string $context View or edit context.
729 729
 	 * @return array
730 730
 	 */
731
-    public function get_user_info( $context = 'view' ) {
731
+    public function get_user_info($context = 'view') {
732 732
 
733 733
         $user_info = array(
734
-            'user_id'    => $this->get_user_id( $context ),
735
-            'email'      => $this->get_email( $context ),
736
-            'first_name' => $this->get_first_name( $context ),
737
-            'last_name'  => $this->get_last_name( $context ),
738
-            'address'    => $this->get_address( $context ),
739
-            'phone'      => $this->get_phone( $context ),
740
-            'city'       => $this->get_city( $context ),
741
-            'country'    => $this->get_country( $context ),
742
-            'state'      => $this->get_state( $context ),
743
-            'zip'        => $this->get_zip( $context ),
744
-            'company'    => $this->get_company( $context ),
745
-            'vat_number' => $this->get_vat_number( $context ),
746
-            'discount'   => $this->get_discount_code( $context ),
734
+            'user_id'    => $this->get_user_id($context),
735
+            'email'      => $this->get_email($context),
736
+            'first_name' => $this->get_first_name($context),
737
+            'last_name'  => $this->get_last_name($context),
738
+            'address'    => $this->get_address($context),
739
+            'phone'      => $this->get_phone($context),
740
+            'city'       => $this->get_city($context),
741
+            'country'    => $this->get_country($context),
742
+            'state'      => $this->get_state($context),
743
+            'zip'        => $this->get_zip($context),
744
+            'company'    => $this->get_company($context),
745
+            'vat_number' => $this->get_vat_number($context),
746
+            'discount'   => $this->get_discount_code($context),
747 747
 		);
748 748
 
749
-		return apply_filters( 'wpinv_user_info', $user_info, $this->get_id(), $this );
749
+		return apply_filters('wpinv_user_info', $user_info, $this->get_id(), $this);
750 750
 
751 751
     }
752 752
 
@@ -757,8 +757,8 @@  discard block
 block discarded – undo
757 757
 	 * @param  string $context View or edit context.
758 758
 	 * @return int
759 759
 	 */
760
-	public function get_author( $context = 'view' ) {
761
-		return (int) $this->get_prop( 'author', $context );
760
+	public function get_author($context = 'view') {
761
+		return (int) $this->get_prop('author', $context);
762 762
     }
763 763
 
764 764
     /**
@@ -768,8 +768,8 @@  discard block
 block discarded – undo
768 768
 	 * @param  string $context View or edit context.
769 769
 	 * @return int
770 770
 	 */
771
-	public function get_user_id( $context = 'view' ) {
772
-		return $this->get_author( $context );
771
+	public function get_user_id($context = 'view') {
772
+		return $this->get_author($context);
773 773
     }
774 774
 
775 775
      /**
@@ -779,8 +779,8 @@  discard block
 block discarded – undo
779 779
 	 * @param  string $context View or edit context.
780 780
 	 * @return int
781 781
 	 */
782
-	public function get_customer_id( $context = 'view' ) {
783
-		return $this->get_author( $context );
782
+	public function get_customer_id($context = 'view') {
783
+		return $this->get_author($context);
784 784
     }
785 785
 
786 786
     /**
@@ -790,8 +790,8 @@  discard block
 block discarded – undo
790 790
 	 * @param  string $context View or edit context.
791 791
 	 * @return string
792 792
 	 */
793
-	public function get_ip( $context = 'view' ) {
794
-		return $this->get_prop( 'user_ip', $context );
793
+	public function get_ip($context = 'view') {
794
+		return $this->get_prop('user_ip', $context);
795 795
     }
796 796
 
797 797
     /**
@@ -801,8 +801,8 @@  discard block
 block discarded – undo
801 801
 	 * @param  string $context View or edit context.
802 802
 	 * @return string
803 803
 	 */
804
-	public function get_user_ip( $context = 'view' ) {
805
-		return $this->get_ip( $context );
804
+	public function get_user_ip($context = 'view') {
805
+		return $this->get_ip($context);
806 806
     }
807 807
 
808 808
      /**
@@ -812,8 +812,8 @@  discard block
 block discarded – undo
812 812
 	 * @param  string $context View or edit context.
813 813
 	 * @return string
814 814
 	 */
815
-	public function get_customer_ip( $context = 'view' ) {
816
-		return $this->get_ip( $context );
815
+	public function get_customer_ip($context = 'view') {
816
+		return $this->get_ip($context);
817 817
     }
818 818
 
819 819
     /**
@@ -823,8 +823,8 @@  discard block
 block discarded – undo
823 823
 	 * @param  string $context View or edit context.
824 824
 	 * @return string
825 825
 	 */
826
-	public function get_first_name( $context = 'view' ) {
827
-		return $this->get_prop( 'first_name', $context );
826
+	public function get_first_name($context = 'view') {
827
+		return $this->get_prop('first_name', $context);
828 828
     }
829 829
 
830 830
     /**
@@ -834,8 +834,8 @@  discard block
 block discarded – undo
834 834
 	 * @param  string $context View or edit context.
835 835
 	 * @return string
836 836
 	 */
837
-	public function get_user_first_name( $context = 'view' ) {
838
-		return $this->get_first_name( $context );
837
+	public function get_user_first_name($context = 'view') {
838
+		return $this->get_first_name($context);
839 839
     }
840 840
 
841 841
      /**
@@ -845,8 +845,8 @@  discard block
 block discarded – undo
845 845
 	 * @param  string $context View or edit context.
846 846
 	 * @return string
847 847
 	 */
848
-	public function get_customer_first_name( $context = 'view' ) {
849
-		return $this->get_first_name( $context );
848
+	public function get_customer_first_name($context = 'view') {
849
+		return $this->get_first_name($context);
850 850
     }
851 851
 
852 852
     /**
@@ -856,8 +856,8 @@  discard block
 block discarded – undo
856 856
 	 * @param  string $context View or edit context.
857 857
 	 * @return string
858 858
 	 */
859
-	public function get_last_name( $context = 'view' ) {
860
-		return $this->get_prop( 'last_name', $context );
859
+	public function get_last_name($context = 'view') {
860
+		return $this->get_prop('last_name', $context);
861 861
     }
862 862
 
863 863
     /**
@@ -867,8 +867,8 @@  discard block
 block discarded – undo
867 867
 	 * @param  string $context View or edit context.
868 868
 	 * @return string
869 869
 	 */
870
-	public function get_user_last_name( $context = 'view' ) {
871
-		return $this->get_last_name( $context );
870
+	public function get_user_last_name($context = 'view') {
871
+		return $this->get_last_name($context);
872 872
     }
873 873
 
874 874
     /**
@@ -878,8 +878,8 @@  discard block
 block discarded – undo
878 878
 	 * @param  string $context View or edit context.
879 879
 	 * @return string
880 880
 	 */
881
-	public function get_customer_last_name( $context = 'view' ) {
882
-		return $this->get_last_name( $context );
881
+	public function get_customer_last_name($context = 'view') {
882
+		return $this->get_last_name($context);
883 883
     }
884 884
 
885 885
     /**
@@ -889,8 +889,8 @@  discard block
 block discarded – undo
889 889
 	 * @param  string $context View or edit context.
890 890
 	 * @return string
891 891
 	 */
892
-	public function get_full_name( $context = 'view' ) {
893
-		return trim( $this->get_first_name( $context ) . ' ' . $this->get_last_name( $context ) );
892
+	public function get_full_name($context = 'view') {
893
+		return trim($this->get_first_name($context) . ' ' . $this->get_last_name($context));
894 894
     }
895 895
 
896 896
     /**
@@ -900,8 +900,8 @@  discard block
 block discarded – undo
900 900
 	 * @param  string $context View or edit context.
901 901
 	 * @return string
902 902
 	 */
903
-	public function get_user_full_name( $context = 'view' ) {
904
-		return $this->get_full_name( $context );
903
+	public function get_user_full_name($context = 'view') {
904
+		return $this->get_full_name($context);
905 905
     }
906 906
 
907 907
     /**
@@ -911,8 +911,8 @@  discard block
 block discarded – undo
911 911
 	 * @param  string $context View or edit context.
912 912
 	 * @return string
913 913
 	 */
914
-	public function get_customer_full_name( $context = 'view' ) {
915
-		return $this->get_full_name( $context );
914
+	public function get_customer_full_name($context = 'view') {
915
+		return $this->get_full_name($context);
916 916
     }
917 917
 
918 918
     /**
@@ -922,8 +922,8 @@  discard block
 block discarded – undo
922 922
 	 * @param  string $context View or edit context.
923 923
 	 * @return string
924 924
 	 */
925
-	public function get_phone( $context = 'view' ) {
926
-		return $this->get_prop( 'phone', $context );
925
+	public function get_phone($context = 'view') {
926
+		return $this->get_prop('phone', $context);
927 927
     }
928 928
 
929 929
     /**
@@ -933,8 +933,8 @@  discard block
 block discarded – undo
933 933
 	 * @param  string $context View or edit context.
934 934
 	 * @return string
935 935
 	 */
936
-	public function get_phone_number( $context = 'view' ) {
937
-		return $this->get_phone( $context );
936
+	public function get_phone_number($context = 'view') {
937
+		return $this->get_phone($context);
938 938
     }
939 939
 
940 940
     /**
@@ -944,8 +944,8 @@  discard block
 block discarded – undo
944 944
 	 * @param  string $context View or edit context.
945 945
 	 * @return string
946 946
 	 */
947
-	public function get_user_phone( $context = 'view' ) {
948
-		return $this->get_phone( $context );
947
+	public function get_user_phone($context = 'view') {
948
+		return $this->get_phone($context);
949 949
     }
950 950
 
951 951
     /**
@@ -955,8 +955,8 @@  discard block
 block discarded – undo
955 955
 	 * @param  string $context View or edit context.
956 956
 	 * @return string
957 957
 	 */
958
-	public function get_customer_phone( $context = 'view' ) {
959
-		return $this->get_phone( $context );
958
+	public function get_customer_phone($context = 'view') {
959
+		return $this->get_phone($context);
960 960
     }
961 961
 
962 962
     /**
@@ -966,8 +966,8 @@  discard block
 block discarded – undo
966 966
 	 * @param  string $context View or edit context.
967 967
 	 * @return string
968 968
 	 */
969
-	public function get_email( $context = 'view' ) {
970
-		return $this->get_prop( 'email', $context );
969
+	public function get_email($context = 'view') {
970
+		return $this->get_prop('email', $context);
971 971
     }
972 972
 
973 973
     /**
@@ -977,8 +977,8 @@  discard block
 block discarded – undo
977 977
 	 * @param  string $context View or edit context.
978 978
 	 * @return string
979 979
 	 */
980
-	public function get_email_address( $context = 'view' ) {
981
-		return $this->get_email( $context );
980
+	public function get_email_address($context = 'view') {
981
+		return $this->get_email($context);
982 982
     }
983 983
 
984 984
     /**
@@ -988,8 +988,8 @@  discard block
 block discarded – undo
988 988
 	 * @param  string $context View or edit context.
989 989
 	 * @return string
990 990
 	 */
991
-	public function get_user_email( $context = 'view' ) {
992
-		return $this->get_email( $context );
991
+	public function get_user_email($context = 'view') {
992
+		return $this->get_email($context);
993 993
     }
994 994
 
995 995
     /**
@@ -999,8 +999,8 @@  discard block
 block discarded – undo
999 999
 	 * @param  string $context View or edit context.
1000 1000
 	 * @return string
1001 1001
 	 */
1002
-	public function get_customer_email( $context = 'view' ) {
1003
-		return $this->get_email( $context );
1002
+	public function get_customer_email($context = 'view') {
1003
+		return $this->get_email($context);
1004 1004
     }
1005 1005
 
1006 1006
     /**
@@ -1010,9 +1010,9 @@  discard block
 block discarded – undo
1010 1010
 	 * @param  string $context View or edit context.
1011 1011
 	 * @return string
1012 1012
 	 */
1013
-	public function get_country( $context = 'view' ) {
1014
-		$country = $this->get_prop( 'country', $context );
1015
-		return empty( $country ) ? wpinv_get_default_country() : $country;
1013
+	public function get_country($context = 'view') {
1014
+		$country = $this->get_prop('country', $context);
1015
+		return empty($country) ? wpinv_get_default_country() : $country;
1016 1016
     }
1017 1017
 
1018 1018
     /**
@@ -1022,8 +1022,8 @@  discard block
 block discarded – undo
1022 1022
 	 * @param  string $context View or edit context.
1023 1023
 	 * @return string
1024 1024
 	 */
1025
-	public function get_user_country( $context = 'view' ) {
1026
-		return $this->get_country( $context );
1025
+	public function get_user_country($context = 'view') {
1026
+		return $this->get_country($context);
1027 1027
     }
1028 1028
 
1029 1029
     /**
@@ -1033,8 +1033,8 @@  discard block
 block discarded – undo
1033 1033
 	 * @param  string $context View or edit context.
1034 1034
 	 * @return string
1035 1035
 	 */
1036
-	public function get_customer_country( $context = 'view' ) {
1037
-		return $this->get_country( $context );
1036
+	public function get_customer_country($context = 'view') {
1037
+		return $this->get_country($context);
1038 1038
     }
1039 1039
 
1040 1040
     /**
@@ -1044,9 +1044,9 @@  discard block
 block discarded – undo
1044 1044
 	 * @param  string $context View or edit context.
1045 1045
 	 * @return string
1046 1046
 	 */
1047
-	public function get_state( $context = 'view' ) {
1048
-		$state = $this->get_prop( 'state', $context );
1049
-		return empty( $state ) ? wpinv_get_default_state() : $state;
1047
+	public function get_state($context = 'view') {
1048
+		$state = $this->get_prop('state', $context);
1049
+		return empty($state) ? wpinv_get_default_state() : $state;
1050 1050
     }
1051 1051
 
1052 1052
     /**
@@ -1056,8 +1056,8 @@  discard block
 block discarded – undo
1056 1056
 	 * @param  string $context View or edit context.
1057 1057
 	 * @return string
1058 1058
 	 */
1059
-	public function get_user_state( $context = 'view' ) {
1060
-		return $this->get_state( $context );
1059
+	public function get_user_state($context = 'view') {
1060
+		return $this->get_state($context);
1061 1061
     }
1062 1062
 
1063 1063
     /**
@@ -1067,8 +1067,8 @@  discard block
 block discarded – undo
1067 1067
 	 * @param  string $context View or edit context.
1068 1068
 	 * @return string
1069 1069
 	 */
1070
-	public function get_customer_state( $context = 'view' ) {
1071
-		return $this->get_state( $context );
1070
+	public function get_customer_state($context = 'view') {
1071
+		return $this->get_state($context);
1072 1072
     }
1073 1073
 
1074 1074
     /**
@@ -1078,8 +1078,8 @@  discard block
 block discarded – undo
1078 1078
 	 * @param  string $context View or edit context.
1079 1079
 	 * @return string
1080 1080
 	 */
1081
-	public function get_city( $context = 'view' ) {
1082
-		return $this->get_prop( 'city', $context );
1081
+	public function get_city($context = 'view') {
1082
+		return $this->get_prop('city', $context);
1083 1083
     }
1084 1084
 
1085 1085
     /**
@@ -1089,8 +1089,8 @@  discard block
 block discarded – undo
1089 1089
 	 * @param  string $context View or edit context.
1090 1090
 	 * @return string
1091 1091
 	 */
1092
-	public function get_user_city( $context = 'view' ) {
1093
-		return $this->get_city( $context );
1092
+	public function get_user_city($context = 'view') {
1093
+		return $this->get_city($context);
1094 1094
     }
1095 1095
 
1096 1096
     /**
@@ -1100,8 +1100,8 @@  discard block
 block discarded – undo
1100 1100
 	 * @param  string $context View or edit context.
1101 1101
 	 * @return string
1102 1102
 	 */
1103
-	public function get_customer_city( $context = 'view' ) {
1104
-		return $this->get_city( $context );
1103
+	public function get_customer_city($context = 'view') {
1104
+		return $this->get_city($context);
1105 1105
     }
1106 1106
 
1107 1107
     /**
@@ -1111,8 +1111,8 @@  discard block
 block discarded – undo
1111 1111
 	 * @param  string $context View or edit context.
1112 1112
 	 * @return string
1113 1113
 	 */
1114
-	public function get_zip( $context = 'view' ) {
1115
-		return $this->get_prop( 'zip', $context );
1114
+	public function get_zip($context = 'view') {
1115
+		return $this->get_prop('zip', $context);
1116 1116
     }
1117 1117
 
1118 1118
     /**
@@ -1122,8 +1122,8 @@  discard block
 block discarded – undo
1122 1122
 	 * @param  string $context View or edit context.
1123 1123
 	 * @return string
1124 1124
 	 */
1125
-	public function get_user_zip( $context = 'view' ) {
1126
-		return $this->get_zip( $context );
1125
+	public function get_user_zip($context = 'view') {
1126
+		return $this->get_zip($context);
1127 1127
     }
1128 1128
 
1129 1129
     /**
@@ -1133,8 +1133,8 @@  discard block
 block discarded – undo
1133 1133
 	 * @param  string $context View or edit context.
1134 1134
 	 * @return string
1135 1135
 	 */
1136
-	public function get_customer_zip( $context = 'view' ) {
1137
-		return $this->get_zip( $context );
1136
+	public function get_customer_zip($context = 'view') {
1137
+		return $this->get_zip($context);
1138 1138
     }
1139 1139
 
1140 1140
     /**
@@ -1144,8 +1144,8 @@  discard block
 block discarded – undo
1144 1144
 	 * @param  string $context View or edit context.
1145 1145
 	 * @return string
1146 1146
 	 */
1147
-	public function get_company( $context = 'view' ) {
1148
-		return $this->get_prop( 'company', $context );
1147
+	public function get_company($context = 'view') {
1148
+		return $this->get_prop('company', $context);
1149 1149
     }
1150 1150
 
1151 1151
     /**
@@ -1155,8 +1155,8 @@  discard block
 block discarded – undo
1155 1155
 	 * @param  string $context View or edit context.
1156 1156
 	 * @return string
1157 1157
 	 */
1158
-	public function get_user_company( $context = 'view' ) {
1159
-		return $this->get_company( $context );
1158
+	public function get_user_company($context = 'view') {
1159
+		return $this->get_company($context);
1160 1160
     }
1161 1161
 
1162 1162
     /**
@@ -1166,8 +1166,8 @@  discard block
 block discarded – undo
1166 1166
 	 * @param  string $context View or edit context.
1167 1167
 	 * @return string
1168 1168
 	 */
1169
-	public function get_customer_company( $context = 'view' ) {
1170
-		return $this->get_company( $context );
1169
+	public function get_customer_company($context = 'view') {
1170
+		return $this->get_company($context);
1171 1171
     }
1172 1172
 
1173 1173
     /**
@@ -1177,8 +1177,8 @@  discard block
 block discarded – undo
1177 1177
 	 * @param  string $context View or edit context.
1178 1178
 	 * @return string
1179 1179
 	 */
1180
-	public function get_vat_number( $context = 'view' ) {
1181
-		return $this->get_prop( 'vat_number', $context );
1180
+	public function get_vat_number($context = 'view') {
1181
+		return $this->get_prop('vat_number', $context);
1182 1182
     }
1183 1183
 
1184 1184
     /**
@@ -1188,8 +1188,8 @@  discard block
 block discarded – undo
1188 1188
 	 * @param  string $context View or edit context.
1189 1189
 	 * @return string
1190 1190
 	 */
1191
-	public function get_user_vat_number( $context = 'view' ) {
1192
-		return $this->get_vat_number( $context );
1191
+	public function get_user_vat_number($context = 'view') {
1192
+		return $this->get_vat_number($context);
1193 1193
     }
1194 1194
 
1195 1195
     /**
@@ -1199,8 +1199,8 @@  discard block
 block discarded – undo
1199 1199
 	 * @param  string $context View or edit context.
1200 1200
 	 * @return string
1201 1201
 	 */
1202
-	public function get_customer_vat_number( $context = 'view' ) {
1203
-		return $this->get_vat_number( $context );
1202
+	public function get_customer_vat_number($context = 'view') {
1203
+		return $this->get_vat_number($context);
1204 1204
     }
1205 1205
 
1206 1206
     /**
@@ -1210,8 +1210,8 @@  discard block
 block discarded – undo
1210 1210
 	 * @param  string $context View or edit context.
1211 1211
 	 * @return string
1212 1212
 	 */
1213
-	public function get_vat_rate( $context = 'view' ) {
1214
-		return $this->get_prop( 'vat_rate', $context );
1213
+	public function get_vat_rate($context = 'view') {
1214
+		return $this->get_prop('vat_rate', $context);
1215 1215
     }
1216 1216
 
1217 1217
     /**
@@ -1221,8 +1221,8 @@  discard block
 block discarded – undo
1221 1221
 	 * @param  string $context View or edit context.
1222 1222
 	 * @return string
1223 1223
 	 */
1224
-	public function get_user_vat_rate( $context = 'view' ) {
1225
-		return $this->get_vat_rate( $context );
1224
+	public function get_user_vat_rate($context = 'view') {
1225
+		return $this->get_vat_rate($context);
1226 1226
     }
1227 1227
 
1228 1228
     /**
@@ -1232,8 +1232,8 @@  discard block
 block discarded – undo
1232 1232
 	 * @param  string $context View or edit context.
1233 1233
 	 * @return string
1234 1234
 	 */
1235
-	public function get_customer_vat_rate( $context = 'view' ) {
1236
-		return $this->get_vat_rate( $context );
1235
+	public function get_customer_vat_rate($context = 'view') {
1236
+		return $this->get_vat_rate($context);
1237 1237
     }
1238 1238
 
1239 1239
     /**
@@ -1243,8 +1243,8 @@  discard block
 block discarded – undo
1243 1243
 	 * @param  string $context View or edit context.
1244 1244
 	 * @return string
1245 1245
 	 */
1246
-	public function get_address( $context = 'view' ) {
1247
-		return $this->get_prop( 'address', $context );
1246
+	public function get_address($context = 'view') {
1247
+		return $this->get_prop('address', $context);
1248 1248
     }
1249 1249
 
1250 1250
     /**
@@ -1254,8 +1254,8 @@  discard block
 block discarded – undo
1254 1254
 	 * @param  string $context View or edit context.
1255 1255
 	 * @return string
1256 1256
 	 */
1257
-	public function get_user_address( $context = 'view' ) {
1258
-		return $this->get_address( $context );
1257
+	public function get_user_address($context = 'view') {
1258
+		return $this->get_address($context);
1259 1259
     }
1260 1260
 
1261 1261
     /**
@@ -1265,8 +1265,8 @@  discard block
 block discarded – undo
1265 1265
 	 * @param  string $context View or edit context.
1266 1266
 	 * @return string
1267 1267
 	 */
1268
-	public function get_customer_address( $context = 'view' ) {
1269
-		return $this->get_address( $context );
1268
+	public function get_customer_address($context = 'view') {
1269
+		return $this->get_address($context);
1270 1270
     }
1271 1271
 
1272 1272
     /**
@@ -1276,8 +1276,8 @@  discard block
 block discarded – undo
1276 1276
 	 * @param  string $context View or edit context.
1277 1277
 	 * @return bool
1278 1278
 	 */
1279
-	public function get_is_viewed( $context = 'view' ) {
1280
-		return (bool) $this->get_prop( 'is_viewed', $context );
1279
+	public function get_is_viewed($context = 'view') {
1280
+		return (bool) $this->get_prop('is_viewed', $context);
1281 1281
 	}
1282 1282
 
1283 1283
 	/**
@@ -1287,8 +1287,8 @@  discard block
 block discarded – undo
1287 1287
 	 * @param  string $context View or edit context.
1288 1288
 	 * @return bool
1289 1289
 	 */
1290
-	public function get_email_cc( $context = 'view' ) {
1291
-		return $this->get_prop( 'email_cc', $context );
1290
+	public function get_email_cc($context = 'view') {
1291
+		return $this->get_prop('email_cc', $context);
1292 1292
 	}
1293 1293
 
1294 1294
 	/**
@@ -1298,8 +1298,8 @@  discard block
 block discarded – undo
1298 1298
 	 * @param  string $context View or edit context.
1299 1299
 	 * @return bool
1300 1300
 	 */
1301
-	public function get_template( $context = 'view' ) {
1302
-		return $this->get_prop( 'template', $context );
1301
+	public function get_template($context = 'view') {
1302
+		return $this->get_prop('template', $context);
1303 1303
 	}
1304 1304
 
1305 1305
 	/**
@@ -1309,8 +1309,8 @@  discard block
 block discarded – undo
1309 1309
 	 * @param  string $context View or edit context.
1310 1310
 	 * @return bool
1311 1311
 	 */
1312
-	public function get_created_via( $context = 'view' ) {
1313
-		return $this->get_prop( 'created_via', $context );
1312
+	public function get_created_via($context = 'view') {
1313
+		return $this->get_prop('created_via', $context);
1314 1314
 	}
1315 1315
 
1316 1316
 	/**
@@ -1320,8 +1320,8 @@  discard block
 block discarded – undo
1320 1320
 	 * @param  string $context View or edit context.
1321 1321
 	 * @return bool
1322 1322
 	 */
1323
-	public function get_address_confirmed( $context = 'view' ) {
1324
-		return (bool) $this->get_prop( 'address_confirmed', $context );
1323
+	public function get_address_confirmed($context = 'view') {
1324
+		return (bool) $this->get_prop('address_confirmed', $context);
1325 1325
     }
1326 1326
 
1327 1327
     /**
@@ -1331,8 +1331,8 @@  discard block
 block discarded – undo
1331 1331
 	 * @param  string $context View or edit context.
1332 1332
 	 * @return bool
1333 1333
 	 */
1334
-	public function get_user_address_confirmed( $context = 'view' ) {
1335
-		return $this->get_address_confirmed( $context );
1334
+	public function get_user_address_confirmed($context = 'view') {
1335
+		return $this->get_address_confirmed($context);
1336 1336
     }
1337 1337
 
1338 1338
     /**
@@ -1342,8 +1342,8 @@  discard block
 block discarded – undo
1342 1342
 	 * @param  string $context View or edit context.
1343 1343
 	 * @return bool
1344 1344
 	 */
1345
-	public function get_customer_address_confirmed( $context = 'view' ) {
1346
-		return $this->get_address_confirmed( $context );
1345
+	public function get_customer_address_confirmed($context = 'view') {
1346
+		return $this->get_address_confirmed($context);
1347 1347
     }
1348 1348
 
1349 1349
     /**
@@ -1353,12 +1353,12 @@  discard block
 block discarded – undo
1353 1353
 	 * @param  string $context View or edit context.
1354 1354
 	 * @return float
1355 1355
 	 */
1356
-	public function get_subtotal( $context = 'view' ) {
1357
-        $subtotal = (float) $this->get_prop( 'subtotal', $context );
1356
+	public function get_subtotal($context = 'view') {
1357
+        $subtotal = (float) $this->get_prop('subtotal', $context);
1358 1358
 
1359 1359
         // Backwards compatibility.
1360
-        if ( is_bool( $context ) && $context ) {
1361
-            return wpinv_price( $subtotal, $this->get_currency() );
1360
+        if (is_bool($context) && $context) {
1361
+            return wpinv_price($subtotal, $this->get_currency());
1362 1362
         }
1363 1363
 
1364 1364
         return $subtotal;
@@ -1371,8 +1371,8 @@  discard block
 block discarded – undo
1371 1371
 	 * @param  string $context View or edit context.
1372 1372
 	 * @return float
1373 1373
 	 */
1374
-	public function get_total_discount( $context = 'view' ) {
1375
-		return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_discount', $context ) ) );
1374
+	public function get_total_discount($context = 'view') {
1375
+		return wpinv_round_amount(wpinv_sanitize_amount($this->get_prop('total_discount', $context)));
1376 1376
     }
1377 1377
 
1378 1378
     /**
@@ -1382,18 +1382,18 @@  discard block
 block discarded – undo
1382 1382
 	 * @param  string $context View or edit context.
1383 1383
 	 * @return float
1384 1384
 	 */
1385
-	public function get_total_tax( $context = 'view' ) {
1386
-		return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_tax', $context ) ) );
1385
+	public function get_total_tax($context = 'view') {
1386
+		return wpinv_round_amount(wpinv_sanitize_amount($this->get_prop('total_tax', $context)));
1387 1387
 	}
1388 1388
 
1389 1389
 	/**
1390 1390
 	 * @deprecated
1391 1391
 	 */
1392
-	public function get_final_tax( $currency = false ) {
1392
+	public function get_final_tax($currency = false) {
1393 1393
 		$tax = $this->get_total_tax();
1394 1394
 
1395
-        if ( $currency ) {
1396
-			return wpinv_price( $tax, $this->get_currency() );
1395
+        if ($currency) {
1396
+			return wpinv_price($tax, $this->get_currency());
1397 1397
         }
1398 1398
 
1399 1399
         return $tax;
@@ -1406,8 +1406,8 @@  discard block
 block discarded – undo
1406 1406
 	 * @param  string $context View or edit context.
1407 1407
 	 * @return float
1408 1408
 	 */
1409
-	public function get_total_fees( $context = 'view' ) {
1410
-		return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total_fees', $context ) ) );
1409
+	public function get_total_fees($context = 'view') {
1410
+		return wpinv_round_amount(wpinv_sanitize_amount($this->get_prop('total_fees', $context)));
1411 1411
     }
1412 1412
 
1413 1413
     /**
@@ -1417,8 +1417,8 @@  discard block
 block discarded – undo
1417 1417
 	 * @param  string $context View or edit context.
1418 1418
 	 * @return float
1419 1419
 	 */
1420
-	public function get_fees_total( $context = 'view' ) {
1421
-		return $this->get_total_fees( $context );
1420
+	public function get_fees_total($context = 'view') {
1421
+		return $this->get_total_fees($context);
1422 1422
     }
1423 1423
 
1424 1424
     /**
@@ -1427,8 +1427,8 @@  discard block
 block discarded – undo
1427 1427
 	 * @since 1.0.19
1428 1428
      * @return float
1429 1429
 	 */
1430
-	public function get_total( $context = 'view' ) {
1431
-		return wpinv_round_amount( wpinv_sanitize_amount( $this->get_prop( 'total', $context ) ) );
1430
+	public function get_total($context = 'view') {
1431
+		return wpinv_round_amount(wpinv_sanitize_amount($this->get_prop('total', $context)));
1432 1432
 	}
1433 1433
 
1434 1434
 	/**
@@ -1450,7 +1450,7 @@  discard block
 block discarded – undo
1450 1450
 	 */
1451 1451
     public function get_initial_total() {
1452 1452
 
1453
-		if ( empty( $this->totals ) ) {
1453
+		if (empty($this->totals)) {
1454 1454
 			$this->recalculate_total();
1455 1455
 		}
1456 1456
 
@@ -1460,12 +1460,12 @@  discard block
 block discarded – undo
1460 1460
 		$subtotal = $this->totals['subtotal']['initial'];
1461 1461
 		$total    = $tax + $fee - $discount + $subtotal;
1462 1462
 
1463
-		if ( 0 > $total ) {
1463
+		if (0 > $total) {
1464 1464
 			$total = 0;
1465 1465
 		}
1466 1466
 
1467
-		$total = wpinv_round_amount( wpinv_sanitize_amount( $total ) );
1468
-        return apply_filters( 'wpinv_get_initial_invoice_total', $total, $this );
1467
+		$total = wpinv_round_amount(wpinv_sanitize_amount($total));
1468
+        return apply_filters('wpinv_get_initial_invoice_total', $total, $this);
1469 1469
 	}
1470 1470
 
1471 1471
 	/**
@@ -1477,7 +1477,7 @@  discard block
 block discarded – undo
1477 1477
 	 */
1478 1478
     public function get_recurring_total() {
1479 1479
 
1480
-		if ( empty( $this->totals ) ) {
1480
+		if (empty($this->totals)) {
1481 1481
 			$this->recalculate_total();
1482 1482
 		}
1483 1483
 
@@ -1487,12 +1487,12 @@  discard block
 block discarded – undo
1487 1487
 		$subtotal = $this->totals['subtotal']['recurring'];
1488 1488
 		$total    = $tax + $fee - $discount + $subtotal;
1489 1489
 
1490
-		if ( 0 > $total ) {
1490
+		if (0 > $total) {
1491 1491
 			$total = 0;
1492 1492
 		}
1493 1493
 
1494
-		$total = wpinv_round_amount( wpinv_sanitize_amount( $total ) );
1495
-        return apply_filters( 'wpinv_get_recurring_invoice_total', $total, $this );
1494
+		$total = wpinv_round_amount(wpinv_sanitize_amount($total));
1495
+        return apply_filters('wpinv_get_recurring_invoice_total', $total, $this);
1496 1496
 	}
1497 1497
 
1498 1498
 	/**
@@ -1503,10 +1503,10 @@  discard block
 block discarded – undo
1503 1503
 	 * @param string $currency Whether to include the currency.
1504 1504
      * @return float|string
1505 1505
 	 */
1506
-    public function get_recurring_details( $field = '', $currency = false ) {
1506
+    public function get_recurring_details($field = '', $currency = false) {
1507 1507
 
1508 1508
 		// Maybe recalculate totals.
1509
-		if ( empty( $this->totals ) ) {
1509
+		if (empty($this->totals)) {
1510 1510
 			$this->recalculate_total();
1511 1511
 		}
1512 1512
 
@@ -1526,8 +1526,8 @@  discard block
 block discarded – undo
1526 1526
 			$currency
1527 1527
 		);
1528 1528
 
1529
-        if ( isset( $data[$field] ) ) {
1530
-            return ( $currency ? wpinv_price( $data[$field], $this->get_currency() ) : $data[$field] );
1529
+        if (isset($data[$field])) {
1530
+            return ($currency ? wpinv_price($data[$field], $this->get_currency()) : $data[$field]);
1531 1531
         }
1532 1532
 
1533 1533
         return $data;
@@ -1540,8 +1540,8 @@  discard block
 block discarded – undo
1540 1540
 	 * @param  string $context View or edit context.
1541 1541
 	 * @return array
1542 1542
 	 */
1543
-	public function get_fees( $context = 'view' ) {
1544
-		return wpinv_parse_list( $this->get_prop( 'fees', $context ) );
1543
+	public function get_fees($context = 'view') {
1544
+		return wpinv_parse_list($this->get_prop('fees', $context));
1545 1545
     }
1546 1546
 
1547 1547
     /**
@@ -1551,8 +1551,8 @@  discard block
 block discarded – undo
1551 1551
 	 * @param  string $context View or edit context.
1552 1552
 	 * @return array
1553 1553
 	 */
1554
-	public function get_discounts( $context = 'view' ) {
1555
-		return wpinv_parse_list( $this->get_prop( 'discounts', $context ) );
1554
+	public function get_discounts($context = 'view') {
1555
+		return wpinv_parse_list($this->get_prop('discounts', $context));
1556 1556
     }
1557 1557
 
1558 1558
     /**
@@ -1562,8 +1562,8 @@  discard block
 block discarded – undo
1562 1562
 	 * @param  string $context View or edit context.
1563 1563
 	 * @return array
1564 1564
 	 */
1565
-	public function get_taxes( $context = 'view' ) {
1566
-		return wpinv_parse_list( $this->get_prop( 'taxes', $context ) );
1565
+	public function get_taxes($context = 'view') {
1566
+		return wpinv_parse_list($this->get_prop('taxes', $context));
1567 1567
     }
1568 1568
 
1569 1569
     /**
@@ -1573,8 +1573,8 @@  discard block
 block discarded – undo
1573 1573
 	 * @param  string $context View or edit context.
1574 1574
 	 * @return GetPaid_Form_Item[]
1575 1575
 	 */
1576
-	public function get_items( $context = 'view' ) {
1577
-        return $this->get_prop( 'items', $context );
1576
+	public function get_items($context = 'view') {
1577
+        return $this->get_prop('items', $context);
1578 1578
 	}
1579 1579
 
1580 1580
 	/**
@@ -1584,7 +1584,7 @@  discard block
 block discarded – undo
1584 1584
 	 * @return string
1585 1585
 	 */
1586 1586
 	public function get_item_ids() {
1587
-		return implode( ', ', wp_list_pluck( $this->get_cart_details(), 'item_id' ) );
1587
+		return implode(', ', wp_list_pluck($this->get_cart_details(), 'item_id'));
1588 1588
     }
1589 1589
 
1590 1590
     /**
@@ -1594,8 +1594,8 @@  discard block
 block discarded – undo
1594 1594
 	 * @param  string $context View or edit context.
1595 1595
 	 * @return int
1596 1596
 	 */
1597
-	public function get_payment_form( $context = 'view' ) {
1598
-		return intval( $this->get_prop( 'payment_form', $context ) );
1597
+	public function get_payment_form($context = 'view') {
1598
+		return intval($this->get_prop('payment_form', $context));
1599 1599
     }
1600 1600
 
1601 1601
     /**
@@ -1605,8 +1605,8 @@  discard block
 block discarded – undo
1605 1605
 	 * @param  string $context View or edit context.
1606 1606
 	 * @return string
1607 1607
 	 */
1608
-	public function get_submission_id( $context = 'view' ) {
1609
-		return $this->get_prop( 'submission_id', $context );
1608
+	public function get_submission_id($context = 'view') {
1609
+		return $this->get_prop('submission_id', $context);
1610 1610
     }
1611 1611
 
1612 1612
     /**
@@ -1616,8 +1616,8 @@  discard block
 block discarded – undo
1616 1616
 	 * @param  string $context View or edit context.
1617 1617
 	 * @return string
1618 1618
 	 */
1619
-	public function get_discount_code( $context = 'view' ) {
1620
-		return $this->get_prop( 'discount_code', $context );
1619
+	public function get_discount_code($context = 'view') {
1620
+		return $this->get_prop('discount_code', $context);
1621 1621
     }
1622 1622
 
1623 1623
     /**
@@ -1627,8 +1627,8 @@  discard block
 block discarded – undo
1627 1627
 	 * @param  string $context View or edit context.
1628 1628
 	 * @return string
1629 1629
 	 */
1630
-	public function get_gateway( $context = 'view' ) {
1631
-		return $this->get_prop( 'gateway', $context );
1630
+	public function get_gateway($context = 'view') {
1631
+		return $this->get_prop('gateway', $context);
1632 1632
     }
1633 1633
 
1634 1634
     /**
@@ -1638,8 +1638,8 @@  discard block
 block discarded – undo
1638 1638
 	 * @return string
1639 1639
 	 */
1640 1640
     public function get_gateway_title() {
1641
-        $title =  wpinv_get_gateway_checkout_label( $this->get_gateway() );
1642
-        return apply_filters( 'wpinv_gateway_title', $title, $this->get_id(), $this );
1641
+        $title = wpinv_get_gateway_checkout_label($this->get_gateway());
1642
+        return apply_filters('wpinv_gateway_title', $title, $this->get_id(), $this);
1643 1643
     }
1644 1644
 
1645 1645
     /**
@@ -1649,8 +1649,8 @@  discard block
 block discarded – undo
1649 1649
 	 * @param  string $context View or edit context.
1650 1650
 	 * @return string
1651 1651
 	 */
1652
-	public function get_transaction_id( $context = 'view' ) {
1653
-		return $this->get_prop( 'transaction_id', $context );
1652
+	public function get_transaction_id($context = 'view') {
1653
+		return $this->get_prop('transaction_id', $context);
1654 1654
     }
1655 1655
 
1656 1656
     /**
@@ -1660,9 +1660,9 @@  discard block
 block discarded – undo
1660 1660
 	 * @param  string $context View or edit context.
1661 1661
 	 * @return string
1662 1662
 	 */
1663
-	public function get_currency( $context = 'view' ) {
1664
-        $currency = $this->get_prop( 'currency', $context );
1665
-        return empty( $currency ) ? wpinv_get_currency() : $currency;
1663
+	public function get_currency($context = 'view') {
1664
+        $currency = $this->get_prop('currency', $context);
1665
+        return empty($currency) ? wpinv_get_currency() : $currency;
1666 1666
     }
1667 1667
 
1668 1668
     /**
@@ -1672,8 +1672,8 @@  discard block
 block discarded – undo
1672 1672
 	 * @param  string $context View or edit context.
1673 1673
 	 * @return bool
1674 1674
 	 */
1675
-	public function get_disable_taxes( $context = 'view' ) {
1676
-        return (bool) $this->get_prop( 'disable_taxes', $context );
1675
+	public function get_disable_taxes($context = 'view') {
1676
+        return (bool) $this->get_prop('disable_taxes', $context);
1677 1677
     }
1678 1678
 
1679 1679
     /**
@@ -1683,8 +1683,8 @@  discard block
 block discarded – undo
1683 1683
 	 * @param  string $context View or edit context.
1684 1684
 	 * @return int
1685 1685
 	 */
1686
-    public function get_subscription_id( $context = 'view' ) {
1687
-		return $this->is_renewal() ? $this->get_parent()->get_subscription_id( $context ) : $this->get_prop( 'subscription_id', $context );
1686
+    public function get_subscription_id($context = 'view') {
1687
+		return $this->is_renewal() ? $this->get_parent()->get_subscription_id($context) : $this->get_prop('subscription_id', $context);
1688 1688
 	}
1689 1689
 
1690 1690
 	/**
@@ -1694,12 +1694,12 @@  discard block
 block discarded – undo
1694 1694
 	 * @param  string $context View or edit context.
1695 1695
 	 * @return int
1696 1696
 	 */
1697
-    public function get_remote_subscription_id( $context = 'view' ) {
1698
-        $subscription_id = $this->get_prop( 'remote_subscription_id', $context );
1697
+    public function get_remote_subscription_id($context = 'view') {
1698
+        $subscription_id = $this->get_prop('remote_subscription_id', $context);
1699 1699
 
1700
-        if ( empty( $subscription_id ) && $this->is_renewal() ) {
1700
+        if (empty($subscription_id) && $this->is_renewal()) {
1701 1701
             $parent = $this->get_parent();
1702
-            return $parent->get_remote_subscription_id( $context );
1702
+            return $parent->get_remote_subscription_id($context);
1703 1703
         }
1704 1704
 
1705 1705
         return $subscription_id;
@@ -1712,20 +1712,20 @@  discard block
 block discarded – undo
1712 1712
 	 * @param  string $context View or edit context.
1713 1713
 	 * @return array
1714 1714
 	 */
1715
-    public function get_payment_meta( $context = 'view' ) {
1715
+    public function get_payment_meta($context = 'view') {
1716 1716
 
1717 1717
         return array(
1718
-            'price'        => $this->get_total( $context ),
1719
-            'date'         => $this->get_date_created( $context ),
1720
-            'user_email'   => $this->get_email( $context ),
1721
-            'invoice_key'  => $this->get_key( $context ),
1722
-            'currency'     => $this->get_currency( $context ),
1723
-            'items'        => $this->get_items( $context ),
1724
-            'user_info'    => $this->get_user_info( $context ),
1718
+            'price'        => $this->get_total($context),
1719
+            'date'         => $this->get_date_created($context),
1720
+            'user_email'   => $this->get_email($context),
1721
+            'invoice_key'  => $this->get_key($context),
1722
+            'currency'     => $this->get_currency($context),
1723
+            'items'        => $this->get_items($context),
1724
+            'user_info'    => $this->get_user_info($context),
1725 1725
             'cart_details' => $this->get_cart_details(),
1726
-            'status'       => $this->get_status( $context ),
1727
-            'fees'         => $this->get_fees( $context ),
1728
-            'taxes'        => $this->get_taxes( $context ),
1726
+            'status'       => $this->get_status($context),
1727
+            'fees'         => $this->get_fees($context),
1728
+            'taxes'        => $this->get_taxes($context),
1729 1729
         );
1730 1730
 
1731 1731
     }
@@ -1740,9 +1740,9 @@  discard block
 block discarded – undo
1740 1740
         $items        = $this->get_items();
1741 1741
         $cart_details = array();
1742 1742
 
1743
-        foreach ( $items as $item ) {
1743
+        foreach ($items as $item) {
1744 1744
 			$item->invoice_id = $this->get_id();
1745
-            $cart_details[]   = $item->prepare_data_for_saving();
1745
+            $cart_details[] = $item->prepare_data_for_saving();
1746 1746
         }
1747 1747
 
1748 1748
         return $cart_details;
@@ -1753,11 +1753,11 @@  discard block
 block discarded – undo
1753 1753
 	 *
1754 1754
 	 * @return null|GetPaid_Form_Item|int
1755 1755
 	 */
1756
-	public function get_recurring( $object = false ) {
1756
+	public function get_recurring($object = false) {
1757 1757
 
1758 1758
 		// Are we returning an object?
1759
-        if ( $object ) {
1760
-            return $this->get_item( $this->recurring_item );
1759
+        if ($object) {
1760
+            return $this->get_item($this->recurring_item);
1761 1761
         }
1762 1762
 
1763 1763
         return $this->recurring_item;
@@ -1772,15 +1772,15 @@  discard block
 block discarded – undo
1772 1772
 	public function get_subscription_name() {
1773 1773
 
1774 1774
 		// Retrieve the recurring name
1775
-        $item = $this->get_recurring( true );
1775
+        $item = $this->get_recurring(true);
1776 1776
 
1777 1777
 		// Abort if it does not exist.
1778
-        if ( empty( $item ) ) {
1778
+        if (empty($item)) {
1779 1779
             return '';
1780 1780
         }
1781 1781
 
1782 1782
 		// Return the item name.
1783
-        return apply_filters( 'wpinv_invoice_get_subscription_name', $item->get_name(), $this );
1783
+        return apply_filters('wpinv_invoice_get_subscription_name', $item->get_name(), $this);
1784 1784
 	}
1785 1785
 
1786 1786
 	/**
@@ -1790,9 +1790,9 @@  discard block
 block discarded – undo
1790 1790
 	 * @return string
1791 1791
 	 */
1792 1792
 	public function get_view_url() {
1793
-        $invoice_url = get_permalink( $this->get_id() );
1794
-		$invoice_url = add_query_arg( 'invoice_key', $this->get_key(), $invoice_url );
1795
-        return apply_filters( 'wpinv_get_view_url', $invoice_url, $this );
1793
+        $invoice_url = get_permalink($this->get_id());
1794
+		$invoice_url = add_query_arg('invoice_key', $this->get_key(), $invoice_url);
1795
+        return apply_filters('wpinv_get_view_url', $invoice_url, $this);
1796 1796
 	}
1797 1797
 
1798 1798
 	/**
@@ -1801,25 +1801,25 @@  discard block
 block discarded – undo
1801 1801
 	 * @since 1.0.19
1802 1802
 	 * @return string
1803 1803
 	 */
1804
-	public function get_checkout_payment_url( $deprecated = false, $secret = false ) {
1804
+	public function get_checkout_payment_url($deprecated = false, $secret = false) {
1805 1805
 
1806 1806
 		// Retrieve the checkout url.
1807 1807
         $pay_url = wpinv_get_checkout_uri();
1808 1808
 
1809 1809
 		// Maybe force ssl.
1810
-        if ( is_ssl() ) {
1811
-            $pay_url = str_replace( 'http:', 'https:', $pay_url );
1810
+        if (is_ssl()) {
1811
+            $pay_url = str_replace('http:', 'https:', $pay_url);
1812 1812
         }
1813 1813
 
1814 1814
 		// Add the invoice key.
1815
-		$pay_url = add_query_arg( 'invoice_key', $this->get_key(), $pay_url );
1815
+		$pay_url = add_query_arg('invoice_key', $this->get_key(), $pay_url);
1816 1816
 
1817 1817
 		// (Maybe?) add a secret
1818
-        if ( $secret ) {
1819
-            $pay_url = add_query_arg( array( '_wpipay' => md5( $this->get_user_id() . '::' . $this->get_email() . '::' . $this->get_key() ) ), $pay_url );
1818
+        if ($secret) {
1819
+            $pay_url = add_query_arg(array('_wpipay' => md5($this->get_user_id() . '::' . $this->get_email() . '::' . $this->get_key())), $pay_url);
1820 1820
         }
1821 1821
 
1822
-        return apply_filters( 'wpinv_get_checkout_payment_url', $pay_url, $this, $deprecated, $secret );
1822
+        return apply_filters('wpinv_get_checkout_payment_url', $pay_url, $this, $deprecated, $secret);
1823 1823
 	}
1824 1824
 	
1825 1825
 	/**
@@ -1834,14 +1834,14 @@  discard block
 block discarded – undo
1834 1834
         $receipt_url = wpinv_get_success_page_uri();
1835 1835
 
1836 1836
 		// Maybe force ssl.
1837
-        if ( is_ssl() ) {
1838
-            $receipt_url = str_replace( 'http:', 'https:', $receipt_url );
1837
+        if (is_ssl()) {
1838
+            $receipt_url = str_replace('http:', 'https:', $receipt_url);
1839 1839
         }
1840 1840
 
1841 1841
 		// Add the invoice key.
1842
-		$receipt_url = add_query_arg( 'invoice_key', $this->get_key(), $receipt_url );
1842
+		$receipt_url = add_query_arg('invoice_key', $this->get_key(), $receipt_url);
1843 1843
 
1844
-        return apply_filters( 'getpaid_get_invoice_receipt_url', $receipt_url, $this );
1844
+        return apply_filters('getpaid_get_invoice_receipt_url', $receipt_url, $this);
1845 1845
 	}
1846 1846
 	
1847 1847
 	/**
@@ -1854,7 +1854,7 @@  discard block
 block discarded – undo
1854 1854
 
1855 1855
 		$type   = $this->get_type();
1856 1856
 		$status = "wpi-$type-pending";
1857
-		return str_replace( '-invoice', '', $status );
1857
+		return str_replace('-invoice', '', $status);
1858 1858
 
1859 1859
 	}
1860 1860
 
@@ -1868,8 +1868,8 @@  discard block
 block discarded – undo
1868 1868
 	 * @param  string $context View or edit context.
1869 1869
 	 * @return mixed Value of the given invoice property (if set).
1870 1870
 	 */
1871
-	public function get( $key, $context = 'view' ) {
1872
-        return $this->get_prop( $key, $context );
1871
+	public function get($key, $context = 'view') {
1872
+        return $this->get_prop($key, $context);
1873 1873
 	}
1874 1874
 
1875 1875
     /*
@@ -1892,11 +1892,11 @@  discard block
 block discarded – undo
1892 1892
 	 * @param  mixed $value new value.
1893 1893
 	 * @return mixed Value of the given invoice property (if set).
1894 1894
 	 */
1895
-	public function set( $key, $value ) {
1895
+	public function set($key, $value) {
1896 1896
 
1897 1897
         $setter = "set_$key";
1898
-        if ( is_callable( array( $this, $setter ) ) ) {
1899
-            $this->{$setter}( $value );
1898
+        if (is_callable(array($this, $setter))) {
1899
+            $this->{$setter}($value);
1900 1900
         }
1901 1901
 
1902 1902
 	}
@@ -1910,47 +1910,47 @@  discard block
 block discarded – undo
1910 1910
 	 * @param bool   $manual_update Is this a manual status change?.
1911 1911
 	 * @return array details of change.
1912 1912
 	 */
1913
-	public function set_status( $new_status, $note = '', $manual_update = false ) {
1913
+	public function set_status($new_status, $note = '', $manual_update = false) {
1914 1914
 		$old_status = $this->get_status();
1915 1915
 
1916 1916
 		$statuses = $this->get_all_statuses();
1917 1917
 
1918
-		if ( isset( $statuses[ 'draft' ] ) ) {
1919
-			unset( $statuses[ 'draft' ] );
1918
+		if (isset($statuses['draft'])) {
1919
+			unset($statuses['draft']);
1920 1920
 		}
1921 1921
 
1922
-		$this->set_prop( 'status', $new_status );
1922
+		$this->set_prop('status', $new_status);
1923 1923
 
1924 1924
 		// If setting the status, ensure it's set to a valid status.
1925
-		if ( true === $this->object_read ) {
1925
+		if (true === $this->object_read) {
1926 1926
 
1927 1927
 			// Only allow valid new status.
1928
-			if ( ! array_key_exists( $new_status, $statuses ) ) {
1928
+			if (!array_key_exists($new_status, $statuses)) {
1929 1929
 				$new_status = $this->get_default_status();
1930 1930
 			}
1931 1931
 
1932 1932
 			// If the old status is set but unknown (e.g. draft) assume its pending for action usage.
1933
-			if ( $old_status && ! array_key_exists( $new_status, $statuses ) ) {
1933
+			if ($old_status && !array_key_exists($new_status, $statuses)) {
1934 1934
 				$old_status = $this->get_default_status();
1935 1935
 			}
1936 1936
 
1937 1937
 			// Paid - Renewal (i.e when duplicating a parent invoice )
1938
-			if ( $new_status == 'wpi-pending' && $old_status == 'publish' && ! $this->get_id() ) {
1938
+			if ($new_status == 'wpi-pending' && $old_status == 'publish' && !$this->get_id()) {
1939 1939
 				$old_status = 'wpi-pending';
1940 1940
 			}
1941 1941
 
1942 1942
 		}
1943 1943
 
1944
-		if ( true === $this->object_read && $old_status !== $new_status ) {
1944
+		if (true === $this->object_read && $old_status !== $new_status) {
1945 1945
 			$this->status_transition = array(
1946
-				'from'   => ! empty( $this->status_transition['from'] ) ? $this->status_transition['from'] : $old_status,
1946
+				'from'   => !empty($this->status_transition['from']) ? $this->status_transition['from'] : $old_status,
1947 1947
 				'to'     => $new_status,
1948 1948
 				'note'   => $note,
1949 1949
 				'manual' => (bool) $manual_update,
1950 1950
 			);
1951 1951
 
1952
-			if ( $manual_update ) {
1953
-				do_action( 'getpaid_' . $this->object_type .'_edit_status', $this->get_id(), $new_status );
1952
+			if ($manual_update) {
1953
+				do_action('getpaid_' . $this->object_type . '_edit_status', $this->get_id(), $new_status);
1954 1954
 			}
1955 1955
 
1956 1956
 			$this->maybe_set_date_paid();
@@ -1973,8 +1973,8 @@  discard block
 block discarded – undo
1973 1973
 	 */
1974 1974
 	public function maybe_set_date_paid() {
1975 1975
 
1976
-		if ( ! $this->get_date_completed( 'edit' ) && $this->is_paid() ) {
1977
-			$this->set_date_completed( current_time( 'mysql' ) );
1976
+		if (!$this->get_date_completed('edit') && $this->is_paid()) {
1977
+			$this->set_date_completed(current_time('mysql'));
1978 1978
 		}
1979 1979
 	}
1980 1980
 
@@ -1983,11 +1983,11 @@  discard block
 block discarded – undo
1983 1983
 	 *
1984 1984
 	 * @since 1.0.19
1985 1985
 	 */
1986
-	public function set_parent_id( $value ) {
1987
-		if ( $value && ( $value === $this->get_id() ) ) {
1986
+	public function set_parent_id($value) {
1987
+		if ($value && ($value === $this->get_id())) {
1988 1988
 			return;
1989 1989
 		}
1990
-		$this->set_prop( 'parent_id', absint( $value ) );
1990
+		$this->set_prop('parent_id', absint($value));
1991 1991
     }
1992 1992
 
1993 1993
     /**
@@ -1995,8 +1995,8 @@  discard block
 block discarded – undo
1995 1995
 	 *
1996 1996
 	 * @since 1.0.19
1997 1997
 	 */
1998
-	public function set_version( $value ) {
1999
-		$this->set_prop( 'version', $value );
1998
+	public function set_version($value) {
1999
+		$this->set_prop('version', $value);
2000 2000
     }
2001 2001
 
2002 2002
     /**
@@ -2006,15 +2006,15 @@  discard block
 block discarded – undo
2006 2006
 	 * @param string $value Value to set.
2007 2007
      * @return bool Whether or not the date was set.
2008 2008
 	 */
2009
-	public function set_date_created( $value ) {
2010
-        $date = strtotime( $value );
2009
+	public function set_date_created($value) {
2010
+        $date = strtotime($value);
2011 2011
 
2012
-        if ( $date && $value !== '0000-00-00 00:00:00' ) {
2013
-            $this->set_prop( 'date_created', date( 'Y-m-d H:i:s', $date ) );
2012
+        if ($date && $value !== '0000-00-00 00:00:00') {
2013
+            $this->set_prop('date_created', date('Y-m-d H:i:s', $date));
2014 2014
             return true;
2015 2015
         }
2016 2016
 
2017
-		$this->set_prop( 'date_created', '' );
2017
+		$this->set_prop('date_created', '');
2018 2018
 		return false;
2019 2019
 
2020 2020
     }
@@ -2026,15 +2026,15 @@  discard block
 block discarded – undo
2026 2026
 	 * @param string $value Value to set.
2027 2027
      * @return bool Whether or not the date was set.
2028 2028
 	 */
2029
-	public function set_due_date( $value ) {
2030
-        $date = strtotime( $value );
2029
+	public function set_due_date($value) {
2030
+        $date = strtotime($value);
2031 2031
 
2032
-        if ( $date && $value !== '0000-00-00 00:00:00' ) {
2033
-            $this->set_prop( 'due_date', date( 'Y-m-d H:i:s', $date ) );
2032
+        if ($date && $value !== '0000-00-00 00:00:00') {
2033
+            $this->set_prop('due_date', date('Y-m-d H:i:s', $date));
2034 2034
             return true;
2035 2035
         }
2036 2036
 
2037
-		$this->set_prop( 'due_date', '' );
2037
+		$this->set_prop('due_date', '');
2038 2038
         return false;
2039 2039
 
2040 2040
     }
@@ -2045,8 +2045,8 @@  discard block
 block discarded – undo
2045 2045
 	 * @since 1.0.19
2046 2046
 	 * @param  string $value New name.
2047 2047
 	 */
2048
-	public function set_date_due( $value ) {
2049
-		$this->set_due_date( $value );
2048
+	public function set_date_due($value) {
2049
+		$this->set_due_date($value);
2050 2050
     }
2051 2051
 
2052 2052
     /**
@@ -2056,15 +2056,15 @@  discard block
 block discarded – undo
2056 2056
 	 * @param string $value Value to set.
2057 2057
      * @return bool Whether or not the date was set.
2058 2058
 	 */
2059
-	public function set_completed_date( $value ) {
2060
-        $date = strtotime( $value );
2059
+	public function set_completed_date($value) {
2060
+        $date = strtotime($value);
2061 2061
 
2062
-        if ( $date && $value !== '0000-00-00 00:00:00'  ) {
2063
-            $this->set_prop( 'completed_date', date( 'Y-m-d H:i:s', $date ) );
2062
+        if ($date && $value !== '0000-00-00 00:00:00') {
2063
+            $this->set_prop('completed_date', date('Y-m-d H:i:s', $date));
2064 2064
             return true;
2065 2065
         }
2066 2066
 
2067
-		$this->set_prop( 'completed_date', '' );
2067
+		$this->set_prop('completed_date', '');
2068 2068
         return false;
2069 2069
 
2070 2070
     }
@@ -2075,8 +2075,8 @@  discard block
 block discarded – undo
2075 2075
 	 * @since 1.0.19
2076 2076
 	 * @param  string $value New name.
2077 2077
 	 */
2078
-	public function set_date_completed( $value ) {
2079
-		$this->set_completed_date( $value );
2078
+	public function set_date_completed($value) {
2079
+		$this->set_completed_date($value);
2080 2080
     }
2081 2081
 
2082 2082
     /**
@@ -2086,15 +2086,15 @@  discard block
 block discarded – undo
2086 2086
 	 * @param string $value Value to set.
2087 2087
      * @return bool Whether or not the date was set.
2088 2088
 	 */
2089
-	public function set_date_modified( $value ) {
2090
-        $date = strtotime( $value );
2089
+	public function set_date_modified($value) {
2090
+        $date = strtotime($value);
2091 2091
 
2092
-        if ( $date && $value !== '0000-00-00 00:00:00' ) {
2093
-            $this->set_prop( 'date_modified', date( 'Y-m-d H:i:s', $date ) );
2092
+        if ($date && $value !== '0000-00-00 00:00:00') {
2093
+            $this->set_prop('date_modified', date('Y-m-d H:i:s', $date));
2094 2094
             return true;
2095 2095
         }
2096 2096
 
2097
-		$this->set_prop( 'date_modified', '' );
2097
+		$this->set_prop('date_modified', '');
2098 2098
         return false;
2099 2099
 
2100 2100
     }
@@ -2105,9 +2105,9 @@  discard block
 block discarded – undo
2105 2105
 	 * @since 1.0.19
2106 2106
 	 * @param  string $value New number.
2107 2107
 	 */
2108
-	public function set_number( $value ) {
2109
-        $number = sanitize_text_field( $value );
2110
-		$this->set_prop( 'number', $number );
2108
+	public function set_number($value) {
2109
+        $number = sanitize_text_field($value);
2110
+		$this->set_prop('number', $number);
2111 2111
     }
2112 2112
 
2113 2113
     /**
@@ -2116,9 +2116,9 @@  discard block
 block discarded – undo
2116 2116
 	 * @since 1.0.19
2117 2117
 	 * @param  string $value Type.
2118 2118
 	 */
2119
-	public function set_type( $value ) {
2120
-        $type = sanitize_text_field( str_replace( 'wpi_', '', $value ) );
2121
-		$this->set_prop( 'type', $type );
2119
+	public function set_type($value) {
2120
+        $type = sanitize_text_field(str_replace('wpi_', '', $value));
2121
+		$this->set_prop('type', $type);
2122 2122
 	}
2123 2123
 
2124 2124
     /**
@@ -2127,10 +2127,10 @@  discard block
 block discarded – undo
2127 2127
 	 * @since 1.0.19
2128 2128
 	 * @param  string $value Post type.
2129 2129
 	 */
2130
-	public function set_post_type( $value ) {
2131
-        if ( getpaid_is_invoice_post_type( $value ) ) {
2132
-			$this->set_type( $value );
2133
-            $this->set_prop( 'post_type', $value );
2130
+	public function set_post_type($value) {
2131
+        if (getpaid_is_invoice_post_type($value)) {
2132
+			$this->set_type($value);
2133
+            $this->set_prop('post_type', $value);
2134 2134
         }
2135 2135
     }
2136 2136
 
@@ -2140,9 +2140,9 @@  discard block
 block discarded – undo
2140 2140
 	 * @since 1.0.19
2141 2141
 	 * @param  string $value New key.
2142 2142
 	 */
2143
-	public function set_key( $value ) {
2144
-        $key = sanitize_text_field( $value );
2145
-		$this->set_prop( 'key', $key );
2143
+	public function set_key($value) {
2144
+        $key = sanitize_text_field($value);
2145
+		$this->set_prop('key', $key);
2146 2146
     }
2147 2147
 
2148 2148
     /**
@@ -2151,9 +2151,9 @@  discard block
 block discarded – undo
2151 2151
 	 * @since 1.0.19
2152 2152
 	 * @param  string $value mode.
2153 2153
 	 */
2154
-	public function set_mode( $value ) {
2155
-        if ( in_array( $value, array( 'live', 'test' ) ) ) {
2156
-            $this->set_prop( 'mode', $value );
2154
+	public function set_mode($value) {
2155
+        if (in_array($value, array('live', 'test'))) {
2156
+            $this->set_prop('mode', $value);
2157 2157
         }
2158 2158
     }
2159 2159
 
@@ -2163,8 +2163,8 @@  discard block
 block discarded – undo
2163 2163
 	 * @since 1.0.19
2164 2164
 	 * @param  string $value path.
2165 2165
 	 */
2166
-	public function set_path( $value ) {
2167
-        $this->set_prop( 'path', $value );
2166
+	public function set_path($value) {
2167
+        $this->set_prop('path', $value);
2168 2168
     }
2169 2169
 
2170 2170
     /**
@@ -2173,9 +2173,9 @@  discard block
 block discarded – undo
2173 2173
 	 * @since 1.0.19
2174 2174
 	 * @param  string $value New name.
2175 2175
 	 */
2176
-	public function set_name( $value ) {
2177
-        $name = sanitize_text_field( $value );
2178
-		$this->set_prop( 'name', $name );
2176
+	public function set_name($value) {
2177
+        $name = sanitize_text_field($value);
2178
+		$this->set_prop('name', $name);
2179 2179
     }
2180 2180
 
2181 2181
     /**
@@ -2184,8 +2184,8 @@  discard block
 block discarded – undo
2184 2184
 	 * @since 1.0.19
2185 2185
 	 * @param  string $value New name.
2186 2186
 	 */
2187
-	public function set_title( $value ) {
2188
-		$this->set_name( $value );
2187
+	public function set_title($value) {
2188
+		$this->set_name($value);
2189 2189
     }
2190 2190
 
2191 2191
     /**
@@ -2194,9 +2194,9 @@  discard block
 block discarded – undo
2194 2194
 	 * @since 1.0.19
2195 2195
 	 * @param  string $value New description.
2196 2196
 	 */
2197
-	public function set_description( $value ) {
2198
-        $description = wp_kses_post( $value );
2199
-		$this->set_prop( 'description', $description );
2197
+	public function set_description($value) {
2198
+        $description = wp_kses_post($value);
2199
+		$this->set_prop('description', $description);
2200 2200
     }
2201 2201
 
2202 2202
     /**
@@ -2205,8 +2205,8 @@  discard block
 block discarded – undo
2205 2205
 	 * @since 1.0.19
2206 2206
 	 * @param  string $value New description.
2207 2207
 	 */
2208
-	public function set_excerpt( $value ) {
2209
-		$this->set_description( $value );
2208
+	public function set_excerpt($value) {
2209
+		$this->set_description($value);
2210 2210
     }
2211 2211
 
2212 2212
     /**
@@ -2215,8 +2215,8 @@  discard block
 block discarded – undo
2215 2215
 	 * @since 1.0.19
2216 2216
 	 * @param  string $value New description.
2217 2217
 	 */
2218
-	public function set_summary( $value ) {
2219
-		$this->set_description( $value );
2218
+	public function set_summary($value) {
2219
+		$this->set_description($value);
2220 2220
     }
2221 2221
 
2222 2222
     /**
@@ -2225,12 +2225,12 @@  discard block
 block discarded – undo
2225 2225
 	 * @since 1.0.19
2226 2226
 	 * @param  int $value New author.
2227 2227
 	 */
2228
-	public function set_author( $value ) {
2229
-		$user = get_user_by( 'id', (int) $value );
2228
+	public function set_author($value) {
2229
+		$user = get_user_by('id', (int) $value);
2230 2230
 
2231
-		if ( $user && $user->ID ) {
2232
-			$this->set_prop( 'author', $user->ID );
2233
-			$this->set_prop( 'email', $user->user_email );
2231
+		if ($user && $user->ID) {
2232
+			$this->set_prop('author', $user->ID);
2233
+			$this->set_prop('email', $user->user_email);
2234 2234
 		}
2235 2235
 
2236 2236
     }
@@ -2241,8 +2241,8 @@  discard block
 block discarded – undo
2241 2241
 	 * @since 1.0.19
2242 2242
 	 * @param  int $value New user id.
2243 2243
 	 */
2244
-	public function set_user_id( $value ) {
2245
-		$this->set_author( $value );
2244
+	public function set_user_id($value) {
2245
+		$this->set_author($value);
2246 2246
     }
2247 2247
 
2248 2248
     /**
@@ -2251,8 +2251,8 @@  discard block
 block discarded – undo
2251 2251
 	 * @since 1.0.19
2252 2252
 	 * @param  int $value New user id.
2253 2253
 	 */
2254
-	public function set_customer_id( $value ) {
2255
-		$this->set_author( $value );
2254
+	public function set_customer_id($value) {
2255
+		$this->set_author($value);
2256 2256
     }
2257 2257
 
2258 2258
     /**
@@ -2261,8 +2261,8 @@  discard block
 block discarded – undo
2261 2261
 	 * @since 1.0.19
2262 2262
 	 * @param  string $value ip address.
2263 2263
 	 */
2264
-	public function set_ip( $value ) {
2265
-		$this->set_prop( 'ip', $value );
2264
+	public function set_ip($value) {
2265
+		$this->set_prop('ip', $value);
2266 2266
     }
2267 2267
 
2268 2268
     /**
@@ -2271,8 +2271,8 @@  discard block
 block discarded – undo
2271 2271
 	 * @since 1.0.19
2272 2272
 	 * @param  string $value ip address.
2273 2273
 	 */
2274
-	public function set_user_ip( $value ) {
2275
-		$this->set_ip( $value );
2274
+	public function set_user_ip($value) {
2275
+		$this->set_ip($value);
2276 2276
     }
2277 2277
 
2278 2278
     /**
@@ -2281,8 +2281,8 @@  discard block
 block discarded – undo
2281 2281
 	 * @since 1.0.19
2282 2282
 	 * @param  string $value first name.
2283 2283
 	 */
2284
-	public function set_first_name( $value ) {
2285
-		$this->set_prop( 'first_name', $value );
2284
+	public function set_first_name($value) {
2285
+		$this->set_prop('first_name', $value);
2286 2286
     }
2287 2287
 
2288 2288
     /**
@@ -2291,8 +2291,8 @@  discard block
 block discarded – undo
2291 2291
 	 * @since 1.0.19
2292 2292
 	 * @param  string $value first name.
2293 2293
 	 */
2294
-	public function set_user_first_name( $value ) {
2295
-		$this->set_first_name( $value );
2294
+	public function set_user_first_name($value) {
2295
+		$this->set_first_name($value);
2296 2296
     }
2297 2297
 
2298 2298
     /**
@@ -2301,8 +2301,8 @@  discard block
 block discarded – undo
2301 2301
 	 * @since 1.0.19
2302 2302
 	 * @param  string $value first name.
2303 2303
 	 */
2304
-	public function set_customer_first_name( $value ) {
2305
-		$this->set_first_name( $value );
2304
+	public function set_customer_first_name($value) {
2305
+		$this->set_first_name($value);
2306 2306
     }
2307 2307
 
2308 2308
     /**
@@ -2311,8 +2311,8 @@  discard block
 block discarded – undo
2311 2311
 	 * @since 1.0.19
2312 2312
 	 * @param  string $value last name.
2313 2313
 	 */
2314
-	public function set_last_name( $value ) {
2315
-		$this->set_prop( 'last_name', $value );
2314
+	public function set_last_name($value) {
2315
+		$this->set_prop('last_name', $value);
2316 2316
     }
2317 2317
 
2318 2318
     /**
@@ -2321,8 +2321,8 @@  discard block
 block discarded – undo
2321 2321
 	 * @since 1.0.19
2322 2322
 	 * @param  string $value last name.
2323 2323
 	 */
2324
-	public function set_user_last_name( $value ) {
2325
-		$this->set_last_name( $value );
2324
+	public function set_user_last_name($value) {
2325
+		$this->set_last_name($value);
2326 2326
     }
2327 2327
 
2328 2328
     /**
@@ -2331,8 +2331,8 @@  discard block
 block discarded – undo
2331 2331
 	 * @since 1.0.19
2332 2332
 	 * @param  string $value last name.
2333 2333
 	 */
2334
-	public function set_customer_last_name( $value ) {
2335
-		$this->set_last_name( $value );
2334
+	public function set_customer_last_name($value) {
2335
+		$this->set_last_name($value);
2336 2336
     }
2337 2337
 
2338 2338
     /**
@@ -2341,8 +2341,8 @@  discard block
 block discarded – undo
2341 2341
 	 * @since 1.0.19
2342 2342
 	 * @param  string $value phone.
2343 2343
 	 */
2344
-	public function set_phone( $value ) {
2345
-		$this->set_prop( 'phone', $value );
2344
+	public function set_phone($value) {
2345
+		$this->set_prop('phone', $value);
2346 2346
     }
2347 2347
 
2348 2348
     /**
@@ -2351,8 +2351,8 @@  discard block
 block discarded – undo
2351 2351
 	 * @since 1.0.19
2352 2352
 	 * @param  string $value phone.
2353 2353
 	 */
2354
-	public function set_user_phone( $value ) {
2355
-		$this->set_phone( $value );
2354
+	public function set_user_phone($value) {
2355
+		$this->set_phone($value);
2356 2356
     }
2357 2357
 
2358 2358
     /**
@@ -2361,8 +2361,8 @@  discard block
 block discarded – undo
2361 2361
 	 * @since 1.0.19
2362 2362
 	 * @param  string $value phone.
2363 2363
 	 */
2364
-	public function set_customer_phone( $value ) {
2365
-		$this->set_phone( $value );
2364
+	public function set_customer_phone($value) {
2365
+		$this->set_phone($value);
2366 2366
     }
2367 2367
 
2368 2368
     /**
@@ -2371,8 +2371,8 @@  discard block
 block discarded – undo
2371 2371
 	 * @since 1.0.19
2372 2372
 	 * @param  string $value phone.
2373 2373
 	 */
2374
-	public function set_phone_number( $value ) {
2375
-		$this->set_phone( $value );
2374
+	public function set_phone_number($value) {
2375
+		$this->set_phone($value);
2376 2376
     }
2377 2377
 
2378 2378
     /**
@@ -2381,8 +2381,8 @@  discard block
 block discarded – undo
2381 2381
 	 * @since 1.0.19
2382 2382
 	 * @param  string $value email address.
2383 2383
 	 */
2384
-	public function set_email( $value ) {
2385
-		$this->set_prop( 'email', $value );
2384
+	public function set_email($value) {
2385
+		$this->set_prop('email', $value);
2386 2386
     }
2387 2387
 
2388 2388
     /**
@@ -2391,8 +2391,8 @@  discard block
 block discarded – undo
2391 2391
 	 * @since 1.0.19
2392 2392
 	 * @param  string $value email address.
2393 2393
 	 */
2394
-	public function set_user_email( $value ) {
2395
-		$this->set_email( $value );
2394
+	public function set_user_email($value) {
2395
+		$this->set_email($value);
2396 2396
     }
2397 2397
 
2398 2398
     /**
@@ -2401,8 +2401,8 @@  discard block
 block discarded – undo
2401 2401
 	 * @since 1.0.19
2402 2402
 	 * @param  string $value email address.
2403 2403
 	 */
2404
-	public function set_email_address( $value ) {
2405
-		$this->set_email( $value );
2404
+	public function set_email_address($value) {
2405
+		$this->set_email($value);
2406 2406
     }
2407 2407
 
2408 2408
     /**
@@ -2411,8 +2411,8 @@  discard block
 block discarded – undo
2411 2411
 	 * @since 1.0.19
2412 2412
 	 * @param  string $value email address.
2413 2413
 	 */
2414
-	public function set_customer_email( $value ) {
2415
-		$this->set_email( $value );
2414
+	public function set_customer_email($value) {
2415
+		$this->set_email($value);
2416 2416
     }
2417 2417
 
2418 2418
     /**
@@ -2421,8 +2421,8 @@  discard block
 block discarded – undo
2421 2421
 	 * @since 1.0.19
2422 2422
 	 * @param  string $value country.
2423 2423
 	 */
2424
-	public function set_country( $value ) {
2425
-		$this->set_prop( 'country', $value );
2424
+	public function set_country($value) {
2425
+		$this->set_prop('country', $value);
2426 2426
     }
2427 2427
 
2428 2428
     /**
@@ -2431,8 +2431,8 @@  discard block
 block discarded – undo
2431 2431
 	 * @since 1.0.19
2432 2432
 	 * @param  string $value country.
2433 2433
 	 */
2434
-	public function set_user_country( $value ) {
2435
-		$this->set_country( $value );
2434
+	public function set_user_country($value) {
2435
+		$this->set_country($value);
2436 2436
     }
2437 2437
 
2438 2438
     /**
@@ -2441,8 +2441,8 @@  discard block
 block discarded – undo
2441 2441
 	 * @since 1.0.19
2442 2442
 	 * @param  string $value country.
2443 2443
 	 */
2444
-	public function set_customer_country( $value ) {
2445
-		$this->set_country( $value );
2444
+	public function set_customer_country($value) {
2445
+		$this->set_country($value);
2446 2446
     }
2447 2447
 
2448 2448
     /**
@@ -2451,8 +2451,8 @@  discard block
 block discarded – undo
2451 2451
 	 * @since 1.0.19
2452 2452
 	 * @param  string $value state.
2453 2453
 	 */
2454
-	public function set_state( $value ) {
2455
-		$this->set_prop( 'state', $value );
2454
+	public function set_state($value) {
2455
+		$this->set_prop('state', $value);
2456 2456
     }
2457 2457
 
2458 2458
     /**
@@ -2461,8 +2461,8 @@  discard block
 block discarded – undo
2461 2461
 	 * @since 1.0.19
2462 2462
 	 * @param  string $value state.
2463 2463
 	 */
2464
-	public function set_user_state( $value ) {
2465
-		$this->set_state( $value );
2464
+	public function set_user_state($value) {
2465
+		$this->set_state($value);
2466 2466
     }
2467 2467
 
2468 2468
     /**
@@ -2471,8 +2471,8 @@  discard block
 block discarded – undo
2471 2471
 	 * @since 1.0.19
2472 2472
 	 * @param  string $value state.
2473 2473
 	 */
2474
-	public function set_customer_state( $value ) {
2475
-		$this->set_state( $value );
2474
+	public function set_customer_state($value) {
2475
+		$this->set_state($value);
2476 2476
     }
2477 2477
 
2478 2478
     /**
@@ -2481,8 +2481,8 @@  discard block
 block discarded – undo
2481 2481
 	 * @since 1.0.19
2482 2482
 	 * @param  string $value city.
2483 2483
 	 */
2484
-	public function set_city( $value ) {
2485
-		$this->set_prop( 'city', $value );
2484
+	public function set_city($value) {
2485
+		$this->set_prop('city', $value);
2486 2486
     }
2487 2487
 
2488 2488
     /**
@@ -2491,8 +2491,8 @@  discard block
 block discarded – undo
2491 2491
 	 * @since 1.0.19
2492 2492
 	 * @param  string $value city.
2493 2493
 	 */
2494
-	public function set_user_city( $value ) {
2495
-		$this->set_city( $value );
2494
+	public function set_user_city($value) {
2495
+		$this->set_city($value);
2496 2496
     }
2497 2497
 
2498 2498
     /**
@@ -2501,8 +2501,8 @@  discard block
 block discarded – undo
2501 2501
 	 * @since 1.0.19
2502 2502
 	 * @param  string $value city.
2503 2503
 	 */
2504
-	public function set_customer_city( $value ) {
2505
-		$this->set_city( $value );
2504
+	public function set_customer_city($value) {
2505
+		$this->set_city($value);
2506 2506
     }
2507 2507
 
2508 2508
     /**
@@ -2511,8 +2511,8 @@  discard block
 block discarded – undo
2511 2511
 	 * @since 1.0.19
2512 2512
 	 * @param  string $value zip.
2513 2513
 	 */
2514
-	public function set_zip( $value ) {
2515
-		$this->set_prop( 'zip', $value );
2514
+	public function set_zip($value) {
2515
+		$this->set_prop('zip', $value);
2516 2516
     }
2517 2517
 
2518 2518
     /**
@@ -2521,8 +2521,8 @@  discard block
 block discarded – undo
2521 2521
 	 * @since 1.0.19
2522 2522
 	 * @param  string $value zip.
2523 2523
 	 */
2524
-	public function set_user_zip( $value ) {
2525
-		$this->set_zip( $value );
2524
+	public function set_user_zip($value) {
2525
+		$this->set_zip($value);
2526 2526
     }
2527 2527
 
2528 2528
     /**
@@ -2531,8 +2531,8 @@  discard block
 block discarded – undo
2531 2531
 	 * @since 1.0.19
2532 2532
 	 * @param  string $value zip.
2533 2533
 	 */
2534
-	public function set_customer_zip( $value ) {
2535
-		$this->set_zip( $value );
2534
+	public function set_customer_zip($value) {
2535
+		$this->set_zip($value);
2536 2536
     }
2537 2537
 
2538 2538
     /**
@@ -2541,8 +2541,8 @@  discard block
 block discarded – undo
2541 2541
 	 * @since 1.0.19
2542 2542
 	 * @param  string $value company.
2543 2543
 	 */
2544
-	public function set_company( $value ) {
2545
-		$this->set_prop( 'company', $value );
2544
+	public function set_company($value) {
2545
+		$this->set_prop('company', $value);
2546 2546
     }
2547 2547
 
2548 2548
     /**
@@ -2551,8 +2551,8 @@  discard block
 block discarded – undo
2551 2551
 	 * @since 1.0.19
2552 2552
 	 * @param  string $value company.
2553 2553
 	 */
2554
-	public function set_user_company( $value ) {
2555
-		$this->set_company( $value );
2554
+	public function set_user_company($value) {
2555
+		$this->set_company($value);
2556 2556
     }
2557 2557
 
2558 2558
     /**
@@ -2561,8 +2561,8 @@  discard block
 block discarded – undo
2561 2561
 	 * @since 1.0.19
2562 2562
 	 * @param  string $value company.
2563 2563
 	 */
2564
-	public function set_customer_company( $value ) {
2565
-		$this->set_company( $value );
2564
+	public function set_customer_company($value) {
2565
+		$this->set_company($value);
2566 2566
     }
2567 2567
 
2568 2568
     /**
@@ -2571,8 +2571,8 @@  discard block
 block discarded – undo
2571 2571
 	 * @since 1.0.19
2572 2572
 	 * @param  string $value var number.
2573 2573
 	 */
2574
-	public function set_vat_number( $value ) {
2575
-		$this->set_prop( 'vat_number', $value );
2574
+	public function set_vat_number($value) {
2575
+		$this->set_prop('vat_number', $value);
2576 2576
     }
2577 2577
 
2578 2578
     /**
@@ -2581,8 +2581,8 @@  discard block
 block discarded – undo
2581 2581
 	 * @since 1.0.19
2582 2582
 	 * @param  string $value var number.
2583 2583
 	 */
2584
-	public function set_user_vat_number( $value ) {
2585
-		$this->set_vat_number( $value );
2584
+	public function set_user_vat_number($value) {
2585
+		$this->set_vat_number($value);
2586 2586
     }
2587 2587
 
2588 2588
     /**
@@ -2591,8 +2591,8 @@  discard block
 block discarded – undo
2591 2591
 	 * @since 1.0.19
2592 2592
 	 * @param  string $value var number.
2593 2593
 	 */
2594
-	public function set_customer_vat_number( $value ) {
2595
-		$this->set_vat_number( $value );
2594
+	public function set_customer_vat_number($value) {
2595
+		$this->set_vat_number($value);
2596 2596
     }
2597 2597
 
2598 2598
     /**
@@ -2601,8 +2601,8 @@  discard block
 block discarded – undo
2601 2601
 	 * @since 1.0.19
2602 2602
 	 * @param  string $value var rate.
2603 2603
 	 */
2604
-	public function set_vat_rate( $value ) {
2605
-		$this->set_prop( 'vat_rate', $value );
2604
+	public function set_vat_rate($value) {
2605
+		$this->set_prop('vat_rate', $value);
2606 2606
     }
2607 2607
 
2608 2608
     /**
@@ -2611,8 +2611,8 @@  discard block
 block discarded – undo
2611 2611
 	 * @since 1.0.19
2612 2612
 	 * @param  string $value var number.
2613 2613
 	 */
2614
-	public function set_user_vat_rate( $value ) {
2615
-		$this->set_vat_rate( $value );
2614
+	public function set_user_vat_rate($value) {
2615
+		$this->set_vat_rate($value);
2616 2616
     }
2617 2617
 
2618 2618
     /**
@@ -2621,8 +2621,8 @@  discard block
 block discarded – undo
2621 2621
 	 * @since 1.0.19
2622 2622
 	 * @param  string $value var number.
2623 2623
 	 */
2624
-	public function set_customer_vat_rate( $value ) {
2625
-		$this->set_vat_rate( $value );
2624
+	public function set_customer_vat_rate($value) {
2625
+		$this->set_vat_rate($value);
2626 2626
     }
2627 2627
 
2628 2628
     /**
@@ -2631,8 +2631,8 @@  discard block
 block discarded – undo
2631 2631
 	 * @since 1.0.19
2632 2632
 	 * @param  string $value address.
2633 2633
 	 */
2634
-	public function set_address( $value ) {
2635
-		$this->set_prop( 'address', $value );
2634
+	public function set_address($value) {
2635
+		$this->set_prop('address', $value);
2636 2636
     }
2637 2637
 
2638 2638
     /**
@@ -2641,8 +2641,8 @@  discard block
 block discarded – undo
2641 2641
 	 * @since 1.0.19
2642 2642
 	 * @param  string $value address.
2643 2643
 	 */
2644
-	public function set_user_address( $value ) {
2645
-		$this->set_address( $value );
2644
+	public function set_user_address($value) {
2645
+		$this->set_address($value);
2646 2646
     }
2647 2647
 
2648 2648
     /**
@@ -2651,8 +2651,8 @@  discard block
 block discarded – undo
2651 2651
 	 * @since 1.0.19
2652 2652
 	 * @param  string $value address.
2653 2653
 	 */
2654
-	public function set_customer_address( $value ) {
2655
-		$this->set_address( $value );
2654
+	public function set_customer_address($value) {
2655
+		$this->set_address($value);
2656 2656
     }
2657 2657
 
2658 2658
     /**
@@ -2661,8 +2661,8 @@  discard block
 block discarded – undo
2661 2661
 	 * @since 1.0.19
2662 2662
 	 * @param  int|bool $value confirmed.
2663 2663
 	 */
2664
-	public function set_is_viewed( $value ) {
2665
-		$this->set_prop( 'is_viewed', $value );
2664
+	public function set_is_viewed($value) {
2665
+		$this->set_prop('is_viewed', $value);
2666 2666
 	}
2667 2667
 
2668 2668
 	/**
@@ -2671,8 +2671,8 @@  discard block
 block discarded – undo
2671 2671
 	 * @since 1.0.19
2672 2672
 	 * @param  string $value email recipients.
2673 2673
 	 */
2674
-	public function set_email_cc( $value ) {
2675
-		$this->set_prop( 'email_cc', $value );
2674
+	public function set_email_cc($value) {
2675
+		$this->set_prop('email_cc', $value);
2676 2676
 	}
2677 2677
 
2678 2678
 	/**
@@ -2681,9 +2681,9 @@  discard block
 block discarded – undo
2681 2681
 	 * @since 1.0.19
2682 2682
 	 * @param  string $value template.
2683 2683
 	 */
2684
-	public function set_template( $value ) {
2685
-		if ( in_array( $value, array( 'quantity', 'hours', 'amount' ) ) ) {
2686
-			$this->set_prop( 'template', $value );
2684
+	public function set_template($value) {
2685
+		if (in_array($value, array('quantity', 'hours', 'amount'))) {
2686
+			$this->set_prop('template', $value);
2687 2687
 		}
2688 2688
 	}
2689 2689
 
@@ -2694,8 +2694,8 @@  discard block
 block discarded – undo
2694 2694
 	 * @param  string $value source.
2695 2695
 	 * @deprecated
2696 2696
 	 */
2697
-	public function created_via( $value ) {
2698
-		$this->set_created_via( sanitize_text_field( $value ) );
2697
+	public function created_via($value) {
2698
+		$this->set_created_via(sanitize_text_field($value));
2699 2699
 	}
2700 2700
 
2701 2701
 	/**
@@ -2704,8 +2704,8 @@  discard block
 block discarded – undo
2704 2704
 	 * @since 1.0.19
2705 2705
 	 * @param  string $value source.
2706 2706
 	 */
2707
-	public function set_created_via( $value ) {
2708
-		$this->set_prop( 'created_via', sanitize_text_field( $value ) );
2707
+	public function set_created_via($value) {
2708
+		$this->set_prop('created_via', sanitize_text_field($value));
2709 2709
 	}
2710 2710
 
2711 2711
 	/**
@@ -2714,8 +2714,8 @@  discard block
 block discarded – undo
2714 2714
 	 * @since 1.0.19
2715 2715
 	 * @param  int|bool $value confirmed.
2716 2716
 	 */
2717
-	public function set_address_confirmed( $value ) {
2718
-		$this->set_prop( 'address_confirmed', $value );
2717
+	public function set_address_confirmed($value) {
2718
+		$this->set_prop('address_confirmed', $value);
2719 2719
     }
2720 2720
 
2721 2721
     /**
@@ -2724,8 +2724,8 @@  discard block
 block discarded – undo
2724 2724
 	 * @since 1.0.19
2725 2725
 	 * @param  int|bool $value confirmed.
2726 2726
 	 */
2727
-	public function set_user_address_confirmed( $value ) {
2728
-		$this->set_address_confirmed( $value );
2727
+	public function set_user_address_confirmed($value) {
2728
+		$this->set_address_confirmed($value);
2729 2729
     }
2730 2730
 
2731 2731
     /**
@@ -2734,8 +2734,8 @@  discard block
 block discarded – undo
2734 2734
 	 * @since 1.0.19
2735 2735
 	 * @param  int|bool $value confirmed.
2736 2736
 	 */
2737
-	public function set_customer_address_confirmed( $value ) {
2738
-		$this->set_address_confirmed( $value );
2737
+	public function set_customer_address_confirmed($value) {
2738
+		$this->set_address_confirmed($value);
2739 2739
     }
2740 2740
 
2741 2741
     /**
@@ -2744,8 +2744,8 @@  discard block
 block discarded – undo
2744 2744
 	 * @since 1.0.19
2745 2745
 	 * @param  float $value sub total.
2746 2746
 	 */
2747
-	public function set_subtotal( $value ) {
2748
-		$this->set_prop( 'subtotal', max( 0, $value ) );
2747
+	public function set_subtotal($value) {
2748
+		$this->set_prop('subtotal', max(0, $value));
2749 2749
 	}
2750 2750
 
2751 2751
 	/**
@@ -2754,8 +2754,8 @@  discard block
 block discarded – undo
2754 2754
 	 * @since 1.0.19
2755 2755
 	 * @param  float $value sub total.
2756 2756
 	 */
2757
-	public function set_total( $value ) {
2758
-		$this->set_prop( 'total', max( 0, $value ) );
2757
+	public function set_total($value) {
2758
+		$this->set_prop('total', max(0, $value));
2759 2759
     }
2760 2760
 
2761 2761
     /**
@@ -2764,8 +2764,8 @@  discard block
 block discarded – undo
2764 2764
 	 * @since 1.0.19
2765 2765
 	 * @param  float $value discount total.
2766 2766
 	 */
2767
-	public function set_total_discount( $value ) {
2768
-		$this->set_prop( 'total_discount', max( 0, $value ) );
2767
+	public function set_total_discount($value) {
2768
+		$this->set_prop('total_discount', max(0, $value));
2769 2769
     }
2770 2770
 
2771 2771
     /**
@@ -2774,8 +2774,8 @@  discard block
 block discarded – undo
2774 2774
 	 * @since 1.0.19
2775 2775
 	 * @param  float $value discount total.
2776 2776
 	 */
2777
-	public function set_discount( $value ) {
2778
-		$this->set_total_discount( $value );
2777
+	public function set_discount($value) {
2778
+		$this->set_total_discount($value);
2779 2779
     }
2780 2780
 
2781 2781
     /**
@@ -2784,8 +2784,8 @@  discard block
 block discarded – undo
2784 2784
 	 * @since 1.0.19
2785 2785
 	 * @param  float $value tax total.
2786 2786
 	 */
2787
-	public function set_total_tax( $value ) {
2788
-		$this->set_prop( 'total_tax', max( 0, $value ) );
2787
+	public function set_total_tax($value) {
2788
+		$this->set_prop('total_tax', max(0, $value));
2789 2789
     }
2790 2790
 
2791 2791
     /**
@@ -2794,8 +2794,8 @@  discard block
 block discarded – undo
2794 2794
 	 * @since 1.0.19
2795 2795
 	 * @param  float $value tax total.
2796 2796
 	 */
2797
-	public function set_tax_total( $value ) {
2798
-		$this->set_total_tax( $value );
2797
+	public function set_tax_total($value) {
2798
+		$this->set_total_tax($value);
2799 2799
     }
2800 2800
 
2801 2801
     /**
@@ -2804,8 +2804,8 @@  discard block
 block discarded – undo
2804 2804
 	 * @since 1.0.19
2805 2805
 	 * @param  float $value fees total.
2806 2806
 	 */
2807
-	public function set_total_fees( $value ) {
2808
-		$this->set_prop( 'total_fees', max( 0, $value ) );
2807
+	public function set_total_fees($value) {
2808
+		$this->set_prop('total_fees', max(0, $value));
2809 2809
     }
2810 2810
 
2811 2811
     /**
@@ -2814,8 +2814,8 @@  discard block
 block discarded – undo
2814 2814
 	 * @since 1.0.19
2815 2815
 	 * @param  float $value fees total.
2816 2816
 	 */
2817
-	public function set_fees_total( $value ) {
2818
-		$this->set_total_fees( $value );
2817
+	public function set_fees_total($value) {
2818
+		$this->set_total_fees($value);
2819 2819
     }
2820 2820
 
2821 2821
     /**
@@ -2824,13 +2824,13 @@  discard block
 block discarded – undo
2824 2824
 	 * @since 1.0.19
2825 2825
 	 * @param  array $value fees.
2826 2826
 	 */
2827
-	public function set_fees( $value ) {
2827
+	public function set_fees($value) {
2828 2828
 
2829
-		if ( ! is_array( $value ) ) {
2829
+		if (!is_array($value)) {
2830 2830
 			$value = array();
2831 2831
 		}
2832 2832
 
2833
-		$this->set_prop( 'fees', $value );
2833
+		$this->set_prop('fees', $value);
2834 2834
 
2835 2835
     }
2836 2836
 
@@ -2840,13 +2840,13 @@  discard block
 block discarded – undo
2840 2840
 	 * @since 1.0.19
2841 2841
 	 * @param  array $value taxes.
2842 2842
 	 */
2843
-	public function set_taxes( $value ) {
2843
+	public function set_taxes($value) {
2844 2844
 
2845
-		if ( ! is_array( $value ) ) {
2845
+		if (!is_array($value)) {
2846 2846
 			$value = array();
2847 2847
 		}
2848 2848
 
2849
-		$this->set_prop( 'taxes', $value );
2849
+		$this->set_prop('taxes', $value);
2850 2850
 
2851 2851
     }
2852 2852
 
@@ -2856,13 +2856,13 @@  discard block
 block discarded – undo
2856 2856
 	 * @since 1.0.19
2857 2857
 	 * @param  array $value discounts.
2858 2858
 	 */
2859
-	public function set_discounts( $value ) {
2859
+	public function set_discounts($value) {
2860 2860
 
2861
-		if ( ! is_array( $value ) ) {
2861
+		if (!is_array($value)) {
2862 2862
 			$value = array();
2863 2863
 		}
2864 2864
 
2865
-		$this->set_prop( 'discounts', $value );
2865
+		$this->set_prop('discounts', $value);
2866 2866
     }
2867 2867
 
2868 2868
     /**
@@ -2871,19 +2871,19 @@  discard block
 block discarded – undo
2871 2871
 	 * @since 1.0.19
2872 2872
 	 * @param  GetPaid_Form_Item[] $value items.
2873 2873
 	 */
2874
-	public function set_items( $value ) {
2874
+	public function set_items($value) {
2875 2875
 
2876 2876
         // Remove existing items.
2877
-        $this->set_prop( 'items', array() );
2877
+        $this->set_prop('items', array());
2878 2878
 		$this->recurring_item = null;
2879 2879
 
2880 2880
         // Ensure that we have an array.
2881
-        if ( ! is_array( $value ) ) {
2881
+        if (!is_array($value)) {
2882 2882
             return;
2883 2883
         }
2884 2884
 
2885
-        foreach ( $value as $item ) {
2886
-            $this->add_item( $item );
2885
+        foreach ($value as $item) {
2886
+            $this->add_item($item);
2887 2887
         }
2888 2888
 
2889 2889
     }
@@ -2894,8 +2894,8 @@  discard block
 block discarded – undo
2894 2894
 	 * @since 1.0.19
2895 2895
 	 * @param  int $value payment form.
2896 2896
 	 */
2897
-	public function set_payment_form( $value ) {
2898
-		$this->set_prop( 'payment_form', $value );
2897
+	public function set_payment_form($value) {
2898
+		$this->set_prop('payment_form', $value);
2899 2899
     }
2900 2900
 
2901 2901
     /**
@@ -2904,8 +2904,8 @@  discard block
 block discarded – undo
2904 2904
 	 * @since 1.0.19
2905 2905
 	 * @param  string $value submission id.
2906 2906
 	 */
2907
-	public function set_submission_id( $value ) {
2908
-		$this->set_prop( 'submission_id', $value );
2907
+	public function set_submission_id($value) {
2908
+		$this->set_prop('submission_id', $value);
2909 2909
     }
2910 2910
 
2911 2911
     /**
@@ -2914,8 +2914,8 @@  discard block
 block discarded – undo
2914 2914
 	 * @since 1.0.19
2915 2915
 	 * @param  string $value discount code.
2916 2916
 	 */
2917
-	public function set_discount_code( $value ) {
2918
-		$this->set_prop( 'discount_code', sanitize_text_field( $value ) );
2917
+	public function set_discount_code($value) {
2918
+		$this->set_prop('discount_code', sanitize_text_field($value));
2919 2919
     }
2920 2920
 
2921 2921
     /**
@@ -2924,8 +2924,8 @@  discard block
 block discarded – undo
2924 2924
 	 * @since 1.0.19
2925 2925
 	 * @param  string $value gateway.
2926 2926
 	 */
2927
-	public function set_gateway( $value ) {
2928
-		$this->set_prop( 'gateway', $value );
2927
+	public function set_gateway($value) {
2928
+		$this->set_prop('gateway', $value);
2929 2929
     }
2930 2930
 
2931 2931
     /**
@@ -2934,9 +2934,9 @@  discard block
 block discarded – undo
2934 2934
 	 * @since 1.0.19
2935 2935
 	 * @param  string $value transaction id.
2936 2936
 	 */
2937
-	public function set_transaction_id( $value ) {
2938
-		if ( ! empty( $value ) ) {
2939
-			$this->set_prop( 'transaction_id', $value );
2937
+	public function set_transaction_id($value) {
2938
+		if (!empty($value)) {
2939
+			$this->set_prop('transaction_id', $value);
2940 2940
 		}
2941 2941
     }
2942 2942
 
@@ -2946,8 +2946,8 @@  discard block
 block discarded – undo
2946 2946
 	 * @since 1.0.19
2947 2947
 	 * @param  string $value currency id.
2948 2948
 	 */
2949
-	public function set_currency( $value ) {
2950
-		$this->set_prop( 'currency', $value );
2949
+	public function set_currency($value) {
2950
+		$this->set_prop('currency', $value);
2951 2951
     }
2952 2952
 
2953 2953
 	/**
@@ -2956,8 +2956,8 @@  discard block
 block discarded – undo
2956 2956
 	 * @since 1.0.19
2957 2957
 	 * @param  bool $value value.
2958 2958
 	 */
2959
-	public function set_disable_taxes( $value ) {
2960
-		$this->set_prop( 'disable_taxes', (bool) $value );
2959
+	public function set_disable_taxes($value) {
2960
+		$this->set_prop('disable_taxes', (bool) $value);
2961 2961
 	}
2962 2962
 
2963 2963
     /**
@@ -2966,8 +2966,8 @@  discard block
 block discarded – undo
2966 2966
 	 * @since 1.0.19
2967 2967
 	 * @param  string $value subscription id.
2968 2968
 	 */
2969
-	public function set_subscription_id( $value ) {
2970
-		$this->set_prop( 'subscription_id', $value );
2969
+	public function set_subscription_id($value) {
2970
+		$this->set_prop('subscription_id', $value);
2971 2971
 	}
2972 2972
 	
2973 2973
 	/**
@@ -2976,8 +2976,8 @@  discard block
 block discarded – undo
2976 2976
 	 * @since 1.0.19
2977 2977
 	 * @param  string $value subscription id.
2978 2978
 	 */
2979
-	public function set_remote_subscription_id( $value ) {
2980
-		$this->set_prop( 'remote_subscription_id', $value );
2979
+	public function set_remote_subscription_id($value) {
2980
+		$this->set_prop('remote_subscription_id', $value);
2981 2981
     }
2982 2982
 
2983 2983
     /*
@@ -2994,28 +2994,28 @@  discard block
 block discarded – undo
2994 2994
      */
2995 2995
     public function is_parent() {
2996 2996
         $parent = $this->get_parent_id();
2997
-        return apply_filters( 'wpinv_invoice_is_parent', empty( $parent ), $this );
2997
+        return apply_filters('wpinv_invoice_is_parent', empty($parent), $this);
2998 2998
     }
2999 2999
 
3000 3000
     /**
3001 3001
      * Checks if this is a renewal invoice.
3002 3002
      */
3003 3003
     public function is_renewal() {
3004
-        return ! $this->is_parent();
3004
+        return !$this->is_parent();
3005 3005
     }
3006 3006
 
3007 3007
     /**
3008 3008
      * Checks if this is a recurring invoice.
3009 3009
      */
3010 3010
     public function is_recurring() {
3011
-        return $this->is_renewal() || ! empty( $this->recurring_item );
3011
+        return $this->is_renewal() || !empty($this->recurring_item);
3012 3012
     }
3013 3013
 
3014 3014
     /**
3015 3015
      * Checks if this is a taxable invoice.
3016 3016
      */
3017 3017
     public function is_taxable() {
3018
-        return ! $this->get_disable_taxes();
3018
+        return !$this->get_disable_taxes();
3019 3019
 	}
3020 3020
 
3021 3021
 	/**
@@ -3029,45 +3029,45 @@  discard block
 block discarded – undo
3029 3029
 	 * Checks to see if the invoice requires payment.
3030 3030
 	 */
3031 3031
 	public function is_free() {
3032
-        $is_free = ( (float) wpinv_round_amount( $this->get_initial_total() ) == 0 );
3032
+        $is_free = ((float) wpinv_round_amount($this->get_initial_total()) == 0);
3033 3033
 
3034
-		if ( $this->is_recurring() && $this->get_recurring_total() > 0 ) {
3034
+		if ($this->is_recurring() && $this->get_recurring_total() > 0) {
3035 3035
 			$is_free = false;
3036 3036
 		}
3037 3037
 
3038
-        return apply_filters( 'wpinv_invoice_is_free', $is_free, $this );
3038
+        return apply_filters('wpinv_invoice_is_free', $is_free, $this);
3039 3039
     }
3040 3040
 
3041 3041
     /**
3042 3042
      * Checks if the invoice is paid.
3043 3043
      */
3044 3044
     public function is_paid() {
3045
-        $is_paid = $this->has_status( array( 'publish', 'wpi-processing', 'wpi-renewal' ) );
3046
-        return apply_filters( 'wpinv_invoice_is_paid', $is_paid, $this );
3045
+        $is_paid = $this->has_status(array('publish', 'wpi-processing', 'wpi-renewal'));
3046
+        return apply_filters('wpinv_invoice_is_paid', $is_paid, $this);
3047 3047
 	}
3048 3048
 
3049 3049
 	/**
3050 3050
      * Checks if the invoice needs payment.
3051 3051
      */
3052 3052
 	public function needs_payment() {
3053
-		$needs_payment = ! $this->is_paid() && ! $this->is_refunded() && ! $this->is_free();
3054
-        return apply_filters( 'wpinv_needs_payment', $needs_payment, $this );
3053
+		$needs_payment = !$this->is_paid() && !$this->is_refunded() && !$this->is_free();
3054
+        return apply_filters('wpinv_needs_payment', $needs_payment, $this);
3055 3055
     }
3056 3056
   
3057 3057
 	/**
3058 3058
      * Checks if the invoice is refunded.
3059 3059
      */
3060 3060
 	public function is_refunded() {
3061
-        $is_refunded = $this->has_status( 'wpi-refunded' );
3062
-        return apply_filters( 'wpinv_invoice_is_refunded', $is_refunded, $this );
3061
+        $is_refunded = $this->has_status('wpi-refunded');
3062
+        return apply_filters('wpinv_invoice_is_refunded', $is_refunded, $this);
3063 3063
 	}
3064 3064
 
3065 3065
 	/**
3066 3066
      * Checks if the invoice is held.
3067 3067
      */
3068 3068
 	public function is_held() {
3069
-        $is_held = $this->has_status( 'wpi-onhold' );
3070
-        return apply_filters( 'wpinv_invoice_is_held', $is_held, $this );
3069
+        $is_held = $this->has_status('wpi-onhold');
3070
+        return apply_filters('wpinv_invoice_is_held', $is_held, $this);
3071 3071
 	}
3072 3072
 
3073 3073
 	/**
@@ -3075,30 +3075,30 @@  discard block
 block discarded – undo
3075 3075
      */
3076 3076
 	public function is_due() {
3077 3077
 		$due_date = $this->get_due_date();
3078
-		return empty( $due_date ) ? false : current_time( 'timestamp' ) > strtotime( $due_date );
3078
+		return empty($due_date) ? false : current_time('timestamp') > strtotime($due_date);
3079 3079
 	}
3080 3080
 
3081 3081
 	/**
3082 3082
      * Checks if the invoice is draft.
3083 3083
      */
3084 3084
 	public function is_draft() {
3085
-        return $this->has_status( 'draft, auto-draft' );
3085
+        return $this->has_status('draft, auto-draft');
3086 3086
 	}
3087 3087
 
3088 3088
     /**
3089 3089
      * Checks if the invoice has a given status.
3090 3090
      */
3091
-    public function has_status( $status ) {
3092
-        $status = wpinv_parse_list( $status );
3093
-        return apply_filters( 'wpinv_has_status', in_array( $this->get_status(), $status ), $status );
3091
+    public function has_status($status) {
3092
+        $status = wpinv_parse_list($status);
3093
+        return apply_filters('wpinv_has_status', in_array($this->get_status(), $status), $status);
3094 3094
 	}
3095 3095
 
3096 3096
 	/**
3097 3097
      * Checks if the invoice is of a given type.
3098 3098
      */
3099
-    public function is_type( $type ) {
3100
-        $type = wpinv_parse_list( $type );
3101
-        return in_array( $this->get_type(), $type );
3099
+    public function is_type($type) {
3100
+        $type = wpinv_parse_list($type);
3101
+        return in_array($this->get_type(), $type);
3102 3102
     }
3103 3103
 
3104 3104
     /**
@@ -3130,8 +3130,8 @@  discard block
 block discarded – undo
3130 3130
      *
3131 3131
      */
3132 3132
 	public function is_initial_free() {
3133
-        $is_initial_free = ! ( (float) wpinv_round_amount( $this->get_initial_total() ) > 0 );
3134
-        return apply_filters( 'wpinv_invoice_is_initial_free', $is_initial_free, $this->get_cart_details(), $this );
3133
+        $is_initial_free = !((float) wpinv_round_amount($this->get_initial_total()) > 0);
3134
+        return apply_filters('wpinv_invoice_is_initial_free', $is_initial_free, $this->get_cart_details(), $this);
3135 3135
     }
3136 3136
 	
3137 3137
 	/**
@@ -3141,11 +3141,11 @@  discard block
 block discarded – undo
3141 3141
     public function item_has_free_trial() {
3142 3142
 
3143 3143
         // Ensure we have a recurring item.
3144
-        if ( ! $this->is_recurring() ) {
3144
+        if (!$this->is_recurring()) {
3145 3145
             return false;
3146 3146
         }
3147 3147
 
3148
-        $item = $this->get_recurring( true );
3148
+        $item = $this->get_recurring(true);
3149 3149
         return $item->has_free_trial();
3150 3150
 	}
3151 3151
 
@@ -3153,7 +3153,7 @@  discard block
 block discarded – undo
3153 3153
      * Check if the free trial is a result of a discount.
3154 3154
      */
3155 3155
     public function is_free_trial_from_discount() {
3156
-		return $this->has_free_trial() && ! $this->item_has_free_trial();
3156
+		return $this->has_free_trial() && !$this->item_has_free_trial();
3157 3157
 	}
3158 3158
 	
3159 3159
 	/**
@@ -3161,12 +3161,12 @@  discard block
 block discarded – undo
3161 3161
      */
3162 3162
     public function discount_first_payment_only() {
3163 3163
 
3164
-		$discount = wpinv_get_discount_obj( $this->get_discount_code() );
3165
-        if ( ! $discount->exists() || ! $this->is_recurring() ) {
3164
+		$discount = wpinv_get_discount_obj($this->get_discount_code());
3165
+        if (!$discount->exists() || !$this->is_recurring()) {
3166 3166
             return true;
3167 3167
         }
3168 3168
 
3169
-        return ! $discount->get_is_recurring();
3169
+        return !$discount->get_is_recurring();
3170 3170
     }
3171 3171
 
3172 3172
     /*
@@ -3184,27 +3184,27 @@  discard block
 block discarded – undo
3184 3184
      * @param GetPaid_Form_Item|array $item
3185 3185
      * @return WP_Error|Bool
3186 3186
      */
3187
-    public function add_item( $item ) {
3187
+    public function add_item($item) {
3188 3188
 
3189
-		if ( is_array( $item ) ) {
3190
-			$item = $this->process_array_item( $item );
3189
+		if (is_array($item)) {
3190
+			$item = $this->process_array_item($item);
3191 3191
 		}
3192 3192
 
3193
-		if ( is_numeric( $item ) ) {
3194
-			$item = new GetPaid_Form_Item( $item );
3193
+		if (is_numeric($item)) {
3194
+			$item = new GetPaid_Form_Item($item);
3195 3195
 		}
3196 3196
 
3197 3197
         // Make sure that it is available for purchase.
3198
-		if ( $item->get_id() > 0 && ! $item->can_purchase() ) {
3199
-			return new WP_Error( 'invalid_item', __( 'This item is not available for purchase', 'invoicing' ) );
3198
+		if ($item->get_id() > 0 && !$item->can_purchase()) {
3199
+			return new WP_Error('invalid_item', __('This item is not available for purchase', 'invoicing'));
3200 3200
         }
3201 3201
 
3202 3202
         // Do we have a recurring item?
3203
-		if ( $item->is_recurring() ) {
3203
+		if ($item->is_recurring()) {
3204 3204
 
3205 3205
 			// An invoice can only contain one recurring item.
3206
-			if ( ! empty( $this->recurring_item )  && $this->recurring_item != (int) $item->get_id() ) {
3207
-				return new WP_Error( 'recurring_item', __( 'An invoice can only contain one recurring item', 'invoicing' ) );
3206
+			if (!empty($this->recurring_item) && $this->recurring_item != (int) $item->get_id()) {
3207
+				return new WP_Error('recurring_item', __('An invoice can only contain one recurring item', 'invoicing'));
3208 3208
 			}
3209 3209
 
3210 3210
 			$this->recurring_item = $item->get_id();
@@ -3214,7 +3214,7 @@  discard block
 block discarded – undo
3214 3214
         $item->invoice_id = (int) $this->get_id();
3215 3215
 
3216 3216
 		// Remove duplicates.
3217
-		$this->remove_item( $item->get_id() );
3217
+		$this->remove_item($item->get_id());
3218 3218
 
3219 3219
 		// Retrieve all items.
3220 3220
         $items   = $this->get_items();
@@ -3222,7 +3222,7 @@  discard block
 block discarded – undo
3222 3222
 		// Add new item.
3223 3223
         $items[] = $item;
3224 3224
 
3225
-        $this->set_prop( 'items', $items );
3225
+        $this->set_prop('items', $items);
3226 3226
 
3227 3227
 		return true;
3228 3228
 	}
@@ -3233,26 +3233,26 @@  discard block
 block discarded – undo
3233 3233
 	 * @since 1.0.19
3234 3234
 	 * @return GetPaid_Form_Item
3235 3235
 	 */
3236
-	protected function process_array_item( $array ) {
3236
+	protected function process_array_item($array) {
3237 3237
 
3238
-		$item_id = isset( $array['item_id'] ) ? $array['item_id'] : 0;
3239
-		$item    = new GetPaid_Form_Item( $item_id );
3238
+		$item_id = isset($array['item_id']) ? $array['item_id'] : 0;
3239
+		$item    = new GetPaid_Form_Item($item_id);
3240 3240
 
3241 3241
 		// Set item data.
3242
-		foreach ( array( 'name', 'price', 'description' ) as $key ) {
3243
-			if ( isset( $array[ "item_$key" ] ) ) {
3242
+		foreach (array('name', 'price', 'description') as $key) {
3243
+			if (isset($array["item_$key"])) {
3244 3244
 				$method = "set_$key";
3245
-				$item->$method( $array[ "item_$key" ] );
3245
+				$item->$method($array["item_$key"]);
3246 3246
 			}
3247 3247
 		}
3248 3248
 
3249
-		if ( isset( $array['quantity'] ) ) {
3250
-			$item->set_quantity( $array['quantity'] );
3249
+		if (isset($array['quantity'])) {
3250
+			$item->set_quantity($array['quantity']);
3251 3251
 		}
3252 3252
 
3253 3253
 		// Set item meta.
3254
-		if ( isset( $array['meta'] ) && is_array( $array['meta'] ) ) {
3255
-			$item->set_item_meta( $array['meta'] );
3254
+		if (isset($array['meta']) && is_array($array['meta'])) {
3255
+			$item->set_item_meta($array['meta']);
3256 3256
 		}
3257 3257
 
3258 3258
 		return $item;
@@ -3265,10 +3265,10 @@  discard block
 block discarded – undo
3265 3265
 	 * @since 1.0.19
3266 3266
 	 * @return GetPaid_Form_Item|null
3267 3267
 	 */
3268
-	public function get_item( $item_id ) {
3268
+	public function get_item($item_id) {
3269 3269
 
3270
-		foreach ( $this->get_items() as $item ) {
3271
-			if ( (int) $item_id == $item->get_id() ) {
3270
+		foreach ($this->get_items() as $item) {
3271
+			if ((int) $item_id == $item->get_id()) {
3272 3272
 				return $item;
3273 3273
 			}
3274 3274
 		}
@@ -3281,16 +3281,16 @@  discard block
 block discarded – undo
3281 3281
 	 *
3282 3282
 	 * @since 1.0.19
3283 3283
 	 */
3284
-	public function remove_item( $item_id ) {
3284
+	public function remove_item($item_id) {
3285 3285
 		$items   = $this->get_items();
3286 3286
 		$item_id = (int) $item_id;
3287 3287
 
3288
-		foreach ( $items as $index => $item ) {
3289
-			if ( (int) $item_id == $item->get_id() ) {
3290
-				unset( $items[ $index ] );
3291
-				$this->set_prop( 'items', $items );
3288
+		foreach ($items as $index => $item) {
3289
+			if ((int) $item_id == $item->get_id()) {
3290
+				unset($items[$index]);
3291
+				$this->set_prop('items', $items);
3292 3292
 
3293
-				if ( $item_id == $this->recurring_item ) {
3293
+				if ($item_id == $this->recurring_item) {
3294 3294
 					$this->recurring_item = null;
3295 3295
 				}
3296 3296
 
@@ -3305,11 +3305,11 @@  discard block
 block discarded – undo
3305 3305
 	 * @param array $fee An array of fee details. name, initial_fee, and recurring_fee are required.
3306 3306
 	 * @since 1.0.19
3307 3307
 	 */
3308
-    public function add_fee( $fee ) {
3308
+    public function add_fee($fee) {
3309 3309
 
3310 3310
 		$fees                 = $this->get_fees();
3311
-		$fees[ $fee['name'] ] = $fee;
3312
-		$this->set_prop( 'fees', $fees );
3311
+		$fees[$fee['name']] = $fee;
3312
+		$this->set_prop('fees', $fees);
3313 3313
 
3314 3314
     }
3315 3315
 
@@ -3318,9 +3318,9 @@  discard block
 block discarded – undo
3318 3318
 	 *
3319 3319
 	 * @since 1.0.19
3320 3320
 	 */
3321
-	public function get_fee( $fee ) {
3321
+	public function get_fee($fee) {
3322 3322
         $fees = $this->get_fees();
3323
-		return isset( $fees[ $fee ] ) ? $fees[ $fee ] : null;
3323
+		return isset($fees[$fee]) ? $fees[$fee] : null;
3324 3324
     }
3325 3325
 
3326 3326
     /**
@@ -3328,11 +3328,11 @@  discard block
 block discarded – undo
3328 3328
 	 *
3329 3329
 	 * @since 1.0.19
3330 3330
 	 */
3331
-	public function remove_fee( $fee ) {
3331
+	public function remove_fee($fee) {
3332 3332
         $fees = $this->get_fees();
3333
-        if ( isset( $fees[ $fee ] ) ) {
3334
-            unset( $fees[ $fee ] );
3335
-            $this->set_prop( 'fees', $fees );
3333
+        if (isset($fees[$fee])) {
3334
+            unset($fees[$fee]);
3335
+            $this->set_prop('fees', $fees);
3336 3336
         }
3337 3337
     }
3338 3338
 
@@ -3342,11 +3342,11 @@  discard block
 block discarded – undo
3342 3342
 	 * @param array $discount An array of discount details. name, initial_discount, and recurring_discount are required. Include discount_code if the discount is from a discount code.
3343 3343
 	 * @since 1.0.19
3344 3344
 	 */
3345
-	public function add_discount( $discount ) {
3345
+	public function add_discount($discount) {
3346 3346
 
3347 3347
 		$discounts = $this->get_discounts();
3348
-		$discounts[ $discount['name'] ] = $discount;
3349
-		$this->set_prop( 'discounts', $discounts );
3348
+		$discounts[$discount['name']] = $discount;
3349
+		$this->set_prop('discounts', $discounts);
3350 3350
 
3351 3351
 	}
3352 3352
 
@@ -3356,15 +3356,15 @@  discard block
 block discarded – undo
3356 3356
 	 * @since 1.0.19
3357 3357
 	 * @return float
3358 3358
 	 */
3359
-	public function get_discount( $discount = false ) {
3359
+	public function get_discount($discount = false) {
3360 3360
 
3361 3361
 		// Backwards compatibilty.
3362
-		if ( empty( $discount ) ) {
3362
+		if (empty($discount)) {
3363 3363
 			return $this->get_total_discount();
3364 3364
 		}
3365 3365
 
3366 3366
         $discounts = $this->get_discounts();
3367
-		return isset( $discounts[ $discount ] ) ? $discounts[ $discount ] : null;
3367
+		return isset($discounts[$discount]) ? $discounts[$discount] : null;
3368 3368
     }
3369 3369
 
3370 3370
     /**
@@ -3372,11 +3372,11 @@  discard block
 block discarded – undo
3372 3372
 	 *
3373 3373
 	 * @since 1.0.19
3374 3374
 	 */
3375
-	public function remove_discount( $discount ) {
3375
+	public function remove_discount($discount) {
3376 3376
         $discounts = $this->get_discounts();
3377
-        if ( isset( $discounts[ $discount ] ) ) {
3378
-            unset( $discounts[ $discount ] );
3379
-            $this->set_prop( 'discounts', $discounts );
3377
+        if (isset($discounts[$discount])) {
3378
+            unset($discounts[$discount]);
3379
+            $this->set_prop('discounts', $discounts);
3380 3380
         }
3381 3381
     }
3382 3382
 
@@ -3385,12 +3385,12 @@  discard block
 block discarded – undo
3385 3385
      *
3386 3386
      * @param array $tax An array of tax details. name, initial_tax, and recurring_tax are required.
3387 3387
      */
3388
-    public function add_tax( $tax ) {
3389
-        if ( $this->is_taxable() ) {
3388
+    public function add_tax($tax) {
3389
+        if ($this->is_taxable()) {
3390 3390
 
3391
-            $taxes                 = $this->get_taxes();
3392
-			$taxes[ $tax['name'] ] = $tax;
3393
-			$this->set_prop( 'taxes', $tax );
3391
+            $taxes = $this->get_taxes();
3392
+			$taxes[$tax['name']] = $tax;
3393
+			$this->set_prop('taxes', $tax);
3394 3394
 
3395 3395
         }
3396 3396
     }
@@ -3400,15 +3400,15 @@  discard block
 block discarded – undo
3400 3400
 	 *
3401 3401
 	 * @since 1.0.19
3402 3402
 	 */
3403
-	public function get_tax( $tax = null ) {
3403
+	public function get_tax($tax = null) {
3404 3404
 
3405 3405
 		// Backwards compatility.
3406
-		if ( empty( $tax ) ) {
3406
+		if (empty($tax)) {
3407 3407
 			return $this->get_total_tax();
3408 3408
 		}
3409 3409
 
3410 3410
         $taxes = $this->get_taxes();
3411
-		return isset( $taxes[ $tax ] ) ? $taxes[ $tax ] : null;
3411
+		return isset($taxes[$tax]) ? $taxes[$tax] : null;
3412 3412
     }
3413 3413
 
3414 3414
     /**
@@ -3416,11 +3416,11 @@  discard block
 block discarded – undo
3416 3416
 	 *
3417 3417
 	 * @since 1.0.19
3418 3418
 	 */
3419
-	public function remove_tax( $tax ) {
3419
+	public function remove_tax($tax) {
3420 3420
         $taxes = $this->get_taxes();
3421
-        if ( isset( $taxes[ $tax ] ) ) {
3422
-            unset( $taxes[ $tax ] );
3423
-            $this->set_prop( 'taxes', $taxes );
3421
+        if (isset($taxes[$tax])) {
3422
+            unset($taxes[$tax]);
3423
+            $this->set_prop('taxes', $taxes);
3424 3424
         }
3425 3425
     }
3426 3426
 
@@ -3431,22 +3431,22 @@  discard block
 block discarded – undo
3431 3431
 	 * @return float The recalculated subtotal
3432 3432
 	 */
3433 3433
 	public function recalculate_subtotal() {
3434
-        $items     = $this->get_items();
3434
+        $items = $this->get_items();
3435 3435
 		$subtotal  = 0;
3436 3436
 		$recurring = 0;
3437 3437
 
3438
-        foreach ( $items as $item ) {
3438
+        foreach ($items as $item) {
3439 3439
 			$subtotal  += $item->get_sub_total();
3440 3440
 			$recurring += $item->get_recurring_sub_total();
3441 3441
         }
3442 3442
 
3443
-		if ( wpinv_prices_include_tax() ) {
3444
-			$subtotal  = max( 0, $subtotal - $this->totals['tax']['initial'] );
3445
-			$recurring = max( 0, $recurring - $this->totals['tax']['recurring'] );
3443
+		if (wpinv_prices_include_tax()) {
3444
+			$subtotal  = max(0, $subtotal - $this->totals['tax']['initial']);
3445
+			$recurring = max(0, $recurring - $this->totals['tax']['recurring']);
3446 3446
 		}
3447 3447
 
3448 3448
 		$current = $this->is_renewal() ? $recurring : $subtotal;
3449
-		$this->set_subtotal( $current );
3449
+		$this->set_subtotal($current);
3450 3450
 
3451 3451
 		$this->totals['subtotal'] = array(
3452 3452
 			'initial'   => $subtotal,
@@ -3467,14 +3467,14 @@  discard block
 block discarded – undo
3467 3467
 		$discount  = 0;
3468 3468
 		$recurring = 0;
3469 3469
 
3470
-        foreach ( $discounts as $data ) {
3471
-			$discount  += wpinv_sanitize_amount( $data['initial_discount'] );
3472
-			$recurring += wpinv_sanitize_amount( $data['recurring_discount'] );
3470
+        foreach ($discounts as $data) {
3471
+			$discount  += wpinv_sanitize_amount($data['initial_discount']);
3472
+			$recurring += wpinv_sanitize_amount($data['recurring_discount']);
3473 3473
 		}
3474 3474
 
3475 3475
 		$current = $this->is_renewal() ? $recurring : $discount;
3476 3476
 
3477
-		$this->set_total_discount( $current );
3477
+		$this->set_total_discount($current);
3478 3478
 
3479 3479
 		$this->totals['discount'] = array(
3480 3480
 			'initial'   => $discount,
@@ -3495,51 +3495,51 @@  discard block
 block discarded – undo
3495 3495
 
3496 3496
 		// Maybe disable taxes.
3497 3497
 		$vat_number = $this->get_vat_number();
3498
-		$skip_tax   = GetPaid_Payment_Form_Submission_Taxes::is_eu_transaction( $this->get_country() ) && ! empty( $vat_number );
3498
+		$skip_tax   = GetPaid_Payment_Form_Submission_Taxes::is_eu_transaction($this->get_country()) && !empty($vat_number);
3499 3499
 
3500
-		if ( wpinv_is_base_country( $this->get_country() ) && 'vat_too' == wpinv_get_option( 'vat_same_country_rule', 'vat_too' ) ) {
3500
+		if (wpinv_is_base_country($this->get_country()) && 'vat_too' == wpinv_get_option('vat_same_country_rule', 'vat_too')) {
3501 3501
 			$skip_tax = false;
3502 3502
 		}
3503 3503
 
3504
-		if ( ! wpinv_use_taxes() || $this->get_disable_taxes() || ! wpinv_is_country_taxable( $this->get_country() ) || $skip_tax   ) {
3504
+		if (!wpinv_use_taxes() || $this->get_disable_taxes() || !wpinv_is_country_taxable($this->get_country()) || $skip_tax) {
3505 3505
 
3506 3506
 			$this->totals['tax'] = array(
3507 3507
 				'initial'   => 0,
3508 3508
 				'recurring' => 0,
3509 3509
 			);
3510 3510
 
3511
-			$this->set_taxes( array() );
3511
+			$this->set_taxes(array());
3512 3512
 			$current = 0;
3513 3513
 		} else {
3514 3514
 
3515 3515
 			$item_taxes = array();
3516 3516
 
3517
-			foreach ( $this->get_items() as $item ) {
3518
-				$rates    = getpaid_get_item_tax_rates( $item, $this->get_country(), $this->get_state() );
3519
-				$rates    = getpaid_filter_item_tax_rates( $item, $rates );
3520
-				$taxes    = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_sub_total(), $this->get_discount_code(), false ), $rates );
3521
-				$r_taxes  = getpaid_calculate_item_taxes( getpaid_get_taxable_amount( $item->get_id(), $item->get_recurring_sub_total(), $this->get_discount_code(), true ), $rates );
3522
-				foreach ( $taxes as $name => $amount ) {
3523
-					$recurring = isset( $r_taxes[ $name ] ) ? $r_taxes[ $name ] : 0;
3524
-					$tax       = getpaid_prepare_item_tax( $item, $name, $amount, $recurring );
3525
-
3526
-					if ( ! isset( $item_taxes[ $name ] ) ) {
3527
-						$item_taxes[ $name ] = $tax;
3517
+			foreach ($this->get_items() as $item) {
3518
+				$rates    = getpaid_get_item_tax_rates($item, $this->get_country(), $this->get_state());
3519
+				$rates    = getpaid_filter_item_tax_rates($item, $rates);
3520
+				$taxes    = getpaid_calculate_item_taxes(getpaid_get_taxable_amount($item->get_id(), $item->get_sub_total(), $this->get_discount_code(), false), $rates);
3521
+				$r_taxes  = getpaid_calculate_item_taxes(getpaid_get_taxable_amount($item->get_id(), $item->get_recurring_sub_total(), $this->get_discount_code(), true), $rates);
3522
+				foreach ($taxes as $name => $amount) {
3523
+					$recurring = isset($r_taxes[$name]) ? $r_taxes[$name] : 0;
3524
+					$tax       = getpaid_prepare_item_tax($item, $name, $amount, $recurring);
3525
+
3526
+					if (!isset($item_taxes[$name])) {
3527
+						$item_taxes[$name] = $tax;
3528 3528
 						continue;
3529 3529
 					}
3530 3530
 
3531
-					$item_taxes[ $name ]['initial_tax']   += $tax['initial_tax'];
3532
-					$item_taxes[ $name ]['recurring_tax'] += $tax['recurring_tax'];
3531
+					$item_taxes[$name]['initial_tax']   += $tax['initial_tax'];
3532
+					$item_taxes[$name]['recurring_tax'] += $tax['recurring_tax'];
3533 3533
 
3534 3534
 				}
3535 3535
 
3536 3536
 			}
3537 3537
 
3538
-			$item_taxes = array_replace( $this->get_taxes(), $item_taxes );
3539
-			$this->set_taxes( $item_taxes );
3538
+			$item_taxes = array_replace($this->get_taxes(), $item_taxes);
3539
+			$this->set_taxes($item_taxes);
3540 3540
 
3541
-			$initial_tax   = array_sum( wp_list_pluck( $item_taxes, 'initial_tax' ) );
3542
-			$recurring_tax = array_sum( wp_list_pluck( $item_taxes, 'recurring_tax' ) );
3541
+			$initial_tax   = array_sum(wp_list_pluck($item_taxes, 'initial_tax'));
3542
+			$recurring_tax = array_sum(wp_list_pluck($item_taxes, 'recurring_tax'));
3543 3543
 
3544 3544
 			$current = $this->is_renewal() ? $recurring_tax : $initial_tax;
3545 3545
 
@@ -3550,7 +3550,7 @@  discard block
 block discarded – undo
3550 3550
 
3551 3551
 		}
3552 3552
 
3553
-		$this->set_total_tax( $current );
3553
+		$this->set_total_tax($current);
3554 3554
 
3555 3555
 		return $current;
3556 3556
 
@@ -3567,20 +3567,20 @@  discard block
 block discarded – undo
3567 3567
 		$fee       = 0;
3568 3568
 		$recurring = 0;
3569 3569
 
3570
-        foreach ( $fees as $data ) {
3571
-			$fee       += wpinv_sanitize_amount( $data['initial_fee'] );
3572
-			$recurring += wpinv_sanitize_amount( $data['recurring_fee'] );
3570
+        foreach ($fees as $data) {
3571
+			$fee       += wpinv_sanitize_amount($data['initial_fee']);
3572
+			$recurring += wpinv_sanitize_amount($data['recurring_fee']);
3573 3573
 		}
3574 3574
 
3575 3575
 		$current = $this->is_renewal() ? $recurring : $fee;
3576
-		$this->set_total_fees( $current );
3576
+		$this->set_total_fees($current);
3577 3577
 
3578 3578
 		$this->totals['fee'] = array(
3579 3579
 			'initial'   => $fee,
3580 3580
 			'recurring' => $recurring,
3581 3581
 		);
3582 3582
 
3583
-        $this->set_total_fees( $fee );
3583
+        $this->set_total_fees($fee);
3584 3584
         return $current;
3585 3585
     }
3586 3586
 
@@ -3595,7 +3595,7 @@  discard block
 block discarded – undo
3595 3595
         $this->recalculate_total_discount();
3596 3596
 		$this->recalculate_total_tax();
3597 3597
 		$this->recalculate_subtotal();
3598
-		$this->set_total( $this->get_total_tax() + $this->get_total_fees() + $this->get_subtotal() - $this->get_total_discount() );
3598
+		$this->set_total($this->get_total_tax() + $this->get_total_fees() + $this->get_subtotal() - $this->get_total_discount());
3599 3599
 		return $this->get_total();
3600 3600
 	}
3601 3601
 
@@ -3604,7 +3604,7 @@  discard block
 block discarded – undo
3604 3604
 	 */
3605 3605
     public function recalculate_totals() {
3606 3606
         $this->recalculate_total();
3607
-        $this->save( true );
3607
+        $this->save(true);
3608 3608
         return $this;
3609 3609
     }
3610 3610
 
@@ -3622,10 +3622,10 @@  discard block
 block discarded – undo
3622 3622
 	 * @return int|false The new note's ID on success, false on failure.
3623 3623
      *
3624 3624
      */
3625
-    public function add_note( $note = '', $customer_type = false, $added_by_user = false, $system = false ) {
3625
+    public function add_note($note = '', $customer_type = false, $added_by_user = false, $system = false) {
3626 3626
 
3627 3627
         // Bail if no note specified or this invoice is not yet saved.
3628
-        if ( ! $note || $this->get_id() == 0 || ( ! is_user_logged_in() && ! $system ) ) {
3628
+        if (!$note || $this->get_id() == 0 || (!is_user_logged_in() && !$system)) {
3629 3629
             return false;
3630 3630
         }
3631 3631
 
@@ -3633,23 +3633,23 @@  discard block
 block discarded – undo
3633 3633
 		$author_email = '[email protected]';
3634 3634
 
3635 3635
 		// If this is an admin comment or it has been added by the user.
3636
-		if ( is_user_logged_in() && ( ! $system || $added_by_user ) ) {
3637
-			$user         = get_user_by( 'id', get_current_user_id() );
3636
+		if (is_user_logged_in() && (!$system || $added_by_user)) {
3637
+			$user = get_user_by('id', get_current_user_id());
3638 3638
             $author       = $user->display_name;
3639 3639
             $author_email = $user->user_email;
3640 3640
 		}
3641 3641
 
3642
-		return getpaid_notes()->add_invoice_note( $this, $note, $author, $author_email, $customer_type );
3642
+		return getpaid_notes()->add_invoice_note($this, $note, $author, $author_email, $customer_type);
3643 3643
 
3644 3644
 	}
3645 3645
 
3646 3646
 	/**
3647 3647
      * Generates a unique key for the invoice.
3648 3648
      */
3649
-    public function generate_key( $string = '' ) {
3650
-        $auth_key  = defined( 'AUTH_KEY' ) ? AUTH_KEY : '';
3649
+    public function generate_key($string = '') {
3650
+        $auth_key = defined('AUTH_KEY') ? AUTH_KEY : '';
3651 3651
         return strtolower(
3652
-            $string . md5( $this->get_id() . date( 'Y-m-d H:i:s' ) . $auth_key . uniqid( 'wpinv', true ) )
3652
+            $string . md5($this->get_id() . date('Y-m-d H:i:s') . $auth_key . uniqid('wpinv', true))
3653 3653
         );
3654 3654
     }
3655 3655
 
@@ -3659,11 +3659,11 @@  discard block
 block discarded – undo
3659 3659
     public function generate_number() {
3660 3660
         $number = $this->get_id();
3661 3661
 
3662
-        if ( wpinv_sequential_number_active( $this->get_post_type() ) ) {
3663
-            $number = wpinv_get_next_invoice_number( $this->get_post_type() );
3662
+        if (wpinv_sequential_number_active($this->get_post_type())) {
3663
+            $number = wpinv_get_next_invoice_number($this->get_post_type());
3664 3664
         }
3665 3665
 
3666
-		return wpinv_format_invoice_number( $number, $this->get_post_type() );
3666
+		return wpinv_format_invoice_number($number, $this->get_post_type());
3667 3667
 
3668 3668
 	}
3669 3669
 
@@ -3676,55 +3676,55 @@  discard block
 block discarded – undo
3676 3676
 		// Reset status transition variable.
3677 3677
 		$this->status_transition = false;
3678 3678
 
3679
-		if ( $status_transition ) {
3679
+		if ($status_transition) {
3680 3680
 			try {
3681 3681
 
3682 3682
 				// Fire a hook for the status change.
3683
-				do_action( 'getpaid_invoice_status_' . $status_transition['to'], $this, $status_transition );
3683
+				do_action('getpaid_invoice_status_' . $status_transition['to'], $this, $status_transition);
3684 3684
 
3685 3685
 				// @deprecated this is deprecated and will be removed in the future.
3686
-				do_action( 'wpinv_status_' . $status_transition['to'], $this->get_id(), $status_transition['from'] );
3686
+				do_action('wpinv_status_' . $status_transition['to'], $this->get_id(), $status_transition['from']);
3687 3687
 
3688
-				if ( ! empty( $status_transition['from'] ) ) {
3688
+				if (!empty($status_transition['from'])) {
3689 3689
 
3690 3690
 					/* translators: 1: old invoice status 2: new invoice status */
3691
-					$transition_note = sprintf( __( 'Status changed from %1$s to %2$s.', 'invoicing' ), wpinv_status_nicename( $status_transition['from'], $this ), wpinv_status_nicename( $status_transition['to'], $this  ) );
3691
+					$transition_note = sprintf(__('Status changed from %1$s to %2$s.', 'invoicing'), wpinv_status_nicename($status_transition['from'], $this), wpinv_status_nicename($status_transition['to'], $this));
3692 3692
 
3693 3693
 					// Fire another hook.
3694
-					do_action( 'getpaid_invoice_status_' . $status_transition['from'] . '_to_' . $status_transition['to'], $this );
3695
-					do_action( 'getpaid_invoice_status_changed', $this, $status_transition['from'], $status_transition['to'] );
3694
+					do_action('getpaid_invoice_status_' . $status_transition['from'] . '_to_' . $status_transition['to'], $this);
3695
+					do_action('getpaid_invoice_status_changed', $this, $status_transition['from'], $status_transition['to']);
3696 3696
 
3697 3697
 					// @deprecated this is deprecated and will be removed in the future.
3698
-					do_action( 'wpinv_status_' . $status_transition['from'] . '_to_' . $status_transition['to'], $this->get_id(), $status_transition['from'] );
3698
+					do_action('wpinv_status_' . $status_transition['from'] . '_to_' . $status_transition['to'], $this->get_id(), $status_transition['from']);
3699 3699
 
3700 3700
 					// Note the transition occurred.
3701
-					$this->add_note( trim( $status_transition['note'] . ' ' . $transition_note ), false, $status_transition['manual'] );
3701
+					$this->add_note(trim($status_transition['note'] . ' ' . $transition_note), false, $status_transition['manual']);
3702 3702
 
3703 3703
 					// Work out if this was for a payment, and trigger a payment_status hook instead.
3704 3704
 					if (
3705
-						in_array( $status_transition['from'], array( 'wpi-cancelled', 'wpi-pending', 'wpi-failed', 'wpi-refunded', 'wpi-onhold' ), true )
3706
-						&& in_array( $status_transition['to'], array( 'publish', 'wpi-processing', 'wpi-renewal' ), true )
3705
+						in_array($status_transition['from'], array('wpi-cancelled', 'wpi-pending', 'wpi-failed', 'wpi-refunded', 'wpi-onhold'), true)
3706
+						&& in_array($status_transition['to'], array('publish', 'wpi-processing', 'wpi-renewal'), true)
3707 3707
 					) {
3708
-						do_action( 'getpaid_invoice_payment_status_changed', $this, $status_transition );
3708
+						do_action('getpaid_invoice_payment_status_changed', $this, $status_transition);
3709 3709
 					}
3710 3710
 
3711 3711
 					// Work out if this was for a payment reversal, and trigger a payment_status_reversed hook instead.
3712 3712
 					if (
3713
-						in_array( $status_transition['from'], array( 'publish', 'wpi-processing', 'wpi-renewal' ), true )
3714
-						&& in_array( $status_transition['to'], array( 'wpi-cancelled', 'wpi-pending', 'wpi-failed', 'wpi-refunded', 'wpi-onhold' ), true )
3713
+						in_array($status_transition['from'], array('publish', 'wpi-processing', 'wpi-renewal'), true)
3714
+						&& in_array($status_transition['to'], array('wpi-cancelled', 'wpi-pending', 'wpi-failed', 'wpi-refunded', 'wpi-onhold'), true)
3715 3715
 					) {
3716
-						do_action( 'getpaid_invoice_payment_status_reversed', $this, $status_transition );
3716
+						do_action('getpaid_invoice_payment_status_reversed', $this, $status_transition);
3717 3717
 					}
3718 3718
 				} else {
3719 3719
 					/* translators: %s: new invoice status */
3720
-					$transition_note = sprintf( __( 'Status set to %s.', 'invoicing' ), wpinv_status_nicename( $status_transition['to'], $this  ) );
3720
+					$transition_note = sprintf(__('Status set to %s.', 'invoicing'), wpinv_status_nicename($status_transition['to'], $this));
3721 3721
 
3722 3722
 					// Note the transition occurred.
3723
-					$this->add_note( trim( $status_transition['note'] . ' ' . $transition_note ), 0, $status_transition['manual'] );
3723
+					$this->add_note(trim($status_transition['note'] . ' ' . $transition_note), 0, $status_transition['manual']);
3724 3724
 
3725 3725
 				}
3726
-			} catch ( Exception $e ) {
3727
-				$this->add_note( __( 'Error during status transition.', 'invoicing' ) . ' ' . $e->getMessage() );
3726
+			} catch (Exception $e) {
3727
+				$this->add_note(__('Error during status transition.', 'invoicing') . ' ' . $e->getMessage());
3728 3728
 			}
3729 3729
 		}
3730 3730
 	}
@@ -3732,13 +3732,13 @@  discard block
 block discarded – undo
3732 3732
 	/**
3733 3733
 	 * Updates an invoice status.
3734 3734
 	 */
3735
-	public function update_status( $new_status = false, $note = '', $manual = false ) {
3735
+	public function update_status($new_status = false, $note = '', $manual = false) {
3736 3736
 
3737 3737
 		// Fires before updating a status.
3738
-		do_action( 'wpinv_before_invoice_status_change', $this->get_id(), $new_status, $this->get_status( 'edit' ) );
3738
+		do_action('wpinv_before_invoice_status_change', $this->get_id(), $new_status, $this->get_status('edit'));
3739 3739
 
3740 3740
 		// Update the status.
3741
-		$this->set_status( $new_status, $note, $manual );
3741
+		$this->set_status($new_status, $note, $manual);
3742 3742
 
3743 3743
 		// Save the order.
3744 3744
 		return $this->save();
@@ -3749,18 +3749,18 @@  discard block
 block discarded – undo
3749 3749
 	 * @deprecated
3750 3750
 	 */
3751 3751
 	public function refresh_item_ids() {
3752
-        $item_ids = implode( ',', array_unique( wp_list_pluck( $this->get_cart_details(), 'item_id' ) ) );
3753
-        update_post_meta( $this->get_id(), '_wpinv_item_ids', $item_ids );
3752
+        $item_ids = implode(',', array_unique(wp_list_pluck($this->get_cart_details(), 'item_id')));
3753
+        update_post_meta($this->get_id(), '_wpinv_item_ids', $item_ids);
3754 3754
 	}
3755 3755
 
3756 3756
 	/**
3757 3757
 	 * @deprecated
3758 3758
 	 */
3759
-	public function update_items( $temp = false ) {
3759
+	public function update_items($temp = false) {
3760 3760
 
3761
-		$this->set_items( $this->get_items() );
3761
+		$this->set_items($this->get_items());
3762 3762
 
3763
-		if ( ! $temp ) {
3763
+		if (!$temp) {
3764 3764
 			$this->save();
3765 3765
 		}
3766 3766
 
@@ -3774,11 +3774,11 @@  discard block
 block discarded – undo
3774 3774
 
3775 3775
         $discount_code = $this->get_discount_code();
3776 3776
 
3777
-        if ( empty( $discount_code ) ) {
3777
+        if (empty($discount_code)) {
3778 3778
             return false;
3779 3779
         }
3780 3780
 
3781
-        $discount = wpinv_get_discount_obj( $discount_code );
3781
+        $discount = wpinv_get_discount_obj($discount_code);
3782 3782
 
3783 3783
         // Ensure it is active.
3784 3784
         return $discount->exists();
@@ -3789,7 +3789,7 @@  discard block
 block discarded – undo
3789 3789
 	 * Refunds an invoice.
3790 3790
 	 */
3791 3791
     public function refund() {
3792
-		$this->set_status( 'wpi-refunded' );
3792
+		$this->set_status('wpi-refunded');
3793 3793
         $this->save();
3794 3794
 	}
3795 3795
 
@@ -3798,53 +3798,53 @@  discard block
 block discarded – undo
3798 3798
 	 * 
3799 3799
 	 * @param string $transaction_id
3800 3800
 	 */
3801
-    public function mark_paid( $transaction_id = null, $note = '' ) {
3801
+    public function mark_paid($transaction_id = null, $note = '') {
3802 3802
 
3803 3803
 		// Set the transaction id.
3804
-		if ( empty( $transaction_id ) ) {
3804
+		if (empty($transaction_id)) {
3805 3805
 			$transaction_id = $this->generate_key('trans_');
3806 3806
 		}
3807 3807
 
3808
-		if ( ! $this->get_transaction_id() ) {
3809
-			$this->set_transaction_id( $transaction_id );
3808
+		if (!$this->get_transaction_id()) {
3809
+			$this->set_transaction_id($transaction_id);
3810 3810
 		}
3811 3811
 
3812
-		if ( $this->is_paid() && 'wpi-processing' != $this->get_status() ) {
3812
+		if ($this->is_paid() && 'wpi-processing' != $this->get_status()) {
3813 3813
 			return $this->save();
3814 3814
 		}
3815 3815
 
3816 3816
 		// Set the completed date.
3817
-		$this->set_date_completed( current_time( 'mysql' ) );
3817
+		$this->set_date_completed(current_time('mysql'));
3818 3818
 
3819 3819
 		// Set the new status.
3820
-		$gateway = sanitize_text_field( $this->get_gateway_title() );
3821
-		if ( $this->is_renewal() ) {
3820
+		$gateway = sanitize_text_field($this->get_gateway_title());
3821
+		if ($this->is_renewal()) {
3822 3822
 
3823
-			$_note = wp_sprintf( __( 'Renewed via %s', 'invoicing' ), $gateway );
3824
-			$_note = $_note . empty( $note ) ? '' : " ($note)";
3823
+			$_note = wp_sprintf(__('Renewed via %s', 'invoicing'), $gateway);
3824
+			$_note = $_note . empty($note) ? '' : " ($note)";
3825 3825
 
3826
-			if ( 'none' == $this->get_gateway() ) {
3826
+			if ('none' == $this->get_gateway()) {
3827 3827
 				$_note = $note;
3828 3828
 			}
3829 3829
 
3830
-			$this->set_status( 'wpi-renewal', $_note );
3830
+			$this->set_status('wpi-renewal', $_note);
3831 3831
 
3832 3832
 		} else {
3833 3833
 
3834
-			$_note = wp_sprintf( __( 'Paid via %s', 'invoicing' ), $gateway );
3835
-			$_note = $_note . empty( $note ) ? '' : " ($note)";
3834
+			$_note = wp_sprintf(__('Paid via %s', 'invoicing'), $gateway);
3835
+			$_note = $_note . empty($note) ? '' : " ($note)";
3836 3836
 
3837
-			if ( 'none' == $this->get_gateway() ) {
3837
+			if ('none' == $this->get_gateway()) {
3838 3838
 				$_note = $note;
3839 3839
 			}
3840 3840
 
3841
-			$this->set_status( 'publish', $_note );
3841
+			$this->set_status('publish', $_note);
3842 3842
 
3843 3843
 		}
3844 3844
 
3845 3845
 		// Set checkout mode.
3846
-		$mode = wpinv_is_test_mode( $this->get_gateway() ) ? 'test' : 'live';
3847
-		$this->set_mode( $mode );
3846
+		$mode = wpinv_is_test_mode($this->get_gateway()) ? 'test' : 'live';
3847
+		$this->set_mode($mode);
3848 3848
 
3849 3849
 		// Save the invoice.
3850 3850
         $this->save();
@@ -3869,9 +3869,9 @@  discard block
 block discarded – undo
3869 3869
      * Clears the subscription's cache.
3870 3870
      */
3871 3871
     public function clear_cache() {
3872
-		wp_cache_delete( $this->get_key(), 'getpaid_invoice_keys_to_invoice_ids' );
3873
-		wp_cache_delete( $this->get_number(), 'getpaid_invoice_numbers_to_invoice_ids' );
3874
-		wp_cache_delete( $this->get_transaction_id(), 'getpaid_invoice_transaction_ids_to_invoice_ids' );
3872
+		wp_cache_delete($this->get_key(), 'getpaid_invoice_keys_to_invoice_ids');
3873
+		wp_cache_delete($this->get_number(), 'getpaid_invoice_numbers_to_invoice_ids');
3874
+		wp_cache_delete($this->get_transaction_id(), 'getpaid_invoice_transaction_ids_to_invoice_ids');
3875 3875
 	}
3876 3876
 
3877 3877
 }
Please login to merge, or discard this patch.
includes/gateways/class-getpaid-paypal-gateway.php 2 patches
Indentation   +223 added lines, -223 removed lines patch added patch discarded remove patch
@@ -13,94 +13,94 @@  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' );
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 90
 
91 91
         parent::__construct();
92 92
     }
93 93
 
94 94
     /**
95
-	 * Process Payment.
96
-	 *
97
-	 *
98
-	 * @param WPInv_Invoice $invoice Invoice.
99
-	 * @param array $submission_data Posted checkout fields.
100
-	 * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
101
-	 * @return array
102
-	 */
103
-	public function process_payment( $invoice, $submission_data, $submission ) {
95
+     * Process Payment.
96
+     *
97
+     *
98
+     * @param WPInv_Invoice $invoice Invoice.
99
+     * @param array $submission_data Posted checkout fields.
100
+     * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
101
+     * @return array
102
+     */
103
+    public function process_payment( $invoice, $submission_data, $submission ) {
104 104
 
105 105
         // Get redirect url.
106 106
         $paypal_redirect = $this->get_request_url( $invoice );
@@ -123,15 +123,15 @@  discard block
 block discarded – undo
123 123
     }
124 124
 
125 125
     /**
126
-	 * Get the PayPal request URL for an invoice.
127
-	 *
128
-	 * @param  WPInv_Invoice $invoice Invoice object.
129
-	 * @return string
130
-	 */
131
-	public function get_request_url( $invoice ) {
126
+     * Get the PayPal request URL for an invoice.
127
+     *
128
+     * @param  WPInv_Invoice $invoice Invoice object.
129
+     * @return string
130
+     */
131
+    public function get_request_url( $invoice ) {
132 132
 
133 133
         // Endpoint for this request
134
-		$this->endpoint    = $this->is_sandbox( $invoice ) ? 'https://www.sandbox.paypal.com/cgi-bin/webscr?test_ipn=1&' : 'https://www.paypal.com/cgi-bin/webscr?';
134
+        $this->endpoint    = $this->is_sandbox( $invoice ) ? 'https://www.sandbox.paypal.com/cgi-bin/webscr?test_ipn=1&' : 'https://www.paypal.com/cgi-bin/webscr?';
135 135
 
136 136
         // Retrieve paypal args.
137 137
         $paypal_args       = map_deep( $this->get_paypal_args( $invoice ), 'urlencode' );
@@ -144,44 +144,44 @@  discard block
 block discarded – undo
144 144
 
145 145
         return add_query_arg( $paypal_args, $this->endpoint );
146 146
 
147
-	}
147
+    }
148 148
 
149 149
     /**
150
-	 * Get PayPal Args for passing to PP.
151
-	 *
152
-	 * @param  WPInv_Invoice $invoice Invoice object.
153
-	 * @return array
154
-	 */
155
-	protected function get_paypal_args( $invoice ) {
150
+     * Get PayPal Args for passing to PP.
151
+     *
152
+     * @param  WPInv_Invoice $invoice Invoice object.
153
+     * @return array
154
+     */
155
+    protected function get_paypal_args( $invoice ) {
156 156
 
157 157
         // Whether or not to send the line items as one item.
158
-		$force_one_line_item = apply_filters( 'getpaid_paypal_force_one_line_item', false, $invoice );
159
-
160
-		if ( $invoice->is_recurring() || ( wpinv_use_taxes() && wpinv_prices_include_tax() ) ) {
161
-			$force_one_line_item = true;
162
-		}
163
-
164
-		$paypal_args = apply_filters(
165
-			'getpaid_paypal_args',
166
-			array_merge(
167
-				$this->get_transaction_args( $invoice ),
168
-				$this->get_line_item_args( $invoice, $force_one_line_item )
169
-			),
170
-			$invoice
171
-		);
172
-
173
-		return $this->fix_request_length( $invoice, $paypal_args );
158
+        $force_one_line_item = apply_filters( 'getpaid_paypal_force_one_line_item', false, $invoice );
159
+
160
+        if ( $invoice->is_recurring() || ( wpinv_use_taxes() && wpinv_prices_include_tax() ) ) {
161
+            $force_one_line_item = true;
162
+        }
163
+
164
+        $paypal_args = apply_filters(
165
+            'getpaid_paypal_args',
166
+            array_merge(
167
+                $this->get_transaction_args( $invoice ),
168
+                $this->get_line_item_args( $invoice, $force_one_line_item )
169
+            ),
170
+            $invoice
171
+        );
172
+
173
+        return $this->fix_request_length( $invoice, $paypal_args );
174 174
     }
175 175
 
176 176
     /**
177
-	 * Get transaction args for paypal request.
178
-	 *
179
-	 * @param WPInv_Invoice $invoice Invoice object.
180
-	 * @return array
181
-	 */
182
-	protected function get_transaction_args( $invoice ) {
183
-
184
-		return array(
177
+     * Get transaction args for paypal request.
178
+     *
179
+     * @param WPInv_Invoice $invoice Invoice object.
180
+     * @return array
181
+     */
182
+    protected function get_transaction_args( $invoice ) {
183
+
184
+        return array(
185 185
             'cmd'           => '_cart',
186 186
             'business'      => wpinv_get_option( 'paypal_email', false ),
187 187
             'no_shipping'   => '1',
@@ -206,16 +206,16 @@  discard block
 block discarded – undo
206 206
     }
207 207
 
208 208
     /**
209
-	 * Get line item args for paypal request.
210
-	 *
211
-	 * @param  WPInv_Invoice $invoice Invoice object.
212
-	 * @param  bool     $force_one_line_item Create only one item for this invoice.
213
-	 * @return array
214
-	 */
215
-	protected function get_line_item_args( $invoice, $force_one_line_item = false ) {
209
+     * Get line item args for paypal request.
210
+     *
211
+     * @param  WPInv_Invoice $invoice Invoice object.
212
+     * @param  bool     $force_one_line_item Create only one item for this invoice.
213
+     * @return array
214
+     */
215
+    protected function get_line_item_args( $invoice, $force_one_line_item = false ) {
216 216
 
217 217
         // Maybe send invoice as a single item.
218
-		if ( $force_one_line_item ) {
218
+        if ( $force_one_line_item ) {
219 219
             return $this->get_line_item_args_single_item( $invoice );
220 220
         }
221 221
 
@@ -235,129 +235,129 @@  discard block
 block discarded – undo
235 235
             $line_item_args['discount_amount_cart'] = wpinv_sanitize_amount( (float) $invoice->get_total_discount(), 2 );
236 236
         }
237 237
 
238
-		return array_merge( $line_item_args, $this->get_line_items() );
238
+        return array_merge( $line_item_args, $this->get_line_items() );
239 239
 
240 240
     }
241 241
 
242 242
     /**
243
-	 * Get line item args for paypal request as a single line item.
244
-	 *
245
-	 * @param  WPInv_Invoice $invoice Invoice object.
246
-	 * @return array
247
-	 */
248
-	protected function get_line_item_args_single_item( $invoice ) {
249
-		$this->delete_line_items();
243
+     * Get line item args for paypal request as a single line item.
244
+     *
245
+     * @param  WPInv_Invoice $invoice Invoice object.
246
+     * @return array
247
+     */
248
+    protected function get_line_item_args_single_item( $invoice ) {
249
+        $this->delete_line_items();
250 250
 
251 251
         $item_name = sprintf( __( 'Invoice #%s', 'invoicing' ), $invoice->get_number() );
252
-		$this->add_line_item( $item_name, 1, wpinv_sanitize_amount( (float) $invoice->get_total(), 2 ), $invoice->get_id() );
252
+        $this->add_line_item( $item_name, 1, wpinv_sanitize_amount( (float) $invoice->get_total(), 2 ), $invoice->get_id() );
253 253
 
254
-		return $this->get_line_items();
254
+        return $this->get_line_items();
255 255
     }
256 256
 
257 257
     /**
258
-	 * Return all line items.
259
-	 */
260
-	protected function get_line_items() {
261
-		return $this->line_items;
262
-	}
258
+     * Return all line items.
259
+     */
260
+    protected function get_line_items() {
261
+        return $this->line_items;
262
+    }
263 263
 
264 264
     /**
265
-	 * Remove all line items.
266
-	 */
267
-	protected function delete_line_items() {
268
-		$this->line_items = array();
265
+     * Remove all line items.
266
+     */
267
+    protected function delete_line_items() {
268
+        $this->line_items = array();
269 269
     }
270 270
 
271 271
     /**
272
-	 * Prepare line items to send to paypal.
273
-	 *
274
-	 * @param  WPInv_Invoice $invoice Invoice object.
275
-	 */
276
-	protected function prepare_line_items( $invoice ) {
277
-		$this->delete_line_items();
278
-
279
-		// Items.
280
-		foreach ( $invoice->get_items() as $item ) {
281
-			$amount   = $item->get_price();
282
-			$quantity = $invoice->get_template() == 'amount' ? 1 : $item->get_quantity();
283
-			$this->add_line_item( $item->get_raw_name(), $quantity, $amount, $item->get_id() );
272
+     * Prepare line items to send to paypal.
273
+     *
274
+     * @param  WPInv_Invoice $invoice Invoice object.
275
+     */
276
+    protected function prepare_line_items( $invoice ) {
277
+        $this->delete_line_items();
278
+
279
+        // Items.
280
+        foreach ( $invoice->get_items() as $item ) {
281
+            $amount   = $item->get_price();
282
+            $quantity = $invoice->get_template() == 'amount' ? 1 : $item->get_quantity();
283
+            $this->add_line_item( $item->get_raw_name(), $quantity, $amount, $item->get_id() );
284 284
         }
285 285
 
286 286
         // Fees.
287
-		foreach ( $invoice->get_fees() as $fee => $data ) {
287
+        foreach ( $invoice->get_fees() as $fee => $data ) {
288 288
             $this->add_line_item( $fee, 1, wpinv_sanitize_amount( $data['initial_fee'] ) );
289 289
         }
290 290
 
291 291
     }
292 292
 
293 293
     /**
294
-	 * Add PayPal Line Item.
295
-	 *
296
-	 * @param  string $item_name Item name.
297
-	 * @param  int    $quantity Item quantity.
298
-	 * @param  float  $amount Amount.
299
-	 * @param  string $item_number Item number.
300
-	 */
301
-	protected function add_line_item( $item_name, $quantity = 1, $amount = 0.0, $item_number = '' ) {
302
-		$index = ( count( $this->line_items ) / 4 ) + 1;
303
-
304
-		$item = apply_filters(
305
-			'getpaid_paypal_line_item',
306
-			array(
307
-				'item_name'   => html_entity_decode( getpaid_limit_length( $item_name ? wp_strip_all_tags( $item_name ) : __( 'Item', 'invoicing' ), 127 ), ENT_NOQUOTES, 'UTF-8' ),
308
-				'quantity'    => (float) $quantity,
309
-				'amount'      => wpinv_sanitize_amount( (float) $amount, 2 ),
310
-				'item_number' => $item_number,
311
-			),
312
-			$item_name,
313
-			$quantity,
314
-			$amount,
315
-			$item_number
316
-		);
317
-
318
-		$this->line_items[ 'item_name_' . $index ]   = getpaid_limit_length( $item['item_name'], 127 );
294
+     * Add PayPal Line Item.
295
+     *
296
+     * @param  string $item_name Item name.
297
+     * @param  int    $quantity Item quantity.
298
+     * @param  float  $amount Amount.
299
+     * @param  string $item_number Item number.
300
+     */
301
+    protected function add_line_item( $item_name, $quantity = 1, $amount = 0.0, $item_number = '' ) {
302
+        $index = ( count( $this->line_items ) / 4 ) + 1;
303
+
304
+        $item = apply_filters(
305
+            'getpaid_paypal_line_item',
306
+            array(
307
+                'item_name'   => html_entity_decode( getpaid_limit_length( $item_name ? wp_strip_all_tags( $item_name ) : __( 'Item', 'invoicing' ), 127 ), ENT_NOQUOTES, 'UTF-8' ),
308
+                'quantity'    => (float) $quantity,
309
+                'amount'      => wpinv_sanitize_amount( (float) $amount, 2 ),
310
+                'item_number' => $item_number,
311
+            ),
312
+            $item_name,
313
+            $quantity,
314
+            $amount,
315
+            $item_number
316
+        );
317
+
318
+        $this->line_items[ 'item_name_' . $index ]   = getpaid_limit_length( $item['item_name'], 127 );
319 319
         $this->line_items[ 'quantity_' . $index ]    = $item['quantity'];
320 320
 
321 321
         // The price or amount of the product, service, or contribution, not including shipping, handling, or tax.
322
-		$this->line_items[ 'amount_' . $index ]      = $item['amount'];
323
-		$this->line_items[ 'item_number_' . $index ] = getpaid_limit_length( $item['item_number'], 127 );
322
+        $this->line_items[ 'amount_' . $index ]      = $item['amount'];
323
+        $this->line_items[ 'item_number_' . $index ] = getpaid_limit_length( $item['item_number'], 127 );
324 324
     }
325 325
 
326 326
     /**
327
-	 * If the default request with line items is too long, generate a new one with only one line item.
328
-	 *
329
-	 * https://support.microsoft.com/en-us/help/208427/maximum-url-length-is-2-083-characters-in-internet-explorer.
330
-	 *
331
-	 * @param WPInv_Invoice $invoice Invoice to be sent to Paypal.
332
-	 * @param array    $paypal_args Arguments sent to Paypal in the request.
333
-	 * @return array
334
-	 */
335
-	protected function fix_request_length( $invoice, $paypal_args ) {
336
-		$max_paypal_length = 2083;
337
-		$query_candidate   = http_build_query( $paypal_args, '', '&' );
338
-
339
-		if ( strlen( $this->endpoint . $query_candidate ) <= $max_paypal_length ) {
340
-			return $paypal_args;
341
-		}
342
-
343
-		return apply_filters(
344
-			'getpaid_paypal_args',
345
-			array_merge(
346
-				$this->get_transaction_args( $invoice ),
347
-				$this->get_line_item_args( $invoice, true )
348
-			),
349
-			$invoice
350
-		);
327
+     * If the default request with line items is too long, generate a new one with only one line item.
328
+     *
329
+     * https://support.microsoft.com/en-us/help/208427/maximum-url-length-is-2-083-characters-in-internet-explorer.
330
+     *
331
+     * @param WPInv_Invoice $invoice Invoice to be sent to Paypal.
332
+     * @param array    $paypal_args Arguments sent to Paypal in the request.
333
+     * @return array
334
+     */
335
+    protected function fix_request_length( $invoice, $paypal_args ) {
336
+        $max_paypal_length = 2083;
337
+        $query_candidate   = http_build_query( $paypal_args, '', '&' );
338
+
339
+        if ( strlen( $this->endpoint . $query_candidate ) <= $max_paypal_length ) {
340
+            return $paypal_args;
341
+        }
342
+
343
+        return apply_filters(
344
+            'getpaid_paypal_args',
345
+            array_merge(
346
+                $this->get_transaction_args( $invoice ),
347
+                $this->get_line_item_args( $invoice, true )
348
+            ),
349
+            $invoice
350
+        );
351 351
 
352 352
     }
353 353
     
354 354
     /**
355
-	 * Processes recurring invoices.
356
-	 *
357
-	 * @param  array $paypal_args PayPal args.
358
-	 * @param  WPInv_Invoice    $invoice Invoice object.
359
-	 */
360
-	public function process_subscription( $paypal_args, $invoice ) {
355
+     * Processes recurring invoices.
356
+     *
357
+     * @param  array $paypal_args PayPal args.
358
+     * @param  WPInv_Invoice    $invoice Invoice object.
359
+     */
360
+    public function process_subscription( $paypal_args, $invoice ) {
361 361
 
362 362
         // Make sure this is a subscription.
363 363
         if ( ! $invoice->is_recurring() || ! $subscription = wpinv_get_subscription( $invoice ) ) {
@@ -382,11 +382,11 @@  discard block
 block discarded – undo
382 382
 
383 383
             $paypal_args['a1'] = 0 == $initial_amount ? 0 : $initial_amount;
384 384
 
385
-			// Trial period length.
386
-			$paypal_args['p1'] = $subscription_item->get_trial_interval();
385
+            // Trial period length.
386
+            $paypal_args['p1'] = $subscription_item->get_trial_interval();
387 387
 
388
-			// Trial period.
389
-			$paypal_args['t1'] = $subscription_item->get_trial_period();
388
+            // Trial period.
389
+            $paypal_args['t1'] = $subscription_item->get_trial_period();
390 390
 
391 391
         } else if ( $initial_amount != $recurring_amount ) {
392 392
 
@@ -409,40 +409,40 @@  discard block
 block discarded – undo
409 409
         }
410 410
 
411 411
         // We have a recurring payment
412
-		if ( ! isset( $param_number ) || 1 == $param_number ) {
412
+        if ( ! isset( $param_number ) || 1 == $param_number ) {
413 413
 
414
-			// Subscription price
415
-			$paypal_args['a3'] = $recurring_amount;
414
+            // Subscription price
415
+            $paypal_args['a3'] = $recurring_amount;
416 416
 
417
-			// Subscription duration
418
-			$paypal_args['p3'] = $interval;
417
+            // Subscription duration
418
+            $paypal_args['p3'] = $interval;
419 419
 
420
-			// Subscription period
421
-			$paypal_args['t3'] = $period;
420
+            // Subscription period
421
+            $paypal_args['t3'] = $period;
422 422
 
423 423
         }
424 424
         
425 425
         // Recurring payments
426
-		if ( 1 == $bill_times || ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() && 2 == $bill_times ) ) {
426
+        if ( 1 == $bill_times || ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() && 2 == $bill_times ) ) {
427 427
 
428
-			// Non-recurring payments
429
-			$paypal_args['src'] = 0;
428
+            // Non-recurring payments
429
+            $paypal_args['src'] = 0;
430 430
 
431
-		} else {
431
+        } else {
432 432
 
433
-			$paypal_args['src'] = 1;
433
+            $paypal_args['src'] = 1;
434 434
 
435
-			if ( $bill_times > 0 ) {
435
+            if ( $bill_times > 0 ) {
436 436
 
437
-				// An initial period is being used to charge a sign-up fee
438
-				if ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() ) {
439
-					$bill_times--;
440
-				}
437
+                // An initial period is being used to charge a sign-up fee
438
+                if ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() ) {
439
+                    $bill_times--;
440
+                }
441 441
 
442 442
                 // Make sure it's not over the max of 52
443 443
                 $paypal_args['srt'] = ( $bill_times <= 52 ? absint( $bill_times ) : 52 );
444 444
 
445
-			}
445
+            }
446 446
         }
447 447
         
448 448
         // Force return URL so that order description & instructions display
@@ -458,19 +458,19 @@  discard block
 block discarded – undo
458 458
         }
459 459
 
460 460
         return apply_filters(
461
-			'getpaid_paypal_subscription_args',
462
-			$paypal_args,
463
-			$invoice
461
+            'getpaid_paypal_subscription_args',
462
+            $paypal_args,
463
+            $invoice
464 464
         );
465 465
 
466 466
     }
467 467
 
468 468
     /**
469
-	 * Processes ipns and marks payments as complete.
470
-	 *
471
-	 * @return void
472
-	 */
473
-	public function verify_ipn() {
469
+     * Processes ipns and marks payments as complete.
470
+     *
471
+     * @return void
472
+     */
473
+    public function verify_ipn() {
474 474
         new GetPaid_Paypal_Gateway_IPN_Handler( $this );
475 475
     }
476 476
 
@@ -480,10 +480,10 @@  discard block
 block discarded – undo
480 480
     public function sandbox_notice() {
481 481
 
482 482
         return sprintf(
483
-			__( 'SANDBOX ENABLED. You can use sandbox testing accounts only. See the %sPayPal Sandbox Testing Guide%s for more details.', 'invoicing' ),
484
-			'<a href="https://developer.paypal.com/docs/classic/lifecycle/ug_sandbox/">',
485
-			'</a>'
486
-		);
483
+            __( 'SANDBOX ENABLED. You can use sandbox testing accounts only. See the %sPayPal Sandbox Testing Guide%s for more details.', 'invoicing' ),
484
+            '<a href="https://developer.paypal.com/docs/classic/lifecycle/ug_sandbox/">',
485
+            '</a>'
486
+        );
487 487
 
488 488
     }
489 489
 
Please login to merge, or discard this patch.
Spacing   +89 added lines, -89 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' );
27
+    protected $supports = array('subscription', 'sandbox');
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,13 +80,13 @@  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' ) );
88
+		add_filter('getpaid_paypal_args', array($this, 'process_subscription'), 10, 2);
89
+        add_filter('getpaid_paypal_sandbox_notice', array($this, 'sandbox_notice'));
90 90
 
91 91
         parent::__construct();
92 92
     }
@@ -100,16 +100,16 @@  discard block
 block discarded – undo
100 100
 	 * @param GetPaid_Payment_Form_Submission $submission Checkout submission.
101 101
 	 * @return array
102 102
 	 */
103
-	public function process_payment( $invoice, $submission_data, $submission ) {
103
+	public function process_payment($invoice, $submission_data, $submission) {
104 104
 
105 105
         // Get redirect url.
106
-        $paypal_redirect = $this->get_request_url( $invoice );
106
+        $paypal_redirect = $this->get_request_url($invoice);
107 107
 
108 108
         // Add a note about the request url.
109 109
         $invoice->add_note(
110 110
             sprintf(
111
-                __( 'Redirecting to PayPal: %s', 'invoicing' ),
112
-                esc_url( $paypal_redirect )
111
+                __('Redirecting to PayPal: %s', 'invoicing'),
112
+                esc_url($paypal_redirect)
113 113
             ),
114 114
             false,
115 115
             false,
@@ -117,7 +117,7 @@  discard block
 block discarded – undo
117 117
         );
118 118
 
119 119
         // Redirect to PayPal
120
-        wp_redirect( $paypal_redirect );
120
+        wp_redirect($paypal_redirect);
121 121
         exit;
122 122
 
123 123
     }
@@ -128,21 +128,21 @@  discard block
 block discarded – undo
128 128
 	 * @param  WPInv_Invoice $invoice Invoice object.
129 129
 	 * @return string
130 130
 	 */
131
-	public function get_request_url( $invoice ) {
131
+	public function get_request_url($invoice) {
132 132
 
133 133
         // Endpoint for this request
134
-		$this->endpoint    = $this->is_sandbox( $invoice ) ? 'https://www.sandbox.paypal.com/cgi-bin/webscr?test_ipn=1&' : 'https://www.paypal.com/cgi-bin/webscr?';
134
+		$this->endpoint = $this->is_sandbox($invoice) ? 'https://www.sandbox.paypal.com/cgi-bin/webscr?test_ipn=1&' : 'https://www.paypal.com/cgi-bin/webscr?';
135 135
 
136 136
         // Retrieve paypal args.
137
-        $paypal_args       = map_deep( $this->get_paypal_args( $invoice ), 'urlencode' );
137
+        $paypal_args = map_deep($this->get_paypal_args($invoice), 'urlencode');
138 138
 
139
-        if ( $invoice->is_recurring() ) {
139
+        if ($invoice->is_recurring()) {
140 140
             $paypal_args['bn'] = 'GetPaid_Subscribe_WPS_US';
141 141
         } else {
142 142
             $paypal_args['bn'] = 'GetPaid_ShoppingCart_WPS_US';
143 143
         }
144 144
 
145
-        return add_query_arg( $paypal_args, $this->endpoint );
145
+        return add_query_arg($paypal_args, $this->endpoint);
146 146
 
147 147
 	}
148 148
 
@@ -152,25 +152,25 @@  discard block
 block discarded – undo
152 152
 	 * @param  WPInv_Invoice $invoice Invoice object.
153 153
 	 * @return array
154 154
 	 */
155
-	protected function get_paypal_args( $invoice ) {
155
+	protected function get_paypal_args($invoice) {
156 156
 
157 157
         // Whether or not to send the line items as one item.
158
-		$force_one_line_item = apply_filters( 'getpaid_paypal_force_one_line_item', false, $invoice );
158
+		$force_one_line_item = apply_filters('getpaid_paypal_force_one_line_item', false, $invoice);
159 159
 
160
-		if ( $invoice->is_recurring() || ( wpinv_use_taxes() && wpinv_prices_include_tax() ) ) {
160
+		if ($invoice->is_recurring() || (wpinv_use_taxes() && wpinv_prices_include_tax())) {
161 161
 			$force_one_line_item = true;
162 162
 		}
163 163
 
164 164
 		$paypal_args = apply_filters(
165 165
 			'getpaid_paypal_args',
166 166
 			array_merge(
167
-				$this->get_transaction_args( $invoice ),
168
-				$this->get_line_item_args( $invoice, $force_one_line_item )
167
+				$this->get_transaction_args($invoice),
168
+				$this->get_line_item_args($invoice, $force_one_line_item)
169 169
 			),
170 170
 			$invoice
171 171
 		);
172 172
 
173
-		return $this->fix_request_length( $invoice, $paypal_args );
173
+		return $this->fix_request_length($invoice, $paypal_args);
174 174
     }
175 175
 
176 176
     /**
@@ -179,11 +179,11 @@  discard block
 block discarded – undo
179 179
 	 * @param WPInv_Invoice $invoice Invoice object.
180 180
 	 * @return array
181 181
 	 */
182
-	protected function get_transaction_args( $invoice ) {
182
+	protected function get_transaction_args($invoice) {
183 183
 
184 184
 		return array(
185 185
             'cmd'           => '_cart',
186
-            'business'      => wpinv_get_option( 'paypal_email', false ),
186
+            'business'      => wpinv_get_option('paypal_email', false),
187 187
             'no_shipping'   => '1',
188 188
             'shipping'      => '0',
189 189
             'no_note'       => '1',
@@ -191,16 +191,16 @@  discard block
 block discarded – undo
191 191
             'rm'            => is_ssl() ? 2 : 1,
192 192
             'upload'        => 1,
193 193
             'currency_code' => $invoice->get_currency(), // https://developer.paypal.com/docs/nvp-soap-api/currency-codes/#paypal
194
-            'return'        => esc_url_raw( $this->get_return_url( $invoice ) ),
195
-            'cancel_return' => esc_url_raw( $invoice->get_checkout_payment_url() ),
196
-            'notify_url'    => getpaid_limit_length( $this->notify_url, 255 ),
197
-            'invoice'       => getpaid_limit_length( $invoice->get_number(), 127 ),
194
+            'return'        => esc_url_raw($this->get_return_url($invoice)),
195
+            'cancel_return' => esc_url_raw($invoice->get_checkout_payment_url()),
196
+            'notify_url'    => getpaid_limit_length($this->notify_url, 255),
197
+            'invoice'       => getpaid_limit_length($invoice->get_number(), 127),
198 198
             'custom'        => $invoice->get_id(),
199
-            'first_name'    => getpaid_limit_length( $invoice->get_first_name(), 32 ),
200
-            'last_name'     => getpaid_limit_length( $invoice->get_last_name(), 64 ),
201
-            'country'       => getpaid_limit_length( $invoice->get_country(), 2 ),
202
-            'email'         => getpaid_limit_length( $invoice->get_email(), 127 ),
203
-            'cbt'           => get_bloginfo( 'name' )
199
+            'first_name'    => getpaid_limit_length($invoice->get_first_name(), 32),
200
+            'last_name'     => getpaid_limit_length($invoice->get_last_name(), 64),
201
+            'country'       => getpaid_limit_length($invoice->get_country(), 2),
202
+            'email'         => getpaid_limit_length($invoice->get_email(), 127),
203
+            'cbt'           => get_bloginfo('name')
204 204
         );
205 205
 
206 206
     }
@@ -212,30 +212,30 @@  discard block
 block discarded – undo
212 212
 	 * @param  bool     $force_one_line_item Create only one item for this invoice.
213 213
 	 * @return array
214 214
 	 */
215
-	protected function get_line_item_args( $invoice, $force_one_line_item = false ) {
215
+	protected function get_line_item_args($invoice, $force_one_line_item = false) {
216 216
 
217 217
         // Maybe send invoice as a single item.
218
-		if ( $force_one_line_item ) {
219
-            return $this->get_line_item_args_single_item( $invoice );
218
+		if ($force_one_line_item) {
219
+            return $this->get_line_item_args_single_item($invoice);
220 220
         }
221 221
 
222 222
         // Send each line item individually.
223 223
         $line_item_args = array();
224 224
 
225 225
         // Prepare line items.
226
-        $this->prepare_line_items( $invoice );
226
+        $this->prepare_line_items($invoice);
227 227
 
228 228
         // Add taxes to the cart
229
-        if ( wpinv_use_taxes() && $invoice->is_taxable() ) {
230
-            $line_item_args['tax_cart'] = wpinv_sanitize_amount( (float) $invoice->get_total_tax(), 2 );
229
+        if (wpinv_use_taxes() && $invoice->is_taxable()) {
230
+            $line_item_args['tax_cart'] = wpinv_sanitize_amount((float) $invoice->get_total_tax(), 2);
231 231
         }
232 232
 
233 233
         // Add discount.
234
-        if ( $invoice->get_total_discount() > 0 ) {
235
-            $line_item_args['discount_amount_cart'] = wpinv_sanitize_amount( (float) $invoice->get_total_discount(), 2 );
234
+        if ($invoice->get_total_discount() > 0) {
235
+            $line_item_args['discount_amount_cart'] = wpinv_sanitize_amount((float) $invoice->get_total_discount(), 2);
236 236
         }
237 237
 
238
-		return array_merge( $line_item_args, $this->get_line_items() );
238
+		return array_merge($line_item_args, $this->get_line_items());
239 239
 
240 240
     }
241 241
 
@@ -245,11 +245,11 @@  discard block
 block discarded – undo
245 245
 	 * @param  WPInv_Invoice $invoice Invoice object.
246 246
 	 * @return array
247 247
 	 */
248
-	protected function get_line_item_args_single_item( $invoice ) {
248
+	protected function get_line_item_args_single_item($invoice) {
249 249
 		$this->delete_line_items();
250 250
 
251
-        $item_name = sprintf( __( 'Invoice #%s', 'invoicing' ), $invoice->get_number() );
252
-		$this->add_line_item( $item_name, 1, wpinv_sanitize_amount( (float) $invoice->get_total(), 2 ), $invoice->get_id() );
251
+        $item_name = sprintf(__('Invoice #%s', 'invoicing'), $invoice->get_number());
252
+		$this->add_line_item($item_name, 1, wpinv_sanitize_amount((float) $invoice->get_total(), 2), $invoice->get_id());
253 253
 
254 254
 		return $this->get_line_items();
255 255
     }
@@ -273,19 +273,19 @@  discard block
 block discarded – undo
273 273
 	 *
274 274
 	 * @param  WPInv_Invoice $invoice Invoice object.
275 275
 	 */
276
-	protected function prepare_line_items( $invoice ) {
276
+	protected function prepare_line_items($invoice) {
277 277
 		$this->delete_line_items();
278 278
 
279 279
 		// Items.
280
-		foreach ( $invoice->get_items() as $item ) {
280
+		foreach ($invoice->get_items() as $item) {
281 281
 			$amount   = $item->get_price();
282 282
 			$quantity = $invoice->get_template() == 'amount' ? 1 : $item->get_quantity();
283
-			$this->add_line_item( $item->get_raw_name(), $quantity, $amount, $item->get_id() );
283
+			$this->add_line_item($item->get_raw_name(), $quantity, $amount, $item->get_id());
284 284
         }
285 285
 
286 286
         // Fees.
287
-		foreach ( $invoice->get_fees() as $fee => $data ) {
288
-            $this->add_line_item( $fee, 1, wpinv_sanitize_amount( $data['initial_fee'] ) );
287
+		foreach ($invoice->get_fees() as $fee => $data) {
288
+            $this->add_line_item($fee, 1, wpinv_sanitize_amount($data['initial_fee']));
289 289
         }
290 290
 
291 291
     }
@@ -298,15 +298,15 @@  discard block
 block discarded – undo
298 298
 	 * @param  float  $amount Amount.
299 299
 	 * @param  string $item_number Item number.
300 300
 	 */
301
-	protected function add_line_item( $item_name, $quantity = 1, $amount = 0.0, $item_number = '' ) {
302
-		$index = ( count( $this->line_items ) / 4 ) + 1;
301
+	protected function add_line_item($item_name, $quantity = 1, $amount = 0.0, $item_number = '') {
302
+		$index = (count($this->line_items) / 4) + 1;
303 303
 
304 304
 		$item = apply_filters(
305 305
 			'getpaid_paypal_line_item',
306 306
 			array(
307
-				'item_name'   => html_entity_decode( getpaid_limit_length( $item_name ? wp_strip_all_tags( $item_name ) : __( 'Item', 'invoicing' ), 127 ), ENT_NOQUOTES, 'UTF-8' ),
307
+				'item_name'   => html_entity_decode(getpaid_limit_length($item_name ? wp_strip_all_tags($item_name) : __('Item', 'invoicing'), 127), ENT_NOQUOTES, 'UTF-8'),
308 308
 				'quantity'    => (float) $quantity,
309
-				'amount'      => wpinv_sanitize_amount( (float) $amount, 2 ),
309
+				'amount'      => wpinv_sanitize_amount((float) $amount, 2),
310 310
 				'item_number' => $item_number,
311 311
 			),
312 312
 			$item_name,
@@ -315,12 +315,12 @@  discard block
 block discarded – undo
315 315
 			$item_number
316 316
 		);
317 317
 
318
-		$this->line_items[ 'item_name_' . $index ]   = getpaid_limit_length( $item['item_name'], 127 );
319
-        $this->line_items[ 'quantity_' . $index ]    = $item['quantity'];
318
+		$this->line_items['item_name_' . $index] = getpaid_limit_length($item['item_name'], 127);
319
+        $this->line_items['quantity_' . $index] = $item['quantity'];
320 320
 
321 321
         // The price or amount of the product, service, or contribution, not including shipping, handling, or tax.
322
-		$this->line_items[ 'amount_' . $index ]      = $item['amount'];
323
-		$this->line_items[ 'item_number_' . $index ] = getpaid_limit_length( $item['item_number'], 127 );
322
+		$this->line_items['amount_' . $index]      = $item['amount'];
323
+		$this->line_items['item_number_' . $index] = getpaid_limit_length($item['item_number'], 127);
324 324
     }
325 325
 
326 326
     /**
@@ -332,19 +332,19 @@  discard block
 block discarded – undo
332 332
 	 * @param array    $paypal_args Arguments sent to Paypal in the request.
333 333
 	 * @return array
334 334
 	 */
335
-	protected function fix_request_length( $invoice, $paypal_args ) {
335
+	protected function fix_request_length($invoice, $paypal_args) {
336 336
 		$max_paypal_length = 2083;
337
-		$query_candidate   = http_build_query( $paypal_args, '', '&' );
337
+		$query_candidate   = http_build_query($paypal_args, '', '&');
338 338
 
339
-		if ( strlen( $this->endpoint . $query_candidate ) <= $max_paypal_length ) {
339
+		if (strlen($this->endpoint . $query_candidate) <= $max_paypal_length) {
340 340
 			return $paypal_args;
341 341
 		}
342 342
 
343 343
 		return apply_filters(
344 344
 			'getpaid_paypal_args',
345 345
 			array_merge(
346
-				$this->get_transaction_args( $invoice ),
347
-				$this->get_line_item_args( $invoice, true )
346
+				$this->get_transaction_args($invoice),
347
+				$this->get_line_item_args($invoice, true)
348 348
 			),
349 349
 			$invoice
350 350
 		);
@@ -357,10 +357,10 @@  discard block
 block discarded – undo
357 357
 	 * @param  array $paypal_args PayPal args.
358 358
 	 * @param  WPInv_Invoice    $invoice Invoice object.
359 359
 	 */
360
-	public function process_subscription( $paypal_args, $invoice ) {
360
+	public function process_subscription($paypal_args, $invoice) {
361 361
 
362 362
         // Make sure this is a subscription.
363
-        if ( ! $invoice->is_recurring() || ! $subscription = wpinv_get_subscription( $invoice ) ) {
363
+        if (!$invoice->is_recurring() || !$subscription = wpinv_get_subscription($invoice)) {
364 364
             return $paypal_args;
365 365
         }
366 366
 
@@ -368,17 +368,17 @@  discard block
 block discarded – undo
368 368
         $paypal_args['cmd'] = '_xclick-subscriptions';
369 369
 
370 370
         // Subscription name.
371
-        $paypal_args['item_name'] = sprintf( __( 'Invoice #%s', 'invoicing' ), $invoice->get_number() );
371
+        $paypal_args['item_name'] = sprintf(__('Invoice #%s', 'invoicing'), $invoice->get_number());
372 372
 
373 373
         // Get subscription args.
374
-        $period                 = strtoupper( substr( $subscription->get_period(), 0, 1) );
374
+        $period                 = strtoupper(substr($subscription->get_period(), 0, 1));
375 375
         $interval               = (int) $subscription->get_frequency();
376 376
         $bill_times             = (int) $subscription->get_bill_times();
377
-        $initial_amount         = (float) wpinv_sanitize_amount( $invoice->get_initial_total(), 2 );
378
-        $recurring_amount       = (float) wpinv_sanitize_amount( $invoice->get_recurring_total(), 2 );
379
-        $subscription_item      = $invoice->get_recurring( true );
377
+        $initial_amount         = (float) wpinv_sanitize_amount($invoice->get_initial_total(), 2);
378
+        $recurring_amount       = (float) wpinv_sanitize_amount($invoice->get_recurring_total(), 2);
379
+        $subscription_item      = $invoice->get_recurring(true);
380 380
 
381
-        if ( $subscription_item->has_free_trial() ) {
381
+        if ($subscription_item->has_free_trial()) {
382 382
 
383 383
             $paypal_args['a1'] = 0 == $initial_amount ? 0 : $initial_amount;
384 384
 
@@ -388,28 +388,28 @@  discard block
 block discarded – undo
388 388
 			// Trial period.
389 389
 			$paypal_args['t1'] = $subscription_item->get_trial_period();
390 390
 
391
-        } else if ( $initial_amount != $recurring_amount ) {
391
+        } else if ($initial_amount != $recurring_amount) {
392 392
 
393 393
             // No trial period, but initial amount includes a sign-up fee and/or other items, so charge it as a separate period.
394 394
 
395
-            if ( 1 == $bill_times ) {
395
+            if (1 == $bill_times) {
396 396
                 $param_number = 3;
397 397
             } else {
398 398
                 $param_number = 1;
399 399
             }
400 400
 
401
-            $paypal_args[ 'a' . $param_number ] = $initial_amount ? $initial_amount : 0;
401
+            $paypal_args['a' . $param_number] = $initial_amount ? $initial_amount : 0;
402 402
 
403 403
             // Sign Up interval
404
-            $paypal_args[ 'p' . $param_number ] = $interval;
404
+            $paypal_args['p' . $param_number] = $interval;
405 405
 
406 406
             // Sign Up unit of duration
407
-            $paypal_args[ 't' . $param_number ] = $period;
407
+            $paypal_args['t' . $param_number] = $period;
408 408
 
409 409
         }
410 410
 
411 411
         // We have a recurring payment
412
-		if ( ! isset( $param_number ) || 1 == $param_number ) {
412
+		if (!isset($param_number) || 1 == $param_number) {
413 413
 
414 414
 			// Subscription price
415 415
 			$paypal_args['a3'] = $recurring_amount;
@@ -423,7 +423,7 @@  discard block
 block discarded – undo
423 423
         }
424 424
         
425 425
         // Recurring payments
426
-		if ( 1 == $bill_times || ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() && 2 == $bill_times ) ) {
426
+		if (1 == $bill_times || ($initial_amount != $recurring_amount && !$subscription_item->has_free_trial() && 2 == $bill_times)) {
427 427
 
428 428
 			// Non-recurring payments
429 429
 			$paypal_args['src'] = 0;
@@ -432,15 +432,15 @@  discard block
 block discarded – undo
432 432
 
433 433
 			$paypal_args['src'] = 1;
434 434
 
435
-			if ( $bill_times > 0 ) {
435
+			if ($bill_times > 0) {
436 436
 
437 437
 				// An initial period is being used to charge a sign-up fee
438
-				if ( $initial_amount != $recurring_amount && ! $subscription_item->has_free_trial() ) {
438
+				if ($initial_amount != $recurring_amount && !$subscription_item->has_free_trial()) {
439 439
 					$bill_times--;
440 440
 				}
441 441
 
442 442
                 // Make sure it's not over the max of 52
443
-                $paypal_args['srt'] = ( $bill_times <= 52 ? absint( $bill_times ) : 52 );
443
+                $paypal_args['srt'] = ($bill_times <= 52 ? absint($bill_times) : 52);
444 444
 
445 445
 			}
446 446
         }
@@ -449,10 +449,10 @@  discard block
 block discarded – undo
449 449
         $paypal_args['rm'] = 2;
450 450
         
451 451
         // Get rid of redudant items.
452
-        foreach ( array( 'item_name_1', 'quantity_1', 'amount_1', 'item_number_1' ) as $arg ) {
452
+        foreach (array('item_name_1', 'quantity_1', 'amount_1', 'item_number_1') as $arg) {
453 453
 
454
-            if ( isset( $paypal_args[ $arg ] ) ) {
455
-                unset( $paypal_args[ $arg ] );
454
+            if (isset($paypal_args[$arg])) {
455
+                unset($paypal_args[$arg]);
456 456
             }
457 457
 
458 458
         }
@@ -471,7 +471,7 @@  discard block
 block discarded – undo
471 471
 	 * @return void
472 472
 	 */
473 473
 	public function verify_ipn() {
474
-        new GetPaid_Paypal_Gateway_IPN_Handler( $this );
474
+        new GetPaid_Paypal_Gateway_IPN_Handler($this);
475 475
     }
476 476
 
477 477
     /**
@@ -480,7 +480,7 @@  discard block
 block discarded – undo
480 480
     public function sandbox_notice() {
481 481
 
482 482
         return sprintf(
483
-			__( 'SANDBOX ENABLED. You can use sandbox testing accounts only. See the %sPayPal Sandbox Testing Guide%s for more details.', 'invoicing' ),
483
+			__('SANDBOX ENABLED. You can use sandbox testing accounts only. See the %sPayPal Sandbox Testing Guide%s for more details.', 'invoicing'),
484 484
 			'<a href="https://developer.paypal.com/docs/classic/lifecycle/ug_sandbox/">',
485 485
 			'</a>'
486 486
 		);
Please login to merge, or discard this patch.
templates/payment-forms/elements/discount.php 1 patch
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -8,20 +8,20 @@
 block discarded – undo
8 8
  * @var GetPaid_Payment_Form $form The current payment form
9 9
  */
10 10
 
11
-defined( 'ABSPATH' ) || exit;
11
+defined('ABSPATH') || exit;
12 12
 
13
-$placeholder = esc_attr( $input_label );
14
-$label       = sanitize_text_field( $button_label );
13
+$placeholder = esc_attr($input_label);
14
+$label       = sanitize_text_field($button_label);
15 15
 
16
-if ( ! empty( $description ) ) {
16
+if (!empty($description)) {
17 17
     $description = "<small class='form-text text-muted'>$description</small>";
18 18
 } else {
19 19
     $description = '';
20 20
 }
21 21
 
22 22
 $discount_code = '';
23
-if ( ! empty( $form->invoice ) ) {
24
-    $discount_code = esc_attr( $form->invoice->get_discount_code() );
23
+if (!empty($form->invoice)) {
24
+    $discount_code = esc_attr($form->invoice->get_discount_code());
25 25
 }
26 26
 
27 27
 ?>
Please login to merge, or discard this patch.