Passed
Pull Request — master (#281)
by Kiran
04:07
created
vendor/composer/installers/src/bootstrap.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -6,8 +6,8 @@
 block discarded – undo
6 6
     }
7 7
 }
8 8
 if ((!$loader = includeIfExists(__DIR__ . '/../vendor/autoload.php')) && (!$loader = includeIfExists(__DIR__ . '/../../../autoload.php'))) {
9
-    die('You must set up the project dependencies, run the following commands:'.PHP_EOL.
10
-        'curl -s http://getcomposer.org/installer | php'.PHP_EOL.
11
-        'php composer.phar install'.PHP_EOL);
9
+    die('You must set up the project dependencies, run the following commands:' . PHP_EOL .
10
+        'curl -s http://getcomposer.org/installer | php' . PHP_EOL .
11
+        'php composer.phar install' . PHP_EOL);
12 12
 }
13 13
 return $loader;
Please login to merge, or discard this patch.
includes/wpinv-item-functions.php 3 patches
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -799,7 +799,7 @@
 block discarded – undo
799 799
                 case 'trial_interval':
800 800
                     $value = absint( $value );
801 801
                 break;
802
-				case 'editable':
802
+                case 'editable':
803 803
                     $value = (int) $value;
804 804
                 break;
805 805
             }
Please login to merge, or discard this patch.
Braces   +9 added lines, -5 removed lines patch added patch discarded remove patch
@@ -1,6 +1,8 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly
3
-if ( ! defined( 'ABSPATH' ) ) exit;
3
+if ( ! defined( 'ABSPATH' ) ) {
4
+    exit;
5
+}
4 6
 
5 7
 function wpinv_get_item_by_id( $id ) {
6 8
     return wpinv_get_item_by( 'id', $id );
@@ -80,8 +82,9 @@  discard block
 block discarded – undo
80 82
 function wpinv_get_item( $item = 0 ) {
81 83
     if ( is_numeric( $item ) ) {
82 84
         $item = get_post( $item );
83
-        if ( ! $item || 'wpi_item' !== $item->post_type )
84
-            return null;
85
+        if ( ! $item || 'wpi_item' !== $item->post_type ) {
86
+                    return null;
87
+        }
85 88
         return $item;
86 89
     }
87 90
 
@@ -331,8 +334,9 @@  discard block
 block discarded – undo
331 334
 }
332 335
 
333 336
 function wpinv_remove_item_logs_on_delete( $item_id = 0 ) {
334
-    if ( 'wpi_item' !== get_post_type( $item_id ) )
335
-        return;
337
+    if ( 'wpi_item' !== get_post_type( $item_id ) ) {
338
+            return;
339
+    }
336 340
 
337 341
     global $wpinv_logs;
338 342
     
Please login to merge, or discard this patch.
Spacing   +305 added lines, -305 removed lines patch added patch discarded remove patch
@@ -1,23 +1,23 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly
3
-if ( ! defined( 'ABSPATH' ) ) exit;
3
+if (!defined('ABSPATH')) exit;
4 4
 
5
-function wpinv_get_item_by_id( $id ) {
6
-    return wpinv_get_item_by( 'id', $id );
5
+function wpinv_get_item_by_id($id) {
6
+    return wpinv_get_item_by('id', $id);
7 7
 }
8 8
 
9
-function wpinv_get_item_by( $field = '', $value = '', $type = '' ) {
10
-    if( empty( $field ) || empty( $value ) ) {
9
+function wpinv_get_item_by($field = '', $value = '', $type = '') {
10
+    if (empty($field) || empty($value)) {
11 11
         return false;
12 12
     }
13 13
     
14 14
     $posts = array();
15 15
 
16
-    switch( strtolower( $field ) ) {
16
+    switch (strtolower($field)) {
17 17
         case 'id':
18
-            $item = new WPInv_Item( $value );
18
+            $item = new WPInv_Item($value);
19 19
 
20
-            if ( !empty( $item ) && $item->post_type == 'wpi_item' ) {
20
+            if (!empty($item) && $item->post_type == 'wpi_item') {
21 21
                 return $item;
22 22
             }
23 23
             return false;
@@ -26,16 +26,16 @@  discard block
 block discarded – undo
26 26
 
27 27
         case 'slug':
28 28
         case 'name':
29
-            $posts = get_posts( array(
29
+            $posts = get_posts(array(
30 30
                 'post_type'      => 'wpi_item',
31 31
                 'name'           => $value,
32 32
                 'posts_per_page' => 1,
33 33
                 'post_status'    => 'any'
34
-            ) );
34
+            ));
35 35
 
36 36
             break;
37 37
         case 'custom_id':
38
-            if ( empty( $value ) || empty( $type ) ) {
38
+            if (empty($value) || empty($type)) {
39 39
                 return false;
40 40
             }
41 41
             
@@ -55,10 +55,10 @@  discard block
 block discarded – undo
55 55
                 'post_status'    => 'any',
56 56
                 'orderby'        => 'ID',
57 57
                 'order'          => 'ASC',
58
-                'meta_query'     => array( $meta_query )
58
+                'meta_query'     => array($meta_query)
59 59
             );
60 60
             
61
-            $posts = get_posts( $args );
61
+            $posts = get_posts($args);
62 62
 
63 63
             break;
64 64
 
@@ -66,10 +66,10 @@  discard block
 block discarded – undo
66 66
             return false;
67 67
     }
68 68
     
69
-    if ( !empty( $posts[0] ) ) {
70
-        $item = new WPInv_Item( $posts[0]->ID );
69
+    if (!empty($posts[0])) {
70
+        $item = new WPInv_Item($posts[0]->ID);
71 71
 
72
-        if ( !empty( $item ) && $item->post_type == 'wpi_item' ) {
72
+        if (!empty($item) && $item->post_type == 'wpi_item') {
73 73
             return $item;
74 74
         }
75 75
     }
@@ -77,10 +77,10 @@  discard block
 block discarded – undo
77 77
     return false;
78 78
 }
79 79
 
80
-function wpinv_get_item( $item = 0 ) {
81
-    if ( is_numeric( $item ) ) {
82
-        $item = get_post( $item );
83
-        if ( ! $item || 'wpi_item' !== $item->post_type )
80
+function wpinv_get_item($item = 0) {
81
+    if (is_numeric($item)) {
82
+        $item = get_post($item);
83
+        if (!$item || 'wpi_item' !== $item->post_type)
84 84
             return null;
85 85
         return $item;
86 86
     }
@@ -93,18 +93,18 @@  discard block
 block discarded – undo
93 93
 
94 94
     $item = get_posts($args);
95 95
 
96
-    if ( $item ) {
96
+    if ($item) {
97 97
         return $item[0];
98 98
     }
99 99
 
100 100
     return null;
101 101
 }
102 102
 
103
-function wpinv_get_all_items( $args = array() ) {
103
+function wpinv_get_all_items($args = array()) {
104 104
 
105
-    $args = wp_parse_args( $args, array(
106
-        'status'         => array( 'publish' ),
107
-        'limit'          => get_option( 'posts_per_page' ),
105
+    $args = wp_parse_args($args, array(
106
+        'status'         => array('publish'),
107
+        'limit'          => get_option('posts_per_page'),
108 108
         'page'           => 1,
109 109
         'exclude'        => array(),
110 110
         'orderby'        => 'date',
@@ -113,7 +113,7 @@  discard block
 block discarded – undo
113 113
         'meta_query'     => array(),
114 114
         'return'         => 'objects',
115 115
         'paginate'       => false,
116
-    ) );
116
+    ));
117 117
 
118 118
     $wp_query_args = array(
119 119
         'post_type'      => 'wpi_item',
@@ -123,26 +123,26 @@  discard block
 block discarded – undo
123 123
         'fields'         => 'ids',
124 124
         'orderby'        => $args['orderby'],
125 125
         'order'          => $args['order'],
126
-        'paged'          => absint( $args['page'] ),
126
+        'paged'          => absint($args['page']),
127 127
     );
128 128
 
129
-    if ( ! empty( $args['exclude'] ) ) {
130
-        $wp_query_args['post__not_in'] = array_map( 'absint', $args['exclude'] );
129
+    if (!empty($args['exclude'])) {
130
+        $wp_query_args['post__not_in'] = array_map('absint', $args['exclude']);
131 131
     }
132 132
 
133
-    if ( ! $args['paginate' ] ) {
133
+    if (!$args['paginate']) {
134 134
         $wp_query_args['no_found_rows'] = true;
135 135
     }
136 136
 
137
-    if ( ! empty( $args['search'] ) ) {
137
+    if (!empty($args['search'])) {
138 138
         $wp_query_args['s'] = $args['search'];
139 139
     }
140 140
 
141
-    if ( ! empty( $args['type'] ) && $args['type'] !== wpinv_item_types() ) {
142
-        $types = wpinv_parse_list( $args['type'] );
141
+    if (!empty($args['type']) && $args['type'] !== wpinv_item_types()) {
142
+        $types = wpinv_parse_list($args['type']);
143 143
         $wp_query_args['meta_query'][] = array(
144 144
             'key'     => '_wpinv_type',
145
-            'value'   => implode( ',', $types ),
145
+            'value'   => implode(',', $types),
146 146
             'compare' => 'IN',
147 147
         );
148 148
     }
@@ -150,17 +150,17 @@  discard block
 block discarded – undo
150 150
     $wp_query_args = apply_filters('wpinv_get_items_args', $wp_query_args, $args);
151 151
 
152 152
     // Get results.
153
-    $items = new WP_Query( $wp_query_args );
153
+    $items = new WP_Query($wp_query_args);
154 154
 
155
-    if ( 'objects' === $args['return'] ) {
156
-        $return = array_map( 'wpinv_get_item_by_id', $items->posts );
157
-    } elseif ( 'self' === $args['return'] ) {
155
+    if ('objects' === $args['return']) {
156
+        $return = array_map('wpinv_get_item_by_id', $items->posts);
157
+    } elseif ('self' === $args['return']) {
158 158
         return $items;
159 159
     } else {
160 160
         $return = $items->posts;
161 161
     }
162 162
 
163
-    if ( $args['paginate' ] ) {
163
+    if ($args['paginate']) {
164 164
         return (object) array(
165 165
             'items'      => $return,
166 166
             'total'         => $items->found_posts,
@@ -172,143 +172,143 @@  discard block
 block discarded – undo
172 172
 
173 173
 }
174 174
 
175
-function wpinv_is_free_item( $item_id = 0 ) {
176
-    if( empty( $item_id ) ) {
175
+function wpinv_is_free_item($item_id = 0) {
176
+    if (empty($item_id)) {
177 177
         return false;
178 178
     }
179 179
 
180
-    $item = new WPInv_Item( $item_id );
180
+    $item = new WPInv_Item($item_id);
181 181
     
182 182
     return $item->is_free();
183 183
 }
184 184
 
185
-function wpinv_item_is_editable( $item = 0 ) {
186
-    if ( !empty( $item ) && is_a( $item, 'WP_Post' ) ) {
185
+function wpinv_item_is_editable($item = 0) {
186
+    if (!empty($item) && is_a($item, 'WP_Post')) {
187 187
         $item = $item->ID;
188 188
     }
189 189
         
190
-    if ( empty( $item ) ) {
190
+    if (empty($item)) {
191 191
         return true;
192 192
     }
193 193
 
194
-    $item = new WPInv_Item( $item );
194
+    $item = new WPInv_Item($item);
195 195
     
196 196
     return (bool) $item->is_editable();
197 197
 }
198 198
 
199
-function wpinv_get_item_price( $item_id = 0 ) {
200
-    if( empty( $item_id ) ) {
199
+function wpinv_get_item_price($item_id = 0) {
200
+    if (empty($item_id)) {
201 201
         return false;
202 202
     }
203 203
 
204
-    $item = new WPInv_Item( $item_id );
204
+    $item = new WPInv_Item($item_id);
205 205
     
206 206
     return $item->get_price();
207 207
 }
208 208
 
209
-function wpinv_is_recurring_item( $item_id = 0 ) {
210
-    if( empty( $item_id ) ) {
209
+function wpinv_is_recurring_item($item_id = 0) {
210
+    if (empty($item_id)) {
211 211
         return false;
212 212
     }
213 213
 
214
-    $item = new WPInv_Item( $item_id );
214
+    $item = new WPInv_Item($item_id);
215 215
     
216 216
     return $item->is_recurring();
217 217
 }
218 218
 
219
-function wpinv_item_price( $item_id = 0 ) {
220
-    if( empty( $item_id ) ) {
219
+function wpinv_item_price($item_id = 0) {
220
+    if (empty($item_id)) {
221 221
         return false;
222 222
     }
223 223
 
224
-    $price = wpinv_get_item_price( $item_id );
225
-    $price = wpinv_price( wpinv_format_amount( $price ) );
224
+    $price = wpinv_get_item_price($item_id);
225
+    $price = wpinv_price(wpinv_format_amount($price));
226 226
     
227
-    return apply_filters( 'wpinv_item_price', $price, $item_id );
227
+    return apply_filters('wpinv_item_price', $price, $item_id);
228 228
 }
229 229
 
230
-function wpinv_item_show_price( $item_id = 0, $echo = true ) {
231
-    if ( empty( $item_id ) ) {
230
+function wpinv_item_show_price($item_id = 0, $echo = true) {
231
+    if (empty($item_id)) {
232 232
         $item_id = get_the_ID();
233 233
     }
234 234
 
235
-    $price = wpinv_item_price( $item_id );
235
+    $price = wpinv_item_price($item_id);
236 236
 
237
-    $price           = apply_filters( 'wpinv_item_price', wpinv_sanitize_amount( $price ), $item_id );
237
+    $price           = apply_filters('wpinv_item_price', wpinv_sanitize_amount($price), $item_id);
238 238
     $formatted_price = '<span class="wpinv_price" id="wpinv_item_' . $item_id . '">' . $price . '</span>';
239
-    $formatted_price = apply_filters( 'wpinv_item_price_after_html', $formatted_price, $item_id, $price );
239
+    $formatted_price = apply_filters('wpinv_item_price_after_html', $formatted_price, $item_id, $price);
240 240
 
241
-    if ( $echo ) {
241
+    if ($echo) {
242 242
         echo $formatted_price;
243 243
     } else {
244 244
         return $formatted_price;
245 245
     }
246 246
 }
247 247
 
248
-function wpinv_get_item_final_price( $item_id = 0, $amount_override = null ) {
249
-    if ( is_null( $amount_override ) ) {
250
-        $original_price = get_post_meta( $item_id, '_wpinv_price', true );
248
+function wpinv_get_item_final_price($item_id = 0, $amount_override = null) {
249
+    if (is_null($amount_override)) {
250
+        $original_price = get_post_meta($item_id, '_wpinv_price', true);
251 251
     } else {
252 252
         $original_price = $amount_override;
253 253
     }
254 254
     
255 255
     $price = $original_price;
256 256
 
257
-    return apply_filters( 'wpinv_get_item_final_price', $price, $item_id );
257
+    return apply_filters('wpinv_get_item_final_price', $price, $item_id);
258 258
 }
259 259
 
260
-function wpinv_item_custom_singular_name( $item_id ) {
261
-    if( empty( $item_id ) ) {
260
+function wpinv_item_custom_singular_name($item_id) {
261
+    if (empty($item_id)) {
262 262
         return false;
263 263
     }
264 264
 
265
-    $item = new WPInv_Item( $item_id );
265
+    $item = new WPInv_Item($item_id);
266 266
     
267 267
     return $item->get_custom_singular_name();
268 268
 }
269 269
 
270 270
 function wpinv_get_item_types() {
271 271
     $item_types = array(
272
-            'custom'    => __( 'Standard', 'invoicing' ),
273
-            'fee'       => __( 'Fee', 'invoicing' ),
272
+            'custom'    => __('Standard', 'invoicing'),
273
+            'fee'       => __('Fee', 'invoicing'),
274 274
         );
275
-    return apply_filters( 'wpinv_get_item_types', $item_types );
275
+    return apply_filters('wpinv_get_item_types', $item_types);
276 276
 }
277 277
 
278 278
 function wpinv_item_types() {
279 279
     $item_types = wpinv_get_item_types();
280 280
     
281
-    return ( !empty( $item_types ) ? array_keys( $item_types ) : array() );
281
+    return (!empty($item_types) ? array_keys($item_types) : array());
282 282
 }
283 283
 
284
-function wpinv_get_item_type( $item_id ) {
285
-    if( empty( $item_id ) ) {
284
+function wpinv_get_item_type($item_id) {
285
+    if (empty($item_id)) {
286 286
         return false;
287 287
     }
288 288
 
289
-    $item = new WPInv_Item( $item_id );
289
+    $item = new WPInv_Item($item_id);
290 290
     
291 291
     return $item->get_type();
292 292
 }
293 293
 
294
-function wpinv_item_type( $item_id ) {
294
+function wpinv_item_type($item_id) {
295 295
     $item_types = wpinv_get_item_types();
296 296
     
297
-    $item_type = wpinv_get_item_type( $item_id );
297
+    $item_type = wpinv_get_item_type($item_id);
298 298
     
299
-    if ( empty( $item_type ) ) {
299
+    if (empty($item_type)) {
300 300
         $item_type = '-';
301 301
     }
302 302
     
303
-    $item_type = isset( $item_types[$item_type] ) ? $item_types[$item_type] : __( $item_type, 'invoicing' );
303
+    $item_type = isset($item_types[$item_type]) ? $item_types[$item_type] : __($item_type, 'invoicing');
304 304
 
305
-    return apply_filters( 'wpinv_item_type', $item_type, $item_id );
305
+    return apply_filters('wpinv_item_type', $item_type, $item_id);
306 306
 }
307 307
 
308
-function wpinv_record_item_in_log( $item_id = 0, $file_id, $user_info, $ip, $invoice_id ) {
308
+function wpinv_record_item_in_log($item_id = 0, $file_id, $user_info, $ip, $invoice_id) {
309 309
     global $wpinv_logs;
310 310
     
311
-    if ( empty( $wpinv_logs ) ) {
311
+    if (empty($wpinv_logs)) {
312 312
         return false;
313 313
     }
314 314
 
@@ -317,278 +317,278 @@  discard block
 block discarded – undo
317 317
         'log_type'		=> 'wpi_item'
318 318
     );
319 319
 
320
-    $user_id = isset( $user_info['user_id'] ) ? $user_info['user_id'] : (int) -1;
320
+    $user_id = isset($user_info['user_id']) ? $user_info['user_id'] : (int) -1;
321 321
 
322 322
     $log_meta = array(
323 323
         'user_info'	=> $user_info,
324 324
         'user_id'	=> $user_id,
325
-        'file_id'	=> (int)$file_id,
325
+        'file_id'	=> (int) $file_id,
326 326
         'ip'		=> $ip,
327 327
         'invoice_id'=> $invoice_id,
328 328
     );
329 329
 
330
-    $wpinv_logs->insert_log( $log_data, $log_meta );
330
+    $wpinv_logs->insert_log($log_data, $log_meta);
331 331
 }
332 332
 
333
-function wpinv_remove_item_logs_on_delete( $item_id = 0 ) {
334
-    if ( 'wpi_item' !== get_post_type( $item_id ) )
333
+function wpinv_remove_item_logs_on_delete($item_id = 0) {
334
+    if ('wpi_item' !== get_post_type($item_id))
335 335
         return;
336 336
 
337 337
     global $wpinv_logs;
338 338
     
339
-    if ( empty( $wpinv_logs ) ) {
339
+    if (empty($wpinv_logs)) {
340 340
         return false;
341 341
     }
342 342
 
343 343
     // Remove all log entries related to this item
344
-    $wpinv_logs->delete_logs( $item_id );
344
+    $wpinv_logs->delete_logs($item_id);
345 345
 }
346
-add_action( 'delete_post', 'wpinv_remove_item_logs_on_delete' );
346
+add_action('delete_post', 'wpinv_remove_item_logs_on_delete');
347 347
 
348
-function wpinv_get_random_item( $post_ids = true ) {
349
-    wpinv_get_random_items( 1, $post_ids );
348
+function wpinv_get_random_item($post_ids = true) {
349
+    wpinv_get_random_items(1, $post_ids);
350 350
 }
351 351
 
352
-function wpinv_get_random_items( $num = 3, $post_ids = true ) {
353
-    if ( $post_ids ) {
354
-        $args = array( 'post_type' => 'wpi_item', 'orderby' => 'rand', 'post_count' => $num, 'fields' => 'ids' );
352
+function wpinv_get_random_items($num = 3, $post_ids = true) {
353
+    if ($post_ids) {
354
+        $args = array('post_type' => 'wpi_item', 'orderby' => 'rand', 'post_count' => $num, 'fields' => 'ids');
355 355
     } else {
356
-        $args = array( 'post_type' => 'wpi_item', 'orderby' => 'rand', 'post_count' => $num );
356
+        $args = array('post_type' => 'wpi_item', 'orderby' => 'rand', 'post_count' => $num);
357 357
     }
358 358
     
359
-    $args  = apply_filters( 'wpinv_get_random_items', $args );
359
+    $args = apply_filters('wpinv_get_random_items', $args);
360 360
     
361
-    return get_posts( $args );
361
+    return get_posts($args);
362 362
 }
363 363
 
364
-function wpinv_get_item_token( $url = '' ) {
364
+function wpinv_get_item_token($url = '') {
365 365
     $args    = array();
366
-    $hash    = apply_filters( 'wpinv_get_url_token_algorithm', 'sha256' );
367
-    $secret  = apply_filters( 'wpinv_get_url_token_secret', hash( $hash, wp_salt() ) );
366
+    $hash    = apply_filters('wpinv_get_url_token_algorithm', 'sha256');
367
+    $secret  = apply_filters('wpinv_get_url_token_secret', hash($hash, wp_salt()));
368 368
 
369
-    $parts   = parse_url( $url );
369
+    $parts   = parse_url($url);
370 370
     $options = array();
371 371
 
372
-    if ( isset( $parts['query'] ) ) {
373
-        wp_parse_str( $parts['query'], $query_args );
372
+    if (isset($parts['query'])) {
373
+        wp_parse_str($parts['query'], $query_args);
374 374
 
375
-        if ( ! empty( $query_args['o'] ) ) {
376
-            $options = explode( ':', rawurldecode( $query_args['o'] ) );
375
+        if (!empty($query_args['o'])) {
376
+            $options = explode(':', rawurldecode($query_args['o']));
377 377
 
378
-            if ( in_array( 'ip', $options ) ) {
378
+            if (in_array('ip', $options)) {
379 379
                 $args['ip'] = wpinv_get_ip();
380 380
             }
381 381
 
382
-            if ( in_array( 'ua', $options ) ) {
382
+            if (in_array('ua', $options)) {
383 383
                 $ua = wpinv_get_user_agent();
384
-                $args['user_agent'] = rawurlencode( $ua );
384
+                $args['user_agent'] = rawurlencode($ua);
385 385
             }
386 386
         }
387 387
     }
388 388
 
389
-    $args = apply_filters( 'wpinv_get_url_token_args', $args, $url, $options );
389
+    $args = apply_filters('wpinv_get_url_token_args', $args, $url, $options);
390 390
 
391 391
     $args['secret'] = $secret;
392 392
     $args['token']  = false;
393 393
 
394
-    $url   = add_query_arg( $args, $url );
395
-    $parts = parse_url( $url );
394
+    $url   = add_query_arg($args, $url);
395
+    $parts = parse_url($url);
396 396
 
397
-    if ( ! isset( $parts['path'] ) ) {
397
+    if (!isset($parts['path'])) {
398 398
         $parts['path'] = '';
399 399
     }
400 400
 
401
-    $token = md5( $parts['path'] . '?' . $parts['query'] );
401
+    $token = md5($parts['path'] . '?' . $parts['query']);
402 402
 
403 403
     return $token;
404 404
 }
405 405
 
406
-function wpinv_validate_url_token( $url = '' ) {
406
+function wpinv_validate_url_token($url = '') {
407 407
     $ret   = false;
408
-    $parts = parse_url( $url );
408
+    $parts = parse_url($url);
409 409
 
410
-    if ( isset( $parts['query'] ) ) {
411
-        wp_parse_str( $parts['query'], $query_args );
410
+    if (isset($parts['query'])) {
411
+        wp_parse_str($parts['query'], $query_args);
412 412
 
413
-        $allowed = apply_filters( 'wpinv_url_token_allowed_params', array(
413
+        $allowed = apply_filters('wpinv_url_token_allowed_params', array(
414 414
             'item',
415 415
             'ttl',
416 416
             'token'
417
-        ) );
417
+        ));
418 418
 
419 419
         $remove = array();
420 420
 
421
-        foreach( $query_args as $key => $value ) {
422
-            if( false === in_array( $key, $allowed ) ) {
421
+        foreach ($query_args as $key => $value) {
422
+            if (false === in_array($key, $allowed)) {
423 423
                 $remove[] = $key;
424 424
             }
425 425
         }
426 426
 
427
-        if( ! empty( $remove ) ) {
428
-            $url = remove_query_arg( $remove, $url );
427
+        if (!empty($remove)) {
428
+            $url = remove_query_arg($remove, $url);
429 429
         }
430 430
 
431
-        if ( isset( $query_args['ttl'] ) && current_time( 'timestamp' ) > $query_args['ttl'] ) {
432
-            wp_die( apply_filters( 'wpinv_item_link_expired_text', __( 'Sorry but your item link has expired.', 'invoicing' ) ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) );
431
+        if (isset($query_args['ttl']) && current_time('timestamp') > $query_args['ttl']) {
432
+            wp_die(apply_filters('wpinv_item_link_expired_text', __('Sorry but your item link has expired.', 'invoicing')), __('Error', 'invoicing'), array('response' => 403));
433 433
         }
434 434
 
435
-        if ( isset( $query_args['token'] ) && $query_args['token'] == wpinv_get_item_token( $url ) ) {
435
+        if (isset($query_args['token']) && $query_args['token'] == wpinv_get_item_token($url)) {
436 436
             $ret = true;
437 437
         }
438 438
 
439 439
     }
440 440
 
441
-    return apply_filters( 'wpinv_validate_url_token', $ret, $url, $query_args );
441
+    return apply_filters('wpinv_validate_url_token', $ret, $url, $query_args);
442 442
 }
443 443
 
444
-function wpinv_item_in_cart( $item_id = 0, $options = array() ) {
444
+function wpinv_item_in_cart($item_id = 0, $options = array()) {
445 445
     $cart_items = wpinv_get_cart_contents();
446 446
 
447 447
     $ret = false;
448 448
 
449
-    if ( is_array( $cart_items ) ) {
450
-        foreach ( $cart_items as $item ) {
451
-            if ( $item['id'] == $item_id ) {
449
+    if (is_array($cart_items)) {
450
+        foreach ($cart_items as $item) {
451
+            if ($item['id'] == $item_id) {
452 452
                 $ret = true;
453 453
                 break;
454 454
             }
455 455
         }
456 456
     }
457 457
 
458
-    return (bool) apply_filters( 'wpinv_item_in_cart', $ret, $item_id, $options );
458
+    return (bool) apply_filters('wpinv_item_in_cart', $ret, $item_id, $options);
459 459
 }
460 460
 
461
-function wpinv_get_cart_item_tax( $item_id = 0, $subtotal = '', $options = array() ) {
461
+function wpinv_get_cart_item_tax($item_id = 0, $subtotal = '', $options = array()) {
462 462
     $tax = 0;
463
-    if ( ! wpinv_item_is_tax_exclusive( $item_id ) ) {
464
-        $country = !empty( $_POST['country'] ) ? $_POST['country'] : false;
465
-        $state   = isset( $_POST['state'] ) ? $_POST['state'] : '';
463
+    if (!wpinv_item_is_tax_exclusive($item_id)) {
464
+        $country = !empty($_POST['country']) ? $_POST['country'] : false;
465
+        $state   = isset($_POST['state']) ? $_POST['state'] : '';
466 466
 
467
-        $tax = wpinv_calculate_tax( $subtotal, $country, $state, $item_id );
467
+        $tax = wpinv_calculate_tax($subtotal, $country, $state, $item_id);
468 468
     }
469 469
 
470
-    return apply_filters( 'wpinv_get_cart_item_tax', $tax, $item_id, $subtotal, $options );
470
+    return apply_filters('wpinv_get_cart_item_tax', $tax, $item_id, $subtotal, $options);
471 471
 }
472 472
 
473
-function wpinv_cart_item_price( $item, $currency = '' ) {
473
+function wpinv_cart_item_price($item, $currency = '') {
474 474
 
475
-    if( empty( $currency ) ) {
475
+    if (empty($currency)) {
476 476
         $currency = wpinv_get_currency();
477 477
     }
478 478
 
479
-    $item_id    = isset( $item['id'] ) ? $item['id'] : 0;
480
-    $price      = isset( $item['item_price'] ) ? wpinv_round_amount( $item['item_price'] ) : 0;
481
-    $tax        = wpinv_price( wpinv_format_amount( $item['tax'] ) );
479
+    $item_id    = isset($item['id']) ? $item['id'] : 0;
480
+    $price      = isset($item['item_price']) ? wpinv_round_amount($item['item_price']) : 0;
481
+    $tax        = wpinv_price(wpinv_format_amount($item['tax']));
482 482
     
483
-    if ( !wpinv_is_free_item( $item_id ) && !wpinv_item_is_tax_exclusive( $item_id ) ) {
484
-        if ( wpinv_prices_show_tax_on_checkout() && !wpinv_prices_include_tax() ) {
483
+    if (!wpinv_is_free_item($item_id) && !wpinv_item_is_tax_exclusive($item_id)) {
484
+        if (wpinv_prices_show_tax_on_checkout() && !wpinv_prices_include_tax()) {
485 485
             $price += $tax;
486 486
         }
487 487
         
488
-        if( !wpinv_prices_show_tax_on_checkout() && wpinv_prices_include_tax() ) {
488
+        if (!wpinv_prices_show_tax_on_checkout() && wpinv_prices_include_tax()) {
489 489
             $price -= $tax;
490 490
         }        
491 491
     }
492 492
 
493
-    $price = wpinv_price( wpinv_format_amount( $price ), $currency );
493
+    $price = wpinv_price(wpinv_format_amount($price), $currency);
494 494
 
495
-    return apply_filters( 'wpinv_cart_item_price_label', $price, $item );
495
+    return apply_filters('wpinv_cart_item_price_label', $price, $item);
496 496
 }
497 497
 
498
-function wpinv_cart_item_subtotal( $item, $currency = '' ) {
498
+function wpinv_cart_item_subtotal($item, $currency = '') {
499 499
 
500
-    if( empty( $currency ) ) {
500
+    if (empty($currency)) {
501 501
         $currency = wpinv_get_currency();
502 502
     }
503 503
 
504
-    $subtotal   = isset( $item['subtotal'] ) ? $item['subtotal'] : 0;
505
-    $subtotal   = wpinv_price( wpinv_format_amount( $subtotal ), $currency );
504
+    $subtotal   = isset($item['subtotal']) ? $item['subtotal'] : 0;
505
+    $subtotal   = wpinv_price(wpinv_format_amount($subtotal), $currency);
506 506
 
507
-    return apply_filters( 'wpinv_cart_item_subtotal_label', $subtotal, $item );
507
+    return apply_filters('wpinv_cart_item_subtotal_label', $subtotal, $item);
508 508
 }
509 509
 
510
-function wpinv_cart_item_tax( $item, $currency = '' ) {
510
+function wpinv_cart_item_tax($item, $currency = '') {
511 511
     $tax        = '';
512 512
     $tax_rate   = '';
513 513
 
514
-    if( empty( $currency ) ) {
514
+    if (empty($currency)) {
515 515
         $currency = wpinv_get_currency();
516 516
     }
517 517
     
518
-    if ( isset( $item['tax'] ) && $item['tax'] > 0 && $item['subtotal'] > 0 ) {
519
-        $tax      = wpinv_price( wpinv_format_amount( $item['tax'] ), $currency );
520
-        $tax_rate = !empty( $item['vat_rate'] ) ? $item['vat_rate'] : ( $item['tax'] / $item['subtotal'] ) * 100;
521
-        $tax_rate = $tax_rate > 0 ? (float)wpinv_round_amount( $tax_rate, 4 ) : '';
518
+    if (isset($item['tax']) && $item['tax'] > 0 && $item['subtotal'] > 0) {
519
+        $tax      = wpinv_price(wpinv_format_amount($item['tax']), $currency);
520
+        $tax_rate = !empty($item['vat_rate']) ? $item['vat_rate'] : ($item['tax'] / $item['subtotal']) * 100;
521
+        $tax_rate = $tax_rate > 0 ? (float) wpinv_round_amount($tax_rate, 4) : '';
522 522
         $tax_rate = $tax_rate != '' ? ' <small class="tax-rate normal small">(' . $tax_rate . '%)</small>' : '';
523 523
     }
524 524
     
525
-    $tax        = $tax . $tax_rate;
525
+    $tax = $tax . $tax_rate;
526 526
     
527
-    if ( $tax === '' ) {
527
+    if ($tax === '') {
528 528
         $tax = 0; // Zero tax
529 529
     }
530 530
 
531
-    return apply_filters( 'wpinv_cart_item_tax_label', $tax, $item );
531
+    return apply_filters('wpinv_cart_item_tax_label', $tax, $item);
532 532
 }
533 533
 
534
-function wpinv_get_cart_item_price( $item_id = 0, $cart_item = array(), $options = array(), $remove_tax_from_inclusive = false ) {
534
+function wpinv_get_cart_item_price($item_id = 0, $cart_item = array(), $options = array(), $remove_tax_from_inclusive = false) {
535 535
     $price = 0;
536 536
     
537 537
     // Set custom price
538
-    if ( isset( $cart_item['custom_price'] ) && $cart_item['custom_price'] !== '' ) {
538
+    if (isset($cart_item['custom_price']) && $cart_item['custom_price'] !== '') {
539 539
         $price = $cart_item['custom_price'];
540 540
     } else {
541
-        $variable_prices = wpinv_has_variable_prices( $item_id );
541
+        $variable_prices = wpinv_has_variable_prices($item_id);
542 542
 
543
-        if ( $variable_prices ) {
544
-            $prices = wpinv_get_variable_prices( $item_id );
543
+        if ($variable_prices) {
544
+            $prices = wpinv_get_variable_prices($item_id);
545 545
 
546
-            if ( $prices ) {
547
-                if( ! empty( $options ) ) {
548
-                    $price = isset( $prices[ $options['price_id'] ] ) ? $prices[ $options['price_id'] ]['amount'] : false;
546
+            if ($prices) {
547
+                if (!empty($options)) {
548
+                    $price = isset($prices[$options['price_id']]) ? $prices[$options['price_id']]['amount'] : false;
549 549
                 } else {
550 550
                     $price = false;
551 551
                 }
552 552
             }
553 553
         }
554 554
 
555
-        if( ! $variable_prices || false === $price ) {
556
-            if($cart_item['item_price'] > 0){
555
+        if (!$variable_prices || false === $price) {
556
+            if ($cart_item['item_price'] > 0) {
557 557
                 $price = $cart_item['item_price'];
558 558
             } else {
559 559
                 // Get the standard Item price if not using variable prices
560
-                $price = wpinv_get_item_price( $item_id );
560
+                $price = wpinv_get_item_price($item_id);
561 561
             }
562 562
         }
563 563
     }
564 564
 
565
-    if ( $remove_tax_from_inclusive && wpinv_prices_include_tax() ) {
566
-        $price -= wpinv_get_cart_item_tax( $item_id, $price, $options );
565
+    if ($remove_tax_from_inclusive && wpinv_prices_include_tax()) {
566
+        $price -= wpinv_get_cart_item_tax($item_id, $price, $options);
567 567
     }
568 568
 
569
-    return apply_filters( 'wpinv_cart_item_price', $price, $item_id, $cart_item, $options, $remove_tax_from_inclusive );
569
+    return apply_filters('wpinv_cart_item_price', $price, $item_id, $cart_item, $options, $remove_tax_from_inclusive);
570 570
 }
571 571
 
572
-function wpinv_get_cart_item_price_id( $item = array() ) {
573
-    if( isset( $item['item_number'] ) ) {
574
-        $price_id = isset( $item['item_number']['options']['price_id'] ) ? $item['item_number']['options']['price_id'] : null;
572
+function wpinv_get_cart_item_price_id($item = array()) {
573
+    if (isset($item['item_number'])) {
574
+        $price_id = isset($item['item_number']['options']['price_id']) ? $item['item_number']['options']['price_id'] : null;
575 575
     } else {
576
-        $price_id = isset( $item['options']['price_id'] ) ? $item['options']['price_id'] : null;
576
+        $price_id = isset($item['options']['price_id']) ? $item['options']['price_id'] : null;
577 577
     }
578 578
     return $price_id;
579 579
 }
580 580
 
581
-function wpinv_get_cart_item_price_name( $item = array() ) {
582
-    $price_id = (int)wpinv_get_cart_item_price_id( $item );
583
-    $prices   = wpinv_get_variable_prices( $item['id'] );
584
-    $name     = ! empty( $prices[ $price_id ] ) ? $prices[ $price_id ]['name'] : '';
585
-    return apply_filters( 'wpinv_get_cart_item_price_name', $name, $item['id'], $price_id, $item );
581
+function wpinv_get_cart_item_price_name($item = array()) {
582
+    $price_id = (int) wpinv_get_cart_item_price_id($item);
583
+    $prices   = wpinv_get_variable_prices($item['id']);
584
+    $name     = !empty($prices[$price_id]) ? $prices[$price_id]['name'] : '';
585
+    return apply_filters('wpinv_get_cart_item_price_name', $name, $item['id'], $price_id, $item);
586 586
 }
587 587
 
588
-function wpinv_get_cart_item_name( $item = array() ) {
589
-    $item_title = !empty( $item['name'] ) ? $item['name'] : get_the_title( $item['id'] );
588
+function wpinv_get_cart_item_name($item = array()) {
589
+    $item_title = !empty($item['name']) ? $item['name'] : get_the_title($item['id']);
590 590
 
591
-    if ( empty( $item_title ) ) {
591
+    if (empty($item_title)) {
592 592
         $item_title = $item['id'];
593 593
     }
594 594
 
@@ -598,23 +598,23 @@  discard block
 block discarded – undo
598 598
     }
599 599
     */
600 600
 
601
-    return apply_filters( 'wpinv_get_cart_item_name', $item_title, $item['id'], $item );
601
+    return apply_filters('wpinv_get_cart_item_name', $item_title, $item['id'], $item);
602 602
 }
603 603
 
604
-function wpinv_has_variable_prices( $item_id = 0 ) {
604
+function wpinv_has_variable_prices($item_id = 0) {
605 605
     return false;
606 606
 }
607 607
 
608
-function wpinv_get_item_position_in_cart( $item_id = 0, $options = array() ) {
608
+function wpinv_get_item_position_in_cart($item_id = 0, $options = array()) {
609 609
     $cart_items = wpinv_get_cart_contents();
610 610
 
611
-    if ( !is_array( $cart_items ) ) {
611
+    if (!is_array($cart_items)) {
612 612
         return false; // Empty cart
613 613
     } else {
614
-        foreach ( $cart_items as $position => $item ) {
615
-            if ( $item['id'] == $item_id ) {
616
-                if ( isset( $options['price_id'] ) && isset( $item['options']['price_id'] ) ) {
617
-                    if ( (int) $options['price_id'] == (int) $item['options']['price_id'] ) {
614
+        foreach ($cart_items as $position => $item) {
615
+            if ($item['id'] == $item_id) {
616
+                if (isset($options['price_id']) && isset($item['options']['price_id'])) {
617
+                    if ((int) $options['price_id'] == (int) $item['options']['price_id']) {
618 618
                         return $position;
619 619
                     }
620 620
                 } else {
@@ -627,80 +627,80 @@  discard block
 block discarded – undo
627 627
     return false; // Not found
628 628
 }
629 629
 
630
-function wpinv_get_cart_item_quantity( $item ) {
631
-    if ( wpinv_item_quantities_enabled() ) {
632
-        $quantity = !empty( $item['quantity'] ) && (int)$item['quantity'] > 0 ? absint( $item['quantity'] ) : 1;
630
+function wpinv_get_cart_item_quantity($item) {
631
+    if (wpinv_item_quantities_enabled()) {
632
+        $quantity = !empty($item['quantity']) && (int) $item['quantity'] > 0 ? absint($item['quantity']) : 1;
633 633
     } else {
634 634
         $quantity = 1;
635 635
     }
636 636
     
637
-    if ( $quantity < 1 ) {
637
+    if ($quantity < 1) {
638 638
         $quantity = 1;
639 639
     }
640 640
     
641
-    return apply_filters( 'wpinv_get_cart_item_quantity', $quantity, $item );
641
+    return apply_filters('wpinv_get_cart_item_quantity', $quantity, $item);
642 642
 }
643 643
 
644
-function wpinv_get_item_suffix( $item, $html = true ) {
645
-    if ( empty( $item ) ) {
644
+function wpinv_get_item_suffix($item, $html = true) {
645
+    if (empty($item)) {
646 646
         return NULL;
647 647
     }
648 648
     
649
-    if ( is_int( $item ) ) {
650
-        $item = new WPInv_Item( $item );
649
+    if (is_int($item)) {
650
+        $item = new WPInv_Item($item);
651 651
     }
652 652
     
653
-    if ( !( is_object( $item ) && is_a( $item, 'WPInv_Item' ) ) ) {
653
+    if (!(is_object($item) && is_a($item, 'WPInv_Item'))) {
654 654
         return NULL;
655 655
     }
656 656
     
657
-    $suffix = $item->is_recurring() ? ' <span class="wpi-suffix">' . __( '(r)', 'invoicing' ) . '</span>' : '';
657
+    $suffix = $item->is_recurring() ? ' <span class="wpi-suffix">' . __('(r)', 'invoicing') . '</span>' : '';
658 658
     
659
-    if ( !$html && $suffix ) {
660
-        $suffix = strip_tags( $suffix );
659
+    if (!$html && $suffix) {
660
+        $suffix = strip_tags($suffix);
661 661
     }
662 662
     
663
-    return apply_filters( 'wpinv_get_item_suffix', $suffix, $item, $html );
663
+    return apply_filters('wpinv_get_item_suffix', $suffix, $item, $html);
664 664
 }
665 665
 
666
-function wpinv_remove_item( $item = 0, $force_delete = false ) {
667
-    if ( empty( $item ) ) {
666
+function wpinv_remove_item($item = 0, $force_delete = false) {
667
+    if (empty($item)) {
668 668
         return NULL;
669 669
     }
670 670
     
671
-    if ( is_int( $item ) ) {
672
-        $item = new WPInv_Item( $item );
671
+    if (is_int($item)) {
672
+        $item = new WPInv_Item($item);
673 673
     }
674 674
     
675
-    if ( !( is_object( $item ) && is_a( $item, 'WPInv_Item' ) ) ) {
675
+    if (!(is_object($item) && is_a($item, 'WPInv_Item'))) {
676 676
         return NULL;
677 677
     }
678 678
     
679
-    do_action( 'wpinv_pre_delete_item', $item );
679
+    do_action('wpinv_pre_delete_item', $item);
680 680
 
681
-    wp_delete_post( $item->ID, $force_delete );
681
+    wp_delete_post($item->ID, $force_delete);
682 682
 
683
-    do_action( 'wpinv_post_delete_item', $item );
683
+    do_action('wpinv_post_delete_item', $item);
684 684
 }
685 685
 
686
-function wpinv_can_delete_item( $post_id ) {
686
+function wpinv_can_delete_item($post_id) {
687 687
     $return = wpinv_current_user_can_manage_invoicing() ? true : false;
688 688
     
689
-    if ( $return && wpinv_item_in_use( $post_id ) ) {
689
+    if ($return && wpinv_item_in_use($post_id)) {
690 690
         $return = false; // Don't delete item already use in invoices.
691 691
     }
692 692
     
693
-    return apply_filters( 'wpinv_can_delete_item', $return, $post_id );
693
+    return apply_filters('wpinv_can_delete_item', $return, $post_id);
694 694
 }
695 695
 
696 696
 function wpinv_admin_action_delete() {
697 697
     $screen = get_current_screen();
698 698
     
699
-    if ( !empty( $screen->post_type ) && $screen->post_type == 'wpi_item' && !empty( $_REQUEST['post'] ) && is_array( $_REQUEST['post'] ) ) {
699
+    if (!empty($screen->post_type) && $screen->post_type == 'wpi_item' && !empty($_REQUEST['post']) && is_array($_REQUEST['post'])) {
700 700
         $post_ids = array();
701 701
         
702
-        foreach ( $_REQUEST['post'] as $post_id ) {
703
-            if ( !wpinv_can_delete_item( $post_id ) ) {
702
+        foreach ($_REQUEST['post'] as $post_id) {
703
+            if (!wpinv_can_delete_item($post_id)) {
704 704
                 continue;
705 705
             }
706 706
             
@@ -710,88 +710,88 @@  discard block
 block discarded – undo
710 710
         $_REQUEST['post'] = $post_ids;
711 711
     }
712 712
 }
713
-add_action( 'admin_action_trash', 'wpinv_admin_action_delete', -10 );
714
-add_action( 'admin_action_delete', 'wpinv_admin_action_delete', -10 );
713
+add_action('admin_action_trash', 'wpinv_admin_action_delete', -10);
714
+add_action('admin_action_delete', 'wpinv_admin_action_delete', -10);
715 715
 
716
-function wpinv_check_delete_item( $check, $post, $force_delete ) {
717
-    if ( $post->post_type == 'wpi_item' ) {
718
-        if ( $force_delete && !wpinv_can_delete_item( $post->ID ) ) {
716
+function wpinv_check_delete_item($check, $post, $force_delete) {
717
+    if ($post->post_type == 'wpi_item') {
718
+        if ($force_delete && !wpinv_can_delete_item($post->ID)) {
719 719
             return true;
720 720
         }
721 721
     }
722 722
     
723 723
     return $check;
724 724
 }
725
-add_filter( 'pre_delete_post', 'wpinv_check_delete_item', 10, 3 );
725
+add_filter('pre_delete_post', 'wpinv_check_delete_item', 10, 3);
726 726
 
727
-function wpinv_item_in_use( $item_id ) {
727
+function wpinv_item_in_use($item_id) {
728 728
     global $wpdb, $wpi_items_in_use;
729 729
     
730
-    if ( !$item_id > 0 ) {
730
+    if (!$item_id > 0) {
731 731
         return false;
732 732
     }
733 733
     
734
-    if ( !empty( $wpi_items_in_use ) ) {
735
-        if ( isset( $wpi_items_in_use[$item_id] ) ) {
734
+    if (!empty($wpi_items_in_use)) {
735
+        if (isset($wpi_items_in_use[$item_id])) {
736 736
             return $wpi_items_in_use[$item_id];
737 737
         }
738 738
     } else {
739 739
         $wpi_items_in_use = array();
740 740
     }
741 741
     
742
-    $statuses   = array_keys( wpinv_get_invoice_statuses( true, true ) );
742
+    $statuses = array_keys(wpinv_get_invoice_statuses(true, true));
743 743
     
744
-    $query  = "SELECT p.ID FROM " . $wpdb->posts . " AS p INNER JOIN " . $wpdb->postmeta . " AS pm ON p.ID = pm.post_id WHERE p.post_type = 'wpi_invoice' AND p.post_status IN( '" . implode( "','", $statuses ) . "' ) AND pm.meta_key = '_wpinv_item_ids' AND FIND_IN_SET( '" . (int)$item_id . "', pm.meta_value )";
745
-    $in_use = $wpdb->get_var( $query ) > 0 ? true : false;
744
+    $query  = "SELECT p.ID FROM " . $wpdb->posts . " AS p INNER JOIN " . $wpdb->postmeta . " AS pm ON p.ID = pm.post_id WHERE p.post_type = 'wpi_invoice' AND p.post_status IN( '" . implode("','", $statuses) . "' ) AND pm.meta_key = '_wpinv_item_ids' AND FIND_IN_SET( '" . (int) $item_id . "', pm.meta_value )";
745
+    $in_use = $wpdb->get_var($query) > 0 ? true : false;
746 746
     
747 747
     $wpi_items_in_use[$item_id] = $in_use;
748 748
     
749 749
     return $in_use;
750 750
 }
751 751
 
752
-function wpinv_create_item( $args = array(), $wp_error = false, $force_update = false ) {
752
+function wpinv_create_item($args = array(), $wp_error = false, $force_update = false) {
753 753
     // Set some defaults
754 754
     $defaults = array(
755
-        'type'                 => 'custom',                                                // Optional. Item type. Default 'custom'.
756
-        'title'                => '',                                                      // Required. Item title.
757
-        'custom_id'            => 0,                                                       // Optional. Any integer or non numeric id. Must be unique within item type.
758
-        'price'                => '0.00',                                                  // Optional. Item price. Default '0.00'.
759
-        'status'               => 'pending',                                               // Optional. pending, publish
760
-        'custom_name'          => '',                                                      // Optional. Plural sub title for item.
761
-        'custom_singular_name' => '',                                                      // Optional. Singular sub title for item.
762
-        'vat_rule'             => 'digital',                                               // Optional. digital => Digital item, physical => Physical item
763
-        'editable'             => true,                                                    // Optional. Item editable from Items list page? Default true.
764
-        'excerpt'              => '',                                                      // Optional. Item short description
755
+        'type'                 => 'custom', // Optional. Item type. Default 'custom'.
756
+        'title'                => '', // Required. Item title.
757
+        'custom_id'            => 0, // Optional. Any integer or non numeric id. Must be unique within item type.
758
+        'price'                => '0.00', // Optional. Item price. Default '0.00'.
759
+        'status'               => 'pending', // Optional. pending, publish
760
+        'custom_name'          => '', // Optional. Plural sub title for item.
761
+        'custom_singular_name' => '', // Optional. Singular sub title for item.
762
+        'vat_rule'             => 'digital', // Optional. digital => Digital item, physical => Physical item
763
+        'editable'             => true, // Optional. Item editable from Items list page? Default true.
764
+        'excerpt'              => '', // Optional. Item short description
765 765
         /* Recurring item fields */
766
-        'is_recurring'         => 0,                                                       // Optional. 1 => Allow recurring or 0 => Don't allow recurring
767
-        'recurring_period'     => 'M',                                                     // Optional. D => Daily, W => Weekly, M => Monthly, Y => Yearly
768
-        'recurring_interval'   => 0,                                                       // Optional. Integer value between 1 - 90.
769
-        'recurring_limit'      => 0,                                                       // Optional. Any integer number. 0 for recurring forever until cancelled.
770
-        'free_trial'           => 0,                                                       // Optional. 1 => Allow free trial or 0 => Don't free trial
771
-        'trial_period'         => 'M',                                                     // Optional. D => Daily, W => Weekly, M => Monthly, Y => Yearly
772
-        'trial_interval'       => 0,                                                       // Optional. Any integer number.
773
-        'minimum_price'        => '0.00',                                                  // Optional. Minimum allowed prices for items with dynamic pricing.
774
-        'dynamic_pricing'      => 0,                                                       // Optional. Whether or not the item supports dynamic prices.
766
+        'is_recurring'         => 0, // Optional. 1 => Allow recurring or 0 => Don't allow recurring
767
+        'recurring_period'     => 'M', // Optional. D => Daily, W => Weekly, M => Monthly, Y => Yearly
768
+        'recurring_interval'   => 0, // Optional. Integer value between 1 - 90.
769
+        'recurring_limit'      => 0, // Optional. Any integer number. 0 for recurring forever until cancelled.
770
+        'free_trial'           => 0, // Optional. 1 => Allow free trial or 0 => Don't free trial
771
+        'trial_period'         => 'M', // Optional. D => Daily, W => Weekly, M => Monthly, Y => Yearly
772
+        'trial_interval'       => 0, // Optional. Any integer number.
773
+        'minimum_price'        => '0.00', // Optional. Minimum allowed prices for items with dynamic pricing.
774
+        'dynamic_pricing'      => 0, // Optional. Whether or not the item supports dynamic prices.
775 775
     );
776 776
 
777
-    $data = wp_parse_args( $args, $defaults );
777
+    $data = wp_parse_args($args, $defaults);
778 778
 
779
-    if ( empty( $data['type'] ) ) {
779
+    if (empty($data['type'])) {
780 780
         $data['type'] = 'custom';
781 781
     }
782 782
 
783
-    if ( !empty( $data['custom_id'] ) ) {
784
-        $item = wpinv_get_item_by( 'custom_id', $data['custom_id'], $data['type'] );
783
+    if (!empty($data['custom_id'])) {
784
+        $item = wpinv_get_item_by('custom_id', $data['custom_id'], $data['type']);
785 785
     } else {
786 786
         $item = NULL;
787 787
     }
788 788
 
789
-    if ( !empty( $item ) ) {
790
-        if ( $force_update ) {
791
-            if ( empty( $args['ID'] ) ) {
789
+    if (!empty($item)) {
790
+        if ($force_update) {
791
+            if (empty($args['ID'])) {
792 792
                 $args['ID'] = $item->ID;
793 793
             }
794
-            return wpinv_update_item( $args, $wp_error );
794
+            return wpinv_update_item($args, $wp_error);
795 795
         }
796 796
 
797 797
         return $item;
@@ -802,21 +802,21 @@  discard block
 block discarded – undo
802 802
     $meta['custom_id']              = $data['custom_id'];
803 803
     $meta['custom_singular_name']   = $data['custom_singular_name'];
804 804
     $meta['custom_name']            = $data['custom_name'];
805
-    $meta['price']                  = wpinv_round_amount( $data['price'] );
806
-    $meta['editable']               = (int)$data['editable'];
805
+    $meta['price']                  = wpinv_round_amount($data['price']);
806
+    $meta['editable']               = (int) $data['editable'];
807 807
     $meta['vat_rule']               = $data['vat_rule'];
808 808
     $meta['vat_class']              = '_standard';
809 809
     $meta['dynamic_pricing']        = (int) $data['dynamic_pricing'];
810
-    $meta['minimum_price']          = wpinv_round_amount( $data['minimum_price'] );
810
+    $meta['minimum_price']          = wpinv_round_amount($data['minimum_price']);
811 811
     
812
-    if ( !empty( $data['is_recurring'] ) ) {
812
+    if (!empty($data['is_recurring'])) {
813 813
         $meta['is_recurring']       = $data['is_recurring'];
814 814
         $meta['recurring_period']   = $data['recurring_period'];
815
-        $meta['recurring_interval'] = absint( $data['recurring_interval'] );
816
-        $meta['recurring_limit']    = absint( $data['recurring_limit'] );
815
+        $meta['recurring_interval'] = absint($data['recurring_interval']);
816
+        $meta['recurring_limit']    = absint($data['recurring_limit']);
817 817
         $meta['free_trial']         = $data['free_trial'];
818 818
         $meta['trial_period']       = $data['trial_period'];
819
-        $meta['trial_interval']     = absint( $data['trial_interval'] );
819
+        $meta['trial_interval']     = absint($data['trial_interval']);
820 820
     } else {
821 821
         $meta['is_recurring']       = 0;
822 822
         $meta['recurring_period']   = '';
@@ -827,7 +827,7 @@  discard block
 block discarded – undo
827 827
         $meta['trial_interval']     = '';
828 828
     }
829 829
     
830
-    $post_data  = array( 
830
+    $post_data = array( 
831 831
         'post_title'    => $data['title'],
832 832
         'post_excerpt'  => $data['excerpt'],
833 833
         'post_status'   => $data['status'],
@@ -835,34 +835,34 @@  discard block
 block discarded – undo
835 835
     );
836 836
 
837 837
     $item = new WPInv_Item();
838
-    $return = $item->create( $post_data, $wp_error );
838
+    $return = $item->create($post_data, $wp_error);
839 839
 
840
-    if ( $return && !empty( $item ) && !is_wp_error( $return ) ) {
840
+    if ($return && !empty($item) && !is_wp_error($return)) {
841 841
         return $item;
842 842
     }
843 843
 
844
-    if ( $wp_error && is_wp_error( $return ) ) {
844
+    if ($wp_error && is_wp_error($return)) {
845 845
         return $return;
846 846
     }
847 847
     return 0;
848 848
 }
849 849
 
850
-function wpinv_update_item( $args = array(), $wp_error = false ) {
851
-    $item = !empty( $args['ID'] ) ? new WPInv_Item( $args['ID'] ) : NULL;
850
+function wpinv_update_item($args = array(), $wp_error = false) {
851
+    $item = !empty($args['ID']) ? new WPInv_Item($args['ID']) : NULL;
852 852
 
853
-    if ( empty( $item ) || !( !empty( $item->post_type ) && $item->post_type == 'wpi_item' ) ) {
854
-        if ( $wp_error ) {
855
-            return new WP_Error( 'wpinv_invalid_item', __( 'Invalid item.', 'invoicing' ) );
853
+    if (empty($item) || !(!empty($item->post_type) && $item->post_type == 'wpi_item')) {
854
+        if ($wp_error) {
855
+            return new WP_Error('wpinv_invalid_item', __('Invalid item.', 'invoicing'));
856 856
         }
857 857
         return 0;
858 858
     }
859 859
     
860
-    if ( !empty( $args['custom_id'] ) ) {
861
-        $item_exists = wpinv_get_item_by( 'custom_id', $args['custom_id'], ( !empty( $args['type'] ) ? $args['type'] : $item->type ) );
860
+    if (!empty($args['custom_id'])) {
861
+        $item_exists = wpinv_get_item_by('custom_id', $args['custom_id'], (!empty($args['type']) ? $args['type'] : $item->type));
862 862
         
863
-        if ( !empty( $item_exists ) && $item_exists->ID != $args['ID'] ) {
864
-            if ( $wp_error ) {
865
-                return new WP_Error( 'wpinv_invalid_custom_id', __( 'Item with custom id already exists.', 'invoicing' ) );
863
+        if (!empty($item_exists) && $item_exists->ID != $args['ID']) {
864
+            if ($wp_error) {
865
+                return new WP_Error('wpinv_invalid_custom_id', __('Item with custom id already exists.', 'invoicing'));
866 866
             }
867 867
             return 0;
868 868
         }
@@ -889,54 +889,54 @@  discard block
 block discarded – undo
889 889
     );
890 890
 
891 891
     $post_data = array();
892
-    if ( isset( $args['title'] ) ) { 
892
+    if (isset($args['title'])) { 
893 893
         $post_data['post_title'] = $args['title'];
894 894
     }
895
-    if ( isset( $args['excerpt'] ) ) { 
895
+    if (isset($args['excerpt'])) { 
896 896
         $post_data['post_excerpt'] = $args['excerpt'];
897 897
     }
898
-    if ( isset( $args['status'] ) ) { 
898
+    if (isset($args['status'])) { 
899 899
         $post_data['post_status'] = $args['status'];
900 900
     }
901 901
     
902
-    foreach ( $meta_fields as $meta_field ) {
903
-        if ( isset( $args[ $meta_field ] ) ) { 
904
-            $value = $args[ $meta_field ];
902
+    foreach ($meta_fields as $meta_field) {
903
+        if (isset($args[$meta_field])) { 
904
+            $value = $args[$meta_field];
905 905
 
906
-            switch ( $meta_field ) {
906
+            switch ($meta_field) {
907 907
                 case 'price':
908 908
                 case 'minimum_price':
909
-                    $value = wpinv_round_amount( $value );
909
+                    $value = wpinv_round_amount($value);
910 910
                 break;
911 911
                 case 'recurring_interval':
912 912
                 case 'recurring_limit':
913 913
                 case 'trial_interval':
914
-                    $value = absint( $value );
914
+                    $value = absint($value);
915 915
                 break;
916 916
 				case 'editable':
917 917
                     $value = (int) $value;
918 918
                 break;
919 919
             }
920 920
 
921
-            $post_data['meta'][ $meta_field ] = $value;
921
+            $post_data['meta'][$meta_field] = $value;
922 922
         };
923 923
     }
924 924
 
925
-    if ( empty( $post_data ) ) {
926
-        if ( $wp_error ) {
927
-            return new WP_Error( 'wpinv_invalid_item_data', __( 'Invalid item data.', 'invoicing' ) );
925
+    if (empty($post_data)) {
926
+        if ($wp_error) {
927
+            return new WP_Error('wpinv_invalid_item_data', __('Invalid item data.', 'invoicing'));
928 928
         }
929 929
         return 0;
930 930
     }
931 931
     $post_data['ID'] = $args['ID'];
932 932
 
933
-    $return = $item->update( $post_data, $wp_error );
933
+    $return = $item->update($post_data, $wp_error);
934 934
 
935
-    if ( $return && !empty( $item ) && !is_wp_error( $return ) ) {
935
+    if ($return && !empty($item) && !is_wp_error($return)) {
936 936
         return $item;
937 937
     }
938 938
 
939
-    if ( $wp_error && is_wp_error( $return ) ) {
939
+    if ($wp_error && is_wp_error($return)) {
940 940
         return $return;
941 941
     }
942 942
     return 0;
Please login to merge, or discard this patch.
includes/admin/meta-boxes/class-mb-invoice-details.php 1 patch
Spacing   +94 added lines, -94 removed lines patch added patch discarded remove patch
@@ -1,30 +1,30 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7 7
 class WPInv_Meta_Box_Details {
8
-    public static function output( $post ) {
8
+    public static function output($post) {
9 9
         $currency_symbol    = wpinv_currency_symbol();
10
-        $statuses           = wpinv_get_invoice_statuses( true );
10
+        $statuses           = wpinv_get_invoice_statuses(true);
11 11
         
12
-        $post_id            = !empty( $post->ID ) ? $post->ID : 0;
13
-        $invoice            = new WPInv_Invoice( $post_id );
12
+        $post_id            = !empty($post->ID) ? $post->ID : 0;
13
+        $invoice            = new WPInv_Invoice($post_id);
14 14
         
15
-        $status             = $invoice->get_status( false ); // Current status    
15
+        $status             = $invoice->get_status(false); // Current status    
16 16
         $discount           = $invoice->get_discount();
17 17
         $discount_code      = $discount > 0 ? $invoice->get_discount_code() : '';
18 18
         $invoice_number     = $invoice->get_number();
19 19
         
20 20
         $date_created       = $invoice->get_created_date();
21
-        $datetime_created   = strtotime( $date_created );
22
-        $date_created       = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? date_i18n( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ), $datetime_created ) : '';
21
+        $datetime_created   = strtotime($date_created);
22
+        $date_created       = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? date_i18n(get_option('date_format') . ' ' . get_option('time_format'), $datetime_created) : '';
23 23
         $date_completed     = $invoice->get_completed_date();
24
-        $date_completed     = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? date_i18n( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ), strtotime( $date_completed ) ) : 'n/a';
25
-        $title['status'] = __( 'Invoice Status:', 'invoicing' );
26
-        $title['number'] = __( 'Invoice Number:', 'invoicing' );
27
-        $mail_notice = esc_attr__( 'After saving invoice, this will send a copy of the invoice to the user&#8217;s email address.', 'invoicing' );
24
+        $date_completed     = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? date_i18n(get_option('date_format') . ' ' . get_option('time_format'), strtotime($date_completed)) : 'n/a';
25
+        $title['status'] = __('Invoice Status:', 'invoicing');
26
+        $title['number'] = __('Invoice Number:', 'invoicing');
27
+        $mail_notice = esc_attr__('After saving invoice, this will send a copy of the invoice to the user&#8217;s email address.', 'invoicing');
28 28
         
29 29
         $title = apply_filters('wpinv_details_metabox_titles', $title, $invoice);
30 30
         $statuses = apply_filters('wpinv_invoice_statuses', $statuses, $invoice);
@@ -34,36 +34,36 @@  discard block
 block discarded – undo
34 34
 <div class="gdmbx2-wrap form-table">
35 35
     <div class="gdmbx2-metabox gdmbx-field-list" id="gdmbx2-metabox-wpinv_details">
36 36
         <div class="gdmbx-row gdmbx-type-select gdmbx2-id-wpinv-date-created">
37
-            <div class="gdmbx-th"><label><?php _e( 'Date Created:', 'invoicing' );?></label></div>
38
-            <div class="gdmbx-td"><?php echo $date_created;?></div>
37
+            <div class="gdmbx-th"><label><?php _e('Date Created:', 'invoicing'); ?></label></div>
38
+            <div class="gdmbx-td"><?php echo $date_created; ?></div>
39 39
         </div>
40
-        <?php if ( $invoice->post_type == 'wpi_invoice' && wpinv_get_option( 'overdue_active' ) && ( $invoice->needs_payment() || $invoice->has_status( array( 'auto-draft', 'draft' ) ) ) ) { ?>
40
+        <?php if ($invoice->post_type == 'wpi_invoice' && wpinv_get_option('overdue_active') && ($invoice->needs_payment() || $invoice->has_status(array('auto-draft', 'draft')))) { ?>
41 41
         <div class="gdmbx-row gdmbx-type-select gdmbx2-id-wpinv-date-overdue">
42
-            <div class="gdmbx-th"><label for="wpinv_due_date"><?php _e( 'Due Date:', 'invoicing' );?></label></div>
42
+            <div class="gdmbx-th"><label for="wpinv_due_date"><?php _e('Due Date:', 'invoicing'); ?></label></div>
43 43
             <div class="gdmbx-td">
44
-                <input type="text" placeholder="<?php esc_attr_e( 'Y-m-d', 'invoicing' );?>" value="<?php echo esc_attr( $invoice->get_due_date() );?>" id="wpinv_due_date" name="wpinv_due_date" class="regular-text wpiDatepicker" data-minDate="<?php echo esc_attr( date_i18n( 'Y-m-d', $datetime_created ) );?>" data-dateFormat="yy-mm-dd">
45
-                <p class="wpi-meta-row wpi-meta-desc"><?php _e( 'Leave blank to disable sending auto reminder for this invoice.', 'invoicing' );?></p>
44
+                <input type="text" placeholder="<?php esc_attr_e('Y-m-d', 'invoicing'); ?>" value="<?php echo esc_attr($invoice->get_due_date()); ?>" id="wpinv_due_date" name="wpinv_due_date" class="regular-text wpiDatepicker" data-minDate="<?php echo esc_attr(date_i18n('Y-m-d', $datetime_created)); ?>" data-dateFormat="yy-mm-dd">
45
+                <p class="wpi-meta-row wpi-meta-desc"><?php _e('Leave blank to disable sending auto reminder for this invoice.', 'invoicing'); ?></p>
46 46
             </div>
47 47
         </div>
48 48
         <?php } ?>
49
-        <?php do_action( 'wpinv_meta_box_details_after_due_date', $post_id ); ?>
50
-        <?php if ( $date_completed && $date_completed != 'n/a' ) { ?>
49
+        <?php do_action('wpinv_meta_box_details_after_due_date', $post_id); ?>
50
+        <?php if ($date_completed && $date_completed != 'n/a') { ?>
51 51
         <div class="gdmbx-row gdmbx-type-select gdmbx2-id-wpinv-date-completed">
52
-            <div class="gdmbx-th"><label><?php _e( 'Payment Date:', 'invoicing' );?></label></div>
53
-            <div class="gdmbx-td"><?php echo $date_completed;?></div>
52
+            <div class="gdmbx-th"><label><?php _e('Payment Date:', 'invoicing'); ?></label></div>
53
+            <div class="gdmbx-td"><?php echo $date_completed; ?></div>
54 54
         </div>
55 55
         <?php } ?>
56
-        <?php $is_viewed = wpinv_is_invoice_viewed( $post_id ); ?>
56
+        <?php $is_viewed = wpinv_is_invoice_viewed($post_id); ?>
57 57
         <div class="gdmbx-row gdmbx-type-select gdmbx2-id-wpinv-customer-viewed">
58
-            <div class="gdmbx-th"><label><?php _e( 'Viewed by Customer:', 'invoicing' );?></label></div>
59
-            <div class="gdmbx-td"><?php ( 1 == $is_viewed ) ? _e( 'Yes', 'invoicing' ) : _e( 'No', 'invoicing' ); ?></div>
58
+            <div class="gdmbx-th"><label><?php _e('Viewed by Customer:', 'invoicing'); ?></label></div>
59
+            <div class="gdmbx-td"><?php (1 == $is_viewed) ? _e('Yes', 'invoicing') : _e('No', 'invoicing'); ?></div>
60 60
         </div>
61 61
         <div class="gdmbx-row gdmbx-type-select gdmbx2-id-wpinv-status">
62 62
             <div class="gdmbx-th"><label for="wpinv_status"><?php echo $title['status']; ?></label></div>
63 63
             <div class="gdmbx-td">
64 64
                 <select required="required" id="wpinv_status" name="wpinv_status" class="gdmbx2_select wpi_select2">
65
-                    <?php foreach ( $statuses as $value => $label ) { ?>
66
-                    <option value="<?php echo $value;?>" <?php selected( $status, $value );?>><?php echo $label;?></option>
65
+                    <?php foreach ($statuses as $value => $label) { ?>
66
+                    <option value="<?php echo $value; ?>" <?php selected($status, $value); ?>><?php echo $label; ?></option>
67 67
                     <?php } ?>
68 68
                 </select>
69 69
             </div>
@@ -71,117 +71,117 @@  discard block
 block discarded – undo
71 71
         <div class="gdmbx-row gdmbx-type-text gdmbx2-id-wpinv-number table-layout">
72 72
             <div class="gdmbx-th"><label for="wpinv_number"><?php echo $title['number']; ?></label></div>
73 73
             <div class="gdmbx-td">
74
-                <input type="text" value="<?php echo esc_attr( $invoice_number );?>" id="wpinv_number" name="wpinv_number" class="regular-text" readonly>
74
+                <input type="text" value="<?php echo esc_attr($invoice_number); ?>" id="wpinv_number" name="wpinv_number" class="regular-text" readonly>
75 75
             </div>
76 76
         </div>
77
-        <?php do_action( 'wpinv_meta_box_details_inner', $post_id );
77
+        <?php do_action('wpinv_meta_box_details_inner', $post_id);
78 78
         $disable_discount = apply_filters('wpinv_disable_apply_discount', false, $invoice, $post_id);
79 79
         ?>
80
-        <?php if ( !( $is_paid = ( $invoice->is_paid() || $invoice->is_refunded() ) ) && !$disable_discount || $discount_code ) { ?>
80
+        <?php if (!($is_paid = ($invoice->is_paid() || $invoice->is_refunded())) && !$disable_discount || $discount_code) { ?>
81 81
         <div class="gdmbx-row gdmbx-type-text gdmbx2-id-wpinv-discount-code table-layout">
82
-            <div class="gdmbx-th"><label for="wpinv_discount_code"><?php _e( 'Discount Code:', 'invoicing' );?></label></div>
82
+            <div class="gdmbx-th"><label for="wpinv_discount_code"><?php _e('Discount Code:', 'invoicing'); ?></label></div>
83 83
             <div class="gdmbx-td">
84
-                <input type="text" value="<?php echo esc_attr( $discount_code ); ?>" id="wpinv_discount" class="medium-text" <?php echo ( $discount_code ? 'readonly' : '' ); ?> /><?php if ( !$is_paid && !$disable_discount ) { ?><input value="<?php echo esc_attr_e( 'Apply', 'invoicing' ); ?>" class="button button-small button-primary <?php echo ( $discount_code ? 'wpi-hide' : 'wpi-inlineb' ); ?>" id="wpinv-apply-code" type="button" /><input value="<?php echo esc_attr_e( 'Remove', 'invoicing' ); ?>" class="button button-small button-primary <?php echo ( $discount_code ? 'wpi-inlineb' : 'wpi-hide' ); ?>" id="wpinv-remove-code" type="button" /><?php } ?>
84
+                <input type="text" value="<?php echo esc_attr($discount_code); ?>" id="wpinv_discount" class="medium-text" <?php echo ($discount_code ? 'readonly' : ''); ?> /><?php if (!$is_paid && !$disable_discount) { ?><input value="<?php echo esc_attr_e('Apply', 'invoicing'); ?>" class="button button-small button-primary <?php echo ($discount_code ? 'wpi-hide' : 'wpi-inlineb'); ?>" id="wpinv-apply-code" type="button" /><input value="<?php echo esc_attr_e('Remove', 'invoicing'); ?>" class="button button-small button-primary <?php echo ($discount_code ? 'wpi-inlineb' : 'wpi-hide'); ?>" id="wpinv-remove-code" type="button" /><?php } ?>
85 85
             </div>
86 86
         </div>
87 87
         <?php } ?>
88 88
     </div>
89 89
 </div>
90 90
 <div class="gdmbx-row gdmbx-type-text gdmbx-wpinv-save-send table-layout">
91
-    <p class="wpi-meta-row wpi-save-send"><label for="wpi_save_send"><?php echo sprintf(__( 'Send %s:', 'invoicing' ),$post_obj->labels->singular_name) ; ?></label>
91
+    <p class="wpi-meta-row wpi-save-send"><label for="wpi_save_send"><?php echo sprintf(__('Send %s:', 'invoicing'), $post_obj->labels->singular_name); ?></label>
92 92
         <select id="wpi_save_send" name="wpi_save_send" class="wpi_select2">
93
-            <option value="1"><?php _e( 'Yes', 'invoicing' ); ?></option>
94
-            <option value="" selected="selected"><?php _e( 'No', 'invoicing' ); ?></option>
93
+            <option value="1"><?php _e('Yes', 'invoicing'); ?></option>
94
+            <option value="" selected="selected"><?php _e('No', 'invoicing'); ?></option>
95 95
         </select>
96 96
     </p>
97 97
     <p class="wpi-meta-row wpi-send-info"><?php echo $mail_notice; ?></p>
98 98
 </div>
99
-<?php wp_nonce_field( 'wpinv_details', 'wpinv_details_nonce' ) ;?>
99
+<?php wp_nonce_field('wpinv_details', 'wpinv_details_nonce'); ?>
100 100
         <?php
101 101
     }
102 102
     
103
-    public static function resend_invoice( $post ) {
103
+    public static function resend_invoice($post) {
104 104
         global $wpi_mb_invoice;
105 105
         
106
-        if ( empty( $wpi_mb_invoice ) ) {
106
+        if (empty($wpi_mb_invoice)) {
107 107
             return;
108 108
         }
109 109
         
110 110
         $text = array(
111
-            'message'       => esc_attr__( 'This will send a copy of the invoice to the customer&#8217;s email address.', 'invoicing' ),
112
-            'button_text'   =>  __( 'Resend Invoice', 'invoicing' ),
111
+            'message'       => esc_attr__('This will send a copy of the invoice to the customer&#8217;s email address.', 'invoicing'),
112
+            'button_text'   =>  __('Resend Invoice', 'invoicing'),
113 113
         );
114 114
             
115 115
         $text = apply_filters('wpinv_resend_invoice_metabox_text', $text);
116
-        do_action( 'wpinv_metabox_resend_invoice_before', $wpi_mb_invoice );
116
+        do_action('wpinv_metabox_resend_invoice_before', $wpi_mb_invoice);
117 117
         
118
-        if ( $email = $wpi_mb_invoice->get_email() ) {
118
+        if ($email = $wpi_mb_invoice->get_email()) {
119 119
             $email_actions = array();
120
-            $email_actions['email_url']      = remove_query_arg( 'wpinv-message', add_query_arg( array( 'wpi_action' => 'send_invoice', 'invoice_id' => $post->ID ) ) );
121
-            $email_actions['reminder_url']   = add_query_arg( array( 'wpi_action' => 'send_reminder', 'invoice_id' => $post->ID ) );
120
+            $email_actions['email_url']      = remove_query_arg('wpinv-message', add_query_arg(array('wpi_action' => 'send_invoice', 'invoice_id' => $post->ID)));
121
+            $email_actions['reminder_url']   = add_query_arg(array('wpi_action' => 'send_reminder', 'invoice_id' => $post->ID));
122 122
             
123
-            $email_actions = apply_filters('wpinv_resend_invoice_email_actions', $email_actions );
123
+            $email_actions = apply_filters('wpinv_resend_invoice_email_actions', $email_actions);
124 124
         ?>
125 125
         <p class="wpi-meta-row wpi-resend-info"><?php echo $text['message']; ?></p>
126
-        <p class="wpi-meta-row wpi-resend-email"><a href="<?php echo esc_url( $email_actions['email_url'] ); ?>" class="button button-secondary"><?php echo $text['button_text']; ?></a></p>
127
-        <?php if ( wpinv_get_option( 'overdue_active' ) && "wpi_invoice" === $wpi_mb_invoice->post_type && $wpi_mb_invoice->needs_payment() && ( $due_date = $wpi_mb_invoice->get_due_date() ) ) { ?>
128
-        <p class="wpi-meta-row wpi-send-reminder"><a title="<?php esc_attr_e( 'Send overdue reminder notification to customer', 'invoicing' ); ?>" href="<?php echo esc_url( $email_actions['reminder_url'] ); ?>" class="button button-secondary"><?php esc_attr_e( 'Send Reminder', 'invoicing' ); ?></a></p>
126
+        <p class="wpi-meta-row wpi-resend-email"><a href="<?php echo esc_url($email_actions['email_url']); ?>" class="button button-secondary"><?php echo $text['button_text']; ?></a></p>
127
+        <?php if (wpinv_get_option('overdue_active') && "wpi_invoice" === $wpi_mb_invoice->post_type && $wpi_mb_invoice->needs_payment() && ($due_date = $wpi_mb_invoice->get_due_date())) { ?>
128
+        <p class="wpi-meta-row wpi-send-reminder"><a title="<?php esc_attr_e('Send overdue reminder notification to customer', 'invoicing'); ?>" href="<?php echo esc_url($email_actions['reminder_url']); ?>" class="button button-secondary"><?php esc_attr_e('Send Reminder', 'invoicing'); ?></a></p>
129 129
         <?php } ?>
130 130
         <?php
131 131
         }
132 132
         
133
-        do_action( 'wpinv_metabox_resend_invoice_after', $wpi_mb_invoice );
133
+        do_action('wpinv_metabox_resend_invoice_after', $wpi_mb_invoice);
134 134
     }
135 135
     
136
-    public static function subscriptions( $post ) {
137
-        $invoice = wpinv_get_invoice( $post->ID );
136
+    public static function subscriptions($post) {
137
+        $invoice = wpinv_get_invoice($post->ID);
138 138
 
139
-        if ( ! empty( $invoice ) && $invoice->is_recurring() && $invoice->is_parent() ) {
140
-            $subscription = wpinv_get_subscription( $invoice );
139
+        if (!empty($invoice) && $invoice->is_recurring() && $invoice->is_parent()) {
140
+            $subscription = wpinv_get_subscription($invoice);
141 141
 
142
-            if ( empty( $subscription ) ) {
142
+            if (empty($subscription)) {
143 143
                 ?>
144
-                <p class="wpi-meta-row"><?php echo wp_sprintf( __( 'New Subscription will be created when customer will checkout and pay the invoice. Go to: %sSubscriptions%s', 'invoicing' ), '<a href="' . admin_url( 'admin.php?page=wpinv-subscriptions' ).'">', '</a>' ); ?></p>
144
+                <p class="wpi-meta-row"><?php echo wp_sprintf(__('New Subscription will be created when customer will checkout and pay the invoice. Go to: %sSubscriptions%s', 'invoicing'), '<a href="' . admin_url('admin.php?page=wpinv-subscriptions') . '">', '</a>'); ?></p>
145 145
                 <?php
146 146
                 return;
147 147
             }
148
-            $frequency = WPInv_Subscriptions::wpinv_get_pretty_subscription_frequency( $subscription->period, $subscription->frequency );
149
-            $billing = wpinv_price(wpinv_format_amount( $subscription->recurring_amount ), wpinv_get_invoice_currency_code( $subscription->parent_payment_id ) ) . ' / ' . $frequency;
150
-            $initial = wpinv_price(wpinv_format_amount( $subscription->initial_amount ), wpinv_get_invoice_currency_code( $subscription->parent_payment_id ) );
148
+            $frequency = WPInv_Subscriptions::wpinv_get_pretty_subscription_frequency($subscription->period, $subscription->frequency);
149
+            $billing = wpinv_price(wpinv_format_amount($subscription->recurring_amount), wpinv_get_invoice_currency_code($subscription->parent_payment_id)) . ' / ' . $frequency;
150
+            $initial = wpinv_price(wpinv_format_amount($subscription->initial_amount), wpinv_get_invoice_currency_code($subscription->parent_payment_id));
151 151
             $payments = $subscription->get_child_payments();
152 152
             ?>
153 153
             <p class="wpi-meta-row wpi-sub-label <?php echo 'status-' . $subscription->status; ?>"><?php _e('Recurring Payment', 'invoicing'); ?></p>
154
-            <?php if ( ! empty( $subscription ) && ! empty( $subscription->id ) ) { ?>
154
+            <?php if (!empty($subscription) && !empty($subscription->id)) { ?>
155 155
                 <p class="wpi-meta-row wpi-sub-id">
156
-                    <label><?php _e( 'Subscription ID:', 'invoicing' ); ?> </label><a href="<?php echo esc_url( admin_url( 'admin.php?page=wpinv-subscriptions&id=' . $subscription->id ) ); ?>" title="<?php esc_attr_e( 'View or edit subscription', 'invoicing' ); ?>" target="_blank"><?php echo $subscription->id; ?></a></p>
156
+                    <label><?php _e('Subscription ID:', 'invoicing'); ?> </label><a href="<?php echo esc_url(admin_url('admin.php?page=wpinv-subscriptions&id=' . $subscription->id)); ?>" title="<?php esc_attr_e('View or edit subscription', 'invoicing'); ?>" target="_blank"><?php echo $subscription->id; ?></a></p>
157 157
             <?php } ?>
158 158
             <p class="wpi-meta-row wpi-bill-cycle">
159
-                <label><?php _e( 'Billing Cycle:', 'invoicing'); ?> </label><?php printf( _x( '%s then %s', 'Initial subscription amount then billing cycle and amount', 'invoicing' ), $initial, $billing ); ?>
159
+                <label><?php _e('Billing Cycle:', 'invoicing'); ?> </label><?php printf(_x('%s then %s', 'Initial subscription amount then billing cycle and amount', 'invoicing'), $initial, $billing); ?>
160 160
             </p>
161 161
             <p class="wpi-meta-row wpi-billed-times">
162
-                <label><?php _e( 'Times Billed:', 'invoicing' ); ?> </label><?php echo $subscription->get_times_billed() . ' / ' . ( ( $subscription->bill_times == 0 ) ? 'Until Cancelled' : $subscription->bill_times ); ?>
162
+                <label><?php _e('Times Billed:', 'invoicing'); ?> </label><?php echo $subscription->get_times_billed() . ' / ' . (($subscription->bill_times == 0) ? 'Until Cancelled' : $subscription->bill_times); ?>
163 163
             </p>
164 164
             <p class="wpi-meta-row wpi-start-date">
165
-                <label><?php _e( 'Start Date:', 'invoicing' ); ?> </label><?php echo date_i18n( get_option( 'date_format' ), strtotime( $subscription->created, current_time( 'timestamp' ) ) ); ?>
165
+                <label><?php _e('Start Date:', 'invoicing'); ?> </label><?php echo date_i18n(get_option('date_format'), strtotime($subscription->created, current_time('timestamp'))); ?>
166 166
             </p>
167 167
             <p class="wpi-meta-row wpi-end-date">
168
-                <label><?php echo ( 'trialling' == $subscription->status ? __( 'Trialling Until:', 'invoicing' ) : __( 'Expiration Date:', 'invoicing' ) ); ?> </label><?php echo date_i18n( get_option( 'date_format' ), strtotime( $subscription->expiration, current_time( 'timestamp' ) ) ); ?>
168
+                <label><?php echo ('trialling' == $subscription->status ? __('Trialling Until:', 'invoicing') : __('Expiration Date:', 'invoicing')); ?> </label><?php echo date_i18n(get_option('date_format'), strtotime($subscription->expiration, current_time('timestamp'))); ?>
169 169
             </p>
170
-            <?php if ( $subscription->status ) { ?>
170
+            <?php if ($subscription->status) { ?>
171 171
                 <p class="wpi-meta-row wpi-sub-status">
172
-                    <label><?php _e( 'Subscription Status:', 'invoicing'); ?> </label><?php echo $subscription->get_status_label(); ?>
172
+                    <label><?php _e('Subscription Status:', 'invoicing'); ?> </label><?php echo $subscription->get_status_label(); ?>
173 173
                 </p>
174 174
             <?php } ?>
175
-            <?php if ( !empty( $payments ) ) { ?>
176
-                <p><strong><?php _e( 'Renewal Payments:', 'invoicing' ); ?></strong></p>
175
+            <?php if (!empty($payments)) { ?>
176
+                <p><strong><?php _e('Renewal Payments:', 'invoicing'); ?></strong></p>
177 177
                 <ul id="wpi-sub-payments">
178
-                <?php foreach ( $payments as $payment ) {
178
+                <?php foreach ($payments as $payment) {
179 179
                     $invoice_id = $payment->ID;
180 180
                     ?>
181 181
                     <li>
182
-                        <a href="<?php echo esc_url( get_edit_post_link( $invoice_id ) ); ?>"><?php echo wpinv_get_invoice_number( $invoice_id ); ?></a>&nbsp;&ndash;&nbsp;
183
-                        <span><?php echo wpinv_get_invoice_date( $invoice_id ); ?>&nbsp;&ndash;&nbsp;</span>
184
-                        <span><?php echo wpinv_payment_total( $invoice_id, true ); ?></span>
182
+                        <a href="<?php echo esc_url(get_edit_post_link($invoice_id)); ?>"><?php echo wpinv_get_invoice_number($invoice_id); ?></a>&nbsp;&ndash;&nbsp;
183
+                        <span><?php echo wpinv_get_invoice_date($invoice_id); ?>&nbsp;&ndash;&nbsp;</span>
184
+                        <span><?php echo wpinv_payment_total($invoice_id, true); ?></span>
185 185
                     </li>
186 186
                 <?php } ?>
187 187
                 </ul>
@@ -189,50 +189,50 @@  discard block
 block discarded – undo
189 189
         }
190 190
     }
191 191
     
192
-    public static function renewals( $post ) {
193
-        $invoice = wpinv_get_invoice( $post->ID );
192
+    public static function renewals($post) {
193
+        $invoice = wpinv_get_invoice($post->ID);
194 194
         
195
-        if ( wpinv_is_subscription_payment( $invoice ) ) {
196
-            $parent_url = get_edit_post_link( $invoice->parent_invoice );
197
-            $parent_id  = wpinv_get_invoice_number( $invoice->parent_invoice );
198
-            $subscription = wpinv_get_subscription( $invoice );
195
+        if (wpinv_is_subscription_payment($invoice)) {
196
+            $parent_url = get_edit_post_link($invoice->parent_invoice);
197
+            $parent_id  = wpinv_get_invoice_number($invoice->parent_invoice);
198
+            $subscription = wpinv_get_subscription($invoice);
199 199
         ?>
200
-        <?php if ( ! empty( $subscription ) ) { ?><p class="wpi-meta-row wpi-sub-id"><label><?php _e('Subscription ID:', 'invoicing'); ?> </label><a href="<?php echo esc_url( admin_url( 'admin.php?page=wpinv-subscriptions&id=' . $subscription->id ) ); ?>" title="<?php esc_attr_e( 'View or edit subscription', 'invoicing' ); ?>" target="_blank"><?php echo $subscription->id; ?></a></p><?php } ?>
201
-        <p class="wpi-meta-row wpi-parent-id"><label><?php _e( 'Parent Invoice:', 'invoicing' );?> </label><a href="<?php echo esc_url( $parent_url ); ?>"><?php echo $parent_id; ?></a></p>
200
+        <?php if (!empty($subscription)) { ?><p class="wpi-meta-row wpi-sub-id"><label><?php _e('Subscription ID:', 'invoicing'); ?> </label><a href="<?php echo esc_url(admin_url('admin.php?page=wpinv-subscriptions&id=' . $subscription->id)); ?>" title="<?php esc_attr_e('View or edit subscription', 'invoicing'); ?>" target="_blank"><?php echo $subscription->id; ?></a></p><?php } ?>
201
+        <p class="wpi-meta-row wpi-parent-id"><label><?php _e('Parent Invoice:', 'invoicing'); ?> </label><a href="<?php echo esc_url($parent_url); ?>"><?php echo $parent_id; ?></a></p>
202 202
         <?php
203 203
         }
204 204
     }
205 205
     
206
-    public static function payment_meta( $post ) {
206
+    public static function payment_meta($post) {
207 207
         global $wpi_mb_invoice;
208 208
 
209
-        $set_dateway = empty( $wpi_mb_invoice->gateway ) ? true : false;
210
-        if ( !$set_dateway && !$wpi_mb_invoice->get_meta( '_wpinv_checkout', true ) && !$wpi_mb_invoice->is_paid() && !$wpi_mb_invoice->is_refunded() ) {
209
+        $set_dateway = empty($wpi_mb_invoice->gateway) ? true : false;
210
+        if (!$set_dateway && !$wpi_mb_invoice->get_meta('_wpinv_checkout', true) && !$wpi_mb_invoice->is_paid() && !$wpi_mb_invoice->is_refunded()) {
211 211
             $set_dateway = true;
212 212
         }
213 213
         
214 214
         ?>
215 215
         <p class="wpi-meta-row">
216
-        <?php if ( $set_dateway ) { $gateways = wpinv_get_enabled_payment_gateways( true ); ?>
217
-            <label for="wpinv_gateway"><?php _e( 'Gateway:', 'invoicing' ) ; ?></label>
216
+        <?php if ($set_dateway) { $gateways = wpinv_get_enabled_payment_gateways(true); ?>
217
+            <label for="wpinv_gateway"><?php _e('Gateway:', 'invoicing'); ?></label>
218 218
             <select required="required" id="wpinv_gateway" class="wpi_select2" name="wpinv_gateway">
219
-                <?php foreach ( $gateways as $name => $gateway ) {
220
-                    if ( $wpi_mb_invoice->is_recurring() && !wpinv_gateway_support_subscription( $name ) ) {
219
+                <?php foreach ($gateways as $name => $gateway) {
220
+                    if ($wpi_mb_invoice->is_recurring() && !wpinv_gateway_support_subscription($name)) {
221 221
                         continue;
222 222
                     }
223 223
                     ?>
224
-                <option value="<?php echo $name;?>" <?php selected( $wpi_mb_invoice->gateway, $name );?>><?php echo !empty( $gateway['admin_label'] ) ? $gateway['admin_label'] : $gateway['checkout_label']; ?></option>
224
+                <option value="<?php echo $name; ?>" <?php selected($wpi_mb_invoice->gateway, $name); ?>><?php echo !empty($gateway['admin_label']) ? $gateway['admin_label'] : $gateway['checkout_label']; ?></option>
225 225
                 <?php } ?>
226 226
             </select>
227 227
         <?php } else { 
228
-            echo wp_sprintf( __( '<label>Gateway:</label> %s', 'invoicing' ), wpinv_get_gateway_admin_label( $wpi_mb_invoice->gateway ) );
228
+            echo wp_sprintf(__('<label>Gateway:</label> %s', 'invoicing'), wpinv_get_gateway_admin_label($wpi_mb_invoice->gateway));
229 229
         } ?>
230 230
         </p>
231
-        <?php if ( $key = $wpi_mb_invoice->get_key() ) { ?>
232
-        <p class="wpi-meta-row"><?php echo wp_sprintf( __( '<label>Key:</label> %s', 'invoicing' ), $key ); ?></p>
231
+        <?php if ($key = $wpi_mb_invoice->get_key()) { ?>
232
+        <p class="wpi-meta-row"><?php echo wp_sprintf(__('<label>Key:</label> %s', 'invoicing'), $key); ?></p>
233 233
         <?php } ?>
234
-        <?php if ( $wpi_mb_invoice->is_paid() || $wpi_mb_invoice->is_refunded() ) { ?>
235
-        <p class="wpi-meta-row"><?php echo wp_sprintf( __( '<label>Transaction ID:</label> %s', 'invoicing' ), wpinv_payment_link_transaction_id( $wpi_mb_invoice ) ); ?></p>
234
+        <?php if ($wpi_mb_invoice->is_paid() || $wpi_mb_invoice->is_refunded()) { ?>
235
+        <p class="wpi-meta-row"><?php echo wp_sprintf(__('<label>Transaction ID:</label> %s', 'invoicing'), wpinv_payment_link_transaction_id($wpi_mb_invoice)); ?></p>
236 236
         <?php } ?>
237 237
         <?php
238 238
     }
Please login to merge, or discard this patch.
includes/admin/meta-boxes/class-mb-invoice-notes.php 1 patch
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -1,39 +1,39 @@
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7 7
 class WPInv_Meta_Box_Notes {
8
-    public static function output( $post ) {
8
+    public static function output($post) {
9 9
         global $post;
10 10
 
11
-        $notes = wpinv_get_invoice_notes( $post->ID );
11
+        $notes = wpinv_get_invoice_notes($post->ID);
12 12
 
13 13
         echo '<ul class="invoice_notes">';
14 14
 
15
-        if ( $notes ) {
16
-            foreach( $notes as $note ) {
17
-                wpinv_get_invoice_note_line_item( $note );
15
+        if ($notes) {
16
+            foreach ($notes as $note) {
17
+                wpinv_get_invoice_note_line_item($note);
18 18
             }
19 19
 
20 20
         } else {
21
-            echo '<li>' . __( 'There are no notes yet.', 'invoicing' ) . '</li>';
21
+            echo '<li>' . __('There are no notes yet.', 'invoicing') . '</li>';
22 22
         }
23 23
 
24 24
         echo '</ul>';
25 25
         ?>
26 26
         <div class="add_note">
27
-            <h4><?php _e( 'Add note', 'invoicing' ); ?></h4>
27
+            <h4><?php _e('Add note', 'invoicing'); ?></h4>
28 28
             <p>
29 29
                 <textarea type="text" name="invoice_note" id="add_invoice_note" class="input-text" cols="20" rows="5"></textarea>
30 30
             </p>
31 31
             <p>
32 32
                 <select name="invoice_note_type" id="invoice_note_type" class="wpi_select2">
33
-                    <option value=""><?php _e( 'Private note', 'invoicing' ); ?></option>
34
-                    <option value="customer"><?php _e( 'Note to customer', 'invoicing' ); ?></option>
33
+                    <option value=""><?php _e('Private note', 'invoicing'); ?></option>
34
+                    <option value="customer"><?php _e('Note to customer', 'invoicing'); ?></option>
35 35
                 </select>
36
-                <a href="#" class="add_note button"><?php _e( 'Add', 'invoicing' ); ?></a> <span class="description"><?php _e( 'Add a note for your reference, or add a customer note (the user will be notified).', 'invoicing' ); ?></span>
36
+                <a href="#" class="add_note button"><?php _e('Add', 'invoicing'); ?></a> <span class="description"><?php _e('Add a note for your reference, or add a customer note (the user will be notified).', 'invoicing'); ?></span>
37 37
             </p>
38 38
         </div>
39 39
         <?php
Please login to merge, or discard this patch.
includes/admin/register-settings.php 3 patches
Braces   +15 added lines, -10 removed lines patch added patch discarded remove patch
@@ -1100,10 +1100,11 @@  discard block
 block discarded – undo
1100 1100
         
1101 1101
         $checked = false;
1102 1102
 
1103
-		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1104
-			$checked = true;
1105
-		elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1106
-			$checked = true;
1103
+		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key ) {
1104
+					$checked = true;
1105
+		} elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) ) {
1106
+					$checked = true;
1107
+		}
1107 1108
 
1108 1109
 		echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1109 1110
 		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
@@ -1120,10 +1121,11 @@  discard block
 block discarded – undo
1120 1121
 	foreach ( $args['options'] as $key => $option ) :
1121 1122
 		$sanitize_key = wpinv_sanitize_key( $key );
1122 1123
         
1123
-        if ( isset( $wpinv_options['gateways'][ $key ] ) )
1124
-			$enabled = '1';
1125
-		else
1126
-			$enabled = null;
1124
+        if ( isset( $wpinv_options['gateways'][ $key ] ) ) {
1125
+        			$enabled = '1';
1126
+        } else {
1127
+					$enabled = null;
1128
+		}
1127 1129
 
1128 1130
 		echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1129 1131
 		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
@@ -1487,7 +1489,8 @@  discard block
 block discarded – undo
1487 1489
 				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1488 1490
 			</tr>
1489 1491
 			<?php endforeach; ?>
1490
-		<?php else : ?>
1492
+		<?php else {
1493
+    : ?>
1491 1494
 			<tr>
1492 1495
 				<td class="wpinv_tax_country">
1493 1496
 					<?php
@@ -1498,7 +1501,9 @@  discard block
 block discarded – undo
1498 1501
 						'show_option_none' => false,
1499 1502
 						'class'            => 'wpinv-tax-country wpi_select2',
1500 1503
 						'placeholder'      => __( 'Choose a country', 'invoicing' )
1501
-					) ); ?>
1504
+					) );
1505
+}
1506
+?>
1502 1507
 				</td>
1503 1508
 				<td class="wpinv_tax_state">
1504 1509
 					<?php echo wpinv_html_text( array(
Please login to merge, or discard this patch.
Indentation   +328 added lines, -328 removed lines patch added patch discarded remove patch
@@ -984,326 +984,326 @@  discard block
 block discarded – undo
984 984
 }
985 985
 
986 986
 function wpinv_get_pages( $with_slug = false, $default_label = NULL ) {
987
-	$pages_options = array();
987
+    $pages_options = array();
988 988
 
989
-	if( $default_label !== NULL && $default_label !== false ) {
990
-		$pages_options = array( '' => $default_label ); // Blank option
991
-	}
989
+    if( $default_label !== NULL && $default_label !== false ) {
990
+        $pages_options = array( '' => $default_label ); // Blank option
991
+    }
992 992
 
993
-	$pages = get_pages();
994
-	if ( $pages ) {
995
-		foreach ( $pages as $page ) {
996
-			$title = $with_slug ? $page->post_title . ' (' . $page->post_name . ')' : $page->post_title;
993
+    $pages = get_pages();
994
+    if ( $pages ) {
995
+        foreach ( $pages as $page ) {
996
+            $title = $with_slug ? $page->post_title . ' (' . $page->post_name . ')' : $page->post_title;
997 997
             $pages_options[ $page->ID ] = $title;
998
-		}
999
-	}
998
+        }
999
+    }
1000 1000
 
1001
-	return $pages_options;
1001
+    return $pages_options;
1002 1002
 }
1003 1003
 
1004 1004
 function wpinv_header_callback( $args ) {
1005
-	if ( !empty( $args['desc'] ) ) {
1005
+    if ( !empty( $args['desc'] ) ) {
1006 1006
         echo $args['desc'];
1007 1007
     }
1008 1008
 }
1009 1009
 
1010 1010
 function wpinv_hidden_callback( $args ) {
1011
-	global $wpinv_options;
1012
-
1013
-	if ( isset( $args['set_value'] ) ) {
1014
-		$value = $args['set_value'];
1015
-	} elseif ( isset( $wpinv_options[ $args['id'] ] ) ) {
1016
-		$value = $wpinv_options[ $args['id'] ];
1017
-	} else {
1018
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1019
-	}
1020
-
1021
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1022
-		$args['readonly'] = true;
1023
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1024
-		$name  = '';
1025
-	} else {
1026
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1027
-	}
1028
-
1029
-	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key( $args['id'] ) . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '" />';
1011
+    global $wpinv_options;
1012
+
1013
+    if ( isset( $args['set_value'] ) ) {
1014
+        $value = $args['set_value'];
1015
+    } elseif ( isset( $wpinv_options[ $args['id'] ] ) ) {
1016
+        $value = $wpinv_options[ $args['id'] ];
1017
+    } else {
1018
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1019
+    }
1020
+
1021
+    if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1022
+        $args['readonly'] = true;
1023
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1024
+        $name  = '';
1025
+    } else {
1026
+        $name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1027
+    }
1028
+
1029
+    $html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key( $args['id'] ) . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '" />';
1030 1030
     
1031
-	echo $html;
1031
+    echo $html;
1032 1032
 }
1033 1033
 
1034 1034
 function wpinv_checkbox_callback( $args ) {
1035
-	global $wpinv_options;
1035
+    global $wpinv_options;
1036 1036
     
1037 1037
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1038 1038
 
1039
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1040
-		$name = '';
1041
-	} else {
1042
-		$name = 'name="wpinv_settings[' . $sanitize_id . ']"';
1043
-	}
1039
+    if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1040
+        $name = '';
1041
+    } else {
1042
+        $name = 'name="wpinv_settings[' . $sanitize_id . ']"';
1043
+    }
1044 1044
 
1045
-	$checked = isset( $wpinv_options[ $args['id'] ] ) ? checked( 1, $wpinv_options[ $args['id'] ], false ) : '';
1046
-	$html = '<input type="checkbox" id="wpinv_settings[' . $sanitize_id . ']"' . $name . ' value="1" ' . $checked . '/>';
1047
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1045
+    $checked = isset( $wpinv_options[ $args['id'] ] ) ? checked( 1, $wpinv_options[ $args['id'] ], false ) : '';
1046
+    $html = '<input type="checkbox" id="wpinv_settings[' . $sanitize_id . ']"' . $name . ' value="1" ' . $checked . '/>';
1047
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1048 1048
 
1049
-	echo $html;
1049
+    echo $html;
1050 1050
 }
1051 1051
 
1052 1052
 function wpinv_multicheck_callback( $args ) {
1053
-	global $wpinv_options;
1053
+    global $wpinv_options;
1054 1054
 
1055
-	$sanitize_id = wpinv_sanitize_key( $args['id'] );
1056
-	$class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1055
+    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1056
+    $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1057 1057
 
1058
-	if ( ! empty( $args['options'] ) ) {
1059
-		echo '<div class="wpi-mcheck-rows wpi-mcheck-' . $sanitize_id . $class . '">';
1058
+    if ( ! empty( $args['options'] ) ) {
1059
+        echo '<div class="wpi-mcheck-rows wpi-mcheck-' . $sanitize_id . $class . '">';
1060 1060
         foreach( $args['options'] as $key => $option ):
1061
-			$sanitize_key = wpinv_sanitize_key( $key );
1062
-			if ( isset( $wpinv_options[$args['id']][$sanitize_key] ) ) { 
1063
-				$enabled = $sanitize_key;
1064
-			} else { 
1065
-				$enabled = NULL; 
1066
-			}
1067
-			echo '<div class="wpi-mcheck-row"><input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $sanitize_key ) . '" ' . checked( $sanitize_key, $enabled, false ) . '/>&nbsp;';
1068
-			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post( $option ) . '</label></div>';
1069
-		endforeach;
1070
-		echo '</div>';
1071
-		echo '<p class="description">' . $args['desc'] . '</p>';
1072
-	}
1061
+            $sanitize_key = wpinv_sanitize_key( $key );
1062
+            if ( isset( $wpinv_options[$args['id']][$sanitize_key] ) ) { 
1063
+                $enabled = $sanitize_key;
1064
+            } else { 
1065
+                $enabled = NULL; 
1066
+            }
1067
+            echo '<div class="wpi-mcheck-row"><input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $sanitize_key ) . '" ' . checked( $sanitize_key, $enabled, false ) . '/>&nbsp;';
1068
+            echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post( $option ) . '</label></div>';
1069
+        endforeach;
1070
+        echo '</div>';
1071
+        echo '<p class="description">' . $args['desc'] . '</p>';
1072
+    }
1073 1073
 }
1074 1074
 
1075 1075
 function wpinv_payment_icons_callback( $args ) {
1076
-	global $wpinv_options;
1076
+    global $wpinv_options;
1077 1077
     
1078 1078
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1079 1079
 
1080
-	if ( ! empty( $args['options'] ) ) {
1081
-		foreach( $args['options'] as $key => $option ) {
1080
+    if ( ! empty( $args['options'] ) ) {
1081
+        foreach( $args['options'] as $key => $option ) {
1082 1082
             $sanitize_key = wpinv_sanitize_key( $key );
1083 1083
             
1084
-			if( isset( $wpinv_options[$args['id']][$key] ) ) {
1085
-				$enabled = $option;
1086
-			} else {
1087
-				$enabled = NULL;
1088
-			}
1089
-
1090
-			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" style="margin-right:10px;line-height:16px;height:16px;display:inline-block;">';
1091
-
1092
-				echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $option ) . '" ' . checked( $option, $enabled, false ) . '/>&nbsp;';
1093
-
1094
-				if ( wpinv_string_is_image_url( $key ) ) {
1095
-					echo '<img class="payment-icon" src="' . esc_url( $key ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1096
-				} else {
1097
-					$card = strtolower( str_replace( ' ', '', $option ) );
1098
-
1099
-					if ( has_filter( 'wpinv_accepted_payment_' . $card . '_image' ) ) {
1100
-						$image = apply_filters( 'wpinv_accepted_payment_' . $card . '_image', '' );
1101
-					} else {
1102
-						$image       = wpinv_locate_template( 'images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false );
1103
-						$content_dir = WP_CONTENT_DIR;
1104
-
1105
-						if ( function_exists( 'wp_normalize_path' ) ) {
1106
-							// Replaces backslashes with forward slashes for Windows systems
1107
-							$image = wp_normalize_path( $image );
1108
-							$content_dir = wp_normalize_path( $content_dir );
1109
-						}
1110
-
1111
-						$image = str_replace( $content_dir, content_url(), $image );
1112
-					}
1113
-
1114
-					echo '<img class="payment-icon" src="' . esc_url( $image ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1115
-				}
1116
-			echo $option . '</label>';
1117
-		}
1118
-		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post( $args['desc'] ) . '</p>';
1119
-	}
1084
+            if( isset( $wpinv_options[$args['id']][$key] ) ) {
1085
+                $enabled = $option;
1086
+            } else {
1087
+                $enabled = NULL;
1088
+            }
1089
+
1090
+            echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" style="margin-right:10px;line-height:16px;height:16px;display:inline-block;">';
1091
+
1092
+                echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $option ) . '" ' . checked( $option, $enabled, false ) . '/>&nbsp;';
1093
+
1094
+                if ( wpinv_string_is_image_url( $key ) ) {
1095
+                    echo '<img class="payment-icon" src="' . esc_url( $key ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1096
+                } else {
1097
+                    $card = strtolower( str_replace( ' ', '', $option ) );
1098
+
1099
+                    if ( has_filter( 'wpinv_accepted_payment_' . $card . '_image' ) ) {
1100
+                        $image = apply_filters( 'wpinv_accepted_payment_' . $card . '_image', '' );
1101
+                    } else {
1102
+                        $image       = wpinv_locate_template( 'images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false );
1103
+                        $content_dir = WP_CONTENT_DIR;
1104
+
1105
+                        if ( function_exists( 'wp_normalize_path' ) ) {
1106
+                            // Replaces backslashes with forward slashes for Windows systems
1107
+                            $image = wp_normalize_path( $image );
1108
+                            $content_dir = wp_normalize_path( $content_dir );
1109
+                        }
1110
+
1111
+                        $image = str_replace( $content_dir, content_url(), $image );
1112
+                    }
1113
+
1114
+                    echo '<img class="payment-icon" src="' . esc_url( $image ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1115
+                }
1116
+            echo $option . '</label>';
1117
+        }
1118
+        echo '<p class="description" style="margin-top:16px;">' . wp_kses_post( $args['desc'] ) . '</p>';
1119
+    }
1120 1120
 }
1121 1121
 
1122 1122
 function wpinv_radio_callback( $args ) {
1123
-	global $wpinv_options;
1123
+    global $wpinv_options;
1124 1124
     
1125 1125
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1126 1126
     
1127 1127
     foreach ( $args['options'] as $key => $option ) :
1128
-		$sanitize_key = wpinv_sanitize_key( $key );
1128
+        $sanitize_key = wpinv_sanitize_key( $key );
1129 1129
         
1130 1130
         $checked = false;
1131 1131
 
1132
-		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1133
-			$checked = true;
1134
-		elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1135
-			$checked = true;
1132
+        if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1133
+            $checked = true;
1134
+        elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1135
+            $checked = true;
1136 1136
 
1137
-		echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1138
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
1139
-	endforeach;
1137
+        echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1138
+        echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
1139
+    endforeach;
1140 1140
 
1141
-	echo '<p class="description">' . wp_kses_post( $args['desc'] ) . '</p>';
1141
+    echo '<p class="description">' . wp_kses_post( $args['desc'] ) . '</p>';
1142 1142
 }
1143 1143
 
1144 1144
 function wpinv_gateways_callback( $args ) {
1145
-	global $wpinv_options;
1145
+    global $wpinv_options;
1146 1146
     
1147 1147
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1148 1148
 
1149
-	foreach ( $args['options'] as $key => $option ) :
1150
-		$sanitize_key = wpinv_sanitize_key( $key );
1149
+    foreach ( $args['options'] as $key => $option ) :
1150
+        $sanitize_key = wpinv_sanitize_key( $key );
1151 1151
         
1152 1152
         if ( isset( $wpinv_options['gateways'][ $key ] ) )
1153
-			$enabled = '1';
1154
-		else
1155
-			$enabled = null;
1153
+            $enabled = '1';
1154
+        else
1155
+            $enabled = null;
1156 1156
 
1157
-		echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1158
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
1159
-	endforeach;
1157
+        echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1158
+        echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
1159
+    endforeach;
1160 1160
 }
1161 1161
 
1162 1162
 function wpinv_gateway_select_callback($args) {
1163
-	global $wpinv_options;
1163
+    global $wpinv_options;
1164 1164
     
1165 1165
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1166 1166
     $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1167 1167
 
1168
-	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'" >';
1168
+    echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'" >';
1169 1169
 
1170
-	foreach ( $args['options'] as $key => $option ) :
1171
-		if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1170
+    foreach ( $args['options'] as $key => $option ) :
1171
+        if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1172 1172
             $selected = selected( $key, $args['selected'], false );
1173 1173
         } else {
1174 1174
             $selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $key, $wpinv_options[$args['id']], false ) : '';
1175 1175
         }
1176
-		echo '<option value="' . wpinv_sanitize_key( $key ) . '"' . $selected . '>' . esc_html( $option['admin_label'] ) . '</option>';
1177
-	endforeach;
1176
+        echo '<option value="' . wpinv_sanitize_key( $key ) . '"' . $selected . '>' . esc_html( $option['admin_label'] ) . '</option>';
1177
+    endforeach;
1178 1178
 
1179
-	echo '</select>';
1180
-	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1179
+    echo '</select>';
1180
+    echo '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1181 1181
 }
1182 1182
 
1183 1183
 function wpinv_text_callback( $args ) {
1184
-	global $wpinv_options;
1184
+    global $wpinv_options;
1185 1185
     
1186 1186
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1187 1187
 
1188
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1189
-		$value = $wpinv_options[ $args['id'] ];
1190
-	} else {
1191
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1192
-	}
1193
-
1194
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1195
-		$args['readonly'] = true;
1196
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1197
-		$name  = '';
1198
-	} else {
1199
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1200
-	}
1201
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1202
-
1203
-	$readonly = $args['readonly'] === true ? ' readonly="readonly"' : '';
1204
-	$size     = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1205
-	$html     = '<input type="text" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"' . $readonly . '/>';
1206
-	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1207
-
1208
-	echo $html;
1188
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1189
+        $value = $wpinv_options[ $args['id'] ];
1190
+    } else {
1191
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1192
+    }
1193
+
1194
+    if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1195
+        $args['readonly'] = true;
1196
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1197
+        $name  = '';
1198
+    } else {
1199
+        $name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1200
+    }
1201
+    $class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1202
+
1203
+    $readonly = $args['readonly'] === true ? ' readonly="readonly"' : '';
1204
+    $size     = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1205
+    $html     = '<input type="text" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"' . $readonly . '/>';
1206
+    $html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1207
+
1208
+    echo $html;
1209 1209
 }
1210 1210
 
1211 1211
 function wpinv_number_callback( $args ) {
1212
-	global $wpinv_options;
1212
+    global $wpinv_options;
1213 1213
     
1214 1214
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1215 1215
 
1216
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1217
-		$value = $wpinv_options[ $args['id'] ];
1218
-	} else {
1219
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1220
-	}
1221
-
1222
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1223
-		$args['readonly'] = true;
1224
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1225
-		$name  = '';
1226
-	} else {
1227
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1228
-	}
1229
-
1230
-	$max  = isset( $args['max'] ) ? $args['max'] : 999999;
1231
-	$min  = isset( $args['min'] ) ? $args['min'] : 0;
1232
-	$step = isset( $args['step'] ) ? $args['step'] : 1;
1233
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1234
-
1235
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1236
-	$html = '<input type="number" step="' . esc_attr( $step ) . '" max="' . esc_attr( $max ) . '" min="' . esc_attr( $min ) . '" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1237
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1238
-
1239
-	echo $html;
1216
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1217
+        $value = $wpinv_options[ $args['id'] ];
1218
+    } else {
1219
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1220
+    }
1221
+
1222
+    if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1223
+        $args['readonly'] = true;
1224
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1225
+        $name  = '';
1226
+    } else {
1227
+        $name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1228
+    }
1229
+
1230
+    $max  = isset( $args['max'] ) ? $args['max'] : 999999;
1231
+    $min  = isset( $args['min'] ) ? $args['min'] : 0;
1232
+    $step = isset( $args['step'] ) ? $args['step'] : 1;
1233
+    $class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1234
+
1235
+    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1236
+    $html = '<input type="number" step="' . esc_attr( $step ) . '" max="' . esc_attr( $max ) . '" min="' . esc_attr( $min ) . '" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1237
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1238
+
1239
+    echo $html;
1240 1240
 }
1241 1241
 
1242 1242
 function wpinv_textarea_callback( $args ) {
1243
-	global $wpinv_options;
1243
+    global $wpinv_options;
1244 1244
     
1245 1245
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1246 1246
 
1247
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1248
-		$value = $wpinv_options[ $args['id'] ];
1249
-	} else {
1250
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1251
-	}
1247
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1248
+        $value = $wpinv_options[ $args['id'] ];
1249
+    } else {
1250
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1251
+    }
1252 1252
     
1253 1253
     $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1254 1254
     $class = ( isset( $args['class'] ) && ! is_null( $args['class'] ) ) ? $args['class'] : 'large-text';
1255 1255
 
1256
-	$html = '<textarea class="' . sanitize_html_class( $class ) . ' txtarea-' . sanitize_html_class( $size ) . ' wpi-' . esc_attr( sanitize_html_class( $sanitize_id ) ) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1257
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1256
+    $html = '<textarea class="' . sanitize_html_class( $class ) . ' txtarea-' . sanitize_html_class( $size ) . ' wpi-' . esc_attr( sanitize_html_class( $sanitize_id ) ) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1257
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1258 1258
 
1259
-	echo $html;
1259
+    echo $html;
1260 1260
 }
1261 1261
 
1262 1262
 function wpinv_password_callback( $args ) {
1263
-	global $wpinv_options;
1263
+    global $wpinv_options;
1264 1264
     
1265 1265
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1266 1266
 
1267
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1268
-		$value = $wpinv_options[ $args['id'] ];
1269
-	} else {
1270
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1271
-	}
1267
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1268
+        $value = $wpinv_options[ $args['id'] ];
1269
+    } else {
1270
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1271
+    }
1272 1272
 
1273
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1274
-	$html = '<input type="password" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '"/>';
1275
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1273
+    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1274
+    $html = '<input type="password" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '"/>';
1275
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1276 1276
 
1277
-	echo $html;
1277
+    echo $html;
1278 1278
 }
1279 1279
 
1280 1280
 function wpinv_missing_callback($args) {
1281
-	printf(
1282
-		__( 'The callback function used for the %s setting is missing.', 'invoicing' ),
1283
-		'<strong>' . $args['id'] . '</strong>'
1284
-	);
1281
+    printf(
1282
+        __( 'The callback function used for the %s setting is missing.', 'invoicing' ),
1283
+        '<strong>' . $args['id'] . '</strong>'
1284
+    );
1285 1285
 }
1286 1286
 
1287 1287
 function wpinv_select_callback($args) {
1288
-	global $wpinv_options;
1288
+    global $wpinv_options;
1289 1289
     
1290 1290
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1291 1291
 
1292
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1293
-		$value = $wpinv_options[ $args['id'] ];
1294
-	} else {
1295
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1296
-	}
1292
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1293
+        $value = $wpinv_options[ $args['id'] ];
1294
+    } else {
1295
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1296
+    }
1297 1297
     
1298 1298
     if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1299 1299
         $value = $args['selected'];
1300 1300
     }
1301 1301
 
1302
-	if ( isset( $args['placeholder'] ) ) {
1303
-		$placeholder = $args['placeholder'];
1304
-	} else {
1305
-		$placeholder = '';
1306
-	}
1302
+    if ( isset( $args['placeholder'] ) ) {
1303
+        $placeholder = $args['placeholder'];
1304
+    } else {
1305
+        $placeholder = '';
1306
+    }
1307 1307
     
1308 1308
     if( !empty( $args['onchange'] ) ) {
1309 1309
         $onchange = ' onchange="' . esc_attr( $args['onchange'] ) . '"';
@@ -1313,142 +1313,142 @@  discard block
 block discarded – undo
1313 1313
 
1314 1314
     $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1315 1315
 
1316
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'"  name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" data-placeholder="' . esc_html( $placeholder ) . '"' . $onchange . ' />';
1316
+    $html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'"  name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" data-placeholder="' . esc_html( $placeholder ) . '"' . $onchange . ' />';
1317 1317
 
1318
-	foreach ( $args['options'] as $option => $name ) {
1319
-		$selected = selected( $option, $value, false );
1320
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1321
-	}
1318
+    foreach ( $args['options'] as $option => $name ) {
1319
+        $selected = selected( $option, $value, false );
1320
+        $html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1321
+    }
1322 1322
 
1323
-	$html .= '</select>';
1324
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1323
+    $html .= '</select>';
1324
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1325 1325
 
1326
-	echo $html;
1326
+    echo $html;
1327 1327
 }
1328 1328
 
1329 1329
 function wpinv_color_select_callback( $args ) {
1330
-	global $wpinv_options;
1330
+    global $wpinv_options;
1331 1331
     
1332 1332
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1333 1333
 
1334
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1335
-		$value = $wpinv_options[ $args['id'] ];
1336
-	} else {
1337
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1338
-	}
1334
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1335
+        $value = $wpinv_options[ $args['id'] ];
1336
+    } else {
1337
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1338
+    }
1339 1339
 
1340
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"/>';
1340
+    $html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"/>';
1341 1341
 
1342
-	foreach ( $args['options'] as $option => $color ) {
1343
-		$selected = selected( $option, $value, false );
1344
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $color['label'] ) . '</option>';
1345
-	}
1342
+    foreach ( $args['options'] as $option => $color ) {
1343
+        $selected = selected( $option, $value, false );
1344
+        $html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $color['label'] ) . '</option>';
1345
+    }
1346 1346
 
1347
-	$html .= '</select>';
1348
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1347
+    $html .= '</select>';
1348
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1349 1349
 
1350
-	echo $html;
1350
+    echo $html;
1351 1351
 }
1352 1352
 
1353 1353
 function wpinv_rich_editor_callback( $args ) {
1354
-	global $wpinv_options, $wp_version;
1354
+    global $wpinv_options, $wp_version;
1355 1355
     
1356 1356
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1357 1357
 
1358
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1359
-		$value = $wpinv_options[ $args['id'] ];
1358
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1359
+        $value = $wpinv_options[ $args['id'] ];
1360 1360
 
1361
-		if( empty( $args['allow_blank'] ) && empty( $value ) ) {
1362
-			$value = isset( $args['std'] ) ? $args['std'] : '';
1363
-		}
1364
-	} else {
1365
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1366
-	}
1361
+        if( empty( $args['allow_blank'] ) && empty( $value ) ) {
1362
+            $value = isset( $args['std'] ) ? $args['std'] : '';
1363
+        }
1364
+    } else {
1365
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1366
+    }
1367 1367
 
1368
-	$rows = isset( $args['size'] ) ? $args['size'] : 20;
1368
+    $rows = isset( $args['size'] ) ? $args['size'] : 20;
1369 1369
 
1370
-	if ( $wp_version >= 3.3 && function_exists( 'wp_editor' ) ) {
1371
-		ob_start();
1372
-		wp_editor( stripslashes( $value ), 'wpinv_settings_' . esc_attr( $args['id'] ), array( 'textarea_name' => 'wpinv_settings[' . esc_attr( $args['id'] ) . ']', 'textarea_rows' => absint( $rows ), 'media_buttons' => false ) );
1373
-		$html = ob_get_clean();
1374
-	} else {
1375
-		$html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" class="wpi-' . esc_attr( sanitize_html_class( $args['id'] ) ) . '">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1376
-	}
1370
+    if ( $wp_version >= 3.3 && function_exists( 'wp_editor' ) ) {
1371
+        ob_start();
1372
+        wp_editor( stripslashes( $value ), 'wpinv_settings_' . esc_attr( $args['id'] ), array( 'textarea_name' => 'wpinv_settings[' . esc_attr( $args['id'] ) . ']', 'textarea_rows' => absint( $rows ), 'media_buttons' => false ) );
1373
+        $html = ob_get_clean();
1374
+    } else {
1375
+        $html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" class="wpi-' . esc_attr( sanitize_html_class( $args['id'] ) ) . '">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1376
+    }
1377 1377
 
1378
-	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1378
+    $html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1379 1379
 
1380
-	echo $html;
1380
+    echo $html;
1381 1381
 }
1382 1382
 
1383 1383
 function wpinv_upload_callback( $args ) {
1384
-	global $wpinv_options;
1384
+    global $wpinv_options;
1385 1385
     
1386 1386
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1387 1387
 
1388
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1389
-		$value = $wpinv_options[$args['id']];
1390
-	} else {
1391
-		$value = isset($args['std']) ? $args['std'] : '';
1392
-	}
1388
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1389
+        $value = $wpinv_options[$args['id']];
1390
+    } else {
1391
+        $value = isset($args['std']) ? $args['std'] : '';
1392
+    }
1393 1393
 
1394
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1395
-	$html = '<input type="text" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1396
-	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __( 'Upload File', 'invoicing' ) . '"/></span>';
1397
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1394
+    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1395
+    $html = '<input type="text" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1396
+    $html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __( 'Upload File', 'invoicing' ) . '"/></span>';
1397
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1398 1398
 
1399
-	echo $html;
1399
+    echo $html;
1400 1400
 }
1401 1401
 
1402 1402
 function wpinv_color_callback( $args ) {
1403
-	global $wpinv_options;
1403
+    global $wpinv_options;
1404 1404
     
1405 1405
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1406 1406
 
1407
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1408
-		$value = $wpinv_options[ $args['id'] ];
1409
-	} else {
1410
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1411
-	}
1407
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1408
+        $value = $wpinv_options[ $args['id'] ];
1409
+    } else {
1410
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1411
+    }
1412 1412
 
1413
-	$default = isset( $args['std'] ) ? $args['std'] : '';
1413
+    $default = isset( $args['std'] ) ? $args['std'] : '';
1414 1414
 
1415
-	$html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '" data-default-color="' . esc_attr( $default ) . '" />';
1416
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1415
+    $html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '" data-default-color="' . esc_attr( $default ) . '" />';
1416
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1417 1417
 
1418
-	echo $html;
1418
+    echo $html;
1419 1419
 }
1420 1420
 
1421 1421
 function wpinv_country_states_callback($args) {
1422
-	global $wpinv_options;
1422
+    global $wpinv_options;
1423 1423
     
1424 1424
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1425 1425
 
1426
-	if ( isset( $args['placeholder'] ) ) {
1427
-		$placeholder = $args['placeholder'];
1428
-	} else {
1429
-		$placeholder = '';
1430
-	}
1426
+    if ( isset( $args['placeholder'] ) ) {
1427
+        $placeholder = $args['placeholder'];
1428
+    } else {
1429
+        $placeholder = '';
1430
+    }
1431 1431
 
1432
-	$states = wpinv_get_country_states();
1432
+    $states = wpinv_get_country_states();
1433 1433
 
1434
-	$class = empty( $states ) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1435
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"' . $class . 'data-placeholder="' . esc_html( $placeholder ) . '"/>';
1434
+    $class = empty( $states ) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1435
+    $html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"' . $class . 'data-placeholder="' . esc_html( $placeholder ) . '"/>';
1436 1436
 
1437
-	foreach ( $states as $option => $name ) {
1438
-		$selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $option, $wpinv_options[$args['id']], false ) : '';
1439
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1440
-	}
1437
+    foreach ( $states as $option => $name ) {
1438
+        $selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $option, $wpinv_options[$args['id']], false ) : '';
1439
+        $html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1440
+    }
1441 1441
 
1442
-	$html .= '</select>';
1443
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1442
+    $html .= '</select>';
1443
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1444 1444
 
1445
-	echo $html;
1445
+    echo $html;
1446 1446
 }
1447 1447
 
1448 1448
 function wpinv_tax_rates_callback($args) {
1449
-	global $wpinv_options;
1450
-	$rates = wpinv_get_tax_rates();
1451
-	ob_start(); ?>
1449
+    global $wpinv_options;
1450
+    $rates = wpinv_get_tax_rates();
1451
+    ob_start(); ?>
1452 1452
     </td><tr>
1453 1453
     <td colspan="2" class="wpinv_tax_tdbox">
1454 1454
 	<p><?php echo $args['desc']; ?></p>
@@ -1472,40 +1472,40 @@  discard block
 block discarded – undo
1472 1472
 			<tr>
1473 1473
 				<td class="wpinv_tax_country">
1474 1474
 					<?php
1475
-					echo wpinv_html_select( array(
1476
-						'options'          => wpinv_get_country_list( true ),
1477
-						'name'             => 'tax_rates[' . $sanitized_key . '][country]',
1475
+                    echo wpinv_html_select( array(
1476
+                        'options'          => wpinv_get_country_list( true ),
1477
+                        'name'             => 'tax_rates[' . $sanitized_key . '][country]',
1478 1478
                         'id'               => 'tax_rates[' . $sanitized_key . '][country]',
1479
-						'selected'         => $rate['country'],
1480
-						'show_option_all'  => false,
1481
-						'show_option_none' => false,
1482
-						'class'            => 'wpinv-tax-country wpi_select2',
1483
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1484
-					) );
1485
-					?>
1479
+                        'selected'         => $rate['country'],
1480
+                        'show_option_all'  => false,
1481
+                        'show_option_none' => false,
1482
+                        'class'            => 'wpinv-tax-country wpi_select2',
1483
+                        'placeholder'      => __( 'Choose a country', 'invoicing' )
1484
+                    ) );
1485
+                    ?>
1486 1486
 				</td>
1487 1487
 				<td class="wpinv_tax_state">
1488 1488
 					<?php
1489
-					$states = wpinv_get_country_states( $rate['country'] );
1490
-					if( !empty( $states ) ) {
1491
-						echo wpinv_html_select( array(
1492
-							'options'          => array_merge( array( '' => '' ), $states ),
1493
-							'name'             => 'tax_rates[' . $sanitized_key . '][state]',
1489
+                    $states = wpinv_get_country_states( $rate['country'] );
1490
+                    if( !empty( $states ) ) {
1491
+                        echo wpinv_html_select( array(
1492
+                            'options'          => array_merge( array( '' => '' ), $states ),
1493
+                            'name'             => 'tax_rates[' . $sanitized_key . '][state]',
1494 1494
                             'id'               => 'tax_rates[' . $sanitized_key . '][state]',
1495
-							'selected'         => $rate['state'],
1496
-							'show_option_all'  => false,
1497
-							'show_option_none' => false,
1495
+                            'selected'         => $rate['state'],
1496
+                            'show_option_all'  => false,
1497
+                            'show_option_none' => false,
1498 1498
                             'class'            => 'wpi_select2',
1499
-							'placeholder'      => __( 'Choose a state', 'invoicing' )
1500
-						) );
1501
-					} else {
1502
-						echo wpinv_html_text( array(
1503
-							'name'  => 'tax_rates[' . $sanitized_key . '][state]', $rate['state'],
1504
-							'value' => ! empty( $rate['state'] ) ? $rate['state'] : '',
1499
+                            'placeholder'      => __( 'Choose a state', 'invoicing' )
1500
+                        ) );
1501
+                    } else {
1502
+                        echo wpinv_html_text( array(
1503
+                            'name'  => 'tax_rates[' . $sanitized_key . '][state]', $rate['state'],
1504
+                            'value' => ! empty( $rate['state'] ) ? $rate['state'] : '',
1505 1505
                             'id'    => 'tax_rates[' . $sanitized_key . '][state]',
1506
-						) );
1507
-					}
1508
-					?>
1506
+                        ) );
1507
+                    }
1508
+                    ?>
1509 1509
 				</td>
1510 1510
 				<td class="wpinv_tax_global">
1511 1511
 					<input type="checkbox" name="tax_rates[<?php echo $sanitized_key; ?>][global]" id="tax_rates[<?php echo $sanitized_key; ?>][global]" value="1"<?php checked( true, ! empty( $rate['global'] ) ); ?>/>
@@ -1520,19 +1520,19 @@  discard block
 block discarded – undo
1520 1520
 			<tr>
1521 1521
 				<td class="wpinv_tax_country">
1522 1522
 					<?php
1523
-					echo wpinv_html_select( array(
1524
-						'options'          => wpinv_get_country_list( true ),
1525
-						'name'             => 'tax_rates[0][country]',
1526
-						'show_option_all'  => false,
1527
-						'show_option_none' => false,
1528
-						'class'            => 'wpinv-tax-country wpi_select2',
1529
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1530
-					) ); ?>
1523
+                    echo wpinv_html_select( array(
1524
+                        'options'          => wpinv_get_country_list( true ),
1525
+                        'name'             => 'tax_rates[0][country]',
1526
+                        'show_option_all'  => false,
1527
+                        'show_option_none' => false,
1528
+                        'class'            => 'wpinv-tax-country wpi_select2',
1529
+                        'placeholder'      => __( 'Choose a country', 'invoicing' )
1530
+                    ) ); ?>
1531 1531
 				</td>
1532 1532
 				<td class="wpinv_tax_state">
1533 1533
 					<?php echo wpinv_html_text( array(
1534
-						'name' => 'tax_rates[0][state]'
1535
-					) ); ?>
1534
+                        'name' => 'tax_rates[0][state]'
1535
+                    ) ); ?>
1536 1536
 				</td>
1537 1537
 				<td class="wpinv_tax_global">
1538 1538
 					<input type="checkbox" name="tax_rates[0][global]" id="tax_rates[0][global]" value="1"/>
@@ -1547,7 +1547,7 @@  discard block
 block discarded – undo
1547 1547
         <tfoot><tr><td colspan="5"></td><td class="wpinv_tax_action"><span class="button-secondary" id="wpinv_add_tax_rate"><?php _e( 'Add Tax Rate', 'invoicing' ); ?></span></td></tr></tfoot>
1548 1548
 	</table>
1549 1549
 	<?php
1550
-	echo ob_get_clean();
1550
+    echo ob_get_clean();
1551 1551
 }
1552 1552
 
1553 1553
 function wpinv_tools_callback($args) {
@@ -1575,15 +1575,15 @@  discard block
 block discarded – undo
1575 1575
 }
1576 1576
 
1577 1577
 function wpinv_descriptive_text_callback( $args ) {
1578
-	echo wp_kses_post( $args['desc'] );
1578
+    echo wp_kses_post( $args['desc'] );
1579 1579
 }
1580 1580
 
1581 1581
 function wpinv_hook_callback( $args ) {
1582
-	do_action( 'wpinv_' . $args['id'], $args );
1582
+    do_action( 'wpinv_' . $args['id'], $args );
1583 1583
 }
1584 1584
 
1585 1585
 function wpinv_set_settings_cap() {
1586
-	return wpinv_get_capability();
1586
+    return wpinv_get_capability();
1587 1587
 }
1588 1588
 add_filter( 'option_page_capability_wpinv_settings', 'wpinv_set_settings_cap' );
1589 1589
 
Please login to merge, or discard this patch.
Spacing   +562 added lines, -562 removed lines patch added patch discarded remove patch
@@ -1,66 +1,66 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7
-function wpinv_get_option( $key = '', $default = false ) {
7
+function wpinv_get_option($key = '', $default = false) {
8 8
     global $wpinv_options;
9 9
 
10
-    $value = isset( $wpinv_options[ $key ] ) ? $wpinv_options[ $key ] : $default;
11
-    $value = apply_filters( 'wpinv_get_option', $value, $key, $default );
10
+    $value = isset($wpinv_options[$key]) ? $wpinv_options[$key] : $default;
11
+    $value = apply_filters('wpinv_get_option', $value, $key, $default);
12 12
 
13
-    return apply_filters( 'wpinv_get_option_' . $key, $value, $key, $default );
13
+    return apply_filters('wpinv_get_option_' . $key, $value, $key, $default);
14 14
 }
15 15
 
16
-function wpinv_update_option( $key = '', $value = false ) {
16
+function wpinv_update_option($key = '', $value = false) {
17 17
     // If no key, exit
18
-    if ( empty( $key ) ) {
18
+    if (empty($key)) {
19 19
         return false;
20 20
     }
21 21
 
22
-    if ( empty( $value ) ) {
23
-        $remove_option = wpinv_delete_option( $key );
22
+    if (empty($value)) {
23
+        $remove_option = wpinv_delete_option($key);
24 24
         return $remove_option;
25 25
     }
26 26
 
27 27
     // First let's grab the current settings
28
-    $options = get_option( 'wpinv_settings' );
28
+    $options = get_option('wpinv_settings');
29 29
 
30 30
     // Let other plugin alter the value
31
-    $value = apply_filters( 'wpinv_update_option', $value, $key );
31
+    $value = apply_filters('wpinv_update_option', $value, $key);
32 32
 
33 33
     // Next let's try to update the value
34
-    $options[ $key ] = $value;
35
-    $did_update = update_option( 'wpinv_settings', $options );
34
+    $options[$key] = $value;
35
+    $did_update = update_option('wpinv_settings', $options);
36 36
 
37 37
     // If it's updated, let's update the global variable
38
-    if ( $did_update ) {
38
+    if ($did_update) {
39 39
         global $wpinv_options;
40
-        $wpinv_options[ $key ] = $value;
40
+        $wpinv_options[$key] = $value;
41 41
     }
42 42
 
43 43
     return $did_update;
44 44
 }
45 45
 
46
-function wpinv_delete_option( $key = '' ) {
46
+function wpinv_delete_option($key = '') {
47 47
     // If no key, exit
48
-    if ( empty( $key ) ) {
48
+    if (empty($key)) {
49 49
         return false;
50 50
     }
51 51
 
52 52
     // First let's grab the current settings
53
-    $options = get_option( 'wpinv_settings' );
53
+    $options = get_option('wpinv_settings');
54 54
 
55 55
     // Next let's try to update the value
56
-    if( isset( $options[ $key ] ) ) {
57
-        unset( $options[ $key ] );
56
+    if (isset($options[$key])) {
57
+        unset($options[$key]);
58 58
     }
59 59
 
60
-    $did_update = update_option( 'wpinv_settings', $options );
60
+    $did_update = update_option('wpinv_settings', $options);
61 61
 
62 62
     // If it updated, let's update the global variable
63
-    if ( $did_update ){
63
+    if ($did_update) {
64 64
         global $wpinv_options;
65 65
         $wpinv_options = $options;
66 66
     }
@@ -69,37 +69,37 @@  discard block
 block discarded – undo
69 69
 }
70 70
 
71 71
 function wpinv_get_settings() {
72
-    $settings = get_option( 'wpinv_settings' );
72
+    $settings = get_option('wpinv_settings');
73 73
 
74
-    if ( empty( $settings ) ) {
74
+    if (empty($settings)) {
75 75
         // Update old settings with new single option
76
-        $general_settings   = is_array( get_option( 'wpinv_settings_general' ) )    ? get_option( 'wpinv_settings_general' )    : array();
77
-        $gateways_settings  = is_array( get_option( 'wpinv_settings_gateways' ) )   ? get_option( 'wpinv_settings_gateways' )   : array();
78
-        $email_settings     = is_array( get_option( 'wpinv_settings_emails' ) )     ? get_option( 'wpinv_settings_emails' )     : array();
79
-        $tax_settings       = is_array( get_option( 'wpinv_settings_taxes' ) )      ? get_option( 'wpinv_settings_taxes' )      : array();
80
-        $misc_settings      = is_array( get_option( 'wpinv_settings_misc' ) )       ? get_option( 'wpinv_settings_misc' )       : array();
81
-        $tool_settings      = is_array( get_option( 'wpinv_settings_tools' ) )      ? get_option( 'wpinv_settings_tools' )      : array();
76
+        $general_settings   = is_array(get_option('wpinv_settings_general')) ? get_option('wpinv_settings_general') : array();
77
+        $gateways_settings  = is_array(get_option('wpinv_settings_gateways')) ? get_option('wpinv_settings_gateways') : array();
78
+        $email_settings     = is_array(get_option('wpinv_settings_emails')) ? get_option('wpinv_settings_emails') : array();
79
+        $tax_settings       = is_array(get_option('wpinv_settings_taxes')) ? get_option('wpinv_settings_taxes') : array();
80
+        $misc_settings      = is_array(get_option('wpinv_settings_misc')) ? get_option('wpinv_settings_misc') : array();
81
+        $tool_settings      = is_array(get_option('wpinv_settings_tools')) ? get_option('wpinv_settings_tools') : array();
82 82
 
83
-        $settings = array_merge( $general_settings, $gateways_settings, $email_settings, $tax_settings, $misc_settings, $tool_settings );
83
+        $settings = array_merge($general_settings, $gateways_settings, $email_settings, $tax_settings, $misc_settings, $tool_settings);
84 84
 
85
-        update_option( 'wpinv_settings', $settings );
85
+        update_option('wpinv_settings', $settings);
86 86
 
87 87
     }
88
-    return apply_filters( 'wpinv_get_settings', $settings );
88
+    return apply_filters('wpinv_get_settings', $settings);
89 89
 }
90 90
 
91 91
 function wpinv_register_settings() {
92
-    if ( false == get_option( 'wpinv_settings' ) ) {
93
-        add_option( 'wpinv_settings' );
92
+    if (false == get_option('wpinv_settings')) {
93
+        add_option('wpinv_settings');
94 94
     }
95 95
     
96 96
     $register_settings = wpinv_get_registered_settings();
97 97
     
98
-    foreach ( $register_settings as $tab => $sections ) {
99
-        foreach ( $sections as $section => $settings) {
98
+    foreach ($register_settings as $tab => $sections) {
99
+        foreach ($sections as $section => $settings) {
100 100
             // Check for backwards compatibility
101
-            $section_tabs = wpinv_get_settings_tab_sections( $tab );
102
-            if ( ! is_array( $section_tabs ) || ! array_key_exists( $section, $section_tabs ) ) {
101
+            $section_tabs = wpinv_get_settings_tab_sections($tab);
102
+            if (!is_array($section_tabs) || !array_key_exists($section, $section_tabs)) {
103 103
                 $section = 'main';
104 104
                 $settings = $sections;
105 105
             }
@@ -111,41 +111,41 @@  discard block
 block discarded – undo
111 111
                 'wpinv_settings_' . $tab . '_' . $section
112 112
             );
113 113
 
114
-            foreach ( $settings as $option ) {
114
+            foreach ($settings as $option) {
115 115
                 // For backwards compatibility
116
-                if ( empty( $option['id'] ) ) {
116
+                if (empty($option['id'])) {
117 117
                     continue;
118 118
                 }
119 119
 
120
-                $name = isset( $option['name'] ) ? $option['name'] : '';
120
+                $name = isset($option['name']) ? $option['name'] : '';
121 121
 
122 122
                 add_settings_field(
123 123
                     'wpinv_settings[' . $option['id'] . ']',
124 124
                     $name,
125
-                    function_exists( 'wpinv_' . $option['type'] . '_callback' ) ? 'wpinv_' . $option['type'] . '_callback' : 'wpinv_missing_callback',
125
+                    function_exists('wpinv_' . $option['type'] . '_callback') ? 'wpinv_' . $option['type'] . '_callback' : 'wpinv_missing_callback',
126 126
                     'wpinv_settings_' . $tab . '_' . $section,
127 127
                     'wpinv_settings_' . $tab . '_' . $section,
128 128
                     array(
129 129
                         'section'     => $section,
130
-                        'id'          => isset( $option['id'] )          ? $option['id']          : null,
131
-                        'desc'        => ! empty( $option['desc'] )      ? $option['desc']        : '',
132
-                        'name'        => isset( $option['name'] )        ? $option['name']        : null,
133
-                        'size'        => isset( $option['size'] )        ? $option['size']        : null,
134
-                        'options'     => isset( $option['options'] )     ? $option['options']     : '',
135
-                        'selected'    => isset( $option['selected'] )    ? $option['selected']    : null,
136
-                        'std'         => isset( $option['std'] )         ? $option['std']         : '',
137
-                        'min'         => isset( $option['min'] )         ? $option['min']         : null,
138
-                        'max'         => isset( $option['max'] )         ? $option['max']         : null,
139
-                        'step'        => isset( $option['step'] )        ? $option['step']        : null,
140
-                        'placeholder' => isset( $option['placeholder'] ) ? $option['placeholder'] : null,
141
-                        'allow_blank' => isset( $option['allow_blank'] ) ? $option['allow_blank'] : true,
142
-                        'readonly'    => isset( $option['readonly'] )    ? $option['readonly']    : false,
143
-                        'faux'        => isset( $option['faux'] )        ? $option['faux']        : false,
144
-                        'onchange'    => !empty( $option['onchange'] )   ? $option['onchange']    : '',
145
-                        'custom'      => !empty( $option['custom'] )     ? $option['custom']      : '',
146
-                        'class'       =>  !empty( $option['class'] )     ? $option['class']      : '',
147
-                        'cols'        => !empty( $option['cols'] ) && (int)$option['cols'] > 0 ? (int)$option['cols'] : 50,
148
-                        'rows'        => !empty( $option['rows'] ) && (int)$option['rows'] > 0 ? (int)$option['rows'] : 5,
130
+                        'id'          => isset($option['id']) ? $option['id'] : null,
131
+                        'desc'        => !empty($option['desc']) ? $option['desc'] : '',
132
+                        'name'        => isset($option['name']) ? $option['name'] : null,
133
+                        'size'        => isset($option['size']) ? $option['size'] : null,
134
+                        'options'     => isset($option['options']) ? $option['options'] : '',
135
+                        'selected'    => isset($option['selected']) ? $option['selected'] : null,
136
+                        'std'         => isset($option['std']) ? $option['std'] : '',
137
+                        'min'         => isset($option['min']) ? $option['min'] : null,
138
+                        'max'         => isset($option['max']) ? $option['max'] : null,
139
+                        'step'        => isset($option['step']) ? $option['step'] : null,
140
+                        'placeholder' => isset($option['placeholder']) ? $option['placeholder'] : null,
141
+                        'allow_blank' => isset($option['allow_blank']) ? $option['allow_blank'] : true,
142
+                        'readonly'    => isset($option['readonly']) ? $option['readonly'] : false,
143
+                        'faux'        => isset($option['faux']) ? $option['faux'] : false,
144
+                        'onchange'    => !empty($option['onchange']) ? $option['onchange'] : '',
145
+                        'custom'      => !empty($option['custom']) ? $option['custom'] : '',
146
+                        'class'       =>  !empty($option['class']) ? $option['class'] : '',
147
+                        'cols'        => !empty($option['cols']) && (int) $option['cols'] > 0 ? (int) $option['cols'] : 50,
148
+                        'rows'        => !empty($option['rows']) && (int) $option['rows'] > 0 ? (int) $option['rows'] : 5,
149 149
                     )
150 150
                 );
151 151
             }
@@ -153,203 +153,203 @@  discard block
 block discarded – undo
153 153
     }
154 154
 
155 155
     // Creates our settings in the options table
156
-    register_setting( 'wpinv_settings', 'wpinv_settings', 'wpinv_settings_sanitize' );
156
+    register_setting('wpinv_settings', 'wpinv_settings', 'wpinv_settings_sanitize');
157 157
 }
158
-add_action( 'admin_init', 'wpinv_register_settings' );
158
+add_action('admin_init', 'wpinv_register_settings');
159 159
 
160 160
 function wpinv_get_registered_settings() {
161
-    $pages = wpinv_get_pages( true );
161
+    $pages = wpinv_get_pages(true);
162 162
     
163 163
     $currencies = wpinv_get_currencies();
164 164
     
165 165
     $currency_code_options = array();
166
-    foreach ( $currencies as $code => $name ) {
167
-        $currency_code_options[ $code ] = $code . ' - ' . $name . ' (' . wpinv_currency_symbol( $code ) . ')';
166
+    foreach ($currencies as $code => $name) {
167
+        $currency_code_options[$code] = $code . ' - ' . $name . ' (' . wpinv_currency_symbol($code) . ')';
168 168
     }
169 169
     
170 170
     $due_payment_options       = array();
171
-    $due_payment_options[0]    = __( 'Now', 'invoicing' );
172
-    for ( $i = 1; $i <= 30; $i++ ) {
171
+    $due_payment_options[0]    = __('Now', 'invoicing');
172
+    for ($i = 1; $i <= 30; $i++) {
173 173
         $due_payment_options[$i] = $i;
174 174
     }
175 175
     
176 176
     $invoice_number_padd_options = array();
177
-    for ( $i = 0; $i <= 20; $i++ ) {
177
+    for ($i = 0; $i <= 20; $i++) {
178 178
         $invoice_number_padd_options[$i] = $i;
179 179
     }
180 180
     
181 181
     $currency_symbol = wpinv_currency_symbol();
182 182
     
183 183
     $last_number = $reset_number = '';
184
-    if ( $last_invoice_number = get_option( 'wpinv_last_invoice_number' ) ) {
185
-        $last_invoice_number = is_numeric( $last_invoice_number ) ? $last_invoice_number : wpinv_clean_invoice_number( $last_invoice_number );
184
+    if ($last_invoice_number = get_option('wpinv_last_invoice_number')) {
185
+        $last_invoice_number = is_numeric($last_invoice_number) ? $last_invoice_number : wpinv_clean_invoice_number($last_invoice_number);
186 186
 
187
-        if ( !empty( $last_invoice_number ) ) {
188
-            $last_number = ' ' . wp_sprintf( __( "( Last Invoice's sequential number: <b>%s</b> )", 'invoicing' ), $last_invoice_number );
187
+        if (!empty($last_invoice_number)) {
188
+            $last_number = ' ' . wp_sprintf(__("( Last Invoice's sequential number: <b>%s</b> )", 'invoicing'), $last_invoice_number);
189 189
         }
190 190
 
191 191
         $nonce = wp_create_nonce('reset_invoice_count');
192
-        $reset_number = '<a href="'.add_query_arg(array('reset_invoice_count' => 1, '_nonce' => $nonce)).'" class="btn button">'.__('Force Reset Sequence', 'invoicing' ). '</a>';
192
+        $reset_number = '<a href="' . add_query_arg(array('reset_invoice_count' => 1, '_nonce' => $nonce)) . '" class="btn button">' . __('Force Reset Sequence', 'invoicing') . '</a>';
193 193
     }
194 194
     
195 195
     $alert_wrapper_start = '<p style="color: #F00">';
196 196
     $alert_wrapper_close = '</p>';
197 197
     $wpinv_settings = array(
198
-        'general' => apply_filters( 'wpinv_settings_general',
198
+        'general' => apply_filters('wpinv_settings_general',
199 199
             array(
200 200
                 'main' => array(
201 201
                     'location_settings' => array(
202 202
                         'id'   => 'location_settings',
203
-                        'name' => '<h3>' . __( 'Default Location', 'invoicing' ) . '</h3>',
203
+                        'name' => '<h3>' . __('Default Location', 'invoicing') . '</h3>',
204 204
                         'desc' => '',
205 205
                         'type' => 'header',
206 206
                     ),
207 207
                     'default_country' => array(
208 208
                         'id'      => 'default_country',
209
-                        'name'    => __( 'Default Country', 'invoicing' ),
210
-                        'desc'    => __( 'Where does your store operate from?', 'invoicing' ),
209
+                        'name'    => __('Default Country', 'invoicing'),
210
+                        'desc'    => __('Where does your store operate from?', 'invoicing'),
211 211
                         'type'    => 'select',
212 212
                         'options' => wpinv_get_country_list(),
213 213
                         'std'     => 'GB',
214 214
                         'class'   => 'wpi_select2',
215
-                        'placeholder' => __( 'Select a country', 'invoicing' ),
215
+                        'placeholder' => __('Select a country', 'invoicing'),
216 216
                     ),
217 217
                     'default_state' => array(
218 218
                         'id'      => 'default_state',
219
-                        'name'    => __( 'Default State / Province', 'invoicing' ),
220
-                        'desc'    => __( 'What state / province does your store operate from?', 'invoicing' ),
219
+                        'name'    => __('Default State / Province', 'invoicing'),
220
+                        'desc'    => __('What state / province does your store operate from?', 'invoicing'),
221 221
                         'type'    => 'country_states',
222 222
                         'class'   => 'wpi_select2',
223
-                        'placeholder' => __( 'Select a state', 'invoicing' ),
223
+                        'placeholder' => __('Select a state', 'invoicing'),
224 224
                     ),
225 225
                     'store_name' => array(
226 226
                         'id'   => 'store_name',
227
-                        'name' => __( 'Store Name', 'invoicing' ),
228
-                        'desc' => __( 'Store name to print on invoices.', 'invoicing' ),
227
+                        'name' => __('Store Name', 'invoicing'),
228
+                        'desc' => __('Store name to print on invoices.', 'invoicing'),
229 229
                         'std'     => get_option('blogname'),
230 230
                         'type' => 'text',
231 231
                     ),
232 232
                     'logo' => array(
233 233
                         'id'   => 'logo',
234
-                        'name' => __( 'Logo URL', 'invoicing' ),
235
-                        'desc' => __( 'Store logo to print on invoices.', 'invoicing' ),
234
+                        'name' => __('Logo URL', 'invoicing'),
235
+                        'desc' => __('Store logo to print on invoices.', 'invoicing'),
236 236
                         'type' => 'text',
237 237
                     ),
238 238
                     'store_address' => array(
239 239
                         'id'   => 'store_address',
240
-                        'name' => __( 'Store Address', 'invoicing' ),
241
-                        'desc' => __( 'Enter the store address to display on invoice', 'invoicing' ),
240
+                        'name' => __('Store Address', 'invoicing'),
241
+                        'desc' => __('Enter the store address to display on invoice', 'invoicing'),
242 242
                         'type' => 'textarea',
243 243
                     ),
244 244
                     'page_settings' => array(
245 245
                         'id'   => 'page_settings',
246
-                        'name' => '<h3>' . __( 'Page Settings', 'invoicing' ) . '</h3>',
246
+                        'name' => '<h3>' . __('Page Settings', 'invoicing') . '</h3>',
247 247
                         'desc' => '',
248 248
                         'type' => 'header',
249 249
                     ),
250 250
                     'checkout_page' => array(
251 251
                         'id'          => 'checkout_page',
252
-                        'name'        => __( 'Checkout Page', 'invoicing' ),
253
-                        'desc'        => __( 'This is the checkout page where buyers will complete their payments. The <b>[wpinv_checkout]</b> short code must be on this page.', 'invoicing' ),
252
+                        'name'        => __('Checkout Page', 'invoicing'),
253
+                        'desc'        => __('This is the checkout page where buyers will complete their payments. The <b>[wpinv_checkout]</b> short code must be on this page.', 'invoicing'),
254 254
                         'type'        => 'select',
255 255
                         'options'     => $pages,
256 256
                         'class'       => 'wpi_select2',
257
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
257
+                        'placeholder' => __('Select a page', 'invoicing'),
258 258
                     ),
259 259
                     'tandc_page' => array(
260 260
                         'id'          => 'tandc_page',
261
-                        'name'        => __( 'Terms & Conditions', 'invoicing' ),
262
-                        'desc'        => __( 'If you select a "Terms & Conditions" page here the customer will be asked to accept them on checkout.', 'invoicing' ),
261
+                        'name'        => __('Terms & Conditions', 'invoicing'),
262
+                        'desc'        => __('If you select a "Terms & Conditions" page here the customer will be asked to accept them on checkout.', 'invoicing'),
263 263
                         'type'        => 'select',
264
-                        'options'     => wpinv_get_pages( true,  __( 'Select a page', 'invoicing' )),
264
+                        'options'     => wpinv_get_pages(true, __('Select a page', 'invoicing')),
265 265
                         'class'       => 'wpi_select2',
266
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
266
+                        'placeholder' => __('Select a page', 'invoicing'),
267 267
                     ),
268 268
                     'success_page' => array(
269 269
                         'id'          => 'success_page',
270
-                        'name'        => __( 'Success Page', 'invoicing' ),
271
-                        'desc'        => __( 'This is the page buyers are sent to after completing their payments. The <b>[wpinv_receipt]</b> short code should be on this page.', 'invoicing' ),
270
+                        'name'        => __('Success Page', 'invoicing'),
271
+                        'desc'        => __('This is the page buyers are sent to after completing their payments. The <b>[wpinv_receipt]</b> short code should be on this page.', 'invoicing'),
272 272
                         'type'        => 'select',
273 273
                         'options'     => $pages,
274 274
                         'class'       => 'wpi_select2',
275
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
275
+                        'placeholder' => __('Select a page', 'invoicing'),
276 276
                     ),
277 277
                     'failure_page' => array(
278 278
                         'id'          => 'failure_page',
279
-                        'name'        => __( 'Failed Transaction Page', 'invoicing' ),
280
-                        'desc'        => __( 'This is the page buyers are sent to if their transaction is cancelled or fails.', 'invoicing' ),
279
+                        'name'        => __('Failed Transaction Page', 'invoicing'),
280
+                        'desc'        => __('This is the page buyers are sent to if their transaction is cancelled or fails.', 'invoicing'),
281 281
                         'type'        => 'select',
282 282
                         'options'     => $pages,
283 283
                         'class'       => 'wpi_select2',
284
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
284
+                        'placeholder' => __('Select a page', 'invoicing'),
285 285
                     ),
286 286
                     'invoice_history_page' => array(
287 287
                         'id'          => 'invoice_history_page',
288
-                        'name'        => __( 'Invoice History Page', 'invoicing' ),
289
-                        'desc'        => __( 'This page shows an invoice history for the current user. The <b>[wpinv_history]</b> short code should be on this page.', 'invoicing' ),
288
+                        'name'        => __('Invoice History Page', 'invoicing'),
289
+                        'desc'        => __('This page shows an invoice history for the current user. The <b>[wpinv_history]</b> short code should be on this page.', 'invoicing'),
290 290
                         'type'        => 'select',
291 291
                         'options'     => $pages,
292 292
                         'class'       => 'wpi_select2',
293
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
293
+                        'placeholder' => __('Select a page', 'invoicing'),
294 294
                     ),
295 295
                     'invoice_subscription_page' => array(
296 296
                         'id'          => 'invoice_subscription_page',
297
-                        'name'        => __( 'Invoice Subscriptions Page', 'invoicing' ),
298
-                        'desc'        => __( 'This page shows subscriptions history for the current user. The <b>[wpinv_subscriptions]</b> short code should be on this page.', 'invoicing' ),
297
+                        'name'        => __('Invoice Subscriptions Page', 'invoicing'),
298
+                        'desc'        => __('This page shows subscriptions history for the current user. The <b>[wpinv_subscriptions]</b> short code should be on this page.', 'invoicing'),
299 299
                         'type'        => 'select',
300 300
                         'options'     => $pages,
301 301
                         'class'       => 'wpi_select2',
302
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
302
+                        'placeholder' => __('Select a page', 'invoicing'),
303 303
                     ),
304 304
                 ),
305 305
                 'currency_section' => array(
306 306
                     'currency_settings' => array(
307 307
                         'id'   => 'currency_settings',
308
-                        'name' => '<h3>' . __( 'Currency Settings', 'invoicing' ) . '</h3>',
308
+                        'name' => '<h3>' . __('Currency Settings', 'invoicing') . '</h3>',
309 309
                         'desc' => '',
310 310
                         'type' => 'header',
311 311
                     ),
312 312
                     'currency' => array(
313 313
                         'id'      => 'currency',
314
-                        'name'    => __( 'Currency', 'invoicing' ),
315
-                        'desc'    => __( 'Choose your currency. Note that some payment gateways have currency restrictions.', 'invoicing' ),
314
+                        'name'    => __('Currency', 'invoicing'),
315
+                        'desc'    => __('Choose your currency. Note that some payment gateways have currency restrictions.', 'invoicing'),
316 316
                         'type'    => 'select',
317 317
                         'class'       => 'wpi_select2',
318 318
                         'options' => $currency_code_options,
319 319
                     ),
320 320
                     'currency_position' => array(
321 321
                         'id'      => 'currency_position',
322
-                        'name'    => __( 'Currency Position', 'invoicing' ),
323
-                        'desc'    => __( 'Choose the location of the currency sign.', 'invoicing' ),
322
+                        'name'    => __('Currency Position', 'invoicing'),
323
+                        'desc'    => __('Choose the location of the currency sign.', 'invoicing'),
324 324
                         'type'    => 'select',
325 325
                         'class'   => 'wpi_select2',
326 326
                         'options'  => array(
327
-                            'left'        => __( 'Left', 'invoicing' ) . ' (' . $currency_symbol . wpinv_format_amount( '99.99' ) . ')',
328
-                            'right'       => __( 'Right', 'invoicing' ) . ' ('. wpinv_format_amount( '99.99' ) . $currency_symbol . ')',
329
-                            'left_space'  => __( 'Left with space', 'invoicing' ) . ' (' . $currency_symbol . ' ' . wpinv_format_amount( '99.99' ) . ')',
330
-                            'right_space' => __( 'Right with space', 'invoicing' ) . ' (' . wpinv_format_amount( '99.99' ) . ' ' . $currency_symbol . ')'
327
+                            'left'        => __('Left', 'invoicing') . ' (' . $currency_symbol . wpinv_format_amount('99.99') . ')',
328
+                            'right'       => __('Right', 'invoicing') . ' (' . wpinv_format_amount('99.99') . $currency_symbol . ')',
329
+                            'left_space'  => __('Left with space', 'invoicing') . ' (' . $currency_symbol . ' ' . wpinv_format_amount('99.99') . ')',
330
+                            'right_space' => __('Right with space', 'invoicing') . ' (' . wpinv_format_amount('99.99') . ' ' . $currency_symbol . ')'
331 331
                         )
332 332
                     ),
333 333
                     'thousands_separator' => array(
334 334
                         'id'   => 'thousands_separator',
335
-                        'name' => __( 'Thousands Separator', 'invoicing' ),
336
-                        'desc' => __( 'The symbol (usually , or .) to separate thousands', 'invoicing' ),
335
+                        'name' => __('Thousands Separator', 'invoicing'),
336
+                        'desc' => __('The symbol (usually , or .) to separate thousands', 'invoicing'),
337 337
                         'type' => 'text',
338 338
                         'size' => 'small',
339 339
                         'std'  => ',',
340 340
                     ),
341 341
                     'decimal_separator' => array(
342 342
                         'id'   => 'decimal_separator',
343
-                        'name' => __( 'Decimal Separator', 'invoicing' ),
344
-                        'desc' => __( 'The symbol (usually , or .) to separate decimal points', 'invoicing' ),
343
+                        'name' => __('Decimal Separator', 'invoicing'),
344
+                        'desc' => __('The symbol (usually , or .) to separate decimal points', 'invoicing'),
345 345
                         'type' => 'text',
346 346
                         'size' => 'small',
347 347
                         'std'  => '.',
348 348
                     ),
349 349
                     'decimals' => array(
350 350
                         'id'   => 'decimals',
351
-                        'name' => __( 'Number of Decimals', 'invoicing' ),
352
-                        'desc' => __( 'This sets the number of decimal points shown in displayed prices.', 'invoicing' ),
351
+                        'name' => __('Number of Decimals', 'invoicing'),
352
+                        'desc' => __('This sets the number of decimal points shown in displayed prices.', 'invoicing'),
353 353
                         'type' => 'number',
354 354
                         'size' => 'small',
355 355
                         'std'  => '2',
@@ -361,60 +361,60 @@  discard block
 block discarded – undo
361 361
                 'labels' => array(
362 362
                     'labels' => array(
363 363
                         'id'   => 'labels_settings',
364
-                        'name' => '<h3>' . __( 'Invoice Labels', 'invoicing' ) . '</h3>',
364
+                        'name' => '<h3>' . __('Invoice Labels', 'invoicing') . '</h3>',
365 365
                         'desc' => '',
366 366
                         'type' => 'header',
367 367
                     ),
368 368
                     'vat_name' => array(
369 369
                         'id' => 'vat_name',
370
-                        'name' => __( 'VAT Name', 'invoicing' ),
371
-                        'desc' => __( 'Enter the VAT name', 'invoicing' ),
370
+                        'name' => __('VAT Name', 'invoicing'),
371
+                        'desc' => __('Enter the VAT name', 'invoicing'),
372 372
                         'type' => 'text',
373 373
                         'size' => 'regular',
374 374
                         'std' => 'VAT'
375 375
                     ),
376 376
                     'vat_invoice_notice_label' => array(
377 377
                         'id' => 'vat_invoice_notice_label',
378
-                        'name' => __( 'Invoice Notice Label', 'invoicing' ),
379
-                        'desc' => __( 'Use this to add an invoice notice section (label) to your invoices', 'invoicing' ),
378
+                        'name' => __('Invoice Notice Label', 'invoicing'),
379
+                        'desc' => __('Use this to add an invoice notice section (label) to your invoices', 'invoicing'),
380 380
                         'type' => 'text',
381 381
                         'size' => 'regular',
382 382
                     ),
383 383
                     'vat_invoice_notice' => array(
384 384
                         'id' => 'vat_invoice_notice',
385
-                        'name' => __( 'Invoice notice', 'invoicing' ),
386
-                        'desc' =>   __( 'Use this to add an invoice notice section (description) to your invoices', 'invoicing' ),
385
+                        'name' => __('Invoice notice', 'invoicing'),
386
+                        'desc' =>   __('Use this to add an invoice notice section (description) to your invoices', 'invoicing'),
387 387
                         'type' => 'text',
388 388
                         'size' => 'regular',
389 389
                     ),
390 390
                     'name_your_price' => array(
391 391
                         'id'   => 'name_your_price_settings',
392
-                        'name' => '<h3>' . __( 'Name Your Price', 'invoicing' ) . '</h3>',
392
+                        'name' => '<h3>' . __('Name Your Price', 'invoicing') . '</h3>',
393 393
                         'desc' => '',
394 394
                         'type' => 'header',
395 395
                     ),
396 396
                     'suggested_price_text' => array(
397 397
                         'id'   => 'suggested_price_text',
398
-                        'name' => __( 'Suggested Price Text', 'invoicing' ),
399
-                        'desc' => __( "The label used to indicate an item's suggested price", 'invoicing' ),
398
+                        'name' => __('Suggested Price Text', 'invoicing'),
399
+                        'desc' => __("The label used to indicate an item's suggested price", 'invoicing'),
400 400
                         'type' => 'text',
401 401
                         'size' => 'regular',
402
-                        'std'  => __( 'Suggested Price:', 'invoicing' ),
402
+                        'std'  => __('Suggested Price:', 'invoicing'),
403 403
                     ),
404 404
                     'minimum_price_text' => array(
405 405
                         'id'   => 'minimum_price_text',
406
-                        'name' => __( 'Minimum Price Text', 'invoicing' ),
407
-                        'desc' => __( "The label used to indicate an item's minimum price", 'invoicing' ),
406
+                        'name' => __('Minimum Price Text', 'invoicing'),
407
+                        'desc' => __("The label used to indicate an item's minimum price", 'invoicing'),
408 408
                         'type' => 'text',
409 409
                         'size' => 'regular',
410
-                        'std'  => __( 'Minimum Price:', 'invoicing' ),
410
+                        'std'  => __('Minimum Price:', 'invoicing'),
411 411
                     ),
412 412
                     'name_your_price_text' => array(
413 413
                         'id'   => 'name_your_price_text',
414
-                        'name' => __( 'Name Your Price Text', 'invoicing' ),
414
+                        'name' => __('Name Your Price Text', 'invoicing'),
415 415
                         'type' => 'text',
416 416
                         'size' => 'regular',
417
-                        'std'  => __( 'Name Your Price', 'invoicing' ),
417
+                        'std'  => __('Name Your Price', 'invoicing'),
418 418
                     ),
419 419
                 )
420 420
             )
@@ -424,22 +424,22 @@  discard block
 block discarded – undo
424 424
                 'main' => array(
425 425
                     'gateway_settings' => array(
426 426
                         'id'   => 'api_header',
427
-                        'name' => '<h3>' . __( 'Gateway Settings', 'invoicing' ) . '</h3>',
427
+                        'name' => '<h3>' . __('Gateway Settings', 'invoicing') . '</h3>',
428 428
                         'desc' => '',
429 429
                         'type' => 'header',
430 430
                     ),
431 431
                     'gateways' => array(
432 432
                         'id'      => 'gateways',
433
-                        'name'    => __( 'Payment Gateways', 'invoicing' ),
434
-                        'desc'    => __( 'Choose the payment gateways you want to enable.', 'invoicing' ),
433
+                        'name'    => __('Payment Gateways', 'invoicing'),
434
+                        'desc'    => __('Choose the payment gateways you want to enable.', 'invoicing'),
435 435
                         'type'    => 'gateways',
436 436
                         'std'     => array('manual'=>1),
437 437
                         'options' => wpinv_get_payment_gateways(),
438 438
                     ),
439 439
                     'default_gateway' => array(
440 440
                         'id'      => 'default_gateway',
441
-                        'name'    => __( 'Default Gateway', 'invoicing' ),
442
-                        'desc'    => __( 'This gateway will be loaded automatically with the checkout page.', 'invoicing' ),
441
+                        'name'    => __('Default Gateway', 'invoicing'),
442
+                        'desc'    => __('This gateway will be loaded automatically with the checkout page.', 'invoicing'),
443 443
                         'type'    => 'gateway_select',
444 444
                         'std'     => 'manual',
445 445
                         'class'   => 'wpi_select2',
@@ -454,19 +454,19 @@  discard block
 block discarded – undo
454 454
                 'main' => array(
455 455
                     'tax_settings' => array(
456 456
                         'id'   => 'tax_settings',
457
-                        'name' => '<h3>' . __( 'Tax Settings', 'invoicing' ) . '</h3>',
457
+                        'name' => '<h3>' . __('Tax Settings', 'invoicing') . '</h3>',
458 458
                         'type' => 'header',
459 459
                     ),
460 460
                     'enable_taxes' => array(
461 461
                         'id'   => 'enable_taxes',
462
-                        'name' => __( 'Enable Taxes', 'invoicing' ),
463
-                        'desc' => __( 'Check this to enable taxes on invoices.', 'invoicing' ),
462
+                        'name' => __('Enable Taxes', 'invoicing'),
463
+                        'desc' => __('Check this to enable taxes on invoices.', 'invoicing'),
464 464
                         'type' => 'checkbox',
465 465
                     ),
466 466
                     'tax_rate' => array(
467 467
                         'id'   => 'tax_rate',
468
-                        'name' => __( 'Fallback Tax Rate', 'invoicing' ),
469
-                        'desc' => __( 'Enter a percentage, such as 6.5. Customers not in a specific rate will be charged this rate.', 'invoicing' ),
468
+                        'name' => __('Fallback Tax Rate', 'invoicing'),
469
+                        'desc' => __('Enter a percentage, such as 6.5. Customers not in a specific rate will be charged this rate.', 'invoicing'),
470 470
                         'type' => 'number',
471 471
                         'size' => 'small',
472 472
                         'min'  => '0',
@@ -478,8 +478,8 @@  discard block
 block discarded – undo
478 478
                 'rates' => array(
479 479
                     'tax_rates' => array(
480 480
                         'id'   => 'tax_rates',
481
-                        'name' => '<h3>' . __( 'Tax Rates', 'invoicing' ) . '</h3>',
482
-                        'desc' => __( 'Enter tax rates for specific regions.', 'invoicing' ),
481
+                        'name' => '<h3>' . __('Tax Rates', 'invoicing') . '</h3>',
482
+                        'desc' => __('Enter tax rates for specific regions.', 'invoicing'),
483 483
                         'type' => 'tax_rates',
484 484
                     ),
485 485
                 )
@@ -491,68 +491,68 @@  discard block
 block discarded – undo
491 491
                 'main' => array(
492 492
                     'email_settings_header' => array(
493 493
                         'id'   => 'email_settings_header',
494
-                        'name' => '<h3>' . __( 'Email Sender Options', 'invoicing' ) . '</h3>',
494
+                        'name' => '<h3>' . __('Email Sender Options', 'invoicing') . '</h3>',
495 495
                         'type' => 'header',
496 496
                     ),
497 497
                     'email_from_name' => array(
498 498
                         'id'   => 'email_from_name',
499
-                        'name' => __( 'From Name', 'invoicing' ),
500
-                        'desc' => __( 'Enter the sender\'s name appears in outgoing invoice emails. This should be your site name.', 'invoicing' ),
501
-                        'std' => esc_attr( get_bloginfo( 'name', 'display' ) ),
499
+                        'name' => __('From Name', 'invoicing'),
500
+                        'desc' => __('Enter the sender\'s name appears in outgoing invoice emails. This should be your site name.', 'invoicing'),
501
+                        'std' => esc_attr(get_bloginfo('name', 'display')),
502 502
                         'type' => 'text',
503 503
                     ),
504 504
                     'email_from' => array(
505 505
                         'id'   => 'email_from',
506
-                        'name' => __( 'From Email', 'invoicing' ),
507
-                        'desc' => sprintf (__( 'Email address to send invoice emails from. This will act as the "from" and "reply-to" address. %s If emails are not being sent it may be that your hosting prevents emails being sent if the email domains do not match.%s', 'invoicing' ), $alert_wrapper_start, $alert_wrapper_close),
508
-                        'std' => get_option( 'admin_email' ),
506
+                        'name' => __('From Email', 'invoicing'),
507
+                        'desc' => sprintf(__('Email address to send invoice emails from. This will act as the "from" and "reply-to" address. %s If emails are not being sent it may be that your hosting prevents emails being sent if the email domains do not match.%s', 'invoicing'), $alert_wrapper_start, $alert_wrapper_close),
508
+                        'std' => get_option('admin_email'),
509 509
                         'type' => 'text',
510 510
                     ),
511 511
                     'admin_email' => array(
512 512
                         'id'   => 'admin_email',
513
-                        'name' => __( 'Admin Email', 'invoicing' ),
514
-                        'desc' => __( 'Where should we send admin notifications?', 'invoicing' ),
515
-                        'std' => get_option( 'admin_email' ),
513
+                        'name' => __('Admin Email', 'invoicing'),
514
+                        'desc' => __('Where should we send admin notifications?', 'invoicing'),
515
+                        'std' => get_option('admin_email'),
516 516
                         'type' => 'text',
517 517
                     ),
518 518
                     'overdue_settings_header' => array(
519 519
                         'id'   => 'overdue_settings_header',
520
-                        'name' => '<h3>' . __( 'Due Date Settings', 'invoicing' ) . '</h3>',
520
+                        'name' => '<h3>' . __('Due Date Settings', 'invoicing') . '</h3>',
521 521
                         'type' => 'header',
522 522
                     ),
523 523
                     'overdue_active' => array(
524 524
                         'id'   => 'overdue_active',
525
-                        'name' => __( 'Enable Due Date', 'invoicing' ),
526
-                        'desc' => __( 'Check this to enable due date option for invoices.', 'invoicing' ),
525
+                        'name' => __('Enable Due Date', 'invoicing'),
526
+                        'desc' => __('Check this to enable due date option for invoices.', 'invoicing'),
527 527
                         'type' => 'checkbox',
528 528
                         'std'  => false,
529 529
                     ),
530 530
                     'overdue_days' => array(
531 531
                         'id'          => 'overdue_days',
532
-                        'name'        => __( 'Default Due Date', 'invoicing' ),
533
-                        'desc'        => __( 'Number of days each Invoice is due after the created date. This will automatically set the date in the "Due Date" field. Can be overridden on individual Invoices.', 'invoicing' ),
532
+                        'name'        => __('Default Due Date', 'invoicing'),
533
+                        'desc'        => __('Number of days each Invoice is due after the created date. This will automatically set the date in the "Due Date" field. Can be overridden on individual Invoices.', 'invoicing'),
534 534
                         'type'        => 'select',
535 535
                         'options'     => $due_payment_options,
536 536
                         'std'         => 0,
537
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
537
+                        'placeholder' => __('Select a page', 'invoicing'),
538 538
                     ),
539 539
                     'email_template_header' => array(
540 540
                         'id'   => 'email_template_header',
541
-                        'name' => '<h3>' . __( 'Email Template', 'invoicing' ) . '</h3>',
541
+                        'name' => '<h3>' . __('Email Template', 'invoicing') . '</h3>',
542 542
                         'type' => 'header',
543 543
                     ),
544 544
                     'email_header_image' => array(
545 545
                         'id'   => 'email_header_image',
546
-                        'name' => __( 'Header Image', 'invoicing' ),
547
-                        'desc' => __( 'URL to an image you want to show in the email header. Upload images using the media uploader (Admin > Media).', 'invoicing' ),
546
+                        'name' => __('Header Image', 'invoicing'),
547
+                        'desc' => __('URL to an image you want to show in the email header. Upload images using the media uploader (Admin > Media).', 'invoicing'),
548 548
                         'std' => '',
549 549
                         'type' => 'text',
550 550
                     ),
551 551
                     'email_footer_text' => array(
552 552
                         'id'   => 'email_footer_text',
553
-                        'name' => __( 'Footer Text', 'invoicing' ),
554
-                        'desc' => __( 'The text to appear in the footer of all invoice emails.', 'invoicing' ),
555
-                        'std' => get_bloginfo( 'name', 'display' ) . ' - ' . __( 'Powered by GeoDirectory', 'invoicing' ),
553
+                        'name' => __('Footer Text', 'invoicing'),
554
+                        'desc' => __('The text to appear in the footer of all invoice emails.', 'invoicing'),
555
+                        'std' => get_bloginfo('name', 'display') . ' - ' . __('Powered by GeoDirectory', 'invoicing'),
556 556
                         'type' => 'textarea',
557 557
                         'class' => 'regular-text',
558 558
                         'rows' => 2,
@@ -560,29 +560,29 @@  discard block
 block discarded – undo
560 560
                     ),
561 561
                     'email_base_color' => array(
562 562
                         'id'   => 'email_base_color',
563
-                        'name' => __( 'Base Color', 'invoicing' ),
564
-                        'desc' => __( 'The base color for invoice email template. Default <code>#557da2</code>.', 'invoicing' ),
563
+                        'name' => __('Base Color', 'invoicing'),
564
+                        'desc' => __('The base color for invoice email template. Default <code>#557da2</code>.', 'invoicing'),
565 565
                         'std' => '#557da2',
566 566
                         'type' => 'color',
567 567
                     ),
568 568
                     'email_background_color' => array(
569 569
                         'id'   => 'email_background_color',
570
-                        'name' => __( 'Background Color', 'invoicing' ),
571
-                        'desc' => __( 'The background color of email template. Default <code>#f5f5f5</code>.', 'invoicing' ),
570
+                        'name' => __('Background Color', 'invoicing'),
571
+                        'desc' => __('The background color of email template. Default <code>#f5f5f5</code>.', 'invoicing'),
572 572
                         'std' => '#f5f5f5',
573 573
                         'type' => 'color',
574 574
                     ),
575 575
                     'email_body_background_color' => array(
576 576
                         'id'   => 'email_body_background_color',
577
-                        'name' => __( 'Body Background Color', 'invoicing' ),
578
-                        'desc' => __( 'The main body background color of email template. Default <code>#fdfdfd</code>.', 'invoicing' ),
577
+                        'name' => __('Body Background Color', 'invoicing'),
578
+                        'desc' => __('The main body background color of email template. Default <code>#fdfdfd</code>.', 'invoicing'),
579 579
                         'std' => '#fdfdfd',
580 580
                         'type' => 'color',
581 581
                     ),
582 582
                     'email_text_color' => array(
583 583
                         'id'   => 'email_text_color',
584
-                        'name' => __( 'Body Text Color', 'invoicing' ),
585
-                        'desc' => __( 'The main body text color. Default <code>#505050</code>.', 'invoicing' ),
584
+                        'name' => __('Body Text Color', 'invoicing'),
585
+                        'desc' => __('The main body text color. Default <code>#505050</code>.', 'invoicing'),
586 586
                         'std' => '#505050',
587 587
                         'type' => 'color',
588 588
                     ),
@@ -601,26 +601,26 @@  discard block
 block discarded – undo
601 601
                 'main' => array(
602 602
                     'invoicing_privacy_policy_settings' => array(
603 603
                         'id'   => 'invoicing_privacy_policy_settings',
604
-                        'name' => '<h3>' . __( 'Privacy Policy', 'invoicing' ) . '</h3>',
604
+                        'name' => '<h3>' . __('Privacy Policy', 'invoicing') . '</h3>',
605 605
                         'type' => 'header',
606 606
                     ),
607 607
                     'privacy_page' => array(
608 608
                         'id'          => 'privacy_page',
609
-                        'name'        => __( 'Privacy Page', 'invoicing' ),
610
-                        'desc'        => __( 'If no privacy policy page set in Settings->Privacy default settings, this page will be used on checkout page.', 'invoicing' ),
609
+                        'name'        => __('Privacy Page', 'invoicing'),
610
+                        'desc'        => __('If no privacy policy page set in Settings->Privacy default settings, this page will be used on checkout page.', 'invoicing'),
611 611
                         'type'        => 'select',
612
-                        'options'     => wpinv_get_pages( true,  __( 'Select a page', 'invoicing' )),
612
+                        'options'     => wpinv_get_pages(true, __('Select a page', 'invoicing')),
613 613
                         'class'       => 'wpi_select2',
614
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
614
+                        'placeholder' => __('Select a page', 'invoicing'),
615 615
                     ),
616 616
                     'invoicing_privacy_checkout_message' => array(
617 617
                         'id' => 'invoicing_privacy_checkout_message',
618
-                        'name' => __( 'Checkout privacy policy', 'invoicing' ),
619
-                        'desc' => __( 'Optionally add privacy policy message which will display on checkout page.', 'invoicing' ),
618
+                        'name' => __('Checkout privacy policy', 'invoicing'),
619
+                        'desc' => __('Optionally add privacy policy message which will display on checkout page.', 'invoicing'),
620 620
                         'type' => 'textarea',
621 621
                         'class'=> 'regular-text',
622 622
                         'rows' => 4,
623
-                        'std'  => sprintf( __( 'Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing' ), '[wpinv_privacy_policy]' ),
623
+                        'std'  => sprintf(__('Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing'), '[wpinv_privacy_policy]'),
624 624
                     ),
625 625
                 ),
626 626
             )
@@ -631,19 +631,19 @@  discard block
 block discarded – undo
631 631
                 'main' => array(
632 632
                     'invoice_number_format_settings' => array(
633 633
                         'id'   => 'invoice_number_format_settings',
634
-                        'name' => '<h3>' . __( 'Invoice Number', 'invoicing' ) . '</h3>',
634
+                        'name' => '<h3>' . __('Invoice Number', 'invoicing') . '</h3>',
635 635
                         'type' => 'header',
636 636
                     ),
637 637
                     'sequential_invoice_number' => array(
638 638
                         'id'   => 'sequential_invoice_number',
639
-                        'name' => __( 'Sequential Invoice Numbers', 'invoicing' ),
640
-                        'desc' => __('Check this box to enable sequential invoice numbers.', 'invoicing' ) . $reset_number,
639
+                        'name' => __('Sequential Invoice Numbers', 'invoicing'),
640
+                        'desc' => __('Check this box to enable sequential invoice numbers.', 'invoicing') . $reset_number,
641 641
                         'type' => 'checkbox',
642 642
                     ),
643 643
                     'invoice_sequence_start' => array(
644 644
                         'id'   => 'invoice_sequence_start',
645
-                        'name' => __( 'Sequential Starting Number', 'invoicing' ),
646
-                        'desc' => __( 'The number at which the invoice number sequence should begin.', 'invoicing' ) . $last_number,
645
+                        'name' => __('Sequential Starting Number', 'invoicing'),
646
+                        'desc' => __('The number at which the invoice number sequence should begin.', 'invoicing') . $last_number,
647 647
                         'type' => 'number',
648 648
                         'size' => 'small',
649 649
                         'std'  => '1',
@@ -651,8 +651,8 @@  discard block
 block discarded – undo
651 651
                     ),
652 652
                     'invoice_number_padd' => array(
653 653
                         'id'      => 'invoice_number_padd',
654
-                        'name'    => __( 'Minimum Digits', 'invoicing' ),
655
-                        'desc'    => __( 'If the invoice number has less digits than this number, it is left padded with 0s. Ex: invoice number 108 will padded to 00108 if digits set to 5. The default 0 means no padding.', 'invoicing' ),
654
+                        'name'    => __('Minimum Digits', 'invoicing'),
655
+                        'desc'    => __('If the invoice number has less digits than this number, it is left padded with 0s. Ex: invoice number 108 will padded to 00108 if digits set to 5. The default 0 means no padding.', 'invoicing'),
656 656
                         'type'    => 'select',
657 657
                         'options' => $invoice_number_padd_options,
658 658
                         'std'     => 5,
@@ -660,8 +660,8 @@  discard block
 block discarded – undo
660 660
                     ),
661 661
                     'invoice_number_prefix' => array(
662 662
                         'id' => 'invoice_number_prefix',
663
-                        'name' => __( 'Invoice Number Prefix', 'invoicing' ),
664
-                        'desc' => __( 'Prefix for all invoice numbers. Ex: WPINV-', 'invoicing' ),
663
+                        'name' => __('Invoice Number Prefix', 'invoicing'),
664
+                        'desc' => __('Prefix for all invoice numbers. Ex: WPINV-', 'invoicing'),
665 665
                         'type' => 'text',
666 666
                         'size' => 'regular',
667 667
                         'std' => 'WPINV-',
@@ -669,32 +669,32 @@  discard block
 block discarded – undo
669 669
                     ),
670 670
                     'invoice_number_postfix' => array(
671 671
                         'id' => 'invoice_number_postfix',
672
-                        'name' => __( 'Invoice Number Postfix', 'invoicing' ),
673
-                        'desc' => __( 'Postfix for all invoice numbers.', 'invoicing' ),
672
+                        'name' => __('Invoice Number Postfix', 'invoicing'),
673
+                        'desc' => __('Postfix for all invoice numbers.', 'invoicing'),
674 674
                         'type' => 'text',
675 675
                         'size' => 'regular',
676 676
                         'std' => ''
677 677
                     ),
678 678
                     'checkout_settings' => array(
679 679
                         'id'   => 'checkout_settings',
680
-                        'name' => '<h3>' . __( 'Checkout Settings', 'invoicing' ) . '</h3>',
680
+                        'name' => '<h3>' . __('Checkout Settings', 'invoicing') . '</h3>',
681 681
                         'type' => 'header',
682 682
                     ),
683 683
                     'login_to_checkout' => array(
684 684
                         'id'   => 'login_to_checkout',
685
-                        'name' => __( 'Require Login To Checkout', 'invoicing' ),
686
-                        'desc' => __( 'If ticked then user needs to be logged in to view or pay invoice, can only view or pay their own invoice. If unticked then anyone can view or pay the invoice.', 'invoicing' ),
685
+                        'name' => __('Require Login To Checkout', 'invoicing'),
686
+                        'desc' => __('If ticked then user needs to be logged in to view or pay invoice, can only view or pay their own invoice. If unticked then anyone can view or pay the invoice.', 'invoicing'),
687 687
                         'type' => 'checkbox',
688 688
                     ),
689 689
                     'uninstall_settings' => array(
690 690
                         'id'   => 'uninstall_settings',
691
-                        'name' => '<h3>' . __( 'Uninstall Settings', 'invoicing' ) . '</h3>',
691
+                        'name' => '<h3>' . __('Uninstall Settings', 'invoicing') . '</h3>',
692 692
                         'type' => 'header',
693 693
                     ),
694 694
                     'remove_data_on_unistall' => array(
695 695
                         'id'   => 'remove_data_on_unistall',
696
-                        'name' => __( 'Remove Data on Uninstall?', 'invoicing' ),
697
-                        'desc' => __( 'Check this box if you would like Invoicing plugin to completely remove all of its data when the plugin is deleted/uninstalled.', 'invoicing' ),
696
+                        'name' => __('Remove Data on Uninstall?', 'invoicing'),
697
+                        'desc' => __('Check this box if you would like Invoicing plugin to completely remove all of its data when the plugin is deleted/uninstalled.', 'invoicing'),
698 698
                         'type' => 'checkbox',
699 699
                         'std'  => ''
700 700
                     ),
@@ -702,80 +702,80 @@  discard block
 block discarded – undo
702 702
                 'fields' => array(
703 703
                     'fields_settings' => array(
704 704
                         'id'   => 'fields_settings',
705
-                        'name' => '<h3>' . __( 'Address Fields', 'invoicing' ) . '</h3>',
706
-                        'desc' => __( 'Tick fields which are mandatory in invoice address fields.', 'invoicing' ),
705
+                        'name' => '<h3>' . __('Address Fields', 'invoicing') . '</h3>',
706
+                        'desc' => __('Tick fields which are mandatory in invoice address fields.', 'invoicing'),
707 707
                         'type' => 'header',
708 708
                     ),
709 709
                     'fname_mandatory' => array(
710 710
                         'id'   => 'fname_mandatory',
711
-                        'name' => __( 'First Name', 'invoicing' ),
711
+                        'name' => __('First Name', 'invoicing'),
712 712
                         'type' => 'checkbox',
713 713
                         'std'  => true,
714 714
                     ),
715 715
                     'lname_mandatory' => array(
716 716
                         'id'   => 'lname_mandatory',
717
-                        'name' => __( 'Last Name', 'invoicing' ),
717
+                        'name' => __('Last Name', 'invoicing'),
718 718
                         'type' => 'checkbox',
719 719
                         'std'  => true,
720 720
                     ),
721 721
                     'address_mandatory' => array(
722 722
                         'id'   => 'address_mandatory',
723
-                        'name' => __( 'Address', 'invoicing' ),
723
+                        'name' => __('Address', 'invoicing'),
724 724
                         'type' => 'checkbox',
725 725
                         'std'  => true,
726 726
                     ),
727 727
                     'city_mandatory' => array(
728 728
                         'id'   => 'city_mandatory',
729
-                        'name' => __( 'City', 'invoicing' ),
729
+                        'name' => __('City', 'invoicing'),
730 730
                         'type' => 'checkbox',
731 731
                         'std'  => true,
732 732
                     ),
733 733
                     'country_mandatory' => array(
734 734
                         'id'   => 'country_mandatory',
735
-                        'name' => __( 'Country', 'invoicing' ),
735
+                        'name' => __('Country', 'invoicing'),
736 736
                         'type' => 'checkbox',
737 737
                         'std'  => true,
738 738
                     ),
739 739
                     'state_mandatory' => array(
740 740
                         'id'   => 'state_mandatory',
741
-                        'name' => __( 'State / Province', 'invoicing' ),
741
+                        'name' => __('State / Province', 'invoicing'),
742 742
                         'type' => 'checkbox',
743 743
                         'std'  => true,
744 744
                     ),
745 745
                     'zip_mandatory' => array(
746 746
                         'id'   => 'zip_mandatory',
747
-                        'name' => __( 'ZIP / Postcode', 'invoicing' ),
747
+                        'name' => __('ZIP / Postcode', 'invoicing'),
748 748
                         'type' => 'checkbox',
749 749
                         'std'  => true,
750 750
                     ),
751 751
                     'phone_mandatory' => array(
752 752
                         'id'   => 'phone_mandatory',
753
-                        'name' => __( 'Phone Number', 'invoicing' ),
753
+                        'name' => __('Phone Number', 'invoicing'),
754 754
                         'type' => 'checkbox',
755 755
                         'std'  => true,
756 756
                     ),
757 757
                     'force_show_company' => array(
758 758
                         'id'   => 'force_show_company',
759
-                        'name' => __( 'Force show company name at checkout.', 'invoicing' ),
759
+                        'name' => __('Force show company name at checkout.', 'invoicing'),
760 760
                         'type' => 'checkbox',
761 761
                         'std'  => false,
762 762
                     ),
763 763
                     'address_autofill_settings' => array(
764 764
                         'id'   => 'address_autofill_settings',
765
-                        'name' => '<h3>' . __( 'Google Address Auto Complete', 'invoicing' ) . '</h3>',
765
+                        'name' => '<h3>' . __('Google Address Auto Complete', 'invoicing') . '</h3>',
766 766
                         'type' => 'header',
767 767
                     ),
768 768
                     'address_autofill_active' => array(
769 769
                         'id'   => 'address_autofill_active',
770
-                        'name' => __( 'Enable/Disable', 'invoicing' ),
771
-                        'desc' => __( 'Enable google address auto complete', 'invoicing' ),
770
+                        'name' => __('Enable/Disable', 'invoicing'),
771
+                        'desc' => __('Enable google address auto complete', 'invoicing'),
772 772
                         'type' => 'checkbox',
773 773
                         'std'  => 0
774 774
                     ),
775 775
                     'address_autofill_api' => array(
776 776
                         'id' => 'address_autofill_api',
777
-                        'name' => __( 'Google Place API Key', 'invoicing' ),
778
-                        'desc' => wp_sprintf(__( 'Enter google place API key. For more information go to google place API %sdocumenation%s', 'invoicing' ), '<a href="https://developers.google.com/maps/documentation/javascript/places-autocomplete" target="_blank">', '</a>' ),
777
+                        'name' => __('Google Place API Key', 'invoicing'),
778
+                        'desc' => wp_sprintf(__('Enter google place API key. For more information go to google place API %sdocumenation%s', 'invoicing'), '<a href="https://developers.google.com/maps/documentation/javascript/places-autocomplete" target="_blank">', '</a>'),
779 779
                         'type' => 'text',
780 780
                         'size' => 'regular',
781 781
                         'std' => ''
@@ -784,13 +784,13 @@  discard block
 block discarded – undo
784 784
                 'custom-css' => array(
785 785
                     'css_settings' => array(
786 786
                         'id'   => 'css_settings',
787
-                        'name' => '<h3>' . __( 'Custom CSS', 'invoicing' ) . '</h3>',
787
+                        'name' => '<h3>' . __('Custom CSS', 'invoicing') . '</h3>',
788 788
                         'type' => 'header',
789 789
                     ),
790 790
                     'template_custom_css' => array(
791 791
                         'id' => 'template_custom_css',
792
-                        'name' => __( 'Invoice Template CSS', 'invoicing' ),
793
-                        'desc' => __( 'Add CSS to modify appearance of the print invoice page.', 'invoicing' ),
792
+                        'name' => __('Invoice Template CSS', 'invoicing'),
793
+                        'desc' => __('Add CSS to modify appearance of the print invoice page.', 'invoicing'),
794 794
                         'type' => 'textarea',
795 795
                         'class'=> 'regular-text',
796 796
                         'rows' => 10,
@@ -804,8 +804,8 @@  discard block
 block discarded – undo
804 804
                 'main' => array(
805 805
                     'tool_settings' => array(
806 806
                         'id'   => 'tool_settings',
807
-                        'name' => '<h3>' . __( 'Diagnostic Tools', 'invoicing' ) . '</h3>',
808
-                        'desc' => __( 'Invoicing diagnostic tools', 'invoicing' ),
807
+                        'name' => '<h3>' . __('Diagnostic Tools', 'invoicing') . '</h3>',
808
+                        'desc' => __('Invoicing diagnostic tools', 'invoicing'),
809 809
                         'type' => 'tools',
810 810
                     ),
811 811
                 ),
@@ -813,136 +813,136 @@  discard block
 block discarded – undo
813 813
         )
814 814
     );
815 815
 
816
-    return apply_filters( 'wpinv_registered_settings', $wpinv_settings );
816
+    return apply_filters('wpinv_registered_settings', $wpinv_settings);
817 817
 }
818 818
 
819
-function wpinv_settings_sanitize( $input = array() ) {
819
+function wpinv_settings_sanitize($input = array()) {
820 820
     global $wpinv_options;
821 821
 
822
-    if ( empty( wp_get_raw_referer() ) ) {
822
+    if (empty(wp_get_raw_referer())) {
823 823
         return $input;
824 824
     }
825 825
 
826
-    wp_parse_str( wp_get_raw_referer(), $referrer );
826
+    wp_parse_str(wp_get_raw_referer(), $referrer);
827 827
 
828 828
     $settings = wpinv_get_registered_settings();
829
-    $tab      = isset( $referrer['tab'] ) ? $referrer['tab'] : 'general';
830
-    $section  = isset( $referrer['section'] ) ? $referrer['section'] : 'main';
829
+    $tab      = isset($referrer['tab']) ? $referrer['tab'] : 'general';
830
+    $section  = isset($referrer['section']) ? $referrer['section'] : 'main';
831 831
 
832 832
     $input = $input ? $input : array();
833
-    $input = apply_filters( 'wpinv_settings_tab_' . $tab . '_sanitize', $input );
834
-    $input = apply_filters( 'wpinv_settings_' . $tab . '-' . $section . '_sanitize', $input );
833
+    $input = apply_filters('wpinv_settings_tab_' . $tab . '_sanitize', $input);
834
+    $input = apply_filters('wpinv_settings_' . $tab . '-' . $section . '_sanitize', $input);
835 835
 
836 836
     // Loop through each setting being saved and pass it through a sanitization filter
837
-    foreach ( $input as $key => $value ) {
837
+    foreach ($input as $key => $value) {
838 838
         // Get the setting type (checkbox, select, etc)
839
-        $type = isset( $settings[ $tab ][ $key ]['type'] ) ? $settings[ $tab ][ $key ]['type'] : false;
839
+        $type = isset($settings[$tab][$key]['type']) ? $settings[$tab][$key]['type'] : false;
840 840
 
841
-        if ( $type ) {
841
+        if ($type) {
842 842
             // Field type specific filter
843
-            $input[$key] = apply_filters( 'wpinv_settings_sanitize_' . $type, $value, $key );
843
+            $input[$key] = apply_filters('wpinv_settings_sanitize_' . $type, $value, $key);
844 844
         }
845 845
 
846 846
         // General filter
847
-        $input[ $key ] = apply_filters( 'wpinv_settings_sanitize', $input[ $key ], $key );
847
+        $input[$key] = apply_filters('wpinv_settings_sanitize', $input[$key], $key);
848 848
     }
849 849
 
850 850
     // Loop through the whitelist and unset any that are empty for the tab being saved
851
-    $main_settings    = $section == 'main' ? $settings[ $tab ] : array(); // Check for extensions that aren't using new sections
852
-    $section_settings = ! empty( $settings[ $tab ][ $section ] ) ? $settings[ $tab ][ $section ] : array();
851
+    $main_settings    = $section == 'main' ? $settings[$tab] : array(); // Check for extensions that aren't using new sections
852
+    $section_settings = !empty($settings[$tab][$section]) ? $settings[$tab][$section] : array();
853 853
 
854
-    $found_settings = array_merge( $main_settings, $section_settings );
854
+    $found_settings = array_merge($main_settings, $section_settings);
855 855
 
856
-    if ( ! empty( $found_settings ) ) {
857
-        foreach ( $found_settings as $key => $value ) {
856
+    if (!empty($found_settings)) {
857
+        foreach ($found_settings as $key => $value) {
858 858
 
859 859
             // settings used to have numeric keys, now they have keys that match the option ID. This ensures both methods work
860
-            if ( is_numeric( $key ) ) {
860
+            if (is_numeric($key)) {
861 861
                 $key = $value['id'];
862 862
             }
863 863
 
864
-            if ( empty( $input[ $key ] ) ) {
865
-                unset( $wpinv_options[ $key ] );
864
+            if (empty($input[$key])) {
865
+                unset($wpinv_options[$key]);
866 866
             }
867 867
         }
868 868
     }
869 869
 
870 870
     // Merge our new settings with the existing
871
-    $output = array_merge( $wpinv_options, $input );
871
+    $output = array_merge($wpinv_options, $input);
872 872
 
873
-    add_settings_error( 'wpinv-notices', '', __( 'Settings updated.', 'invoicing' ), 'updated' );
873
+    add_settings_error('wpinv-notices', '', __('Settings updated.', 'invoicing'), 'updated');
874 874
 
875 875
     return $output;
876 876
 }
877 877
 
878
-function wpinv_settings_sanitize_misc_accounting( $input ) {
878
+function wpinv_settings_sanitize_misc_accounting($input) {
879 879
     global $wpi_session;
880 880
 
881
-    if ( ! wpinv_current_user_can_manage_invoicing() ) {
881
+    if (!wpinv_current_user_can_manage_invoicing()) {
882 882
         return $input;
883 883
     }
884 884
 
885
-    if( ! empty( $input['enable_sequential'] ) && !wpinv_get_option( 'enable_sequential' ) ) {
885
+    if (!empty($input['enable_sequential']) && !wpinv_get_option('enable_sequential')) {
886 886
         // Shows an admin notice about upgrading previous order numbers
887
-        $wpi_session->set( 'upgrade_sequential', '1' );
887
+        $wpi_session->set('upgrade_sequential', '1');
888 888
     }
889 889
 
890 890
     return $input;
891 891
 }
892
-add_filter( 'wpinv_settings_misc-accounting_sanitize', 'wpinv_settings_sanitize_misc_accounting' );
892
+add_filter('wpinv_settings_misc-accounting_sanitize', 'wpinv_settings_sanitize_misc_accounting');
893 893
 
894
-function wpinv_settings_sanitize_tax_rates( $input ) {
895
-    if( ! wpinv_current_user_can_manage_invoicing() ) {
894
+function wpinv_settings_sanitize_tax_rates($input) {
895
+    if (!wpinv_current_user_can_manage_invoicing()) {
896 896
         return $input;
897 897
     }
898 898
 
899
-    $new_rates = !empty( $_POST['tax_rates'] ) ? array_values( $_POST['tax_rates'] ) : array();
899
+    $new_rates = !empty($_POST['tax_rates']) ? array_values($_POST['tax_rates']) : array();
900 900
 
901 901
     $tax_rates = array();
902 902
 
903
-    if ( !empty( $new_rates ) ) {
904
-        foreach ( $new_rates as $rate ) {
905
-            if ( isset( $rate['country'] ) && empty( $rate['country'] ) && empty( $rate['state'] ) ) {
903
+    if (!empty($new_rates)) {
904
+        foreach ($new_rates as $rate) {
905
+            if (isset($rate['country']) && empty($rate['country']) && empty($rate['state'])) {
906 906
                 continue;
907 907
             }
908 908
             
909
-            $rate['rate'] = wpinv_sanitize_amount( $rate['rate'], 4 );
909
+            $rate['rate'] = wpinv_sanitize_amount($rate['rate'], 4);
910 910
             
911 911
             $tax_rates[] = $rate;
912 912
         }
913 913
     }
914 914
 
915
-    update_option( 'wpinv_tax_rates', $tax_rates );
915
+    update_option('wpinv_tax_rates', $tax_rates);
916 916
 
917 917
     return $input;
918 918
 }
919
-add_filter( 'wpinv_settings_taxes-rates_sanitize', 'wpinv_settings_sanitize_tax_rates' );
919
+add_filter('wpinv_settings_taxes-rates_sanitize', 'wpinv_settings_sanitize_tax_rates');
920 920
 
921
-function wpinv_sanitize_text_field( $input ) {
922
-    return trim( $input );
921
+function wpinv_sanitize_text_field($input) {
922
+    return trim($input);
923 923
 }
924
-add_filter( 'wpinv_settings_sanitize_text', 'wpinv_sanitize_text_field' );
924
+add_filter('wpinv_settings_sanitize_text', 'wpinv_sanitize_text_field');
925 925
 
926 926
 function wpinv_get_settings_tabs() {
927 927
     $tabs             = array();
928
-    $tabs['general']  = __( 'General', 'invoicing' );
929
-    $tabs['gateways'] = __( 'Payment Gateways', 'invoicing' );
930
-    $tabs['taxes']    = __( 'Taxes', 'invoicing' );
931
-    $tabs['emails']   = __( 'Emails', 'invoicing' );
932
-    $tabs['privacy']  = __( 'Privacy', 'invoicing' );
933
-    $tabs['misc']     = __( 'Misc', 'invoicing' );
934
-    $tabs['tools']    = __( 'Tools', 'invoicing' );
935
-
936
-    return apply_filters( 'wpinv_settings_tabs', $tabs );
928
+    $tabs['general']  = __('General', 'invoicing');
929
+    $tabs['gateways'] = __('Payment Gateways', 'invoicing');
930
+    $tabs['taxes']    = __('Taxes', 'invoicing');
931
+    $tabs['emails']   = __('Emails', 'invoicing');
932
+    $tabs['privacy']  = __('Privacy', 'invoicing');
933
+    $tabs['misc']     = __('Misc', 'invoicing');
934
+    $tabs['tools']    = __('Tools', 'invoicing');
935
+
936
+    return apply_filters('wpinv_settings_tabs', $tabs);
937 937
 }
938 938
 
939
-function wpinv_get_settings_tab_sections( $tab = false ) {
939
+function wpinv_get_settings_tab_sections($tab = false) {
940 940
     $tabs     = false;
941 941
     $sections = wpinv_get_registered_settings_sections();
942 942
 
943
-    if( $tab && ! empty( $sections[ $tab ] ) ) {
944
-        $tabs = $sections[ $tab ];
945
-    } else if ( $tab ) {
943
+    if ($tab && !empty($sections[$tab])) {
944
+        $tabs = $sections[$tab];
945
+    } else if ($tab) {
946 946
         $tabs = false;
947 947
     }
948 948
 
@@ -952,143 +952,143 @@  discard block
 block discarded – undo
952 952
 function wpinv_get_registered_settings_sections() {
953 953
     static $sections = false;
954 954
 
955
-    if ( false !== $sections ) {
955
+    if (false !== $sections) {
956 956
         return $sections;
957 957
     }
958 958
 
959 959
     $sections = array(
960
-        'general' => apply_filters( 'wpinv_settings_sections_general', array(
961
-            'main' => __( 'General Settings', 'invoicing' ),
962
-            'currency_section' => __( 'Currency Settings', 'invoicing' ),
963
-            'labels' => __( 'Label Texts', 'invoicing' ),
964
-        ) ),
965
-        'gateways' => apply_filters( 'wpinv_settings_sections_gateways', array(
966
-            'main' => __( 'Gateway Settings', 'invoicing' ),
967
-        ) ),
968
-        'taxes' => apply_filters( 'wpinv_settings_sections_taxes', array(
969
-            'main' => __( 'Tax Settings', 'invoicing' ),
970
-            'rates' => __( 'Tax Rates', 'invoicing' ),
971
-        ) ),
972
-        'emails' => apply_filters( 'wpinv_settings_sections_emails', array(
973
-            'main' => __( 'Email Settings', 'invoicing' ),
974
-        ) ),
975
-        'privacy' => apply_filters( 'wpinv_settings_sections_privacy', array(
976
-            'main' => __( 'Privacy policy', 'invoicing' ),
977
-        ) ),
978
-        'misc' => apply_filters( 'wpinv_settings_sections_misc', array(
979
-            'main' => __( 'Miscellaneous', 'invoicing' ),
980
-            'fields' => __( 'Fields Settings', 'invoicing' ),
981
-            'custom-css' => __( 'Custom CSS', 'invoicing' ),
982
-        ) ),
983
-        'tools' => apply_filters( 'wpinv_settings_sections_tools', array(
984
-            'main' => __( 'Diagnostic Tools', 'invoicing' ),
985
-        ) ),
960
+        'general' => apply_filters('wpinv_settings_sections_general', array(
961
+            'main' => __('General Settings', 'invoicing'),
962
+            'currency_section' => __('Currency Settings', 'invoicing'),
963
+            'labels' => __('Label Texts', 'invoicing'),
964
+        )),
965
+        'gateways' => apply_filters('wpinv_settings_sections_gateways', array(
966
+            'main' => __('Gateway Settings', 'invoicing'),
967
+        )),
968
+        'taxes' => apply_filters('wpinv_settings_sections_taxes', array(
969
+            'main' => __('Tax Settings', 'invoicing'),
970
+            'rates' => __('Tax Rates', 'invoicing'),
971
+        )),
972
+        'emails' => apply_filters('wpinv_settings_sections_emails', array(
973
+            'main' => __('Email Settings', 'invoicing'),
974
+        )),
975
+        'privacy' => apply_filters('wpinv_settings_sections_privacy', array(
976
+            'main' => __('Privacy policy', 'invoicing'),
977
+        )),
978
+        'misc' => apply_filters('wpinv_settings_sections_misc', array(
979
+            'main' => __('Miscellaneous', 'invoicing'),
980
+            'fields' => __('Fields Settings', 'invoicing'),
981
+            'custom-css' => __('Custom CSS', 'invoicing'),
982
+        )),
983
+        'tools' => apply_filters('wpinv_settings_sections_tools', array(
984
+            'main' => __('Diagnostic Tools', 'invoicing'),
985
+        )),
986 986
     );
987 987
 
988
-    $sections = apply_filters( 'wpinv_settings_sections', $sections );
988
+    $sections = apply_filters('wpinv_settings_sections', $sections);
989 989
 
990 990
     return $sections;
991 991
 }
992 992
 
993
-function wpinv_get_pages( $with_slug = false, $default_label = NULL ) {
993
+function wpinv_get_pages($with_slug = false, $default_label = NULL) {
994 994
 	$pages_options = array();
995 995
 
996
-	if( $default_label !== NULL && $default_label !== false ) {
997
-		$pages_options = array( '' => $default_label ); // Blank option
996
+	if ($default_label !== NULL && $default_label !== false) {
997
+		$pages_options = array('' => $default_label); // Blank option
998 998
 	}
999 999
 
1000 1000
 	$pages = get_pages();
1001
-	if ( $pages ) {
1002
-		foreach ( $pages as $page ) {
1001
+	if ($pages) {
1002
+		foreach ($pages as $page) {
1003 1003
 			$title = $with_slug ? $page->post_title . ' (' . $page->post_name . ')' : $page->post_title;
1004
-            $pages_options[ $page->ID ] = $title;
1004
+            $pages_options[$page->ID] = $title;
1005 1005
 		}
1006 1006
 	}
1007 1007
 
1008 1008
 	return $pages_options;
1009 1009
 }
1010 1010
 
1011
-function wpinv_header_callback( $args ) {
1012
-	if ( !empty( $args['desc'] ) ) {
1011
+function wpinv_header_callback($args) {
1012
+	if (!empty($args['desc'])) {
1013 1013
         echo $args['desc'];
1014 1014
     }
1015 1015
 }
1016 1016
 
1017
-function wpinv_hidden_callback( $args ) {
1017
+function wpinv_hidden_callback($args) {
1018 1018
 	global $wpinv_options;
1019 1019
 
1020
-	if ( isset( $args['set_value'] ) ) {
1020
+	if (isset($args['set_value'])) {
1021 1021
 		$value = $args['set_value'];
1022
-	} elseif ( isset( $wpinv_options[ $args['id'] ] ) ) {
1023
-		$value = $wpinv_options[ $args['id'] ];
1022
+	} elseif (isset($wpinv_options[$args['id']])) {
1023
+		$value = $wpinv_options[$args['id']];
1024 1024
 	} else {
1025
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1025
+		$value = isset($args['std']) ? $args['std'] : '';
1026 1026
 	}
1027 1027
 
1028
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1028
+	if (isset($args['faux']) && true === $args['faux']) {
1029 1029
 		$args['readonly'] = true;
1030
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1030
+		$value = isset($args['std']) ? $args['std'] : '';
1031 1031
 		$name  = '';
1032 1032
 	} else {
1033
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1033
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1034 1034
 	}
1035 1035
 
1036
-	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key( $args['id'] ) . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '" />';
1036
+	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key($args['id']) . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '" />';
1037 1037
     
1038 1038
 	echo $html;
1039 1039
 }
1040 1040
 
1041
-function wpinv_checkbox_callback( $args ) {
1041
+function wpinv_checkbox_callback($args) {
1042 1042
 	global $wpinv_options;
1043 1043
     
1044
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1044
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1045 1045
 
1046
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1046
+	if (isset($args['faux']) && true === $args['faux']) {
1047 1047
 		$name = '';
1048 1048
 	} else {
1049 1049
 		$name = 'name="wpinv_settings[' . $sanitize_id . ']"';
1050 1050
 	}
1051 1051
 
1052
-	$checked = isset( $wpinv_options[ $args['id'] ] ) ? checked( 1, $wpinv_options[ $args['id'] ], false ) : '';
1052
+	$checked = isset($wpinv_options[$args['id']]) ? checked(1, $wpinv_options[$args['id']], false) : '';
1053 1053
 	$html = '<input type="checkbox" id="wpinv_settings[' . $sanitize_id . ']"' . $name . ' value="1" ' . $checked . '/>';
1054
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1054
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1055 1055
 
1056 1056
 	echo $html;
1057 1057
 }
1058 1058
 
1059
-function wpinv_multicheck_callback( $args ) {
1059
+function wpinv_multicheck_callback($args) {
1060 1060
 	global $wpinv_options;
1061 1061
 
1062
-	$sanitize_id = wpinv_sanitize_key( $args['id'] );
1063
-	$class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1062
+	$sanitize_id = wpinv_sanitize_key($args['id']);
1063
+	$class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1064 1064
 
1065
-	if ( ! empty( $args['options'] ) ) {
1065
+	if (!empty($args['options'])) {
1066 1066
 		echo '<div class="wpi-mcheck-rows wpi-mcheck-' . $sanitize_id . $class . '">';
1067
-        foreach( $args['options'] as $key => $option ):
1068
-			$sanitize_key = wpinv_sanitize_key( $key );
1069
-			if ( isset( $wpinv_options[$args['id']][$sanitize_key] ) ) { 
1067
+        foreach ($args['options'] as $key => $option):
1068
+			$sanitize_key = wpinv_sanitize_key($key);
1069
+			if (isset($wpinv_options[$args['id']][$sanitize_key])) { 
1070 1070
 				$enabled = $sanitize_key;
1071 1071
 			} else { 
1072 1072
 				$enabled = NULL; 
1073 1073
 			}
1074
-			echo '<div class="wpi-mcheck-row"><input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $sanitize_key ) . '" ' . checked( $sanitize_key, $enabled, false ) . '/>&nbsp;';
1075
-			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post( $option ) . '</label></div>';
1074
+			echo '<div class="wpi-mcheck-row"><input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr($sanitize_key) . '" ' . checked($sanitize_key, $enabled, false) . '/>&nbsp;';
1075
+			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post($option) . '</label></div>';
1076 1076
 		endforeach;
1077 1077
 		echo '</div>';
1078 1078
 		echo '<p class="description">' . $args['desc'] . '</p>';
1079 1079
 	}
1080 1080
 }
1081 1081
 
1082
-function wpinv_payment_icons_callback( $args ) {
1082
+function wpinv_payment_icons_callback($args) {
1083 1083
 	global $wpinv_options;
1084 1084
     
1085
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1085
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1086 1086
 
1087
-	if ( ! empty( $args['options'] ) ) {
1088
-		foreach( $args['options'] as $key => $option ) {
1089
-            $sanitize_key = wpinv_sanitize_key( $key );
1087
+	if (!empty($args['options'])) {
1088
+		foreach ($args['options'] as $key => $option) {
1089
+            $sanitize_key = wpinv_sanitize_key($key);
1090 1090
             
1091
-			if( isset( $wpinv_options[$args['id']][$key] ) ) {
1091
+			if (isset($wpinv_options[$args['id']][$key])) {
1092 1092
 				$enabled = $option;
1093 1093
 			} else {
1094 1094
 				$enabled = NULL;
@@ -1096,197 +1096,197 @@  discard block
 block discarded – undo
1096 1096
 
1097 1097
 			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" style="margin-right:10px;line-height:16px;height:16px;display:inline-block;">';
1098 1098
 
1099
-				echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $option ) . '" ' . checked( $option, $enabled, false ) . '/>&nbsp;';
1099
+				echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr($option) . '" ' . checked($option, $enabled, false) . '/>&nbsp;';
1100 1100
 
1101
-				if ( wpinv_string_is_image_url( $key ) ) {
1102
-					echo '<img class="payment-icon" src="' . esc_url( $key ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1101
+				if (wpinv_string_is_image_url($key)) {
1102
+					echo '<img class="payment-icon" src="' . esc_url($key) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1103 1103
 				} else {
1104
-					$card = strtolower( str_replace( ' ', '', $option ) );
1104
+					$card = strtolower(str_replace(' ', '', $option));
1105 1105
 
1106
-					if ( has_filter( 'wpinv_accepted_payment_' . $card . '_image' ) ) {
1107
-						$image = apply_filters( 'wpinv_accepted_payment_' . $card . '_image', '' );
1106
+					if (has_filter('wpinv_accepted_payment_' . $card . '_image')) {
1107
+						$image = apply_filters('wpinv_accepted_payment_' . $card . '_image', '');
1108 1108
 					} else {
1109
-						$image       = wpinv_locate_template( 'images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false );
1109
+						$image       = wpinv_locate_template('images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false);
1110 1110
 						$content_dir = WP_CONTENT_DIR;
1111 1111
 
1112
-						if ( function_exists( 'wp_normalize_path' ) ) {
1112
+						if (function_exists('wp_normalize_path')) {
1113 1113
 							// Replaces backslashes with forward slashes for Windows systems
1114
-							$image = wp_normalize_path( $image );
1115
-							$content_dir = wp_normalize_path( $content_dir );
1114
+							$image = wp_normalize_path($image);
1115
+							$content_dir = wp_normalize_path($content_dir);
1116 1116
 						}
1117 1117
 
1118
-						$image = str_replace( $content_dir, content_url(), $image );
1118
+						$image = str_replace($content_dir, content_url(), $image);
1119 1119
 					}
1120 1120
 
1121
-					echo '<img class="payment-icon" src="' . esc_url( $image ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1121
+					echo '<img class="payment-icon" src="' . esc_url($image) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1122 1122
 				}
1123 1123
 			echo $option . '</label>';
1124 1124
 		}
1125
-		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post( $args['desc'] ) . '</p>';
1125
+		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post($args['desc']) . '</p>';
1126 1126
 	}
1127 1127
 }
1128 1128
 
1129
-function wpinv_radio_callback( $args ) {
1129
+function wpinv_radio_callback($args) {
1130 1130
 	global $wpinv_options;
1131 1131
     
1132
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1132
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1133 1133
     
1134
-    foreach ( $args['options'] as $key => $option ) :
1135
-		$sanitize_key = wpinv_sanitize_key( $key );
1134
+    foreach ($args['options'] as $key => $option) :
1135
+		$sanitize_key = wpinv_sanitize_key($key);
1136 1136
         
1137 1137
         $checked = false;
1138 1138
 
1139
-		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1139
+		if (isset($wpinv_options[$args['id']]) && $wpinv_options[$args['id']] == $key)
1140 1140
 			$checked = true;
1141
-		elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1141
+		elseif (isset($args['std']) && $args['std'] == $key && !isset($wpinv_options[$args['id']]))
1142 1142
 			$checked = true;
1143 1143
 
1144 1144
 		echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1145
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
1145
+		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html($option) . '</label><br/>';
1146 1146
 	endforeach;
1147 1147
 
1148
-	echo '<p class="description">' . wp_kses_post( $args['desc'] ) . '</p>';
1148
+	echo '<p class="description">' . wp_kses_post($args['desc']) . '</p>';
1149 1149
 }
1150 1150
 
1151
-function wpinv_gateways_callback( $args ) {
1151
+function wpinv_gateways_callback($args) {
1152 1152
 	global $wpinv_options;
1153 1153
     
1154
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1154
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1155 1155
 
1156
-	foreach ( $args['options'] as $key => $option ) :
1157
-		$sanitize_key = wpinv_sanitize_key( $key );
1156
+	foreach ($args['options'] as $key => $option) :
1157
+		$sanitize_key = wpinv_sanitize_key($key);
1158 1158
         
1159
-        if ( isset( $wpinv_options['gateways'][ $key ] ) )
1159
+        if (isset($wpinv_options['gateways'][$key]))
1160 1160
 			$enabled = '1';
1161 1161
 		else
1162 1162
 			$enabled = null;
1163 1163
 
1164
-		echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1165
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
1164
+		echo '<input name="wpinv_settings[' . esc_attr($args['id']) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1165
+		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html($option['admin_label']) . '</label><br/>';
1166 1166
 	endforeach;
1167 1167
 }
1168 1168
 
1169 1169
 function wpinv_gateway_select_callback($args) {
1170 1170
 	global $wpinv_options;
1171 1171
     
1172
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1173
-    $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1172
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1173
+    $class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1174 1174
 
1175
-	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'" >';
1175
+	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="' . $class . '" >';
1176 1176
 
1177
-	foreach ( $args['options'] as $key => $option ) :
1178
-		if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1179
-            $selected = selected( $key, $args['selected'], false );
1177
+	foreach ($args['options'] as $key => $option) :
1178
+		if (isset($args['selected']) && $args['selected'] !== null && $args['selected'] !== false) {
1179
+            $selected = selected($key, $args['selected'], false);
1180 1180
         } else {
1181
-            $selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $key, $wpinv_options[$args['id']], false ) : '';
1181
+            $selected = isset($wpinv_options[$args['id']]) ? selected($key, $wpinv_options[$args['id']], false) : '';
1182 1182
         }
1183
-		echo '<option value="' . wpinv_sanitize_key( $key ) . '"' . $selected . '>' . esc_html( $option['admin_label'] ) . '</option>';
1183
+		echo '<option value="' . wpinv_sanitize_key($key) . '"' . $selected . '>' . esc_html($option['admin_label']) . '</option>';
1184 1184
 	endforeach;
1185 1185
 
1186 1186
 	echo '</select>';
1187
-	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1187
+	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1188 1188
 }
1189 1189
 
1190
-function wpinv_text_callback( $args ) {
1190
+function wpinv_text_callback($args) {
1191 1191
 	global $wpinv_options;
1192 1192
     
1193
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1193
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1194 1194
 
1195
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1196
-		$value = $wpinv_options[ $args['id'] ];
1195
+	if (isset($wpinv_options[$args['id']])) {
1196
+		$value = $wpinv_options[$args['id']];
1197 1197
 	} else {
1198
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1198
+		$value = isset($args['std']) ? $args['std'] : '';
1199 1199
 	}
1200 1200
 
1201
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1201
+	if (isset($args['faux']) && true === $args['faux']) {
1202 1202
 		$args['readonly'] = true;
1203
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1203
+		$value = isset($args['std']) ? $args['std'] : '';
1204 1204
 		$name  = '';
1205 1205
 	} else {
1206
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1206
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1207 1207
 	}
1208
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1208
+	$class = !empty($args['class']) ? sanitize_html_class($args['class']) : '';
1209 1209
 
1210 1210
 	$readonly = $args['readonly'] === true ? ' readonly="readonly"' : '';
1211
-	$size     = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1212
-	$html     = '<input type="text" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"' . $readonly . '/>';
1213
-	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1211
+	$size     = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1212
+	$html     = '<input type="text" class="' . sanitize_html_class($size) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '"' . $readonly . '/>';
1213
+	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1214 1214
 
1215 1215
 	echo $html;
1216 1216
 }
1217 1217
 
1218
-function wpinv_number_callback( $args ) {
1218
+function wpinv_number_callback($args) {
1219 1219
 	global $wpinv_options;
1220 1220
     
1221
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1221
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1222 1222
 
1223
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1224
-		$value = $wpinv_options[ $args['id'] ];
1223
+	if (isset($wpinv_options[$args['id']])) {
1224
+		$value = $wpinv_options[$args['id']];
1225 1225
 	} else {
1226
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1226
+		$value = isset($args['std']) ? $args['std'] : '';
1227 1227
 	}
1228 1228
 
1229
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1229
+	if (isset($args['faux']) && true === $args['faux']) {
1230 1230
 		$args['readonly'] = true;
1231
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1231
+		$value = isset($args['std']) ? $args['std'] : '';
1232 1232
 		$name  = '';
1233 1233
 	} else {
1234
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1234
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1235 1235
 	}
1236 1236
 
1237
-	$max  = isset( $args['max'] ) ? $args['max'] : 999999;
1238
-	$min  = isset( $args['min'] ) ? $args['min'] : 0;
1239
-	$step = isset( $args['step'] ) ? $args['step'] : 1;
1240
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1237
+	$max  = isset($args['max']) ? $args['max'] : 999999;
1238
+	$min  = isset($args['min']) ? $args['min'] : 0;
1239
+	$step = isset($args['step']) ? $args['step'] : 1;
1240
+	$class = !empty($args['class']) ? sanitize_html_class($args['class']) : '';
1241 1241
 
1242
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1243
-	$html = '<input type="number" step="' . esc_attr( $step ) . '" max="' . esc_attr( $max ) . '" min="' . esc_attr( $min ) . '" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1244
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1242
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1243
+	$html = '<input type="number" step="' . esc_attr($step) . '" max="' . esc_attr($max) . '" min="' . esc_attr($min) . '" class="' . sanitize_html_class($size) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '"/>';
1244
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1245 1245
 
1246 1246
 	echo $html;
1247 1247
 }
1248 1248
 
1249
-function wpinv_textarea_callback( $args ) {
1249
+function wpinv_textarea_callback($args) {
1250 1250
 	global $wpinv_options;
1251 1251
     
1252
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1252
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1253 1253
 
1254
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1255
-		$value = $wpinv_options[ $args['id'] ];
1254
+	if (isset($wpinv_options[$args['id']])) {
1255
+		$value = $wpinv_options[$args['id']];
1256 1256
 	} else {
1257
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1257
+		$value = isset($args['std']) ? $args['std'] : '';
1258 1258
 	}
1259 1259
     
1260
-    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1261
-    $class = ( isset( $args['class'] ) && ! is_null( $args['class'] ) ) ? $args['class'] : 'large-text';
1260
+    $size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1261
+    $class = (isset($args['class']) && !is_null($args['class'])) ? $args['class'] : 'large-text';
1262 1262
 
1263
-	$html = '<textarea class="' . sanitize_html_class( $class ) . ' txtarea-' . sanitize_html_class( $size ) . ' wpi-' . esc_attr( sanitize_html_class( $sanitize_id ) ) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1264
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1263
+	$html = '<textarea class="' . sanitize_html_class($class) . ' txtarea-' . sanitize_html_class($size) . ' wpi-' . esc_attr(sanitize_html_class($sanitize_id)) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']">' . esc_textarea(stripslashes($value)) . '</textarea>';
1264
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1265 1265
 
1266 1266
 	echo $html;
1267 1267
 }
1268 1268
 
1269
-function wpinv_password_callback( $args ) {
1269
+function wpinv_password_callback($args) {
1270 1270
 	global $wpinv_options;
1271 1271
     
1272
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1272
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1273 1273
 
1274
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1275
-		$value = $wpinv_options[ $args['id'] ];
1274
+	if (isset($wpinv_options[$args['id']])) {
1275
+		$value = $wpinv_options[$args['id']];
1276 1276
 	} else {
1277
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1277
+		$value = isset($args['std']) ? $args['std'] : '';
1278 1278
 	}
1279 1279
 
1280
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1281
-	$html = '<input type="password" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '"/>';
1282
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1280
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1281
+	$html = '<input type="password" class="' . sanitize_html_class($size) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr($value) . '"/>';
1282
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1283 1283
 
1284 1284
 	echo $html;
1285 1285
 }
1286 1286
 
1287 1287
 function wpinv_missing_callback($args) {
1288 1288
 	printf(
1289
-		__( 'The callback function used for the %s setting is missing.', 'invoicing' ),
1289
+		__('The callback function used for the %s setting is missing.', 'invoicing'),
1290 1290
 		'<strong>' . $args['id'] . '</strong>'
1291 1291
 	);
1292 1292
 }
@@ -1294,133 +1294,133 @@  discard block
 block discarded – undo
1294 1294
 function wpinv_select_callback($args) {
1295 1295
 	global $wpinv_options;
1296 1296
     
1297
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1297
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1298 1298
 
1299
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1300
-		$value = $wpinv_options[ $args['id'] ];
1299
+	if (isset($wpinv_options[$args['id']])) {
1300
+		$value = $wpinv_options[$args['id']];
1301 1301
 	} else {
1302
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1302
+		$value = isset($args['std']) ? $args['std'] : '';
1303 1303
 	}
1304 1304
     
1305
-    if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1305
+    if (isset($args['selected']) && $args['selected'] !== null && $args['selected'] !== false) {
1306 1306
         $value = $args['selected'];
1307 1307
     }
1308 1308
 
1309
-	if ( isset( $args['placeholder'] ) ) {
1309
+	if (isset($args['placeholder'])) {
1310 1310
 		$placeholder = $args['placeholder'];
1311 1311
 	} else {
1312 1312
 		$placeholder = '';
1313 1313
 	}
1314 1314
     
1315
-    if( !empty( $args['onchange'] ) ) {
1316
-        $onchange = ' onchange="' . esc_attr( $args['onchange'] ) . '"';
1315
+    if (!empty($args['onchange'])) {
1316
+        $onchange = ' onchange="' . esc_attr($args['onchange']) . '"';
1317 1317
     } else {
1318 1318
         $onchange = '';
1319 1319
     }
1320 1320
 
1321
-    $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1321
+    $class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1322 1322
 
1323
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'"  name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" data-placeholder="' . esc_html( $placeholder ) . '"' . $onchange . ' />';
1323
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="' . $class . '"  name="wpinv_settings[' . esc_attr($args['id']) . ']" data-placeholder="' . esc_html($placeholder) . '"' . $onchange . ' />';
1324 1324
 
1325
-	foreach ( $args['options'] as $option => $name ) {
1326
-		$selected = selected( $option, $value, false );
1327
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1325
+	foreach ($args['options'] as $option => $name) {
1326
+		$selected = selected($option, $value, false);
1327
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($name) . '</option>';
1328 1328
 	}
1329 1329
 
1330 1330
 	$html .= '</select>';
1331
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1331
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1332 1332
 
1333 1333
 	echo $html;
1334 1334
 }
1335 1335
 
1336
-function wpinv_color_select_callback( $args ) {
1336
+function wpinv_color_select_callback($args) {
1337 1337
 	global $wpinv_options;
1338 1338
     
1339
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1339
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1340 1340
 
1341
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1342
-		$value = $wpinv_options[ $args['id'] ];
1341
+	if (isset($wpinv_options[$args['id']])) {
1342
+		$value = $wpinv_options[$args['id']];
1343 1343
 	} else {
1344
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1344
+		$value = isset($args['std']) ? $args['std'] : '';
1345 1345
 	}
1346 1346
 
1347
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"/>';
1347
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']"/>';
1348 1348
 
1349
-	foreach ( $args['options'] as $option => $color ) {
1350
-		$selected = selected( $option, $value, false );
1351
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $color['label'] ) . '</option>';
1349
+	foreach ($args['options'] as $option => $color) {
1350
+		$selected = selected($option, $value, false);
1351
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($color['label']) . '</option>';
1352 1352
 	}
1353 1353
 
1354 1354
 	$html .= '</select>';
1355
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1355
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1356 1356
 
1357 1357
 	echo $html;
1358 1358
 }
1359 1359
 
1360
-function wpinv_rich_editor_callback( $args ) {
1360
+function wpinv_rich_editor_callback($args) {
1361 1361
 	global $wpinv_options, $wp_version;
1362 1362
     
1363
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1363
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1364 1364
 
1365
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1366
-		$value = $wpinv_options[ $args['id'] ];
1365
+	if (isset($wpinv_options[$args['id']])) {
1366
+		$value = $wpinv_options[$args['id']];
1367 1367
 
1368
-		if( empty( $args['allow_blank'] ) && empty( $value ) ) {
1369
-			$value = isset( $args['std'] ) ? $args['std'] : '';
1368
+		if (empty($args['allow_blank']) && empty($value)) {
1369
+			$value = isset($args['std']) ? $args['std'] : '';
1370 1370
 		}
1371 1371
 	} else {
1372
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1372
+		$value = isset($args['std']) ? $args['std'] : '';
1373 1373
 	}
1374 1374
 
1375
-	$rows = isset( $args['size'] ) ? $args['size'] : 20;
1375
+	$rows = isset($args['size']) ? $args['size'] : 20;
1376 1376
 
1377
-	if ( $wp_version >= 3.3 && function_exists( 'wp_editor' ) ) {
1377
+	if ($wp_version >= 3.3 && function_exists('wp_editor')) {
1378 1378
 		ob_start();
1379
-		wp_editor( stripslashes( $value ), 'wpinv_settings_' . esc_attr( $args['id'] ), array( 'textarea_name' => 'wpinv_settings[' . esc_attr( $args['id'] ) . ']', 'textarea_rows' => absint( $rows ), 'media_buttons' => false ) );
1379
+		wp_editor(stripslashes($value), 'wpinv_settings_' . esc_attr($args['id']), array('textarea_name' => 'wpinv_settings[' . esc_attr($args['id']) . ']', 'textarea_rows' => absint($rows), 'media_buttons' => false));
1380 1380
 		$html = ob_get_clean();
1381 1381
 	} else {
1382
-		$html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" class="wpi-' . esc_attr( sanitize_html_class( $args['id'] ) ) . '">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1382
+		$html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" class="wpi-' . esc_attr(sanitize_html_class($args['id'])) . '">' . esc_textarea(stripslashes($value)) . '</textarea>';
1383 1383
 	}
1384 1384
 
1385
-	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1385
+	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1386 1386
 
1387 1387
 	echo $html;
1388 1388
 }
1389 1389
 
1390
-function wpinv_upload_callback( $args ) {
1390
+function wpinv_upload_callback($args) {
1391 1391
 	global $wpinv_options;
1392 1392
     
1393
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1393
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1394 1394
 
1395
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1395
+	if (isset($wpinv_options[$args['id']])) {
1396 1396
 		$value = $wpinv_options[$args['id']];
1397 1397
 	} else {
1398 1398
 		$value = isset($args['std']) ? $args['std'] : '';
1399 1399
 	}
1400 1400
 
1401
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1402
-	$html = '<input type="text" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1403
-	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __( 'Upload File', 'invoicing' ) . '"/></span>';
1404
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1401
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1402
+	$html = '<input type="text" class="' . sanitize_html_class($size) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr(stripslashes($value)) . '"/>';
1403
+	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __('Upload File', 'invoicing') . '"/></span>';
1404
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1405 1405
 
1406 1406
 	echo $html;
1407 1407
 }
1408 1408
 
1409
-function wpinv_color_callback( $args ) {
1409
+function wpinv_color_callback($args) {
1410 1410
 	global $wpinv_options;
1411 1411
     
1412
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1412
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1413 1413
 
1414
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1415
-		$value = $wpinv_options[ $args['id'] ];
1414
+	if (isset($wpinv_options[$args['id']])) {
1415
+		$value = $wpinv_options[$args['id']];
1416 1416
 	} else {
1417
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1417
+		$value = isset($args['std']) ? $args['std'] : '';
1418 1418
 	}
1419 1419
 
1420
-	$default = isset( $args['std'] ) ? $args['std'] : '';
1420
+	$default = isset($args['std']) ? $args['std'] : '';
1421 1421
 
1422
-	$html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '" data-default-color="' . esc_attr( $default ) . '" />';
1423
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1422
+	$html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr($value) . '" data-default-color="' . esc_attr($default) . '" />';
1423
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1424 1424
 
1425 1425
 	echo $html;
1426 1426
 }
@@ -1428,9 +1428,9 @@  discard block
 block discarded – undo
1428 1428
 function wpinv_country_states_callback($args) {
1429 1429
 	global $wpinv_options;
1430 1430
     
1431
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1431
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1432 1432
 
1433
-	if ( isset( $args['placeholder'] ) ) {
1433
+	if (isset($args['placeholder'])) {
1434 1434
 		$placeholder = $args['placeholder'];
1435 1435
 	} else {
1436 1436
 		$placeholder = '';
@@ -1438,16 +1438,16 @@  discard block
 block discarded – undo
1438 1438
 
1439 1439
 	$states = wpinv_get_country_states();
1440 1440
 
1441
-	$class = empty( $states ) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1442
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"' . $class . 'data-placeholder="' . esc_html( $placeholder ) . '"/>';
1441
+	$class = empty($states) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1442
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']"' . $class . 'data-placeholder="' . esc_html($placeholder) . '"/>';
1443 1443
 
1444
-	foreach ( $states as $option => $name ) {
1445
-		$selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $option, $wpinv_options[$args['id']], false ) : '';
1446
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1444
+	foreach ($states as $option => $name) {
1445
+		$selected = isset($wpinv_options[$args['id']]) ? selected($option, $wpinv_options[$args['id']], false) : '';
1446
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($name) . '</option>';
1447 1447
 	}
1448 1448
 
1449 1449
 	$html .= '</select>';
1450
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1450
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1451 1451
 
1452 1452
 	echo $html;
1453 1453
 }
@@ -1462,96 +1462,96 @@  discard block
 block discarded – undo
1462 1462
 	<table id="wpinv_tax_rates" class="wp-list-table widefat fixed posts">
1463 1463
 		<thead>
1464 1464
 			<tr>
1465
-				<th scope="col" class="wpinv_tax_country"><?php _e( 'Country', 'invoicing' ); ?></th>
1466
-				<th scope="col" class="wpinv_tax_state"><?php _e( 'State / Province', 'invoicing' ); ?></th>
1467
-                <th scope="col" class="wpinv_tax_global" title="<?php esc_attr_e( 'Apply rate to whole country, regardless of state / province', 'invoicing' ); ?>"><?php _e( 'Country Wide', 'invoicing' ); ?></th>
1468
-                <th scope="col" class="wpinv_tax_rate"><?php _e( 'Rate %', 'invoicing' ); ?></th> 
1469
-                <th scope="col" class="wpinv_tax_name"><?php _e( 'Tax Name', 'invoicing' ); ?></th>
1470
-				<th scope="col" class="wpinv_tax_action"><?php _e( 'Remove', 'invoicing' ); ?></th>
1465
+				<th scope="col" class="wpinv_tax_country"><?php _e('Country', 'invoicing'); ?></th>
1466
+				<th scope="col" class="wpinv_tax_state"><?php _e('State / Province', 'invoicing'); ?></th>
1467
+                <th scope="col" class="wpinv_tax_global" title="<?php esc_attr_e('Apply rate to whole country, regardless of state / province', 'invoicing'); ?>"><?php _e('Country Wide', 'invoicing'); ?></th>
1468
+                <th scope="col" class="wpinv_tax_rate"><?php _e('Rate %', 'invoicing'); ?></th> 
1469
+                <th scope="col" class="wpinv_tax_name"><?php _e('Tax Name', 'invoicing'); ?></th>
1470
+				<th scope="col" class="wpinv_tax_action"><?php _e('Remove', 'invoicing'); ?></th>
1471 1471
 			</tr>
1472 1472
 		</thead>
1473 1473
         <tbody>
1474
-		<?php if( !empty( $rates ) ) : ?>
1475
-			<?php foreach( $rates as $key => $rate ) : ?>
1474
+		<?php if (!empty($rates)) : ?>
1475
+			<?php foreach ($rates as $key => $rate) : ?>
1476 1476
             <?php 
1477
-            $sanitized_key = wpinv_sanitize_key( $key );
1477
+            $sanitized_key = wpinv_sanitize_key($key);
1478 1478
             ?>
1479 1479
 			<tr>
1480 1480
 				<td class="wpinv_tax_country">
1481 1481
 					<?php
1482
-					echo wpinv_html_select( array(
1483
-						'options'          => wpinv_get_country_list( true ),
1482
+					echo wpinv_html_select(array(
1483
+						'options'          => wpinv_get_country_list(true),
1484 1484
 						'name'             => 'tax_rates[' . $sanitized_key . '][country]',
1485 1485
                         'id'               => 'tax_rates[' . $sanitized_key . '][country]',
1486 1486
 						'selected'         => $rate['country'],
1487 1487
 						'show_option_all'  => false,
1488 1488
 						'show_option_none' => false,
1489 1489
 						'class'            => 'wpinv-tax-country wpi_select2',
1490
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1491
-					) );
1490
+						'placeholder'      => __('Choose a country', 'invoicing')
1491
+					));
1492 1492
 					?>
1493 1493
 				</td>
1494 1494
 				<td class="wpinv_tax_state">
1495 1495
 					<?php
1496
-					$states = wpinv_get_country_states( $rate['country'] );
1497
-					if( !empty( $states ) ) {
1498
-						echo wpinv_html_select( array(
1499
-							'options'          => array_merge( array( '' => '' ), $states ),
1496
+					$states = wpinv_get_country_states($rate['country']);
1497
+					if (!empty($states)) {
1498
+						echo wpinv_html_select(array(
1499
+							'options'          => array_merge(array('' => ''), $states),
1500 1500
 							'name'             => 'tax_rates[' . $sanitized_key . '][state]',
1501 1501
                             'id'               => 'tax_rates[' . $sanitized_key . '][state]',
1502 1502
 							'selected'         => $rate['state'],
1503 1503
 							'show_option_all'  => false,
1504 1504
 							'show_option_none' => false,
1505 1505
                             'class'            => 'wpi_select2',
1506
-							'placeholder'      => __( 'Choose a state', 'invoicing' )
1507
-						) );
1506
+							'placeholder'      => __('Choose a state', 'invoicing')
1507
+						));
1508 1508
 					} else {
1509
-						echo wpinv_html_text( array(
1509
+						echo wpinv_html_text(array(
1510 1510
 							'name'  => 'tax_rates[' . $sanitized_key . '][state]', $rate['state'],
1511
-							'value' => ! empty( $rate['state'] ) ? $rate['state'] : '',
1511
+							'value' => !empty($rate['state']) ? $rate['state'] : '',
1512 1512
                             'id'    => 'tax_rates[' . $sanitized_key . '][state]',
1513
-						) );
1513
+						));
1514 1514
 					}
1515 1515
 					?>
1516 1516
 				</td>
1517 1517
 				<td class="wpinv_tax_global">
1518
-					<input type="checkbox" name="tax_rates[<?php echo $sanitized_key; ?>][global]" id="tax_rates[<?php echo $sanitized_key; ?>][global]" value="1"<?php checked( true, ! empty( $rate['global'] ) ); ?>/>
1519
-					<label for="tax_rates[<?php echo $sanitized_key; ?>][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
1518
+					<input type="checkbox" name="tax_rates[<?php echo $sanitized_key; ?>][global]" id="tax_rates[<?php echo $sanitized_key; ?>][global]" value="1"<?php checked(true, !empty($rate['global'])); ?>/>
1519
+					<label for="tax_rates[<?php echo $sanitized_key; ?>][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
1520 1520
 				</td>
1521
-				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[<?php echo $sanitized_key; ?>][rate]" value="<?php echo esc_html( $rate['rate'] ); ?>"/></td>
1522
-                <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[<?php echo $sanitized_key; ?>][name]" value="<?php echo esc_html( $rate['name'] ); ?>"/></td>
1523
-				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1521
+				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[<?php echo $sanitized_key; ?>][rate]" value="<?php echo esc_html($rate['rate']); ?>"/></td>
1522
+                <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[<?php echo $sanitized_key; ?>][name]" value="<?php echo esc_html($rate['name']); ?>"/></td>
1523
+				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e('Remove Rate', 'invoicing'); ?></span></td>
1524 1524
 			</tr>
1525 1525
 			<?php endforeach; ?>
1526 1526
 		<?php else : ?>
1527 1527
 			<tr>
1528 1528
 				<td class="wpinv_tax_country">
1529 1529
 					<?php
1530
-					echo wpinv_html_select( array(
1531
-						'options'          => wpinv_get_country_list( true ),
1530
+					echo wpinv_html_select(array(
1531
+						'options'          => wpinv_get_country_list(true),
1532 1532
 						'name'             => 'tax_rates[0][country]',
1533 1533
 						'show_option_all'  => false,
1534 1534
 						'show_option_none' => false,
1535 1535
 						'class'            => 'wpinv-tax-country wpi_select2',
1536
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1537
-					) ); ?>
1536
+						'placeholder'      => __('Choose a country', 'invoicing')
1537
+					)); ?>
1538 1538
 				</td>
1539 1539
 				<td class="wpinv_tax_state">
1540
-					<?php echo wpinv_html_text( array(
1540
+					<?php echo wpinv_html_text(array(
1541 1541
 						'name' => 'tax_rates[0][state]'
1542
-					) ); ?>
1542
+					)); ?>
1543 1543
 				</td>
1544 1544
 				<td class="wpinv_tax_global">
1545 1545
 					<input type="checkbox" name="tax_rates[0][global]" id="tax_rates[0][global]" value="1"/>
1546
-					<label for="tax_rates[0][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
1546
+					<label for="tax_rates[0][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
1547 1547
 				</td>
1548
-				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[0][rate]" placeholder="<?php echo (float)wpinv_get_option( 'tax_rate', 0 ) ;?>" value="<?php echo (float)wpinv_get_option( 'tax_rate', 0 ) ;?>"/></td>
1548
+				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[0][rate]" placeholder="<?php echo (float) wpinv_get_option('tax_rate', 0); ?>" value="<?php echo (float) wpinv_get_option('tax_rate', 0); ?>"/></td>
1549 1549
                 <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[0][name]" /></td>
1550
-				<td><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1550
+				<td><span class="wpinv_remove_tax_rate button-secondary"><?php _e('Remove Rate', 'invoicing'); ?></span></td>
1551 1551
 			</tr>
1552 1552
 		<?php endif; ?>
1553 1553
         </tbody>
1554
-        <tfoot><tr><td colspan="5"></td><td class="wpinv_tax_action"><span class="button-secondary" id="wpinv_add_tax_rate"><?php _e( 'Add Tax Rate', 'invoicing' ); ?></span></td></tr></tfoot>
1554
+        <tfoot><tr><td colspan="5"></td><td class="wpinv_tax_action"><span class="button-secondary" id="wpinv_add_tax_rate"><?php _e('Add Tax Rate', 'invoicing'); ?></span></td></tr></tfoot>
1555 1555
 	</table>
1556 1556
 	<?php
1557 1557
 	echo ob_get_clean();
@@ -1562,76 +1562,76 @@  discard block
 block discarded – undo
1562 1562
     ob_start(); ?>
1563 1563
     </td><tr>
1564 1564
     <td colspan="2" class="wpinv_tools_tdbox">
1565
-    <?php if ( $args['desc'] ) { ?><p><?php echo $args['desc']; ?></p><?php } ?>
1566
-    <?php do_action( 'wpinv_tools_before' ); ?>
1565
+    <?php if ($args['desc']) { ?><p><?php echo $args['desc']; ?></p><?php } ?>
1566
+    <?php do_action('wpinv_tools_before'); ?>
1567 1567
     <table id="wpinv_tools_table" class="wp-list-table widefat fixed posts">
1568 1568
         <thead>
1569 1569
             <tr>
1570
-                <th scope="col" class="wpinv-th-tool"><?php _e( 'Tool', 'invoicing' ); ?></th>
1571
-                <th scope="col" class="wpinv-th-desc"><?php _e( 'Description', 'invoicing' ); ?></th>
1572
-                <th scope="col" class="wpinv-th-action"><?php _e( 'Action', 'invoicing' ); ?></th>
1570
+                <th scope="col" class="wpinv-th-tool"><?php _e('Tool', 'invoicing'); ?></th>
1571
+                <th scope="col" class="wpinv-th-desc"><?php _e('Description', 'invoicing'); ?></th>
1572
+                <th scope="col" class="wpinv-th-action"><?php _e('Action', 'invoicing'); ?></th>
1573 1573
             </tr>
1574 1574
         </thead>
1575
-            <?php do_action( 'wpinv_tools_row' ); ?>
1575
+            <?php do_action('wpinv_tools_row'); ?>
1576 1576
         <tbody>
1577 1577
         </tbody>
1578 1578
     </table>
1579
-    <?php do_action( 'wpinv_tools_after' ); ?>
1579
+    <?php do_action('wpinv_tools_after'); ?>
1580 1580
     <?php
1581 1581
     echo ob_get_clean();
1582 1582
 }
1583 1583
 
1584
-function wpinv_descriptive_text_callback( $args ) {
1585
-	echo wp_kses_post( $args['desc'] );
1584
+function wpinv_descriptive_text_callback($args) {
1585
+	echo wp_kses_post($args['desc']);
1586 1586
 }
1587 1587
 
1588
-function wpinv_hook_callback( $args ) {
1589
-	do_action( 'wpinv_' . $args['id'], $args );
1588
+function wpinv_hook_callback($args) {
1589
+	do_action('wpinv_' . $args['id'], $args);
1590 1590
 }
1591 1591
 
1592 1592
 function wpinv_set_settings_cap() {
1593 1593
 	return wpinv_get_capability();
1594 1594
 }
1595
-add_filter( 'option_page_capability_wpinv_settings', 'wpinv_set_settings_cap' );
1595
+add_filter('option_page_capability_wpinv_settings', 'wpinv_set_settings_cap');
1596 1596
 
1597
-function wpinv_settings_sanitize_input( $value, $key ) {
1598
-    if ( $key == 'tax_rate' || $key == 'eu_fallback_rate' ) {
1599
-        $value = wpinv_sanitize_amount( $value, 4 );
1597
+function wpinv_settings_sanitize_input($value, $key) {
1598
+    if ($key == 'tax_rate' || $key == 'eu_fallback_rate') {
1599
+        $value = wpinv_sanitize_amount($value, 4);
1600 1600
         $value = $value >= 100 ? 99 : $value;
1601 1601
     }
1602 1602
         
1603 1603
     return $value;
1604 1604
 }
1605
-add_filter( 'wpinv_settings_sanitize', 'wpinv_settings_sanitize_input', 10, 2 );
1605
+add_filter('wpinv_settings_sanitize', 'wpinv_settings_sanitize_input', 10, 2);
1606 1606
 
1607
-function wpinv_on_update_settings( $old_value, $value, $option ) {
1608
-    $old = !empty( $old_value['remove_data_on_unistall'] ) ? 1 : '';
1609
-    $new = !empty( $value['remove_data_on_unistall'] ) ? 1 : '';
1607
+function wpinv_on_update_settings($old_value, $value, $option) {
1608
+    $old = !empty($old_value['remove_data_on_unistall']) ? 1 : '';
1609
+    $new = !empty($value['remove_data_on_unistall']) ? 1 : '';
1610 1610
     
1611
-    if ( $old != $new ) {
1612
-        update_option( 'wpinv_remove_data_on_invoice_unistall', $new );
1611
+    if ($old != $new) {
1612
+        update_option('wpinv_remove_data_on_invoice_unistall', $new);
1613 1613
     }
1614 1614
 }
1615
-add_action( 'update_option_wpinv_settings', 'wpinv_on_update_settings', 10, 3 );
1616
-add_action( 'wpinv_settings_tab_bottom_emails_new_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1617
-add_action( 'wpinv_settings_tab_bottom_emails_cancelled_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1618
-add_action( 'wpinv_settings_tab_bottom_emails_failed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1619
-add_action( 'wpinv_settings_tab_bottom_emails_onhold_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1620
-add_action( 'wpinv_settings_tab_bottom_emails_processing_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1621
-add_action( 'wpinv_settings_tab_bottom_emails_completed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1622
-add_action( 'wpinv_settings_tab_bottom_emails_refunded_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1623
-add_action( 'wpinv_settings_tab_bottom_emails_user_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1624
-add_action( 'wpinv_settings_tab_bottom_emails_user_note', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1625
-add_action( 'wpinv_settings_tab_bottom_emails_overdue', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1626
-
1627
-function wpinv_settings_tab_bottom_emails( $active_tab, $section ) {
1615
+add_action('update_option_wpinv_settings', 'wpinv_on_update_settings', 10, 3);
1616
+add_action('wpinv_settings_tab_bottom_emails_new_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1617
+add_action('wpinv_settings_tab_bottom_emails_cancelled_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1618
+add_action('wpinv_settings_tab_bottom_emails_failed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1619
+add_action('wpinv_settings_tab_bottom_emails_onhold_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1620
+add_action('wpinv_settings_tab_bottom_emails_processing_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1621
+add_action('wpinv_settings_tab_bottom_emails_completed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1622
+add_action('wpinv_settings_tab_bottom_emails_refunded_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1623
+add_action('wpinv_settings_tab_bottom_emails_user_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1624
+add_action('wpinv_settings_tab_bottom_emails_user_note', 'wpinv_settings_tab_bottom_emails', 10, 2);
1625
+add_action('wpinv_settings_tab_bottom_emails_overdue', 'wpinv_settings_tab_bottom_emails', 10, 2);
1626
+
1627
+function wpinv_settings_tab_bottom_emails($active_tab, $section) {
1628 1628
     ?>
1629 1629
     <div class="wpinv-email-wc-row ">
1630 1630
         <div class="wpinv-email-wc-td">
1631
-            <h3 class="wpinv-email-wc-title"><?php echo apply_filters( 'wpinv_settings_email_wildcards_title', __( 'Wildcards For Emails', 'invoicing' ) ); ?></h3>
1631
+            <h3 class="wpinv-email-wc-title"><?php echo apply_filters('wpinv_settings_email_wildcards_title', __('Wildcards For Emails', 'invoicing')); ?></h3>
1632 1632
             <p class="wpinv-email-wc-description">
1633 1633
                 <?php
1634
-                $description = __( 'The following wildcards can be used in email subjects, heading and content:<br>
1634
+                $description = __('The following wildcards can be used in email subjects, heading and content:<br>
1635 1635
                     <strong>{site_title} :</strong> Site Title<br>
1636 1636
                     <strong>{name} :</strong> Customer\'s full name<br>
1637 1637
                     <strong>{first_name} :</strong> Customer\'s first name<br>
@@ -1645,7 +1645,7 @@  discard block
 block discarded – undo
1645 1645
                     <strong>{invoice_due_date} :</strong> The date the invoice is due<br>
1646 1646
                     <strong>{date} :</strong> Today\'s date.<br>
1647 1647
                     <strong>{is_was} :</strong> If due date of invoice is past, displays "was" otherwise displays "is"<br>
1648
-                    <strong>{invoice_label} :</strong> Invoices/quotes singular name. Ex: Invoice/Quote<br>', 'invoicing' );
1648
+                    <strong>{invoice_label} :</strong> Invoices/quotes singular name. Ex: Invoice/Quote<br>', 'invoicing');
1649 1649
                 echo apply_filters('wpinv_settings_email_wildcards_description', $description, $active_tab, $section);
1650 1650
                 ?>
1651 1651
             </p>
Please login to merge, or discard this patch.
includes/class-wpinv-addons.php 3 patches
Braces   +11 added lines, -12 removed lines patch added patch discarded remove patch
@@ -45,8 +45,7 @@  discard block
 block discarded – undo
45 45
 
46 46
 		if($section_id=='recommended_plugins'){
47 47
 			$section_data->products = self::get_recommend_wp_plugins_edd_formatted();
48
-		}
49
-		elseif ( ! empty( $section ) ) {
48
+		} elseif ( ! empty( $section ) ) {
50 49
 			if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing
51 50
 			//if ( 1==1) {
52 51
 
@@ -121,13 +120,13 @@  discard block
 block discarded – undo
121 120
 			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
122 121
 			if(isset($status['status'])){$button_args['install_status'] = $status['status'];}
123 122
 			$button_args['update_url'] = "https://wpinvoicing.com";
124
-		}elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
123
+		} elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125 124
 			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
126 125
 			$button_args['installed'] = self::is_theme_installed($addon);
127 126
 			if(!in_array($button_args['slug'],$wp_org_themes)){
128 127
 				$button_args['update_url'] = "https://wpinvoicing.com";
129 128
 			}
130
-		}elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
129
+		} elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
131 130
 			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
132 131
 			$status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>""));
133 132
 			$button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install';
@@ -139,7 +138,7 @@  discard block
 block discarded – undo
139 138
 			if(is_object($addon->pricing)){
140 139
 				$prices = (Array)$addon->pricing;
141 140
 				$button_args['price'] = reset($prices);
142
-			}elseif(isset($addon->pricing)){
141
+			} elseif(isset($addon->pricing)){
143 142
 				$button_args['price'] = $addon->pricing;
144 143
 			}
145 144
 		}
@@ -160,7 +159,7 @@  discard block
 block discarded – undo
160 159
 		if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){
161 160
 			if($button_args['type'] != 'themes'){
162 161
 				$button_args['active'] = is_plugin_active($button_args['file']);
163
-			}else{
162
+			} else{
164 163
 				$button_args['active'] = self::is_theme_active($addon);
165 164
 			}
166 165
 		}
@@ -169,27 +168,27 @@  discard block
 block discarded – undo
169 168
 		if($button_args['active']){
170 169
 			$button_args['button_text'] = __('Active','invoicing');
171 170
 			$button_args['class'] = ' button-secondary disabled ';
172
-		}elseif($button_args['installed']){
171
+		} elseif($button_args['installed']){
173 172
 			$button_args['button_text'] = __('Activate','invoicing');
174 173
 
175 174
 			if($button_args['type'] != 'themes'){
176 175
 				if ( current_user_can( 'manage_options' ) ) {
177 176
 					$button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']);
178
-				}else{
177
+				} else{
179 178
 					$button_args['url'] = '#';
180 179
 				}
181
-			}else{
180
+			} else{
182 181
 				if ( current_user_can( 'switch_themes' ) ) {
183 182
 					$button_args['url'] = self::get_theme_activation_url($addon);
184
-				}else{
183
+				} else{
185 184
 					$button_args['url'] = '#';
186 185
 				}
187 186
 			}
188 187
 
189
-		}else{
188
+		} else{
190 189
 			if($button_args['type'] == 'recommended_plugins'){
191 190
 				$button_args['button_text'] = __('Install','invoicing');
192
-			}else{
191
+			} else{
193 192
 				$button_args['button_text'] = __('Get it','invoicing');
194 193
 
195 194
 				/*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){
Please login to merge, or discard this patch.
Indentation   +201 added lines, -201 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
  *
7 7
  */
8 8
 if ( ! defined( 'ABSPATH' ) ) {
9
-	exit;
9
+    exit;
10 10
 }
11 11
 
12 12
 /**
@@ -15,71 +15,71 @@  discard block
 block discarded – undo
15 15
 class WPInv_Admin_Addons extends Ayecode_Addons {
16 16
 
17 17
 
18
-	/**
19
-	 * Get the extensions page tabs.
20
-	 *
21
-	 * @return array of tabs.
22
-	 */
23
-	public function get_tabs(){
24
-		$tabs = array(
25
-			'addons' => __("Addons", "invoicing"),
18
+    /**
19
+     * Get the extensions page tabs.
20
+     *
21
+     * @return array of tabs.
22
+     */
23
+    public function get_tabs(){
24
+        $tabs = array(
25
+            'addons' => __("Addons", "invoicing"),
26 26
             'gateways' => __("Payment Gateways", "invoicing"),
27 27
             'recommended_plugins' => __("Recommended plugins", "invoicing"),
28 28
             'membership' => __("Membership", "invoicing"),
29
-		);
30
-
31
-		return $tabs;
32
-	}
33
-
34
-	/**
35
-	 * Get section content for the addons screen.
36
-	 *
37
-	 * @param  string $section_id
38
-	 *
39
-	 * @return array
40
-	 */
41
-	public function get_section_data( $section_id ) {
42
-		$section      = self::get_tab( $section_id );
43
-		$api_url = "https://wpinvoicing.com/edd-api/v2/products/";
44
-		$section_data = new stdClass();
45
-
46
-		if($section_id=='recommended_plugins'){
47
-			$section_data->products = self::get_recommend_wp_plugins_edd_formatted();
48
-		}
49
-		elseif ( ! empty( $section ) ) {
50
-			if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing
51
-			//if ( 1==1) {
52
-
53
-				$query_args = array( 'category' => $section_id, 'number' => 100);
54
-				$query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id);
55
-
56
-				$raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout'     => 15, ) );
57
-
58
-				if ( ! is_wp_error( $raw_section ) ) {
59
-					$section_data = json_decode( wp_remote_retrieve_body( $raw_section ) );
60
-
61
-					if ( ! empty( $section_data->products ) ) {
62
-						set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS );
63
-					}
64
-				}
65
-			}
66
-		}
67
-
68
-		$products = isset($section_data->products) ? $section_data->products : '';
69
-
70
-		return apply_filters( 'wpi_addons_section_data', $products, $section_id );
71
-	}
72
-
73
-	/**
74
-	 * Outputs a button.
75
-	 *ccc
76
-	 * @param string $url
77
-	 * @param string $text
78
-	 * @param string $theme
79
-	 * @param string $plugin
80
-	 */
81
-	public function output_button( $addon ) {
82
-		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
29
+        );
30
+
31
+        return $tabs;
32
+    }
33
+
34
+    /**
35
+     * Get section content for the addons screen.
36
+     *
37
+     * @param  string $section_id
38
+     *
39
+     * @return array
40
+     */
41
+    public function get_section_data( $section_id ) {
42
+        $section      = self::get_tab( $section_id );
43
+        $api_url = "https://wpinvoicing.com/edd-api/v2/products/";
44
+        $section_data = new stdClass();
45
+
46
+        if($section_id=='recommended_plugins'){
47
+            $section_data->products = self::get_recommend_wp_plugins_edd_formatted();
48
+        }
49
+        elseif ( ! empty( $section ) ) {
50
+            if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing
51
+            //if ( 1==1) {
52
+
53
+                $query_args = array( 'category' => $section_id, 'number' => 100);
54
+                $query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id);
55
+
56
+                $raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout'     => 15, ) );
57
+
58
+                if ( ! is_wp_error( $raw_section ) ) {
59
+                    $section_data = json_decode( wp_remote_retrieve_body( $raw_section ) );
60
+
61
+                    if ( ! empty( $section_data->products ) ) {
62
+                        set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS );
63
+                    }
64
+                }
65
+            }
66
+        }
67
+
68
+        $products = isset($section_data->products) ? $section_data->products : '';
69
+
70
+        return apply_filters( 'wpi_addons_section_data', $products, $section_id );
71
+    }
72
+
73
+    /**
74
+     * Outputs a button.
75
+     *ccc
76
+     * @param string $url
77
+     * @param string $text
78
+     * @param string $theme
79
+     * @param string $plugin
80
+     */
81
+    public function output_button( $addon ) {
82
+        $current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
83 83
 //		$button_text = __('Free','invoicing');
84 84
 //		$licensing = false;
85 85
 //		$installed = false;
@@ -91,123 +91,123 @@  discard block
 block discarded – undo
91 91
 //		$install_status = 'get';
92 92
 //		$onclick = '';
93 93
 
94
-		$wp_org_themes = array('supreme-directory','directory-starter');
95
-
96
-		$button_args = array(
97
-			'type' => ($current_tab == 'addons' || $current_tab =='gateways') ? 'addons' : $current_tab,
98
-			'id' => isset($addon->info->id) ? absint($addon->info->id) : '',
99
-			'title' => isset($addon->info->title) ? $addon->info->title : '',
100
-			'button_text' => __('Free','invoicing'),
101
-			'price_text' => __('Free','invoicing'),
102
-			'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product
103
-			'url' => isset($addon->info->link) ? $addon->info->link : '', // button url
104
-			'class' => 'button-primary',
105
-			'install_status' => 'get',
106
-			'installed' => false,
107
-			'price' => '',
108
-			'licensing' => isset($addon->licensing->enabled) && $addon->licensing->enabled ? true : false,
109
-			'license' => isset($addon->licensing->license) && $addon->licensing->license ? $addon->licensing->license : '',
110
-			'onclick' => '',
111
-			'slug' => isset($addon->info->slug) ? $addon->info->slug : '',
112
-			'active' => false,
113
-			'file' => '',
114
-			'update_url' => '',
115
-		);
116
-
117
-		if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){
118
-			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
119
-			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
120
-			$status = self::install_plugin_install_status($addon);
121
-			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
122
-			if(isset($status['status'])){$button_args['install_status'] = $status['status'];}
123
-			$button_args['update_url'] = "https://wpinvoicing.com";
124
-		}elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125
-			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
126
-			$button_args['installed'] = self::is_theme_installed($addon);
127
-			if(!in_array($button_args['slug'],$wp_org_themes)){
128
-				$button_args['update_url'] = "https://wpinvoicing.com";
129
-			}
130
-		}elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
131
-			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
132
-			$status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>""));
133
-			$button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install';
134
-			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
135
-		}
136
-
137
-		// set price
138
-		if(isset($addon->pricing) && !empty($addon->pricing)){
139
-			if(is_object($addon->pricing)){
140
-				$prices = (Array)$addon->pricing;
141
-				$button_args['price'] = reset($prices);
142
-			}elseif(isset($addon->pricing)){
143
-				$button_args['price'] = $addon->pricing;
144
-			}
145
-		}
146
-
147
-		// set price text
148
-		if( $button_args['price'] && $button_args['price'] != '0.00' ){
149
-			$button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']);
150
-		}
151
-
152
-
153
-		// set if installed
154
-		if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){
155
-			$button_args['installed'] = true;
156
-		}
94
+        $wp_org_themes = array('supreme-directory','directory-starter');
95
+
96
+        $button_args = array(
97
+            'type' => ($current_tab == 'addons' || $current_tab =='gateways') ? 'addons' : $current_tab,
98
+            'id' => isset($addon->info->id) ? absint($addon->info->id) : '',
99
+            'title' => isset($addon->info->title) ? $addon->info->title : '',
100
+            'button_text' => __('Free','invoicing'),
101
+            'price_text' => __('Free','invoicing'),
102
+            'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product
103
+            'url' => isset($addon->info->link) ? $addon->info->link : '', // button url
104
+            'class' => 'button-primary',
105
+            'install_status' => 'get',
106
+            'installed' => false,
107
+            'price' => '',
108
+            'licensing' => isset($addon->licensing->enabled) && $addon->licensing->enabled ? true : false,
109
+            'license' => isset($addon->licensing->license) && $addon->licensing->license ? $addon->licensing->license : '',
110
+            'onclick' => '',
111
+            'slug' => isset($addon->info->slug) ? $addon->info->slug : '',
112
+            'active' => false,
113
+            'file' => '',
114
+            'update_url' => '',
115
+        );
116
+
117
+        if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){
118
+            include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
119
+            if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
120
+            $status = self::install_plugin_install_status($addon);
121
+            $button_args['file'] = isset($status['file']) ? $status['file'] : '';
122
+            if(isset($status['status'])){$button_args['install_status'] = $status['status'];}
123
+            $button_args['update_url'] = "https://wpinvoicing.com";
124
+        }elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125
+            if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
126
+            $button_args['installed'] = self::is_theme_installed($addon);
127
+            if(!in_array($button_args['slug'],$wp_org_themes)){
128
+                $button_args['update_url'] = "https://wpinvoicing.com";
129
+            }
130
+        }elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
131
+            include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
132
+            $status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>""));
133
+            $button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install';
134
+            $button_args['file'] = isset($status['file']) ? $status['file'] : '';
135
+        }
136
+
137
+        // set price
138
+        if(isset($addon->pricing) && !empty($addon->pricing)){
139
+            if(is_object($addon->pricing)){
140
+                $prices = (Array)$addon->pricing;
141
+                $button_args['price'] = reset($prices);
142
+            }elseif(isset($addon->pricing)){
143
+                $button_args['price'] = $addon->pricing;
144
+            }
145
+        }
146
+
147
+        // set price text
148
+        if( $button_args['price'] && $button_args['price'] != '0.00' ){
149
+            $button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']);
150
+        }
151
+
152
+
153
+        // set if installed
154
+        if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){
155
+            $button_args['installed'] = true;
156
+        }
157 157
 
158 158
 //		print_r($button_args);
159
-		// set if active
160
-		if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){
161
-			if($button_args['type'] != 'themes'){
162
-				$button_args['active'] = is_plugin_active($button_args['file']);
163
-			}else{
164
-				$button_args['active'] = self::is_theme_active($addon);
165
-			}
166
-		}
167
-
168
-		// set button text and class
169
-		if($button_args['active']){
170
-			$button_args['button_text'] = __('Active','invoicing');
171
-			$button_args['class'] = ' button-secondary disabled ';
172
-		}elseif($button_args['installed']){
173
-			$button_args['button_text'] = __('Activate','invoicing');
174
-
175
-			if($button_args['type'] != 'themes'){
176
-				if ( current_user_can( 'manage_options' ) ) {
177
-					$button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']);
178
-				}else{
179
-					$button_args['url'] = '#';
180
-				}
181
-			}else{
182
-				if ( current_user_can( 'switch_themes' ) ) {
183
-					$button_args['url'] = self::get_theme_activation_url($addon);
184
-				}else{
185
-					$button_args['url'] = '#';
186
-				}
187
-			}
188
-
189
-		}else{
190
-			if($button_args['type'] == 'recommended_plugins'){
191
-				$button_args['button_text'] = __('Install','invoicing');
192
-			}else{
193
-				$button_args['button_text'] = __('Get it','invoicing');
194
-
195
-				/*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){
159
+        // set if active
160
+        if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){
161
+            if($button_args['type'] != 'themes'){
162
+                $button_args['active'] = is_plugin_active($button_args['file']);
163
+            }else{
164
+                $button_args['active'] = self::is_theme_active($addon);
165
+            }
166
+        }
167
+
168
+        // set button text and class
169
+        if($button_args['active']){
170
+            $button_args['button_text'] = __('Active','invoicing');
171
+            $button_args['class'] = ' button-secondary disabled ';
172
+        }elseif($button_args['installed']){
173
+            $button_args['button_text'] = __('Activate','invoicing');
174
+
175
+            if($button_args['type'] != 'themes'){
176
+                if ( current_user_can( 'manage_options' ) ) {
177
+                    $button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']);
178
+                }else{
179
+                    $button_args['url'] = '#';
180
+                }
181
+            }else{
182
+                if ( current_user_can( 'switch_themes' ) ) {
183
+                    $button_args['url'] = self::get_theme_activation_url($addon);
184
+                }else{
185
+                    $button_args['url'] = '#';
186
+                }
187
+            }
188
+
189
+        }else{
190
+            if($button_args['type'] == 'recommended_plugins'){
191
+                $button_args['button_text'] = __('Install','invoicing');
192
+            }else{
193
+                $button_args['button_text'] = __('Get it','invoicing');
194
+
195
+                /*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){
196 196
 					$button_args['button_text'] = __('Install','invoicing');
197 197
 					$button_args['url'] = self::get_theme_install_url($button_args['slug']);
198 198
 					$button_args['onclick'] = 'gd_set_button_installing(this);';
199 199
 				}*/
200 200
 
201
-			}
202
-		}
201
+            }
202
+        }
203 203
 
204 204
 		
205
-		// filter the button arguments
206
-		$button_args = apply_filters('edd_api_button_args',$button_args);
205
+        // filter the button arguments
206
+        $button_args = apply_filters('edd_api_button_args',$button_args);
207 207
 //		print_r($button_args);
208
-		// set price text
209
-		if(isset($button_args['price_text'])){
210
-			?>
208
+        // set price text
209
+        if(isset($button_args['price_text'])){
210
+            ?>
211 211
 			<a
212 212
 				target="_blank"
213 213
 				class="addons-price-text"
@@ -215,15 +215,15 @@  discard block
 block discarded – undo
215 215
 				<?php echo esc_html( $button_args['price_text'] ); ?>
216 216
 			</a>
217 217
 			<?php
218
-		}
218
+        }
219 219
 
220 220
 
221
-		$target = '';
222
-		if ( ! empty( $button_args['url'] ) ) {
223
-			$target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" ';
224
-		}
221
+        $target = '';
222
+        if ( ! empty( $button_args['url'] ) ) {
223
+            $target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" ';
224
+        }
225 225
 
226
-		?>
226
+        ?>
227 227
 		<a
228 228
 			data-licence="<?php echo esc_attr($button_args['license']);?>"
229 229
 			data-licensing="<?php echo $button_args['licensing'] ? 1 : 0;?>"
@@ -246,28 +246,28 @@  discard block
 block discarded – undo
246 246
 		<?php
247 247
 
248 248
 
249
-	}
250
-
251
-
252
-	/**
253
-	 * Handles output of the addons page in admin.
254
-	 */
255
-	public function output() {
256
-		$tabs            = self::get_tabs();
257
-		$sections        = self::get_sections();
258
-		$theme           = wp_get_theme();
259
-		$section_keys    = array_keys( $sections );
260
-		$current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys );
261
-		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
262
-		include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' );
263
-	}
264
-
265
-	/**
266
-	 * A list of recommended wp.org plugins.
267
-	 * @return array
268
-	 */
269
-	public function get_recommend_wp_plugins(){
270
-		$plugins = array(
249
+    }
250
+
251
+
252
+    /**
253
+     * Handles output of the addons page in admin.
254
+     */
255
+    public function output() {
256
+        $tabs            = self::get_tabs();
257
+        $sections        = self::get_sections();
258
+        $theme           = wp_get_theme();
259
+        $section_keys    = array_keys( $sections );
260
+        $current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys );
261
+        $current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
262
+        include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' );
263
+    }
264
+
265
+    /**
266
+     * A list of recommended wp.org plugins.
267
+     * @return array
268
+     */
269
+    public function get_recommend_wp_plugins(){
270
+        $plugins = array(
271 271
             'invoicing-quotes' => array(
272 272
                 'url'   => 'https://wordpress.org/plugins/invoicing-quotes/',
273 273
                 'slug'   => 'invoicing-quotes',
@@ -286,8 +286,8 @@  discard block
 block discarded – undo
286 286
                 'name'   => 'UsersWP',
287 287
                 'desc'   => __('Allow frontend user login and registration as well as have slick profile pages.','invoicing'),
288 288
             ),
289
-		);
289
+        );
290 290
 
291
-		return $plugins;
292
-	}
291
+        return $plugins;
292
+    }
293 293
 }
Please login to merge, or discard this patch.
Spacing   +87 added lines, -87 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
  * All Invoicing extensions screen related functions can be found here.
6 6
  *
7 7
  */
8
-if ( ! defined( 'ABSPATH' ) ) {
8
+if (!defined('ABSPATH')) {
9 9
 	exit;
10 10
 }
11 11
 
@@ -20,7 +20,7 @@  discard block
 block discarded – undo
20 20
 	 *
21 21
 	 * @return array of tabs.
22 22
 	 */
23
-	public function get_tabs(){
23
+	public function get_tabs() {
24 24
 		$tabs = array(
25 25
 			'addons' => __("Addons", "invoicing"),
26 26
             'gateways' => __("Payment Gateways", "invoicing"),
@@ -38,28 +38,28 @@  discard block
 block discarded – undo
38 38
 	 *
39 39
 	 * @return array
40 40
 	 */
41
-	public function get_section_data( $section_id ) {
42
-		$section      = self::get_tab( $section_id );
41
+	public function get_section_data($section_id) {
42
+		$section      = self::get_tab($section_id);
43 43
 		$api_url = "https://wpinvoicing.com/edd-api/v2/products/";
44 44
 		$section_data = new stdClass();
45 45
 
46
-		if($section_id=='recommended_plugins'){
46
+		if ($section_id == 'recommended_plugins') {
47 47
 			$section_data->products = self::get_recommend_wp_plugins_edd_formatted();
48 48
 		}
49
-		elseif ( ! empty( $section ) ) {
50
-			if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing
49
+		elseif (!empty($section)) {
50
+			if (false === ($section_data = get_transient('wpi_addons_section_' . $section_id))) { //@todo restore after testing
51 51
 			//if ( 1==1) {
52 52
 
53
-				$query_args = array( 'category' => $section_id, 'number' => 100);
54
-				$query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id);
53
+				$query_args = array('category' => $section_id, 'number' => 100);
54
+				$query_args = apply_filters('wpeu_edd_api_query_args', $query_args, $api_url, $section_id);
55 55
 
56
-				$raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout'     => 15, ) );
56
+				$raw_section = wp_safe_remote_get(esc_url_raw(add_query_arg($query_args, $api_url)), array('user-agent' => 'Invoicing Addons Page', 'timeout'     => 15,));
57 57
 
58
-				if ( ! is_wp_error( $raw_section ) ) {
59
-					$section_data = json_decode( wp_remote_retrieve_body( $raw_section ) );
58
+				if (!is_wp_error($raw_section)) {
59
+					$section_data = json_decode(wp_remote_retrieve_body($raw_section));
60 60
 
61
-					if ( ! empty( $section_data->products ) ) {
62
-						set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS );
61
+					if (!empty($section_data->products)) {
62
+						set_transient('wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS);
63 63
 					}
64 64
 				}
65 65
 			}
@@ -67,7 +67,7 @@  discard block
 block discarded – undo
67 67
 
68 68
 		$products = isset($section_data->products) ? $section_data->products : '';
69 69
 
70
-		return apply_filters( 'wpi_addons_section_data', $products, $section_id );
70
+		return apply_filters('wpi_addons_section_data', $products, $section_id);
71 71
 	}
72 72
 
73 73
 	/**
@@ -78,8 +78,8 @@  discard block
 block discarded – undo
78 78
 	 * @param string $theme
79 79
 	 * @param string $plugin
80 80
 	 */
81
-	public function output_button( $addon ) {
82
-		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
81
+	public function output_button($addon) {
82
+		$current_tab = empty($_GET['tab']) ? 'addons' : sanitize_title($_GET['tab']);
83 83
 //		$button_text = __('Free','invoicing');
84 84
 //		$licensing = false;
85 85
 //		$installed = false;
@@ -91,14 +91,14 @@  discard block
 block discarded – undo
91 91
 //		$install_status = 'get';
92 92
 //		$onclick = '';
93 93
 
94
-		$wp_org_themes = array('supreme-directory','directory-starter');
94
+		$wp_org_themes = array('supreme-directory', 'directory-starter');
95 95
 
96 96
 		$button_args = array(
97
-			'type' => ($current_tab == 'addons' || $current_tab =='gateways') ? 'addons' : $current_tab,
97
+			'type' => ($current_tab == 'addons' || $current_tab == 'gateways') ? 'addons' : $current_tab,
98 98
 			'id' => isset($addon->info->id) ? absint($addon->info->id) : '',
99 99
 			'title' => isset($addon->info->title) ? $addon->info->title : '',
100
-			'button_text' => __('Free','invoicing'),
101
-			'price_text' => __('Free','invoicing'),
100
+			'button_text' => __('Free', 'invoicing'),
101
+			'price_text' => __('Free', 'invoicing'),
102 102
 			'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product
103 103
 			'url' => isset($addon->info->link) ? $addon->info->link : '', // button url
104 104
 			'class' => 'button-primary',
@@ -114,83 +114,83 @@  discard block
 block discarded – undo
114 114
 			'update_url' => '',
115 115
 		);
116 116
 
117
-		if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){
118
-			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
119
-			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
117
+		if (($current_tab == 'addons' || $current_tab == 'gateways') && isset($addon->info->id) && $addon->info->id) {
118
+			include_once(ABSPATH . 'wp-admin/includes/plugin-install.php'); //for plugins_api..
119
+			if (!empty($addon->licensing->edd_slug)) {$button_args['slug'] = $addon->licensing->edd_slug; }
120 120
 			$status = self::install_plugin_install_status($addon);
121 121
 			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
122
-			if(isset($status['status'])){$button_args['install_status'] = $status['status'];}
122
+			if (isset($status['status'])) {$button_args['install_status'] = $status['status']; }
123 123
 			$button_args['update_url'] = "https://wpinvoicing.com";
124
-		}elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125
-			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
124
+		}elseif ($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125
+			if (!empty($addon->licensing->edd_slug)) {$button_args['slug'] = $addon->licensing->edd_slug; }
126 126
 			$button_args['installed'] = self::is_theme_installed($addon);
127
-			if(!in_array($button_args['slug'],$wp_org_themes)){
127
+			if (!in_array($button_args['slug'], $wp_org_themes)) {
128 128
 				$button_args['update_url'] = "https://wpinvoicing.com";
129 129
 			}
130
-		}elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
131
-			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
132
-			$status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>""));
130
+		}elseif ($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug) {
131
+			include_once(ABSPATH . 'wp-admin/includes/plugin-install.php'); //for plugins_api..
132
+			$status = install_plugin_install_status(array("slug"=>$button_args['slug'], "version"=>""));
133 133
 			$button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install';
134 134
 			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
135 135
 		}
136 136
 
137 137
 		// set price
138
-		if(isset($addon->pricing) && !empty($addon->pricing)){
139
-			if(is_object($addon->pricing)){
140
-				$prices = (Array)$addon->pricing;
138
+		if (isset($addon->pricing) && !empty($addon->pricing)) {
139
+			if (is_object($addon->pricing)) {
140
+				$prices = (Array) $addon->pricing;
141 141
 				$button_args['price'] = reset($prices);
142
-			}elseif(isset($addon->pricing)){
142
+			}elseif (isset($addon->pricing)) {
143 143
 				$button_args['price'] = $addon->pricing;
144 144
 			}
145 145
 		}
146 146
 
147 147
 		// set price text
148
-		if( $button_args['price'] && $button_args['price'] != '0.00' ){
149
-			$button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']);
148
+		if ($button_args['price'] && $button_args['price'] != '0.00') {
149
+			$button_args['price_text'] = sprintf(__('From: $%d', 'invoicing'), $button_args['price']);
150 150
 		}
151 151
 
152 152
 
153 153
 		// set if installed
154
-		if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){
154
+		if (in_array($button_args['install_status'], array('installed', 'latest_installed', 'update_available', 'newer_installed'))) {
155 155
 			$button_args['installed'] = true;
156 156
 		}
157 157
 
158 158
 //		print_r($button_args);
159 159
 		// set if active
160
-		if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){
161
-			if($button_args['type'] != 'themes'){
160
+		if ($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')) {
161
+			if ($button_args['type'] != 'themes') {
162 162
 				$button_args['active'] = is_plugin_active($button_args['file']);
163
-			}else{
163
+			} else {
164 164
 				$button_args['active'] = self::is_theme_active($addon);
165 165
 			}
166 166
 		}
167 167
 
168 168
 		// set button text and class
169
-		if($button_args['active']){
170
-			$button_args['button_text'] = __('Active','invoicing');
169
+		if ($button_args['active']) {
170
+			$button_args['button_text'] = __('Active', 'invoicing');
171 171
 			$button_args['class'] = ' button-secondary disabled ';
172
-		}elseif($button_args['installed']){
173
-			$button_args['button_text'] = __('Activate','invoicing');
172
+		}elseif ($button_args['installed']) {
173
+			$button_args['button_text'] = __('Activate', 'invoicing');
174 174
 
175
-			if($button_args['type'] != 'themes'){
176
-				if ( current_user_can( 'manage_options' ) ) {
177
-					$button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']);
178
-				}else{
175
+			if ($button_args['type'] != 'themes') {
176
+				if (current_user_can('manage_options')) {
177
+					$button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin=' . $button_args['file']), 'activate-plugin_' . $button_args['file']);
178
+				} else {
179 179
 					$button_args['url'] = '#';
180 180
 				}
181
-			}else{
182
-				if ( current_user_can( 'switch_themes' ) ) {
181
+			} else {
182
+				if (current_user_can('switch_themes')) {
183 183
 					$button_args['url'] = self::get_theme_activation_url($addon);
184
-				}else{
184
+				} else {
185 185
 					$button_args['url'] = '#';
186 186
 				}
187 187
 			}
188 188
 
189
-		}else{
190
-			if($button_args['type'] == 'recommended_plugins'){
191
-				$button_args['button_text'] = __('Install','invoicing');
192
-			}else{
193
-				$button_args['button_text'] = __('Get it','invoicing');
189
+		} else {
190
+			if ($button_args['type'] == 'recommended_plugins') {
191
+				$button_args['button_text'] = __('Install', 'invoicing');
192
+			} else {
193
+				$button_args['button_text'] = __('Get it', 'invoicing');
194 194
 
195 195
 				/*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){
196 196
 					$button_args['button_text'] = __('Install','invoicing');
@@ -203,45 +203,45 @@  discard block
 block discarded – undo
203 203
 
204 204
 		
205 205
 		// filter the button arguments
206
-		$button_args = apply_filters('edd_api_button_args',$button_args);
206
+		$button_args = apply_filters('edd_api_button_args', $button_args);
207 207
 //		print_r($button_args);
208 208
 		// set price text
209
-		if(isset($button_args['price_text'])){
209
+		if (isset($button_args['price_text'])) {
210 210
 			?>
211 211
 			<a
212 212
 				target="_blank"
213 213
 				class="addons-price-text"
214
-				href="<?php echo esc_url( $button_args['link'] ); ?>">
215
-				<?php echo esc_html( $button_args['price_text'] ); ?>
214
+				href="<?php echo esc_url($button_args['link']); ?>">
215
+				<?php echo esc_html($button_args['price_text']); ?>
216 216
 			</a>
217 217
 			<?php
218 218
 		}
219 219
 
220 220
 
221 221
 		$target = '';
222
-		if ( ! empty( $button_args['url'] ) ) {
222
+		if (!empty($button_args['url'])) {
223 223
 			$target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" ';
224 224
 		}
225 225
 
226 226
 		?>
227 227
 		<a
228
-			data-licence="<?php echo esc_attr($button_args['license']);?>"
229
-			data-licensing="<?php echo $button_args['licensing'] ? 1 : 0;?>"
230
-			data-title="<?php echo esc_attr($button_args['title']);?>"
231
-			data-type="<?php echo esc_attr($button_args['type']);?>"
232
-			data-text-error-message="<?php _e('Something went wrong!','invoicing');?>"
233
-			data-text-activate="<?php _e('Activate','invoicing');?>"
234
-			data-text-activating="<?php _e('Activating','invoicing');?>"
235
-			data-text-deactivate="<?php _e('Deactivate','invoicing');?>"
236
-			data-text-installed="<?php _e('Installed','invoicing');?>"
237
-			data-text-install="<?php _e('Install','invoicing');?>"
238
-			data-text-installing="<?php _e('Installing','invoicing');?>"
239
-			data-text-error="<?php _e('Error','invoicing');?>"
240
-			<?php if(!empty($button_args['onclick'])){echo " onclick='".$button_args['onclick']."' ";}?>
241
-			<?php echo $target;?>
242
-			class="addons-button  <?php echo esc_attr( $button_args['class'] ); ?>"
243
-			href="<?php echo esc_url( $button_args['url'] ); ?>">
244
-			<?php echo esc_html( $button_args['button_text'] ); ?>
228
+			data-licence="<?php echo esc_attr($button_args['license']); ?>"
229
+			data-licensing="<?php echo $button_args['licensing'] ? 1 : 0; ?>"
230
+			data-title="<?php echo esc_attr($button_args['title']); ?>"
231
+			data-type="<?php echo esc_attr($button_args['type']); ?>"
232
+			data-text-error-message="<?php _e('Something went wrong!', 'invoicing'); ?>"
233
+			data-text-activate="<?php _e('Activate', 'invoicing'); ?>"
234
+			data-text-activating="<?php _e('Activating', 'invoicing'); ?>"
235
+			data-text-deactivate="<?php _e('Deactivate', 'invoicing'); ?>"
236
+			data-text-installed="<?php _e('Installed', 'invoicing'); ?>"
237
+			data-text-install="<?php _e('Install', 'invoicing'); ?>"
238
+			data-text-installing="<?php _e('Installing', 'invoicing'); ?>"
239
+			data-text-error="<?php _e('Error', 'invoicing'); ?>"
240
+			<?php if (!empty($button_args['onclick'])) {echo " onclick='" . $button_args['onclick'] . "' "; }?>
241
+			<?php echo $target; ?>
242
+			class="addons-button  <?php echo esc_attr($button_args['class']); ?>"
243
+			href="<?php echo esc_url($button_args['url']); ?>">
244
+			<?php echo esc_html($button_args['button_text']); ?>
245 245
 		</a>
246 246
 		<?php
247 247
 
@@ -256,35 +256,35 @@  discard block
 block discarded – undo
256 256
 		$tabs            = self::get_tabs();
257 257
 		$sections        = self::get_sections();
258 258
 		$theme           = wp_get_theme();
259
-		$section_keys    = array_keys( $sections );
260
-		$current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys );
261
-		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
262
-		include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' );
259
+		$section_keys    = array_keys($sections);
260
+		$current_section = isset($_GET['section']) ? sanitize_text_field($_GET['section']) : current($section_keys);
261
+		$current_tab     = empty($_GET['tab']) ? 'addons' : sanitize_title($_GET['tab']);
262
+		include_once(WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php');
263 263
 	}
264 264
 
265 265
 	/**
266 266
 	 * A list of recommended wp.org plugins.
267 267
 	 * @return array
268 268
 	 */
269
-	public function get_recommend_wp_plugins(){
269
+	public function get_recommend_wp_plugins() {
270 270
 		$plugins = array(
271 271
             'invoicing-quotes' => array(
272 272
                 'url'   => 'https://wordpress.org/plugins/invoicing-quotes/',
273 273
                 'slug'   => 'invoicing-quotes',
274 274
                 'name'   => 'Quotes',
275
-                'desc'   => __('Allows you to create quotes, send them to clients and convert them to Invoices when accepted by the customer.','invoicing'),
275
+                'desc'   => __('Allows you to create quotes, send them to clients and convert them to Invoices when accepted by the customer.', 'invoicing'),
276 276
             ),
277 277
             'geodirectory' => array(
278 278
                 'url'   => 'https://wordpress.org/plugins/geodirectory/',
279 279
                 'slug'   => 'geodirectory',
280 280
                 'name'   => 'GeoDirectory',
281
-                'desc'   => __('Turn any WordPress theme into a global business directory portal.','invoicing'),
281
+                'desc'   => __('Turn any WordPress theme into a global business directory portal.', 'invoicing'),
282 282
             ),
283 283
             'userswp' => array(
284 284
                 'url'   => 'https://wordpress.org/plugins/userswp/',
285 285
                 'slug'   => 'userswp',
286 286
                 'name'   => 'UsersWP',
287
-                'desc'   => __('Allow frontend user login and registration as well as have slick profile pages.','invoicing'),
287
+                'desc'   => __('Allow frontend user login and registration as well as have slick profile pages.', 'invoicing'),
288 288
             ),
289 289
 		);
290 290
 
Please login to merge, or discard this patch.
includes/libraries/class-ayecode-addons.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -1,7 +1,7 @@
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly
3
-if ( ! defined( 'ABSPATH' ) ) exit;
4
-if(!class_exists('Ayecode_Addons')) {
3
+if (!defined('ABSPATH')) exit;
4
+if (!class_exists('Ayecode_Addons')) {
5 5
 
6 6
     abstract class Ayecode_Addons
7 7
     {
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,6 +1,8 @@
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly
3
-if ( ! defined( 'ABSPATH' ) ) exit;
3
+if ( ! defined( 'ABSPATH' ) ) {
4
+    exit;
5
+}
4 6
 if(!class_exists('Ayecode_Addons')) {
5 7
 
6 8
     abstract class Ayecode_Addons
Please login to merge, or discard this patch.
vendor/ayecode/wp-font-awesome-settings/wp-font-awesome-settings.php 2 patches
Indentation   +385 added lines, -385 removed lines patch added patch discarded remove patch
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
  * Bail if we are not in WP.
14 14
  */
15 15
 if ( ! defined( 'ABSPATH' ) ) {
16
-	exit;
16
+    exit;
17 17
 }
18 18
 
19 19
 /**
@@ -21,294 +21,294 @@  discard block
 block discarded – undo
21 21
  */
22 22
 if ( ! class_exists( 'WP_Font_Awesome_Settings' ) ) {
23 23
 
24
-	/**
25
-	 * A Class to be able to change settings for Font Awesome.
26
-	 *
27
-	 * Class WP_Font_Awesome_Settings
28
-	 * @since 1.0.10 Now able to pass wp.org theme check.
29
-	 * @since 1.0.11 Font Awesome Pro now supported.
30
-	 * @since 1.0.11 Font Awesome Kits now supported.
31
-	 * @ver 1.0.11
32
-	 * @todo decide how to implement textdomain
33
-	 */
34
-	class WP_Font_Awesome_Settings {
35
-
36
-		/**
37
-		 * Class version version.
38
-		 *
39
-		 * @var string
40
-		 */
41
-		public $version = '1.0.11';
42
-
43
-		/**
44
-		 * Class textdomain.
45
-		 *
46
-		 * @var string
47
-		 */
48
-		public $textdomain = 'font-awesome-settings';
49
-
50
-		/**
51
-		 * Latest version of Font Awesome at time of publish published.
52
-		 *
53
-		 * @var string
54
-		 */
55
-		public $latest = "5.8.2";
56
-
57
-		/**
58
-		 * The title.
59
-		 *
60
-		 * @var string
61
-		 */
62
-		public $name = 'Font Awesome';
63
-
64
-		/**
65
-		 * Holds the settings values.
66
-		 *
67
-		 * @var array
68
-		 */
69
-		private $settings;
70
-
71
-		/**
72
-		 * WP_Font_Awesome_Settings instance.
73
-		 *
74
-		 * @access private
75
-		 * @since  1.0.0
76
-		 * @var    WP_Font_Awesome_Settings There can be only one!
77
-		 */
78
-		private static $instance = null;
79
-
80
-		/**
81
-		 * Main WP_Font_Awesome_Settings Instance.
82
-		 *
83
-		 * Ensures only one instance of WP_Font_Awesome_Settings is loaded or can be loaded.
84
-		 *
85
-		 * @since 1.0.0
86
-		 * @static
87
-		 * @return WP_Font_Awesome_Settings - Main instance.
88
-		 */
89
-		public static function instance() {
90
-			if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) {
91
-				self::$instance = new WP_Font_Awesome_Settings;
92
-
93
-				add_action( 'init', array( self::$instance, 'init' ) ); // set settings
94
-
95
-				if ( is_admin() ) {
96
-					add_action( 'admin_menu', array( self::$instance, 'menu_item' ) );
97
-					add_action( 'admin_init', array( self::$instance, 'register_settings' ) );
98
-				}
99
-
100
-				do_action( 'wp_font_awesome_settings_loaded' );
101
-			}
102
-
103
-			return self::$instance;
104
-		}
105
-
106
-		/**
107
-		 * Initiate the settings and add the required action hooks.
108
-		 *
109
-		 * @since 1.0.8 Settings name wrong - FIXED
110
-		 */
111
-		public function init() {
112
-			$this->settings = $this->get_settings();
113
-
114
-			if ( $this->settings['type'] == 'CSS' ) {
115
-
116
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
117
-					add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
118
-				}
119
-
120
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
121
-					add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
122
-				}
123
-
124
-			} else {
125
-
126
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
127
-					add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
128
-				}
129
-
130
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
131
-					add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
132
-				}
133
-			}
134
-
135
-			// remove font awesome if set to do so
136
-			if ( $this->settings['dequeue'] == '1' ) {
137
-				add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 );
138
-			}
139
-
140
-		}
141
-
142
-		/**
143
-		 * Adds the Font Awesome styles.
144
-		 */
145
-		public function enqueue_style() {
146
-			// build url
147
-			$url = $this->get_url();
148
-
149
-			wp_deregister_style( 'font-awesome' ); // deregister in case its already there
150
-			wp_register_style( 'font-awesome', $url, array(), null );
151
-			wp_enqueue_style( 'font-awesome' );
152
-
153
-			if ( $this->settings['shims'] ) {
154
-				$url = $this->get_url( true );
155
-				wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there
156
-				wp_register_style( 'font-awesome-shims', $url, array(), null );
157
-				wp_enqueue_style( 'font-awesome-shims' );
158
-			}
159
-		}
160
-
161
-		/**
162
-		 * Adds the Font Awesome JS.
163
-		 */
164
-		public function enqueue_scripts() {
165
-			// build url
166
-			$url = $this->get_url();
167
-
168
-			$deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script';
169
-			call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there
170
-			wp_register_script( 'font-awesome', $url, array(), null );
171
-			wp_enqueue_script( 'font-awesome' );
172
-
173
-			if ( $this->settings['shims'] ) {
174
-				$url = $this->get_url( true );
175
-				call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there
176
-				wp_register_script( 'font-awesome-shims', $url, array(), null );
177
-				wp_enqueue_script( 'font-awesome-shims' );
178
-			}
179
-		}
180
-
181
-		/**
182
-		 * Get the url of the Font Awesome files.
183
-		 *
184
-		 * @param bool $shims If this is a shim file or not.
185
-		 *
186
-		 * @return string The url to the file.
187
-		 */
188
-		public function get_url( $shims = false ) {
189
-			$script  = $shims ? 'v4-shims' : 'all';
190
-			$sub     = $this->settings['pro'] ? 'pro' : 'use';
191
-			$type    = $this->settings['type'];
192
-			$version = $this->settings['version'];
193
-			$kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : '';
194
-			$url     = '';
195
-
196
-			if ( $type == 'KIT' && $kit_url ) {
197
-				if ( $shims ) {
198
-					// if its a kit then we don't add shims here
199
-					return '';
200
-				}
201
-				$url .= $kit_url; // CDN
202
-				$url .= "?wpfas=true"; // set our var so our version is not removed
203
-			} else {
204
-				$url .= "https://$sub.fontawesome.com/releases/"; // CDN
205
-				$url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version
206
-				$url .= $type == 'CSS' ? 'css/' : 'js/'; // type
207
-				$url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type
208
-				$url .= "?wpfas=true"; // set our var so our version is not removed
209
-			}
210
-
211
-			return $url;
212
-		}
213
-
214
-		/**
215
-		 * Try and remove any other versions of Font Awesome added by other plugins/themes.
216
-		 *
217
-		 * Uses the clean_url filter to try and remove any other Font Awesome files added, it can also add pseudo-elements flag for the JS version.
218
-		 *
219
-		 * @param $url
220
-		 * @param $original_url
221
-		 * @param $_context
222
-		 *
223
-		 * @return string The filtered url.
224
-		 */
225
-		public function remove_font_awesome( $url, $original_url, $_context ) {
226
-
227
-			if ( $_context == 'display'
228
-			     && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false )
229
-			     && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false )
230
-			) {// it's a font-awesome-url (probably)
231
-
232
-				if ( strstr( $url, "wpfas=true" ) !== false ) {
233
-					if ( $this->settings['type'] == 'JS' ) {
234
-						if ( $this->settings['js-pseudo'] ) {
235
-							$url .= "' data-search-pseudo-elements defer='defer";
236
-						} else {
237
-							$url .= "' defer='defer";
238
-						}
239
-					}
240
-				} else {
241
-					$url = ''; // removing the url removes the file
242
-				}
243
-
244
-			}
245
-
246
-			return $url;
247
-		}
248
-
249
-		/**
250
-		 * Register the database settings with WordPress.
251
-		 */
252
-		public function register_settings() {
253
-			register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' );
254
-		}
255
-
256
-		/**
257
-		 * Add the WordPress settings menu item.
258
-		 * @since 1.0.10 Calling function name direct will fail theme check so we don't.
259
-		 */
260
-		public function menu_item() {
261
-			$menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme
262
-			call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array(
263
-				$this,
264
-				'settings_page'
265
-			) );
266
-		}
267
-
268
-		/**
269
-		 * Get the current Font Awesome output settings.
270
-		 *
271
-		 * @return array The array of settings.
272
-		 */
273
-		public function get_settings() {
274
-
275
-			$db_settings = get_option( 'wp-font-awesome-settings' );
276
-
277
-			$defaults = array(
278
-				'type'      => 'CSS', // type to use, CSS or JS or KIT
279
-				'version'   => '', // latest
280
-				'enqueue'   => '', // front and backend
281
-				'shims'     => '1', // default on for now, @todo maybe change to off in 2020
282
-				'js-pseudo' => '0', // if the pseudo elements flag should be set (CPU intensive)
283
-				'dequeue'   => '0', // if we should try to remove other versions added by other plugins/themes
284
-				'pro'       => '0', // if pro CDN url should be used
285
-				'kit-url'   => '', // the kit url
286
-			);
287
-
288
-			$settings = wp_parse_args( $db_settings, $defaults );
289
-
290
-			/**
291
-			 * Filter the Font Awesome settings.
292
-			 *
293
-			 * @todo if we add this filer people might use it and then it defeates the purpose of this class :/
294
-			 */
295
-			return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults );
296
-		}
297
-
298
-
299
-		/**
300
-		 * The settings page html output.
301
-		 */
302
-		public function settings_page() {
303
-			if ( ! current_user_can( 'manage_options' ) ) {
304
-				wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) );
305
-			}
306
-
307
-			// a hidden way to force the update of the verison number vai api instead of waiting the 48 hours
308
-			if ( isset( $_REQUEST['force-version-check'] ) ) {
309
-				$this->get_latest_version( $force_api = true );
310
-			}
311
-			?>
24
+    /**
25
+     * A Class to be able to change settings for Font Awesome.
26
+     *
27
+     * Class WP_Font_Awesome_Settings
28
+     * @since 1.0.10 Now able to pass wp.org theme check.
29
+     * @since 1.0.11 Font Awesome Pro now supported.
30
+     * @since 1.0.11 Font Awesome Kits now supported.
31
+     * @ver 1.0.11
32
+     * @todo decide how to implement textdomain
33
+     */
34
+    class WP_Font_Awesome_Settings {
35
+
36
+        /**
37
+         * Class version version.
38
+         *
39
+         * @var string
40
+         */
41
+        public $version = '1.0.11';
42
+
43
+        /**
44
+         * Class textdomain.
45
+         *
46
+         * @var string
47
+         */
48
+        public $textdomain = 'font-awesome-settings';
49
+
50
+        /**
51
+         * Latest version of Font Awesome at time of publish published.
52
+         *
53
+         * @var string
54
+         */
55
+        public $latest = "5.8.2";
56
+
57
+        /**
58
+         * The title.
59
+         *
60
+         * @var string
61
+         */
62
+        public $name = 'Font Awesome';
63
+
64
+        /**
65
+         * Holds the settings values.
66
+         *
67
+         * @var array
68
+         */
69
+        private $settings;
70
+
71
+        /**
72
+         * WP_Font_Awesome_Settings instance.
73
+         *
74
+         * @access private
75
+         * @since  1.0.0
76
+         * @var    WP_Font_Awesome_Settings There can be only one!
77
+         */
78
+        private static $instance = null;
79
+
80
+        /**
81
+         * Main WP_Font_Awesome_Settings Instance.
82
+         *
83
+         * Ensures only one instance of WP_Font_Awesome_Settings is loaded or can be loaded.
84
+         *
85
+         * @since 1.0.0
86
+         * @static
87
+         * @return WP_Font_Awesome_Settings - Main instance.
88
+         */
89
+        public static function instance() {
90
+            if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) {
91
+                self::$instance = new WP_Font_Awesome_Settings;
92
+
93
+                add_action( 'init', array( self::$instance, 'init' ) ); // set settings
94
+
95
+                if ( is_admin() ) {
96
+                    add_action( 'admin_menu', array( self::$instance, 'menu_item' ) );
97
+                    add_action( 'admin_init', array( self::$instance, 'register_settings' ) );
98
+                }
99
+
100
+                do_action( 'wp_font_awesome_settings_loaded' );
101
+            }
102
+
103
+            return self::$instance;
104
+        }
105
+
106
+        /**
107
+         * Initiate the settings and add the required action hooks.
108
+         *
109
+         * @since 1.0.8 Settings name wrong - FIXED
110
+         */
111
+        public function init() {
112
+            $this->settings = $this->get_settings();
113
+
114
+            if ( $this->settings['type'] == 'CSS' ) {
115
+
116
+                if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
117
+                    add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
118
+                }
119
+
120
+                if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
121
+                    add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
122
+                }
123
+
124
+            } else {
125
+
126
+                if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
127
+                    add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
128
+                }
129
+
130
+                if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
131
+                    add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
132
+                }
133
+            }
134
+
135
+            // remove font awesome if set to do so
136
+            if ( $this->settings['dequeue'] == '1' ) {
137
+                add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 );
138
+            }
139
+
140
+        }
141
+
142
+        /**
143
+         * Adds the Font Awesome styles.
144
+         */
145
+        public function enqueue_style() {
146
+            // build url
147
+            $url = $this->get_url();
148
+
149
+            wp_deregister_style( 'font-awesome' ); // deregister in case its already there
150
+            wp_register_style( 'font-awesome', $url, array(), null );
151
+            wp_enqueue_style( 'font-awesome' );
152
+
153
+            if ( $this->settings['shims'] ) {
154
+                $url = $this->get_url( true );
155
+                wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there
156
+                wp_register_style( 'font-awesome-shims', $url, array(), null );
157
+                wp_enqueue_style( 'font-awesome-shims' );
158
+            }
159
+        }
160
+
161
+        /**
162
+         * Adds the Font Awesome JS.
163
+         */
164
+        public function enqueue_scripts() {
165
+            // build url
166
+            $url = $this->get_url();
167
+
168
+            $deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script';
169
+            call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there
170
+            wp_register_script( 'font-awesome', $url, array(), null );
171
+            wp_enqueue_script( 'font-awesome' );
172
+
173
+            if ( $this->settings['shims'] ) {
174
+                $url = $this->get_url( true );
175
+                call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there
176
+                wp_register_script( 'font-awesome-shims', $url, array(), null );
177
+                wp_enqueue_script( 'font-awesome-shims' );
178
+            }
179
+        }
180
+
181
+        /**
182
+         * Get the url of the Font Awesome files.
183
+         *
184
+         * @param bool $shims If this is a shim file or not.
185
+         *
186
+         * @return string The url to the file.
187
+         */
188
+        public function get_url( $shims = false ) {
189
+            $script  = $shims ? 'v4-shims' : 'all';
190
+            $sub     = $this->settings['pro'] ? 'pro' : 'use';
191
+            $type    = $this->settings['type'];
192
+            $version = $this->settings['version'];
193
+            $kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : '';
194
+            $url     = '';
195
+
196
+            if ( $type == 'KIT' && $kit_url ) {
197
+                if ( $shims ) {
198
+                    // if its a kit then we don't add shims here
199
+                    return '';
200
+                }
201
+                $url .= $kit_url; // CDN
202
+                $url .= "?wpfas=true"; // set our var so our version is not removed
203
+            } else {
204
+                $url .= "https://$sub.fontawesome.com/releases/"; // CDN
205
+                $url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version
206
+                $url .= $type == 'CSS' ? 'css/' : 'js/'; // type
207
+                $url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type
208
+                $url .= "?wpfas=true"; // set our var so our version is not removed
209
+            }
210
+
211
+            return $url;
212
+        }
213
+
214
+        /**
215
+         * Try and remove any other versions of Font Awesome added by other plugins/themes.
216
+         *
217
+         * Uses the clean_url filter to try and remove any other Font Awesome files added, it can also add pseudo-elements flag for the JS version.
218
+         *
219
+         * @param $url
220
+         * @param $original_url
221
+         * @param $_context
222
+         *
223
+         * @return string The filtered url.
224
+         */
225
+        public function remove_font_awesome( $url, $original_url, $_context ) {
226
+
227
+            if ( $_context == 'display'
228
+                 && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false )
229
+                 && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false )
230
+            ) {// it's a font-awesome-url (probably)
231
+
232
+                if ( strstr( $url, "wpfas=true" ) !== false ) {
233
+                    if ( $this->settings['type'] == 'JS' ) {
234
+                        if ( $this->settings['js-pseudo'] ) {
235
+                            $url .= "' data-search-pseudo-elements defer='defer";
236
+                        } else {
237
+                            $url .= "' defer='defer";
238
+                        }
239
+                    }
240
+                } else {
241
+                    $url = ''; // removing the url removes the file
242
+                }
243
+
244
+            }
245
+
246
+            return $url;
247
+        }
248
+
249
+        /**
250
+         * Register the database settings with WordPress.
251
+         */
252
+        public function register_settings() {
253
+            register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' );
254
+        }
255
+
256
+        /**
257
+         * Add the WordPress settings menu item.
258
+         * @since 1.0.10 Calling function name direct will fail theme check so we don't.
259
+         */
260
+        public function menu_item() {
261
+            $menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme
262
+            call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array(
263
+                $this,
264
+                'settings_page'
265
+            ) );
266
+        }
267
+
268
+        /**
269
+         * Get the current Font Awesome output settings.
270
+         *
271
+         * @return array The array of settings.
272
+         */
273
+        public function get_settings() {
274
+
275
+            $db_settings = get_option( 'wp-font-awesome-settings' );
276
+
277
+            $defaults = array(
278
+                'type'      => 'CSS', // type to use, CSS or JS or KIT
279
+                'version'   => '', // latest
280
+                'enqueue'   => '', // front and backend
281
+                'shims'     => '1', // default on for now, @todo maybe change to off in 2020
282
+                'js-pseudo' => '0', // if the pseudo elements flag should be set (CPU intensive)
283
+                'dequeue'   => '0', // if we should try to remove other versions added by other plugins/themes
284
+                'pro'       => '0', // if pro CDN url should be used
285
+                'kit-url'   => '', // the kit url
286
+            );
287
+
288
+            $settings = wp_parse_args( $db_settings, $defaults );
289
+
290
+            /**
291
+             * Filter the Font Awesome settings.
292
+             *
293
+             * @todo if we add this filer people might use it and then it defeates the purpose of this class :/
294
+             */
295
+            return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults );
296
+        }
297
+
298
+
299
+        /**
300
+         * The settings page html output.
301
+         */
302
+        public function settings_page() {
303
+            if ( ! current_user_can( 'manage_options' ) ) {
304
+                wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) );
305
+            }
306
+
307
+            // a hidden way to force the update of the verison number vai api instead of waiting the 48 hours
308
+            if ( isset( $_REQUEST['force-version-check'] ) ) {
309
+                $this->get_latest_version( $force_api = true );
310
+            }
311
+            ?>
312 312
 			<style>
313 313
 				.wpfas-kit-show {
314 314
 					display: none;
@@ -326,10 +326,10 @@  discard block
 block discarded – undo
326 326
 				<h1><?php echo $this->name; ?></h1>
327 327
 				<form method="post" action="options.php">
328 328
 					<?php
329
-					settings_fields( 'wp-font-awesome-settings' );
330
-					do_settings_sections( 'wp-font-awesome-settings' );
331
-					$kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : '';
332
-					?>
329
+                    settings_fields( 'wp-font-awesome-settings' );
330
+                    do_settings_sections( 'wp-font-awesome-settings' );
331
+                    $kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : '';
332
+                    ?>
333 333
 					<table class="form-table wpfas-table-settings <?php echo esc_attr( $kit_set ); ?>">
334 334
 						<tr valign="top">
335 335
 							<th scope="row"><label
@@ -355,12 +355,12 @@  discard block
 block discarded – undo
355 355
 								       value="<?php echo esc_attr( $this->settings['kit-url'] ); ?>"
356 356
 								       placeholder="https://kit.fontawesome.com/123abc.js"/>
357 357
 								<span><?php
358
-									echo sprintf(
359
-										__( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ),
360
-										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>',
361
-										'</a>'
362
-									);
363
-									?></span>
358
+                                    echo sprintf(
359
+                                        __( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ),
360
+                                        '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>',
361
+                                        '</a>'
362
+                                    );
363
+                                    ?></span>
364 364
 							</td>
365 365
 						</tr>
366 366
 
@@ -420,14 +420,14 @@  discard block
 block discarded – undo
420 420
 								<input type="checkbox" name="wp-font-awesome-settings[pro]"
421 421
 								       value="1" <?php checked( $this->settings['pro'], '1' ); ?> id="wpfas-pro"/>
422 422
 								<span><?php
423
-									echo sprintf(
424
-										__( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ),
425
-										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>',
426
-										'</a>',
427
-										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>',
428
-										'</a>'
429
-									);
430
-									?></span>
423
+                                    echo sprintf(
424
+                                        __( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ),
425
+                                        '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>',
426
+                                        '</a>',
427
+                                        '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>',
428
+                                        '</a>'
429
+                                    );
430
+                                    ?></span>
431 431
 							</td>
432 432
 						</tr>
433 433
 
@@ -470,88 +470,88 @@  discard block
 block discarded – undo
470 470
 
471 471
 					</table>
472 472
 					<?php
473
-					submit_button();
474
-					?>
473
+                    submit_button();
474
+                    ?>
475 475
 				</form>
476 476
 
477 477
 				<div id="wpfas-version"><?php echo $this->version; ?></div>
478 478
 			</div>
479 479
 
480 480
 			<?php
481
-		}
482
-
483
-		/**
484
-		 * Check a version number is valid and if so return it or else return an empty string.
485
-		 *
486
-		 * @param $version string The version number to check.
487
-		 *
488
-		 * @since 1.0.6
489
-		 *
490
-		 * @return string Either a valid version number or an empty string.
491
-		 */
492
-		public function validate_version_number( $version ) {
493
-
494
-			if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) {
495
-				// valid
496
-			} else {
497
-				$version = '';// not validated
498
-			}
499
-
500
-			return $version;
501
-		}
502
-
503
-
504
-		/**
505
-		 * Get the latest version of Font Awesome.
506
-		 *
507
-		 * We check for a cached bersion and if none we will check for a live version via API and then cache it for 48 hours.
508
-		 *
509
-		 * @since 1.0.7
510
-		 * @return mixed|string The latest version number found.
511
-		 */
512
-		public function get_latest_version( $force_api = false ) {
513
-			$latest_version = $this->latest;
514
-
515
-			$cache = get_transient( 'wp-font-awesome-settings-version' );
516
-
517
-			if ( $cache === false || $force_api ) { // its not set
518
-				$api_ver = $this->get_latest_version_from_api();
519
-				if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) {
520
-					$latest_version = $api_ver;
521
-					set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS );
522
-				}
523
-			} elseif ( $this->validate_version_number( $cache ) ) {
524
-				if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) {
525
-					$latest_version = $cache;
526
-				}
527
-			}
528
-
529
-			return $latest_version;
530
-		}
531
-
532
-		/**
533
-		 * Get the latest Font Awesome version from the github API.
534
-		 *
535
-		 * @since 1.0.7
536
-		 * @return string The latest version number or `0` on API fail.
537
-		 */
538
-		public function get_latest_version_from_api() {
539
-			$version  = "0";
540
-			$response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" );
541
-			if ( ! is_wp_error( $response ) && is_array( $response ) ) {
542
-				$api_response = json_decode( wp_remote_retrieve_body( $response ), true );
543
-				if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) {
544
-					$version = $api_response['tag_name'];
545
-				}
546
-			}
547
-
548
-			return $version;
549
-		}
550
-
551
-	}
552
-
553
-	/**
554
-	 * Run the class if found.
555
-	 */
556
-	WP_Font_Awesome_Settings::instance();
481
+        }
482
+
483
+        /**
484
+         * Check a version number is valid and if so return it or else return an empty string.
485
+         *
486
+         * @param $version string The version number to check.
487
+         *
488
+         * @since 1.0.6
489
+         *
490
+         * @return string Either a valid version number or an empty string.
491
+         */
492
+        public function validate_version_number( $version ) {
493
+
494
+            if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) {
495
+                // valid
496
+            } else {
497
+                $version = '';// not validated
498
+            }
499
+
500
+            return $version;
501
+        }
502
+
503
+
504
+        /**
505
+         * Get the latest version of Font Awesome.
506
+         *
507
+         * We check for a cached bersion and if none we will check for a live version via API and then cache it for 48 hours.
508
+         *
509
+         * @since 1.0.7
510
+         * @return mixed|string The latest version number found.
511
+         */
512
+        public function get_latest_version( $force_api = false ) {
513
+            $latest_version = $this->latest;
514
+
515
+            $cache = get_transient( 'wp-font-awesome-settings-version' );
516
+
517
+            if ( $cache === false || $force_api ) { // its not set
518
+                $api_ver = $this->get_latest_version_from_api();
519
+                if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) {
520
+                    $latest_version = $api_ver;
521
+                    set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS );
522
+                }
523
+            } elseif ( $this->validate_version_number( $cache ) ) {
524
+                if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) {
525
+                    $latest_version = $cache;
526
+                }
527
+            }
528
+
529
+            return $latest_version;
530
+        }
531
+
532
+        /**
533
+         * Get the latest Font Awesome version from the github API.
534
+         *
535
+         * @since 1.0.7
536
+         * @return string The latest version number or `0` on API fail.
537
+         */
538
+        public function get_latest_version_from_api() {
539
+            $version  = "0";
540
+            $response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" );
541
+            if ( ! is_wp_error( $response ) && is_array( $response ) ) {
542
+                $api_response = json_decode( wp_remote_retrieve_body( $response ), true );
543
+                if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) {
544
+                    $version = $api_response['tag_name'];
545
+                }
546
+            }
547
+
548
+            return $version;
549
+        }
550
+
551
+    }
552
+
553
+    /**
554
+     * Run the class if found.
555
+     */
556
+    WP_Font_Awesome_Settings::instance();
557 557
 }
558 558
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +107 added lines, -107 removed lines patch added patch discarded remove patch
@@ -12,14 +12,14 @@  discard block
 block discarded – undo
12 12
 /**
13 13
  * Bail if we are not in WP.
14 14
  */
15
-if ( ! defined( 'ABSPATH' ) ) {
15
+if (!defined('ABSPATH')) {
16 16
 	exit;
17 17
 }
18 18
 
19 19
 /**
20 20
  * Only add if the class does not already exist.
21 21
  */
22
-if ( ! class_exists( 'WP_Font_Awesome_Settings' ) ) {
22
+if (!class_exists('WP_Font_Awesome_Settings')) {
23 23
 
24 24
 	/**
25 25
 	 * A Class to be able to change settings for Font Awesome.
@@ -87,17 +87,17 @@  discard block
 block discarded – undo
87 87
 		 * @return WP_Font_Awesome_Settings - Main instance.
88 88
 		 */
89 89
 		public static function instance() {
90
-			if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) {
90
+			if (!isset(self::$instance) && !(self::$instance instanceof WP_Font_Awesome_Settings)) {
91 91
 				self::$instance = new WP_Font_Awesome_Settings;
92 92
 
93
-				add_action( 'init', array( self::$instance, 'init' ) ); // set settings
93
+				add_action('init', array(self::$instance, 'init')); // set settings
94 94
 
95
-				if ( is_admin() ) {
96
-					add_action( 'admin_menu', array( self::$instance, 'menu_item' ) );
97
-					add_action( 'admin_init', array( self::$instance, 'register_settings' ) );
95
+				if (is_admin()) {
96
+					add_action('admin_menu', array(self::$instance, 'menu_item'));
97
+					add_action('admin_init', array(self::$instance, 'register_settings'));
98 98
 				}
99 99
 
100
-				do_action( 'wp_font_awesome_settings_loaded' );
100
+				do_action('wp_font_awesome_settings_loaded');
101 101
 			}
102 102
 
103 103
 			return self::$instance;
@@ -111,30 +111,30 @@  discard block
 block discarded – undo
111 111
 		public function init() {
112 112
 			$this->settings = $this->get_settings();
113 113
 
114
-			if ( $this->settings['type'] == 'CSS' ) {
114
+			if ($this->settings['type'] == 'CSS') {
115 115
 
116
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
117
-					add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
116
+				if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend') {
117
+					add_action('wp_enqueue_scripts', array($this, 'enqueue_style'), 5000);
118 118
 				}
119 119
 
120
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
121
-					add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
120
+				if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend') {
121
+					add_action('admin_enqueue_scripts', array($this, 'enqueue_style'), 5000);
122 122
 				}
123 123
 
124 124
 			} else {
125 125
 
126
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
127
-					add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
126
+				if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend') {
127
+					add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts'), 5000);
128 128
 				}
129 129
 
130
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
131
-					add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
130
+				if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend') {
131
+					add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts'), 5000);
132 132
 				}
133 133
 			}
134 134
 
135 135
 			// remove font awesome if set to do so
136
-			if ( $this->settings['dequeue'] == '1' ) {
137
-				add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 );
136
+			if ($this->settings['dequeue'] == '1') {
137
+				add_action('clean_url', array($this, 'remove_font_awesome'), 5000, 3);
138 138
 			}
139 139
 
140 140
 		}
@@ -146,15 +146,15 @@  discard block
 block discarded – undo
146 146
 			// build url
147 147
 			$url = $this->get_url();
148 148
 
149
-			wp_deregister_style( 'font-awesome' ); // deregister in case its already there
150
-			wp_register_style( 'font-awesome', $url, array(), null );
151
-			wp_enqueue_style( 'font-awesome' );
149
+			wp_deregister_style('font-awesome'); // deregister in case its already there
150
+			wp_register_style('font-awesome', $url, array(), null);
151
+			wp_enqueue_style('font-awesome');
152 152
 
153
-			if ( $this->settings['shims'] ) {
154
-				$url = $this->get_url( true );
155
-				wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there
156
-				wp_register_style( 'font-awesome-shims', $url, array(), null );
157
-				wp_enqueue_style( 'font-awesome-shims' );
153
+			if ($this->settings['shims']) {
154
+				$url = $this->get_url(true);
155
+				wp_deregister_style('font-awesome-shims'); // deregister in case its already there
156
+				wp_register_style('font-awesome-shims', $url, array(), null);
157
+				wp_enqueue_style('font-awesome-shims');
158 158
 			}
159 159
 		}
160 160
 
@@ -166,15 +166,15 @@  discard block
 block discarded – undo
166 166
 			$url = $this->get_url();
167 167
 
168 168
 			$deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script';
169
-			call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there
170
-			wp_register_script( 'font-awesome', $url, array(), null );
171
-			wp_enqueue_script( 'font-awesome' );
172
-
173
-			if ( $this->settings['shims'] ) {
174
-				$url = $this->get_url( true );
175
-				call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there
176
-				wp_register_script( 'font-awesome-shims', $url, array(), null );
177
-				wp_enqueue_script( 'font-awesome-shims' );
169
+			call_user_func($deregister_function, 'font-awesome'); // deregister in case its already there
170
+			wp_register_script('font-awesome', $url, array(), null);
171
+			wp_enqueue_script('font-awesome');
172
+
173
+			if ($this->settings['shims']) {
174
+				$url = $this->get_url(true);
175
+				call_user_func($deregister_function, 'font-awesome-shims'); // deregister in case its already there
176
+				wp_register_script('font-awesome-shims', $url, array(), null);
177
+				wp_enqueue_script('font-awesome-shims');
178 178
 			}
179 179
 		}
180 180
 
@@ -185,16 +185,16 @@  discard block
 block discarded – undo
185 185
 		 *
186 186
 		 * @return string The url to the file.
187 187
 		 */
188
-		public function get_url( $shims = false ) {
188
+		public function get_url($shims = false) {
189 189
 			$script  = $shims ? 'v4-shims' : 'all';
190 190
 			$sub     = $this->settings['pro'] ? 'pro' : 'use';
191 191
 			$type    = $this->settings['type'];
192 192
 			$version = $this->settings['version'];
193
-			$kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : '';
193
+			$kit_url = $this->settings['kit-url'] ? esc_url($this->settings['kit-url']) : '';
194 194
 			$url     = '';
195 195
 
196
-			if ( $type == 'KIT' && $kit_url ) {
197
-				if ( $shims ) {
196
+			if ($type == 'KIT' && $kit_url) {
197
+				if ($shims) {
198 198
 					// if its a kit then we don't add shims here
199 199
 					return '';
200 200
 				}
@@ -202,7 +202,7 @@  discard block
 block discarded – undo
202 202
 				$url .= "?wpfas=true"; // set our var so our version is not removed
203 203
 			} else {
204 204
 				$url .= "https://$sub.fontawesome.com/releases/"; // CDN
205
-				$url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version
205
+				$url .= !empty($version) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version
206 206
 				$url .= $type == 'CSS' ? 'css/' : 'js/'; // type
207 207
 				$url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type
208 208
 				$url .= "?wpfas=true"; // set our var so our version is not removed
@@ -222,16 +222,16 @@  discard block
 block discarded – undo
222 222
 		 *
223 223
 		 * @return string The filtered url.
224 224
 		 */
225
-		public function remove_font_awesome( $url, $original_url, $_context ) {
225
+		public function remove_font_awesome($url, $original_url, $_context) {
226 226
 
227
-			if ( $_context == 'display'
228
-			     && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false )
229
-			     && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false )
227
+			if ($_context == 'display'
228
+			     && (strstr($url, "fontawesome") !== false || strstr($url, "font-awesome") !== false)
229
+			     && (strstr($url, ".js") !== false || strstr($url, ".css") !== false)
230 230
 			) {// it's a font-awesome-url (probably)
231 231
 
232
-				if ( strstr( $url, "wpfas=true" ) !== false ) {
233
-					if ( $this->settings['type'] == 'JS' ) {
234
-						if ( $this->settings['js-pseudo'] ) {
232
+				if (strstr($url, "wpfas=true") !== false) {
233
+					if ($this->settings['type'] == 'JS') {
234
+						if ($this->settings['js-pseudo']) {
235 235
 							$url .= "' data-search-pseudo-elements defer='defer";
236 236
 						} else {
237 237
 							$url .= "' defer='defer";
@@ -250,7 +250,7 @@  discard block
 block discarded – undo
250 250
 		 * Register the database settings with WordPress.
251 251
 		 */
252 252
 		public function register_settings() {
253
-			register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' );
253
+			register_setting('wp-font-awesome-settings', 'wp-font-awesome-settings');
254 254
 		}
255 255
 
256 256
 		/**
@@ -259,10 +259,10 @@  discard block
 block discarded – undo
259 259
 		 */
260 260
 		public function menu_item() {
261 261
 			$menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme
262
-			call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array(
262
+			call_user_func($menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array(
263 263
 				$this,
264 264
 				'settings_page'
265
-			) );
265
+			));
266 266
 		}
267 267
 
268 268
 		/**
@@ -272,7 +272,7 @@  discard block
 block discarded – undo
272 272
 		 */
273 273
 		public function get_settings() {
274 274
 
275
-			$db_settings = get_option( 'wp-font-awesome-settings' );
275
+			$db_settings = get_option('wp-font-awesome-settings');
276 276
 
277 277
 			$defaults = array(
278 278
 				'type'      => 'CSS', // type to use, CSS or JS or KIT
@@ -285,14 +285,14 @@  discard block
 block discarded – undo
285 285
 				'kit-url'   => '', // the kit url
286 286
 			);
287 287
 
288
-			$settings = wp_parse_args( $db_settings, $defaults );
288
+			$settings = wp_parse_args($db_settings, $defaults);
289 289
 
290 290
 			/**
291 291
 			 * Filter the Font Awesome settings.
292 292
 			 *
293 293
 			 * @todo if we add this filer people might use it and then it defeates the purpose of this class :/
294 294
 			 */
295
-			return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults );
295
+			return $this->settings = apply_filters('wp-font-awesome-settings', $settings, $db_settings, $defaults);
296 296
 		}
297 297
 
298 298
 
@@ -300,13 +300,13 @@  discard block
 block discarded – undo
300 300
 		 * The settings page html output.
301 301
 		 */
302 302
 		public function settings_page() {
303
-			if ( ! current_user_can( 'manage_options' ) ) {
304
-				wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) );
303
+			if (!current_user_can('manage_options')) {
304
+				wp_die(__('You do not have sufficient permissions to access this page.', 'font-awesome-settings'));
305 305
 			}
306 306
 
307 307
 			// a hidden way to force the update of the verison number vai api instead of waiting the 48 hours
308
-			if ( isset( $_REQUEST['force-version-check'] ) ) {
309
-				$this->get_latest_version( $force_api = true );
308
+			if (isset($_REQUEST['force-version-check'])) {
309
+				$this->get_latest_version($force_api = true);
310 310
 			}
311 311
 			?>
312 312
 			<style>
@@ -326,37 +326,37 @@  discard block
 block discarded – undo
326 326
 				<h1><?php echo $this->name; ?></h1>
327 327
 				<form method="post" action="options.php">
328 328
 					<?php
329
-					settings_fields( 'wp-font-awesome-settings' );
330
-					do_settings_sections( 'wp-font-awesome-settings' );
329
+					settings_fields('wp-font-awesome-settings');
330
+					do_settings_sections('wp-font-awesome-settings');
331 331
 					$kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : '';
332 332
 					?>
333
-					<table class="form-table wpfas-table-settings <?php echo esc_attr( $kit_set ); ?>">
333
+					<table class="form-table wpfas-table-settings <?php echo esc_attr($kit_set); ?>">
334 334
 						<tr valign="top">
335 335
 							<th scope="row"><label
336
-									for="wpfas-type"><?php _e( 'Type', 'font-awesome-settings' ); ?></label></th>
336
+									for="wpfas-type"><?php _e('Type', 'font-awesome-settings'); ?></label></th>
337 337
 							<td>
338 338
 								<select name="wp-font-awesome-settings[type]" id="wpfas-type"
339 339
 								        onchange="if(this.value=='KIT'){jQuery('.wpfas-table-settings').addClass('wpfas-kit-set');}else{jQuery('.wpfas-table-settings').removeClass('wpfas-kit-set');}">
340 340
 									<option
341
-										value="CSS" <?php selected( $this->settings['type'], 'CSS' ); ?>><?php _e( 'CSS (default)', 'font-awesome-settings' ); ?></option>
342
-									<option value="JS" <?php selected( $this->settings['type'], 'JS' ); ?>>JS</option>
341
+										value="CSS" <?php selected($this->settings['type'], 'CSS'); ?>><?php _e('CSS (default)', 'font-awesome-settings'); ?></option>
342
+									<option value="JS" <?php selected($this->settings['type'], 'JS'); ?>>JS</option>
343 343
 									<option
344
-										value="KIT" <?php selected( $this->settings['type'], 'KIT' ); ?>><?php _e( 'Kits (settings managed on fontawesome.com)', 'font-awesome-settings' ); ?></option>
344
+										value="KIT" <?php selected($this->settings['type'], 'KIT'); ?>><?php _e('Kits (settings managed on fontawesome.com)', 'font-awesome-settings'); ?></option>
345 345
 								</select>
346 346
 							</td>
347 347
 						</tr>
348 348
 
349 349
 						<tr valign="top" class="wpfas-kit-show">
350 350
 							<th scope="row"><label
351
-									for="wpfas-kit-url"><?php _e( 'Kit URL', 'font-awesome-settings' ); ?></label></th>
351
+									for="wpfas-kit-url"><?php _e('Kit URL', 'font-awesome-settings'); ?></label></th>
352 352
 							<td>
353 353
 								<input class="regular-text" id="wpfas-kit-url" type="url"
354 354
 								       name="wp-font-awesome-settings[kit-url]"
355
-								       value="<?php echo esc_attr( $this->settings['kit-url'] ); ?>"
355
+								       value="<?php echo esc_attr($this->settings['kit-url']); ?>"
356 356
 								       placeholder="https://kit.fontawesome.com/123abc.js"/>
357 357
 								<span><?php
358 358
 									echo sprintf(
359
-										__( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ),
359
+										__('Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings'),
360 360
 										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>',
361 361
 										'</a>'
362 362
 									);
@@ -366,31 +366,31 @@  discard block
 block discarded – undo
366 366
 
367 367
 						<tr valign="top" class="wpfas-kit-hide">
368 368
 							<th scope="row"><label
369
-									for="wpfas-version"><?php _e( 'Version', 'font-awesome-settings' ); ?></label></th>
369
+									for="wpfas-version"><?php _e('Version', 'font-awesome-settings'); ?></label></th>
370 370
 							<td>
371 371
 								<select name="wp-font-awesome-settings[version]" id="wpfas-version">
372 372
 									<option
373
-										value="" <?php selected( $this->settings['version'], '' ); ?>><?php echo sprintf( __( 'Latest - %s (default)', 'font-awesome-settings' ), $this->get_latest_version() ); ?>
373
+										value="" <?php selected($this->settings['version'], ''); ?>><?php echo sprintf(__('Latest - %s (default)', 'font-awesome-settings'), $this->get_latest_version()); ?>
374 374
 									</option>
375
-									<option value="5.6.0" <?php selected( $this->settings['version'], '5.6.0' ); ?>>
375
+									<option value="5.6.0" <?php selected($this->settings['version'], '5.6.0'); ?>>
376 376
 										5.6.0
377 377
 									</option>
378
-									<option value="5.5.0" <?php selected( $this->settings['version'], '5.5.0' ); ?>>
378
+									<option value="5.5.0" <?php selected($this->settings['version'], '5.5.0'); ?>>
379 379
 										5.5.0
380 380
 									</option>
381
-									<option value="5.4.0" <?php selected( $this->settings['version'], '5.4.0' ); ?>>
381
+									<option value="5.4.0" <?php selected($this->settings['version'], '5.4.0'); ?>>
382 382
 										5.4.0
383 383
 									</option>
384
-									<option value="5.3.0" <?php selected( $this->settings['version'], '5.3.0' ); ?>>
384
+									<option value="5.3.0" <?php selected($this->settings['version'], '5.3.0'); ?>>
385 385
 										5.3.0
386 386
 									</option>
387
-									<option value="5.2.0" <?php selected( $this->settings['version'], '5.2.0' ); ?>>
387
+									<option value="5.2.0" <?php selected($this->settings['version'], '5.2.0'); ?>>
388 388
 										5.2.0
389 389
 									</option>
390
-									<option value="5.1.0" <?php selected( $this->settings['version'], '5.1.0' ); ?>>
390
+									<option value="5.1.0" <?php selected($this->settings['version'], '5.1.0'); ?>>
391 391
 										5.1.0
392 392
 									</option>
393
-									<option value="4.7.0" <?php selected( $this->settings['version'], '4.7.0' ); ?>>
393
+									<option value="4.7.0" <?php selected($this->settings['version'], '4.7.0'); ?>>
394 394
 										4.7.1 (CSS only)
395 395
 									</option>
396 396
 								</select>
@@ -399,29 +399,29 @@  discard block
 block discarded – undo
399 399
 
400 400
 						<tr valign="top">
401 401
 							<th scope="row"><label
402
-									for="wpfas-enqueue"><?php _e( 'Enqueue', 'font-awesome-settings' ); ?></label></th>
402
+									for="wpfas-enqueue"><?php _e('Enqueue', 'font-awesome-settings'); ?></label></th>
403 403
 							<td>
404 404
 								<select name="wp-font-awesome-settings[enqueue]" id="wpfas-enqueue">
405 405
 									<option
406
-										value="" <?php selected( $this->settings['enqueue'], '' ); ?>><?php _e( 'Frontend + Backend (default)', 'font-awesome-settings' ); ?></option>
406
+										value="" <?php selected($this->settings['enqueue'], ''); ?>><?php _e('Frontend + Backend (default)', 'font-awesome-settings'); ?></option>
407 407
 									<option
408
-										value="frontend" <?php selected( $this->settings['enqueue'], 'frontend' ); ?>><?php _e( 'Frontend', 'font-awesome-settings' ); ?></option>
408
+										value="frontend" <?php selected($this->settings['enqueue'], 'frontend'); ?>><?php _e('Frontend', 'font-awesome-settings'); ?></option>
409 409
 									<option
410
-										value="backend" <?php selected( $this->settings['enqueue'], 'backend' ); ?>><?php _e( 'Backend', 'font-awesome-settings' ); ?></option>
410
+										value="backend" <?php selected($this->settings['enqueue'], 'backend'); ?>><?php _e('Backend', 'font-awesome-settings'); ?></option>
411 411
 								</select>
412 412
 							</td>
413 413
 						</tr>
414 414
 
415 415
 						<tr valign="top" class="wpfas-kit-hide">
416 416
 							<th scope="row"><label
417
-									for="wpfas-pro"><?php _e( 'Enable pro', 'font-awesome-settings' ); ?></label></th>
417
+									for="wpfas-pro"><?php _e('Enable pro', 'font-awesome-settings'); ?></label></th>
418 418
 							<td>
419 419
 								<input type="hidden" name="wp-font-awesome-settings[pro]" value="0"/>
420 420
 								<input type="checkbox" name="wp-font-awesome-settings[pro]"
421
-								       value="1" <?php checked( $this->settings['pro'], '1' ); ?> id="wpfas-pro"/>
421
+								       value="1" <?php checked($this->settings['pro'], '1'); ?> id="wpfas-pro"/>
422 422
 								<span><?php
423 423
 									echo sprintf(
424
-										__( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ),
424
+										__('Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings'),
425 425
 										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>',
426 426
 										'</a>',
427 427
 										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>',
@@ -433,38 +433,38 @@  discard block
 block discarded – undo
433 433
 
434 434
 						<tr valign="top" class="wpfas-kit-hide">
435 435
 							<th scope="row"><label
436
-									for="wpfas-shims"><?php _e( 'Enable v4 shims compatibility', 'font-awesome-settings' ); ?></label>
436
+									for="wpfas-shims"><?php _e('Enable v4 shims compatibility', 'font-awesome-settings'); ?></label>
437 437
 							</th>
438 438
 							<td>
439 439
 								<input type="hidden" name="wp-font-awesome-settings[shims]" value="0"/>
440 440
 								<input type="checkbox" name="wp-font-awesome-settings[shims]"
441
-								       value="1" <?php checked( $this->settings['shims'], '1' ); ?> id="wpfas-shims"/>
442
-								<span><?php _e( 'This enables v4 classes to work with v5, sort of like a band-aid until everyone has updated everything to v5.', 'font-awesome-settings' ); ?></span>
441
+								       value="1" <?php checked($this->settings['shims'], '1'); ?> id="wpfas-shims"/>
442
+								<span><?php _e('This enables v4 classes to work with v5, sort of like a band-aid until everyone has updated everything to v5.', 'font-awesome-settings'); ?></span>
443 443
 							</td>
444 444
 						</tr>
445 445
 
446 446
 						<tr valign="top" class="wpfas-kit-hide">
447 447
 							<th scope="row"><label
448
-									for="wpfas-js-pseudo"><?php _e( 'Enable JS pseudo elements (not recommended)', 'font-awesome-settings' ); ?></label>
448
+									for="wpfas-js-pseudo"><?php _e('Enable JS pseudo elements (not recommended)', 'font-awesome-settings'); ?></label>
449 449
 							</th>
450 450
 							<td>
451 451
 								<input type="hidden" name="wp-font-awesome-settings[js-pseudo]" value="0"/>
452 452
 								<input type="checkbox" name="wp-font-awesome-settings[js-pseudo]"
453
-								       value="1" <?php checked( $this->settings['js-pseudo'], '1' ); ?>
453
+								       value="1" <?php checked($this->settings['js-pseudo'], '1'); ?>
454 454
 								       id="wpfas-js-pseudo"/>
455
-								<span><?php _e( 'Used only with the JS version, this will make pseudo-elements work but can be CPU intensive on some sites.', 'font-awesome-settings' ); ?></span>
455
+								<span><?php _e('Used only with the JS version, this will make pseudo-elements work but can be CPU intensive on some sites.', 'font-awesome-settings'); ?></span>
456 456
 							</td>
457 457
 						</tr>
458 458
 
459 459
 						<tr valign="top">
460 460
 							<th scope="row"><label
461
-									for="wpfas-dequeue"><?php _e( 'Dequeue', 'font-awesome-settings' ); ?></label></th>
461
+									for="wpfas-dequeue"><?php _e('Dequeue', 'font-awesome-settings'); ?></label></th>
462 462
 							<td>
463 463
 								<input type="hidden" name="wp-font-awesome-settings[dequeue]" value="0"/>
464 464
 								<input type="checkbox" name="wp-font-awesome-settings[dequeue]"
465
-								       value="1" <?php checked( $this->settings['dequeue'], '1' ); ?>
465
+								       value="1" <?php checked($this->settings['dequeue'], '1'); ?>
466 466
 								       id="wpfas-dequeue"/>
467
-								<span><?php _e( 'This will try to dequeue any other Font Awesome versions loaded by other sources if they are added with `font-awesome` or `fontawesome` in the name.', 'font-awesome-settings' ); ?></span>
467
+								<span><?php _e('This will try to dequeue any other Font Awesome versions loaded by other sources if they are added with `font-awesome` or `fontawesome` in the name.', 'font-awesome-settings'); ?></span>
468 468
 							</td>
469 469
 						</tr>
470 470
 
@@ -489,12 +489,12 @@  discard block
 block discarded – undo
489 489
 		 *
490 490
 		 * @return string Either a valid version number or an empty string.
491 491
 		 */
492
-		public function validate_version_number( $version ) {
492
+		public function validate_version_number($version) {
493 493
 
494
-			if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) {
494
+			if (version_compare($version, '0.0.1', '>=') >= 0) {
495 495
 				// valid
496 496
 			} else {
497
-				$version = '';// not validated
497
+				$version = ''; // not validated
498 498
 			}
499 499
 
500 500
 			return $version;
@@ -509,19 +509,19 @@  discard block
 block discarded – undo
509 509
 		 * @since 1.0.7
510 510
 		 * @return mixed|string The latest version number found.
511 511
 		 */
512
-		public function get_latest_version( $force_api = false ) {
512
+		public function get_latest_version($force_api = false) {
513 513
 			$latest_version = $this->latest;
514 514
 
515
-			$cache = get_transient( 'wp-font-awesome-settings-version' );
515
+			$cache = get_transient('wp-font-awesome-settings-version');
516 516
 
517
-			if ( $cache === false || $force_api ) { // its not set
517
+			if ($cache === false || $force_api) { // its not set
518 518
 				$api_ver = $this->get_latest_version_from_api();
519
-				if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) {
519
+				if (version_compare($api_ver, $this->latest, '>=') >= 0) {
520 520
 					$latest_version = $api_ver;
521
-					set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS );
521
+					set_transient('wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS);
522 522
 				}
523
-			} elseif ( $this->validate_version_number( $cache ) ) {
524
-				if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) {
523
+			} elseif ($this->validate_version_number($cache)) {
524
+				if (version_compare($cache, $this->latest, '>=') >= 0) {
525 525
 					$latest_version = $cache;
526 526
 				}
527 527
 			}
@@ -537,10 +537,10 @@  discard block
 block discarded – undo
537 537
 		 */
538 538
 		public function get_latest_version_from_api() {
539 539
 			$version  = "0";
540
-			$response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" );
541
-			if ( ! is_wp_error( $response ) && is_array( $response ) ) {
542
-				$api_response = json_decode( wp_remote_retrieve_body( $response ), true );
543
-				if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) {
540
+			$response = wp_remote_get("https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest");
541
+			if (!is_wp_error($response) && is_array($response)) {
542
+				$api_response = json_decode(wp_remote_retrieve_body($response), true);
543
+				if (isset($api_response['tag_name']) && version_compare($api_response['tag_name'], $this->latest, '>=') >= 0 && empty($api_response['prerelease'])) {
544 544
 					$version = $api_response['tag_name'];
545 545
 				}
546 546
 			}
Please login to merge, or discard this patch.
includes/abstracts/abstract-wpinv-privacy.php 1 patch
Spacing   +18 added lines, -18 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Abstract privacy class.
4 4
  */
5 5
 
6
-defined( 'ABSPATH' ) || exit;
6
+defined('ABSPATH') || exit;
7 7
 
8 8
 /**
9 9
  * Abstract class that is intended to be extended by
@@ -38,7 +38,7 @@  discard block
 block discarded – undo
38 38
      *
39 39
      * @param string $name Plugin identifier.
40 40
      */
41
-    public function __construct( $name = '' ) {
41
+    public function __construct($name = '') {
42 42
         $this->name = $name;
43 43
         $this->init();
44 44
     }
@@ -47,22 +47,22 @@  discard block
 block discarded – undo
47 47
      * Hook in events.
48 48
      */
49 49
     protected function init() {
50
-        add_action( 'admin_init', array( $this, 'add_privacy_message' ) );
50
+        add_action('admin_init', array($this, 'add_privacy_message'));
51 51
         // Register data exporters
52
-        add_filter( 'wp_privacy_personal_data_exporters', array( $this, 'register_exporters' ), 10 );
52
+        add_filter('wp_privacy_personal_data_exporters', array($this, 'register_exporters'), 10);
53 53
         // Register data erasers
54
-        add_filter( 'wp_privacy_personal_data_erasers', array( $this, 'register_erasers' ) );
54
+        add_filter('wp_privacy_personal_data_erasers', array($this, 'register_erasers'));
55 55
     }
56 56
 
57 57
     /**
58 58
      * Adds the privacy message on invoicing privacy page.
59 59
      */
60 60
     public function add_privacy_message() {
61
-        if ( function_exists( 'wp_add_privacy_policy_content' ) ) {
61
+        if (function_exists('wp_add_privacy_policy_content')) {
62 62
             $content = $this->get_privacy_message();
63 63
 
64
-            if ( $content ) {
65
-                wp_add_privacy_policy_content( $this->name, $this->get_privacy_message() );
64
+            if ($content) {
65
+                wp_add_privacy_policy_content($this->name, $this->get_privacy_message());
66 66
             }
67 67
         }
68 68
     }
@@ -83,9 +83,9 @@  discard block
 block discarded – undo
83 83
      * @param array $exporters List of exporter callbacks.
84 84
      * @return array
85 85
      */
86
-    public function register_exporters( $exporters = array() ) {
87
-        foreach ( $this->exporters as $id => $exporter ) {
88
-            $exporters[ $id ] = $exporter;
86
+    public function register_exporters($exporters = array()) {
87
+        foreach ($this->exporters as $id => $exporter) {
88
+            $exporters[$id] = $exporter;
89 89
         }
90 90
         return $exporters;
91 91
     }
@@ -96,9 +96,9 @@  discard block
 block discarded – undo
96 96
      * @param array $erasers List of eraser callbacks.
97 97
      * @return array
98 98
      */
99
-    public function register_erasers( $erasers = array() ) {
100
-        foreach ( $this->erasers as $id => $eraser ) {
101
-            $erasers[ $id ] = $eraser;
99
+    public function register_erasers($erasers = array()) {
100
+        foreach ($this->erasers as $id => $eraser) {
101
+            $erasers[$id] = $eraser;
102 102
         }
103 103
         return $erasers;
104 104
     }
@@ -112,8 +112,8 @@  discard block
 block discarded – undo
112 112
      *
113 113
      * @return array
114 114
      */
115
-    public function add_exporter( $id, $name, $callback ) {
116
-        $this->exporters[ $id ] = array(
115
+    public function add_exporter($id, $name, $callback) {
116
+        $this->exporters[$id] = array(
117 117
             'exporter_friendly_name' => $name,
118 118
             'callback'               => $callback,
119 119
         );
@@ -129,8 +129,8 @@  discard block
 block discarded – undo
129 129
      *
130 130
      * @return array
131 131
      */
132
-    public function add_eraser( $id, $name, $callback ) {
133
-        $this->erasers[ $id ] = array(
132
+    public function add_eraser($id, $name, $callback) {
133
+        $this->erasers[$id] = array(
134 134
             'eraser_friendly_name' => $name,
135 135
             'callback'             => $callback,
136 136
         );
Please login to merge, or discard this patch.