Passed
Push — master ( 5df4b7...094433 )
by Stiofan
11:06 queued 03:59
created
templates/emails/wpinv-email-styles.php 1 patch
Spacing   +35 added lines, -35 removed lines patch added patch discarded remove patch
@@ -7,24 +7,24 @@  discard block
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12
-$bg              = wpinv_get_option( 'email_background_color', '#f5f5f5' );
13
-$body            = wpinv_get_option( 'email_body_background_color', '#fdfdfd' );
14
-$base            = wpinv_get_option( 'email_base_color', '#557da2' );
15
-$base_text       = wpinv_light_or_dark( $base, '#202020', '#ffffff' );
16
-$text            = wpinv_get_option( 'email_text_color', '#505050' );
12
+$bg              = wpinv_get_option('email_background_color', '#f5f5f5');
13
+$body            = wpinv_get_option('email_body_background_color', '#fdfdfd');
14
+$base            = wpinv_get_option('email_base_color', '#557da2');
15
+$base_text       = wpinv_light_or_dark($base, '#202020', '#ffffff');
16
+$text            = wpinv_get_option('email_text_color', '#505050');
17 17
 
18
-$bg_darker_10    = wpinv_hex_darker( $bg, 10 );
19
-$body_darker_10  = wpinv_hex_darker( $body, 10 );
20
-$base_lighter_20 = wpinv_hex_lighter( $base, 20 );
21
-$base_lighter_40 = wpinv_hex_lighter( $base, 40 );
22
-$text_lighter_20 = wpinv_hex_lighter( $text, 20 );
18
+$bg_darker_10    = wpinv_hex_darker($bg, 10);
19
+$body_darker_10  = wpinv_hex_darker($body, 10);
20
+$base_lighter_20 = wpinv_hex_lighter($base, 20);
21
+$base_lighter_40 = wpinv_hex_lighter($base, 40);
22
+$text_lighter_20 = wpinv_hex_lighter($text, 20);
23 23
 
24 24
 // !important; is a gmail hack to prevent styles being stripped if it doesn't like something.
25 25
 ?>
26 26
 #wrapper {
27
-    background-color: <?php echo esc_attr( $bg ); ?>;
27
+    background-color: <?php echo esc_attr($bg); ?>;
28 28
     margin: 0;
29 29
     -webkit-text-size-adjust: none !important;
30 30
     padding: 3%;
@@ -45,15 +45,15 @@  discard block
 block discarded – undo
45 45
 
46 46
 #template_container {
47 47
     box-shadow: 0 1px 4px rgba(0,0,0,0.1) !important;
48
-    background-color: <?php echo esc_attr( $body ); ?>;
49
-    border: 1px solid <?php echo esc_attr( $bg_darker_10 ); ?>;
48
+    background-color: <?php echo esc_attr($body); ?>;
49
+    border: 1px solid <?php echo esc_attr($bg_darker_10); ?>;
50 50
     border-radius: 3px !important;
51 51
 }
52 52
 
53 53
 #template_header {
54
-    background-color: <?php echo esc_attr( $base ); ?>;
54
+    background-color: <?php echo esc_attr($base); ?>;
55 55
     border-radius: 3px 3px 0 0 !important;
56
-    color: <?php echo esc_attr( $base_text ); ?>;
56
+    color: <?php echo esc_attr($base_text); ?>;
57 57
     border-bottom: 0;
58 58
     font-weight: bold;
59 59
     line-height: 100%;
@@ -66,7 +66,7 @@  discard block
 block discarded – undo
66 66
 }
67 67
 
68 68
 #template_header h1 {
69
-    color: <?php echo esc_attr( $base_text ); ?>;
69
+    color: <?php echo esc_attr($base_text); ?>;
70 70
 }
71 71
 
72 72
 #template_footer td {
@@ -77,7 +77,7 @@  discard block
 block discarded – undo
77 77
 
78 78
 #template_footer #credit {
79 79
     border:0;
80
-    color: <?php echo esc_attr( $base_lighter_40 ); ?>;
80
+    color: <?php echo esc_attr($base_lighter_40); ?>;
81 81
     font-family: Arial;
82 82
     font-size:12px;
83 83
     line-height:125%;
@@ -86,7 +86,7 @@  discard block
 block discarded – undo
86 86
 }
87 87
 
88 88
 #body_content {
89
-    background-color: <?php echo esc_attr( $body ); ?>;
89
+    background-color: <?php echo esc_attr($body); ?>;
90 90
 }
91 91
 
92 92
 #body_content table td {
@@ -106,7 +106,7 @@  discard block
 block discarded – undo
106 106
 }
107 107
 
108 108
 #body_content_inner {
109
-    color: <?php echo esc_attr( $text_lighter_20 ); ?>;
109
+    color: <?php echo esc_attr($text_lighter_20); ?>;
110 110
     font-family: Arial,Helvetica,sans-serif;
111 111
     font-size: 14px;
112 112
     line-height: 150%;
@@ -114,17 +114,17 @@  discard block
 block discarded – undo
114 114
 }
115 115
 
116 116
 .td {
117
-    color: <?php echo esc_attr( $text_lighter_20 ); ?>;
118
-    border: 1px solid <?php echo esc_attr( $body_darker_10 ); ?>;
117
+    color: <?php echo esc_attr($text_lighter_20); ?>;
118
+    border: 1px solid <?php echo esc_attr($body_darker_10); ?>;
119 119
 }
120 120
 
121 121
 .text {
122
-    color: <?php echo esc_attr( $text ); ?>;
122
+    color: <?php echo esc_attr($text); ?>;
123 123
     font-family: Arial,Helvetica,sans-serif;
124 124
 }
125 125
 
126 126
 .link {
127
-    color: <?php echo esc_attr( $base ); ?>;
127
+    color: <?php echo esc_attr($base); ?>;
128 128
 }
129 129
 
130 130
 #header_wrapper {
@@ -133,19 +133,19 @@  discard block
 block discarded – undo
133 133
 }
134 134
 
135 135
 h1 {
136
-    color: <?php echo esc_attr( $base ); ?>;
136
+    color: <?php echo esc_attr($base); ?>;
137 137
     font-family: Arial,Helvetica,sans-serif;
138 138
     font-size: 30px;
139 139
     font-weight: 300;
140 140
     line-height: 150%;
141 141
     margin: 0;
142 142
     text-align: <?php echo is_rtl() ? 'right' : 'left'; ?>;
143
-    text-shadow: 0 1px 0 <?php echo esc_attr( $base_lighter_20 ); ?>;
143
+    text-shadow: 0 1px 0 <?php echo esc_attr($base_lighter_20); ?>;
144 144
     -webkit-font-smoothing: antialiased;
145 145
 }
146 146
 
147 147
 h2 {
148
-    color: <?php echo esc_attr( $base ); ?>;
148
+    color: <?php echo esc_attr($base); ?>;
149 149
     display: block;
150 150
     font-family: Arial,Helvetica,sans-serif;
151 151
     font-size: 18px;
@@ -156,7 +156,7 @@  discard block
 block discarded – undo
156 156
 }
157 157
 
158 158
 h3 {
159
-    color: <?php echo esc_attr( $base ); ?>;
159
+    color: <?php echo esc_attr($base); ?>;
160 160
     display: block;
161 161
     font-family: Arial,Helvetica,sans-serif;
162 162
     font-size: 16px;
@@ -167,7 +167,7 @@  discard block
 block discarded – undo
167 167
 }
168 168
 
169 169
 a {
170
-    color: <?php echo esc_attr( $base ); ?>;
170
+    color: <?php echo esc_attr($base); ?>;
171 171
     font-weight: normal;
172 172
     text-decoration: underline;
173 173
 }
@@ -185,7 +185,7 @@  discard block
 block discarded – undo
185 185
 }
186 186
 
187 187
 .table-bordered {
188
-    border: 1px solid <?php echo esc_attr( $body_darker_10 ); ?>;
188
+    border: 1px solid <?php echo esc_attr($body_darker_10); ?>;
189 189
     border-collapse: collapse;
190 190
     border-spacing: 0;
191 191
     width: 100%;
@@ -193,8 +193,8 @@  discard block
 block discarded – undo
193 193
 
194 194
 .table-bordered th,
195 195
 .table-bordered td {
196
-    border: 1px solid <?php echo esc_attr( $body_darker_10 ); ?>;
197
-    color: <?php echo esc_attr( $text_lighter_20 ); ?>;
196
+    border: 1px solid <?php echo esc_attr($body_darker_10); ?>;
197
+    color: <?php echo esc_attr($text_lighter_20); ?>;
198 198
     font-size: 14px;
199 199
 }
200 200
 .small {
@@ -294,9 +294,9 @@  discard block
 block discarded – undo
294 294
   text-decoration: none;
295 295
 }
296 296
 .btn-default {
297
-    color: <?php echo esc_attr( $base_text ); ?>;
298
-    background-color: <?php echo esc_attr( $base ); ?>;
299
-    border-color: <?php echo esc_attr( $base ); ?>;
297
+    color: <?php echo esc_attr($base_text); ?>;
298
+    background-color: <?php echo esc_attr($base); ?>;
299
+    border-color: <?php echo esc_attr($base); ?>;
300 300
 }
301 301
 .btn-primary {
302 302
   color: #fff;
Please login to merge, or discard this patch.
templates/emails/wpinv-email-user_note.php 1 patch
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -7,21 +7,21 @@
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12
-do_action( 'wpinv_email_header', $email_heading, $invoice, $email_type, $sent_to_admin );
12
+do_action('wpinv_email_header', $email_heading, $invoice, $email_type, $sent_to_admin);
13 13
 
14
-do_action( 'wpinv_email_before_note_details', $invoice, $email_type, $sent_to_admin, $customer_note );
14
+do_action('wpinv_email_before_note_details', $invoice, $email_type, $sent_to_admin, $customer_note);
15 15
 
16 16
 // Generate the custom message body.
17
-echo wptexturize( wp_kses_post( str_replace( '{customer_note}', $customer_note, $message_body ) ) );
17
+echo wptexturize(wp_kses_post(str_replace('{customer_note}', $customer_note, $message_body)));
18 18
 
19
-do_action( 'wpinv_email_invoice_details', $invoice, $email_type, $sent_to_admin );
19
+do_action('wpinv_email_invoice_details', $invoice, $email_type, $sent_to_admin);
20 20
 
21
-do_action( 'wpinv_email_invoice_items', $invoice, $email_type, $sent_to_admin );
21
+do_action('wpinv_email_invoice_items', $invoice, $email_type, $sent_to_admin);
22 22
 
23
-do_action( 'wpinv_email_billing_details', $invoice, $email_type, $sent_to_admin );
23
+do_action('wpinv_email_billing_details', $invoice, $email_type, $sent_to_admin);
24 24
 
25
-do_action( 'wpinv_email_after_note_details', $invoice, $email_type, $sent_to_admin, $customer_note );
25
+do_action('wpinv_email_after_note_details', $invoice, $email_type, $sent_to_admin, $customer_note);
26 26
 
27
-do_action( 'wpinv_email_footer', $invoice, $email_type, $sent_to_admin );
28 27
\ No newline at end of file
28
+do_action('wpinv_email_footer', $invoice, $email_type, $sent_to_admin);
29 29
\ No newline at end of file
Please login to merge, or discard this patch.
includes/class-wpinv-cli.php 1 patch
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -7,7 +7,7 @@  discard block
 block discarded – undo
7 7
  */
8 8
  
9 9
 // MUST have WordPress.
10
-if ( !defined( 'WPINC' ) ) {
10
+if (!defined('WPINC')) {
11 11
     exit;
12 12
 }
13 13
 
@@ -24,40 +24,40 @@  discard block
 block discarded – undo
24 24
      *  @param Array $assoc_args Key value arguments stored in associated array format.
25 25
      *  @since 1.0.13
26 26
      */
27
-    public function insert_invoice( $args, $assoc_args ) {
27
+    public function insert_invoice($args, $assoc_args) {
28 28
 
29 29
         // Fetch invoice data from the args
30
-        $invoice_data = wp_unslash( $assoc_args );
30
+        $invoice_data = wp_unslash($assoc_args);
31 31
 
32 32
         // Abort if no invoice data is provided
33
-        if( empty( $invoice_data ) ) {
34
-            return WP_CLI::error( __( 'Invoice data not provided', 'invoicing' ) );
33
+        if (empty($invoice_data)) {
34
+            return WP_CLI::error(__('Invoice data not provided', 'invoicing'));
35 35
         }
36 36
 
37 37
         //Cart details
38
-        if( !empty( $invoice_data['cart_details'] ) ) {
39
-            $invoice_data['cart_details'] = json_decode( $invoice_data['cart_details'], true );
38
+        if (!empty($invoice_data['cart_details'])) {
39
+            $invoice_data['cart_details'] = json_decode($invoice_data['cart_details'], true);
40 40
         }
41 41
 
42 42
         //User details
43
-        if( !empty( $invoice_data['user_info'] ) ) {
44
-            $invoice_data['user_info'] = json_decode( $invoice_data['user_info'], true );
43
+        if (!empty($invoice_data['user_info'])) {
44
+            $invoice_data['user_info'] = json_decode($invoice_data['user_info'], true);
45 45
         }
46 46
 
47 47
         //Payment info
48
-        if( !empty( $invoice_data['payment_details'] ) ) {
49
-            $invoice_data['payment_details'] = json_decode( $invoice_data['payment_details'], true );
48
+        if (!empty($invoice_data['payment_details'])) {
49
+            $invoice_data['payment_details'] = json_decode($invoice_data['payment_details'], true);
50 50
         }
51 51
 
52 52
         // Try creating the invoice
53
-        $invoice = wpinv_insert_invoice( $invoice_data, true );
53
+        $invoice = wpinv_insert_invoice($invoice_data, true);
54 54
 
55
-        if ( is_wp_error( $invoice ) ) {
56
-            return WP_CLI::error( $invoice->get_error_message() );
55
+        if (is_wp_error($invoice)) {
56
+            return WP_CLI::error($invoice->get_error_message());
57 57
         }
58 58
 
59
-        $message = sprintf( __( 'Invoice %s created', 'invoicing' ), $invoice->get_id() );
60
-        WP_CLI::success( $message );
59
+        $message = sprintf(__('Invoice %s created', 'invoicing'), $invoice->get_id());
60
+        WP_CLI::success($message);
61 61
     }
62 62
     
63 63
     
Please login to merge, or discard this patch.
templates/payment-forms-admin/edit/heading.php 1 patch
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -8,23 +8,23 @@
 block discarded – undo
8 8
  */
9 9
 
10 10
 
11
-defined( 'ABSPATH' ) || exit;
11
+defined('ABSPATH') || exit;
12 12
 
13 13
 ?>
14 14
 
15 15
 <div class='form-group'>
16
-    <label :for="active_form_element.id + '_edit_heading'"><?php esc_html_e( 'Heading', 'invoicing' ) ?></label>
16
+    <label :for="active_form_element.id + '_edit_heading'"><?php esc_html_e('Heading', 'invoicing') ?></label>
17 17
     <input :id="active_form_element.id + '_edit_heading'" v-model='active_form_element.text' class='form-control' type='text' />
18 18
 </div>
19 19
 
20 20
 <div class='form-group'>
21
-    <label :for="active_form_element.id + '_edit_level'"><?php esc_html_e( 'Select Heading Level', 'invoicing' ) ?></label>
21
+    <label :for="active_form_element.id + '_edit_level'"><?php esc_html_e('Select Heading Level', 'invoicing') ?></label>
22 22
     <select class='form-control custom-select' :id="active_form_element.id + '_edit_level'" v-model='active_form_element.level'>
23
-        <option value='h1'><?php esc_html_e( 'H1', 'invoicing' ); ?></option>
24
-        <option value='h2'><?php esc_html_e( 'H2', 'invoicing' ); ?></option>
25
-        <option value='h3'><?php esc_html_e( 'H3', 'invoicing' ); ?></option>
26
-        <option value='h4'><?php esc_html_e( 'H4', 'invoicing' ); ?></option>
27
-        <option value='h5'><?php esc_html_e( 'H5', 'invoicing' ); ?></option>
28
-        <option value='h6'><?php esc_html_e( 'H6', 'invoicing' ); ?></option>
23
+        <option value='h1'><?php esc_html_e('H1', 'invoicing'); ?></option>
24
+        <option value='h2'><?php esc_html_e('H2', 'invoicing'); ?></option>
25
+        <option value='h3'><?php esc_html_e('H3', 'invoicing'); ?></option>
26
+        <option value='h4'><?php esc_html_e('H4', 'invoicing'); ?></option>
27
+        <option value='h5'><?php esc_html_e('H5', 'invoicing'); ?></option>
28
+        <option value='h6'><?php esc_html_e('H6', 'invoicing'); ?></option>
29 29
     </select>
30 30
 </div>
Please login to merge, or discard this patch.
includes/api/class-wpinv-rest-invoice-controller.php 2 patches
Indentation   +129 added lines, -129 removed lines patch added patch discarded remove patch
@@ -15,136 +15,136 @@
 block discarded – undo
15 15
 class WPInv_REST_Invoice_Controller extends GetPaid_REST_Posts_Controller {
16 16
 
17 17
     /**
18
-	 * Post type.
19
-	 *
20
-	 * @var string
21
-	 */
22
-	protected $post_type = 'wpi_invoice';
23
-
24
-	/**
25
-	 * The base of this controller's route.
26
-	 *
27
-	 * @since 1.0.13
28
-	 * @var string
29
-	 */
30
-	protected $rest_base = 'invoices';
31
-
32
-	/** Contains this controller's class name.
33
-	 *
34
-	 * @var string
35
-	 */
36
-	public $crud_class = 'WPInv_Invoice';
18
+     * Post type.
19
+     *
20
+     * @var string
21
+     */
22
+    protected $post_type = 'wpi_invoice';
37 23
 
38 24
     /**
39
-	 * Retrieves the query params for the invoices collection.
40
-	 *
41
-	 * @since 1.0.13
42
-	 *
43
-	 * @return array Collection parameters.
44
-	 */
45
-	public function get_collection_params() {
46
-
47
-		$params = array_merge(
48
-
49
-			parent::get_collection_params(),
50
-
51
-			array(
52
-
53
-
54
-				'customers' => array(
55
-					'description'       => __( 'Limit result set to invoices for specific user ids.', 'invoicing' ),
56
-					'type'              => 'array',
57
-					'items'             => array(
58
-						'type'          => 'integer',
59
-					),
60
-					'default'           => array(),
61
-					'sanitize_callback' => 'wp_parse_id_list',
62
-				),
63
-
64
-				'exclude_customers'  	=> array(
65
-					'description' 		=> __( 'Exclude invoices to specific users.', 'invoicing' ),
66
-					'type'        		=> 'array',
67
-					'items'       		=> array(
68
-						'type'          => 'integer',
69
-					),
70
-					'default'     		=> array(),
71
-					'sanitize_callback' => 'wp_parse_id_list',
72
-				),
73
-
74
-				'parent'  	            => array(
75
-					'description'       => __( 'Limit result set to those of particular parent IDs.', 'invoicing' ),
76
-					'type'              => 'array',
77
-					'items'             => array(
78
-						'type'          => 'integer',
79
-					),
80
-					'sanitize_callback' => 'wp_parse_id_list',
81
-					'default'           => array(),
82
-				),
83
-
84
-				'parent_exclude'  	    => array(
85
-					'description'       => __( 'Limit result set to all items except those of a particular parent ID.', 'invoicing' ),
86
-					'type'              => 'array',
87
-					'items'             => array(
88
-						'type'          => 'integer',
89
-					),
90
-					'sanitize_callback' => 'wp_parse_id_list',
91
-					'default'           => array(),
92
-				),
93
-
94
-			)
95
-
96
-		);
97
-
98
-		// Filter collection parameters for the invoices controller.
99
-		return apply_filters( 'getpaid_rest_invoices_collection_params', $params, $this );
100
-	}
101
-
102
-	/**
103
-	 * Determine the allowed query_vars for a get_items() response and
104
-	 * prepare for WP_Query.
105
-	 *
106
-	 * @param array           $prepared_args Prepared arguments.
107
-	 * @param WP_REST_Request $request Request object.
108
-	 * @return array          $query_args
109
-	 */
110
-	protected function prepare_items_query( $prepared_args = array(), $request = null ) {
111
-
112
-		$query_args = parent::prepare_items_query( $prepared_args );
113
-
114
-		// Retrieve invoices for specific customers.
115
-		if ( ! empty( $request['customers'] ) ) {
116
-			$query_args['author__in'] = $request['customers'];
117
-		}
118
-
119
-		// Skip invoices for specific customers.
120
-		if ( ! empty( $request['exclude_customers'] ) ) {
121
-			$query_args['author__not_in'] = $request['exclude_customers'];
122
-		}
123
-
124
-		return apply_filters( 'getpaid_rest_invoices_prepare_items_query', $query_args, $request, $this );
125
-
126
-	}
127
-
128
-	/**
129
-	 * Retrieves a valid list of post statuses.
130
-	 *
131
-	 * @since 1.0.15
132
-	 *
133
-	 * @return array A list of registered item statuses.
134
-	 */
135
-	public function get_post_statuses() {
136
-		return array_keys( wpinv_get_invoice_statuses( true, false, $this->post_type ) );
137
-	}
138
-
139
-	/**
140
-	 * Saves a single invoice.
141
-	 *
142
-	 * @param WPInv_Invoice $invoice Invoice to save.
143
-	 * @return WP_Error|WPInv_Invoice
144
-	 */
145
-	protected function save_object( $invoice ) {
146
-		$invoice->recalculate_total();
147
-		return parent::save_object( $invoice );
148
-	}
25
+     * The base of this controller's route.
26
+     *
27
+     * @since 1.0.13
28
+     * @var string
29
+     */
30
+    protected $rest_base = 'invoices';
31
+
32
+    /** Contains this controller's class name.
33
+     *
34
+     * @var string
35
+     */
36
+    public $crud_class = 'WPInv_Invoice';
37
+
38
+    /**
39
+     * Retrieves the query params for the invoices collection.
40
+     *
41
+     * @since 1.0.13
42
+     *
43
+     * @return array Collection parameters.
44
+     */
45
+    public function get_collection_params() {
46
+
47
+        $params = array_merge(
48
+
49
+            parent::get_collection_params(),
50
+
51
+            array(
52
+
53
+
54
+                'customers' => array(
55
+                    'description'       => __( 'Limit result set to invoices for specific user ids.', 'invoicing' ),
56
+                    'type'              => 'array',
57
+                    'items'             => array(
58
+                        'type'          => 'integer',
59
+                    ),
60
+                    'default'           => array(),
61
+                    'sanitize_callback' => 'wp_parse_id_list',
62
+                ),
63
+
64
+                'exclude_customers'  	=> array(
65
+                    'description' 		=> __( 'Exclude invoices to specific users.', 'invoicing' ),
66
+                    'type'        		=> 'array',
67
+                    'items'       		=> array(
68
+                        'type'          => 'integer',
69
+                    ),
70
+                    'default'     		=> array(),
71
+                    'sanitize_callback' => 'wp_parse_id_list',
72
+                ),
73
+
74
+                'parent'  	            => array(
75
+                    'description'       => __( 'Limit result set to those of particular parent IDs.', 'invoicing' ),
76
+                    'type'              => 'array',
77
+                    'items'             => array(
78
+                        'type'          => 'integer',
79
+                    ),
80
+                    'sanitize_callback' => 'wp_parse_id_list',
81
+                    'default'           => array(),
82
+                ),
83
+
84
+                'parent_exclude'  	    => array(
85
+                    'description'       => __( 'Limit result set to all items except those of a particular parent ID.', 'invoicing' ),
86
+                    'type'              => 'array',
87
+                    'items'             => array(
88
+                        'type'          => 'integer',
89
+                    ),
90
+                    'sanitize_callback' => 'wp_parse_id_list',
91
+                    'default'           => array(),
92
+                ),
93
+
94
+            )
95
+
96
+        );
97
+
98
+        // Filter collection parameters for the invoices controller.
99
+        return apply_filters( 'getpaid_rest_invoices_collection_params', $params, $this );
100
+    }
101
+
102
+    /**
103
+     * Determine the allowed query_vars for a get_items() response and
104
+     * prepare for WP_Query.
105
+     *
106
+     * @param array           $prepared_args Prepared arguments.
107
+     * @param WP_REST_Request $request Request object.
108
+     * @return array          $query_args
109
+     */
110
+    protected function prepare_items_query( $prepared_args = array(), $request = null ) {
111
+
112
+        $query_args = parent::prepare_items_query( $prepared_args );
113
+
114
+        // Retrieve invoices for specific customers.
115
+        if ( ! empty( $request['customers'] ) ) {
116
+            $query_args['author__in'] = $request['customers'];
117
+        }
118
+
119
+        // Skip invoices for specific customers.
120
+        if ( ! empty( $request['exclude_customers'] ) ) {
121
+            $query_args['author__not_in'] = $request['exclude_customers'];
122
+        }
123
+
124
+        return apply_filters( 'getpaid_rest_invoices_prepare_items_query', $query_args, $request, $this );
125
+
126
+    }
127
+
128
+    /**
129
+     * Retrieves a valid list of post statuses.
130
+     *
131
+     * @since 1.0.15
132
+     *
133
+     * @return array A list of registered item statuses.
134
+     */
135
+    public function get_post_statuses() {
136
+        return array_keys( wpinv_get_invoice_statuses( true, false, $this->post_type ) );
137
+    }
138
+
139
+    /**
140
+     * Saves a single invoice.
141
+     *
142
+     * @param WPInv_Invoice $invoice Invoice to save.
143
+     * @return WP_Error|WPInv_Invoice
144
+     */
145
+    protected function save_object( $invoice ) {
146
+        $invoice->recalculate_total();
147
+        return parent::save_object( $invoice );
148
+    }
149 149
 
150 150
 }
Please login to merge, or discard this patch.
Spacing   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
  * @version 1.0.19
6 6
  */
7 7
 
8
-defined( 'ABSPATH' ) || exit;
8
+defined('ABSPATH') || exit;
9 9
 
10 10
 /**
11 11
  * REST API invoices controller class.
@@ -52,7 +52,7 @@  discard block
 block discarded – undo
52 52
 
53 53
 
54 54
 				'customers' => array(
55
-					'description'       => __( 'Limit result set to invoices for specific user ids.', 'invoicing' ),
55
+					'description'       => __('Limit result set to invoices for specific user ids.', 'invoicing'),
56 56
 					'type'              => 'array',
57 57
 					'items'             => array(
58 58
 						'type'          => 'integer',
@@ -62,7 +62,7 @@  discard block
 block discarded – undo
62 62
 				),
63 63
 
64 64
 				'exclude_customers'  	=> array(
65
-					'description' 		=> __( 'Exclude invoices to specific users.', 'invoicing' ),
65
+					'description' 		=> __('Exclude invoices to specific users.', 'invoicing'),
66 66
 					'type'        		=> 'array',
67 67
 					'items'       		=> array(
68 68
 						'type'          => 'integer',
@@ -72,7 +72,7 @@  discard block
 block discarded – undo
72 72
 				),
73 73
 
74 74
 				'parent'  	            => array(
75
-					'description'       => __( 'Limit result set to those of particular parent IDs.', 'invoicing' ),
75
+					'description'       => __('Limit result set to those of particular parent IDs.', 'invoicing'),
76 76
 					'type'              => 'array',
77 77
 					'items'             => array(
78 78
 						'type'          => 'integer',
@@ -82,7 +82,7 @@  discard block
 block discarded – undo
82 82
 				),
83 83
 
84 84
 				'parent_exclude'  	    => array(
85
-					'description'       => __( 'Limit result set to all items except those of a particular parent ID.', 'invoicing' ),
85
+					'description'       => __('Limit result set to all items except those of a particular parent ID.', 'invoicing'),
86 86
 					'type'              => 'array',
87 87
 					'items'             => array(
88 88
 						'type'          => 'integer',
@@ -96,7 +96,7 @@  discard block
 block discarded – undo
96 96
 		);
97 97
 
98 98
 		// Filter collection parameters for the invoices controller.
99
-		return apply_filters( 'getpaid_rest_invoices_collection_params', $params, $this );
99
+		return apply_filters('getpaid_rest_invoices_collection_params', $params, $this);
100 100
 	}
101 101
 
102 102
 	/**
@@ -107,21 +107,21 @@  discard block
 block discarded – undo
107 107
 	 * @param WP_REST_Request $request Request object.
108 108
 	 * @return array          $query_args
109 109
 	 */
110
-	protected function prepare_items_query( $prepared_args = array(), $request = null ) {
110
+	protected function prepare_items_query($prepared_args = array(), $request = null) {
111 111
 
112
-		$query_args = parent::prepare_items_query( $prepared_args );
112
+		$query_args = parent::prepare_items_query($prepared_args);
113 113
 
114 114
 		// Retrieve invoices for specific customers.
115
-		if ( ! empty( $request['customers'] ) ) {
115
+		if (!empty($request['customers'])) {
116 116
 			$query_args['author__in'] = $request['customers'];
117 117
 		}
118 118
 
119 119
 		// Skip invoices for specific customers.
120
-		if ( ! empty( $request['exclude_customers'] ) ) {
120
+		if (!empty($request['exclude_customers'])) {
121 121
 			$query_args['author__not_in'] = $request['exclude_customers'];
122 122
 		}
123 123
 
124
-		return apply_filters( 'getpaid_rest_invoices_prepare_items_query', $query_args, $request, $this );
124
+		return apply_filters('getpaid_rest_invoices_prepare_items_query', $query_args, $request, $this);
125 125
 
126 126
 	}
127 127
 
@@ -133,7 +133,7 @@  discard block
 block discarded – undo
133 133
 	 * @return array A list of registered item statuses.
134 134
 	 */
135 135
 	public function get_post_statuses() {
136
-		return array_keys( wpinv_get_invoice_statuses( true, false, $this->post_type ) );
136
+		return array_keys(wpinv_get_invoice_statuses(true, false, $this->post_type));
137 137
 	}
138 138
 
139 139
 	/**
@@ -142,9 +142,9 @@  discard block
 block discarded – undo
142 142
 	 * @param WPInv_Invoice $invoice Invoice to save.
143 143
 	 * @return WP_Error|WPInv_Invoice
144 144
 	 */
145
-	protected function save_object( $invoice ) {
145
+	protected function save_object($invoice) {
146 146
 		$invoice->recalculate_total();
147
-		return parent::save_object( $invoice );
147
+		return parent::save_object($invoice);
148 148
 	}
149 149
 
150 150
 }
Please login to merge, or discard this patch.
includes/wpinv-template-functions.php 3 patches
Braces   +9 added lines, -6 removed lines patch added patch discarded remove patch
@@ -179,8 +179,9 @@  discard block
 block discarded – undo
179 179
 
180 180
 	// Setup possible parts
181 181
 	$templates = array();
182
-	if ( isset( $name ) )
183
-		$templates[] = $slug . '-' . $name . '.php';
182
+	if ( isset( $name ) ) {
183
+			$templates[] = $slug . '-' . $name . '.php';
184
+	}
184 185
 	$templates[] = $slug . '.php';
185 186
 
186 187
 	// Allow template parts to be filtered
@@ -198,8 +199,9 @@  discard block
 block discarded – undo
198 199
 	foreach ( (array)$template_names as $template_name ) {
199 200
 
200 201
 		// Continue if template is empty
201
-		if ( empty( $template_name ) )
202
-			continue;
202
+		if ( empty( $template_name ) ) {
203
+					continue;
204
+		}
203 205
 
204 206
 		// Trim off any slashes from the template name
205 207
 		$template_name = ltrim( $template_name, '/' );
@@ -218,8 +220,9 @@  discard block
 block discarded – undo
218 220
 		}
219 221
 	}
220 222
 
221
-	if ( ( true == $load ) && ! empty( $located ) )
222
-		load_template( $located, $require_once );
223
+	if ( ( true == $load ) && ! empty( $located ) ) {
224
+			load_template( $located, $require_once );
225
+	}
223 226
 
224 227
 	return $located;
225 228
 }
Please login to merge, or discard this patch.
Indentation   +103 added lines, -103 removed lines patch added patch discarded remove patch
@@ -140,7 +140,7 @@  discard block
 block discarded – undo
140 140
  * @param string $default_path The root path to the default template. Defaults to invoicing/templates
141 141
  */
142 142
 function wpinv_get_template_html( $template_name, $args = array(), $template_path = '', $default_path = '' ) {
143
-	return getpaid_template()->get_template( $template_name, $args, $template_path, $default_path );
143
+    return getpaid_template()->get_template( $template_name, $args, $template_path, $default_path );
144 144
 }
145 145
 
146 146
 /**
@@ -158,7 +158,7 @@  discard block
 block discarded – undo
158 158
  * @return string
159 159
  */
160 160
 function wpinv_get_theme_template_dir_name() {
161
-	return trailingslashit( apply_filters( 'wpinv_templates_dir', 'invoicing' ) );
161
+    return trailingslashit( apply_filters( 'wpinv_templates_dir', 'invoicing' ) );
162 162
 }
163 163
 
164 164
 /**
@@ -175,122 +175,122 @@  discard block
 block discarded – undo
175 175
 }
176 176
 
177 177
 function wpinv_get_template_part( $slug, $name = null, $load = true ) {
178
-	do_action( 'get_template_part_' . $slug, $slug, $name );
178
+    do_action( 'get_template_part_' . $slug, $slug, $name );
179 179
 
180
-	// Setup possible parts
181
-	$templates = array();
182
-	if ( isset( $name ) )
183
-		$templates[] = $slug . '-' . $name . '.php';
184
-	$templates[] = $slug . '.php';
180
+    // Setup possible parts
181
+    $templates = array();
182
+    if ( isset( $name ) )
183
+        $templates[] = $slug . '-' . $name . '.php';
184
+    $templates[] = $slug . '.php';
185 185
 
186
-	// Allow template parts to be filtered
187
-	$templates = apply_filters( 'wpinv_get_template_part', $templates, $slug, $name );
186
+    // Allow template parts to be filtered
187
+    $templates = apply_filters( 'wpinv_get_template_part', $templates, $slug, $name );
188 188
 
189
-	// Return the part that is found
190
-	return wpinv_locate_tmpl( $templates, $load, false );
189
+    // Return the part that is found
190
+    return wpinv_locate_tmpl( $templates, $load, false );
191 191
 }
192 192
 
193 193
 function wpinv_locate_tmpl( $template_names, $load = false, $require_once = true ) {
194
-	// No file found yet
195
-	$located = false;
194
+    // No file found yet
195
+    $located = false;
196 196
 
197
-	// Try to find a template file
198
-	foreach ( (array)$template_names as $template_name ) {
197
+    // Try to find a template file
198
+    foreach ( (array)$template_names as $template_name ) {
199 199
 
200
-		// Continue if template is empty
201
-		if ( empty( $template_name ) )
202
-			continue;
200
+        // Continue if template is empty
201
+        if ( empty( $template_name ) )
202
+            continue;
203 203
 
204
-		// Trim off any slashes from the template name
205
-		$template_name = ltrim( $template_name, '/' );
204
+        // Trim off any slashes from the template name
205
+        $template_name = ltrim( $template_name, '/' );
206 206
 
207
-		// try locating this template file by looping through the template paths
208
-		foreach( wpinv_get_theme_template_paths() as $template_path ) {
207
+        // try locating this template file by looping through the template paths
208
+        foreach( wpinv_get_theme_template_paths() as $template_path ) {
209 209
 
210
-			if( file_exists( $template_path . $template_name ) ) {
211
-				$located = $template_path . $template_name;
212
-				break;
213
-			}
214
-		}
210
+            if( file_exists( $template_path . $template_name ) ) {
211
+                $located = $template_path . $template_name;
212
+                break;
213
+            }
214
+        }
215 215
 
216
-		if( !empty( $located ) ) {
217
-			break;
218
-		}
219
-	}
216
+        if( !empty( $located ) ) {
217
+            break;
218
+        }
219
+    }
220 220
 
221
-	if ( ( true == $load ) && ! empty( $located ) )
222
-		load_template( $located, $require_once );
221
+    if ( ( true == $load ) && ! empty( $located ) )
222
+        load_template( $located, $require_once );
223 223
 
224
-	return $located;
224
+    return $located;
225 225
 }
226 226
 
227 227
 function wpinv_get_theme_template_paths() {
228
-	$template_dir = wpinv_get_theme_template_dir_name();
228
+    $template_dir = wpinv_get_theme_template_dir_name();
229 229
 
230
-	$file_paths = array(
231
-		1 => trailingslashit( get_stylesheet_directory() ) . $template_dir,
232
-		10 => trailingslashit( get_template_directory() ) . $template_dir,
233
-		100 => wpinv_get_templates_dir()
234
-	);
230
+    $file_paths = array(
231
+        1 => trailingslashit( get_stylesheet_directory() ) . $template_dir,
232
+        10 => trailingslashit( get_template_directory() ) . $template_dir,
233
+        100 => wpinv_get_templates_dir()
234
+    );
235 235
 
236
-	$file_paths = apply_filters( 'wpinv_template_paths', $file_paths );
236
+    $file_paths = apply_filters( 'wpinv_template_paths', $file_paths );
237 237
 
238
-	// sort the file paths based on priority
239
-	ksort( $file_paths, SORT_NUMERIC );
238
+    // sort the file paths based on priority
239
+    ksort( $file_paths, SORT_NUMERIC );
240 240
 
241
-	return array_map( 'trailingslashit', $file_paths );
241
+    return array_map( 'trailingslashit', $file_paths );
242 242
 }
243 243
 
244 244
 function wpinv_checkout_meta_tags() {
245 245
 
246
-	$pages   = array();
247
-	$pages[] = wpinv_get_option( 'success_page' );
248
-	$pages[] = wpinv_get_option( 'failure_page' );
249
-	$pages[] = wpinv_get_option( 'invoice_history_page' );
250
-	$pages[] = wpinv_get_option( 'invoice_subscription_page' );
246
+    $pages   = array();
247
+    $pages[] = wpinv_get_option( 'success_page' );
248
+    $pages[] = wpinv_get_option( 'failure_page' );
249
+    $pages[] = wpinv_get_option( 'invoice_history_page' );
250
+    $pages[] = wpinv_get_option( 'invoice_subscription_page' );
251 251
 
252
-	if( !wpinv_is_checkout() && !is_page( $pages ) ) {
253
-		return;
254
-	}
252
+    if( !wpinv_is_checkout() && !is_page( $pages ) ) {
253
+        return;
254
+    }
255 255
 
256
-	echo '<meta name="robots" content="noindex,nofollow" />' . "\n";
256
+    echo '<meta name="robots" content="noindex,nofollow" />' . "\n";
257 257
 }
258 258
 add_action( 'wp_head', 'wpinv_checkout_meta_tags' );
259 259
 
260 260
 function wpinv_add_body_classes( $class ) {
261
-	$classes = (array)$class;
261
+    $classes = (array)$class;
262 262
 
263
-	if( wpinv_is_checkout() ) {
264
-		$classes[] = 'wpinv-checkout';
265
-		$classes[] = 'wpinv-page';
266
-	}
263
+    if( wpinv_is_checkout() ) {
264
+        $classes[] = 'wpinv-checkout';
265
+        $classes[] = 'wpinv-page';
266
+    }
267 267
 
268
-	if( wpinv_is_success_page() ) {
269
-		$classes[] = 'wpinv-success';
270
-		$classes[] = 'wpinv-page';
271
-	}
268
+    if( wpinv_is_success_page() ) {
269
+        $classes[] = 'wpinv-success';
270
+        $classes[] = 'wpinv-page';
271
+    }
272 272
 
273
-	if( wpinv_is_failed_transaction_page() ) {
274
-		$classes[] = 'wpinv-failed-transaction';
275
-		$classes[] = 'wpinv-page';
276
-	}
273
+    if( wpinv_is_failed_transaction_page() ) {
274
+        $classes[] = 'wpinv-failed-transaction';
275
+        $classes[] = 'wpinv-page';
276
+    }
277 277
 
278
-	if( wpinv_is_invoice_history_page() ) {
279
-		$classes[] = 'wpinv-history';
280
-		$classes[] = 'wpinv-page';
281
-	}
278
+    if( wpinv_is_invoice_history_page() ) {
279
+        $classes[] = 'wpinv-history';
280
+        $classes[] = 'wpinv-page';
281
+    }
282 282
 
283
-	if( wpinv_is_subscriptions_history_page() ) {
284
-		$classes[] = 'wpinv-subscription';
285
-		$classes[] = 'wpinv-page';
286
-	}
283
+    if( wpinv_is_subscriptions_history_page() ) {
284
+        $classes[] = 'wpinv-subscription';
285
+        $classes[] = 'wpinv-page';
286
+    }
287 287
 
288
-	if( wpinv_is_test_mode() ) {
289
-		$classes[] = 'wpinv-test-mode';
290
-		$classes[] = 'wpinv-page';
291
-	}
288
+    if( wpinv_is_test_mode() ) {
289
+        $classes[] = 'wpinv-test-mode';
290
+        $classes[] = 'wpinv-page';
291
+    }
292 292
 
293
-	return array_unique( $classes );
293
+    return array_unique( $classes );
294 294
 }
295 295
 add_filter( 'body_class', 'wpinv_add_body_classes' );
296 296
 
@@ -821,21 +821,21 @@  discard block
 block discarded – undo
821 821
 
822 822
     $formatted_address = str_ireplace( array_keys( $replacements ), $replacements, $format );
823 823
     
824
-	// Remove unavailable tags.
824
+    // Remove unavailable tags.
825 825
     $formatted_address = preg_replace( "/\{\{\w+\}\}/", '', $formatted_address );
826 826
 
827 827
     // Clean up white space.
828
-	$formatted_address = preg_replace( '/  +/', ' ', trim( $formatted_address ) );
828
+    $formatted_address = preg_replace( '/  +/', ' ', trim( $formatted_address ) );
829 829
     $formatted_address = preg_replace( '/\n\n+/', "\n", $formatted_address );
830 830
     
831 831
     // Break newlines apart and remove empty lines/trim commas and white space.
832
-	$formatted_address = array_filter( array_map( 'wpinv_trim_formatted_address_line', explode( "\n", $formatted_address ) ) );
832
+    $formatted_address = array_filter( array_map( 'wpinv_trim_formatted_address_line', explode( "\n", $formatted_address ) ) );
833 833
 
834 834
     // Add html breaks.
835
-	$formatted_address = implode( $separator, $formatted_address );
835
+    $formatted_address = implode( $separator, $formatted_address );
836 836
 
837
-	// We're done!
838
-	return $formatted_address;
837
+    // We're done!
838
+    return $formatted_address;
839 839
     
840 840
 }
841 841
 
@@ -881,7 +881,7 @@  discard block
 block discarded – undo
881 881
 function getpaid_display_invoice_subscriptions( $invoice ) {
882 882
 
883 883
     // Subscriptions.
884
-	$subscriptions = getpaid_get_invoice_subscriptions( $invoice );
884
+    $subscriptions = getpaid_get_invoice_subscriptions( $invoice );
885 885
 
886 886
     if ( empty( $subscriptions ) || ! $invoice->is_recurring() ) {
887 887
         return;
@@ -1089,7 +1089,7 @@  discard block
 block discarded – undo
1089 1089
 }
1090 1090
 
1091 1091
 function wpinv_empty_cart_message() {
1092
-	return apply_filters( 'wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __( 'Your cart is empty.', 'invoicing' ) . '</span>' );
1092
+    return apply_filters( 'wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __( 'Your cart is empty.', 'invoicing' ) . '</span>' );
1093 1093
 }
1094 1094
 
1095 1095
 /**
@@ -1281,10 +1281,10 @@  discard block
 block discarded – undo
1281 1281
 
1282 1282
     if ( 0 == count( $form->get_items() ) ) {
1283 1283
         echo aui()->alert(
1284
-			array(
1285
-				'type'    => 'warning',
1286
-				'content' => __( 'No published items found', 'invoicing' ),
1287
-			)
1284
+            array(
1285
+                'type'    => 'warning',
1286
+                'content' => __( 'No published items found', 'invoicing' ),
1287
+            )
1288 1288
         );
1289 1289
         return;
1290 1290
     }
@@ -1302,21 +1302,21 @@  discard block
 block discarded – undo
1302 1302
     $invoice = wpinv_get_invoice( $invoice_id );
1303 1303
 
1304 1304
     if ( empty( $invoice ) ) {
1305
-		echo aui()->alert(
1306
-			array(
1307
-				'type'    => 'warning',
1308
-				'content' => __( 'Invoice not found', 'invoicing' ),
1309
-			)
1305
+        echo aui()->alert(
1306
+            array(
1307
+                'type'    => 'warning',
1308
+                'content' => __( 'Invoice not found', 'invoicing' ),
1309
+            )
1310 1310
         );
1311 1311
         return;
1312 1312
     }
1313 1313
 
1314 1314
     if ( $invoice->is_paid() ) {
1315
-		echo aui()->alert(
1316
-			array(
1317
-				'type'    => 'warning',
1318
-				'content' => __( 'Invoice has already been paid', 'invoicing' ),
1319
-			)
1315
+        echo aui()->alert(
1316
+            array(
1317
+                'type'    => 'warning',
1318
+                'content' => __( 'Invoice has already been paid', 'invoicing' ),
1319
+            )
1320 1320
         );
1321 1321
         return;
1322 1322
     }
@@ -1378,7 +1378,7 @@  discard block
 block discarded – undo
1378 1378
         return "<button class='btn btn-primary getpaid-payment-button' type='button' data-form='$form'>$label</button>"; 
1379 1379
     }
1380 1380
 	
1381
-	if ( ! empty( $items ) ) {
1381
+    if ( ! empty( $items ) ) {
1382 1382
         $items  = esc_attr( $items );
1383 1383
         return "<button class='btn btn-primary getpaid-payment-button' type='button' data-item='$items'>$label</button>"; 
1384 1384
     }
Please login to merge, or discard this patch.
Spacing   +461 added lines, -461 removed lines patch added patch discarded remove patch
@@ -4,99 +4,99 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 
7
-defined( 'ABSPATH' ) || exit;
7
+defined('ABSPATH') || exit;
8 8
 
9 9
 /**
10 10
  * Displays an invoice.
11 11
  * 
12 12
  * @param WPInv_Invoice $invoice.
13 13
  */
14
-function getpaid_invoice( $invoice ) {
15
-    if ( ! empty( $invoice ) ) {
16
-        wpinv_get_template( 'invoice/invoice.php', compact( 'invoice' ) );
14
+function getpaid_invoice($invoice) {
15
+    if (!empty($invoice)) {
16
+        wpinv_get_template('invoice/invoice.php', compact('invoice'));
17 17
     }
18 18
 }
19
-add_action( 'getpaid_invoice', 'getpaid_invoice', 10 );
19
+add_action('getpaid_invoice', 'getpaid_invoice', 10);
20 20
 
21 21
 /**
22 22
  * Displays the invoice footer.
23 23
  */
24
-function getpaid_invoice_footer( $invoice ) {
25
-    if ( ! empty( $invoice ) ) {
26
-        wpinv_get_template( 'invoice/footer.php', compact( 'invoice' ) );
24
+function getpaid_invoice_footer($invoice) {
25
+    if (!empty($invoice)) {
26
+        wpinv_get_template('invoice/footer.php', compact('invoice'));
27 27
     }
28 28
 }
29
-add_action( 'getpaid_invoice_footer', 'getpaid_invoice_footer', 10 );
29
+add_action('getpaid_invoice_footer', 'getpaid_invoice_footer', 10);
30 30
 
31 31
 /**
32 32
  * Displays the invoice top bar.
33 33
  */
34
-function getpaid_invoice_header( $invoice ) {
35
-    if ( ! empty( $invoice ) ) {
36
-        wpinv_get_template( 'invoice/header.php', compact( 'invoice' ) );
34
+function getpaid_invoice_header($invoice) {
35
+    if (!empty($invoice)) {
36
+        wpinv_get_template('invoice/header.php', compact('invoice'));
37 37
     }
38 38
 }
39
-add_action( 'getpaid_invoice_header', 'getpaid_invoice_header', 10 );
39
+add_action('getpaid_invoice_header', 'getpaid_invoice_header', 10);
40 40
 
41 41
 /**
42 42
  * Displays actions on the left side of the header.
43 43
  */
44
-function getpaid_invoice_header_left_actions( $invoice ) {
45
-    if ( ! empty( $invoice ) ) {
46
-        wpinv_get_template( 'invoice/header-left-actions.php', compact( 'invoice' ) );
44
+function getpaid_invoice_header_left_actions($invoice) {
45
+    if (!empty($invoice)) {
46
+        wpinv_get_template('invoice/header-left-actions.php', compact('invoice'));
47 47
     }
48 48
 }
49
-add_action( 'getpaid_invoice_header_left', 'getpaid_invoice_header_left_actions', 10 );
49
+add_action('getpaid_invoice_header_left', 'getpaid_invoice_header_left_actions', 10);
50 50
 
51 51
 /**
52 52
  * Displays actions on the right side of the invoice top bar.
53 53
  */
54
-function getpaid_invoice_header_right_actions( $invoice ) {
55
-    if ( ! empty( $invoice ) ) {
56
-        wpinv_get_template( 'invoice/header-right-actions.php', compact( 'invoice' ) );
54
+function getpaid_invoice_header_right_actions($invoice) {
55
+    if (!empty($invoice)) {
56
+        wpinv_get_template('invoice/header-right-actions.php', compact('invoice'));
57 57
     }
58 58
 }
59
-add_action( 'getpaid_invoice_header_right', 'getpaid_invoice_header_right_actions', 10 );
59
+add_action('getpaid_invoice_header_right', 'getpaid_invoice_header_right_actions', 10);
60 60
 
61 61
 /**
62 62
  * Displays the invoice title, logo etc.
63 63
  */
64
-function getpaid_invoice_details_top( $invoice ) {
65
-    if ( ! empty( $invoice ) ) {
66
-        wpinv_get_template( 'invoice/details-top.php', compact( 'invoice' ) );
64
+function getpaid_invoice_details_top($invoice) {
65
+    if (!empty($invoice)) {
66
+        wpinv_get_template('invoice/details-top.php', compact('invoice'));
67 67
     }
68 68
 }
69
-add_action( 'getpaid_invoice_details', 'getpaid_invoice_details_top', 10 );
69
+add_action('getpaid_invoice_details', 'getpaid_invoice_details_top', 10);
70 70
 
71 71
 /**
72 72
  * Displays the company logo.
73 73
  */
74
-function getpaid_invoice_logo( $invoice ) {
75
-    if ( ! empty( $invoice ) ) {
76
-        wpinv_get_template( 'invoice/invoice-logo.php', compact( 'invoice' ) );
74
+function getpaid_invoice_logo($invoice) {
75
+    if (!empty($invoice)) {
76
+        wpinv_get_template('invoice/invoice-logo.php', compact('invoice'));
77 77
     }
78 78
 }
79
-add_action( 'getpaid_invoice_details_top_left', 'getpaid_invoice_logo' );
79
+add_action('getpaid_invoice_details_top_left', 'getpaid_invoice_logo');
80 80
 
81 81
 /**
82 82
  * Displays the type of invoice.
83 83
  */
84
-function getpaid_invoice_type( $invoice ) {
85
-    if ( ! empty( $invoice ) ) {
86
-        wpinv_get_template( 'invoice/invoice-type.php', compact( 'invoice' ) );
84
+function getpaid_invoice_type($invoice) {
85
+    if (!empty($invoice)) {
86
+        wpinv_get_template('invoice/invoice-type.php', compact('invoice'));
87 87
     }
88 88
 }
89
-add_action( 'getpaid_invoice_details_top_right', 'getpaid_invoice_type' );
89
+add_action('getpaid_invoice_details_top_right', 'getpaid_invoice_type');
90 90
 
91 91
 /**
92 92
  * Displays the invoice details.
93 93
  */
94
-function getpaid_invoice_details_main( $invoice ) {
95
-    if ( ! empty( $invoice ) ) {
96
-        wpinv_get_template( 'invoice/details.php', compact( 'invoice' ) );
94
+function getpaid_invoice_details_main($invoice) {
95
+    if (!empty($invoice)) {
96
+        wpinv_get_template('invoice/details.php', compact('invoice'));
97 97
     }
98 98
 }
99
-add_action( 'getpaid_invoice_details', 'getpaid_invoice_details_main', 50 );
99
+add_action('getpaid_invoice_details', 'getpaid_invoice_details_main', 50);
100 100
 
101 101
 /**
102 102
  * Returns a path to the templates directory.
@@ -125,8 +125,8 @@  discard block
 block discarded – undo
125 125
  * @param string $template_path The templates directory relative to the theme's root dir. Defaults to 'invoicing'.
126 126
  * @param string $default_path The root path to the default template. Defaults to invoicing/templates
127 127
  */
128
-function wpinv_get_template( $template_name, $args = array(), $template_path = '', $default_path = '' ) {
129
-    getpaid_template()->display_template( $template_name, $args, $template_path, $default_path );
128
+function wpinv_get_template($template_name, $args = array(), $template_path = '', $default_path = '') {
129
+    getpaid_template()->display_template($template_name, $args, $template_path, $default_path);
130 130
 }
131 131
 
132 132
 /**
@@ -139,8 +139,8 @@  discard block
 block discarded – undo
139 139
  * @param string $template_path The templates directory relative to the theme's root dir. Defaults to 'invoicing'.
140 140
  * @param string $default_path The root path to the default template. Defaults to invoicing/templates
141 141
  */
142
-function wpinv_get_template_html( $template_name, $args = array(), $template_path = '', $default_path = '' ) {
143
-	return getpaid_template()->get_template( $template_name, $args, $template_path, $default_path );
142
+function wpinv_get_template_html($template_name, $args = array(), $template_path = '', $default_path = '') {
143
+	return getpaid_template()->get_template($template_name, $args, $template_path, $default_path);
144 144
 }
145 145
 
146 146
 /**
@@ -149,7 +149,7 @@  discard block
 block discarded – undo
149 149
  * @return string
150 150
  */
151 151
 function wpinv_template_path() {
152
-    return apply_filters( 'wpinv_template_path', wpinv_get_theme_template_dir_name() );
152
+    return apply_filters('wpinv_template_path', wpinv_get_theme_template_dir_name());
153 153
 }
154 154
 
155 155
 /**
@@ -158,7 +158,7 @@  discard block
 block discarded – undo
158 158
  * @return string
159 159
  */
160 160
 function wpinv_get_theme_template_dir_name() {
161
-	return trailingslashit( apply_filters( 'wpinv_templates_dir', 'invoicing' ) );
161
+	return trailingslashit(apply_filters('wpinv_templates_dir', 'invoicing'));
162 162
 }
163 163
 
164 164
 /**
@@ -170,56 +170,56 @@  discard block
 block discarded – undo
170 170
  * @param string $template_path The template path relative to the theme's root dir. Defaults to 'invoicing'.
171 171
  * @param string $default_path The root path to the default template. Defaults to invoicing/templates
172 172
  */
173
-function wpinv_locate_template( $template_name, $template_path = '', $default_path = '' ) {
174
-    return getpaid_template()->locate_template( $template_name, $template_path, $default_path );
173
+function wpinv_locate_template($template_name, $template_path = '', $default_path = '') {
174
+    return getpaid_template()->locate_template($template_name, $template_path, $default_path);
175 175
 }
176 176
 
177
-function wpinv_get_template_part( $slug, $name = null, $load = true ) {
178
-	do_action( 'get_template_part_' . $slug, $slug, $name );
177
+function wpinv_get_template_part($slug, $name = null, $load = true) {
178
+	do_action('get_template_part_' . $slug, $slug, $name);
179 179
 
180 180
 	// Setup possible parts
181 181
 	$templates = array();
182
-	if ( isset( $name ) )
182
+	if (isset($name))
183 183
 		$templates[] = $slug . '-' . $name . '.php';
184 184
 	$templates[] = $slug . '.php';
185 185
 
186 186
 	// Allow template parts to be filtered
187
-	$templates = apply_filters( 'wpinv_get_template_part', $templates, $slug, $name );
187
+	$templates = apply_filters('wpinv_get_template_part', $templates, $slug, $name);
188 188
 
189 189
 	// Return the part that is found
190
-	return wpinv_locate_tmpl( $templates, $load, false );
190
+	return wpinv_locate_tmpl($templates, $load, false);
191 191
 }
192 192
 
193
-function wpinv_locate_tmpl( $template_names, $load = false, $require_once = true ) {
193
+function wpinv_locate_tmpl($template_names, $load = false, $require_once = true) {
194 194
 	// No file found yet
195 195
 	$located = false;
196 196
 
197 197
 	// Try to find a template file
198
-	foreach ( (array)$template_names as $template_name ) {
198
+	foreach ((array) $template_names as $template_name) {
199 199
 
200 200
 		// Continue if template is empty
201
-		if ( empty( $template_name ) )
201
+		if (empty($template_name))
202 202
 			continue;
203 203
 
204 204
 		// Trim off any slashes from the template name
205
-		$template_name = ltrim( $template_name, '/' );
205
+		$template_name = ltrim($template_name, '/');
206 206
 
207 207
 		// try locating this template file by looping through the template paths
208
-		foreach( wpinv_get_theme_template_paths() as $template_path ) {
208
+		foreach (wpinv_get_theme_template_paths() as $template_path) {
209 209
 
210
-			if( file_exists( $template_path . $template_name ) ) {
210
+			if (file_exists($template_path . $template_name)) {
211 211
 				$located = $template_path . $template_name;
212 212
 				break;
213 213
 			}
214 214
 		}
215 215
 
216
-		if( !empty( $located ) ) {
216
+		if (!empty($located)) {
217 217
 			break;
218 218
 		}
219 219
 	}
220 220
 
221
-	if ( ( true == $load ) && ! empty( $located ) )
222
-		load_template( $located, $require_once );
221
+	if ((true == $load) && !empty($located))
222
+		load_template($located, $require_once);
223 223
 
224 224
 	return $located;
225 225
 }
@@ -228,127 +228,127 @@  discard block
 block discarded – undo
228 228
 	$template_dir = wpinv_get_theme_template_dir_name();
229 229
 
230 230
 	$file_paths = array(
231
-		1 => trailingslashit( get_stylesheet_directory() ) . $template_dir,
232
-		10 => trailingslashit( get_template_directory() ) . $template_dir,
231
+		1 => trailingslashit(get_stylesheet_directory()) . $template_dir,
232
+		10 => trailingslashit(get_template_directory()) . $template_dir,
233 233
 		100 => wpinv_get_templates_dir()
234 234
 	);
235 235
 
236
-	$file_paths = apply_filters( 'wpinv_template_paths', $file_paths );
236
+	$file_paths = apply_filters('wpinv_template_paths', $file_paths);
237 237
 
238 238
 	// sort the file paths based on priority
239
-	ksort( $file_paths, SORT_NUMERIC );
239
+	ksort($file_paths, SORT_NUMERIC);
240 240
 
241
-	return array_map( 'trailingslashit', $file_paths );
241
+	return array_map('trailingslashit', $file_paths);
242 242
 }
243 243
 
244 244
 function wpinv_checkout_meta_tags() {
245 245
 
246 246
 	$pages   = array();
247
-	$pages[] = wpinv_get_option( 'success_page' );
248
-	$pages[] = wpinv_get_option( 'failure_page' );
249
-	$pages[] = wpinv_get_option( 'invoice_history_page' );
250
-	$pages[] = wpinv_get_option( 'invoice_subscription_page' );
247
+	$pages[] = wpinv_get_option('success_page');
248
+	$pages[] = wpinv_get_option('failure_page');
249
+	$pages[] = wpinv_get_option('invoice_history_page');
250
+	$pages[] = wpinv_get_option('invoice_subscription_page');
251 251
 
252
-	if( !wpinv_is_checkout() && !is_page( $pages ) ) {
252
+	if (!wpinv_is_checkout() && !is_page($pages)) {
253 253
 		return;
254 254
 	}
255 255
 
256 256
 	echo '<meta name="robots" content="noindex,nofollow" />' . "\n";
257 257
 }
258
-add_action( 'wp_head', 'wpinv_checkout_meta_tags' );
258
+add_action('wp_head', 'wpinv_checkout_meta_tags');
259 259
 
260
-function wpinv_add_body_classes( $class ) {
261
-	$classes = (array)$class;
260
+function wpinv_add_body_classes($class) {
261
+	$classes = (array) $class;
262 262
 
263
-	if( wpinv_is_checkout() ) {
263
+	if (wpinv_is_checkout()) {
264 264
 		$classes[] = 'wpinv-checkout';
265 265
 		$classes[] = 'wpinv-page';
266 266
 	}
267 267
 
268
-	if( wpinv_is_success_page() ) {
268
+	if (wpinv_is_success_page()) {
269 269
 		$classes[] = 'wpinv-success';
270 270
 		$classes[] = 'wpinv-page';
271 271
 	}
272 272
 
273
-	if( wpinv_is_failed_transaction_page() ) {
273
+	if (wpinv_is_failed_transaction_page()) {
274 274
 		$classes[] = 'wpinv-failed-transaction';
275 275
 		$classes[] = 'wpinv-page';
276 276
 	}
277 277
 
278
-	if( wpinv_is_invoice_history_page() ) {
278
+	if (wpinv_is_invoice_history_page()) {
279 279
 		$classes[] = 'wpinv-history';
280 280
 		$classes[] = 'wpinv-page';
281 281
 	}
282 282
 
283
-	if( wpinv_is_subscriptions_history_page() ) {
283
+	if (wpinv_is_subscriptions_history_page()) {
284 284
 		$classes[] = 'wpinv-subscription';
285 285
 		$classes[] = 'wpinv-page';
286 286
 	}
287 287
 
288
-	if( wpinv_is_test_mode() ) {
288
+	if (wpinv_is_test_mode()) {
289 289
 		$classes[] = 'wpinv-test-mode';
290 290
 		$classes[] = 'wpinv-page';
291 291
 	}
292 292
 
293
-	return array_unique( $classes );
293
+	return array_unique($classes);
294 294
 }
295
-add_filter( 'body_class', 'wpinv_add_body_classes' );
295
+add_filter('body_class', 'wpinv_add_body_classes');
296 296
 
297
-function wpinv_html_year_dropdown( $name = 'year', $selected = 0, $years_before = 5, $years_after = 0 ) {
298
-    $current     = date( 'Y' );
299
-    $start_year  = $current - absint( $years_before );
300
-    $end_year    = $current + absint( $years_after );
301
-    $selected    = empty( $selected ) ? date( 'Y' ) : $selected;
297
+function wpinv_html_year_dropdown($name = 'year', $selected = 0, $years_before = 5, $years_after = 0) {
298
+    $current     = date('Y');
299
+    $start_year  = $current - absint($years_before);
300
+    $end_year    = $current + absint($years_after);
301
+    $selected    = empty($selected) ? date('Y') : $selected;
302 302
     $options     = array();
303 303
 
304
-    while ( $start_year <= $end_year ) {
305
-        $options[ absint( $start_year ) ] = $start_year;
304
+    while ($start_year <= $end_year) {
305
+        $options[absint($start_year)] = $start_year;
306 306
         $start_year++;
307 307
     }
308 308
 
309
-    $output = wpinv_html_select( array(
309
+    $output = wpinv_html_select(array(
310 310
         'name'             => $name,
311 311
         'selected'         => $selected,
312 312
         'options'          => $options,
313 313
         'show_option_all'  => false,
314 314
         'show_option_none' => false
315
-    ) );
315
+    ));
316 316
 
317 317
     return $output;
318 318
 }
319 319
 
320
-function wpinv_html_month_dropdown( $name = 'month', $selected = 0 ) {
320
+function wpinv_html_month_dropdown($name = 'month', $selected = 0) {
321 321
 
322 322
     $options = array(
323
-        '1'  => __( 'January', 'invoicing' ),
324
-        '2'  => __( 'February', 'invoicing' ),
325
-        '3'  => __( 'March', 'invoicing' ),
326
-        '4'  => __( 'April', 'invoicing' ),
327
-        '5'  => __( 'May', 'invoicing' ),
328
-        '6'  => __( 'June', 'invoicing' ),
329
-        '7'  => __( 'July', 'invoicing' ),
330
-        '8'  => __( 'August', 'invoicing' ),
331
-        '9'  => __( 'September', 'invoicing' ),
332
-        '10' => __( 'October', 'invoicing' ),
333
-        '11' => __( 'November', 'invoicing' ),
334
-        '12' => __( 'December', 'invoicing' ),
323
+        '1'  => __('January', 'invoicing'),
324
+        '2'  => __('February', 'invoicing'),
325
+        '3'  => __('March', 'invoicing'),
326
+        '4'  => __('April', 'invoicing'),
327
+        '5'  => __('May', 'invoicing'),
328
+        '6'  => __('June', 'invoicing'),
329
+        '7'  => __('July', 'invoicing'),
330
+        '8'  => __('August', 'invoicing'),
331
+        '9'  => __('September', 'invoicing'),
332
+        '10' => __('October', 'invoicing'),
333
+        '11' => __('November', 'invoicing'),
334
+        '12' => __('December', 'invoicing'),
335 335
     );
336 336
 
337 337
     // If no month is selected, default to the current month
338
-    $selected = empty( $selected ) ? date( 'n' ) : $selected;
338
+    $selected = empty($selected) ? date('n') : $selected;
339 339
 
340
-    $output = wpinv_html_select( array(
340
+    $output = wpinv_html_select(array(
341 341
         'name'             => $name,
342 342
         'selected'         => $selected,
343 343
         'options'          => $options,
344 344
         'show_option_all'  => false,
345 345
         'show_option_none' => false
346
-    ) );
346
+    ));
347 347
 
348 348
     return $output;
349 349
 }
350 350
 
351
-function wpinv_html_select( $args = array() ) {
351
+function wpinv_html_select($args = array()) {
352 352
     $defaults = array(
353 353
         'options'          => array(),
354 354
         'name'             => null,
@@ -357,8 +357,8 @@  discard block
 block discarded – undo
357 357
         'selected'         => 0,
358 358
         'placeholder'      => null,
359 359
         'multiple'         => false,
360
-        'show_option_all'  => _x( 'All', 'all dropdown items', 'invoicing' ),
361
-        'show_option_none' => _x( 'None', 'no dropdown items', 'invoicing' ),
360
+        'show_option_all'  => _x('All', 'all dropdown items', 'invoicing'),
361
+        'show_option_none' => _x('None', 'no dropdown items', 'invoicing'),
362 362
         'data'             => array(),
363 363
         'onchange'         => null,
364 364
         'required'         => false,
@@ -366,74 +366,74 @@  discard block
 block discarded – undo
366 366
         'readonly'         => false,
367 367
     );
368 368
 
369
-    $args = wp_parse_args( $args, $defaults );
369
+    $args = wp_parse_args($args, $defaults);
370 370
 
371 371
     $data_elements = '';
372
-    foreach ( $args['data'] as $key => $value ) {
373
-        $data_elements .= ' data-' . esc_attr( $key ) . '="' . esc_attr( $value ) . '"';
372
+    foreach ($args['data'] as $key => $value) {
373
+        $data_elements .= ' data-' . esc_attr($key) . '="' . esc_attr($value) . '"';
374 374
     }
375 375
 
376
-    if( $args['multiple'] ) {
376
+    if ($args['multiple']) {
377 377
         $multiple = ' MULTIPLE';
378 378
     } else {
379 379
         $multiple = '';
380 380
     }
381 381
 
382
-    if( $args['placeholder'] ) {
382
+    if ($args['placeholder']) {
383 383
         $placeholder = $args['placeholder'];
384 384
     } else {
385 385
         $placeholder = '';
386 386
     }
387 387
     
388 388
     $options = '';
389
-    if( !empty( $args['onchange'] ) ) {
390
-        $options .= ' onchange="' . esc_attr( $args['onchange'] ) . '"';
389
+    if (!empty($args['onchange'])) {
390
+        $options .= ' onchange="' . esc_attr($args['onchange']) . '"';
391 391
     }
392 392
     
393
-    if( !empty( $args['required'] ) ) {
393
+    if (!empty($args['required'])) {
394 394
         $options .= ' required="required"';
395 395
     }
396 396
     
397
-    if( !empty( $args['disabled'] ) ) {
397
+    if (!empty($args['disabled'])) {
398 398
         $options .= ' disabled';
399 399
     }
400 400
     
401
-    if( !empty( $args['readonly'] ) ) {
401
+    if (!empty($args['readonly'])) {
402 402
         $options .= ' readonly';
403 403
     }
404 404
 
405
-    $class  = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) );
406
-    $output = '<select name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['id'] ) . '" class="wpinv-select ' . $class . '"' . $multiple . ' data-placeholder="' . $placeholder . '" ' . trim( $options ) . $data_elements . '>';
405
+    $class  = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class'])));
406
+    $output = '<select name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['id']) . '" class="wpinv-select ' . $class . '"' . $multiple . ' data-placeholder="' . $placeholder . '" ' . trim($options) . $data_elements . '>';
407 407
 
408
-    if ( $args['show_option_all'] ) {
409
-        if( $args['multiple'] ) {
410
-            $selected = selected( true, in_array( 0, $args['selected'] ), false );
408
+    if ($args['show_option_all']) {
409
+        if ($args['multiple']) {
410
+            $selected = selected(true, in_array(0, $args['selected']), false);
411 411
         } else {
412
-            $selected = selected( $args['selected'], 0, false );
412
+            $selected = selected($args['selected'], 0, false);
413 413
         }
414
-        $output .= '<option value="all"' . $selected . '>' . esc_html( $args['show_option_all'] ) . '</option>';
414
+        $output .= '<option value="all"' . $selected . '>' . esc_html($args['show_option_all']) . '</option>';
415 415
     }
416 416
 
417
-    if ( !empty( $args['options'] ) ) {
417
+    if (!empty($args['options'])) {
418 418
 
419
-        if ( $args['show_option_none'] ) {
420
-            if( $args['multiple'] ) {
421
-                $selected = selected( true, in_array( "", $args['selected'] ), false );
419
+        if ($args['show_option_none']) {
420
+            if ($args['multiple']) {
421
+                $selected = selected(true, in_array("", $args['selected']), false);
422 422
             } else {
423
-                $selected = selected( $args['selected'] === "", true, false );
423
+                $selected = selected($args['selected'] === "", true, false);
424 424
             }
425
-            $output .= '<option value=""' . $selected . '>' . esc_html( $args['show_option_none'] ) . '</option>';
425
+            $output .= '<option value=""' . $selected . '>' . esc_html($args['show_option_none']) . '</option>';
426 426
         }
427 427
 
428
-        foreach( $args['options'] as $key => $option ) {
428
+        foreach ($args['options'] as $key => $option) {
429 429
 
430
-            if( $args['multiple'] && is_array( $args['selected'] ) ) {
431
-                $selected = selected( true, (bool)in_array( $key, $args['selected'] ), false );
430
+            if ($args['multiple'] && is_array($args['selected'])) {
431
+                $selected = selected(true, (bool) in_array($key, $args['selected']), false);
432 432
             } else {
433
-                $selected = selected( $args['selected'], $key, false );
433
+                $selected = selected($args['selected'], $key, false);
434 434
             }
435 435
 
436
-            $output .= '<option value="' . esc_attr( $key ) . '"' . $selected . '>' . esc_html( $option ) . '</option>';
436
+            $output .= '<option value="' . esc_attr($key) . '"' . $selected . '>' . esc_html($option) . '</option>';
437 437
         }
438 438
     }
439 439
 
@@ -442,7 +442,7 @@  discard block
 block discarded – undo
442 442
     return $output;
443 443
 }
444 444
 
445
-function wpinv_item_dropdown( $args = array() ) {
445
+function wpinv_item_dropdown($args = array()) {
446 446
     $defaults = array(
447 447
         'name'              => 'wpi_item',
448 448
         'id'                => 'wpi_item',
@@ -450,14 +450,14 @@  discard block
 block discarded – undo
450 450
         'multiple'          => false,
451 451
         'selected'          => 0,
452 452
         'number'            => -1,
453
-        'placeholder'       => __( 'Choose a item', 'invoicing' ),
454
-        'data'              => array( 'search-type' => 'item' ),
453
+        'placeholder'       => __('Choose a item', 'invoicing'),
454
+        'data'              => array('search-type' => 'item'),
455 455
         'show_option_all'   => false,
456 456
         'show_option_none'  => false,
457 457
         'show_recurring'    => false,
458 458
     );
459 459
 
460
-    $args = wp_parse_args( $args, $defaults );
460
+    $args = wp_parse_args($args, $defaults);
461 461
 
462 462
     $item_args = array(
463 463
         'post_type'      => 'wpi_item',
@@ -466,44 +466,44 @@  discard block
 block discarded – undo
466 466
         'posts_per_page' => $args['number']
467 467
     );
468 468
 
469
-    $item_args  = apply_filters( 'wpinv_item_dropdown_query_args', $item_args, $args, $defaults );
469
+    $item_args  = apply_filters('wpinv_item_dropdown_query_args', $item_args, $args, $defaults);
470 470
 
471
-    $items      = get_posts( $item_args );
471
+    $items      = get_posts($item_args);
472 472
     $options    = array();
473
-    if ( $items ) {
474
-        foreach ( $items as $item ) {
475
-            $title = esc_html( $item->post_title );
473
+    if ($items) {
474
+        foreach ($items as $item) {
475
+            $title = esc_html($item->post_title);
476 476
             
477
-            if ( !empty( $args['show_recurring'] ) ) {
478
-                $title .= wpinv_get_item_suffix( $item->ID, false );
477
+            if (!empty($args['show_recurring'])) {
478
+                $title .= wpinv_get_item_suffix($item->ID, false);
479 479
             }
480 480
             
481
-            $options[ absint( $item->ID ) ] = $title;
481
+            $options[absint($item->ID)] = $title;
482 482
         }
483 483
     }
484 484
 
485 485
     // This ensures that any selected items are included in the drop down
486
-    if( is_array( $args['selected'] ) ) {
487
-        foreach( $args['selected'] as $item ) {
488
-            if( ! in_array( $item, $options ) ) {
489
-                $title = get_the_title( $item );
490
-                if ( !empty( $args['show_recurring'] ) ) {
491
-                    $title .= wpinv_get_item_suffix( $item, false );
486
+    if (is_array($args['selected'])) {
487
+        foreach ($args['selected'] as $item) {
488
+            if (!in_array($item, $options)) {
489
+                $title = get_the_title($item);
490
+                if (!empty($args['show_recurring'])) {
491
+                    $title .= wpinv_get_item_suffix($item, false);
492 492
                 }
493 493
                 $options[$item] = $title;
494 494
             }
495 495
         }
496
-    } elseif ( is_numeric( $args['selected'] ) && $args['selected'] !== 0 ) {
497
-        if ( ! in_array( $args['selected'], $options ) ) {
498
-            $title = get_the_title( $args['selected'] );
499
-            if ( !empty( $args['show_recurring'] ) ) {
500
-                $title .= wpinv_get_item_suffix( $args['selected'], false );
496
+    } elseif (is_numeric($args['selected']) && $args['selected'] !== 0) {
497
+        if (!in_array($args['selected'], $options)) {
498
+            $title = get_the_title($args['selected']);
499
+            if (!empty($args['show_recurring'])) {
500
+                $title .= wpinv_get_item_suffix($args['selected'], false);
501 501
             }
502
-            $options[$args['selected']] = get_the_title( $args['selected'] );
502
+            $options[$args['selected']] = get_the_title($args['selected']);
503 503
         }
504 504
     }
505 505
 
506
-    $output = wpinv_html_select( array(
506
+    $output = wpinv_html_select(array(
507 507
         'name'             => $args['name'],
508 508
         'selected'         => $args['selected'],
509 509
         'id'               => $args['id'],
@@ -514,7 +514,7 @@  discard block
 block discarded – undo
514 514
         'show_option_all'  => $args['show_option_all'],
515 515
         'show_option_none' => $args['show_option_none'],
516 516
         'data'             => $args['data'],
517
-    ) );
517
+    ));
518 518
 
519 519
     return $output;
520 520
 }
@@ -534,16 +534,16 @@  discard block
 block discarded – undo
534 534
     );
535 535
 
536 536
     $options = array();
537
-    if ( $items ) {
538
-        foreach ( $items as $item ) {
539
-            $options[ $item->ID ] = esc_html( $item->post_title ) . wpinv_get_item_suffix( $item->ID, false );
537
+    if ($items) {
538
+        foreach ($items as $item) {
539
+            $options[$item->ID] = esc_html($item->post_title) . wpinv_get_item_suffix($item->ID, false);
540 540
         }
541 541
     }
542 542
 
543 543
     return $options;
544 544
 }
545 545
 
546
-function wpinv_html_checkbox( $args = array() ) {
546
+function wpinv_html_checkbox($args = array()) {
547 547
     $defaults = array(
548 548
         'name'     => null,
549 549
         'current'  => null,
@@ -554,17 +554,17 @@  discard block
 block discarded – undo
554 554
         )
555 555
     );
556 556
 
557
-    $args = wp_parse_args( $args, $defaults );
557
+    $args = wp_parse_args($args, $defaults);
558 558
 
559
-    $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) );
559
+    $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class'])));
560 560
     $attr  = '';
561
-    if ( ! empty( $args['options']['disabled'] ) ) {
561
+    if (!empty($args['options']['disabled'])) {
562 562
         $attr .= ' disabled="disabled"';
563
-    } elseif ( ! empty( $args['options']['readonly'] ) ) {
563
+    } elseif (!empty($args['options']['readonly'])) {
564 564
         $attr .= ' readonly';
565 565
     }
566 566
 
567
-    $output = '<input type="checkbox"' . $attr . ' name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['name'] ) . '" class="' . esc_attr( $class ) . ' ' . esc_attr( $args['name'] ) . '" ' . checked( 1, $args['current'], false ) . ' />';
567
+    $output = '<input type="checkbox"' . $attr . ' name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['name']) . '" class="' . esc_attr($class) . ' ' . esc_attr($args['name']) . '" ' . checked(1, $args['current'], false) . ' />';
568 568
 
569 569
     return $output;
570 570
 }
@@ -572,34 +572,34 @@  discard block
 block discarded – undo
572 572
 /**
573 573
  * Displays a hidden field.
574 574
  */
575
-function getpaid_hidden_field( $name, $value ) {
576
-    echo "<input type='hidden' name='" . esc_attr( $name ) . "' value=' " . esc_attr( $value ) . "' />";
575
+function getpaid_hidden_field($name, $value) {
576
+    echo "<input type='hidden' name='" . esc_attr($name) . "' value=' " . esc_attr($value) . "' />";
577 577
 }
578 578
 
579 579
 /**
580 580
  * Displays a submit field.
581 581
  */
582
-function getpaid_submit_field( $value, $name = 'submit', $class = 'btn-primary' ) {
583
-    echo "<input type='submit' name='" . esc_attr( $name ) . "' value='" . esc_attr( $value ) . "' class='btn " . esc_attr( $class ) . "' />";
582
+function getpaid_submit_field($value, $name = 'submit', $class = 'btn-primary') {
583
+    echo "<input type='submit' name='" . esc_attr($name) . "' value='" . esc_attr($value) . "' class='btn " . esc_attr($class) . "' />";
584 584
 }
585 585
 
586
-function wpinv_html_text( $args = array() ) {
586
+function wpinv_html_text($args = array()) {
587 587
     // Backwards compatibility
588
-    if ( func_num_args() > 1 ) {
588
+    if (func_num_args() > 1) {
589 589
         $args = func_get_args();
590 590
 
591 591
         $name  = $args[0];
592
-        $value = isset( $args[1] ) ? $args[1] : '';
593
-        $label = isset( $args[2] ) ? $args[2] : '';
594
-        $desc  = isset( $args[3] ) ? $args[3] : '';
592
+        $value = isset($args[1]) ? $args[1] : '';
593
+        $label = isset($args[2]) ? $args[2] : '';
594
+        $desc  = isset($args[3]) ? $args[3] : '';
595 595
     }
596 596
 
597 597
     $defaults = array(
598 598
         'id'           => '',
599
-        'name'         => isset( $name )  ? $name  : 'text',
600
-        'value'        => isset( $value ) ? $value : null,
601
-        'label'        => isset( $label ) ? $label : null,
602
-        'desc'         => isset( $desc )  ? $desc  : null,
599
+        'name'         => isset($name) ? $name : 'text',
600
+        'value'        => isset($value) ? $value : null,
601
+        'label'        => isset($label) ? $label : null,
602
+        'desc'         => isset($desc) ? $desc : null,
603 603
         'placeholder'  => '',
604 604
         'class'        => 'regular-text',
605 605
         'disabled'     => false,
@@ -609,41 +609,41 @@  discard block
 block discarded – undo
609 609
         'data'         => false
610 610
     );
611 611
 
612
-    $args = wp_parse_args( $args, $defaults );
612
+    $args = wp_parse_args($args, $defaults);
613 613
 
614
-    $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) );
614
+    $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class'])));
615 615
     $options = '';
616
-    if( $args['required'] ) {
616
+    if ($args['required']) {
617 617
         $options .= ' required="required"';
618 618
     }
619
-    if( $args['readonly'] ) {
619
+    if ($args['readonly']) {
620 620
         $options .= ' readonly';
621 621
     }
622
-    if( $args['readonly'] ) {
622
+    if ($args['readonly']) {
623 623
         $options .= ' readonly';
624 624
     }
625 625
 
626 626
     $data = '';
627
-    if ( !empty( $args['data'] ) ) {
628
-        foreach ( $args['data'] as $key => $value ) {
629
-            $data .= 'data-' . wpinv_sanitize_key( $key ) . '="' . esc_attr( $value ) . '" ';
627
+    if (!empty($args['data'])) {
628
+        foreach ($args['data'] as $key => $value) {
629
+            $data .= 'data-' . wpinv_sanitize_key($key) . '="' . esc_attr($value) . '" ';
630 630
         }
631 631
     }
632 632
 
633
-    $output = '<span id="wpinv-' . wpinv_sanitize_key( $args['name'] ) . '-wrap">';
634
-    $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key( $args['id'] ) . '">' . esc_html( $args['label'] ) . '</label>';
635
-    if ( ! empty( $args['desc'] ) ) {
636
-        $output .= '<span class="wpinv-description">' . esc_html( $args['desc'] ) . '</span>';
633
+    $output = '<span id="wpinv-' . wpinv_sanitize_key($args['name']) . '-wrap">';
634
+    $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key($args['id']) . '">' . esc_html($args['label']) . '</label>';
635
+    if (!empty($args['desc'])) {
636
+        $output .= '<span class="wpinv-description">' . esc_html($args['desc']) . '</span>';
637 637
     }
638 638
 
639
-    $output .= '<input type="text" name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['id'] )  . '" autocomplete="' . esc_attr( $args['autocomplete'] )  . '" value="' . esc_attr( $args['value'] ) . '" placeholder="' . esc_attr( $args['placeholder'] ) . '" class="' . $class . '" ' . $data . ' ' . trim( $options ) . '/>';
639
+    $output .= '<input type="text" name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['id']) . '" autocomplete="' . esc_attr($args['autocomplete']) . '" value="' . esc_attr($args['value']) . '" placeholder="' . esc_attr($args['placeholder']) . '" class="' . $class . '" ' . $data . ' ' . trim($options) . '/>';
640 640
 
641 641
     $output .= '</span>';
642 642
 
643 643
     return $output;
644 644
 }
645 645
 
646
-function wpinv_html_textarea( $args = array() ) {
646
+function wpinv_html_textarea($args = array()) {
647 647
     $defaults = array(
648 648
         'name'        => 'textarea',
649 649
         'value'       => null,
@@ -654,31 +654,31 @@  discard block
 block discarded – undo
654 654
         'placeholder' => '',
655 655
     );
656 656
 
657
-    $args = wp_parse_args( $args, $defaults );
657
+    $args = wp_parse_args($args, $defaults);
658 658
 
659
-    $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) );
659
+    $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class'])));
660 660
     $disabled = '';
661
-    if( $args['disabled'] ) {
661
+    if ($args['disabled']) {
662 662
         $disabled = ' disabled="disabled"';
663 663
     }
664 664
 
665
-    $output = '<span id="wpinv-' . wpinv_sanitize_key( $args['name'] ) . '-wrap">';
666
-    $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key( $args['name'] ) . '">' . esc_html( $args['label'] ) . '</label>';
667
-    $output .= '<textarea name="' . esc_attr( $args['name'] ) . '" placeholder="' . esc_attr( $args['placeholder'] ) . '" id="' . wpinv_sanitize_key( $args['name'] ) . '" class="' . $class . '"' . $disabled . '>' . esc_attr( $args['value'] ) . '</textarea>';
665
+    $output = '<span id="wpinv-' . wpinv_sanitize_key($args['name']) . '-wrap">';
666
+    $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key($args['name']) . '">' . esc_html($args['label']) . '</label>';
667
+    $output .= '<textarea name="' . esc_attr($args['name']) . '" placeholder="' . esc_attr($args['placeholder']) . '" id="' . wpinv_sanitize_key($args['name']) . '" class="' . $class . '"' . $disabled . '>' . esc_attr($args['value']) . '</textarea>';
668 668
 
669
-    if ( ! empty( $args['desc'] ) ) {
670
-        $output .= '<span class="wpinv-description">' . esc_html( $args['desc'] ) . '</span>';
669
+    if (!empty($args['desc'])) {
670
+        $output .= '<span class="wpinv-description">' . esc_html($args['desc']) . '</span>';
671 671
     }
672 672
     $output .= '</span>';
673 673
 
674 674
     return $output;
675 675
 }
676 676
 
677
-function wpinv_html_ajax_user_search( $args = array() ) {
677
+function wpinv_html_ajax_user_search($args = array()) {
678 678
     $defaults = array(
679 679
         'name'        => 'user_id',
680 680
         'value'       => null,
681
-        'placeholder' => __( 'Enter username', 'invoicing' ),
681
+        'placeholder' => __('Enter username', 'invoicing'),
682 682
         'label'       => null,
683 683
         'desc'        => null,
684 684
         'class'       => '',
@@ -687,13 +687,13 @@  discard block
 block discarded – undo
687 687
         'data'        => false
688 688
     );
689 689
 
690
-    $args = wp_parse_args( $args, $defaults );
690
+    $args = wp_parse_args($args, $defaults);
691 691
 
692 692
     $args['class'] = 'wpinv-ajax-user-search ' . $args['class'];
693 693
 
694 694
     $output  = '<span class="wpinv_user_search_wrap">';
695
-        $output .= wpinv_html_text( $args );
696
-        $output .= '<span class="wpinv_user_search_results hidden"><a class="wpinv-ajax-user-cancel" title="' . __( 'Cancel', 'invoicing' ) . '" aria-label="' . __( 'Cancel', 'invoicing' ) . '" href="#">x</a><span></span></span>';
695
+        $output .= wpinv_html_text($args);
696
+        $output .= '<span class="wpinv_user_search_results hidden"><a class="wpinv-ajax-user-cancel" title="' . __('Cancel', 'invoicing') . '" aria-label="' . __('Cancel', 'invoicing') . '" href="#">x</a><span></span></span>';
697 697
     $output .= '</span>';
698 698
 
699 699
     return $output;
@@ -704,20 +704,20 @@  discard block
 block discarded – undo
704 704
  * 
705 705
  * @param string $template the template that is currently being used.
706 706
  */
707
-function wpinv_template( $template ) {
707
+function wpinv_template($template) {
708 708
     global $post;
709 709
 
710
-    if ( ! is_admin() && ( is_single() || is_404() ) && ! empty( $post->ID ) && getpaid_is_invoice_post_type( get_post_type( $post->ID ) ) ) {
710
+    if (!is_admin() && (is_single() || is_404()) && !empty($post->ID) && getpaid_is_invoice_post_type(get_post_type($post->ID))) {
711 711
 
712 712
         // If the user can view this invoice, display it.
713
-        if ( wpinv_user_can_view_invoice( $post->ID ) ) {
713
+        if (wpinv_user_can_view_invoice($post->ID)) {
714 714
 
715
-            return wpinv_get_template_part( 'wpinv-invoice-print', false, false );
715
+            return wpinv_get_template_part('wpinv-invoice-print', false, false);
716 716
 
717 717
         // Else display an error message.
718 718
         } else {
719 719
 
720
-            return wpinv_get_template_part( 'wpinv-invalid-access', false, false );
720
+            return wpinv_get_template_part('wpinv-invalid-access', false, false);
721 721
 
722 722
         }
723 723
 
@@ -725,24 +725,24 @@  discard block
 block discarded – undo
725 725
 
726 726
     return $template;
727 727
 }
728
-add_filter( 'template_include', 'wpinv_template', 10, 1 );
728
+add_filter('template_include', 'wpinv_template', 10, 1);
729 729
 
730 730
 function wpinv_get_business_address() {
731 731
     $business_address   = wpinv_store_address();
732
-    $business_address   = !empty( $business_address ) ? wpautop( wp_kses_post( $business_address ) ) : '';
732
+    $business_address   = !empty($business_address) ? wpautop(wp_kses_post($business_address)) : '';
733 733
     
734 734
     $business_address = $business_address ? '<div class="address">' . $business_address . '</div>' : '';
735 735
     
736
-    return apply_filters( 'wpinv_get_business_address', $business_address );
736
+    return apply_filters('wpinv_get_business_address', $business_address);
737 737
 }
738 738
 
739 739
 /**
740 740
  * Displays the company address.
741 741
  */
742 742
 function wpinv_display_from_address() {
743
-    wpinv_get_template( 'invoice/company-address.php' );
743
+    wpinv_get_template('invoice/company-address.php');
744 744
 }
745
-add_action( 'getpaid_invoice_details_left', 'wpinv_display_from_address', 10 );
745
+add_action('getpaid_invoice_details_left', 'wpinv_display_from_address', 10);
746 746
 
747 747
 /**
748 748
  * Generates a watermark text for an invoice.
@@ -750,9 +750,9 @@  discard block
 block discarded – undo
750 750
  * @param WPInv_Invoice $invoice
751 751
  * @return string
752 752
  */
753
-function wpinv_watermark( $invoice ) {
754
-    $watermark = wpinv_get_watermark( $invoice );
755
-    return apply_filters( 'wpinv_get_watermark', $watermark, $invoice );
753
+function wpinv_watermark($invoice) {
754
+    $watermark = wpinv_get_watermark($invoice);
755
+    return apply_filters('wpinv_get_watermark', $watermark, $invoice);
756 756
 }
757 757
 
758 758
 /**
@@ -761,37 +761,37 @@  discard block
 block discarded – undo
761 761
  * @param WPInv_Invoice $invoice
762 762
  * @return string
763 763
  */
764
-function wpinv_get_watermark( $invoice ) {
764
+function wpinv_get_watermark($invoice) {
765 765
     return $invoice->get_status_nicename();
766 766
 }
767 767
 
768 768
 /**
769 769
  * @deprecated
770 770
  */
771
-function wpinv_display_invoice_details( $invoice ) {
772
-    return getpaid_invoice_meta( $invoice );
771
+function wpinv_display_invoice_details($invoice) {
772
+    return getpaid_invoice_meta($invoice);
773 773
 }
774 774
 
775 775
 /**
776 776
  * Displays invoice meta.
777 777
  */
778
-function getpaid_invoice_meta( $invoice ) {
778
+function getpaid_invoice_meta($invoice) {
779 779
 
780
-    $invoice = new WPInv_Invoice( $invoice );
780
+    $invoice = new WPInv_Invoice($invoice);
781 781
 
782 782
     // Ensure that we have an invoice.
783
-    if ( 0 == $invoice->get_id() ) {
783
+    if (0 == $invoice->get_id()) {
784 784
         return;
785 785
     }
786 786
 
787 787
     // Get the invoice meta.
788
-    $meta = getpaid_get_invoice_meta( $invoice );
788
+    $meta = getpaid_get_invoice_meta($invoice);
789 789
 
790 790
     // Display the meta.
791
-    wpinv_get_template( 'invoice/invoice-meta.php', compact( 'invoice', 'meta' ) );
791
+    wpinv_get_template('invoice/invoice-meta.php', compact('invoice', 'meta'));
792 792
 
793 793
 }
794
-add_action( 'getpaid_invoice_details_right', 'getpaid_invoice_meta', 10 );
794
+add_action('getpaid_invoice_details_right', 'getpaid_invoice_meta', 10);
795 795
 
796 796
 /**
797 797
  * Retrieves the address markup to use on Invoices.
@@ -803,29 +803,29 @@  discard block
 block discarded – undo
803 803
  * @param  string $separator How to separate address lines.
804 804
  * @return string
805 805
  */
806
-function wpinv_get_invoice_address_markup( $billing_details, $separator = '<br/>' ) {
806
+function wpinv_get_invoice_address_markup($billing_details, $separator = '<br/>') {
807 807
 
808 808
     // Retrieve the address markup...
809
-    $country= empty( $billing_details['country'] ) ? '' : $billing_details['country'];
810
-    $format = wpinv_get_full_address_format( $country );
809
+    $country = empty($billing_details['country']) ? '' : $billing_details['country'];
810
+    $format = wpinv_get_full_address_format($country);
811 811
 
812 812
     // ... and the replacements.
813
-    $replacements = wpinv_get_invoice_address_replacements( $billing_details );
813
+    $replacements = wpinv_get_invoice_address_replacements($billing_details);
814 814
 
815
-    $formatted_address = str_ireplace( array_keys( $replacements ), $replacements, $format );
815
+    $formatted_address = str_ireplace(array_keys($replacements), $replacements, $format);
816 816
     
817 817
 	// Remove unavailable tags.
818
-    $formatted_address = preg_replace( "/\{\{\w+\}\}/", '', $formatted_address );
818
+    $formatted_address = preg_replace("/\{\{\w+\}\}/", '', $formatted_address);
819 819
 
820 820
     // Clean up white space.
821
-	$formatted_address = preg_replace( '/  +/', ' ', trim( $formatted_address ) );
822
-    $formatted_address = preg_replace( '/\n\n+/', "\n", $formatted_address );
821
+	$formatted_address = preg_replace('/  +/', ' ', trim($formatted_address));
822
+    $formatted_address = preg_replace('/\n\n+/', "\n", $formatted_address);
823 823
     
824 824
     // Break newlines apart and remove empty lines/trim commas and white space.
825
-	$formatted_address = array_filter( array_map( 'wpinv_trim_formatted_address_line', explode( "\n", $formatted_address ) ) );
825
+	$formatted_address = array_filter(array_map('wpinv_trim_formatted_address_line', explode("\n", $formatted_address)));
826 826
 
827 827
     // Add html breaks.
828
-	$formatted_address = implode( $separator, $formatted_address );
828
+	$formatted_address = implode($separator, $formatted_address);
829 829
 
830 830
 	// We're done!
831 831
 	return $formatted_address;
@@ -837,119 +837,119 @@  discard block
 block discarded – undo
837 837
  * 
838 838
  * @param WPInv_Invoice $invoice
839 839
  */
840
-function wpinv_display_to_address( $invoice = 0 ) {
841
-    if ( ! empty( $invoice ) ) {
842
-        wpinv_get_template( 'invoice/billing-address.php', compact( 'invoice' ) );
840
+function wpinv_display_to_address($invoice = 0) {
841
+    if (!empty($invoice)) {
842
+        wpinv_get_template('invoice/billing-address.php', compact('invoice'));
843 843
     }
844 844
 }
845
-add_action( 'getpaid_invoice_details_left', 'wpinv_display_to_address', 40 );
845
+add_action('getpaid_invoice_details_left', 'wpinv_display_to_address', 40);
846 846
 
847 847
 
848 848
 /**
849 849
  * Displays invoice line items.
850 850
  */
851
-function wpinv_display_line_items( $invoice_id = 0 ) {
851
+function wpinv_display_line_items($invoice_id = 0) {
852 852
 
853 853
     // Prepare the invoice.
854
-    $invoice = new WPInv_Invoice( $invoice_id );
854
+    $invoice = new WPInv_Invoice($invoice_id);
855 855
 
856 856
     // Abort if there is no invoice.
857
-    if ( 0 == $invoice->get_id() ) {
857
+    if (0 == $invoice->get_id()) {
858 858
         return;
859 859
     }
860 860
 
861 861
     // Line item columns.
862
-    $columns = getpaid_invoice_item_columns( $invoice );
863
-    $columns = apply_filters( 'getpaid_invoice_line_items_table_columns', $columns, $invoice );
862
+    $columns = getpaid_invoice_item_columns($invoice);
863
+    $columns = apply_filters('getpaid_invoice_line_items_table_columns', $columns, $invoice);
864 864
 
865
-    wpinv_get_template( 'invoice/line-items.php', compact( 'invoice', 'columns' ) );
865
+    wpinv_get_template('invoice/line-items.php', compact('invoice', 'columns'));
866 866
 }
867
-add_action( 'getpaid_invoice_line_items', 'wpinv_display_line_items', 10 );
867
+add_action('getpaid_invoice_line_items', 'wpinv_display_line_items', 10);
868 868
 
869 869
 /**
870 870
  * Displays invoice subscriptions.
871 871
  * 
872 872
  * @param WPInv_Invoice $invoice
873 873
  */
874
-function getpaid_display_invoice_subscriptions( $invoice ) {
874
+function getpaid_display_invoice_subscriptions($invoice) {
875 875
 
876 876
     // Subscriptions.
877
-	$subscriptions = getpaid_get_invoice_subscriptions( $invoice );
877
+	$subscriptions = getpaid_get_invoice_subscriptions($invoice);
878 878
 
879
-    if ( empty( $subscriptions ) || ! $invoice->is_recurring() ) {
879
+    if (empty($subscriptions) || !$invoice->is_recurring()) {
880 880
         return;
881 881
     }
882 882
 
883
-    $main_subscription = getpaid_get_invoice_subscription( $invoice );
883
+    $main_subscription = getpaid_get_invoice_subscription($invoice);
884 884
 
885 885
     // Display related subscriptions.
886
-    if ( is_array( $subscriptions ) ) {
887
-        printf( '<h2 class="mt-5 mb-1 h4">%s</h2>', esc_html__( 'Related Subscriptions', 'invoicing' ) );
888
-        getpaid_admin_subscription_related_subscriptions_metabox( $main_subscription, false );
886
+    if (is_array($subscriptions)) {
887
+        printf('<h2 class="mt-5 mb-1 h4">%s</h2>', esc_html__('Related Subscriptions', 'invoicing'));
888
+        getpaid_admin_subscription_related_subscriptions_metabox($main_subscription, false);
889 889
     }
890 890
 
891
-    if ( $main_subscription->get_total_payments() > 1 ) {
892
-        printf( '<h2 class="mt-5 mb-1 h4">%s</h2>', esc_html__( 'Related Invoices', 'invoicing' ) );
893
-        getpaid_admin_subscription_invoice_details_metabox( $main_subscription, false );
891
+    if ($main_subscription->get_total_payments() > 1) {
892
+        printf('<h2 class="mt-5 mb-1 h4">%s</h2>', esc_html__('Related Invoices', 'invoicing'));
893
+        getpaid_admin_subscription_invoice_details_metabox($main_subscription, false);
894 894
     }
895 895
 
896 896
 }
897
-add_action( 'getpaid_invoice_line_items', 'getpaid_display_invoice_subscriptions', 55 );
898
-add_action( 'wpinv_receipt_end', 'getpaid_display_invoice_subscriptions', 11 );
897
+add_action('getpaid_invoice_line_items', 'getpaid_display_invoice_subscriptions', 55);
898
+add_action('wpinv_receipt_end', 'getpaid_display_invoice_subscriptions', 11);
899 899
 
900 900
 /**
901 901
  * Displays invoice notices on invoices.
902 902
  */
903 903
 function wpinv_display_invoice_notice() {
904 904
 
905
-    $label  = wpinv_get_option( 'vat_invoice_notice_label' );
906
-    $notice = wpinv_get_option( 'vat_invoice_notice' );
905
+    $label  = wpinv_get_option('vat_invoice_notice_label');
906
+    $notice = wpinv_get_option('vat_invoice_notice');
907 907
 
908
-    if ( empty( $label ) && empty( $notice ) ) {
908
+    if (empty($label) && empty($notice)) {
909 909
         return;
910 910
     }
911 911
 
912 912
     echo '<div class="mt-4 mb-4 wpinv-vat-notice">';
913 913
 
914
-    if ( ! empty( $label ) ) {
915
-        $label = esc_html( $label );
914
+    if (!empty($label)) {
915
+        $label = esc_html($label);
916 916
         echo "<h5>$label</h5>";
917 917
     }
918 918
 
919
-    if ( ! empty( $notice ) ) {
920
-        echo '<small class="form-text text-muted">' . wp_kses_post( wpautop( wptexturize( $notice ) ) ) . '</small>';
919
+    if (!empty($notice)) {
920
+        echo '<small class="form-text text-muted">' . wp_kses_post(wpautop(wptexturize($notice))) . '</small>';
921 921
     }
922 922
 
923 923
     echo '</div>';
924 924
 }
925
-add_action( 'getpaid_invoice_line_items', 'wpinv_display_invoice_notice', 100 );
925
+add_action('getpaid_invoice_line_items', 'wpinv_display_invoice_notice', 100);
926 926
 
927 927
 /**
928 928
  * @param WPInv_Invoice $invoice
929 929
  */
930
-function wpinv_display_invoice_notes( $invoice ) {
930
+function wpinv_display_invoice_notes($invoice) {
931 931
 
932 932
     // Retrieve the notes.
933
-    $notes = wpinv_get_invoice_notes( $invoice->get_id(), 'customer' );
933
+    $notes = wpinv_get_invoice_notes($invoice->get_id(), 'customer');
934 934
 
935 935
     // Abort if we have non.
936
-    if ( empty( $notes ) ) {
936
+    if (empty($notes)) {
937 937
         return;
938 938
     }
939 939
 
940 940
     // Echo the note.
941 941
     echo '<div class="getpaid-invoice-notes-wrapper position-relative my-4">';
942
-    echo '<h2 class="getpaid-invoice-notes-title mb-1 p-0 h4">' . __( 'Notes', 'invoicing' ) .'</h2>';
942
+    echo '<h2 class="getpaid-invoice-notes-title mb-1 p-0 h4">' . __('Notes', 'invoicing') . '</h2>';
943 943
     echo '<ul class="getpaid-invoice-notes text-break overflow-auto list-unstyled p-0 m-0">';
944 944
 
945
-    foreach( $notes as $note ) {
946
-        wpinv_get_invoice_note_line_item( $note );
945
+    foreach ($notes as $note) {
946
+        wpinv_get_invoice_note_line_item($note);
947 947
     }
948 948
 
949 949
     echo '</ul>';
950 950
     echo '</div>';
951 951
 }
952
-add_action( 'getpaid_invoice_line_items', 'wpinv_display_invoice_notes', 60 );
952
+add_action('getpaid_invoice_line_items', 'wpinv_display_invoice_notes', 60);
953 953
 
954 954
 /**
955 955
  * Loads scripts on our invoice templates.
@@ -957,32 +957,32 @@  discard block
 block discarded – undo
957 957
 function wpinv_display_style() {
958 958
 
959 959
     // Make sure that all scripts have been loaded.
960
-    if ( ! did_action( 'wp_enqueue_scripts' ) ) {
961
-        do_action( 'wp_enqueue_scripts' );
960
+    if (!did_action('wp_enqueue_scripts')) {
961
+        do_action('wp_enqueue_scripts');
962 962
     }
963 963
 
964 964
     // Register the invoices style.
965
-    wp_register_style( 'wpinv-single-style', WPINV_PLUGIN_URL . 'assets/css/invoice.css', array(), filemtime( WPINV_PLUGIN_DIR . 'assets/css/invoice.css' ) );
965
+    wp_register_style('wpinv-single-style', WPINV_PLUGIN_URL . 'assets/css/invoice.css', array(), filemtime(WPINV_PLUGIN_DIR . 'assets/css/invoice.css'));
966 966
 
967 967
     // Load required styles
968
-    wp_print_styles( 'wpinv-single-style' );
969
-    wp_print_styles( 'ayecode-ui' );
968
+    wp_print_styles('wpinv-single-style');
969
+    wp_print_styles('ayecode-ui');
970 970
 
971 971
     // Maybe load custom css.
972
-    $custom_css = wpinv_get_option( 'template_custom_css' );
972
+    $custom_css = wpinv_get_option('template_custom_css');
973 973
 
974
-    if ( isset( $custom_css ) && ! empty( $custom_css ) ) {
975
-        $custom_css     = wp_kses( $custom_css, array( '\'', '\"' ) );
976
-        $custom_css     = str_replace( '&gt;', '>', $custom_css );
974
+    if (isset($custom_css) && !empty($custom_css)) {
975
+        $custom_css     = wp_kses($custom_css, array('\'', '\"'));
976
+        $custom_css     = str_replace('&gt;', '>', $custom_css);
977 977
         echo '<style type="text/css">';
978
-        echo wp_kses_post( $custom_css );
978
+        echo wp_kses_post($custom_css);
979 979
         echo '</style>';
980 980
     }
981 981
 
982 982
     wp_site_icon();
983 983
 }
984
-add_action( 'wpinv_invoice_print_head', 'wpinv_display_style' );
985
-add_action( 'wpinv_invalid_invoice_head', 'wpinv_display_style' );
984
+add_action('wpinv_invoice_print_head', 'wpinv_display_style');
985
+add_action('wpinv_invalid_invoice_head', 'wpinv_display_style');
986 986
 
987 987
 
988 988
 /**
@@ -994,41 +994,41 @@  discard block
 block discarded – undo
994 994
     // Retrieve the current invoice.
995 995
     $invoice_id = getpaid_get_current_invoice_id();
996 996
 
997
-    if ( empty( $invoice_id ) ) {
997
+    if (empty($invoice_id)) {
998 998
 
999 999
         return aui()->alert(
1000 1000
             array(
1001 1001
                 'type'    => 'warning',
1002
-                'content' => __( 'Invalid invoice', 'invoicing' ),
1002
+                'content' => __('Invalid invoice', 'invoicing'),
1003 1003
             )
1004 1004
         );
1005 1005
 
1006 1006
     }
1007 1007
 
1008 1008
     // Can the user view this invoice?
1009
-    if ( ! wpinv_user_can_view_invoice( $invoice_id ) ) {
1009
+    if (!wpinv_user_can_view_invoice($invoice_id)) {
1010 1010
 
1011 1011
         return aui()->alert(
1012 1012
             array(
1013 1013
                 'type'    => 'warning',
1014
-                'content' => __( 'You are not allowed to view this invoice', 'invoicing' ),
1014
+                'content' => __('You are not allowed to view this invoice', 'invoicing'),
1015 1015
             )
1016 1016
         );
1017 1017
 
1018 1018
     }
1019 1019
 
1020 1020
     // Ensure that it is not yet paid for.
1021
-    $invoice = new WPInv_Invoice( $invoice_id );
1021
+    $invoice = new WPInv_Invoice($invoice_id);
1022 1022
 
1023 1023
     // Maybe mark it as viewed.
1024
-    getpaid_maybe_mark_invoice_as_viewed( $invoice );
1024
+    getpaid_maybe_mark_invoice_as_viewed($invoice);
1025 1025
 
1026
-    if ( $invoice->is_paid() ) {
1026
+    if ($invoice->is_paid()) {
1027 1027
 
1028 1028
         return aui()->alert(
1029 1029
             array(
1030 1030
                 'type'    => 'success',
1031
-                'content' => __( 'This invoice has already been paid.', 'invoicing' ),
1031
+                'content' => __('This invoice has already been paid.', 'invoicing'),
1032 1032
             )
1033 1033
         );
1034 1034
 
@@ -1038,15 +1038,15 @@  discard block
 block discarded – undo
1038 1038
     $wpi_checkout_id = $invoice_id;
1039 1039
 
1040 1040
     // Retrieve appropriate payment form.
1041
-    $payment_form = new GetPaid_Payment_Form( $invoice->get_meta( 'force_payment_form' ) );
1042
-    $payment_form = $payment_form->exists() ? $payment_form : new GetPaid_Payment_Form( wpinv_get_default_payment_form() );
1041
+    $payment_form = new GetPaid_Payment_Form($invoice->get_meta('force_payment_form'));
1042
+    $payment_form = $payment_form->exists() ? $payment_form : new GetPaid_Payment_Form(wpinv_get_default_payment_form());
1043 1043
 
1044
-    if ( ! $payment_form->exists() ) {
1044
+    if (!$payment_form->exists()) {
1045 1045
 
1046 1046
         return aui()->alert(
1047 1047
             array(
1048 1048
                 'type'    => 'warning',
1049
-                'content' => __( 'Error loading the payment form', 'invoicing' ),
1049
+                'content' => __('Error loading the payment form', 'invoicing'),
1050 1050
             )
1051 1051
         );
1052 1052
 
@@ -1055,29 +1055,29 @@  discard block
 block discarded – undo
1055 1055
     // Set the invoice.
1056 1056
     $payment_form->invoice = $invoice;
1057 1057
 
1058
-    if ( ! $payment_form->is_default() ) {
1058
+    if (!$payment_form->is_default()) {
1059 1059
 
1060 1060
         $items    = array();
1061 1061
         $item_ids = array();
1062 1062
 
1063
-        foreach ( $invoice->get_items() as $item ) {
1064
-            if ( ! in_array( $item->get_id(), $item_ids ) ) {
1063
+        foreach ($invoice->get_items() as $item) {
1064
+            if (!in_array($item->get_id(), $item_ids)) {
1065 1065
                 $item_ids[] = $item->get_id();
1066 1066
                 $items[]    = $item;
1067 1067
             }
1068 1068
         }
1069 1069
 
1070
-        foreach ( $payment_form->get_items() as $item ) {
1071
-            if ( ! in_array( $item->get_id(), $item_ids ) ) {
1070
+        foreach ($payment_form->get_items() as $item) {
1071
+            if (!in_array($item->get_id(), $item_ids)) {
1072 1072
                 $item_ids[] = $item->get_id();
1073 1073
                 $items[]    = $item;
1074 1074
             }
1075 1075
         }
1076 1076
 
1077
-        $payment_form->set_items( $items );
1077
+        $payment_form->set_items($items);
1078 1078
 
1079 1079
     } else {
1080
-        $payment_form->set_items( $invoice->get_items() );
1080
+        $payment_form->set_items($invoice->get_items());
1081 1081
     }
1082 1082
 
1083 1083
     // Generate the html.
@@ -1086,7 +1086,7 @@  discard block
 block discarded – undo
1086 1086
 }
1087 1087
 
1088 1088
 function wpinv_empty_cart_message() {
1089
-	return apply_filters( 'wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __( 'Your cart is empty.', 'invoicing' ) . '</span>' );
1089
+	return apply_filters('wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __('Your cart is empty.', 'invoicing') . '</span>');
1090 1090
 }
1091 1091
 
1092 1092
 /**
@@ -1103,76 +1103,76 @@  discard block
 block discarded – undo
1103 1103
         )
1104 1104
     );
1105 1105
 }
1106
-add_action( 'wpinv_cart_empty', 'wpinv_empty_checkout_cart' );
1106
+add_action('wpinv_cart_empty', 'wpinv_empty_checkout_cart');
1107 1107
 
1108 1108
 /**
1109 1109
  * Filters the receipt page.
1110 1110
  */
1111
-function wpinv_filter_success_page_content( $content ) {
1111
+function wpinv_filter_success_page_content($content) {
1112 1112
 
1113 1113
     // Maybe abort early.
1114
-    if ( is_admin() || ! is_singular() || ! in_the_loop() || ! is_main_query() || is_preview() ) {
1114
+    if (is_admin() || !is_singular() || !in_the_loop() || !is_main_query() || is_preview()) {
1115 1115
         return $content;
1116 1116
     }
1117 1117
 
1118 1118
     // Ensure this is our page.
1119
-    if ( isset( $_GET['payment-confirm'] ) && wpinv_is_success_page() ) {
1119
+    if (isset($_GET['payment-confirm']) && wpinv_is_success_page()) {
1120 1120
 
1121
-        $gateway = sanitize_text_field( $_GET['payment-confirm'] );
1122
-        return apply_filters( "wpinv_payment_confirm_$gateway", $content );
1121
+        $gateway = sanitize_text_field($_GET['payment-confirm']);
1122
+        return apply_filters("wpinv_payment_confirm_$gateway", $content);
1123 1123
 
1124 1124
     }
1125 1125
 
1126 1126
     return $content;
1127 1127
 }
1128
-add_filter( 'the_content', 'wpinv_filter_success_page_content', 99999 );
1128
+add_filter('the_content', 'wpinv_filter_success_page_content', 99999);
1129 1129
 
1130
-function wpinv_invoice_link( $invoice_id ) {
1131
-    $invoice = wpinv_get_invoice( $invoice_id );
1130
+function wpinv_invoice_link($invoice_id) {
1131
+    $invoice = wpinv_get_invoice($invoice_id);
1132 1132
 
1133
-    if ( empty( $invoice ) ) {
1133
+    if (empty($invoice)) {
1134 1134
         return NULL;
1135 1135
     }
1136 1136
 
1137
-    $invoice_link = '<a href="' . esc_url( $invoice->get_view_url() ) . '">' . $invoice->get_number() . '</a>';
1137
+    $invoice_link = '<a href="' . esc_url($invoice->get_view_url()) . '">' . $invoice->get_number() . '</a>';
1138 1138
 
1139
-    return apply_filters( 'wpinv_get_invoice_link', $invoice_link, $invoice );
1139
+    return apply_filters('wpinv_get_invoice_link', $invoice_link, $invoice);
1140 1140
 }
1141 1141
 
1142
-function wpinv_get_invoice_note_line_item( $note, $echo = true ) {
1143
-    if ( empty( $note ) ) {
1142
+function wpinv_get_invoice_note_line_item($note, $echo = true) {
1143
+    if (empty($note)) {
1144 1144
         return NULL;
1145 1145
     }
1146 1146
 
1147
-    if ( is_int( $note ) ) {
1148
-        $note = get_comment( $note );
1147
+    if (is_int($note)) {
1148
+        $note = get_comment($note);
1149 1149
     }
1150 1150
 
1151
-    if ( !( is_object( $note ) && is_a( $note, 'WP_Comment' ) ) ) {
1151
+    if (!(is_object($note) && is_a($note, 'WP_Comment'))) {
1152 1152
         return NULL;
1153 1153
     }
1154 1154
 
1155
-    $note_classes   = array( 'note' );
1156
-    $note_classes[] = get_comment_meta( $note->comment_ID, '_wpi_customer_note', true ) ? 'customer-note' : '';
1155
+    $note_classes   = array('note');
1156
+    $note_classes[] = get_comment_meta($note->comment_ID, '_wpi_customer_note', true) ? 'customer-note' : '';
1157 1157
     $note_classes[] = $note->comment_author === 'System' ? 'system-note' : '';
1158
-    $note_classes   = apply_filters( 'wpinv_invoice_note_class', array_filter( $note_classes ), $note );
1159
-    $note_classes   = !empty( $note_classes ) ? implode( ' ', $note_classes ) : '';
1158
+    $note_classes   = apply_filters('wpinv_invoice_note_class', array_filter($note_classes), $note);
1159
+    $note_classes   = !empty($note_classes) ? implode(' ', $note_classes) : '';
1160 1160
 
1161 1161
     ob_start();
1162 1162
     ?>
1163
-    <li rel="<?php echo absint( $note->comment_ID ) ; ?>" class="<?php echo esc_attr( $note_classes ); ?> mb-2">
1163
+    <li rel="<?php echo absint($note->comment_ID); ?>" class="<?php echo esc_attr($note_classes); ?> mb-2">
1164 1164
         <div class="note_content">
1165 1165
 
1166
-            <?php echo wptexturize( wp_kses_post( $note->comment_content ) ); ?>
1166
+            <?php echo wptexturize(wp_kses_post($note->comment_content)); ?>
1167 1167
 
1168
-            <?php if ( ! is_admin() ) : ?>
1168
+            <?php if (!is_admin()) : ?>
1169 1169
                 <em class="small form-text text-muted mt-0">
1170 1170
                     <?php
1171 1171
                         printf(
1172
-                            __( '%1$s - %2$s at %3$s', 'invoicing' ),
1172
+                            __('%1$s - %2$s at %3$s', 'invoicing'),
1173 1173
                             $note->comment_author,
1174
-                            getpaid_format_date_value( $note->comment_date ),
1175
-                            date_i18n( get_option( 'time_format' ), strtotime( $note->comment_date ) )
1174
+                            getpaid_format_date_value($note->comment_date),
1175
+                            date_i18n(get_option('time_format'), strtotime($note->comment_date))
1176 1176
                         );
1177 1177
                     ?>
1178 1178
                 </em>
@@ -1180,21 +1180,21 @@  discard block
 block discarded – undo
1180 1180
 
1181 1181
         </div>
1182 1182
 
1183
-        <?php if ( is_admin() ) : ?>
1183
+        <?php if (is_admin()) : ?>
1184 1184
 
1185 1185
             <p class="meta px-4 py-2">
1186
-                <abbr class="exact-date" title="<?php echo esc_attr( $note->comment_date ); ?>">
1186
+                <abbr class="exact-date" title="<?php echo esc_attr($note->comment_date); ?>">
1187 1187
                     <?php
1188 1188
                         printf(
1189
-                            __( '%1$s - %2$s at %3$s', 'invoicing' ),
1189
+                            __('%1$s - %2$s at %3$s', 'invoicing'),
1190 1190
                             $note->comment_author,
1191
-                            getpaid_format_date_value( $note->comment_date ),
1192
-                            date_i18n( get_option( 'time_format' ), strtotime( $note->comment_date ) )
1191
+                            getpaid_format_date_value($note->comment_date),
1192
+                            date_i18n(get_option('time_format'), strtotime($note->comment_date))
1193 1193
                         );
1194 1194
                     ?>
1195 1195
                 </abbr>&nbsp;&nbsp;
1196
-                <?php if ( $note->comment_author !== 'System' && wpinv_current_user_can_manage_invoicing() ) { ?>
1197
-                    <a href="#" class="delete_note"><?php _e( 'Delete note', 'invoicing' ); ?></a>
1196
+                <?php if ($note->comment_author !== 'System' && wpinv_current_user_can_manage_invoicing()) { ?>
1197
+                    <a href="#" class="delete_note"><?php _e('Delete note', 'invoicing'); ?></a>
1198 1198
                 <?php } ?>
1199 1199
             </p>
1200 1200
 
@@ -1203,10 +1203,10 @@  discard block
 block discarded – undo
1203 1203
     </li>
1204 1204
     <?php
1205 1205
     $note_content = ob_get_clean();
1206
-    $note_content = apply_filters( 'wpinv_get_invoice_note_line_item', $note_content, $note, $echo );
1206
+    $note_content = apply_filters('wpinv_get_invoice_note_line_item', $note_content, $note, $echo);
1207 1207
 
1208
-    if ( $echo ) {
1209
-        echo wp_kses_post( $note_content );
1208
+    if ($echo) {
1209
+        echo wp_kses_post($note_content);
1210 1210
     } else {
1211 1211
         return $note_content;
1212 1212
     }
@@ -1219,21 +1219,21 @@  discard block
 block discarded – undo
1219 1219
  * @return string
1220 1220
  */
1221 1221
 function wpinv_get_policy_text() {
1222
-    $privacy_page_id = get_option( 'wp_page_for_privacy_policy', 0 );
1222
+    $privacy_page_id = get_option('wp_page_for_privacy_policy', 0);
1223 1223
 
1224
-    $text = wpinv_get_option('invoicing_privacy_checkout_message', sprintf( __( 'Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing' ), '[wpinv_privacy_policy]' ));
1224
+    $text = wpinv_get_option('invoicing_privacy_checkout_message', sprintf(__('Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing'), '[wpinv_privacy_policy]'));
1225 1225
 
1226
-    if(!$privacy_page_id){
1227
-        $privacy_page_id = wpinv_get_option( 'privacy_page', 0 );
1226
+    if (!$privacy_page_id) {
1227
+        $privacy_page_id = wpinv_get_option('privacy_page', 0);
1228 1228
     }
1229 1229
 
1230
-    $privacy_link    = $privacy_page_id ? '<a href="' . esc_url( get_permalink( $privacy_page_id ) ) . '" class="wpinv-privacy-policy-link" target="_blank">' . __( 'privacy policy', 'invoicing' ) . '</a>' : __( 'privacy policy', 'invoicing' );
1230
+    $privacy_link = $privacy_page_id ? '<a href="' . esc_url(get_permalink($privacy_page_id)) . '" class="wpinv-privacy-policy-link" target="_blank">' . __('privacy policy', 'invoicing') . '</a>' : __('privacy policy', 'invoicing');
1231 1231
 
1232 1232
     $find_replace = array(
1233 1233
         '[wpinv_privacy_policy]' => $privacy_link,
1234 1234
     );
1235 1235
 
1236
-    $privacy_text = str_replace( array_keys( $find_replace ), array_values( $find_replace ), $text );
1236
+    $privacy_text = str_replace(array_keys($find_replace), array_values($find_replace), $text);
1237 1237
 
1238 1238
     return wp_kses_post(wpautop($privacy_text));
1239 1239
 }
@@ -1241,21 +1241,21 @@  discard block
 block discarded – undo
1241 1241
 function wpinv_oxygen_fix_conflict() {
1242 1242
     global $ct_ignore_post_types;
1243 1243
 
1244
-    if ( ! is_array( $ct_ignore_post_types ) ) {
1244
+    if (!is_array($ct_ignore_post_types)) {
1245 1245
         $ct_ignore_post_types = array();
1246 1246
     }
1247 1247
 
1248
-    $post_types = array( 'wpi_discount', 'wpi_invoice', 'wpi_item', 'wpi_payment_form' );
1248
+    $post_types = array('wpi_discount', 'wpi_invoice', 'wpi_item', 'wpi_payment_form');
1249 1249
 
1250
-    foreach ( $post_types as $post_type ) {
1250
+    foreach ($post_types as $post_type) {
1251 1251
         $ct_ignore_post_types[] = $post_type;
1252 1252
 
1253 1253
         // Ignore post type
1254
-        add_filter( 'pre_option_oxygen_vsb_ignore_post_type_' . $post_type, '__return_true', 999 );
1254
+        add_filter('pre_option_oxygen_vsb_ignore_post_type_' . $post_type, '__return_true', 999);
1255 1255
     }
1256 1256
 
1257
-    remove_filter( 'template_include', 'wpinv_template', 10, 1 );
1258
-    add_filter( 'template_include', 'wpinv_template', 999, 1 );
1257
+    remove_filter('template_include', 'wpinv_template', 10, 1);
1258
+    add_filter('template_include', 'wpinv_template', 999, 1);
1259 1259
 }
1260 1260
 
1261 1261
 /**
@@ -1263,10 +1263,10 @@  discard block
 block discarded – undo
1263 1263
  * 
1264 1264
  * @param GetPaid_Payment_Form $form
1265 1265
  */
1266
-function getpaid_display_payment_form( $form ) {
1266
+function getpaid_display_payment_form($form) {
1267 1267
 
1268
-    if ( is_numeric( $form ) ) {
1269
-        $form = new GetPaid_Payment_Form( $form );
1268
+    if (is_numeric($form)) {
1269
+        $form = new GetPaid_Payment_Form($form);
1270 1270
     }
1271 1271
 
1272 1272
     $form->display();
@@ -1276,58 +1276,58 @@  discard block
 block discarded – undo
1276 1276
 /**
1277 1277
  * Helper function to display a item payment form on the frontend.
1278 1278
  */
1279
-function getpaid_display_item_payment_form( $items ) {
1279
+function getpaid_display_item_payment_form($items) {
1280 1280
 
1281
-    $form = new GetPaid_Payment_Form( wpinv_get_default_payment_form() );
1282
-    $form->set_items( $items );
1281
+    $form = new GetPaid_Payment_Form(wpinv_get_default_payment_form());
1282
+    $form->set_items($items);
1283 1283
 
1284
-    if ( 0 == count( $form->get_items() ) ) {
1284
+    if (0 == count($form->get_items())) {
1285 1285
         echo aui()->alert(
1286 1286
 			array(
1287 1287
 				'type'    => 'warning',
1288
-				'content' => __( 'No published items found', 'invoicing' ),
1288
+				'content' => __('No published items found', 'invoicing'),
1289 1289
 			)
1290 1290
         );
1291 1291
         return;
1292 1292
     }
1293 1293
 
1294
-    $extra_items     = esc_attr( getpaid_convert_items_to_string( $items ) );
1295
-    $extra_items_key = md5( NONCE_KEY . AUTH_KEY . $extra_items );
1294
+    $extra_items     = esc_attr(getpaid_convert_items_to_string($items));
1295
+    $extra_items_key = md5(NONCE_KEY . AUTH_KEY . $extra_items);
1296 1296
     $extra_items     = "<input type='hidden' name='getpaid-form-items' value='$extra_items' />";
1297 1297
     $extra_items    .= "<input type='hidden' name='getpaid-form-items-key' value='$extra_items_key' />";
1298 1298
 
1299
-    $form->display( $extra_items );
1299
+    $form->display($extra_items);
1300 1300
 }
1301 1301
 
1302 1302
 /**
1303 1303
  * Helper function to display an invoice payment form on the frontend.
1304 1304
  */
1305
-function getpaid_display_invoice_payment_form( $invoice_id ) {
1305
+function getpaid_display_invoice_payment_form($invoice_id) {
1306 1306
 
1307
-    $invoice = wpinv_get_invoice( $invoice_id );
1307
+    $invoice = wpinv_get_invoice($invoice_id);
1308 1308
 
1309
-    if ( empty( $invoice ) ) {
1309
+    if (empty($invoice)) {
1310 1310
 		echo aui()->alert(
1311 1311
 			array(
1312 1312
 				'type'    => 'warning',
1313
-				'content' => __( 'Invoice not found', 'invoicing' ),
1313
+				'content' => __('Invoice not found', 'invoicing'),
1314 1314
 			)
1315 1315
         );
1316 1316
         return;
1317 1317
     }
1318 1318
 
1319
-    if ( $invoice->is_paid() ) {
1319
+    if ($invoice->is_paid()) {
1320 1320
 		echo aui()->alert(
1321 1321
 			array(
1322 1322
 				'type'    => 'warning',
1323
-				'content' => __( 'Invoice has already been paid', 'invoicing' ),
1323
+				'content' => __('Invoice has already been paid', 'invoicing'),
1324 1324
 			)
1325 1325
         );
1326 1326
         return;
1327 1327
     }
1328 1328
 
1329
-    $form = new GetPaid_Payment_Form( wpinv_get_default_payment_form() );
1330
-    $form->set_items( $invoice->get_items() );
1329
+    $form = new GetPaid_Payment_Form(wpinv_get_default_payment_form());
1330
+    $form->set_items($invoice->get_items());
1331 1331
 
1332 1332
     $form->display();
1333 1333
 }
@@ -1335,23 +1335,23 @@  discard block
 block discarded – undo
1335 1335
 /**
1336 1336
  * Helper function to convert item string to array.
1337 1337
  */
1338
-function getpaid_convert_items_to_array( $items ) {
1339
-    $items    = array_filter( array_map( 'trim', explode( ',', $items ) ) );
1338
+function getpaid_convert_items_to_array($items) {
1339
+    $items    = array_filter(array_map('trim', explode(',', $items)));
1340 1340
     $prepared = array();
1341 1341
 
1342
-    foreach ( $items as $item ) {
1343
-        $data = array_map( 'trim', explode( '|', $item ) );
1342
+    foreach ($items as $item) {
1343
+        $data = array_map('trim', explode('|', $item));
1344 1344
 
1345
-        if ( empty( $data[0] ) || ! is_numeric( $data[0] ) ) {
1345
+        if (empty($data[0]) || !is_numeric($data[0])) {
1346 1346
             continue;
1347 1347
         }
1348 1348
 
1349 1349
         $quantity = 1;
1350
-        if ( isset( $data[1] ) && is_numeric( $data[1] ) ) {
1350
+        if (isset($data[1]) && is_numeric($data[1])) {
1351 1351
             $quantity = (float) $data[1];
1352 1352
         }
1353 1353
 
1354
-        $prepared[ $data[0] ] = $quantity;
1354
+        $prepared[$data[0]] = $quantity;
1355 1355
 
1356 1356
     }
1357 1357
 
@@ -1361,13 +1361,13 @@  discard block
 block discarded – undo
1361 1361
 /**
1362 1362
  * Helper function to convert item array to string.
1363 1363
  */
1364
-function getpaid_convert_items_to_string( $items ) {
1364
+function getpaid_convert_items_to_string($items) {
1365 1365
     $prepared = array();
1366 1366
 
1367
-    foreach ( $items as $item => $quantity ) {
1367
+    foreach ($items as $item => $quantity) {
1368 1368
         $prepared[] = "$item|$quantity";
1369 1369
     }
1370
-    return implode( ',', $prepared );
1370
+    return implode(',', $prepared);
1371 1371
 }
1372 1372
 
1373 1373
 /**
@@ -1375,21 +1375,21 @@  discard block
 block discarded – undo
1375 1375
  * 
1376 1376
  * Provide a label and one of $form, $items or $invoice.
1377 1377
  */
1378
-function getpaid_get_payment_button( $label, $form = null, $items = null, $invoice = null ) {
1379
-    $label = sanitize_text_field( $label );
1378
+function getpaid_get_payment_button($label, $form = null, $items = null, $invoice = null) {
1379
+    $label = sanitize_text_field($label);
1380 1380
 
1381
-    if ( ! empty( $form ) ) {
1382
-        $form  = esc_attr( $form );
1381
+    if (!empty($form)) {
1382
+        $form = esc_attr($form);
1383 1383
         return "<button class='btn btn-primary getpaid-payment-button' type='button' data-form='$form'>$label</button>"; 
1384 1384
     }
1385 1385
 	
1386
-	if ( ! empty( $items ) ) {
1387
-        $items  = esc_attr( $items );
1386
+	if (!empty($items)) {
1387
+        $items = esc_attr($items);
1388 1388
         return "<button class='btn btn-primary getpaid-payment-button' type='button' data-item='$items'>$label</button>"; 
1389 1389
     }
1390 1390
     
1391
-    if ( ! empty( $invoice ) ) {
1392
-        $invoice  = esc_attr( $invoice );
1391
+    if (!empty($invoice)) {
1392
+        $invoice = esc_attr($invoice);
1393 1393
         return "<button class='btn btn-primary getpaid-payment-button' type='button' data-invoice='$invoice'>$label</button>"; 
1394 1394
     }
1395 1395
 
@@ -1400,18 +1400,18 @@  discard block
 block discarded – undo
1400 1400
  *
1401 1401
  * @param WPInv_Invoice $invoice
1402 1402
  */
1403
-function getpaid_the_invoice_description( $invoice ) {
1403
+function getpaid_the_invoice_description($invoice) {
1404 1404
     $description = $invoice->get_description();
1405 1405
 
1406
-    if ( empty( $description ) ) {
1406
+    if (empty($description)) {
1407 1407
         return;
1408 1408
     }
1409 1409
 
1410
-    $description = wp_kses_post( wpautop( $description ) );
1410
+    $description = wp_kses_post(wpautop($description));
1411 1411
     echo "<small class='getpaid-invoice-description text-dark p-2 form-text' style='margin-bottom: 20px; border-left: 2px solid #2196F3;'><em>$description</em></small>";
1412 1412
 }
1413
-add_action( 'getpaid_invoice_line_items', 'getpaid_the_invoice_description', 100 );
1414
-add_action( 'wpinv_email_billing_details', 'getpaid_the_invoice_description', 100 );
1413
+add_action('getpaid_invoice_line_items', 'getpaid_the_invoice_description', 100);
1414
+add_action('wpinv_email_billing_details', 'getpaid_the_invoice_description', 100);
1415 1415
 
1416 1416
 /**
1417 1417
  * Render element on a form.
@@ -1419,60 +1419,60 @@  discard block
 block discarded – undo
1419 1419
  * @param array $element
1420 1420
  * @param GetPaid_Payment_Form $form
1421 1421
  */
1422
-function getpaid_payment_form_element( $element, $form ) {
1422
+function getpaid_payment_form_element($element, $form) {
1423 1423
 
1424 1424
     // Set up the args.
1425
-    $element_type    = trim( $element['type'] );
1425
+    $element_type    = trim($element['type']);
1426 1426
     $element['form'] = $form;
1427
-    extract( $element );
1427
+    extract($element);
1428 1428
 
1429 1429
     // Try to locate the appropriate template.
1430
-    $located = wpinv_locate_template( "payment-forms/elements/$element_type.php" );
1430
+    $located = wpinv_locate_template("payment-forms/elements/$element_type.php");
1431 1431
     
1432 1432
     // Abort if this is not our element.
1433
-    if ( empty( $located ) || ! file_exists( $located ) ) {
1433
+    if (empty($located) || !file_exists($located)) {
1434 1434
         return;
1435 1435
     }
1436 1436
 
1437 1437
     // Generate the class and id of the element.
1438
-    $wrapper_class = 'getpaid-payment-form-element-' . trim( esc_attr( $element_type ) );
1439
-    $id            = isset( $id ) ? $id : uniqid( 'gp' );
1438
+    $wrapper_class = 'getpaid-payment-form-element-' . trim(esc_attr($element_type));
1439
+    $id            = isset($id) ? $id : uniqid('gp');
1440 1440
 
1441 1441
     // Echo the opening wrapper.
1442 1442
     echo "<div class='getpaid-payment-form-element $wrapper_class'>";
1443 1443
 
1444 1444
     // Fires before displaying a given element type's content.
1445
-    do_action( "getpaid_before_payment_form_{$element_type}_element", $element, $form );
1445
+    do_action("getpaid_before_payment_form_{$element_type}_element", $element, $form);
1446 1446
 
1447 1447
     // Include the template for the element.
1448 1448
     include $located;
1449 1449
 
1450 1450
     // Fires after displaying a given element type's content.
1451
-    do_action( "getpaid_payment_form_{$element_type}_element", $element, $form );
1451
+    do_action("getpaid_payment_form_{$element_type}_element", $element, $form);
1452 1452
 
1453 1453
     // Echo the closing wrapper.
1454 1454
     echo '</div>';
1455 1455
 }
1456
-add_action( 'getpaid_payment_form_element', 'getpaid_payment_form_element', 10, 2 );
1456
+add_action('getpaid_payment_form_element', 'getpaid_payment_form_element', 10, 2);
1457 1457
 
1458 1458
 /**
1459 1459
  * Render an element's edit page.
1460 1460
  *
1461 1461
  * @param WP_Post $post
1462 1462
  */
1463
-function getpaid_payment_form_edit_element_template( $post ) {
1463
+function getpaid_payment_form_edit_element_template($post) {
1464 1464
 
1465 1465
     // Retrieve all elements.
1466
-    $all_elements = wp_list_pluck( wpinv_get_data( 'payment-form-elements' ), 'type' );
1466
+    $all_elements = wp_list_pluck(wpinv_get_data('payment-form-elements'), 'type');
1467 1467
 
1468
-    foreach ( $all_elements as $element ) {
1468
+    foreach ($all_elements as $element) {
1469 1469
 
1470 1470
         // Try to locate the appropriate template.
1471
-        $element = esc_attr( sanitize_key( $element ) );
1472
-        $located = wpinv_locate_template( "payment-forms-admin/edit/$element.php" );
1471
+        $element = esc_attr(sanitize_key($element));
1472
+        $located = wpinv_locate_template("payment-forms-admin/edit/$element.php");
1473 1473
 
1474 1474
         // Continue if this is not our element.
1475
-        if ( empty( $located ) || ! file_exists( $located ) ) {
1475
+        if (empty($located) || !file_exists($located)) {
1476 1476
             continue;
1477 1477
         }
1478 1478
 
@@ -1483,7 +1483,7 @@  discard block
 block discarded – undo
1483 1483
     }
1484 1484
 
1485 1485
 }
1486
-add_action( 'getpaid_payment_form_edit_element_template', 'getpaid_payment_form_edit_element_template' );
1486
+add_action('getpaid_payment_form_edit_element_template', 'getpaid_payment_form_edit_element_template');
1487 1487
 
1488 1488
 /**
1489 1489
  * Render an element's preview.
@@ -1492,16 +1492,16 @@  discard block
 block discarded – undo
1492 1492
 function getpaid_payment_form_render_element_preview_template() {
1493 1493
 
1494 1494
     // Retrieve all elements.
1495
-    $all_elements = wp_list_pluck( wpinv_get_data( 'payment-form-elements' ), 'type' );
1495
+    $all_elements = wp_list_pluck(wpinv_get_data('payment-form-elements'), 'type');
1496 1496
 
1497
-    foreach ( $all_elements as $element ) {
1497
+    foreach ($all_elements as $element) {
1498 1498
 
1499 1499
         // Try to locate the appropriate template.
1500
-        $element = sanitize_key( $element );
1501
-        $located = wpinv_locate_template( "payment-forms-admin/previews/$element.php" );
1500
+        $element = sanitize_key($element);
1501
+        $located = wpinv_locate_template("payment-forms-admin/previews/$element.php");
1502 1502
 
1503 1503
         // Continue if this is not our element.
1504
-        if ( empty( $located ) || ! file_exists( $located ) ) {
1504
+        if (empty($located) || !file_exists($located)) {
1505 1505
             continue;
1506 1506
         }
1507 1507
 
@@ -1512,7 +1512,7 @@  discard block
 block discarded – undo
1512 1512
     }
1513 1513
 
1514 1514
 }
1515
-add_action( 'wpinv_payment_form_render_element_template', 'getpaid_payment_form_render_element_preview_template' );
1515
+add_action('wpinv_payment_form_render_element_template', 'getpaid_payment_form_render_element_preview_template');
1516 1516
 
1517 1517
 /**
1518 1518
  * Shows a list of gateways that support recurring payments.
@@ -1520,17 +1520,17 @@  discard block
 block discarded – undo
1520 1520
 function wpinv_get_recurring_gateways_text() {
1521 1521
     $gateways = array();
1522 1522
 
1523
-    foreach ( wpinv_get_payment_gateways() as $key => $gateway ) {
1524
-        if ( wpinv_gateway_support_subscription( $key ) ) {
1525
-            $gateways[] = sanitize_text_field( $gateway['admin_label'] );
1523
+    foreach (wpinv_get_payment_gateways() as $key => $gateway) {
1524
+        if (wpinv_gateway_support_subscription($key)) {
1525
+            $gateways[] = sanitize_text_field($gateway['admin_label']);
1526 1526
         }
1527 1527
     }
1528 1528
 
1529
-    if ( empty( $gateways ) ) {
1530
-        return "<span class='form-text text-danger'>" . __( 'No active gateways support subscription payments.', 'invoicing' ) ."</span>";
1529
+    if (empty($gateways)) {
1530
+        return "<span class='form-text text-danger'>" . __('No active gateways support subscription payments.', 'invoicing') . "</span>";
1531 1531
     }
1532 1532
 
1533
-    return "<span class='form-text text-muted'>" . wp_sprintf( __( 'Subscription payments only supported by: %s', 'invoicing' ), implode( ', ', $gateways ) ) ."</span>";
1533
+    return "<span class='form-text text-muted'>" . wp_sprintf(__('Subscription payments only supported by: %s', 'invoicing'), implode(', ', $gateways)) . "</span>";
1534 1534
 
1535 1535
 }
1536 1536
 
@@ -1540,7 +1540,7 @@  discard block
 block discarded – undo
1540 1540
  * @return GetPaid_Template
1541 1541
  */
1542 1542
 function getpaid_template() {
1543
-    return getpaid()->get( 'template' );
1543
+    return getpaid()->get('template');
1544 1544
 }
1545 1545
 
1546 1546
 /**
@@ -1549,8 +1549,8 @@  discard block
 block discarded – undo
1549 1549
  * @param array args
1550 1550
  * @return string
1551 1551
  */
1552
-function getpaid_paginate_links( $args ) {
1553
-    return str_replace( 'page-link dots', 'page-link text-dark', aui()->pagination( $args ) );
1552
+function getpaid_paginate_links($args) {
1553
+    return str_replace('page-link dots', 'page-link text-dark', aui()->pagination($args));
1554 1554
 }
1555 1555
 
1556 1556
 /**
@@ -1560,21 +1560,21 @@  discard block
 block discarded – undo
1560 1560
  * @param string state
1561 1561
  * @return string
1562 1562
  */
1563
-function getpaid_get_states_select_markup( $country, $state, $placeholder, $label, $help_text, $required = false, $wrapper_class = 'col-12', $field_name = 'wpinv_state' ) {
1563
+function getpaid_get_states_select_markup($country, $state, $placeholder, $label, $help_text, $required = false, $wrapper_class = 'col-12', $field_name = 'wpinv_state') {
1564 1564
 
1565
-    $states = wpinv_get_country_states( $country );
1566
-    $uniqid = uniqid( '_' );
1565
+    $states = wpinv_get_country_states($country);
1566
+    $uniqid = uniqid('_');
1567 1567
 
1568
-    if ( ! empty( $states ) ) {
1568
+    if (!empty($states)) {
1569 1569
 
1570
-        return aui()->select( array(
1570
+        return aui()->select(array(
1571 1571
             'options'          => $states,
1572
-            'name'             => esc_attr( $field_name ),
1573
-            'id'               => sanitize_html_class( $field_name ) . $uniqid,
1574
-            'value'            => sanitize_text_field( $state ),
1572
+            'name'             => esc_attr($field_name),
1573
+            'id'               => sanitize_html_class($field_name) . $uniqid,
1574
+            'value'            => sanitize_text_field($state),
1575 1575
             'placeholder'      => $placeholder,
1576 1576
             'required'         => $required,
1577
-            'label'            => wp_kses_post( $label ),
1577
+            'label'            => wp_kses_post($label),
1578 1578
             'label_type'       => 'vertical',
1579 1579
             'help_text'        => $help_text,
1580 1580
             'class'            => 'getpaid-address-field wpinv_state',
@@ -1589,14 +1589,14 @@  discard block
 block discarded – undo
1589 1589
 
1590 1590
     return aui()->input(
1591 1591
         array(
1592
-            'name'        => esc_attr( $field_name ),
1593
-            'id'          => sanitize_html_class( $field_name ) . $uniqid,
1592
+            'name'        => esc_attr($field_name),
1593
+            'id'          => sanitize_html_class($field_name) . $uniqid,
1594 1594
             'placeholder' => $placeholder,
1595 1595
             'required'    => $required,
1596
-            'label'       => wp_kses_post( $label ),
1596
+            'label'       => wp_kses_post($label),
1597 1597
             'label_type'  => 'vertical',
1598 1598
             'help_text'   => $help_text,
1599
-            'value'       => sanitize_text_field( $state ),
1599
+            'value'       => sanitize_text_field($state),
1600 1600
             'class'       => 'getpaid-address-field wpinv_state',
1601 1601
             'wrap_class'  => "$wrapper_class getpaid-address-field-wrapper__state",
1602 1602
             'label_class' => 'getpaid-address-field-label getpaid-address-field-label__state',
@@ -1614,16 +1614,16 @@  discard block
 block discarded – undo
1614 1614
  * @param array $element
1615 1615
  * @return string
1616 1616
  */
1617
-function getpaid_get_form_element_grid_class( $element ) {
1617
+function getpaid_get_form_element_grid_class($element) {
1618 1618
 
1619 1619
     $class = "col-12";
1620
-    $width = empty( $element['grid_width'] ) ? 'full' : $element['grid_width'];
1620
+    $width = empty($element['grid_width']) ? 'full' : $element['grid_width'];
1621 1621
 
1622
-    if ( $width == 'half' ) {
1622
+    if ($width == 'half') {
1623 1623
         $class .= " col-md-6";
1624 1624
     }
1625 1625
 
1626
-    if ( $width == 'third' ) {
1626
+    if ($width == 'third') {
1627 1627
         $class .= " col-md-4";
1628 1628
     }
1629 1629
 
@@ -1638,15 +1638,15 @@  discard block
 block discarded – undo
1638 1638
  *
1639 1639
  * @return string
1640 1640
  */
1641
-function getpaid_embed_url( $payment_form = false, $items = false ) {
1641
+function getpaid_embed_url($payment_form = false, $items = false) {
1642 1642
 
1643 1643
     return add_query_arg(
1644 1644
         array(
1645 1645
             'getpaid_embed' => 1,
1646
-            'form'          => $payment_form ? absint( $payment_form ) : false,
1647
-            'item'          => $items ? urlencode( $items ) : false
1646
+            'form'          => $payment_form ? absint($payment_form) : false,
1647
+            'item'          => $items ? urlencode($items) : false
1648 1648
         ),
1649
-        home_url( 'index.php' )
1649
+        home_url('index.php')
1650 1650
     );
1651 1651
 
1652 1652
 }
@@ -1656,13 +1656,13 @@  discard block
 block discarded – undo
1656 1656
  *
1657 1657
  * @return string
1658 1658
  */
1659
-function getpaid_filter_embed_template( $template ) {
1659
+function getpaid_filter_embed_template($template) {
1660 1660
 
1661
-    if ( isset( $_GET['getpaid_embed'] ) ) {
1662
-        wpinv_get_template( 'payment-forms/embed.php' );
1661
+    if (isset($_GET['getpaid_embed'])) {
1662
+        wpinv_get_template('payment-forms/embed.php');
1663 1663
         exit;
1664 1664
     }
1665 1665
 
1666 1666
     return $template;
1667 1667
 }
1668
-add_filter( 'template_include', 'getpaid_filter_embed_template' );
1668
+add_filter('template_include', 'getpaid_filter_embed_template');
Please login to merge, or discard this patch.
includes/admin/wpinv-admin-functions.php 2 patches
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -56,7 +56,7 @@
 block discarded – undo
56 56
 }
57 57
 
58 58
 function wpinv_admin_messages() {
59
-	settings_errors( 'wpinv-notices' );
59
+    settings_errors( 'wpinv-notices' );
60 60
 }
61 61
 add_action( 'admin_notices', 'wpinv_admin_messages' );
62 62
 
Please login to merge, or discard this patch.
Spacing   +64 added lines, -64 removed lines patch added patch discarded remove patch
@@ -7,65 +7,65 @@  discard block
 block discarded – undo
7 7
  */
8 8
  
9 9
 // MUST have WordPress.
10
-if ( !defined( 'WPINC' ) ) {
11
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
10
+if (!defined('WPINC')) {
11
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
12 12
 }
13 13
 
14
-function wpinv_bulk_actions( $actions ) {
15
-    if ( isset( $actions['edit'] ) ) {
16
-        unset( $actions['edit'] );
14
+function wpinv_bulk_actions($actions) {
15
+    if (isset($actions['edit'])) {
16
+        unset($actions['edit']);
17 17
     }
18 18
 
19 19
     return $actions;
20 20
 }
21
-add_filter( 'bulk_actions-edit-wpi_invoice', 'wpinv_bulk_actions' );
22
-add_filter( 'bulk_actions-edit-wpi_item', 'wpinv_bulk_actions' );
21
+add_filter('bulk_actions-edit-wpi_invoice', 'wpinv_bulk_actions');
22
+add_filter('bulk_actions-edit-wpi_item', 'wpinv_bulk_actions');
23 23
 
24
-function wpinv_admin_post_id( $id = 0 ) {
24
+function wpinv_admin_post_id($id = 0) {
25 25
     global $post;
26 26
 
27
-    if ( isset( $id ) && ! empty( $id ) ) {
28
-        return (int)$id;
29
-    } else if ( get_the_ID() ) {
27
+    if (isset($id) && !empty($id)) {
28
+        return (int) $id;
29
+    } else if (get_the_ID()) {
30 30
         return (int) get_the_ID();
31
-    } else if ( isset( $post->ID ) && !empty( $post->ID ) ) {
31
+    } else if (isset($post->ID) && !empty($post->ID)) {
32 32
         return (int) $post->ID;
33
-    } else if ( isset( $_GET['post'] ) && !empty( $_GET['post'] ) ) {
33
+    } else if (isset($_GET['post']) && !empty($_GET['post'])) {
34 34
         return (int) $_GET['post'];
35
-    } else if ( isset( $_GET['id'] ) && !empty( $_GET['id'] ) ) {
35
+    } else if (isset($_GET['id']) && !empty($_GET['id'])) {
36 36
         return (int) $_GET['id'];
37
-    } else if ( isset( $_POST['id'] ) && !empty( $_POST['id'] ) ) {
37
+    } else if (isset($_POST['id']) && !empty($_POST['id'])) {
38 38
         return (int) $_POST['id'];
39 39
     } 
40 40
 
41 41
     return null;
42 42
 }
43 43
     
44
-function wpinv_admin_post_type( $id = 0 ) {
45
-    if ( !$id ) {
44
+function wpinv_admin_post_type($id = 0) {
45
+    if (!$id) {
46 46
         $id = wpinv_admin_post_id();
47 47
     }
48 48
     
49
-    $type = get_post_type( $id );
49
+    $type = get_post_type($id);
50 50
     
51
-    if ( !$type ) {
52
-        $type = isset( $_GET['post_type'] ) && !empty( $_GET['post_type'] ) ? sanitize_text_field( $_GET['post_type'] ) : null;
51
+    if (!$type) {
52
+        $type = isset($_GET['post_type']) && !empty($_GET['post_type']) ? sanitize_text_field($_GET['post_type']) : null;
53 53
     }
54 54
     
55
-    return apply_filters( 'wpinv_admin_post_type', $type, $id );
55
+    return apply_filters('wpinv_admin_post_type', $type, $id);
56 56
 }
57 57
 
58 58
 function wpinv_admin_messages() {
59
-	settings_errors( 'wpinv-notices' );
59
+	settings_errors('wpinv-notices');
60 60
 }
61
-add_action( 'admin_notices', 'wpinv_admin_messages' );
61
+add_action('admin_notices', 'wpinv_admin_messages');
62 62
 
63
-add_action( 'admin_init', 'wpinv_show_test_payment_gateway_notice' );
64
-function wpinv_show_test_payment_gateway_notice(){
65
-    add_action( 'admin_notices', 'wpinv_test_payment_gateway_messages' );
63
+add_action('admin_init', 'wpinv_show_test_payment_gateway_notice');
64
+function wpinv_show_test_payment_gateway_notice() {
65
+    add_action('admin_notices', 'wpinv_test_payment_gateway_messages');
66 66
 }
67 67
 
68
-function wpinv_test_payment_gateway_messages(){
68
+function wpinv_test_payment_gateway_messages() {
69 69
     $gateways = wpinv_get_enabled_payment_gateways();
70 70
     $name = array(); $test_gateways = '';
71 71
     if ($gateways) {
@@ -76,12 +76,12 @@  discard block
 block discarded – undo
76 76
         }
77 77
         $test_gateways = implode(', ', $name);
78 78
     }
79
-    if(isset($test_gateways) && !empty($test_gateways) && wpinv_current_user_can_manage_invoicing()){
79
+    if (isset($test_gateways) && !empty($test_gateways) && wpinv_current_user_can_manage_invoicing()) {
80 80
         $link = admin_url('admin.php?page=wpinv-settings&tab=gateways');
81
-        $notice = wp_sprintf( __('<strong>Important:</strong> Payment Gateway(s) %s are in testing mode and will not receive real payments. Go to <a href="%s"> Gateway Settings</a>.', 'invoicing'), $test_gateways, $link );
81
+        $notice = wp_sprintf(__('<strong>Important:</strong> Payment Gateway(s) %s are in testing mode and will not receive real payments. Go to <a href="%s"> Gateway Settings</a>.', 'invoicing'), $test_gateways, $link);
82 82
         ?>
83 83
         <div class="notice notice-warning is-dismissible">
84
-            <p><?php echo wp_kses_post( $notice ); ?></p>
84
+            <p><?php echo wp_kses_post($notice); ?></p>
85 85
         </div>
86 86
         <?php
87 87
     }
@@ -95,29 +95,29 @@  discard block
 block discarded – undo
95 95
     global $wpdb;
96 96
 
97 97
     // Only do this on our settings page.
98
-    if ( empty( $_GET[ 'page' ] ) || 'wpinv-settings' !== $_GET[ 'page' ] ) {
98
+    if (empty($_GET['page']) || 'wpinv-settings' !== $_GET['page']) {
99 99
         return;
100 100
     }
101 101
 
102 102
     // Check tables.
103
-    $tables             = array(
103
+    $tables = array(
104 104
         "{$wpdb->prefix}wpinv_subscriptions",
105 105
         "{$wpdb->prefix}getpaid_invoices",
106 106
         "{$wpdb->prefix}getpaid_invoice_items",
107 107
     );
108 108
 
109
-    foreach ( $tables as $table ) {
110
-        if ( $table != $wpdb->get_var( "SHOW TABLES LIKE '$table'" ) ) {
109
+    foreach ($tables as $table) {
110
+        if ($table != $wpdb->get_var("SHOW TABLES LIKE '$table'")) {
111 111
 
112
-            $url     = esc_url(
112
+            $url = esc_url(
113 113
                 wp_nonce_url(
114
-                    add_query_arg( 'getpaid-admin-action', 'create_missing_tables' ),
114
+                    add_query_arg('getpaid-admin-action', 'create_missing_tables'),
115 115
                     'getpaid-nonce',
116 116
                     'getpaid-nonce'
117 117
                 )
118 118
             );
119
-            $message  = __( 'Some GetPaid database tables are missing. To use GetPaid without any issues, click on the button below to create the missing tables.', 'invoicing' );
120
-            $message2 = __( 'Create Tables', 'invoicing' );
119
+            $message  = __('Some GetPaid database tables are missing. To use GetPaid without any issues, click on the button below to create the missing tables.', 'invoicing');
120
+            $message2 = __('Create Tables', 'invoicing');
121 121
             echo "<div class='notice notice-warning is-dismissible'><p>$message<br><br><a href='$url' class='button button-primary'>$message2</a></p></div>";
122 122
             break;
123 123
 
@@ -125,7 +125,7 @@  discard block
 block discarded – undo
125 125
     }
126 126
 
127 127
 }
128
-add_action( 'admin_notices', 'wpinv_check_for_missing_tables' );
128
+add_action('admin_notices', 'wpinv_check_for_missing_tables');
129 129
 
130 130
 add_action('admin_init', 'wpinv_admin_search_by_invoice');
131 131
 
@@ -135,7 +135,7 @@  discard block
 block discarded – undo
135 135
 function wpinv_admin_search_by_invoice() {
136 136
     global $typenow;
137 137
 
138
-    if ($typenow === 'wpi_invoice' || $typenow === 'wpi_quote' ) {
138
+    if ($typenow === 'wpi_invoice' || $typenow === 'wpi_quote') {
139 139
         add_filter('posts_search', 'wpinv_posts_search_example_type', 10, 2);
140 140
     }
141 141
 }
@@ -150,9 +150,9 @@  discard block
 block discarded – undo
150 150
     global $wpdb;
151 151
 
152 152
     if ($query->is_main_query() && !empty($query->query['s'])) {
153
-        $conditions_str = "{$wpdb->posts}.post_author IN ( SELECT ID FROM {$wpdb->users} WHERE user_email LIKE '%" . esc_sql( $query->query['s'] ) . "%' )";
154
-        if ( ! empty( $search ) ) {
155
-            $search = preg_replace( '/^ AND /', '', $search );
153
+        $conditions_str = "{$wpdb->posts}.post_author IN ( SELECT ID FROM {$wpdb->users} WHERE user_email LIKE '%" . esc_sql($query->query['s']) . "%' )";
154
+        if (!empty($search)) {
155
+            $search = preg_replace('/^ AND /', '', $search);
156 156
             $search = " AND ( {$search} OR ( {$conditions_str} ) )";
157 157
         } else {
158 158
             $search = " AND ( {$conditions_str} )";
@@ -165,17 +165,17 @@  discard block
 block discarded – undo
165 165
 /**
166 166
  * Resets invoice counts.
167 167
  */
168
-function wpinv_reset_invoice_count(){
169
-    if ( ! empty( $_GET['reset_invoice_count'] ) && isset( $_GET['_nonce'] ) && wp_verify_nonce( sanitize_text_field( $_GET['_nonce'] ), 'reset_invoice_count' ) ) {
168
+function wpinv_reset_invoice_count() {
169
+    if (!empty($_GET['reset_invoice_count']) && isset($_GET['_nonce']) && wp_verify_nonce(sanitize_text_field($_GET['_nonce']), 'reset_invoice_count')) {
170 170
         wpinv_update_option('invoice_sequence_start', 1);
171 171
         delete_option('wpinv_last_invoice_number');
172
-        getpaid_admin()->show_success( __( 'Invoice number sequence reset successfully.', 'invoicing' ) );
173
-        $url = remove_query_arg( array('reset_invoice_count', '_nonce') );
172
+        getpaid_admin()->show_success(__('Invoice number sequence reset successfully.', 'invoicing'));
173
+        $url = remove_query_arg(array('reset_invoice_count', '_nonce'));
174 174
         wp_redirect($url);
175 175
         exit();
176 176
     }
177 177
 }
178
-add_action( 'admin_init', 'wpinv_reset_invoice_count' );
178
+add_action('admin_init', 'wpinv_reset_invoice_count');
179 179
 
180 180
 /**
181 181
  * Displays line items on the invoice edit page.
@@ -184,29 +184,29 @@  discard block
 block discarded – undo
184 184
  * @param array $columns
185 185
  * @return string
186 186
  */
187
-function wpinv_admin_get_line_items( $invoice, $columns ) {
187
+function wpinv_admin_get_line_items($invoice, $columns) {
188 188
 
189 189
     ob_start();
190 190
 
191
-    do_action( 'getpaid_admin_before_line_items', $invoice );
191
+    do_action('getpaid_admin_before_line_items', $invoice);
192 192
 
193 193
     $count = 0;
194
-    foreach ( $invoice->get_items() as $item ) {
194
+    foreach ($invoice->get_items() as $item) {
195 195
 
196
-        $item_price     = wpinv_price( $item->get_price(), $invoice->get_currency() );
196
+        $item_price     = wpinv_price($item->get_price(), $invoice->get_currency());
197 197
         $quantity       = (int) $item->get_quantity();
198
-        $item_subtotal  = wpinv_price( $item->get_sub_total(), $invoice->get_currency() );
199
-        $summary        = apply_filters( 'getpaid_admin_invoice_line_item_summary', $item->get_description(), $item, $invoice );
198
+        $item_subtotal  = wpinv_price($item->get_sub_total(), $invoice->get_currency());
199
+        $summary        = apply_filters('getpaid_admin_invoice_line_item_summary', $item->get_description(), $item, $invoice);
200 200
         $item_tax       = $item->item_tax;
201
-        $tax_rate       = wpinv_round_amount( getpaid_get_invoice_tax_rate( $invoice, $item ), 2, true ) . '%';;
202
-        $tax_rate       = empty( $tax_rate ) ? ' <span class="tax-rate">(' . $tax_rate . '%)</span>' : '';
201
+        $tax_rate       = wpinv_round_amount(getpaid_get_invoice_tax_rate($invoice, $item), 2, true) . '%'; ;
202
+        $tax_rate       = empty($tax_rate) ? ' <span class="tax-rate">(' . $tax_rate . '%)</span>' : '';
203 203
         $line_item_tax  = $item_tax . $tax_rate;
204
-        $line_item      = '<tr class="item item-' . ( ($count % 2 == 0) ? 'even' : 'odd' ) . '" data-item-id="' . esc_attr( $item->get_id() ) . '">';
204
+        $line_item      = '<tr class="item item-' . (($count % 2 == 0) ? 'even' : 'odd') . '" data-item-id="' . esc_attr($item->get_id()) . '">';
205 205
         $line_item     .= '<td class="id">' . (int) $item->get_id() . '</td>';
206
-        $line_item     .= '<td class="title"><a href="' . get_edit_post_link( $item->get_id() ) . '" target="_blank">' . $item->get_name() . '</a>';
206
+        $line_item     .= '<td class="title"><a href="' . get_edit_post_link($item->get_id()) . '" target="_blank">' . $item->get_name() . '</a>';
207 207
 
208
-        if ( $summary !== '' ) {
209
-            $line_item .= '<span class="meta">' . wpautop( wp_kses_post( $summary ) ) . '</span>';
208
+        if ($summary !== '') {
209
+            $line_item .= '<span class="meta">' . wpautop(wp_kses_post($summary)) . '</span>';
210 210
         }
211 211
 
212 212
         $line_item .= '</td>';
@@ -214,23 +214,23 @@  discard block
 block discarded – undo
214 214
         $line_item .= '<td class="qty" data-quantity="' . $quantity . '">&nbsp;&times;&nbsp;' . $quantity . '</td>';
215 215
         $line_item .= '<td class="total">' . $item_subtotal . '</td>';
216 216
 
217
-        if ( wpinv_use_taxes() && $invoice->is_taxable() ) {
217
+        if (wpinv_use_taxes() && $invoice->is_taxable()) {
218 218
             $line_item .= '<td class="tax">' . $line_item_tax . '</td>';
219 219
         }
220 220
 
221 221
         $line_item .= '<td class="action">';
222
-        if ( ! $invoice->is_paid() && ! $invoice->is_refunded() ) {
222
+        if (!$invoice->is_paid() && !$invoice->is_refunded()) {
223 223
             $line_item .= '<i class="fa fa-remove wpinv-item-remove"></i>';
224 224
         }
225 225
         $line_item .= '</td>';
226 226
         $line_item .= '</tr>';
227 227
 
228
-        echo apply_filters( 'getpaid_admin_line_item', $line_item, $item, $invoice );
228
+        echo apply_filters('getpaid_admin_line_item', $line_item, $item, $invoice);
229 229
 
230 230
         $count++;
231 231
     }
232 232
 
233
-    do_action( 'getpaid_admin_after_line_items', $invoice );
233
+    do_action('getpaid_admin_after_line_items', $invoice);
234 234
 
235 235
     return ob_get_clean();
236 236
 }
Please login to merge, or discard this patch.
templates/payment-forms-admin/previews/address.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -7,13 +7,13 @@
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12 12
 ?>
13 13
 
14 14
 <div class='wpinv-address-wrapper row'>
15 15
 
16
-    <h4 v-if="form_element.address_type == 'both'" class="col-12 mb-3"><?php _e( 'Billing / Shipping Address', 'invoicing' ); ?></h4>
16
+    <h4 v-if="form_element.address_type == 'both'" class="col-12 mb-3"><?php _e('Billing / Shipping Address', 'invoicing'); ?></h4>
17 17
 
18 18
     <div class='form-group address-field-preview wpinv-payment-form-field-preview' v-for='(field, index) in visible_fields( form_element.fields )' :class='grid_class( field )' :key='field.name'>
19 19
         <label class="d-block w-100">
Please login to merge, or discard this patch.
includes/geolocation/class-getpaid-maxmind-database-service.php 2 patches
Indentation   +149 added lines, -149 removed lines patch added patch discarded remove patch
@@ -13,154 +13,154 @@
 block discarded – undo
13 13
  */
14 14
 class GetPaid_MaxMind_Database_Service {
15 15
 
16
-	/**
17
-	 * The name of the MaxMind database to utilize.
18
-	 */
19
-	const DATABASE = 'GeoLite2-Country';
20
-
21
-	/**
22
-	 * The extension for the MaxMind database.
23
-	 */
24
-	const DATABASE_EXTENSION = '.mmdb';
25
-
26
-	/**
27
-	 * A prefix for the MaxMind database filename.
28
-	 *
29
-	 * @var string
30
-	 */
31
-	private $database_prefix;
32
-
33
-	/**
34
-	 * Class constructor.
35
-	 *
36
-	 * @param string|null $database_prefix A prefix for the MaxMind database filename.
37
-	 */
38
-	public function __construct( $database_prefix ) {
39
-		$this->database_prefix = $database_prefix;
40
-	}
41
-
42
-	/**
43
-	 * Fetches the path that the database should be stored.
44
-	 *
45
-	 * @return string The local database path.
46
-	 */
47
-	public function get_database_path() {
48
-		$uploads_dir = wp_upload_dir();
49
-
50
-		$database_path = trailingslashit( $uploads_dir['basedir'] ) . 'invoicing/';
51
-		if ( ! empty( $this->database_prefix ) ) {
52
-			$database_path .= $this->database_prefix . '-';
53
-		}
54
-		$database_path .= self::DATABASE . self::DATABASE_EXTENSION;
55
-
56
-		// Filter the geolocation database storage path.
57
-		return apply_filters( 'getpaid_maxmind_geolocation_database_path', $database_path );
58
-	}
59
-
60
-	/**
61
-	 * Fetches the database from the MaxMind service.
62
-	 *
63
-	 * @param string $license_key The license key to be used when downloading the database.
64
-	 * @return string|WP_Error The path to the database file or an error if invalid.
65
-	 */
66
-	public function download_database( $license_key ) {
67
-
68
-		$download_uri = add_query_arg(
69
-			array(
70
-				'edition_id'  => self::DATABASE,
71
-				'license_key' => urlencode( wpinv_clean( $license_key ) ),
72
-				'suffix'      => 'tar.gz',
73
-			),
74
-			'https://download.maxmind.com/app/geoip_download'
75
-		);
76
-
77
-		// Needed for the download_url call right below.
78
-		require_once ABSPATH . 'wp-admin/includes/file.php';
79
-
80
-		$tmp_archive_path = download_url( esc_url_raw( $download_uri ) );
81
-
82
-		if ( is_wp_error( $tmp_archive_path ) ) {
83
-			// Transform the error into something more informative.
84
-			$error_data = $tmp_archive_path->get_error_data();
85
-			if ( isset( $error_data['code'] ) && $error_data['code'] == 401 ) {
86
-				return new WP_Error(
87
-					'getpaid_maxmind_geolocation_database_license_key',
88
-					__( 'The MaxMind license key is invalid. If you have recently created this key, you may need to wait for it to become active.', 'invoicing' )
89
-				);
90
-			}
91
-
92
-			return new WP_Error( 'getpaid_maxmind_geolocation_database_download', __( 'Failed to download the MaxMind database.', 'invoicing' ) );
93
-		}
94
-
95
-		// Extract the database from the archive.
96
-		return $this->extract_downloaded_database( $tmp_archive_path );
97
-
98
-	}
99
-
100
-	/**
101
-	 * Extracts the downloaded database.
102
-	 *
103
-	 * @param string $tmp_archive_path The database archive path.
104
-	 * @return string|WP_Error The path to the database file or an error if invalid.
105
-	 */
106
-	protected function extract_downloaded_database( $tmp_archive_path ) {
107
-
108
-		// Extract the database from the archive.
109
-		$tmp_database_path = '';
110
-
111
-		try {
112
-
113
-			$file              = new PharData( $tmp_archive_path );
114
-			$tmp_database_path = trailingslashit( dirname( $tmp_archive_path ) ) . trailingslashit( $file->current()->getFilename() ) . self::DATABASE . self::DATABASE_EXTENSION;
115
-
116
-			$file->extractTo(
117
-				dirname( $tmp_archive_path ),
118
-				trailingslashit( $file->current()->getFilename() ) . self::DATABASE . self::DATABASE_EXTENSION,
119
-				true
120
-			);
121
-
122
-		} catch ( Exception $exception ) {
123
-			return new WP_Error( 'invoicing_maxmind_geolocation_database_archive', $exception->getMessage() );
124
-		} finally {
125
-			// Remove the archive since we only care about a single file in it.
126
-			unlink( $tmp_archive_path );
127
-		}
128
-
129
-		return $tmp_database_path;
130
-	}
131
-
132
-	/**
133
-	 * Fetches the ISO country code associated with an IP address.
134
-	 *
135
-	 * @param string $ip_address The IP address to find the country code for.
136
-	 * @return string The country code for the IP address, or empty if not found.
137
-	 */
138
-	public function get_iso_country_code_for_ip( $ip_address ) {
139
-		$country_code = '';
140
-
141
-		if ( ! class_exists( 'MaxMind\Db\Reader' ) ) {
142
-			return $country_code;
143
-		}
144
-
145
-		$database_path = $this->get_database_path();
146
-		if ( ! file_exists( $database_path ) ) {
147
-			return $country_code;
148
-		}
149
-
150
-		try {
151
-			$reader = new MaxMind\Db\Reader( $database_path );
152
-			$data   = $reader->get( $ip_address );
153
-
154
-			if ( isset( $data['country']['iso_code'] ) ) {
155
-				$country_code = $data['country']['iso_code'];
156
-			}
157
-
158
-			$reader->close();
159
-		} catch ( Exception $e ) {
160
-			wpinv_error_log( $e->getMessage(), 'SOURCE: MaxMind GeoLocation' );
161
-		}
162
-
163
-		return $country_code;
164
-	}
16
+    /**
17
+     * The name of the MaxMind database to utilize.
18
+     */
19
+    const DATABASE = 'GeoLite2-Country';
20
+
21
+    /**
22
+     * The extension for the MaxMind database.
23
+     */
24
+    const DATABASE_EXTENSION = '.mmdb';
25
+
26
+    /**
27
+     * A prefix for the MaxMind database filename.
28
+     *
29
+     * @var string
30
+     */
31
+    private $database_prefix;
32
+
33
+    /**
34
+     * Class constructor.
35
+     *
36
+     * @param string|null $database_prefix A prefix for the MaxMind database filename.
37
+     */
38
+    public function __construct( $database_prefix ) {
39
+        $this->database_prefix = $database_prefix;
40
+    }
41
+
42
+    /**
43
+     * Fetches the path that the database should be stored.
44
+     *
45
+     * @return string The local database path.
46
+     */
47
+    public function get_database_path() {
48
+        $uploads_dir = wp_upload_dir();
49
+
50
+        $database_path = trailingslashit( $uploads_dir['basedir'] ) . 'invoicing/';
51
+        if ( ! empty( $this->database_prefix ) ) {
52
+            $database_path .= $this->database_prefix . '-';
53
+        }
54
+        $database_path .= self::DATABASE . self::DATABASE_EXTENSION;
55
+
56
+        // Filter the geolocation database storage path.
57
+        return apply_filters( 'getpaid_maxmind_geolocation_database_path', $database_path );
58
+    }
59
+
60
+    /**
61
+     * Fetches the database from the MaxMind service.
62
+     *
63
+     * @param string $license_key The license key to be used when downloading the database.
64
+     * @return string|WP_Error The path to the database file or an error if invalid.
65
+     */
66
+    public function download_database( $license_key ) {
67
+
68
+        $download_uri = add_query_arg(
69
+            array(
70
+                'edition_id'  => self::DATABASE,
71
+                'license_key' => urlencode( wpinv_clean( $license_key ) ),
72
+                'suffix'      => 'tar.gz',
73
+            ),
74
+            'https://download.maxmind.com/app/geoip_download'
75
+        );
76
+
77
+        // Needed for the download_url call right below.
78
+        require_once ABSPATH . 'wp-admin/includes/file.php';
79
+
80
+        $tmp_archive_path = download_url( esc_url_raw( $download_uri ) );
81
+
82
+        if ( is_wp_error( $tmp_archive_path ) ) {
83
+            // Transform the error into something more informative.
84
+            $error_data = $tmp_archive_path->get_error_data();
85
+            if ( isset( $error_data['code'] ) && $error_data['code'] == 401 ) {
86
+                return new WP_Error(
87
+                    'getpaid_maxmind_geolocation_database_license_key',
88
+                    __( 'The MaxMind license key is invalid. If you have recently created this key, you may need to wait for it to become active.', 'invoicing' )
89
+                );
90
+            }
91
+
92
+            return new WP_Error( 'getpaid_maxmind_geolocation_database_download', __( 'Failed to download the MaxMind database.', 'invoicing' ) );
93
+        }
94
+
95
+        // Extract the database from the archive.
96
+        return $this->extract_downloaded_database( $tmp_archive_path );
97
+
98
+    }
99
+
100
+    /**
101
+     * Extracts the downloaded database.
102
+     *
103
+     * @param string $tmp_archive_path The database archive path.
104
+     * @return string|WP_Error The path to the database file or an error if invalid.
105
+     */
106
+    protected function extract_downloaded_database( $tmp_archive_path ) {
107
+
108
+        // Extract the database from the archive.
109
+        $tmp_database_path = '';
110
+
111
+        try {
112
+
113
+            $file              = new PharData( $tmp_archive_path );
114
+            $tmp_database_path = trailingslashit( dirname( $tmp_archive_path ) ) . trailingslashit( $file->current()->getFilename() ) . self::DATABASE . self::DATABASE_EXTENSION;
115
+
116
+            $file->extractTo(
117
+                dirname( $tmp_archive_path ),
118
+                trailingslashit( $file->current()->getFilename() ) . self::DATABASE . self::DATABASE_EXTENSION,
119
+                true
120
+            );
121
+
122
+        } catch ( Exception $exception ) {
123
+            return new WP_Error( 'invoicing_maxmind_geolocation_database_archive', $exception->getMessage() );
124
+        } finally {
125
+            // Remove the archive since we only care about a single file in it.
126
+            unlink( $tmp_archive_path );
127
+        }
128
+
129
+        return $tmp_database_path;
130
+    }
131
+
132
+    /**
133
+     * Fetches the ISO country code associated with an IP address.
134
+     *
135
+     * @param string $ip_address The IP address to find the country code for.
136
+     * @return string The country code for the IP address, or empty if not found.
137
+     */
138
+    public function get_iso_country_code_for_ip( $ip_address ) {
139
+        $country_code = '';
140
+
141
+        if ( ! class_exists( 'MaxMind\Db\Reader' ) ) {
142
+            return $country_code;
143
+        }
144
+
145
+        $database_path = $this->get_database_path();
146
+        if ( ! file_exists( $database_path ) ) {
147
+            return $country_code;
148
+        }
149
+
150
+        try {
151
+            $reader = new MaxMind\Db\Reader( $database_path );
152
+            $data   = $reader->get( $ip_address );
153
+
154
+            if ( isset( $data['country']['iso_code'] ) ) {
155
+                $country_code = $data['country']['iso_code'];
156
+            }
157
+
158
+            $reader->close();
159
+        } catch ( Exception $e ) {
160
+            wpinv_error_log( $e->getMessage(), 'SOURCE: MaxMind GeoLocation' );
161
+        }
162
+
163
+        return $country_code;
164
+    }
165 165
 
166 166
 }
Please login to merge, or discard this patch.
Spacing   +29 added lines, -29 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 
7
-defined( 'ABSPATH' ) || exit;
7
+defined('ABSPATH') || exit;
8 8
 
9 9
 /**
10 10
  * The service class responsible for interacting with MaxMind databases.
@@ -35,7 +35,7 @@  discard block
 block discarded – undo
35 35
 	 *
36 36
 	 * @param string|null $database_prefix A prefix for the MaxMind database filename.
37 37
 	 */
38
-	public function __construct( $database_prefix ) {
38
+	public function __construct($database_prefix) {
39 39
 		$this->database_prefix = $database_prefix;
40 40
 	}
41 41
 
@@ -47,14 +47,14 @@  discard block
 block discarded – undo
47 47
 	public function get_database_path() {
48 48
 		$uploads_dir = wp_upload_dir();
49 49
 
50
-		$database_path = trailingslashit( $uploads_dir['basedir'] ) . 'invoicing/';
51
-		if ( ! empty( $this->database_prefix ) ) {
50
+		$database_path = trailingslashit($uploads_dir['basedir']) . 'invoicing/';
51
+		if (!empty($this->database_prefix)) {
52 52
 			$database_path .= $this->database_prefix . '-';
53 53
 		}
54 54
 		$database_path .= self::DATABASE . self::DATABASE_EXTENSION;
55 55
 
56 56
 		// Filter the geolocation database storage path.
57
-		return apply_filters( 'getpaid_maxmind_geolocation_database_path', $database_path );
57
+		return apply_filters('getpaid_maxmind_geolocation_database_path', $database_path);
58 58
 	}
59 59
 
60 60
 	/**
@@ -63,12 +63,12 @@  discard block
 block discarded – undo
63 63
 	 * @param string $license_key The license key to be used when downloading the database.
64 64
 	 * @return string|WP_Error The path to the database file or an error if invalid.
65 65
 	 */
66
-	public function download_database( $license_key ) {
66
+	public function download_database($license_key) {
67 67
 
68 68
 		$download_uri = add_query_arg(
69 69
 			array(
70 70
 				'edition_id'  => self::DATABASE,
71
-				'license_key' => urlencode( wpinv_clean( $license_key ) ),
71
+				'license_key' => urlencode(wpinv_clean($license_key)),
72 72
 				'suffix'      => 'tar.gz',
73 73
 			),
74 74
 			'https://download.maxmind.com/app/geoip_download'
@@ -77,23 +77,23 @@  discard block
 block discarded – undo
77 77
 		// Needed for the download_url call right below.
78 78
 		require_once ABSPATH . 'wp-admin/includes/file.php';
79 79
 
80
-		$tmp_archive_path = download_url( esc_url_raw( $download_uri ) );
80
+		$tmp_archive_path = download_url(esc_url_raw($download_uri));
81 81
 
82
-		if ( is_wp_error( $tmp_archive_path ) ) {
82
+		if (is_wp_error($tmp_archive_path)) {
83 83
 			// Transform the error into something more informative.
84 84
 			$error_data = $tmp_archive_path->get_error_data();
85
-			if ( isset( $error_data['code'] ) && $error_data['code'] == 401 ) {
85
+			if (isset($error_data['code']) && $error_data['code'] == 401) {
86 86
 				return new WP_Error(
87 87
 					'getpaid_maxmind_geolocation_database_license_key',
88
-					__( 'The MaxMind license key is invalid. If you have recently created this key, you may need to wait for it to become active.', 'invoicing' )
88
+					__('The MaxMind license key is invalid. If you have recently created this key, you may need to wait for it to become active.', 'invoicing')
89 89
 				);
90 90
 			}
91 91
 
92
-			return new WP_Error( 'getpaid_maxmind_geolocation_database_download', __( 'Failed to download the MaxMind database.', 'invoicing' ) );
92
+			return new WP_Error('getpaid_maxmind_geolocation_database_download', __('Failed to download the MaxMind database.', 'invoicing'));
93 93
 		}
94 94
 
95 95
 		// Extract the database from the archive.
96
-		return $this->extract_downloaded_database( $tmp_archive_path );
96
+		return $this->extract_downloaded_database($tmp_archive_path);
97 97
 
98 98
 	}
99 99
 
@@ -103,27 +103,27 @@  discard block
 block discarded – undo
103 103
 	 * @param string $tmp_archive_path The database archive path.
104 104
 	 * @return string|WP_Error The path to the database file or an error if invalid.
105 105
 	 */
106
-	protected function extract_downloaded_database( $tmp_archive_path ) {
106
+	protected function extract_downloaded_database($tmp_archive_path) {
107 107
 
108 108
 		// Extract the database from the archive.
109 109
 		$tmp_database_path = '';
110 110
 
111 111
 		try {
112 112
 
113
-			$file              = new PharData( $tmp_archive_path );
114
-			$tmp_database_path = trailingslashit( dirname( $tmp_archive_path ) ) . trailingslashit( $file->current()->getFilename() ) . self::DATABASE . self::DATABASE_EXTENSION;
113
+			$file              = new PharData($tmp_archive_path);
114
+			$tmp_database_path = trailingslashit(dirname($tmp_archive_path)) . trailingslashit($file->current()->getFilename()) . self::DATABASE . self::DATABASE_EXTENSION;
115 115
 
116 116
 			$file->extractTo(
117
-				dirname( $tmp_archive_path ),
118
-				trailingslashit( $file->current()->getFilename() ) . self::DATABASE . self::DATABASE_EXTENSION,
117
+				dirname($tmp_archive_path),
118
+				trailingslashit($file->current()->getFilename()) . self::DATABASE . self::DATABASE_EXTENSION,
119 119
 				true
120 120
 			);
121 121
 
122
-		} catch ( Exception $exception ) {
123
-			return new WP_Error( 'invoicing_maxmind_geolocation_database_archive', $exception->getMessage() );
122
+		} catch (Exception $exception) {
123
+			return new WP_Error('invoicing_maxmind_geolocation_database_archive', $exception->getMessage());
124 124
 		} finally {
125 125
 			// Remove the archive since we only care about a single file in it.
126
-			unlink( $tmp_archive_path );
126
+			unlink($tmp_archive_path);
127 127
 		}
128 128
 
129 129
 		return $tmp_database_path;
@@ -135,29 +135,29 @@  discard block
 block discarded – undo
135 135
 	 * @param string $ip_address The IP address to find the country code for.
136 136
 	 * @return string The country code for the IP address, or empty if not found.
137 137
 	 */
138
-	public function get_iso_country_code_for_ip( $ip_address ) {
138
+	public function get_iso_country_code_for_ip($ip_address) {
139 139
 		$country_code = '';
140 140
 
141
-		if ( ! class_exists( 'MaxMind\Db\Reader' ) ) {
141
+		if (!class_exists('MaxMind\Db\Reader')) {
142 142
 			return $country_code;
143 143
 		}
144 144
 
145 145
 		$database_path = $this->get_database_path();
146
-		if ( ! file_exists( $database_path ) ) {
146
+		if (!file_exists($database_path)) {
147 147
 			return $country_code;
148 148
 		}
149 149
 
150 150
 		try {
151
-			$reader = new MaxMind\Db\Reader( $database_path );
152
-			$data   = $reader->get( $ip_address );
151
+			$reader = new MaxMind\Db\Reader($database_path);
152
+			$data   = $reader->get($ip_address);
153 153
 
154
-			if ( isset( $data['country']['iso_code'] ) ) {
154
+			if (isset($data['country']['iso_code'])) {
155 155
 				$country_code = $data['country']['iso_code'];
156 156
 			}
157 157
 
158 158
 			$reader->close();
159
-		} catch ( Exception $e ) {
160
-			wpinv_error_log( $e->getMessage(), 'SOURCE: MaxMind GeoLocation' );
159
+		} catch (Exception $e) {
160
+			wpinv_error_log($e->getMessage(), 'SOURCE: MaxMind GeoLocation');
161 161
 		}
162 162
 
163 163
 		return $country_code;
Please login to merge, or discard this patch.