@@ -7,245 +7,245 @@ discard block |
||
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_columns( $columns ) { |
|
14 | +function wpinv_columns($columns) { |
|
15 | 15 | $columns = array( |
16 | 16 | 'cb' => $columns['cb'], |
17 | - 'number' => __( 'Number', 'invoicing' ), |
|
18 | - 'customer' => __( 'Customer', 'invoicing' ), |
|
19 | - 'amount' => __( 'Amount', 'invoicing' ), |
|
20 | - 'invoice_date' => __( 'Created Date', 'invoicing' ), |
|
21 | - 'payment_date' => __( 'Payment Date', 'invoicing' ), |
|
22 | - 'status' => __( 'Status', 'invoicing' ), |
|
23 | - 'ID' => __( 'ID', 'invoicing' ), |
|
24 | - 'wpi_actions' => __( 'Actions', 'invoicing' ), |
|
17 | + 'number' => __('Number', 'invoicing'), |
|
18 | + 'customer' => __('Customer', 'invoicing'), |
|
19 | + 'amount' => __('Amount', 'invoicing'), |
|
20 | + 'invoice_date' => __('Created Date', 'invoicing'), |
|
21 | + 'payment_date' => __('Payment Date', 'invoicing'), |
|
22 | + 'status' => __('Status', 'invoicing'), |
|
23 | + 'ID' => __('ID', 'invoicing'), |
|
24 | + 'wpi_actions' => __('Actions', 'invoicing'), |
|
25 | 25 | ); |
26 | 26 | |
27 | - return apply_filters( 'wpi_invoice_table_columns', $columns ); |
|
27 | + return apply_filters('wpi_invoice_table_columns', $columns); |
|
28 | 28 | } |
29 | -add_filter( 'manage_wpi_invoice_posts_columns', 'wpinv_columns' ); |
|
29 | +add_filter('manage_wpi_invoice_posts_columns', 'wpinv_columns'); |
|
30 | 30 | |
31 | -function wpinv_bulk_actions( $actions ) { |
|
32 | - if ( isset( $actions['edit'] ) ) { |
|
33 | - unset( $actions['edit'] ); |
|
31 | +function wpinv_bulk_actions($actions) { |
|
32 | + if (isset($actions['edit'])) { |
|
33 | + unset($actions['edit']); |
|
34 | 34 | } |
35 | 35 | |
36 | 36 | return $actions; |
37 | 37 | } |
38 | -add_filter( 'bulk_actions-edit-wpi_invoice', 'wpinv_bulk_actions' ); |
|
39 | -add_filter( 'bulk_actions-edit-wpi_item', 'wpinv_bulk_actions' ); |
|
38 | +add_filter('bulk_actions-edit-wpi_invoice', 'wpinv_bulk_actions'); |
|
39 | +add_filter('bulk_actions-edit-wpi_item', 'wpinv_bulk_actions'); |
|
40 | 40 | |
41 | -function wpinv_sortable_columns( $columns ) { |
|
41 | +function wpinv_sortable_columns($columns) { |
|
42 | 42 | $columns = array( |
43 | - 'ID' => array( 'ID', true ), |
|
44 | - 'number' => array( 'number', false ), |
|
45 | - 'amount' => array( 'amount', false ), |
|
46 | - 'invoice_date' => array( 'date', false ), |
|
47 | - 'payment_date' => array( 'payment_date', true ), |
|
48 | - 'customer' => array( 'customer', false ), |
|
49 | - 'status' => array( 'status', false ), |
|
43 | + 'ID' => array('ID', true), |
|
44 | + 'number' => array('number', false), |
|
45 | + 'amount' => array('amount', false), |
|
46 | + 'invoice_date' => array('date', false), |
|
47 | + 'payment_date' => array('payment_date', true), |
|
48 | + 'customer' => array('customer', false), |
|
49 | + 'status' => array('status', false), |
|
50 | 50 | ); |
51 | 51 | |
52 | - return apply_filters( 'wpi_invoice_table_sortable_columns', $columns ); |
|
52 | + return apply_filters('wpi_invoice_table_sortable_columns', $columns); |
|
53 | 53 | } |
54 | -add_filter( 'manage_edit-wpi_invoice_sortable_columns', 'wpinv_sortable_columns' ); |
|
54 | +add_filter('manage_edit-wpi_invoice_sortable_columns', 'wpinv_sortable_columns'); |
|
55 | 55 | |
56 | -add_action( 'manage_wpi_invoice_posts_custom_column', 'wpinv_posts_custom_column'); |
|
57 | -function wpinv_posts_custom_column( $column_name, $post_id = 0 ) { |
|
56 | +add_action('manage_wpi_invoice_posts_custom_column', 'wpinv_posts_custom_column'); |
|
57 | +function wpinv_posts_custom_column($column_name, $post_id = 0) { |
|
58 | 58 | global $post, $wpi_invoice; |
59 | 59 | |
60 | - if ( empty( $wpi_invoice ) || ( !empty( $wpi_invoice ) && $post->ID != $wpi_invoice->ID ) ) { |
|
61 | - $wpi_invoice = new WPInv_Invoice( $post->ID ); |
|
60 | + if (empty($wpi_invoice) || (!empty($wpi_invoice) && $post->ID != $wpi_invoice->ID)) { |
|
61 | + $wpi_invoice = new WPInv_Invoice($post->ID); |
|
62 | 62 | } |
63 | 63 | |
64 | 64 | $value = NULL; |
65 | 65 | |
66 | - switch ( $column_name ) { |
|
66 | + switch ($column_name) { |
|
67 | 67 | case 'email' : |
68 | - $value = $wpi_invoice->get_email(); |
|
68 | + $value = $wpi_invoice->get_email(); |
|
69 | 69 | break; |
70 | 70 | case 'customer' : |
71 | 71 | $customer_name = $wpi_invoice->get_user_full_name(); |
72 | - $customer_name = $customer_name != '' ? $customer_name : __( 'Customer', 'invoicing' ); |
|
73 | - $value = '<a href="' . esc_url( get_edit_user_link( $wpi_invoice->get_user_id() ) ) . '">' . $customer_name . '</a>'; |
|
74 | - if ( $email = $wpi_invoice->get_email() ) { |
|
72 | + $customer_name = $customer_name != '' ? $customer_name : __('Customer', 'invoicing'); |
|
73 | + $value = '<a href="' . esc_url(get_edit_user_link($wpi_invoice->get_user_id())) . '">' . $customer_name . '</a>'; |
|
74 | + if ($email = $wpi_invoice->get_email()) { |
|
75 | 75 | $value .= '<br><a class="email" href="mailto:' . $email . '">' . $email . '</a>'; |
76 | 76 | } |
77 | 77 | break; |
78 | 78 | case 'amount' : |
79 | - echo $wpi_invoice->get_total( true ); |
|
79 | + echo $wpi_invoice->get_total(true); |
|
80 | 80 | break; |
81 | 81 | case 'invoice_date' : |
82 | - $date_format = get_option( 'date_format' ); |
|
82 | + $date_format = get_option('date_format'); |
|
83 | 83 | |
84 | 84 | $m_time = $post->post_date; |
85 | - $h_time = mysql2date( $date_format, $m_time ); |
|
85 | + $h_time = mysql2date($date_format, $m_time); |
|
86 | 86 | |
87 | - $value = '<abbr title="' . $m_time . '">' . $h_time . '</abbr>'; |
|
87 | + $value = '<abbr title="' . $m_time . '">' . $h_time . '</abbr>'; |
|
88 | 88 | break; |
89 | 89 | case 'payment_date' : |
90 | - if ( $date_completed = $wpi_invoice->get_meta( '_wpinv_completed_date', true ) ) { |
|
91 | - $date_format = get_option( 'date_format' ); |
|
90 | + if ($date_completed = $wpi_invoice->get_meta('_wpinv_completed_date', true)) { |
|
91 | + $date_format = get_option('date_format'); |
|
92 | 92 | |
93 | 93 | $m_time = $date_completed; |
94 | - $h_time = mysql2date( $date_format, $m_time ); |
|
94 | + $h_time = mysql2date($date_format, $m_time); |
|
95 | 95 | |
96 | - $value = '<abbr title="' . $m_time . '">' . $h_time . '</abbr>'; |
|
96 | + $value = '<abbr title="' . $m_time . '">' . $h_time . '</abbr>'; |
|
97 | 97 | } else { |
98 | 98 | $value = '-'; |
99 | 99 | } |
100 | 100 | break; |
101 | 101 | case 'status' : |
102 | - $value = $wpi_invoice->get_status( true ) . ( $wpi_invoice->is_recurring() && $wpi_invoice->is_parent() ? ' <span class="wpi-suffix">' . __( '(r)', 'invoicing' ) . '</span>' : '' ); |
|
103 | - $is_viewed = wpinv_is_invoice_viewed( $wpi_invoice->ID ); |
|
104 | - $gateway_title = wpinv_get_gateway_admin_label( $wpi_invoice->get_gateway() ); |
|
102 | + $value = $wpi_invoice->get_status(true) . ($wpi_invoice->is_recurring() && $wpi_invoice->is_parent() ? ' <span class="wpi-suffix">' . __('(r)', 'invoicing') . '</span>' : ''); |
|
103 | + $is_viewed = wpinv_is_invoice_viewed($wpi_invoice->ID); |
|
104 | + $gateway_title = wpinv_get_gateway_admin_label($wpi_invoice->get_gateway()); |
|
105 | 105 | $offline_gateways = apply_filters('wpinv_offline_payments', array('bank_transfer', 'cheque', 'cod')); |
106 | 106 | $is_offline_payment = in_array($wpi_invoice->get_gateway(), $offline_gateways) ? true : false; |
107 | 107 | |
108 | - if ( 1 == $is_viewed ) { |
|
109 | - $value .= ' <i class="fa fa-eye" title="'.__( 'Viewed by Customer', 'invoicing' ).'"></i>'; |
|
108 | + if (1 == $is_viewed) { |
|
109 | + $value .= ' <i class="fa fa-eye" title="' . __('Viewed by Customer', 'invoicing') . '"></i>'; |
|
110 | 110 | } |
111 | - if ( ( $wpi_invoice->is_paid() || $wpi_invoice->is_refunded() || $is_offline_payment ) && ( isset( $gateway_title ) ) ) { |
|
112 | - $value .= '<br><small class="meta gateway">' . wp_sprintf( __( 'Via %s', 'invoicing' ), $gateway_title ) . '</small>'; |
|
111 | + if (($wpi_invoice->is_paid() || $wpi_invoice->is_refunded() || $is_offline_payment) && (isset($gateway_title))) { |
|
112 | + $value .= '<br><small class="meta gateway">' . wp_sprintf(__('Via %s', 'invoicing'), $gateway_title) . '</small>'; |
|
113 | 113 | } |
114 | 114 | break; |
115 | 115 | case 'number' : |
116 | - $edit_link = get_edit_post_link( $post->ID ); |
|
117 | - $value = '<a title="' . esc_attr__( 'View Invoice Details', 'invoicing' ) . '" href="' . esc_url( $edit_link ) . '">' . $wpi_invoice->get_number() . '</a>'; |
|
116 | + $edit_link = get_edit_post_link($post->ID); |
|
117 | + $value = '<a title="' . esc_attr__('View Invoice Details', 'invoicing') . '" href="' . esc_url($edit_link) . '">' . $wpi_invoice->get_number() . '</a>'; |
|
118 | 118 | break; |
119 | 119 | case 'wpi_actions' : |
120 | 120 | $value = ''; |
121 | - if ( !empty( $post->post_name ) ) { |
|
122 | - $value .= '<a title="' . esc_attr__( 'Print invoice', 'invoicing' ) . '" href="' . esc_url( get_permalink( $post->ID ) ) . '" class="button ui-tip column-act-btn" title="" target="_blank"><span class="dashicons dashicons-print"><i style="" class="fa fa-print"></i></span></a>'; |
|
121 | + if (!empty($post->post_name)) { |
|
122 | + $value .= '<a title="' . esc_attr__('Print invoice', 'invoicing') . '" href="' . esc_url(get_permalink($post->ID)) . '" class="button ui-tip column-act-btn" title="" target="_blank"><span class="dashicons dashicons-print"><i style="" class="fa fa-print"></i></span></a>'; |
|
123 | 123 | } |
124 | 124 | |
125 | - if ( $email = $wpi_invoice->get_email() ) { |
|
126 | - $value .= '<a title="' . esc_attr__( 'Send invoice to customer', 'invoicing' ) . '" href="' . esc_url( add_query_arg( array( 'wpi_action' => 'send_invoice', 'invoice_id' => $post->ID ) ) ) . '" class="button ui-tip column-act-btn"><span class="dashicons dashicons-email-alt"></span></a>'; |
|
125 | + if ($email = $wpi_invoice->get_email()) { |
|
126 | + $value .= '<a title="' . esc_attr__('Send invoice to customer', 'invoicing') . '" href="' . esc_url(add_query_arg(array('wpi_action' => 'send_invoice', 'invoice_id' => $post->ID))) . '" class="button ui-tip column-act-btn"><span class="dashicons dashicons-email-alt"></span></a>'; |
|
127 | 127 | } |
128 | 128 | |
129 | 129 | break; |
130 | 130 | default: |
131 | - $value = isset( $post->$column_name ) ? $post->$column_name : ''; |
|
131 | + $value = isset($post->$column_name) ? $post->$column_name : ''; |
|
132 | 132 | break; |
133 | 133 | |
134 | 134 | } |
135 | - $value = apply_filters( 'wpinv_payments_table_column', $value, $post->ID, $column_name ); |
|
135 | + $value = apply_filters('wpinv_payments_table_column', $value, $post->ID, $column_name); |
|
136 | 136 | |
137 | - if ( $value !== NULL ) { |
|
137 | + if ($value !== NULL) { |
|
138 | 138 | echo $value; |
139 | 139 | } |
140 | 140 | } |
141 | 141 | |
142 | -function wpinv_admin_post_id( $id = 0 ) { |
|
142 | +function wpinv_admin_post_id($id = 0) { |
|
143 | 143 | global $post; |
144 | 144 | |
145 | - if ( isset( $id ) && ! empty( $id ) ) { |
|
146 | - return (int)$id; |
|
147 | - } else if ( get_the_ID() ) { |
|
145 | + if (isset($id) && !empty($id)) { |
|
146 | + return (int) $id; |
|
147 | + } else if (get_the_ID()) { |
|
148 | 148 | return (int) get_the_ID(); |
149 | - } else if ( isset( $post->ID ) && !empty( $post->ID ) ) { |
|
149 | + } else if (isset($post->ID) && !empty($post->ID)) { |
|
150 | 150 | return (int) $post->ID; |
151 | - } else if ( isset( $_GET['post'] ) && !empty( $_GET['post'] ) ) { |
|
151 | + } else if (isset($_GET['post']) && !empty($_GET['post'])) { |
|
152 | 152 | return (int) $_GET['post']; |
153 | - } else if ( isset( $_GET['id'] ) && !empty( $_GET['id'] ) ) { |
|
153 | + } else if (isset($_GET['id']) && !empty($_GET['id'])) { |
|
154 | 154 | return (int) $_GET['id']; |
155 | - } else if ( isset( $_POST['id'] ) && !empty( $_POST['id'] ) ) { |
|
155 | + } else if (isset($_POST['id']) && !empty($_POST['id'])) { |
|
156 | 156 | return (int) $_POST['id']; |
157 | 157 | } |
158 | 158 | |
159 | 159 | return null; |
160 | 160 | } |
161 | 161 | |
162 | -function wpinv_admin_post_type( $id = 0 ) { |
|
163 | - if ( !$id ) { |
|
162 | +function wpinv_admin_post_type($id = 0) { |
|
163 | + if (!$id) { |
|
164 | 164 | $id = wpinv_admin_post_id(); |
165 | 165 | } |
166 | 166 | |
167 | - $type = get_post_type( $id ); |
|
167 | + $type = get_post_type($id); |
|
168 | 168 | |
169 | - if ( !$type ) { |
|
170 | - $type = isset( $_GET['post_type'] ) && !empty( $_GET['post_type'] ) ? $_GET['post_type'] : null; |
|
169 | + if (!$type) { |
|
170 | + $type = isset($_GET['post_type']) && !empty($_GET['post_type']) ? $_GET['post_type'] : null; |
|
171 | 171 | } |
172 | 172 | |
173 | - return apply_filters( 'wpinv_admin_post_type', $type, $id ); |
|
173 | + return apply_filters('wpinv_admin_post_type', $type, $id); |
|
174 | 174 | } |
175 | 175 | |
176 | 176 | function wpinv_admin_messages() { |
177 | 177 | global $wpinv_options, $pagenow, $post; |
178 | 178 | |
179 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_added' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
180 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-added', __( 'Discount code added.', 'invoicing' ), 'updated' ); |
|
179 | + if (isset($_GET['wpinv-message']) && 'discount_added' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
180 | + add_settings_error('wpinv-notices', 'wpinv-discount-added', __('Discount code added.', 'invoicing'), 'updated'); |
|
181 | 181 | } |
182 | 182 | |
183 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_add_failed' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
184 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-add-fail', __( 'There was a problem adding your discount code, please try again.', 'invoicing' ), 'error' ); |
|
183 | + if (isset($_GET['wpinv-message']) && 'discount_add_failed' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
184 | + add_settings_error('wpinv-notices', 'wpinv-discount-add-fail', __('There was a problem adding your discount code, please try again.', 'invoicing'), 'error'); |
|
185 | 185 | } |
186 | 186 | |
187 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_exists' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
188 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-exists', __( 'A discount with that code already exists, please use a different code.', 'invoicing' ), 'error' ); |
|
187 | + if (isset($_GET['wpinv-message']) && 'discount_exists' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
188 | + add_settings_error('wpinv-notices', 'wpinv-discount-exists', __('A discount with that code already exists, please use a different code.', 'invoicing'), 'error'); |
|
189 | 189 | } |
190 | 190 | |
191 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_updated' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
192 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-updated', __( 'Discount code updated.', 'invoicing' ), 'updated' ); |
|
191 | + if (isset($_GET['wpinv-message']) && 'discount_updated' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
192 | + add_settings_error('wpinv-notices', 'wpinv-discount-updated', __('Discount code updated.', 'invoicing'), 'updated'); |
|
193 | 193 | } |
194 | 194 | |
195 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_update_failed' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
196 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-updated-fail', __( 'There was a problem updating your discount code, please try again.', 'invoicing' ), 'error' ); |
|
195 | + if (isset($_GET['wpinv-message']) && 'discount_update_failed' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
196 | + add_settings_error('wpinv-notices', 'wpinv-discount-updated-fail', __('There was a problem updating your discount code, please try again.', 'invoicing'), 'error'); |
|
197 | 197 | } |
198 | 198 | |
199 | - if ( isset( $_GET['wpinv-message'] ) && 'invoice_deleted' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
200 | - add_settings_error( 'wpinv-notices', 'wpinv-deleted', __( 'The invoice has been deleted.', 'invoicing' ), 'updated' ); |
|
199 | + if (isset($_GET['wpinv-message']) && 'invoice_deleted' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
200 | + add_settings_error('wpinv-notices', 'wpinv-deleted', __('The invoice has been deleted.', 'invoicing'), 'updated'); |
|
201 | 201 | } |
202 | 202 | |
203 | - if ( isset( $_GET['wpinv-message'] ) && 'email_disabled' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
204 | - add_settings_error( 'wpinv-notices', 'wpinv-sent-fail', __( 'Email notification is disabled. Please check settings.', 'invoicing' ), 'error' ); |
|
203 | + if (isset($_GET['wpinv-message']) && 'email_disabled' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
204 | + add_settings_error('wpinv-notices', 'wpinv-sent-fail', __('Email notification is disabled. Please check settings.', 'invoicing'), 'error'); |
|
205 | 205 | } |
206 | 206 | |
207 | - if ( isset( $_GET['wpinv-message'] ) && 'email_sent' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
208 | - add_settings_error( 'wpinv-notices', 'wpinv-sent', __( 'The email has been sent to customer.', 'invoicing' ), 'updated' ); |
|
207 | + if (isset($_GET['wpinv-message']) && 'email_sent' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
208 | + add_settings_error('wpinv-notices', 'wpinv-sent', __('The email has been sent to customer.', 'invoicing'), 'updated'); |
|
209 | 209 | } |
210 | 210 | |
211 | - if ( isset( $_GET['wpinv-message'] ) && 'email_fail' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
212 | - add_settings_error( 'wpinv-notices', 'wpinv-sent-fail', __( 'Fail to send email to the customer.', 'invoicing' ), 'error' ); |
|
211 | + if (isset($_GET['wpinv-message']) && 'email_fail' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
212 | + add_settings_error('wpinv-notices', 'wpinv-sent-fail', __('Fail to send email to the customer.', 'invoicing'), 'error'); |
|
213 | 213 | } |
214 | 214 | |
215 | - if ( isset( $_GET['wpinv-message'] ) && 'invoice-note-deleted' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
216 | - add_settings_error( 'wpinv-notices', 'wpinv-note-deleted', __( 'The invoice note has been deleted.', 'invoicing' ), 'updated' ); |
|
215 | + if (isset($_GET['wpinv-message']) && 'invoice-note-deleted' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
216 | + add_settings_error('wpinv-notices', 'wpinv-note-deleted', __('The invoice note has been deleted.', 'invoicing'), 'updated'); |
|
217 | 217 | } |
218 | 218 | |
219 | - if ( isset( $_GET['wpinv-message'] ) && 'settings-imported' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
220 | - add_settings_error( 'wpinv-notices', 'wpinv-settings-imported', __( 'The settings have been imported.', 'invoicing' ), 'updated' ); |
|
219 | + if (isset($_GET['wpinv-message']) && 'settings-imported' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
220 | + add_settings_error('wpinv-notices', 'wpinv-settings-imported', __('The settings have been imported.', 'invoicing'), 'updated'); |
|
221 | 221 | } |
222 | 222 | |
223 | - if ( isset( $_GET['wpinv-message'] ) && 'note-added' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
224 | - add_settings_error( 'wpinv-notices', 'wpinv-note-added', __( 'The invoice note has been added successfully.', 'invoicing' ), 'updated' ); |
|
223 | + if (isset($_GET['wpinv-message']) && 'note-added' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
224 | + add_settings_error('wpinv-notices', 'wpinv-note-added', __('The invoice note has been added successfully.', 'invoicing'), 'updated'); |
|
225 | 225 | } |
226 | 226 | |
227 | - if ( isset( $_GET['wpinv-message'] ) && 'invoice-updated' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing() ) { |
|
228 | - add_settings_error( 'wpinv-notices', 'wpinv-updated', __( 'The invoice has been successfully updated.', 'invoicing' ), 'updated' ); |
|
227 | + if (isset($_GET['wpinv-message']) && 'invoice-updated' == $_GET['wpinv-message'] && wpinv_current_user_can_manage_invoicing()) { |
|
228 | + add_settings_error('wpinv-notices', 'wpinv-updated', __('The invoice has been successfully updated.', 'invoicing'), 'updated'); |
|
229 | 229 | } |
230 | 230 | |
231 | - if ( $pagenow == 'post.php' && !empty( $post->post_type ) && $post->post_type == 'wpi_item' && !wpinv_item_is_editable( $post ) ) { |
|
232 | - $message = apply_filters( 'wpinv_item_non_editable_message', __( 'This item in not editable.', 'invoicing' ), $post->ID ); |
|
231 | + if ($pagenow == 'post.php' && !empty($post->post_type) && $post->post_type == 'wpi_item' && !wpinv_item_is_editable($post)) { |
|
232 | + $message = apply_filters('wpinv_item_non_editable_message', __('This item in not editable.', 'invoicing'), $post->ID); |
|
233 | 233 | |
234 | - if ( !empty( $message ) ) { |
|
235 | - add_settings_error( 'wpinv-notices', 'wpinv-edit-n', $message, 'updated' ); |
|
234 | + if (!empty($message)) { |
|
235 | + add_settings_error('wpinv-notices', 'wpinv-edit-n', $message, 'updated'); |
|
236 | 236 | } |
237 | 237 | } |
238 | 238 | |
239 | - settings_errors( 'wpinv-notices' ); |
|
239 | + settings_errors('wpinv-notices'); |
|
240 | 240 | } |
241 | -add_action( 'admin_notices', 'wpinv_admin_messages' ); |
|
241 | +add_action('admin_notices', 'wpinv_admin_messages'); |
|
242 | 242 | |
243 | -add_action( 'admin_init', 'wpinv_show_test_payment_gateway_notice' ); |
|
244 | -function wpinv_show_test_payment_gateway_notice(){ |
|
245 | - add_action( 'admin_notices', 'wpinv_test_payment_gateway_messages' ); |
|
243 | +add_action('admin_init', 'wpinv_show_test_payment_gateway_notice'); |
|
244 | +function wpinv_show_test_payment_gateway_notice() { |
|
245 | + add_action('admin_notices', 'wpinv_test_payment_gateway_messages'); |
|
246 | 246 | } |
247 | 247 | |
248 | -function wpinv_test_payment_gateway_messages(){ |
|
248 | +function wpinv_test_payment_gateway_messages() { |
|
249 | 249 | $gateways = wpinv_get_enabled_payment_gateways(); |
250 | 250 | $name = array(); $test_gateways = ''; |
251 | 251 | if ($gateways) { |
@@ -256,9 +256,9 @@ discard block |
||
256 | 256 | } |
257 | 257 | $test_gateways = implode(', ', $name); |
258 | 258 | } |
259 | - if(isset($test_gateways) && !empty($test_gateways)){ |
|
259 | + if (isset($test_gateways) && !empty($test_gateways)) { |
|
260 | 260 | $link = admin_url('admin.php?page=wpinv-settings&tab=gateways'); |
261 | - $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 ); |
|
261 | + $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); |
|
262 | 262 | ?> |
263 | 263 | <div class="notice notice-warning is-dismissible"> |
264 | 264 | <p><?php echo $notice; ?></p> |
@@ -267,29 +267,29 @@ discard block |
||
267 | 267 | } |
268 | 268 | } |
269 | 269 | |
270 | -function wpinv_items_columns( $existing_columns ) { |
|
270 | +function wpinv_items_columns($existing_columns) { |
|
271 | 271 | global $wpinv_euvat; |
272 | 272 | |
273 | 273 | $columns = array(); |
274 | 274 | $columns['cb'] = $existing_columns['cb']; |
275 | - $columns['title'] = __( 'Title', 'invoicing' ); |
|
276 | - $columns['price'] = __( 'Price', 'invoicing' ); |
|
277 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
278 | - $columns['vat_rule'] = __( 'VAT rule type', 'invoicing' ); |
|
275 | + $columns['title'] = __('Title', 'invoicing'); |
|
276 | + $columns['price'] = __('Price', 'invoicing'); |
|
277 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
278 | + $columns['vat_rule'] = __('VAT rule type', 'invoicing'); |
|
279 | 279 | } |
280 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
281 | - $columns['vat_class'] = __( 'VAT class', 'invoicing' ); |
|
280 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
281 | + $columns['vat_class'] = __('VAT class', 'invoicing'); |
|
282 | 282 | } |
283 | - $columns['type'] = __( 'Type', 'invoicing' ); |
|
284 | - $columns['recurring'] = __( 'Recurring', 'invoicing' ); |
|
285 | - $columns['date'] = __( 'Date', 'invoicing' ); |
|
286 | - $columns['id'] = __( 'ID', 'invoicing' ); |
|
283 | + $columns['type'] = __('Type', 'invoicing'); |
|
284 | + $columns['recurring'] = __('Recurring', 'invoicing'); |
|
285 | + $columns['date'] = __('Date', 'invoicing'); |
|
286 | + $columns['id'] = __('ID', 'invoicing'); |
|
287 | 287 | |
288 | - return apply_filters( 'wpinv_items_columns', $columns ); |
|
288 | + return apply_filters('wpinv_items_columns', $columns); |
|
289 | 289 | } |
290 | -add_filter( 'manage_wpi_item_posts_columns', 'wpinv_items_columns' ); |
|
290 | +add_filter('manage_wpi_item_posts_columns', 'wpinv_items_columns'); |
|
291 | 291 | |
292 | -function wpinv_items_sortable_columns( $columns ) { |
|
292 | +function wpinv_items_sortable_columns($columns) { |
|
293 | 293 | $columns['price'] = 'price'; |
294 | 294 | $columns['vat_rule'] = 'vat_rule'; |
295 | 295 | $columns['vat_class'] = 'vat_class'; |
@@ -299,175 +299,175 @@ discard block |
||
299 | 299 | |
300 | 300 | return $columns; |
301 | 301 | } |
302 | -add_filter( 'manage_edit-wpi_item_sortable_columns', 'wpinv_items_sortable_columns' ); |
|
302 | +add_filter('manage_edit-wpi_item_sortable_columns', 'wpinv_items_sortable_columns'); |
|
303 | 303 | |
304 | -function wpinv_items_table_custom_column( $column ) { |
|
304 | +function wpinv_items_table_custom_column($column) { |
|
305 | 305 | global $wpinv_euvat, $post, $wpi_item; |
306 | 306 | |
307 | - if ( empty( $wpi_item ) || ( !empty( $wpi_item ) && $post->ID != $wpi_item->ID ) ) { |
|
308 | - $wpi_item = new WPInv_Item( $post->ID ); |
|
307 | + if (empty($wpi_item) || (!empty($wpi_item) && $post->ID != $wpi_item->ID)) { |
|
308 | + $wpi_item = new WPInv_Item($post->ID); |
|
309 | 309 | } |
310 | 310 | |
311 | - switch ( $column ) { |
|
311 | + switch ($column) { |
|
312 | 312 | case 'price' : |
313 | - echo wpinv_item_price( $post->ID ); |
|
313 | + echo wpinv_item_price($post->ID); |
|
314 | 314 | break; |
315 | 315 | case 'vat_rule' : |
316 | - echo $wpinv_euvat->item_rule_label( $post->ID ); |
|
316 | + echo $wpinv_euvat->item_rule_label($post->ID); |
|
317 | 317 | break; |
318 | 318 | case 'vat_class' : |
319 | - echo $wpinv_euvat->item_class_label( $post->ID ); |
|
319 | + echo $wpinv_euvat->item_class_label($post->ID); |
|
320 | 320 | break; |
321 | 321 | case 'type' : |
322 | - echo wpinv_item_type( $post->ID ) . '<span class="meta">' . $wpi_item->get_custom_singular_name() . '</span>'; |
|
322 | + echo wpinv_item_type($post->ID) . '<span class="meta">' . $wpi_item->get_custom_singular_name() . '</span>'; |
|
323 | 323 | break; |
324 | 324 | case 'recurring' : |
325 | - echo ( wpinv_is_recurring_item( $post->ID ) ? '<i class="fa fa-check fa-recurring-y"></i>' : '<i class="fa fa-close fa-recurring-n"></i>' ); |
|
325 | + echo (wpinv_is_recurring_item($post->ID) ? '<i class="fa fa-check fa-recurring-y"></i>' : '<i class="fa fa-close fa-recurring-n"></i>'); |
|
326 | 326 | break; |
327 | 327 | case 'id' : |
328 | 328 | echo $post->ID; |
329 | 329 | echo '<div class="hidden" id="wpinv_inline-' . $post->ID . '"> |
330 | - <div class="price">' . wpinv_get_item_price( $post->ID ) . '</div>'; |
|
331 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
332 | - echo '<div class="vat_rule">' . $wpinv_euvat->get_item_rule( $post->ID ) . '</div>'; |
|
330 | + <div class="price">' . wpinv_get_item_price($post->ID) . '</div>'; |
|
331 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
332 | + echo '<div class="vat_rule">' . $wpinv_euvat->get_item_rule($post->ID) . '</div>'; |
|
333 | 333 | } |
334 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
335 | - echo '<div class="vat_class">' . $wpinv_euvat->get_item_class( $post->ID ) . '</div>'; |
|
334 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
335 | + echo '<div class="vat_class">' . $wpinv_euvat->get_item_class($post->ID) . '</div>'; |
|
336 | 336 | } |
337 | - echo '<div class="type">' . wpinv_get_item_type( $post->ID ) . '</div> |
|
337 | + echo '<div class="type">' . wpinv_get_item_type($post->ID) . '</div> |
|
338 | 338 | </div>'; |
339 | 339 | break; |
340 | 340 | } |
341 | 341 | |
342 | - do_action( 'wpinv_items_table_column_item_' . $column, $wpi_item, $post ); |
|
342 | + do_action('wpinv_items_table_column_item_' . $column, $wpi_item, $post); |
|
343 | 343 | } |
344 | -add_action( 'manage_wpi_item_posts_custom_column', 'wpinv_items_table_custom_column' ); |
|
344 | +add_action('manage_wpi_item_posts_custom_column', 'wpinv_items_table_custom_column'); |
|
345 | 345 | |
346 | 346 | function wpinv_add_items_filters() { |
347 | 347 | global $wpinv_euvat, $typenow; |
348 | 348 | |
349 | 349 | // Checks if the current post type is 'item' |
350 | - if ( $typenow == 'wpi_item') { |
|
351 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
350 | + if ($typenow == 'wpi_item') { |
|
351 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
352 | 352 | |
353 | 353 | // Sanitize selected vat rule. |
354 | - $vat_rule = ''; |
|
355 | - if( isset( $_GET['vat_rule'] ) && array_key_exists( $_GET['type'], $wpinv_euvat->get_rules() ) ) { |
|
356 | - $class = $_GET['type']; |
|
354 | + $vat_rule = ''; |
|
355 | + if (isset($_GET['vat_rule']) && array_key_exists($_GET['type'], $wpinv_euvat->get_rules())) { |
|
356 | + $class = $_GET['type']; |
|
357 | 357 | } |
358 | 358 | |
359 | - echo wpinv_html_select( array( |
|
360 | - 'options' => array_merge( array( '' => __( 'All VAT rules', 'invoicing' ) ), $wpinv_euvat->get_rules() ), |
|
359 | + echo wpinv_html_select(array( |
|
360 | + 'options' => array_merge(array('' => __('All VAT rules', 'invoicing')), $wpinv_euvat->get_rules()), |
|
361 | 361 | 'name' => 'vat_rule', |
362 | 362 | 'id' => 'vat_rule', |
363 | - 'selected' => ( isset( $_GET['vat_rule'] ) ? $_GET['vat_rule'] : '' ), |
|
363 | + 'selected' => (isset($_GET['vat_rule']) ? $_GET['vat_rule'] : ''), |
|
364 | 364 | 'show_option_all' => false, |
365 | 365 | 'show_option_none' => false, |
366 | 366 | 'class' => 'gdmbx2-text-medium wpi_select2', |
367 | - 'placeholder' => __( 'Select VAT rule', 'invoicing' ), |
|
368 | - ) ); |
|
367 | + 'placeholder' => __('Select VAT rule', 'invoicing'), |
|
368 | + )); |
|
369 | 369 | } |
370 | 370 | |
371 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
371 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
372 | 372 | |
373 | 373 | $classes = $wpinv_euvat->get_all_classes(); |
374 | 374 | |
375 | 375 | // Sanitize selected vat class. |
376 | 376 | $class = ''; |
377 | - if( isset( $_GET['vat_class'] ) && array_key_exists( $_GET['vat_class'], $classes ) ) { |
|
378 | - $class = $_GET['vat_class']; |
|
377 | + if (isset($_GET['vat_class']) && array_key_exists($_GET['vat_class'], $classes)) { |
|
378 | + $class = $_GET['vat_class']; |
|
379 | 379 | } |
380 | 380 | |
381 | - echo wpinv_html_select( array( |
|
382 | - 'options' => array_merge( array( '' => __( 'All VAT classes', 'invoicing' ) ), $classes ), |
|
381 | + echo wpinv_html_select(array( |
|
382 | + 'options' => array_merge(array('' => __('All VAT classes', 'invoicing')), $classes), |
|
383 | 383 | 'name' => 'vat_class', |
384 | 384 | 'id' => 'vat_class', |
385 | 385 | 'selected' => $class, |
386 | 386 | 'show_option_all' => false, |
387 | 387 | 'show_option_none' => false, |
388 | 388 | 'class' => 'gdmbx2-text-medium wpi_select2', |
389 | - 'placeholder' => __( 'Select VAT class', 'invoicing' ), |
|
390 | - ) ); |
|
389 | + 'placeholder' => __('Select VAT class', 'invoicing'), |
|
390 | + )); |
|
391 | 391 | } |
392 | 392 | |
393 | 393 | // Sanitize selected item type. |
394 | - $type = ''; |
|
395 | - if( isset( $_GET['type'] ) && array_key_exists( $_GET['type'], wpinv_get_item_types() ) ) { |
|
396 | - $class = $_GET['type']; |
|
394 | + $type = ''; |
|
395 | + if (isset($_GET['type']) && array_key_exists($_GET['type'], wpinv_get_item_types())) { |
|
396 | + $class = $_GET['type']; |
|
397 | 397 | } |
398 | 398 | |
399 | - echo wpinv_html_select( array( |
|
400 | - 'options' => array_merge( array( '' => __( 'All item types', 'invoicing' ) ), wpinv_get_item_types() ), |
|
399 | + echo wpinv_html_select(array( |
|
400 | + 'options' => array_merge(array('' => __('All item types', 'invoicing')), wpinv_get_item_types()), |
|
401 | 401 | 'name' => 'type', |
402 | 402 | 'id' => 'type', |
403 | 403 | 'selected' => $type, |
404 | 404 | 'show_option_all' => false, |
405 | 405 | 'show_option_none' => false, |
406 | 406 | 'class' => 'gdmbx2-text-medium', |
407 | - ) ); |
|
407 | + )); |
|
408 | 408 | |
409 | - if ( isset( $_REQUEST['all_posts'] ) && '1' === $_REQUEST['all_posts'] ) { |
|
409 | + if (isset($_REQUEST['all_posts']) && '1' === $_REQUEST['all_posts']) { |
|
410 | 410 | echo '<input type="hidden" name="all_posts" value="1" />'; |
411 | 411 | } |
412 | 412 | } |
413 | 413 | } |
414 | -add_action( 'restrict_manage_posts', 'wpinv_add_items_filters', 100 ); |
|
414 | +add_action('restrict_manage_posts', 'wpinv_add_items_filters', 100); |
|
415 | 415 | |
416 | -function wpinv_send_invoice_after_save( $invoice ) { |
|
417 | - if ( empty( $_POST['wpi_save_send'] ) ) { |
|
416 | +function wpinv_send_invoice_after_save($invoice) { |
|
417 | + if (empty($_POST['wpi_save_send'])) { |
|
418 | 418 | return; |
419 | 419 | } |
420 | 420 | |
421 | - if ( !empty( $invoice->ID ) && !empty( $invoice->post_type ) && 'wpi_invoice' == $invoice->post_type ) { |
|
422 | - wpinv_user_invoice_notification( $invoice->ID ); |
|
421 | + if (!empty($invoice->ID) && !empty($invoice->post_type) && 'wpi_invoice' == $invoice->post_type) { |
|
422 | + wpinv_user_invoice_notification($invoice->ID); |
|
423 | 423 | } |
424 | 424 | } |
425 | -add_action( 'wpinv_invoice_metabox_saved', 'wpinv_send_invoice_after_save', 100, 1 ); |
|
425 | +add_action('wpinv_invoice_metabox_saved', 'wpinv_send_invoice_after_save', 100, 1); |
|
426 | 426 | |
427 | -function wpinv_send_register_new_user( $data, $postarr ) { |
|
428 | - if ( wpinv_current_user_can_manage_invoicing() && !empty( $data['post_type'] ) && ( 'wpi_invoice' == $data['post_type'] || 'wpi_quote' == $data['post_type'] ) ) { |
|
429 | - $is_new_user = !empty( $postarr['wpinv_new_user'] ) ? true : false; |
|
430 | - $email = !empty( $postarr['wpinv_email'] ) && $postarr['wpinv_email'] && is_email( $postarr['wpinv_email'] ) ? $postarr['wpinv_email'] : NULL; |
|
427 | +function wpinv_send_register_new_user($data, $postarr) { |
|
428 | + if (wpinv_current_user_can_manage_invoicing() && !empty($data['post_type']) && ('wpi_invoice' == $data['post_type'] || 'wpi_quote' == $data['post_type'])) { |
|
429 | + $is_new_user = !empty($postarr['wpinv_new_user']) ? true : false; |
|
430 | + $email = !empty($postarr['wpinv_email']) && $postarr['wpinv_email'] && is_email($postarr['wpinv_email']) ? $postarr['wpinv_email'] : NULL; |
|
431 | 431 | |
432 | - if ( $is_new_user && $email && !email_exists( $email ) ) { |
|
433 | - $first_name = !empty( $postarr['wpinv_first_name'] ) ? sanitize_text_field( $postarr['wpinv_first_name'] ) : ''; |
|
434 | - $last_name = !empty( $postarr['wpinv_last_name'] ) ? sanitize_text_field( $postarr['wpinv_last_name'] ) : ''; |
|
435 | - $display_name = $first_name || $last_name ? trim( $first_name . ' ' . $last_name ) : ''; |
|
436 | - $user_nicename = $display_name ? trim( $display_name ) : $email; |
|
437 | - $user_company = !empty( $postarr['wpinv_company'] ) ? sanitize_text_field( $postarr['wpinv_company'] ) : ''; |
|
432 | + if ($is_new_user && $email && !email_exists($email)) { |
|
433 | + $first_name = !empty($postarr['wpinv_first_name']) ? sanitize_text_field($postarr['wpinv_first_name']) : ''; |
|
434 | + $last_name = !empty($postarr['wpinv_last_name']) ? sanitize_text_field($postarr['wpinv_last_name']) : ''; |
|
435 | + $display_name = $first_name || $last_name ? trim($first_name . ' ' . $last_name) : ''; |
|
436 | + $user_nicename = $display_name ? trim($display_name) : $email; |
|
437 | + $user_company = !empty($postarr['wpinv_company']) ? sanitize_text_field($postarr['wpinv_company']) : ''; |
|
438 | 438 | |
439 | - $user_login = sanitize_user( str_replace( ' ', '', $display_name ), true ); |
|
440 | - if ( !( validate_username( $user_login ) && !username_exists( $user_login ) ) ) { |
|
439 | + $user_login = sanitize_user(str_replace(' ', '', $display_name), true); |
|
440 | + if (!(validate_username($user_login) && !username_exists($user_login))) { |
|
441 | 441 | $new_user_login = strstr($email, '@', true); |
442 | - if ( validate_username( $user_login ) && username_exists( $user_login ) ) { |
|
443 | - $user_login = sanitize_user($new_user_login, true ); |
|
442 | + if (validate_username($user_login) && username_exists($user_login)) { |
|
443 | + $user_login = sanitize_user($new_user_login, true); |
|
444 | 444 | } |
445 | - if ( validate_username( $user_login ) && username_exists( $user_login ) ) { |
|
446 | - $user_append_text = rand(10,1000); |
|
447 | - $user_login = sanitize_user($new_user_login.$user_append_text, true ); |
|
445 | + if (validate_username($user_login) && username_exists($user_login)) { |
|
446 | + $user_append_text = rand(10, 1000); |
|
447 | + $user_login = sanitize_user($new_user_login . $user_append_text, true); |
|
448 | 448 | } |
449 | 449 | |
450 | - if ( !( validate_username( $user_login ) && !username_exists( $user_login ) ) ) { |
|
450 | + if (!(validate_username($user_login) && !username_exists($user_login))) { |
|
451 | 451 | $user_login = $email; |
452 | 452 | } |
453 | 453 | } |
454 | 454 | |
455 | 455 | $userdata = array( |
456 | 456 | 'user_login' => $user_login, |
457 | - 'user_pass' => wp_generate_password( 12, false ), |
|
458 | - 'user_email' => sanitize_text_field( $email ), |
|
457 | + 'user_pass' => wp_generate_password(12, false), |
|
458 | + 'user_email' => sanitize_text_field($email), |
|
459 | 459 | 'first_name' => $first_name, |
460 | 460 | 'last_name' => $last_name, |
461 | - 'user_nicename' => wpinv_utf8_substr( $user_nicename, 0, 50 ), |
|
461 | + 'user_nicename' => wpinv_utf8_substr($user_nicename, 0, 50), |
|
462 | 462 | 'nickname' => $display_name, |
463 | 463 | 'display_name' => $display_name, |
464 | 464 | ); |
465 | 465 | |
466 | - $userdata = apply_filters( 'wpinv_register_new_user_data', $userdata ); |
|
466 | + $userdata = apply_filters('wpinv_register_new_user_data', $userdata); |
|
467 | 467 | |
468 | - $new_user_id = wp_insert_user( $userdata ); |
|
468 | + $new_user_id = wp_insert_user($userdata); |
|
469 | 469 | |
470 | - if ( !is_wp_error( $new_user_id ) ) { |
|
470 | + if (!is_wp_error($new_user_id)) { |
|
471 | 471 | $data['post_author'] = $new_user_id; |
472 | 472 | $_POST['post_author'] = $new_user_id; |
473 | 473 | $_POST['post_author_override'] = $new_user_id; |
@@ -488,72 +488,72 @@ discard block |
||
488 | 488 | |
489 | 489 | $meta = array(); |
490 | 490 | ///$meta['_wpinv_user_id'] = $new_user_id; |
491 | - foreach ( $meta_fields as $field ) { |
|
492 | - $meta['_wpinv_' . $field] = isset( $postarr['wpinv_' . $field] ) ? sanitize_text_field( $postarr['wpinv_' . $field] ) : ''; |
|
491 | + foreach ($meta_fields as $field) { |
|
492 | + $meta['_wpinv_' . $field] = isset($postarr['wpinv_' . $field]) ? sanitize_text_field($postarr['wpinv_' . $field]) : ''; |
|
493 | 493 | } |
494 | 494 | |
495 | - $meta = apply_filters( 'wpinv_register_new_user_meta', $meta, $new_user_id ); |
|
495 | + $meta = apply_filters('wpinv_register_new_user_meta', $meta, $new_user_id); |
|
496 | 496 | |
497 | 497 | // Update user meta. |
498 | - foreach ( $meta as $key => $value ) { |
|
499 | - update_user_meta( $new_user_id, $key, $value ); |
|
498 | + foreach ($meta as $key => $value) { |
|
499 | + update_user_meta($new_user_id, $key, $value); |
|
500 | 500 | } |
501 | 501 | |
502 | - if ( function_exists( 'wp_send_new_user_notifications' ) ) { |
|
502 | + if (function_exists('wp_send_new_user_notifications')) { |
|
503 | 503 | // Send email notifications related to the creation of new user. |
504 | - wp_send_new_user_notifications( $new_user_id, 'user' ); |
|
504 | + wp_send_new_user_notifications($new_user_id, 'user'); |
|
505 | 505 | } |
506 | 506 | } else { |
507 | - wpinv_error_log( $new_user_id->get_error_message(), 'Invoice add new user', __FILE__, __LINE__ ); |
|
507 | + wpinv_error_log($new_user_id->get_error_message(), 'Invoice add new user', __FILE__, __LINE__); |
|
508 | 508 | } |
509 | 509 | } |
510 | 510 | } |
511 | 511 | |
512 | 512 | return $data; |
513 | 513 | } |
514 | -add_filter( 'wp_insert_post_data', 'wpinv_send_register_new_user', 10, 2 ); |
|
514 | +add_filter('wp_insert_post_data', 'wpinv_send_register_new_user', 10, 2); |
|
515 | 515 | |
516 | -function wpinv_show_recurring_supported_gateways( $item_ID ) { |
|
516 | +function wpinv_show_recurring_supported_gateways($item_ID) { |
|
517 | 517 | $all_gateways = wpinv_get_payment_gateways(); |
518 | 518 | |
519 | - if ( !empty( $all_gateways ) ) { |
|
519 | + if (!empty($all_gateways)) { |
|
520 | 520 | $gateways = array(); |
521 | 521 | |
522 | - foreach ( $all_gateways as $key => $gateway ) { |
|
523 | - if ( wpinv_gateway_support_subscription( $key ) ) { |
|
522 | + foreach ($all_gateways as $key => $gateway) { |
|
523 | + if (wpinv_gateway_support_subscription($key)) { |
|
524 | 524 | $gateways[] = $gateway['admin_label']; |
525 | 525 | } |
526 | 526 | } |
527 | 527 | |
528 | - if ( !empty( $gateways ) ) { |
|
528 | + if (!empty($gateways)) { |
|
529 | 529 | ?> |
530 | - <span class="description"><?php echo wp_sprintf( __( 'Recurring payments only supported by: %s', 'invoicing' ), implode( ', ', $gateways ) ); ?></span> |
|
530 | + <span class="description"><?php echo wp_sprintf(__('Recurring payments only supported by: %s', 'invoicing'), implode(', ', $gateways)); ?></span> |
|
531 | 531 | <?php |
532 | 532 | } |
533 | 533 | } |
534 | 534 | } |
535 | -add_action( 'wpinv_item_price_field', 'wpinv_show_recurring_supported_gateways', -10, 1 ); |
|
535 | +add_action('wpinv_item_price_field', 'wpinv_show_recurring_supported_gateways', -10, 1); |
|
536 | 536 | |
537 | -function wpinv_post_updated_messages( $messages ) { |
|
537 | +function wpinv_post_updated_messages($messages) { |
|
538 | 538 | global $post, $post_ID; |
539 | 539 | |
540 | 540 | $messages['wpi_discount'] = array( |
541 | 541 | 0 => '', |
542 | - 1 => __( 'Discount updated.', 'invoicing' ), |
|
543 | - 2 => __( 'Custom field updated.', 'invoicing' ), |
|
544 | - 3 => __( 'Custom field deleted.', 'invoicing' ), |
|
545 | - 4 => __( 'Discount updated.', 'invoicing' ), |
|
546 | - 5 => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Discount restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false, |
|
547 | - 6 => __( 'Discount updated.', 'invoicing' ), |
|
548 | - 7 => __( 'Discount saved.', 'invoicing' ), |
|
549 | - 8 => __( 'Discount submitted.', 'invoicing' ), |
|
550 | - 9 => wp_sprintf( __( 'Discount scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ), |
|
551 | - 10 => __( 'Discount draft updated.', 'invoicing' ), |
|
542 | + 1 => __('Discount updated.', 'invoicing'), |
|
543 | + 2 => __('Custom field updated.', 'invoicing'), |
|
544 | + 3 => __('Custom field deleted.', 'invoicing'), |
|
545 | + 4 => __('Discount updated.', 'invoicing'), |
|
546 | + 5 => isset($_GET['revision']) ? wp_sprintf(__('Discount restored to revision from %s', 'invoicing'), wp_post_revision_title((int) $_GET['revision'], false)) : false, |
|
547 | + 6 => __('Discount updated.', 'invoicing'), |
|
548 | + 7 => __('Discount saved.', 'invoicing'), |
|
549 | + 8 => __('Discount submitted.', 'invoicing'), |
|
550 | + 9 => wp_sprintf(__('Discount scheduled for: <strong>%1$s</strong>.', 'invoicing'), date_i18n(__('M j, Y @ G:i', 'invoicing'), strtotime($post->post_date))), |
|
551 | + 10 => __('Discount draft updated.', 'invoicing'), |
|
552 | 552 | ); |
553 | 553 | |
554 | 554 | return $messages; |
555 | 555 | } |
556 | -add_filter( 'post_updated_messages', 'wpinv_post_updated_messages', 10, 1 ); |
|
556 | +add_filter('post_updated_messages', 'wpinv_post_updated_messages', 10, 1); |
|
557 | 557 | |
558 | 558 | add_action('admin_init', 'admin_init_example_type'); |
559 | 559 | |
@@ -563,7 +563,7 @@ discard block |
||
563 | 563 | function admin_init_example_type() { |
564 | 564 | global $typenow; |
565 | 565 | |
566 | - if ($typenow === 'wpi_invoice' || $typenow === 'wpi_quote' ) { |
|
566 | + if ($typenow === 'wpi_invoice' || $typenow === 'wpi_quote') { |
|
567 | 567 | add_filter('posts_search', 'posts_search_example_type', 10, 2); |
568 | 568 | } |
569 | 569 | } |
@@ -578,9 +578,9 @@ discard block |
||
578 | 578 | global $wpdb; |
579 | 579 | |
580 | 580 | if ($query->is_main_query() && !empty($query->query['s'])) { |
581 | - $conditions_str = "{$wpdb->posts}.post_author IN ( SELECT ID FROM {$wpdb->users} WHERE user_email LIKE '%" . esc_sql( $query->query['s'] ) . "%' )"; |
|
582 | - if ( ! empty( $search ) ) { |
|
583 | - $search = preg_replace( '/^ AND /', '', $search ); |
|
581 | + $conditions_str = "{$wpdb->posts}.post_author IN ( SELECT ID FROM {$wpdb->users} WHERE user_email LIKE '%" . esc_sql($query->query['s']) . "%' )"; |
|
582 | + if (!empty($search)) { |
|
583 | + $search = preg_replace('/^ AND /', '', $search); |
|
584 | 584 | $search = " AND ( {$search} OR ( {$conditions_str} ) )"; |
585 | 585 | } else { |
586 | 586 | $search = " AND ( {$conditions_str} )"; |
@@ -590,9 +590,9 @@ discard block |
||
590 | 590 | return $search; |
591 | 591 | } |
592 | 592 | |
593 | -add_action( 'admin_init', 'wpinv_reset_invoice_count' ); |
|
594 | -function wpinv_reset_invoice_count(){ |
|
595 | - if(isset($_GET['reset_invoice_count']) && 1 == $_GET['reset_invoice_count'] && isset($_GET['_nonce']) && wp_verify_nonce($_GET['_nonce'], 'reset_invoice_count')) { |
|
593 | +add_action('admin_init', 'wpinv_reset_invoice_count'); |
|
594 | +function wpinv_reset_invoice_count() { |
|
595 | + if (isset($_GET['reset_invoice_count']) && 1 == $_GET['reset_invoice_count'] && isset($_GET['_nonce']) && wp_verify_nonce($_GET['_nonce'], 'reset_invoice_count')) { |
|
596 | 596 | wpinv_update_option('invoice_sequence_start', 1); |
597 | 597 | delete_option('wpinv_last_invoice_number'); |
598 | 598 | $url = add_query_arg(array('reset_invoice_done' => 1)); |
@@ -603,8 +603,8 @@ discard block |
||
603 | 603 | } |
604 | 604 | |
605 | 605 | add_action('admin_notices', 'wpinv_invoice_count_reset_message'); |
606 | -function wpinv_invoice_count_reset_message(){ |
|
607 | - if(isset($_GET['reset_invoice_done']) && 1 == $_GET['reset_invoice_done']) { |
|
606 | +function wpinv_invoice_count_reset_message() { |
|
607 | + if (isset($_GET['reset_invoice_done']) && 1 == $_GET['reset_invoice_done']) { |
|
608 | 608 | $notice = __('Invoice number sequence reset successfully.', 'invoicing'); |
609 | 609 | ?> |
610 | 610 | <div class="notice notice-success is-dismissible"> |
@@ -7,206 +7,206 @@ discard block |
||
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 | 14 | function wpinv_get_payment_gateways() { |
15 | 15 | // Default, built-in gateways |
16 | 16 | $gateways = array( |
17 | 17 | 'paypal' => array( |
18 | - 'admin_label' => __( 'PayPal Standard', 'invoicing' ), |
|
19 | - 'checkout_label' => __( 'PayPal Standard', 'invoicing' ), |
|
18 | + 'admin_label' => __('PayPal Standard', 'invoicing'), |
|
19 | + 'checkout_label' => __('PayPal Standard', 'invoicing'), |
|
20 | 20 | 'ordering' => 1, |
21 | 21 | ), |
22 | 22 | 'authorizenet' => array( |
23 | - 'admin_label' => __( 'Authorize.Net (AIM)', 'invoicing' ), |
|
24 | - 'checkout_label' => __( 'Authorize.Net - Credit Card / Debit Card', 'invoicing' ), |
|
23 | + 'admin_label' => __('Authorize.Net (AIM)', 'invoicing'), |
|
24 | + 'checkout_label' => __('Authorize.Net - Credit Card / Debit Card', 'invoicing'), |
|
25 | 25 | 'ordering' => 4, |
26 | 26 | ), |
27 | 27 | 'worldpay' => array( |
28 | - 'admin_label' => __( 'Worldpay', 'invoicing' ), |
|
29 | - 'checkout_label' => __( 'Worldpay - Credit Card / Debit Card', 'invoicing' ), |
|
28 | + 'admin_label' => __('Worldpay', 'invoicing'), |
|
29 | + 'checkout_label' => __('Worldpay - Credit Card / Debit Card', 'invoicing'), |
|
30 | 30 | 'ordering' => 5, |
31 | 31 | ), |
32 | 32 | 'bank_transfer' => array( |
33 | - 'admin_label' => __( 'Pre Bank Transfer', 'invoicing' ), |
|
34 | - 'checkout_label' => __( 'Pre Bank Transfer', 'invoicing' ), |
|
33 | + 'admin_label' => __('Pre Bank Transfer', 'invoicing'), |
|
34 | + 'checkout_label' => __('Pre Bank Transfer', 'invoicing'), |
|
35 | 35 | 'ordering' => 11, |
36 | 36 | ), |
37 | 37 | 'manual' => array( |
38 | - 'admin_label' => __( 'Test Payment', 'invoicing' ), |
|
39 | - 'checkout_label' => __( 'Test Payment', 'invoicing' ), |
|
38 | + 'admin_label' => __('Test Payment', 'invoicing'), |
|
39 | + 'checkout_label' => __('Test Payment', 'invoicing'), |
|
40 | 40 | 'ordering' => 12, |
41 | 41 | ), |
42 | 42 | ); |
43 | 43 | |
44 | - return apply_filters( 'wpinv_payment_gateways', $gateways ); |
|
44 | + return apply_filters('wpinv_payment_gateways', $gateways); |
|
45 | 45 | } |
46 | 46 | |
47 | -function wpinv_payment_gateway_titles( $all_gateways ) { |
|
47 | +function wpinv_payment_gateway_titles($all_gateways) { |
|
48 | 48 | global $wpinv_options; |
49 | 49 | |
50 | 50 | $gateways = array(); |
51 | - foreach ( $all_gateways as $key => $gateway ) { |
|
52 | - if ( !empty( $wpinv_options[$key . '_title'] ) ) { |
|
53 | - $all_gateways[$key]['checkout_label'] = __( $wpinv_options[$key . '_title'], 'invoicing' ); |
|
51 | + foreach ($all_gateways as $key => $gateway) { |
|
52 | + if (!empty($wpinv_options[$key . '_title'])) { |
|
53 | + $all_gateways[$key]['checkout_label'] = __($wpinv_options[$key . '_title'], 'invoicing'); |
|
54 | 54 | } |
55 | 55 | |
56 | - $gateways[$key] = isset( $wpinv_options[$key . '_ordering'] ) ? $wpinv_options[$key . '_ordering'] : ( isset( $gateway['ordering'] ) ? $gateway['ordering'] : '' ); |
|
56 | + $gateways[$key] = isset($wpinv_options[$key . '_ordering']) ? $wpinv_options[$key . '_ordering'] : (isset($gateway['ordering']) ? $gateway['ordering'] : ''); |
|
57 | 57 | } |
58 | 58 | |
59 | - asort( $gateways ); |
|
59 | + asort($gateways); |
|
60 | 60 | |
61 | - foreach ( $gateways as $gateway => $key ) { |
|
61 | + foreach ($gateways as $gateway => $key) { |
|
62 | 62 | $gateways[$gateway] = $all_gateways[$gateway]; |
63 | 63 | } |
64 | 64 | |
65 | 65 | return $gateways; |
66 | 66 | } |
67 | -add_filter( 'wpinv_payment_gateways', 'wpinv_payment_gateway_titles', 1000, 1 ); |
|
67 | +add_filter('wpinv_payment_gateways', 'wpinv_payment_gateway_titles', 1000, 1); |
|
68 | 68 | |
69 | -function wpinv_get_enabled_payment_gateways( $sort = false ) { |
|
69 | +function wpinv_get_enabled_payment_gateways($sort = false) { |
|
70 | 70 | $gateways = wpinv_get_payment_gateways(); |
71 | - $enabled = wpinv_get_option( 'gateways', false ); |
|
71 | + $enabled = wpinv_get_option('gateways', false); |
|
72 | 72 | |
73 | 73 | $gateway_list = array(); |
74 | 74 | |
75 | - foreach ( $gateways as $key => $gateway ) { |
|
76 | - if ( isset( $enabled[ $key ] ) && $enabled[ $key ] == 1 ) { |
|
77 | - $gateway_list[ $key ] = $gateway; |
|
75 | + foreach ($gateways as $key => $gateway) { |
|
76 | + if (isset($enabled[$key]) && $enabled[$key] == 1) { |
|
77 | + $gateway_list[$key] = $gateway; |
|
78 | 78 | } |
79 | 79 | } |
80 | 80 | |
81 | - if ( true === $sort ) { |
|
82 | - uasort( $gateway_list, 'wpinv_sort_gateway_order' ); |
|
81 | + if (true === $sort) { |
|
82 | + uasort($gateway_list, 'wpinv_sort_gateway_order'); |
|
83 | 83 | |
84 | 84 | // Reorder our gateways so the default is first |
85 | 85 | $default_gateway_id = wpinv_get_default_gateway(); |
86 | 86 | |
87 | - if ( wpinv_is_gateway_active( $default_gateway_id ) ) { |
|
88 | - $default_gateway = array( $default_gateway_id => $gateway_list[ $default_gateway_id ] ); |
|
89 | - unset( $gateway_list[ $default_gateway_id ] ); |
|
87 | + if (wpinv_is_gateway_active($default_gateway_id)) { |
|
88 | + $default_gateway = array($default_gateway_id => $gateway_list[$default_gateway_id]); |
|
89 | + unset($gateway_list[$default_gateway_id]); |
|
90 | 90 | |
91 | - $gateway_list = array_merge( $default_gateway, $gateway_list ); |
|
91 | + $gateway_list = array_merge($default_gateway, $gateway_list); |
|
92 | 92 | } |
93 | 93 | } |
94 | 94 | |
95 | - return apply_filters( 'wpinv_enabled_payment_gateways', $gateway_list ); |
|
95 | + return apply_filters('wpinv_enabled_payment_gateways', $gateway_list); |
|
96 | 96 | } |
97 | 97 | |
98 | -function wpinv_sort_gateway_order( $a, $b ) { |
|
98 | +function wpinv_sort_gateway_order($a, $b) { |
|
99 | 99 | return $a['ordering'] - $b['ordering']; |
100 | 100 | } |
101 | 101 | |
102 | -function wpinv_is_gateway_active( $gateway ) { |
|
102 | +function wpinv_is_gateway_active($gateway) { |
|
103 | 103 | $gateways = wpinv_get_enabled_payment_gateways(); |
104 | 104 | |
105 | - $ret = is_array($gateways) && $gateway ? array_key_exists( $gateway, $gateways ) : false; |
|
105 | + $ret = is_array($gateways) && $gateway ? array_key_exists($gateway, $gateways) : false; |
|
106 | 106 | |
107 | - return apply_filters( 'wpinv_is_gateway_active', $ret, $gateway, $gateways ); |
|
107 | + return apply_filters('wpinv_is_gateway_active', $ret, $gateway, $gateways); |
|
108 | 108 | } |
109 | 109 | |
110 | 110 | function wpinv_get_default_gateway() { |
111 | - $default = wpinv_get_option( 'default_gateway', 'paypal' ); |
|
111 | + $default = wpinv_get_option('default_gateway', 'paypal'); |
|
112 | 112 | |
113 | - if ( !wpinv_is_gateway_active( $default ) ) { |
|
113 | + if (!wpinv_is_gateway_active($default)) { |
|
114 | 114 | $gateways = wpinv_get_enabled_payment_gateways(); |
115 | - $gateways = array_keys( $gateways ); |
|
116 | - $default = reset( $gateways ); |
|
115 | + $gateways = array_keys($gateways); |
|
116 | + $default = reset($gateways); |
|
117 | 117 | } |
118 | 118 | |
119 | - return apply_filters( 'wpinv_default_gateway', $default ); |
|
119 | + return apply_filters('wpinv_default_gateway', $default); |
|
120 | 120 | } |
121 | 121 | |
122 | -function wpinv_get_gateway_admin_label( $gateway ) { |
|
122 | +function wpinv_get_gateway_admin_label($gateway) { |
|
123 | 123 | $gateways = wpinv_get_payment_gateways(); |
124 | - $label = isset( $gateways[ $gateway ] ) ? $gateways[ $gateway ]['admin_label'] : $gateway; |
|
125 | - $payment = isset( $_GET['id'] ) ? absint( $_GET['id'] ) : false; |
|
124 | + $label = isset($gateways[$gateway]) ? $gateways[$gateway]['admin_label'] : $gateway; |
|
125 | + $payment = isset($_GET['id']) ? absint($_GET['id']) : false; |
|
126 | 126 | |
127 | - if( $gateway == 'manual' && $payment ) { |
|
128 | - if( !( (float)wpinv_payment_total( $payment ) > 0 ) ) { |
|
129 | - $label = __( 'Free Purchase', 'invoicing' ); |
|
127 | + if ($gateway == 'manual' && $payment) { |
|
128 | + if (!((float) wpinv_payment_total($payment) > 0)) { |
|
129 | + $label = __('Free Purchase', 'invoicing'); |
|
130 | 130 | } |
131 | 131 | } |
132 | 132 | |
133 | - return apply_filters( 'wpinv_gateway_admin_label', $label, $gateway ); |
|
133 | + return apply_filters('wpinv_gateway_admin_label', $label, $gateway); |
|
134 | 134 | } |
135 | 135 | |
136 | -function wpinv_get_gateway_description( $gateway ) { |
|
136 | +function wpinv_get_gateway_description($gateway) { |
|
137 | 137 | global $wpinv_options; |
138 | 138 | |
139 | - $description = isset( $wpinv_options[$gateway . '_desc'] ) ? $wpinv_options[$gateway . '_desc'] : ''; |
|
139 | + $description = isset($wpinv_options[$gateway . '_desc']) ? $wpinv_options[$gateway . '_desc'] : ''; |
|
140 | 140 | |
141 | - return apply_filters( 'wpinv_gateway_description', $description, $gateway ); |
|
141 | + return apply_filters('wpinv_gateway_description', $description, $gateway); |
|
142 | 142 | } |
143 | 143 | |
144 | -function wpinv_get_gateway_button_label( $gateway ) { |
|
145 | - return apply_filters( 'wpinv_gateway_' . $gateway . '_button_label', '' ); |
|
144 | +function wpinv_get_gateway_button_label($gateway) { |
|
145 | + return apply_filters('wpinv_gateway_' . $gateway . '_button_label', ''); |
|
146 | 146 | } |
147 | 147 | |
148 | -function wpinv_get_gateway_checkout_label( $gateway ) { |
|
148 | +function wpinv_get_gateway_checkout_label($gateway) { |
|
149 | 149 | $gateways = wpinv_get_payment_gateways(); |
150 | - $label = isset( $gateways[ $gateway ] ) ? $gateways[ $gateway ]['checkout_label'] : $gateway; |
|
150 | + $label = isset($gateways[$gateway]) ? $gateways[$gateway]['checkout_label'] : $gateway; |
|
151 | 151 | |
152 | - if( $gateway == 'manual' ) { |
|
153 | - $label = __( 'Manual Payment', 'invoicing' ); |
|
152 | + if ($gateway == 'manual') { |
|
153 | + $label = __('Manual Payment', 'invoicing'); |
|
154 | 154 | } |
155 | 155 | |
156 | - return apply_filters( 'wpinv_gateway_checkout_label', $label, $gateway ); |
|
156 | + return apply_filters('wpinv_gateway_checkout_label', $label, $gateway); |
|
157 | 157 | } |
158 | 158 | |
159 | -function wpinv_settings_sections_gateways( $settings ) { |
|
159 | +function wpinv_settings_sections_gateways($settings) { |
|
160 | 160 | $gateways = wpinv_get_payment_gateways(); |
161 | 161 | |
162 | 162 | if (!empty($gateways)) { |
163 | - foreach ($gateways as $key => $gateway) { |
|
163 | + foreach ($gateways as $key => $gateway) { |
|
164 | 164 | $settings[$key] = $gateway['admin_label']; |
165 | 165 | } |
166 | 166 | } |
167 | 167 | |
168 | 168 | return $settings; |
169 | 169 | } |
170 | -add_filter( 'wpinv_settings_sections_gateways', 'wpinv_settings_sections_gateways', 10, 1 ); |
|
170 | +add_filter('wpinv_settings_sections_gateways', 'wpinv_settings_sections_gateways', 10, 1); |
|
171 | 171 | |
172 | -function wpinv_settings_gateways( $settings ) { |
|
172 | +function wpinv_settings_gateways($settings) { |
|
173 | 173 | $gateways = wpinv_get_payment_gateways(); |
174 | 174 | |
175 | 175 | if (!empty($gateways)) { |
176 | - foreach ($gateways as $key => $gateway) { |
|
176 | + foreach ($gateways as $key => $gateway) { |
|
177 | 177 | $setting = array(); |
178 | 178 | $setting[$key . '_header'] = array( |
179 | 179 | 'id' => 'gateway_header', |
180 | - 'name' => '<h3>' . wp_sprintf( __( '%s Settings', 'invoicing' ), $gateway['admin_label'] ) . '</h3>', |
|
180 | + 'name' => '<h3>' . wp_sprintf(__('%s Settings', 'invoicing'), $gateway['admin_label']) . '</h3>', |
|
181 | 181 | 'custom' => $key, |
182 | 182 | 'type' => 'gateway_header', |
183 | 183 | ); |
184 | 184 | $setting[$key . '_active'] = array( |
185 | 185 | 'id' => $key . '_active', |
186 | - 'name' => __( 'Active', 'invoicing' ), |
|
187 | - 'desc' => wp_sprintf( __( 'Enable %s', 'invoicing' ), $gateway['admin_label'] ), |
|
186 | + 'name' => __('Active', 'invoicing'), |
|
187 | + 'desc' => wp_sprintf(__('Enable %s', 'invoicing'), $gateway['admin_label']), |
|
188 | 188 | 'type' => 'checkbox', |
189 | 189 | ); |
190 | 190 | |
191 | 191 | $setting[$key . '_title'] = array( |
192 | 192 | 'id' => $key . '_title', |
193 | - 'name' => __( 'Title', 'invoicing' ), |
|
194 | - 'desc' => __( 'This controls the title which the user sees during checkout.', 'invoicing' ), |
|
193 | + 'name' => __('Title', 'invoicing'), |
|
194 | + 'desc' => __('This controls the title which the user sees during checkout.', 'invoicing'), |
|
195 | 195 | 'type' => 'text', |
196 | 196 | 'std' => isset($gateway['checkout_label']) ? $gateway['checkout_label'] : '' |
197 | 197 | ); |
198 | 198 | |
199 | 199 | $setting[$key . '_desc'] = array( |
200 | 200 | 'id' => $key . '_desc', |
201 | - 'name' => __( 'Description', 'invoicing' ), |
|
202 | - 'desc' => __( 'This controls the description which the user sees during checkout.', 'invoicing' ), |
|
201 | + 'name' => __('Description', 'invoicing'), |
|
202 | + 'desc' => __('This controls the description which the user sees during checkout.', 'invoicing'), |
|
203 | 203 | 'type' => 'text', |
204 | 204 | 'size' => 'large' |
205 | 205 | ); |
206 | 206 | |
207 | 207 | $setting[$key . '_ordering'] = array( |
208 | 208 | 'id' => $key . '_ordering', |
209 | - 'name' => __( 'Display Order', 'invoicing' ), |
|
209 | + 'name' => __('Display Order', 'invoicing'), |
|
210 | 210 | 'type' => 'number', |
211 | 211 | 'size' => 'small', |
212 | 212 | 'std' => isset($gateway['ordering']) ? $gateway['ordering'] : '10', |
@@ -215,8 +215,8 @@ discard block |
||
215 | 215 | 'step' => '1' |
216 | 216 | ); |
217 | 217 | |
218 | - $setting = apply_filters( 'wpinv_gateway_settings', $setting, $key ); |
|
219 | - $setting = apply_filters( 'wpinv_gateway_settings_' . $key, $setting ); |
|
218 | + $setting = apply_filters('wpinv_gateway_settings', $setting, $key); |
|
219 | + $setting = apply_filters('wpinv_gateway_settings_' . $key, $setting); |
|
220 | 220 | |
221 | 221 | $settings[$key] = $setting; |
222 | 222 | } |
@@ -224,106 +224,106 @@ discard block |
||
224 | 224 | |
225 | 225 | return $settings; |
226 | 226 | } |
227 | -add_filter( 'wpinv_settings_gateways', 'wpinv_settings_gateways', 10, 1 ); |
|
227 | +add_filter('wpinv_settings_gateways', 'wpinv_settings_gateways', 10, 1); |
|
228 | 228 | |
229 | -function wpinv_gateway_header_callback( $args ) { |
|
230 | - echo '<input type="hidden" id="wpinv_settings[save_gateway]" name="wpinv_settings[save_gateway]" value="' . esc_attr( $args['custom'] ) . '" />'; |
|
229 | +function wpinv_gateway_header_callback($args) { |
|
230 | + echo '<input type="hidden" id="wpinv_settings[save_gateway]" name="wpinv_settings[save_gateway]" value="' . esc_attr($args['custom']) . '" />'; |
|
231 | 231 | } |
232 | 232 | |
233 | -function wpinv_get_gateway_supports( $gateway ) { |
|
233 | +function wpinv_get_gateway_supports($gateway) { |
|
234 | 234 | $gateways = wpinv_get_enabled_payment_gateways(); |
235 | - $supports = isset( $gateways[ $gateway ]['supports'] ) ? $gateways[ $gateway ]['supports'] : array(); |
|
236 | - return apply_filters( 'wpinv_gateway_supports', $supports, $gateway ); |
|
235 | + $supports = isset($gateways[$gateway]['supports']) ? $gateways[$gateway]['supports'] : array(); |
|
236 | + return apply_filters('wpinv_gateway_supports', $supports, $gateway); |
|
237 | 237 | } |
238 | 238 | |
239 | -function wpinv_gateway_supports_buy_now( $gateway ) { |
|
240 | - $supports = wpinv_get_gateway_supports( $gateway ); |
|
241 | - $ret = in_array( 'buy_now', $supports ); |
|
242 | - return apply_filters( 'wpinv_gateway_supports_buy_now', $ret, $gateway ); |
|
239 | +function wpinv_gateway_supports_buy_now($gateway) { |
|
240 | + $supports = wpinv_get_gateway_supports($gateway); |
|
241 | + $ret = in_array('buy_now', $supports); |
|
242 | + return apply_filters('wpinv_gateway_supports_buy_now', $ret, $gateway); |
|
243 | 243 | } |
244 | 244 | |
245 | 245 | function wpinv_shop_supports_buy_now() { |
246 | 246 | $gateways = wpinv_get_enabled_payment_gateways(); |
247 | 247 | $ret = false; |
248 | 248 | |
249 | - if ( !wpinv_use_taxes() && $gateways ) { |
|
250 | - foreach ( $gateways as $gateway_id => $gateway ) { |
|
251 | - if ( wpinv_gateway_supports_buy_now( $gateway_id ) ) { |
|
249 | + if (!wpinv_use_taxes() && $gateways) { |
|
250 | + foreach ($gateways as $gateway_id => $gateway) { |
|
251 | + if (wpinv_gateway_supports_buy_now($gateway_id)) { |
|
252 | 252 | $ret = true; |
253 | 253 | break; |
254 | 254 | } |
255 | 255 | } |
256 | 256 | } |
257 | 257 | |
258 | - return apply_filters( 'wpinv_shop_supports_buy_now', $ret ); |
|
258 | + return apply_filters('wpinv_shop_supports_buy_now', $ret); |
|
259 | 259 | } |
260 | 260 | |
261 | -function wpinv_send_to_gateway( $gateway, $payment_data ) { |
|
262 | - $payment_data['gateway_nonce'] = wp_create_nonce( 'wpi-gateway' ); |
|
261 | +function wpinv_send_to_gateway($gateway, $payment_data) { |
|
262 | + $payment_data['gateway_nonce'] = wp_create_nonce('wpi-gateway'); |
|
263 | 263 | |
264 | 264 | // $gateway must match the ID used when registering the gateway |
265 | - do_action( 'wpinv_gateway_' . $gateway, $payment_data ); |
|
265 | + do_action('wpinv_gateway_' . $gateway, $payment_data); |
|
266 | 266 | } |
267 | 267 | |
268 | 268 | function wpinv_show_gateways() { |
269 | 269 | $gateways = wpinv_get_enabled_payment_gateways(); |
270 | 270 | $show_gateways = false; |
271 | 271 | |
272 | - $chosen_gateway = isset( $_GET['payment-mode'] ) ? preg_replace('/[^a-zA-Z0-9-_]+/', '', $_GET['payment-mode'] ) : false; |
|
272 | + $chosen_gateway = isset($_GET['payment-mode']) ? preg_replace('/[^a-zA-Z0-9-_]+/', '', $_GET['payment-mode']) : false; |
|
273 | 273 | |
274 | - if ( count( $gateways ) > 1 && empty( $chosen_gateway ) ) { |
|
274 | + if (count($gateways) > 1 && empty($chosen_gateway)) { |
|
275 | 275 | $show_gateways = true; |
276 | - if ( wpinv_get_cart_total() <= 0 ) { |
|
276 | + if (wpinv_get_cart_total() <= 0) { |
|
277 | 277 | $show_gateways = false; |
278 | 278 | } |
279 | 279 | } |
280 | 280 | |
281 | - if ( !$show_gateways && wpinv_cart_has_recurring_item() ) { |
|
281 | + if (!$show_gateways && wpinv_cart_has_recurring_item()) { |
|
282 | 282 | $show_gateways = true; |
283 | 283 | } |
284 | 284 | |
285 | - return apply_filters( 'wpinv_show_gateways', $show_gateways ); |
|
285 | + return apply_filters('wpinv_show_gateways', $show_gateways); |
|
286 | 286 | } |
287 | 287 | |
288 | -function wpinv_get_chosen_gateway( $invoice_id = 0 ) { |
|
289 | - $gateways = array_keys( wpinv_get_enabled_payment_gateways() ); |
|
288 | +function wpinv_get_chosen_gateway($invoice_id = 0) { |
|
289 | + $gateways = array_keys(wpinv_get_enabled_payment_gateways()); |
|
290 | 290 | |
291 | 291 | $chosen = false; |
292 | - if ( $invoice_id > 0 && $invoice = wpinv_get_invoice( $invoice_id ) ) { |
|
292 | + if ($invoice_id > 0 && $invoice = wpinv_get_invoice($invoice_id)) { |
|
293 | 293 | $chosen = $invoice->get_gateway(); |
294 | 294 | } |
295 | 295 | |
296 | - $chosen = isset( $_REQUEST['payment-mode'] ) ? sanitize_text_field( $_REQUEST['payment-mode'] ) : $chosen; |
|
296 | + $chosen = isset($_REQUEST['payment-mode']) ? sanitize_text_field($_REQUEST['payment-mode']) : $chosen; |
|
297 | 297 | |
298 | - if ( false !== $chosen ) { |
|
299 | - $chosen = preg_replace('/[^a-zA-Z0-9-_]+/', '', $chosen ); |
|
298 | + if (false !== $chosen) { |
|
299 | + $chosen = preg_replace('/[^a-zA-Z0-9-_]+/', '', $chosen); |
|
300 | 300 | } |
301 | 301 | |
302 | - if ( ! empty ( $chosen ) ) { |
|
303 | - $enabled_gateway = urldecode( $chosen ); |
|
304 | - } else if ( !empty( $invoice ) && (float)$invoice->get_subtotal() <= 0 ) { |
|
302 | + if (!empty ($chosen)) { |
|
303 | + $enabled_gateway = urldecode($chosen); |
|
304 | + } else if (!empty($invoice) && (float) $invoice->get_subtotal() <= 0) { |
|
305 | 305 | $enabled_gateway = 'manual'; |
306 | 306 | } else { |
307 | 307 | $enabled_gateway = wpinv_get_default_gateway(); |
308 | 308 | } |
309 | 309 | |
310 | - if ( !wpinv_is_gateway_active( $enabled_gateway ) && !empty( $gateways ) ) { |
|
311 | - if(wpinv_is_gateway_active( wpinv_get_default_gateway()) ){ |
|
310 | + if (!wpinv_is_gateway_active($enabled_gateway) && !empty($gateways)) { |
|
311 | + if (wpinv_is_gateway_active(wpinv_get_default_gateway())) { |
|
312 | 312 | $enabled_gateway = wpinv_get_default_gateway(); |
313 | - }else{ |
|
313 | + } else { |
|
314 | 314 | $enabled_gateway = $gateways[0]; |
315 | 315 | } |
316 | 316 | |
317 | 317 | } |
318 | 318 | |
319 | - return apply_filters( 'wpinv_chosen_gateway', $enabled_gateway ); |
|
319 | + return apply_filters('wpinv_chosen_gateway', $enabled_gateway); |
|
320 | 320 | } |
321 | 321 | |
322 | -function wpinv_record_gateway_error( $title = '', $message = '', $parent = 0 ) { |
|
323 | - return wpinv_error_log( $message, $title ); |
|
322 | +function wpinv_record_gateway_error($title = '', $message = '', $parent = 0) { |
|
323 | + return wpinv_error_log($message, $title); |
|
324 | 324 | } |
325 | 325 | |
326 | -function wpinv_count_sales_by_gateway( $gateway_id = 'paypal', $status = 'publish' ) { |
|
326 | +function wpinv_count_sales_by_gateway($gateway_id = 'paypal', $status = 'publish') { |
|
327 | 327 | $ret = 0; |
328 | 328 | $args = array( |
329 | 329 | 'meta_key' => '_wpinv_gateway', |
@@ -334,48 +334,48 @@ discard block |
||
334 | 334 | 'fields' => 'ids' |
335 | 335 | ); |
336 | 336 | |
337 | - $payments = new WP_Query( $args ); |
|
337 | + $payments = new WP_Query($args); |
|
338 | 338 | |
339 | - if( $payments ) |
|
339 | + if ($payments) |
|
340 | 340 | $ret = $payments->post_count; |
341 | 341 | return $ret; |
342 | 342 | } |
343 | 343 | |
344 | -function wpinv_settings_update_gateways( $input ) { |
|
344 | +function wpinv_settings_update_gateways($input) { |
|
345 | 345 | global $wpinv_options; |
346 | 346 | |
347 | - if ( !empty( $input['save_gateway'] ) ) { |
|
348 | - $gateways = wpinv_get_option( 'gateways', false ); |
|
347 | + if (!empty($input['save_gateway'])) { |
|
348 | + $gateways = wpinv_get_option('gateways', false); |
|
349 | 349 | $gateways = !empty($gateways) ? $gateways : array(); |
350 | 350 | $gateway = $input['save_gateway']; |
351 | 351 | |
352 | - if ( !empty( $input[$gateway . '_active'] ) ) { |
|
352 | + if (!empty($input[$gateway . '_active'])) { |
|
353 | 353 | $gateways[$gateway] = 1; |
354 | 354 | } else { |
355 | - if ( isset( $gateways[$gateway] ) ) { |
|
356 | - unset( $gateways[$gateway] ); |
|
355 | + if (isset($gateways[$gateway])) { |
|
356 | + unset($gateways[$gateway]); |
|
357 | 357 | } |
358 | 358 | } |
359 | 359 | |
360 | 360 | $input['gateways'] = $gateways; |
361 | 361 | } |
362 | 362 | |
363 | - if ( !empty( $input['default_gateway'] ) ) { |
|
363 | + if (!empty($input['default_gateway'])) { |
|
364 | 364 | $gateways = wpinv_get_payment_gateways(); |
365 | 365 | |
366 | - foreach ( $gateways as $key => $gateway ) { |
|
367 | - $active = 0; |
|
368 | - if ( !empty( $input['gateways'] ) && !empty( $input['gateways'][$key] ) ) { |
|
366 | + foreach ($gateways as $key => $gateway) { |
|
367 | + $active = 0; |
|
368 | + if (!empty($input['gateways']) && !empty($input['gateways'][$key])) { |
|
369 | 369 | $active = 1; |
370 | 370 | } |
371 | 371 | |
372 | 372 | $input[$key . '_active'] = $active; |
373 | 373 | |
374 | - if ( empty( $wpinv_options[$key . '_title'] ) ) { |
|
374 | + if (empty($wpinv_options[$key . '_title'])) { |
|
375 | 375 | $input[$key . '_title'] = $gateway['checkout_label']; |
376 | 376 | } |
377 | 377 | |
378 | - if ( !isset( $wpinv_options[$key . '_ordering'] ) && isset( $gateway['ordering'] ) ) { |
|
378 | + if (!isset($wpinv_options[$key . '_ordering']) && isset($gateway['ordering'])) { |
|
379 | 379 | $input[$key . '_ordering'] = $gateway['ordering']; |
380 | 380 | } |
381 | 381 | } |
@@ -383,27 +383,27 @@ discard block |
||
383 | 383 | |
384 | 384 | return $input; |
385 | 385 | } |
386 | -add_filter( 'wpinv_settings_tab_gateways_sanitize', 'wpinv_settings_update_gateways', 10, 1 ); |
|
386 | +add_filter('wpinv_settings_tab_gateways_sanitize', 'wpinv_settings_update_gateways', 10, 1); |
|
387 | 387 | |
388 | 388 | // PayPal Standard settings |
389 | -function wpinv_gateway_settings_paypal( $setting ) { |
|
390 | - $setting['paypal_active']['desc'] = $setting['paypal_active']['desc'] . ' ' . __( '( Supported Currencies: AUD, BRL, CAD, CZK, DKK, EUR, HKD, HUF, ILS, JPY, MYR, MXN, NOK, NZD, PHP, PLN, GBP, SGD, SEK, CHF, TWD, THB, USD )', 'invoicing' ); |
|
391 | - $setting['paypal_desc']['std'] = __( 'Pay via PayPal: you can pay with your credit card if you don\'t have a PayPal account.', 'invoicing' ); |
|
389 | +function wpinv_gateway_settings_paypal($setting) { |
|
390 | + $setting['paypal_active']['desc'] = $setting['paypal_active']['desc'] . ' ' . __('( Supported Currencies: AUD, BRL, CAD, CZK, DKK, EUR, HKD, HUF, ILS, JPY, MYR, MXN, NOK, NZD, PHP, PLN, GBP, SGD, SEK, CHF, TWD, THB, USD )', 'invoicing'); |
|
391 | + $setting['paypal_desc']['std'] = __('Pay via PayPal: you can pay with your credit card if you don\'t have a PayPal account.', 'invoicing'); |
|
392 | 392 | |
393 | 393 | $setting['paypal_sandbox'] = array( |
394 | 394 | 'type' => 'checkbox', |
395 | 395 | 'id' => 'paypal_sandbox', |
396 | - 'name' => __( 'PayPal Sandbox', 'invoicing' ), |
|
397 | - 'desc' => __( 'PayPal sandbox can be used to test payments.', 'invoicing' ), |
|
396 | + 'name' => __('PayPal Sandbox', 'invoicing'), |
|
397 | + 'desc' => __('PayPal sandbox can be used to test payments.', 'invoicing'), |
|
398 | 398 | 'std' => 1 |
399 | 399 | ); |
400 | 400 | |
401 | 401 | $setting['paypal_email'] = array( |
402 | 402 | 'type' => 'text', |
403 | 403 | 'id' => 'paypal_email', |
404 | - 'name' => __( 'PayPal Email', 'invoicing' ), |
|
405 | - 'desc' => __( 'Please enter your PayPal account\'s email address. Ex: [email protected]', 'invoicing' ), |
|
406 | - 'std' => __( '[email protected]', 'invoicing' ), |
|
404 | + 'name' => __('PayPal Email', 'invoicing'), |
|
405 | + 'desc' => __('Please enter your PayPal account\'s email address. Ex: [email protected]', 'invoicing'), |
|
406 | + 'std' => __('[email protected]', 'invoicing'), |
|
407 | 407 | ); |
408 | 408 | /* |
409 | 409 | $setting['paypal_ipn_url'] = array( |
@@ -417,139 +417,139 @@ discard block |
||
417 | 417 | |
418 | 418 | return $setting; |
419 | 419 | } |
420 | -add_filter( 'wpinv_gateway_settings_paypal', 'wpinv_gateway_settings_paypal', 10, 1 ); |
|
420 | +add_filter('wpinv_gateway_settings_paypal', 'wpinv_gateway_settings_paypal', 10, 1); |
|
421 | 421 | |
422 | 422 | // Pre Bank Transfer settings |
423 | -function wpinv_gateway_settings_bank_transfer( $setting ) { |
|
424 | - $setting['bank_transfer_desc']['std'] = __( 'Make your payment directly into our bank account. Please use your Invoice ID as the payment reference. Your invoice won\'t be processed until the funds have cleared in our account.', 'invoicing' ); |
|
423 | +function wpinv_gateway_settings_bank_transfer($setting) { |
|
424 | + $setting['bank_transfer_desc']['std'] = __('Make your payment directly into our bank account. Please use your Invoice ID as the payment reference. Your invoice won\'t be processed until the funds have cleared in our account.', 'invoicing'); |
|
425 | 425 | |
426 | 426 | $setting['bank_transfer_ac_name'] = array( |
427 | 427 | 'type' => 'text', |
428 | 428 | 'id' => 'bank_transfer_ac_name', |
429 | - 'name' => __( 'Account Name', 'invoicing' ), |
|
430 | - 'desc' => __( 'Enter the bank account name to which you want to transfer payment.', 'invoicing' ), |
|
431 | - 'std' => __( 'Mr. John Martin', 'invoicing' ), |
|
429 | + 'name' => __('Account Name', 'invoicing'), |
|
430 | + 'desc' => __('Enter the bank account name to which you want to transfer payment.', 'invoicing'), |
|
431 | + 'std' => __('Mr. John Martin', 'invoicing'), |
|
432 | 432 | ); |
433 | 433 | |
434 | 434 | $setting['bank_transfer_ac_no'] = array( |
435 | 435 | 'type' => 'text', |
436 | 436 | 'id' => 'bank_transfer_ac_no', |
437 | - 'name' => __( 'Account Number', 'invoicing' ), |
|
438 | - 'desc' => __( 'Enter your bank account number.', 'invoicing' ), |
|
439 | - 'std' => __( 'TEST1234567890', 'invoicing' ), |
|
437 | + 'name' => __('Account Number', 'invoicing'), |
|
438 | + 'desc' => __('Enter your bank account number.', 'invoicing'), |
|
439 | + 'std' => __('TEST1234567890', 'invoicing'), |
|
440 | 440 | ); |
441 | 441 | |
442 | 442 | $setting['bank_transfer_bank_name'] = array( |
443 | 443 | 'type' => 'text', |
444 | 444 | 'id' => 'bank_transfer_bank_name', |
445 | - 'name' => __( 'Bank Name', 'invoicing' ), |
|
446 | - 'desc' => __( 'Enter the bank name to which you want to transfer payment.', 'invoicing' ), |
|
447 | - 'std' => __( 'ICICI Bank', 'invoicing' ), |
|
445 | + 'name' => __('Bank Name', 'invoicing'), |
|
446 | + 'desc' => __('Enter the bank name to which you want to transfer payment.', 'invoicing'), |
|
447 | + 'std' => __('ICICI Bank', 'invoicing'), |
|
448 | 448 | ); |
449 | 449 | |
450 | 450 | $setting['bank_transfer_ifsc'] = array( |
451 | 451 | 'type' => 'text', |
452 | 452 | 'id' => 'bank_transfer_ifsc', |
453 | - 'name' => __( 'IFSC Code', 'invoicing' ), |
|
454 | - 'desc' => __( 'Enter your bank IFSC code.', 'invoicing' ), |
|
455 | - 'std' => __( 'ICIC0001234', 'invoicing' ), |
|
453 | + 'name' => __('IFSC Code', 'invoicing'), |
|
454 | + 'desc' => __('Enter your bank IFSC code.', 'invoicing'), |
|
455 | + 'std' => __('ICIC0001234', 'invoicing'), |
|
456 | 456 | ); |
457 | 457 | |
458 | 458 | $setting['bank_transfer_iban'] = array( |
459 | 459 | 'type' => 'text', |
460 | 460 | 'id' => 'bank_transfer_iban', |
461 | - 'name' => __( 'IBAN', 'invoicing' ), |
|
462 | - 'desc' => __( 'Enter your International Bank Account Number(IBAN).', 'invoicing' ), |
|
463 | - 'std' => __( 'GB29NWBK60161331926819', 'invoicing' ), |
|
461 | + 'name' => __('IBAN', 'invoicing'), |
|
462 | + 'desc' => __('Enter your International Bank Account Number(IBAN).', 'invoicing'), |
|
463 | + 'std' => __('GB29NWBK60161331926819', 'invoicing'), |
|
464 | 464 | ); |
465 | 465 | |
466 | 466 | $setting['bank_transfer_bic'] = array( |
467 | 467 | 'type' => 'text', |
468 | 468 | 'id' => 'bank_transfer_bic', |
469 | - 'name' => __( 'BIC/Swift Code', 'invoicing' ), |
|
470 | - 'std' => __( 'ICICGB2L129', 'invoicing' ), |
|
469 | + 'name' => __('BIC/Swift Code', 'invoicing'), |
|
470 | + 'std' => __('ICICGB2L129', 'invoicing'), |
|
471 | 471 | ); |
472 | 472 | |
473 | 473 | $setting['bank_transfer_sort_code'] = array( |
474 | 474 | 'type' => 'text', |
475 | 475 | 'id' => 'bank_transfer_sort_code', |
476 | - 'name' => __( 'Sort Code', 'invoicing' ), |
|
477 | - 'std' => __( '12-34-56', 'invoicing' ), |
|
476 | + 'name' => __('Sort Code', 'invoicing'), |
|
477 | + 'std' => __('12-34-56', 'invoicing'), |
|
478 | 478 | ); |
479 | 479 | |
480 | 480 | $setting['bank_transfer_info'] = array( |
481 | 481 | 'id' => 'bank_transfer_info', |
482 | - 'name' => __( 'Instructions', 'invoicing' ), |
|
483 | - 'desc' => __( 'Instructions that will be added to the thank you page and emails.', 'invoicing' ), |
|
482 | + 'name' => __('Instructions', 'invoicing'), |
|
483 | + 'desc' => __('Instructions that will be added to the thank you page and emails.', 'invoicing'), |
|
484 | 484 | 'type' => 'textarea', |
485 | - 'std' => __( 'Make your payment directly into our bank account. Please use your Invoice ID as the payment reference. Your invoice won\'t be processed until the funds have cleared in our account.', 'invoicing' ), |
|
485 | + 'std' => __('Make your payment directly into our bank account. Please use your Invoice ID as the payment reference. Your invoice won\'t be processed until the funds have cleared in our account.', 'invoicing'), |
|
486 | 486 | 'cols' => 37, |
487 | 487 | 'rows' => 5 |
488 | 488 | ); |
489 | 489 | |
490 | 490 | return $setting; |
491 | 491 | } |
492 | -add_filter( 'wpinv_gateway_settings_bank_transfer', 'wpinv_gateway_settings_bank_transfer', 10, 1 ); |
|
492 | +add_filter('wpinv_gateway_settings_bank_transfer', 'wpinv_gateway_settings_bank_transfer', 10, 1); |
|
493 | 493 | |
494 | 494 | // Authorize.Net settings |
495 | -function wpinv_gateway_settings_authorizenet( $setting ) { |
|
496 | - $setting['authorizenet_active']['desc'] = $setting['authorizenet_active']['desc'] . ' ' . __( '( Supported Currencies: AUD, CAD, CHF, DKK, EUR, GBP, JPY, NOK, NZD, PLN, SEK, USD, ZAR )', 'invoicing' ); |
|
497 | - $setting['authorizenet_desc']['std'] = __( 'Pay using a Authorize.Net to process Credit card / Debit card transactions.', 'invoicing' ); |
|
495 | +function wpinv_gateway_settings_authorizenet($setting) { |
|
496 | + $setting['authorizenet_active']['desc'] = $setting['authorizenet_active']['desc'] . ' ' . __('( Supported Currencies: AUD, CAD, CHF, DKK, EUR, GBP, JPY, NOK, NZD, PLN, SEK, USD, ZAR )', 'invoicing'); |
|
497 | + $setting['authorizenet_desc']['std'] = __('Pay using a Authorize.Net to process Credit card / Debit card transactions.', 'invoicing'); |
|
498 | 498 | |
499 | 499 | $setting['authorizenet_sandbox'] = array( |
500 | 500 | 'type' => 'checkbox', |
501 | 501 | 'id' => 'authorizenet_sandbox', |
502 | - 'name' => __( 'Authorize.Net Test Mode', 'invoicing' ), |
|
503 | - 'desc' => __( 'Enable Authorize.Net test mode to test payments.', 'invoicing' ), |
|
502 | + 'name' => __('Authorize.Net Test Mode', 'invoicing'), |
|
503 | + 'desc' => __('Enable Authorize.Net test mode to test payments.', 'invoicing'), |
|
504 | 504 | 'std' => 1 |
505 | 505 | ); |
506 | 506 | |
507 | 507 | $setting['authorizenet_login_id'] = array( |
508 | 508 | 'type' => 'text', |
509 | 509 | 'id' => 'authorizenet_login_id', |
510 | - 'name' => __( 'API Login ID', 'invoicing' ), |
|
511 | - 'desc' => __( 'API Login ID can be obtained from Authorize.Net Account > Settings > Security Settings > General Security Settings > API Credentials & Keys. Example : 2j4rBekUnD', 'invoicing' ), |
|
510 | + 'name' => __('API Login ID', 'invoicing'), |
|
511 | + 'desc' => __('API Login ID can be obtained from Authorize.Net Account > Settings > Security Settings > General Security Settings > API Credentials & Keys. Example : 2j4rBekUnD', 'invoicing'), |
|
512 | 512 | 'std' => '2j4rBekUnD', |
513 | 513 | ); |
514 | 514 | |
515 | 515 | $setting['authorizenet_transaction_key'] = array( |
516 | 516 | 'type' => 'text', |
517 | 517 | 'id' => 'authorizenet_transaction_key', |
518 | - 'name' => __( 'Transaction Key', 'invoicing' ), |
|
519 | - 'desc' => __( 'Transaction Key can be obtained from Authorize.Net Account > Settings > Security Settings > General Security Settings > API Credentials & Keys. Example : 4vyBUOJgR74679xa', 'invoicing' ), |
|
518 | + 'name' => __('Transaction Key', 'invoicing'), |
|
519 | + 'desc' => __('Transaction Key can be obtained from Authorize.Net Account > Settings > Security Settings > General Security Settings > API Credentials & Keys. Example : 4vyBUOJgR74679xa', 'invoicing'), |
|
520 | 520 | 'std' => '4vyBUOJgR74679xa', |
521 | 521 | ); |
522 | 522 | |
523 | 523 | $setting['authorizenet_md5_hash'] = array( |
524 | 524 | 'type' => 'text', |
525 | 525 | 'id' => 'authorizenet_md5_hash', |
526 | - 'name' => __( 'MD5-Hash', 'invoicing' ), |
|
527 | - 'desc' => __( 'The MD5 Hash security feature allows to authenticate transaction responses from the Authorize.Net for recurring payments. It can be obtained from Authorize.Net Account > Settings > Security Settings > General Settings > MD5 Hash.', 'invoicing' ), |
|
526 | + 'name' => __('MD5-Hash', 'invoicing'), |
|
527 | + 'desc' => __('The MD5 Hash security feature allows to authenticate transaction responses from the Authorize.Net for recurring payments. It can be obtained from Authorize.Net Account > Settings > Security Settings > General Settings > MD5 Hash.', 'invoicing'), |
|
528 | 528 | 'std' => '', |
529 | 529 | ); |
530 | 530 | |
531 | 531 | $setting['authorizenet_transaction_type'] = array( |
532 | 532 | 'id' => 'authorizenet_transaction_type', |
533 | - 'name' => __( 'Transaction Type', 'invoicing' ), |
|
534 | - 'desc' => __( 'Choose transaction type.', 'invoicing' ), |
|
533 | + 'name' => __('Transaction Type', 'invoicing'), |
|
534 | + 'desc' => __('Choose transaction type.', 'invoicing'), |
|
535 | 535 | 'type' => 'select', |
536 | 536 | 'class' => 'wpi_select2', |
537 | 537 | 'options' => array( |
538 | - 'authorize_capture' => __( 'Authorize And Capture', 'invoicing' ), |
|
539 | - 'authorize_only' => __( 'Authorize Only', 'invoicing' ), |
|
538 | + 'authorize_capture' => __('Authorize And Capture', 'invoicing'), |
|
539 | + 'authorize_only' => __('Authorize Only', 'invoicing'), |
|
540 | 540 | ), |
541 | 541 | 'std' => 'authorize_capture' |
542 | 542 | ); |
543 | 543 | |
544 | 544 | $setting['authorizenet_transaction_type_recurring'] = array( |
545 | 545 | 'id' => 'authorizenet_transaction_type_recurring', |
546 | - 'name' => __( 'Transaction Type for Recurring', 'invoicing' ), |
|
547 | - 'desc' => __( 'Choose transaction type for recurring payments.', 'invoicing' ), |
|
546 | + 'name' => __('Transaction Type for Recurring', 'invoicing'), |
|
547 | + 'desc' => __('Choose transaction type for recurring payments.', 'invoicing'), |
|
548 | 548 | 'type' => 'select', |
549 | 549 | 'class' => 'wpi_select2', |
550 | 550 | 'options' => array( |
551 | - 'authorize_capture' => __( 'Authorize And Capture', 'invoicing' ), |
|
552 | - 'authorize_only' => __( 'Authorize Only', 'invoicing' ), |
|
551 | + 'authorize_capture' => __('Authorize And Capture', 'invoicing'), |
|
552 | + 'authorize_only' => __('Authorize Only', 'invoicing'), |
|
553 | 553 | ), |
554 | 554 | 'std' => 'authorize_only' |
555 | 555 | ); |
@@ -557,9 +557,9 @@ discard block |
||
557 | 557 | $setting['authorizenet_ipn_url'] = array( |
558 | 558 | 'type' => 'ipn_url', |
559 | 559 | 'id' => 'authorizenet_ipn_url', |
560 | - 'name' => __( 'Silent Post URL', 'invoicing' ), |
|
561 | - 'std' => wpinv_get_ipn_url( 'authorizenet' ), |
|
562 | - 'desc' => __( 'If you are accepting recurring payments then you must set this url at Authorize.Net Account > Settings > Transaction Format Settings > Transaction Response Settings > Silent Post URL.', 'invoicing' ), |
|
560 | + 'name' => __('Silent Post URL', 'invoicing'), |
|
561 | + 'std' => wpinv_get_ipn_url('authorizenet'), |
|
562 | + 'desc' => __('If you are accepting recurring payments then you must set this url at Authorize.Net Account > Settings > Transaction Format Settings > Transaction Response Settings > Silent Post URL.', 'invoicing'), |
|
563 | 563 | 'size' => 'large', |
564 | 564 | 'custom' => 'authorizenet', |
565 | 565 | 'readonly' => true |
@@ -567,26 +567,26 @@ discard block |
||
567 | 567 | |
568 | 568 | return $setting; |
569 | 569 | } |
570 | -add_filter( 'wpinv_gateway_settings_authorizenet', 'wpinv_gateway_settings_authorizenet', 10, 1 ); |
|
570 | +add_filter('wpinv_gateway_settings_authorizenet', 'wpinv_gateway_settings_authorizenet', 10, 1); |
|
571 | 571 | |
572 | 572 | // Worldpay settings |
573 | -function wpinv_gateway_settings_worldpay( $setting ) { |
|
574 | - $setting['worldpay_active']['desc'] = $setting['worldpay_active']['desc'] . ' ' . __( '( Supported Currencies: AUD, ARS, CAD, CHF, DKK, EUR, HKD, MYR, GBP, NZD, NOK, SGD, LKR, SEK, TRY, USD, ZAR )', 'invoicing' ); |
|
575 | - $setting['worldpay_desc']['std'] = __( 'Pay using a Worldpay account to process Credit card / Debit card transactions.', 'invoicing' ); |
|
573 | +function wpinv_gateway_settings_worldpay($setting) { |
|
574 | + $setting['worldpay_active']['desc'] = $setting['worldpay_active']['desc'] . ' ' . __('( Supported Currencies: AUD, ARS, CAD, CHF, DKK, EUR, HKD, MYR, GBP, NZD, NOK, SGD, LKR, SEK, TRY, USD, ZAR )', 'invoicing'); |
|
575 | + $setting['worldpay_desc']['std'] = __('Pay using a Worldpay account to process Credit card / Debit card transactions.', 'invoicing'); |
|
576 | 576 | |
577 | 577 | $setting['worldpay_sandbox'] = array( |
578 | 578 | 'type' => 'checkbox', |
579 | 579 | 'id' => 'worldpay_sandbox', |
580 | - 'name' => __( 'Worldpay Test Mode', 'invoicing' ), |
|
581 | - 'desc' => __( 'This provides a special Test Environment to enable you to test your installation and integration to your website before going live.', 'invoicing' ), |
|
580 | + 'name' => __('Worldpay Test Mode', 'invoicing'), |
|
581 | + 'desc' => __('This provides a special Test Environment to enable you to test your installation and integration to your website before going live.', 'invoicing'), |
|
582 | 582 | 'std' => 1 |
583 | 583 | ); |
584 | 584 | |
585 | 585 | $setting['worldpay_instId'] = array( |
586 | 586 | 'type' => 'text', |
587 | 587 | 'id' => 'worldpay_instId', |
588 | - 'name' => __( 'Installation Id', 'invoicing' ), |
|
589 | - 'desc' => __( 'Your installation id. Ex: 211616', 'invoicing' ), |
|
588 | + 'name' => __('Installation Id', 'invoicing'), |
|
589 | + 'desc' => __('Your installation id. Ex: 211616', 'invoicing'), |
|
590 | 590 | 'std' => '211616', |
591 | 591 | ); |
592 | 592 | /* |
@@ -602,9 +602,9 @@ discard block |
||
602 | 602 | $setting['worldpay_ipn_url'] = array( |
603 | 603 | 'type' => 'ipn_url', |
604 | 604 | 'id' => 'worldpay_ipn_url', |
605 | - 'name' => __( 'Worldpay Callback Url', 'invoicing' ), |
|
606 | - 'std' => wpinv_get_ipn_url( 'worldpay' ), |
|
607 | - 'desc' => wp_sprintf( __( 'Login to your Worldpay Merchant Interface then enable Payment Response & Shopper Response. Next, go to the Payment Response URL field and type "%s" or "%s" for a dynamic payment response.', 'invoicing' ), '<font style="color:#000;font-style:normal">' . wpinv_get_ipn_url( 'worldpay' ) . '</font>', '<font style="color:#000;font-style:normal"><wpdisplay item=MC_callback></font>' ), |
|
605 | + 'name' => __('Worldpay Callback Url', 'invoicing'), |
|
606 | + 'std' => wpinv_get_ipn_url('worldpay'), |
|
607 | + 'desc' => wp_sprintf(__('Login to your Worldpay Merchant Interface then enable Payment Response & Shopper Response. Next, go to the Payment Response URL field and type "%s" or "%s" for a dynamic payment response.', 'invoicing'), '<font style="color:#000;font-style:normal">' . wpinv_get_ipn_url('worldpay') . '</font>', '<font style="color:#000;font-style:normal"><wpdisplay item=MC_callback></font>'), |
|
608 | 608 | 'size' => 'large', |
609 | 609 | 'custom' => 'worldpay', |
610 | 610 | 'readonly' => true |
@@ -612,99 +612,99 @@ discard block |
||
612 | 612 | |
613 | 613 | return $setting; |
614 | 614 | } |
615 | -add_filter( 'wpinv_gateway_settings_worldpay', 'wpinv_gateway_settings_worldpay', 10, 1 ); |
|
615 | +add_filter('wpinv_gateway_settings_worldpay', 'wpinv_gateway_settings_worldpay', 10, 1); |
|
616 | 616 | |
617 | -function wpinv_ipn_url_callback( $args ) { |
|
618 | - $sanitize_id = wpinv_sanitize_key( $args['id'] ); |
|
617 | +function wpinv_ipn_url_callback($args) { |
|
618 | + $sanitize_id = wpinv_sanitize_key($args['id']); |
|
619 | 619 | |
620 | 620 | $attrs = $args['readonly'] ? ' readonly' : ''; |
621 | 621 | |
622 | - $html = '<input style="background-color:#fefefe" type="text" ' . $attrs . ' value="' . esc_attr( $args['std'] ) . '" name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . ']" class="large-text">'; |
|
623 | - $html .= '<label for="wpinv_settings[' . $sanitize_id . ']">' . $args['desc'] . '</label>'; |
|
622 | + $html = '<input style="background-color:#fefefe" type="text" ' . $attrs . ' value="' . esc_attr($args['std']) . '" name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . ']" class="large-text">'; |
|
623 | + $html .= '<label for="wpinv_settings[' . $sanitize_id . ']">' . $args['desc'] . '</label>'; |
|
624 | 624 | |
625 | 625 | echo $html; |
626 | 626 | } |
627 | 627 | |
628 | -function wpinv_is_test_mode( $gateway = '' ) { |
|
629 | - if ( empty( $gateway ) ) { |
|
628 | +function wpinv_is_test_mode($gateway = '') { |
|
629 | + if (empty($gateway)) { |
|
630 | 630 | return false; |
631 | 631 | } |
632 | 632 | |
633 | - $is_test_mode = wpinv_get_option( $gateway . '_sandbox', false ); |
|
633 | + $is_test_mode = wpinv_get_option($gateway . '_sandbox', false); |
|
634 | 634 | |
635 | - return apply_filters( 'wpinv_is_test_mode', $is_test_mode, $gateway ); |
|
635 | + return apply_filters('wpinv_is_test_mode', $is_test_mode, $gateway); |
|
636 | 636 | } |
637 | 637 | |
638 | -function wpinv_get_ipn_url( $gateway = '', $args = array() ) { |
|
639 | - $data = array( 'wpi-listener' => 'IPN' ); |
|
638 | +function wpinv_get_ipn_url($gateway = '', $args = array()) { |
|
639 | + $data = array('wpi-listener' => 'IPN'); |
|
640 | 640 | |
641 | - if ( !empty( $gateway ) ) { |
|
642 | - $data['wpi-gateway'] = wpinv_sanitize_key( $gateway ); |
|
641 | + if (!empty($gateway)) { |
|
642 | + $data['wpi-gateway'] = wpinv_sanitize_key($gateway); |
|
643 | 643 | } |
644 | 644 | |
645 | - $args = !empty( $args ) && is_array( $args ) ? array_merge( $data, $args ) : $data; |
|
645 | + $args = !empty($args) && is_array($args) ? array_merge($data, $args) : $data; |
|
646 | 646 | |
647 | - $ipn_url = add_query_arg( $args, home_url( 'index.php' ) ); |
|
647 | + $ipn_url = add_query_arg($args, home_url('index.php')); |
|
648 | 648 | |
649 | - return apply_filters( 'wpinv_ipn_url', $ipn_url ); |
|
649 | + return apply_filters('wpinv_ipn_url', $ipn_url); |
|
650 | 650 | } |
651 | 651 | |
652 | 652 | function wpinv_listen_for_payment_ipn() { |
653 | 653 | // Regular PayPal IPN |
654 | - if ( isset( $_GET['wpi-listener'] ) && $_GET['wpi-listener'] == 'IPN' ) { |
|
655 | - do_action( 'wpinv_verify_payment_ipn' ); |
|
654 | + if (isset($_GET['wpi-listener']) && $_GET['wpi-listener'] == 'IPN') { |
|
655 | + do_action('wpinv_verify_payment_ipn'); |
|
656 | 656 | |
657 | - if ( !empty( $_GET['wpi-gateway'] ) ) { |
|
658 | - wpinv_error_log( sanitize_text_field( $_GET['wpi-gateway'] ), 'WP Invoicing IPN', __FILE__, __LINE__ ); |
|
659 | - do_action( 'wpinv_verify_' . sanitize_text_field( $_GET['wpi-gateway'] ) . '_ipn' ); |
|
657 | + if (!empty($_GET['wpi-gateway'])) { |
|
658 | + wpinv_error_log(sanitize_text_field($_GET['wpi-gateway']), 'WP Invoicing IPN', __FILE__, __LINE__); |
|
659 | + do_action('wpinv_verify_' . sanitize_text_field($_GET['wpi-gateway']) . '_ipn'); |
|
660 | 660 | } |
661 | 661 | } |
662 | 662 | } |
663 | -add_action( 'init', 'wpinv_listen_for_payment_ipn' ); |
|
663 | +add_action('init', 'wpinv_listen_for_payment_ipn'); |
|
664 | 664 | |
665 | 665 | function wpinv_get_bank_instructions() { |
666 | - $bank_instructions = wpinv_get_option( 'bank_transfer_info' ); |
|
666 | + $bank_instructions = wpinv_get_option('bank_transfer_info'); |
|
667 | 667 | |
668 | - return apply_filters( 'wpinv_bank_instructions', $bank_instructions ); |
|
668 | + return apply_filters('wpinv_bank_instructions', $bank_instructions); |
|
669 | 669 | } |
670 | 670 | |
671 | -function wpinv_get_bank_info( $filtered = false ) { |
|
671 | +function wpinv_get_bank_info($filtered = false) { |
|
672 | 672 | $bank_fields = array( |
673 | - 'bank_transfer_ac_name' => __( 'Account Name', 'invoicing' ), |
|
674 | - 'bank_transfer_ac_no' => __( 'Account Number', 'invoicing' ), |
|
675 | - 'bank_transfer_bank_name' => __( 'Bank Name', 'invoicing' ), |
|
676 | - 'bank_transfer_ifsc' => __( 'IFSC code', 'invoicing' ), |
|
677 | - 'bank_transfer_iban' => __( 'IBAN', 'invoicing' ), |
|
678 | - 'bank_transfer_bic' => __( 'BIC/Swift code', 'invoicing' ), |
|
679 | - 'bank_transfer_sort_code' => __( 'Sort Code', 'invoicing' ) |
|
673 | + 'bank_transfer_ac_name' => __('Account Name', 'invoicing'), |
|
674 | + 'bank_transfer_ac_no' => __('Account Number', 'invoicing'), |
|
675 | + 'bank_transfer_bank_name' => __('Bank Name', 'invoicing'), |
|
676 | + 'bank_transfer_ifsc' => __('IFSC code', 'invoicing'), |
|
677 | + 'bank_transfer_iban' => __('IBAN', 'invoicing'), |
|
678 | + 'bank_transfer_bic' => __('BIC/Swift code', 'invoicing'), |
|
679 | + 'bank_transfer_sort_code' => __('Sort Code', 'invoicing') |
|
680 | 680 | ); |
681 | 681 | |
682 | 682 | $bank_info = array(); |
683 | - foreach ( $bank_fields as $field => $label ) { |
|
684 | - if ( $filtered && !( $value = wpinv_get_option( $field ) ) ) { |
|
683 | + foreach ($bank_fields as $field => $label) { |
|
684 | + if ($filtered && !($value = wpinv_get_option($field))) { |
|
685 | 685 | continue; |
686 | 686 | } |
687 | 687 | |
688 | - $bank_info[$field] = array( 'label' => $label, 'value' => $value ); |
|
688 | + $bank_info[$field] = array('label' => $label, 'value' => $value); |
|
689 | 689 | } |
690 | 690 | |
691 | - return apply_filters( 'wpinv_bank_info', $bank_info, $filtered ); |
|
691 | + return apply_filters('wpinv_bank_info', $bank_info, $filtered); |
|
692 | 692 | } |
693 | 693 | |
694 | -function wpinv_get_post_data( $method = 'request' ) { |
|
694 | +function wpinv_get_post_data($method = 'request') { |
|
695 | 695 | $data = array(); |
696 | 696 | $request = $_REQUEST; |
697 | 697 | |
698 | - if ( $method == 'post' ) { |
|
699 | - if ( isset( $_SERVER['REQUEST_METHOD'] ) && $_SERVER['REQUEST_METHOD'] != 'POST' ) { |
|
698 | + if ($method == 'post') { |
|
699 | + if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] != 'POST') { |
|
700 | 700 | return $data; |
701 | 701 | } |
702 | 702 | |
703 | 703 | $request = $_POST; |
704 | 704 | } |
705 | 705 | |
706 | - if ( $method == 'get' ) { |
|
707 | - if ( isset( $_SERVER['REQUEST_METHOD'] ) && $_SERVER['REQUEST_METHOD'] != 'GET' ) { |
|
706 | + if ($method == 'get') { |
|
707 | + if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] != 'GET') { |
|
708 | 708 | return $data; |
709 | 709 | } |
710 | 710 | |
@@ -715,11 +715,11 @@ discard block |
||
715 | 715 | $post_data = ''; |
716 | 716 | |
717 | 717 | // Fallback just in case post_max_size is lower than needed |
718 | - if ( ini_get( 'allow_url_fopen' ) ) { |
|
719 | - $post_data = file_get_contents( 'php://input' ); |
|
718 | + if (ini_get('allow_url_fopen')) { |
|
719 | + $post_data = file_get_contents('php://input'); |
|
720 | 720 | } else { |
721 | 721 | // If allow_url_fopen is not enabled, then make sure that post_max_size is large enough |
722 | - ini_set( 'post_max_size', '12M' ); |
|
722 | + ini_set('post_max_size', '12M'); |
|
723 | 723 | } |
724 | 724 | // Start the encoded data collection with notification command |
725 | 725 | $encoded_data = 'cmd=_notify-validate'; |
@@ -728,58 +728,58 @@ discard block |
||
728 | 728 | $arg_separator = wpinv_get_php_arg_separator_output(); |
729 | 729 | |
730 | 730 | // Verify there is a post_data |
731 | - if ( $post_data || strlen( $post_data ) > 0 ) { |
|
731 | + if ($post_data || strlen($post_data) > 0) { |
|
732 | 732 | // Append the data |
733 | 733 | $encoded_data .= $arg_separator . $post_data; |
734 | 734 | } else { |
735 | 735 | // Check if POST is empty |
736 | - if ( empty( $request ) ) { |
|
736 | + if (empty($request)) { |
|
737 | 737 | // Nothing to do |
738 | 738 | return; |
739 | 739 | } else { |
740 | 740 | // Loop through each POST |
741 | - foreach ( $request as $key => $value ) { |
|
741 | + foreach ($request as $key => $value) { |
|
742 | 742 | // Encode the value and append the data |
743 | - $encoded_data .= $arg_separator . "$key=" . urlencode( $value ); |
|
743 | + $encoded_data .= $arg_separator . "$key=" . urlencode($value); |
|
744 | 744 | } |
745 | 745 | } |
746 | 746 | } |
747 | 747 | |
748 | 748 | // Convert collected post data to an array |
749 | - wp_parse_str( $encoded_data, $data ); |
|
749 | + wp_parse_str($encoded_data, $data); |
|
750 | 750 | |
751 | - foreach ( $data as $key => $value ) { |
|
752 | - if ( false !== strpos( $key, 'amp;' ) ) { |
|
753 | - $new_key = str_replace( '&', '&', $key ); |
|
754 | - $new_key = str_replace( 'amp;', '&' , $new_key ); |
|
751 | + foreach ($data as $key => $value) { |
|
752 | + if (false !== strpos($key, 'amp;')) { |
|
753 | + $new_key = str_replace('&', '&', $key); |
|
754 | + $new_key = str_replace('amp;', '&', $new_key); |
|
755 | 755 | |
756 | - unset( $data[ $key ] ); |
|
757 | - $data[ $new_key ] = sanitize_text_field( $value ); |
|
756 | + unset($data[$key]); |
|
757 | + $data[$new_key] = sanitize_text_field($value); |
|
758 | 758 | } |
759 | 759 | } |
760 | 760 | |
761 | 761 | return $data; |
762 | 762 | } |
763 | 763 | |
764 | -function wpinv_gateway_support_subscription( $gateway ) { |
|
764 | +function wpinv_gateway_support_subscription($gateway) { |
|
765 | 765 | $return = false; |
766 | 766 | |
767 | - if ( wpinv_is_gateway_active( $gateway ) ) { |
|
768 | - $return = apply_filters( 'wpinv_' . $gateway . '_support_subscription', false ); |
|
767 | + if (wpinv_is_gateway_active($gateway)) { |
|
768 | + $return = apply_filters('wpinv_' . $gateway . '_support_subscription', false); |
|
769 | 769 | } |
770 | 770 | |
771 | 771 | return $return; |
772 | 772 | } |
773 | 773 | |
774 | -function wpinv_payment_gateways_on_cart( $gateways = array() ) { |
|
775 | - if ( !empty( $gateways ) && wpinv_cart_has_recurring_item() ) { |
|
776 | - foreach ( $gateways as $gateway => $info ) { |
|
777 | - if ( !wpinv_gateway_support_subscription( $gateway ) ) { |
|
778 | - unset( $gateways[$gateway] ); |
|
774 | +function wpinv_payment_gateways_on_cart($gateways = array()) { |
|
775 | + if (!empty($gateways) && wpinv_cart_has_recurring_item()) { |
|
776 | + foreach ($gateways as $gateway => $info) { |
|
777 | + if (!wpinv_gateway_support_subscription($gateway)) { |
|
778 | + unset($gateways[$gateway]); |
|
779 | 779 | } |
780 | 780 | } |
781 | 781 | } |
782 | 782 | |
783 | 783 | return $gateways; |
784 | 784 | } |
785 | -add_filter( 'wpinv_payment_gateways_on_cart', 'wpinv_payment_gateways_on_cart', 10, 1 ); |
|
786 | 785 | \ No newline at end of file |
786 | +add_filter('wpinv_payment_gateways_on_cart', 'wpinv_payment_gateways_on_cart', 10, 1); |
|
787 | 787 | \ No newline at end of file |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | * @since 1.0.13 |
9 | 9 | */ |
10 | 10 | |
11 | -if ( !defined( 'WPINC' ) ) { |
|
11 | +if (!defined('WPINC')) { |
|
12 | 12 | exit; |
13 | 13 | } |
14 | 14 | |
@@ -41,7 +41,7 @@ discard block |
||
41 | 41 | * |
42 | 42 | * @param string $namespace Api Namespace |
43 | 43 | */ |
44 | - public function __construct( $namespace ) { |
|
44 | + public function __construct($namespace) { |
|
45 | 45 | |
46 | 46 | // Set api namespace... |
47 | 47 | $this->namespace = $namespace; |
@@ -68,7 +68,7 @@ discard block |
||
68 | 68 | array( |
69 | 69 | array( |
70 | 70 | 'methods' => WP_REST_Server::READABLE, |
71 | - 'callback' => array( $this, 'get_discount_types' ), |
|
71 | + 'callback' => array($this, 'get_discount_types'), |
|
72 | 72 | ), |
73 | 73 | ) |
74 | 74 | ); |
@@ -84,13 +84,13 @@ discard block |
||
84 | 84 | * @param WP_REST_Request $request Full details about the request. |
85 | 85 | * @return true|WP_Error True if the request has read access, WP_Error object otherwise. |
86 | 86 | */ |
87 | - public function get_items_permissions_check( $request ) { |
|
87 | + public function get_items_permissions_check($request) { |
|
88 | 88 | |
89 | - if ( wpinv_current_user_can_manage_invoicing() ) { |
|
89 | + if (wpinv_current_user_can_manage_invoicing()) { |
|
90 | 90 | return true; |
91 | 91 | } |
92 | 92 | |
93 | - return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to view invoice discounts.', 'invoicing' ), array( 'status' => rest_authorization_required_code() ) ); |
|
93 | + return new WP_Error('rest_forbidden_context', __('Sorry, you are not allowed to view invoice discounts.', 'invoicing'), array('status' => rest_authorization_required_code())); |
|
94 | 94 | |
95 | 95 | } |
96 | 96 | |
@@ -102,17 +102,17 @@ discard block |
||
102 | 102 | * @param WP_REST_Request $request Full details about the request. |
103 | 103 | * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. |
104 | 104 | */ |
105 | - public function get_items( $request ) { |
|
105 | + public function get_items($request) { |
|
106 | 106 | |
107 | 107 | // Retrieve the list of registered item query parameters. |
108 | 108 | $registered = $this->get_collection_params(); |
109 | 109 | |
110 | 110 | $args = array(); |
111 | 111 | |
112 | - foreach( array_keys( $registered ) as $key ) { |
|
112 | + foreach (array_keys($registered) as $key) { |
|
113 | 113 | |
114 | - if( isset( $request[ $key] ) ) { |
|
115 | - $args[ $key ] = $request[ $key]; |
|
114 | + if (isset($request[$key])) { |
|
115 | + $args[$key] = $request[$key]; |
|
116 | 116 | } |
117 | 117 | |
118 | 118 | } |
@@ -127,28 +127,28 @@ discard block |
||
127 | 127 | * @param array $args Key value array of query var to query value. |
128 | 128 | * @param WP_REST_Request $request The request used. |
129 | 129 | */ |
130 | - $args = apply_filters( "wpinv_rest_get_discounts_arguments", $args, $request, $this ); |
|
130 | + $args = apply_filters("wpinv_rest_get_discounts_arguments", $args, $request, $this); |
|
131 | 131 | |
132 | 132 | // Special args |
133 | - $args[ 'return' ] = 'objects'; |
|
134 | - $args[ 'paginate' ] = true; |
|
133 | + $args['return'] = 'objects'; |
|
134 | + $args['paginate'] = true; |
|
135 | 135 | |
136 | 136 | // Run the query. |
137 | - $query = wpinv_get_all_discounts( $args ); |
|
137 | + $query = wpinv_get_all_discounts($args); |
|
138 | 138 | |
139 | 139 | // Prepare the retrieved discounts |
140 | 140 | $discounts = array(); |
141 | - foreach( $query->discounts as $discount ) { |
|
141 | + foreach ($query->discounts as $discount) { |
|
142 | 142 | |
143 | - $data = $this->prepare_item_for_response( $discount, $request ); |
|
144 | - $discounts[] = $this->prepare_response_for_collection( $data ); |
|
143 | + $data = $this->prepare_item_for_response($discount, $request); |
|
144 | + $discounts[] = $this->prepare_response_for_collection($data); |
|
145 | 145 | |
146 | 146 | } |
147 | 147 | |
148 | 148 | // Prepare the response. |
149 | - $response = rest_ensure_response( $discounts ); |
|
150 | - $response->header( 'X-WP-Total', (int) $query->total ); |
|
151 | - $response->header( 'X-WP-TotalPages', (int) $query->max_num_pages ); |
|
149 | + $response = rest_ensure_response($discounts); |
|
150 | + $response->header('X-WP-Total', (int) $query->total); |
|
151 | + $response->header('X-WP-TotalPages', (int) $query->max_num_pages); |
|
152 | 152 | |
153 | 153 | /** |
154 | 154 | * Filters the responses for discount requests. |
@@ -161,9 +161,9 @@ discard block |
||
161 | 161 | * @param WP_REST_Request $request The request used. |
162 | 162 | * @param array $args Array of args used to retrieve the discounts |
163 | 163 | */ |
164 | - $response = apply_filters( "wpinv_rest_discounts_response", $response, $request, $args ); |
|
164 | + $response = apply_filters("wpinv_rest_discounts_response", $response, $request, $args); |
|
165 | 165 | |
166 | - return rest_ensure_response( $response ); |
|
166 | + return rest_ensure_response($response); |
|
167 | 167 | |
168 | 168 | } |
169 | 169 | |
@@ -175,17 +175,17 @@ discard block |
||
175 | 175 | * @param int $discount_id Supplied ID. |
176 | 176 | * @return WP_Post|WP_Error Post object if ID is valid, WP_Error otherwise. |
177 | 177 | */ |
178 | - protected function get_post( $discount_id ) { |
|
178 | + protected function get_post($discount_id) { |
|
179 | 179 | |
180 | - $error = new WP_Error( 'rest_item_invalid_id', __( 'Invalid discount ID.', 'invoicing' ), array( 'status' => 404 ) ); |
|
180 | + $error = new WP_Error('rest_item_invalid_id', __('Invalid discount ID.', 'invoicing'), array('status' => 404)); |
|
181 | 181 | |
182 | 182 | // Ids start from 1 |
183 | - if ( (int) $discount_id <= 0 ) { |
|
183 | + if ((int) $discount_id <= 0) { |
|
184 | 184 | return $error; |
185 | 185 | } |
186 | 186 | |
187 | - $discount = wpinv_get_discount( (int) $discount_id ); |
|
188 | - if ( empty( $discount ) ) { |
|
187 | + $discount = wpinv_get_discount((int) $discount_id); |
|
188 | + if (empty($discount)) { |
|
189 | 189 | return $error; |
190 | 190 | } |
191 | 191 | |
@@ -201,20 +201,20 @@ discard block |
||
201 | 201 | * @param WP_REST_Request $request Full details about the request. |
202 | 202 | * @return bool|WP_Error True if the request has read access for the invoice item, WP_Error object otherwise. |
203 | 203 | */ |
204 | - public function get_item_permissions_check( $request ) { |
|
204 | + public function get_item_permissions_check($request) { |
|
205 | 205 | |
206 | 206 | // Retrieve the discount object. |
207 | - $discount = $this->get_post( $request['id'] ); |
|
207 | + $discount = $this->get_post($request['id']); |
|
208 | 208 | |
209 | 209 | // Ensure it is valid. |
210 | - if ( is_wp_error( $discount ) ) { |
|
210 | + if (is_wp_error($discount)) { |
|
211 | 211 | return $discount; |
212 | 212 | } |
213 | 213 | |
214 | - if ( ! wpinv_current_user_can_manage_invoicing() ) { |
|
214 | + if (!wpinv_current_user_can_manage_invoicing()) { |
|
215 | 215 | return new WP_Error( |
216 | 216 | 'rest_cannot_view', |
217 | - __( 'Sorry, you are not allowed to view this discount.', 'invoicing' ), |
|
217 | + __('Sorry, you are not allowed to view this discount.', 'invoicing'), |
|
218 | 218 | array( |
219 | 219 | 'status' => rest_authorization_required_code(), |
220 | 220 | ) |
@@ -232,18 +232,18 @@ discard block |
||
232 | 232 | * @param WP_REST_Request $request Full details about the request. |
233 | 233 | * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. |
234 | 234 | */ |
235 | - public function get_item( $request ) { |
|
235 | + public function get_item($request) { |
|
236 | 236 | |
237 | 237 | // Fetch the discount. |
238 | - $discount = $this->get_post( $request['id'] ); |
|
238 | + $discount = $this->get_post($request['id']); |
|
239 | 239 | |
240 | 240 | // Abort early if it does not exist |
241 | - if ( is_wp_error( $discount ) ) { |
|
241 | + if (is_wp_error($discount)) { |
|
242 | 242 | return $discount; |
243 | 243 | } |
244 | 244 | |
245 | 245 | // Prepare the response |
246 | - $response = $this->prepare_item_for_response( $discount, $request ); |
|
246 | + $response = $this->prepare_item_for_response($discount, $request); |
|
247 | 247 | |
248 | 248 | /** |
249 | 249 | * Filters the responses for single discount requests. |
@@ -255,9 +255,9 @@ discard block |
||
255 | 255 | * @param WP_HTTP_Response $response Response. |
256 | 256 | * @param WP_REST_Request $request The request used. |
257 | 257 | */ |
258 | - $response = apply_filters( "wpinv_rest_get_discount_response", $response, $request ); |
|
258 | + $response = apply_filters("wpinv_rest_get_discount_response", $response, $request); |
|
259 | 259 | |
260 | - return rest_ensure_response( $response ); |
|
260 | + return rest_ensure_response($response); |
|
261 | 261 | |
262 | 262 | } |
263 | 263 | |
@@ -269,21 +269,21 @@ discard block |
||
269 | 269 | * @param WP_REST_Request $request Full details about the request. |
270 | 270 | * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise. |
271 | 271 | */ |
272 | - public function create_item_permissions_check( $request ) { |
|
272 | + public function create_item_permissions_check($request) { |
|
273 | 273 | |
274 | - if ( ! empty( $request['id'] ) ) { |
|
275 | - return new WP_Error( 'rest_item_exists', __( 'Cannot create existing item.', 'invoicing' ), array( 'status' => 400 ) ); |
|
274 | + if (!empty($request['id'])) { |
|
275 | + return new WP_Error('rest_item_exists', __('Cannot create existing item.', 'invoicing'), array('status' => 400)); |
|
276 | 276 | } |
277 | 277 | |
278 | - if ( wpinv_current_user_can_manage_invoicing() ) { |
|
278 | + if (wpinv_current_user_can_manage_invoicing()) { |
|
279 | 279 | return true; |
280 | 280 | } |
281 | 281 | |
282 | - $post_type = get_post_type_object( $this->post_type ); |
|
283 | - if ( ! current_user_can( $post_type->cap->create_posts ) ) { |
|
282 | + $post_type = get_post_type_object($this->post_type); |
|
283 | + if (!current_user_can($post_type->cap->create_posts)) { |
|
284 | 284 | return new WP_Error( |
285 | 285 | 'rest_cannot_create', |
286 | - __( 'Sorry, you are not allowed to create discounts as this user.', 'invoicing' ), |
|
286 | + __('Sorry, you are not allowed to create discounts as this user.', 'invoicing'), |
|
287 | 287 | array( |
288 | 288 | 'status' => rest_authorization_required_code(), |
289 | 289 | ) |
@@ -301,32 +301,32 @@ discard block |
||
301 | 301 | * @param WP_REST_Request $request Full details about the request. |
302 | 302 | * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. |
303 | 303 | */ |
304 | - public function create_item( $request ) { |
|
304 | + public function create_item($request) { |
|
305 | 305 | |
306 | - if ( ! empty( $request['id'] ) ) { |
|
307 | - return new WP_Error( 'rest_item_exists', __( 'Cannot create existing discount.', 'invoicing' ), array( 'status' => 400 ) ); |
|
306 | + if (!empty($request['id'])) { |
|
307 | + return new WP_Error('rest_item_exists', __('Cannot create existing discount.', 'invoicing'), array('status' => 400)); |
|
308 | 308 | } |
309 | 309 | |
310 | - $request->set_param( 'context', 'edit' ); |
|
310 | + $request->set_param('context', 'edit'); |
|
311 | 311 | |
312 | 312 | // Prepare the updated data. |
313 | - $discount_data = $this->prepare_item_for_database( $request ); |
|
313 | + $discount_data = $this->prepare_item_for_database($request); |
|
314 | 314 | |
315 | - if ( is_wp_error( $discount_data ) ) { |
|
315 | + if (is_wp_error($discount_data)) { |
|
316 | 316 | return $discount_data; |
317 | 317 | } |
318 | 318 | |
319 | 319 | $discount_data['post_type'] = $this->post_type; |
320 | 320 | |
321 | 321 | // Try creating the discount. |
322 | - $discount = wp_insert_post( $discount_data, true ); |
|
322 | + $discount = wp_insert_post($discount_data, true); |
|
323 | 323 | |
324 | - if ( is_wp_error( $discount ) ) { |
|
324 | + if (is_wp_error($discount)) { |
|
325 | 325 | return $discount; |
326 | 326 | } |
327 | 327 | |
328 | 328 | // Prepare the response |
329 | - $response = $this->prepare_item_for_response( $discount, $request ); |
|
329 | + $response = $this->prepare_item_for_response($discount, $request); |
|
330 | 330 | |
331 | 331 | /** |
332 | 332 | * Fires after a single discount is created or updated via the REST API. |
@@ -337,7 +337,7 @@ discard block |
||
337 | 337 | * @param WP_REST_Request $request Request object. |
338 | 338 | * @param bool $creating True when creating a post, false when updating. |
339 | 339 | */ |
340 | - do_action( "wpinv_rest_insert_discount", $discount, $request, true ); |
|
340 | + do_action("wpinv_rest_insert_discount", $discount, $request, true); |
|
341 | 341 | |
342 | 342 | /** |
343 | 343 | * Filters the responses for creating single item requests. |
@@ -349,9 +349,9 @@ discard block |
||
349 | 349 | * @param array $response Invoice properties. |
350 | 350 | * @param WP_REST_Request $request The request used. |
351 | 351 | */ |
352 | - $response = apply_filters( "wpinv_rest_create_discount_response", $response, $request ); |
|
352 | + $response = apply_filters("wpinv_rest_create_discount_response", $response, $request); |
|
353 | 353 | |
354 | - return rest_ensure_response( $response ); |
|
354 | + return rest_ensure_response($response); |
|
355 | 355 | } |
356 | 356 | |
357 | 357 | /** |
@@ -362,21 +362,21 @@ discard block |
||
362 | 362 | * @param WP_REST_Request $request Full details about the request. |
363 | 363 | * @return true|WP_Error True if the request has access to update the item, WP_Error object otherwise. |
364 | 364 | */ |
365 | - public function update_item_permissions_check( $request ) { |
|
365 | + public function update_item_permissions_check($request) { |
|
366 | 366 | |
367 | 367 | // Retrieve the item. |
368 | - $item = $this->get_post( $request['id'] ); |
|
369 | - if ( is_wp_error( $item ) ) { |
|
368 | + $item = $this->get_post($request['id']); |
|
369 | + if (is_wp_error($item)) { |
|
370 | 370 | return $item; |
371 | 371 | } |
372 | 372 | |
373 | - if ( wpinv_current_user_can_manage_invoicing() ) { |
|
373 | + if (wpinv_current_user_can_manage_invoicing()) { |
|
374 | 374 | return true; |
375 | 375 | } |
376 | 376 | |
377 | 377 | return new WP_Error( |
378 | 378 | 'rest_cannot_edit', |
379 | - __( 'Sorry, you are not allowed to update this discount.', 'invoicing' ), |
|
379 | + __('Sorry, you are not allowed to update this discount.', 'invoicing'), |
|
380 | 380 | array( |
381 | 381 | 'status' => rest_authorization_required_code(), |
382 | 382 | ) |
@@ -392,62 +392,62 @@ discard block |
||
392 | 392 | * @param WP_REST_Request $request Full details about the request. |
393 | 393 | * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. |
394 | 394 | */ |
395 | - public function update_item( $request ) { |
|
395 | + public function update_item($request) { |
|
396 | 396 | |
397 | 397 | // Ensure the item exists. |
398 | - $valid_check = $this->get_post( $request['id'] ); |
|
398 | + $valid_check = $this->get_post($request['id']); |
|
399 | 399 | |
400 | 400 | // Abort early if it does not exist |
401 | - if ( is_wp_error( $valid_check ) ) { |
|
401 | + if (is_wp_error($valid_check)) { |
|
402 | 402 | return $valid_check; |
403 | 403 | } |
404 | 404 | |
405 | - $request->set_param( 'context', 'edit' ); |
|
405 | + $request->set_param('context', 'edit'); |
|
406 | 406 | |
407 | 407 | // Prepare the updated data. |
408 | - $data_to_update = $this->prepare_item_for_database( $request ); |
|
408 | + $data_to_update = $this->prepare_item_for_database($request); |
|
409 | 409 | |
410 | - if ( is_wp_error( $data_to_update ) ) { |
|
410 | + if (is_wp_error($data_to_update)) { |
|
411 | 411 | return $data_to_update; |
412 | 412 | } |
413 | 413 | |
414 | - if( empty( $data_to_update['meta_input'] ) ) { |
|
415 | - unset( $data_to_update['meta_input'] ); |
|
414 | + if (empty($data_to_update['meta_input'])) { |
|
415 | + unset($data_to_update['meta_input']); |
|
416 | 416 | } |
417 | 417 | |
418 | 418 | // Abort if no item data is provided |
419 | - if( empty( $data_to_update ) ) { |
|
420 | - return new WP_Error( 'missing_data', __( 'An update request cannot be empty.', 'invoicing' ) ); |
|
419 | + if (empty($data_to_update)) { |
|
420 | + return new WP_Error('missing_data', __('An update request cannot be empty.', 'invoicing')); |
|
421 | 421 | } |
422 | 422 | |
423 | 423 | // post_status |
424 | - if( ! empty( $data_to_update['post_status'] ) ) { |
|
425 | - wpinv_update_discount_status( $request['id'], $data_to_update['post_status'] ); |
|
426 | - unset( $data_to_update['post_status'] ); |
|
424 | + if (!empty($data_to_update['post_status'])) { |
|
425 | + wpinv_update_discount_status($request['id'], $data_to_update['post_status']); |
|
426 | + unset($data_to_update['post_status']); |
|
427 | 427 | } |
428 | 428 | |
429 | 429 | // Update the item |
430 | - if( ! empty( $data_to_update ) ) { |
|
430 | + if (!empty($data_to_update)) { |
|
431 | 431 | |
432 | 432 | // Include the item ID |
433 | 433 | $data_to_update['ID'] = $request['id']; |
434 | 434 | |
435 | - $updated = wp_update_post( $data_to_update, true ); |
|
435 | + $updated = wp_update_post($data_to_update, true); |
|
436 | 436 | |
437 | 437 | // Incase the update operation failed... |
438 | - if ( is_wp_error( $updated ) ) { |
|
438 | + if (is_wp_error($updated)) { |
|
439 | 439 | return $updated; |
440 | 440 | } |
441 | 441 | |
442 | 442 | } |
443 | 443 | |
444 | - $updated_discount = get_post( $request['id'] ); |
|
444 | + $updated_discount = get_post($request['id']); |
|
445 | 445 | |
446 | 446 | // Prepare the response |
447 | - $response = $this->prepare_item_for_response( $updated_discount, $request ); |
|
447 | + $response = $this->prepare_item_for_response($updated_discount, $request); |
|
448 | 448 | |
449 | 449 | /** This action is documented in includes/class-wpinv-rest-item-controller.php */ |
450 | - do_action( "wpinv_rest_insert_discount", $updated_discount, $request, false ); |
|
450 | + do_action("wpinv_rest_insert_discount", $updated_discount, $request, false); |
|
451 | 451 | |
452 | 452 | /** |
453 | 453 | * Filters the responses for updating single discount requests. |
@@ -459,9 +459,9 @@ discard block |
||
459 | 459 | * @param array $data_to_update Discount properties. |
460 | 460 | * @param WP_REST_Request $request The request used. |
461 | 461 | */ |
462 | - $response = apply_filters( "wpinv_rest_update_discount_response", $response, $data_to_update, $request ); |
|
462 | + $response = apply_filters("wpinv_rest_update_discount_response", $response, $data_to_update, $request); |
|
463 | 463 | |
464 | - return rest_ensure_response( $response ); |
|
464 | + return rest_ensure_response($response); |
|
465 | 465 | } |
466 | 466 | |
467 | 467 | /** |
@@ -472,19 +472,19 @@ discard block |
||
472 | 472 | * @param WP_REST_Request $request Full details about the request. |
473 | 473 | * @return true|WP_Error True if the request has access to delete the discount, WP_Error object otherwise. |
474 | 474 | */ |
475 | - public function delete_item_permissions_check( $request ) { |
|
475 | + public function delete_item_permissions_check($request) { |
|
476 | 476 | |
477 | 477 | // Retrieve the discount. |
478 | - $discount = $this->get_post( $request['id'] ); |
|
479 | - if ( is_wp_error( $discount ) ) { |
|
478 | + $discount = $this->get_post($request['id']); |
|
479 | + if (is_wp_error($discount)) { |
|
480 | 480 | return $discount; |
481 | 481 | } |
482 | 482 | |
483 | 483 | // Ensure the current user can delete the discount |
484 | - if (! wpinv_current_user_can_manage_invoicing() ) { |
|
484 | + if (!wpinv_current_user_can_manage_invoicing()) { |
|
485 | 485 | return new WP_Error( |
486 | 486 | 'rest_cannot_delete', |
487 | - __( 'Sorry, you are not allowed to delete this discount.', 'invoicing' ), |
|
487 | + __('Sorry, you are not allowed to delete this discount.', 'invoicing'), |
|
488 | 488 | array( |
489 | 489 | 'status' => rest_authorization_required_code(), |
490 | 490 | ) |
@@ -502,24 +502,24 @@ discard block |
||
502 | 502 | * @param WP_REST_Request $request Full details about the request. |
503 | 503 | * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. |
504 | 504 | */ |
505 | - public function delete_item( $request ) { |
|
505 | + public function delete_item($request) { |
|
506 | 506 | |
507 | 507 | // Retrieve the discount. |
508 | - $discount = $this->get_post( $request['id'] ); |
|
509 | - if ( is_wp_error( $discount ) ) { |
|
508 | + $discount = $this->get_post($request['id']); |
|
509 | + if (is_wp_error($discount)) { |
|
510 | 510 | return $discount; |
511 | 511 | } |
512 | 512 | |
513 | - $request->set_param( 'context', 'edit' ); |
|
513 | + $request->set_param('context', 'edit'); |
|
514 | 514 | |
515 | 515 | // Prepare the discount id |
516 | - $id = $discount->ID; |
|
516 | + $id = $discount->ID; |
|
517 | 517 | |
518 | 518 | // Prepare the response |
519 | - $response = $this->prepare_item_for_response( $discount, $request ); |
|
519 | + $response = $this->prepare_item_for_response($discount, $request); |
|
520 | 520 | |
521 | 521 | // Delete the discount... |
522 | - wpinv_remove_discount( $id ); |
|
522 | + wpinv_remove_discount($id); |
|
523 | 523 | |
524 | 524 | /** |
525 | 525 | * Fires immediately after a single discount is deleted via the REST API. |
@@ -530,7 +530,7 @@ discard block |
||
530 | 530 | * @param WP_POST $discount The deleted discount. |
531 | 531 | * @param WP_REST_Request $request The request sent to the API. |
532 | 532 | */ |
533 | - do_action( "wpinv_rest_delete_discount", $discount, $request ); |
|
533 | + do_action("wpinv_rest_delete_discount", $discount, $request); |
|
534 | 534 | |
535 | 535 | return $response; |
536 | 536 | |
@@ -546,44 +546,44 @@ discard block |
||
546 | 546 | */ |
547 | 547 | public function get_collection_params() { |
548 | 548 | |
549 | - $query_params = array( |
|
549 | + $query_params = array( |
|
550 | 550 | |
551 | 551 | // Discount status. |
552 | 552 | 'status' => array( |
553 | 553 | 'default' => 'publish', |
554 | - 'description' => __( 'Limit result set to discounts assigned one or more statuses.', 'invoicing' ), |
|
554 | + 'description' => __('Limit result set to discounts assigned one or more statuses.', 'invoicing'), |
|
555 | 555 | 'type' => 'array', |
556 | - 'sanitize_callback' => array( $this, 'sanitize_post_statuses' ), |
|
556 | + 'sanitize_callback' => array($this, 'sanitize_post_statuses'), |
|
557 | 557 | ), |
558 | 558 | |
559 | 559 | // Discount types |
560 | 560 | 'type' => array( |
561 | - 'description' => __( 'Type of discounts to fetch.', 'invoicing' ), |
|
561 | + 'description' => __('Type of discounts to fetch.', 'invoicing'), |
|
562 | 562 | 'type' => 'array', |
563 | - 'default' => array_keys( wpinv_get_discount_types() ), |
|
563 | + 'default' => array_keys(wpinv_get_discount_types()), |
|
564 | 564 | 'items' => array( |
565 | - 'enum' => array_keys( wpinv_get_discount_types() ), |
|
565 | + 'enum' => array_keys(wpinv_get_discount_types()), |
|
566 | 566 | 'type' => 'string', |
567 | 567 | ), |
568 | 568 | ), |
569 | 569 | |
570 | 570 | // Number of results per page |
571 | 571 | 'limit' => array( |
572 | - 'description' => __( 'Number of discounts to fetch.', 'invoicing' ), |
|
572 | + 'description' => __('Number of discounts to fetch.', 'invoicing'), |
|
573 | 573 | 'type' => 'integer', |
574 | - 'default' => (int) get_option( 'posts_per_page' ), |
|
574 | + 'default' => (int) get_option('posts_per_page'), |
|
575 | 575 | ), |
576 | 576 | |
577 | 577 | // Pagination |
578 | 578 | 'page' => array( |
579 | - 'description' => __( 'Current page to fetch.', 'invoicing' ), |
|
579 | + 'description' => __('Current page to fetch.', 'invoicing'), |
|
580 | 580 | 'type' => 'integer', |
581 | 581 | 'default' => 1, |
582 | 582 | ), |
583 | 583 | |
584 | 584 | // Exclude certain items |
585 | 585 | 'exclude' => array( |
586 | - 'description' => __( 'Ensure result set excludes specific IDs.', 'invoicing' ), |
|
586 | + 'description' => __('Ensure result set excludes specific IDs.', 'invoicing'), |
|
587 | 587 | 'type' => 'array', |
588 | 588 | 'items' => array( |
589 | 589 | 'type' => 'integer', |
@@ -593,7 +593,7 @@ discard block |
||
593 | 593 | |
594 | 594 | // Order discounts by |
595 | 595 | 'orderby' => array( |
596 | - 'description' => __( 'Sort discounts by object attribute.', 'invoicing' ), |
|
596 | + 'description' => __('Sort discounts by object attribute.', 'invoicing'), |
|
597 | 597 | 'type' => 'string', |
598 | 598 | 'default' => 'date', |
599 | 599 | 'enum' => array( |
@@ -609,15 +609,15 @@ discard block |
||
609 | 609 | |
610 | 610 | // How to order |
611 | 611 | 'order' => array( |
612 | - 'description' => __( 'Order sort attribute ascending or descending.', 'invoicing' ), |
|
612 | + 'description' => __('Order sort attribute ascending or descending.', 'invoicing'), |
|
613 | 613 | 'type' => 'string', |
614 | 614 | 'default' => 'DESC', |
615 | - 'enum' => array( 'ASC', 'DESC' ), |
|
615 | + 'enum' => array('ASC', 'DESC'), |
|
616 | 616 | ), |
617 | 617 | |
618 | 618 | // Search term |
619 | 619 | 'search' => array( |
620 | - 'description' => __( 'Return discounts that match the search term.', 'invoicing' ), |
|
620 | + 'description' => __('Return discounts that match the search term.', 'invoicing'), |
|
621 | 621 | 'type' => 'string', |
622 | 622 | ), |
623 | 623 | ); |
@@ -630,7 +630,7 @@ discard block |
||
630 | 630 | * |
631 | 631 | * @param array $query_params JSON Schema-formatted collection parameters. |
632 | 632 | */ |
633 | - return apply_filters( "wpinv_rest_discounts_collection_params", $query_params ); |
|
633 | + return apply_filters("wpinv_rest_discounts_collection_params", $query_params); |
|
634 | 634 | } |
635 | 635 | |
636 | 636 | /** |
@@ -641,7 +641,7 @@ discard block |
||
641 | 641 | * @param object|string $post_type Post type name or object. |
642 | 642 | * @return bool Whether the post type is allowed in REST. |
643 | 643 | */ |
644 | - protected function check_is_post_type_allowed( $post_type ) { |
|
644 | + protected function check_is_post_type_allowed($post_type) { |
|
645 | 645 | return true; |
646 | 646 | } |
647 | 647 | |
@@ -653,93 +653,93 @@ discard block |
||
653 | 653 | * @param WP_REST_Request $request Request object. |
654 | 654 | * @return array|WP_Error Discount Properties or WP_Error. |
655 | 655 | */ |
656 | - protected function prepare_item_for_database( $request ) { |
|
657 | - $prepared_item = new stdClass(); |
|
656 | + protected function prepare_item_for_database($request) { |
|
657 | + $prepared_item = new stdClass(); |
|
658 | 658 | $prepared_item->meta_input = array(); |
659 | 659 | |
660 | 660 | // Post ID. |
661 | - if ( isset( $request['id'] ) ) { |
|
662 | - $existing_item = $this->get_post( $request['id'] ); |
|
663 | - if ( is_wp_error( $existing_item ) ) { |
|
661 | + if (isset($request['id'])) { |
|
662 | + $existing_item = $this->get_post($request['id']); |
|
663 | + if (is_wp_error($existing_item)) { |
|
664 | 664 | return $existing_item; |
665 | 665 | } |
666 | 666 | |
667 | - $prepared_item->ID = $existing_item->ID; |
|
667 | + $prepared_item->ID = $existing_item->ID; |
|
668 | 668 | } |
669 | 669 | |
670 | 670 | $schema = $this->get_item_schema(); |
671 | 671 | |
672 | 672 | // item title. |
673 | - if ( ! empty( $schema['properties']['title'] ) && isset( $request['title'] ) ) { |
|
674 | - $prepared_item->post_title = sanitize_text_field( $request['title'] ); |
|
673 | + if (!empty($schema['properties']['title']) && isset($request['title'])) { |
|
674 | + $prepared_item->post_title = sanitize_text_field($request['title']); |
|
675 | 675 | } |
676 | 676 | |
677 | 677 | // item status. |
678 | - if ( ! empty( $schema['properties']['status'] ) && isset( $request['status'] ) && in_array( $request['status'], array_keys( get_post_stati( array( 'internal' => false ) ) ) ) ) { |
|
679 | - $prepared_item->post_status = sanitize_text_field( $request['status'] ); |
|
678 | + if (!empty($schema['properties']['status']) && isset($request['status']) && in_array($request['status'], array_keys(get_post_stati(array('internal' => false))))) { |
|
679 | + $prepared_item->post_status = sanitize_text_field($request['status']); |
|
680 | 680 | } |
681 | 681 | |
682 | 682 | // Code. |
683 | - if ( ! empty( $schema['properties']['code'] ) && isset( $request['code'] ) ) { |
|
684 | - $prepared_item->meta_input['_wpi_discount_code'] = trim( $request['code'] ); |
|
683 | + if (!empty($schema['properties']['code']) && isset($request['code'])) { |
|
684 | + $prepared_item->meta_input['_wpi_discount_code'] = trim($request['code']); |
|
685 | 685 | } |
686 | 686 | |
687 | 687 | // Type. |
688 | - if ( ! empty( $schema['properties']['type'] ) && isset( $request['type'] ) && in_array( $request['type'], array_keys( wpinv_get_discount_types() ) ) ) { |
|
689 | - $prepared_item->meta_input['_wpi_discount_type'] = trim( $request['type'] ); |
|
688 | + if (!empty($schema['properties']['type']) && isset($request['type']) && in_array($request['type'], array_keys(wpinv_get_discount_types()))) { |
|
689 | + $prepared_item->meta_input['_wpi_discount_type'] = trim($request['type']); |
|
690 | 690 | } |
691 | 691 | |
692 | 692 | // Amount. |
693 | - if ( ! empty( $schema['properties']['amount'] ) && isset( $request['amount'] ) ) { |
|
694 | - $prepared_item->meta_input['_wpi_discount_amount'] = floatval( $request['amount'] ); |
|
693 | + if (!empty($schema['properties']['amount']) && isset($request['amount'])) { |
|
694 | + $prepared_item->meta_input['_wpi_discount_amount'] = floatval($request['amount']); |
|
695 | 695 | } |
696 | 696 | |
697 | 697 | // Items. |
698 | - if ( ! empty( $schema['properties']['items'] ) && isset( $request['items'] ) ) { |
|
699 | - $prepared_item->meta_input['_wpi_discount_items'] = wpinv_parse_list( $request['items'] ); |
|
698 | + if (!empty($schema['properties']['items']) && isset($request['items'])) { |
|
699 | + $prepared_item->meta_input['_wpi_discount_items'] = wpinv_parse_list($request['items']); |
|
700 | 700 | } |
701 | 701 | |
702 | 702 | // Excluded Items. |
703 | - if ( ! empty( $schema['properties']['exclude_items'] ) && isset( $request['exclude_items'] ) ) { |
|
704 | - $prepared_item->meta_input['_wpi_discount_excluded_items'] = wpinv_parse_list( $request['exclude_items'] ); |
|
703 | + if (!empty($schema['properties']['exclude_items']) && isset($request['exclude_items'])) { |
|
704 | + $prepared_item->meta_input['_wpi_discount_excluded_items'] = wpinv_parse_list($request['exclude_items']); |
|
705 | 705 | } |
706 | 706 | |
707 | 707 | // Start date. |
708 | - if ( ! empty( $schema['properties']['start_date'] ) && isset( $request['start_date'] ) ) { |
|
709 | - $prepared_item->meta_input['_wpi_discount_start'] = trim( $request['start_date'] ); |
|
708 | + if (!empty($schema['properties']['start_date']) && isset($request['start_date'])) { |
|
709 | + $prepared_item->meta_input['_wpi_discount_start'] = trim($request['start_date']); |
|
710 | 710 | } |
711 | 711 | |
712 | 712 | // End date. |
713 | - if ( ! empty( $schema['properties']['end_date'] ) && isset( $request['end_date'] ) ) { |
|
714 | - $prepared_item->meta_input['_wpi_discount_expiration'] = trim( $request['end_date'] ); |
|
713 | + if (!empty($schema['properties']['end_date']) && isset($request['end_date'])) { |
|
714 | + $prepared_item->meta_input['_wpi_discount_expiration'] = trim($request['end_date']); |
|
715 | 715 | } |
716 | 716 | |
717 | 717 | // Minimum amount. |
718 | - if ( ! empty( $schema['properties']['minimum_amount'] ) && isset( $request['minimum_amount'] ) ) { |
|
719 | - $prepared_item->meta_input['_wpi_discount_min_total'] = floatval( $request['minimum_amount'] ); |
|
718 | + if (!empty($schema['properties']['minimum_amount']) && isset($request['minimum_amount'])) { |
|
719 | + $prepared_item->meta_input['_wpi_discount_min_total'] = floatval($request['minimum_amount']); |
|
720 | 720 | } |
721 | 721 | |
722 | 722 | // Maximum amount. |
723 | - if ( ! empty( $schema['properties']['maximum_amount'] ) && isset( $request['maximum_amount'] ) ) { |
|
724 | - $prepared_item->meta_input['_wpi_discount_max_total'] = floatval( $request['maximum_amount'] ); |
|
723 | + if (!empty($schema['properties']['maximum_amount']) && isset($request['maximum_amount'])) { |
|
724 | + $prepared_item->meta_input['_wpi_discount_max_total'] = floatval($request['maximum_amount']); |
|
725 | 725 | } |
726 | 726 | |
727 | 727 | // Recurring. |
728 | - if ( ! empty( $schema['properties']['recurring'] ) && isset( $request['recurring'] ) ) { |
|
729 | - $prepared_item->meta_input['_wpi_discount_is_recurring'] = empty( (int) $request['recurring'] ) ? 0 : 1; |
|
728 | + if (!empty($schema['properties']['recurring']) && isset($request['recurring'])) { |
|
729 | + $prepared_item->meta_input['_wpi_discount_is_recurring'] = empty((int) $request['recurring']) ? 0 : 1; |
|
730 | 730 | } |
731 | 731 | |
732 | 732 | // Maximum uses. |
733 | - if ( ! empty( $schema['properties']['max_uses'] ) && isset( $request['max_uses'] ) ) { |
|
734 | - $prepared_item->meta_input['_wpi_discount_max_uses'] = intval( $request['max_uses'] ); |
|
733 | + if (!empty($schema['properties']['max_uses']) && isset($request['max_uses'])) { |
|
734 | + $prepared_item->meta_input['_wpi_discount_max_uses'] = intval($request['max_uses']); |
|
735 | 735 | } |
736 | 736 | |
737 | 737 | // Single use. |
738 | - if ( ! empty( $schema['properties']['single_use'] ) && isset( $request['single_use'] ) ) { |
|
739 | - $prepared_item->meta_input['_wpi_discount_is_single_use'] = empty( (int) $request['single_use'] ) ? 0 : 1; |
|
738 | + if (!empty($schema['properties']['single_use']) && isset($request['single_use'])) { |
|
739 | + $prepared_item->meta_input['_wpi_discount_is_single_use'] = empty((int) $request['single_use']) ? 0 : 1; |
|
740 | 740 | } |
741 | 741 | |
742 | - $discount_data = (array) wp_unslash( $prepared_item ); |
|
742 | + $discount_data = (array) wp_unslash($prepared_item); |
|
743 | 743 | |
744 | 744 | /** |
745 | 745 | * Filters an item before it is inserted via the REST API. |
@@ -749,7 +749,7 @@ discard block |
||
749 | 749 | * @param array $discount_data An array of discount data |
750 | 750 | * @param WP_REST_Request $request Request object. |
751 | 751 | */ |
752 | - return apply_filters( "wpinv_rest_pre_insert_discount", $discount_data, $request ); |
|
752 | + return apply_filters("wpinv_rest_pre_insert_discount", $discount_data, $request); |
|
753 | 753 | |
754 | 754 | } |
755 | 755 | |
@@ -762,110 +762,110 @@ discard block |
||
762 | 762 | * @param WP_REST_Request $request Request object. |
763 | 763 | * @return WP_REST_Response Response object. |
764 | 764 | */ |
765 | - public function prepare_item_for_response( $discount, $request ) { |
|
765 | + public function prepare_item_for_response($discount, $request) { |
|
766 | 766 | |
767 | - $GLOBALS['post'] = get_post( $discount->ID ); |
|
767 | + $GLOBALS['post'] = get_post($discount->ID); |
|
768 | 768 | |
769 | - setup_postdata( $discount->ID ); |
|
769 | + setup_postdata($discount->ID); |
|
770 | 770 | |
771 | 771 | // Fetch the fields to include in this response. |
772 | - $fields = $this->get_fields_for_response( $request ); |
|
772 | + $fields = $this->get_fields_for_response($request); |
|
773 | 773 | |
774 | 774 | // Base fields for every discount. |
775 | 775 | $data = array(); |
776 | 776 | |
777 | 777 | // Set up ID. |
778 | - if ( rest_is_field_included( 'id', $fields ) ) { |
|
778 | + if (rest_is_field_included('id', $fields)) { |
|
779 | 779 | $data['id'] = $discount->ID; |
780 | 780 | } |
781 | 781 | |
782 | 782 | // Title. |
783 | - if ( rest_is_field_included( 'title', $fields ) ) { |
|
784 | - $data['title'] = get_the_title( $discount->ID ); |
|
783 | + if (rest_is_field_included('title', $fields)) { |
|
784 | + $data['title'] = get_the_title($discount->ID); |
|
785 | 785 | } |
786 | 786 | |
787 | 787 | // Code. |
788 | - if ( rest_is_field_included( 'code', $fields ) ) { |
|
789 | - $data['code'] = wpinv_get_discount_code( $discount->ID ); |
|
788 | + if (rest_is_field_included('code', $fields)) { |
|
789 | + $data['code'] = wpinv_get_discount_code($discount->ID); |
|
790 | 790 | } |
791 | 791 | |
792 | 792 | // Type. |
793 | - if ( rest_is_field_included( 'type', $fields ) ) { |
|
794 | - $data['type'] = wpinv_get_discount_type( $discount->ID ); |
|
793 | + if (rest_is_field_included('type', $fields)) { |
|
794 | + $data['type'] = wpinv_get_discount_type($discount->ID); |
|
795 | 795 | } |
796 | 796 | |
797 | 797 | // Amount. |
798 | - if ( rest_is_field_included( 'amount', $fields ) ) { |
|
799 | - $data['amount'] = wpinv_get_discount_amount( $discount->ID ); |
|
798 | + if (rest_is_field_included('amount', $fields)) { |
|
799 | + $data['amount'] = wpinv_get_discount_amount($discount->ID); |
|
800 | 800 | } |
801 | 801 | |
802 | 802 | // Status. |
803 | - if ( rest_is_field_included( 'status', $fields ) ) { |
|
804 | - $data['status'] = get_post_status( $discount->ID ); |
|
803 | + if (rest_is_field_included('status', $fields)) { |
|
804 | + $data['status'] = get_post_status($discount->ID); |
|
805 | 805 | } |
806 | 806 | |
807 | 807 | // Items. |
808 | - if ( rest_is_field_included( 'items', $fields ) ) { |
|
809 | - $data['items'] = wpinv_get_discount_item_reqs( $discount->ID ); |
|
808 | + if (rest_is_field_included('items', $fields)) { |
|
809 | + $data['items'] = wpinv_get_discount_item_reqs($discount->ID); |
|
810 | 810 | } |
811 | 811 | |
812 | 812 | // Excluded Items. |
813 | - if ( rest_is_field_included( 'exclude_items', $fields ) ) { |
|
814 | - $data['exclude_items'] = wpinv_get_discount_excluded_items( $discount->ID ); |
|
813 | + if (rest_is_field_included('exclude_items', $fields)) { |
|
814 | + $data['exclude_items'] = wpinv_get_discount_excluded_items($discount->ID); |
|
815 | 815 | } |
816 | 816 | |
817 | 817 | // Start date. |
818 | - if ( rest_is_field_included( 'start_date', $fields ) ) { |
|
819 | - $data['start_date'] = wpinv_get_discount_start_date( $discount->ID ); |
|
818 | + if (rest_is_field_included('start_date', $fields)) { |
|
819 | + $data['start_date'] = wpinv_get_discount_start_date($discount->ID); |
|
820 | 820 | } |
821 | 821 | |
822 | 822 | // End date. |
823 | - if ( rest_is_field_included( 'end_date', $fields ) ) { |
|
824 | - $data['end_date'] = wpinv_get_discount_expiration( $discount->ID ); |
|
823 | + if (rest_is_field_included('end_date', $fields)) { |
|
824 | + $data['end_date'] = wpinv_get_discount_expiration($discount->ID); |
|
825 | 825 | } |
826 | 826 | |
827 | 827 | // Minimum amount. |
828 | - if ( rest_is_field_included( 'minimum_amount', $fields ) ) { |
|
829 | - $data['minimum_amount'] = wpinv_get_discount_min_total( $discount->ID ); |
|
828 | + if (rest_is_field_included('minimum_amount', $fields)) { |
|
829 | + $data['minimum_amount'] = wpinv_get_discount_min_total($discount->ID); |
|
830 | 830 | } |
831 | 831 | |
832 | 832 | // Maximum amount. |
833 | - if ( rest_is_field_included( 'maximum_amount', $fields ) ) { |
|
834 | - $data['maximum_amount'] = wpinv_get_discount_max_total( $discount->ID ); |
|
833 | + if (rest_is_field_included('maximum_amount', $fields)) { |
|
834 | + $data['maximum_amount'] = wpinv_get_discount_max_total($discount->ID); |
|
835 | 835 | } |
836 | 836 | |
837 | 837 | // Recurring. |
838 | - if ( rest_is_field_included( 'recurring', $fields ) ) { |
|
839 | - $data['recurring'] = wpinv_discount_is_recurring( $discount->ID ); |
|
838 | + if (rest_is_field_included('recurring', $fields)) { |
|
839 | + $data['recurring'] = wpinv_discount_is_recurring($discount->ID); |
|
840 | 840 | } |
841 | 841 | |
842 | 842 | // Maximum uses. |
843 | - if ( rest_is_field_included( 'max_uses', $fields ) ) { |
|
844 | - $data['max_uses'] = wpinv_get_discount_max_uses( $discount->ID ); |
|
843 | + if (rest_is_field_included('max_uses', $fields)) { |
|
844 | + $data['max_uses'] = wpinv_get_discount_max_uses($discount->ID); |
|
845 | 845 | } |
846 | 846 | |
847 | 847 | // Single use. |
848 | - if ( rest_is_field_included( 'single_use', $fields ) ) { |
|
849 | - $data['single_use'] = wpinv_discount_is_single_use( $discount->ID ); |
|
848 | + if (rest_is_field_included('single_use', $fields)) { |
|
849 | + $data['single_use'] = wpinv_discount_is_single_use($discount->ID); |
|
850 | 850 | } |
851 | 851 | |
852 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
853 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
854 | - $data = $this->filter_response_by_context( $data, $context ); |
|
852 | + $context = !empty($request['context']) ? $request['context'] : 'view'; |
|
853 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
854 | + $data = $this->filter_response_by_context($data, $context); |
|
855 | 855 | |
856 | 856 | // Wrap the data in a response object. |
857 | - $response = rest_ensure_response( $data ); |
|
857 | + $response = rest_ensure_response($data); |
|
858 | 858 | |
859 | - $links = $this->prepare_links( $discount ); |
|
860 | - $response->add_links( $links ); |
|
859 | + $links = $this->prepare_links($discount); |
|
860 | + $response->add_links($links); |
|
861 | 861 | |
862 | - if ( ! empty( $links['self']['href'] ) ) { |
|
863 | - $actions = $this->get_available_actions( $discount, $request ); |
|
862 | + if (!empty($links['self']['href'])) { |
|
863 | + $actions = $this->get_available_actions($discount, $request); |
|
864 | 864 | |
865 | 865 | $self = $links['self']['href']; |
866 | 866 | |
867 | - foreach ( $actions as $rel ) { |
|
868 | - $response->add_link( $rel, $self ); |
|
867 | + foreach ($actions as $rel) { |
|
868 | + $response->add_link($rel, $self); |
|
869 | 869 | } |
870 | 870 | } |
871 | 871 | |
@@ -878,7 +878,7 @@ discard block |
||
878 | 878 | * @param WP_Post $discount The discount post object. |
879 | 879 | * @param WP_REST_Request $request Request object. |
880 | 880 | */ |
881 | - return apply_filters( "wpinv_rest_prepare_discount", $response, $discount, $request ); |
|
881 | + return apply_filters("wpinv_rest_prepare_discount", $response, $discount, $request); |
|
882 | 882 | } |
883 | 883 | |
884 | 884 | /** |
@@ -891,57 +891,57 @@ discard block |
||
891 | 891 | * @param WP_REST_Request $request Full details about the request. |
892 | 892 | * @return array Fields to be included in the response. |
893 | 893 | */ |
894 | - public function get_fields_for_response( $request ) { |
|
894 | + public function get_fields_for_response($request) { |
|
895 | 895 | $schema = $this->get_item_schema(); |
896 | - $properties = isset( $schema['properties'] ) ? $schema['properties'] : array(); |
|
896 | + $properties = isset($schema['properties']) ? $schema['properties'] : array(); |
|
897 | 897 | |
898 | 898 | $additional_fields = $this->get_additional_fields(); |
899 | - foreach ( $additional_fields as $field_name => $field_options ) { |
|
899 | + foreach ($additional_fields as $field_name => $field_options) { |
|
900 | 900 | // For back-compat, include any field with an empty schema |
901 | 901 | // because it won't be present in $this->get_item_schema(). |
902 | - if ( is_null( $field_options['schema'] ) ) { |
|
903 | - $properties[ $field_name ] = $field_options; |
|
902 | + if (is_null($field_options['schema'])) { |
|
903 | + $properties[$field_name] = $field_options; |
|
904 | 904 | } |
905 | 905 | } |
906 | 906 | |
907 | 907 | // Exclude fields that specify a different context than the request context. |
908 | 908 | $context = $request['context']; |
909 | - if ( $context ) { |
|
910 | - foreach ( $properties as $name => $options ) { |
|
911 | - if ( ! empty( $options['context'] ) && ! in_array( $context, $options['context'], true ) ) { |
|
912 | - unset( $properties[ $name ] ); |
|
909 | + if ($context) { |
|
910 | + foreach ($properties as $name => $options) { |
|
911 | + if (!empty($options['context']) && !in_array($context, $options['context'], true)) { |
|
912 | + unset($properties[$name]); |
|
913 | 913 | } |
914 | 914 | } |
915 | 915 | } |
916 | 916 | |
917 | - $fields = array_keys( $properties ); |
|
917 | + $fields = array_keys($properties); |
|
918 | 918 | |
919 | - if ( ! isset( $request['_fields'] ) ) { |
|
919 | + if (!isset($request['_fields'])) { |
|
920 | 920 | return $fields; |
921 | 921 | } |
922 | - $requested_fields = wpinv_parse_list( $request['_fields'] ); |
|
923 | - if ( 0 === count( $requested_fields ) ) { |
|
922 | + $requested_fields = wpinv_parse_list($request['_fields']); |
|
923 | + if (0 === count($requested_fields)) { |
|
924 | 924 | return $fields; |
925 | 925 | } |
926 | 926 | // Trim off outside whitespace from the comma delimited list. |
927 | - $requested_fields = array_map( 'trim', $requested_fields ); |
|
927 | + $requested_fields = array_map('trim', $requested_fields); |
|
928 | 928 | // Always persist 'id', because it can be needed for add_additional_fields_to_object(). |
929 | - if ( in_array( 'id', $fields, true ) ) { |
|
929 | + if (in_array('id', $fields, true)) { |
|
930 | 930 | $requested_fields[] = 'id'; |
931 | 931 | } |
932 | 932 | // Return the list of all requested fields which appear in the schema. |
933 | 933 | return array_reduce( |
934 | 934 | $requested_fields, |
935 | - function( $response_fields, $field ) use ( $fields ) { |
|
936 | - if ( in_array( $field, $fields, true ) ) { |
|
935 | + function($response_fields, $field) use ($fields) { |
|
936 | + if (in_array($field, $fields, true)) { |
|
937 | 937 | $response_fields[] = $field; |
938 | 938 | return $response_fields; |
939 | 939 | } |
940 | 940 | // Check for nested fields if $field is not a direct match. |
941 | - $nested_fields = explode( '.', $field ); |
|
941 | + $nested_fields = explode('.', $field); |
|
942 | 942 | // A nested field is included so long as its top-level property is |
943 | 943 | // present in the schema. |
944 | - if ( in_array( $nested_fields[0], $fields, true ) ) { |
|
944 | + if (in_array($nested_fields[0], $fields, true)) { |
|
945 | 945 | $response_fields[] = $field; |
946 | 946 | } |
947 | 947 | return $response_fields; |
@@ -960,8 +960,8 @@ discard block |
||
960 | 960 | public function get_item_schema() { |
961 | 961 | |
962 | 962 | // Maybe retrieve the schema from cache. |
963 | - if ( empty( $this->schema ) ) { |
|
964 | - return $this->add_additional_fields_schema( $this->schema ); |
|
963 | + if (empty($this->schema)) { |
|
964 | + return $this->add_additional_fields_schema($this->schema); |
|
965 | 965 | } |
966 | 966 | |
967 | 967 | $schema = array( |
@@ -973,99 +973,99 @@ discard block |
||
973 | 973 | 'properties' => array( |
974 | 974 | |
975 | 975 | 'id' => array( |
976 | - 'description' => __( 'Unique identifier for the discount.', 'invoicing' ), |
|
976 | + 'description' => __('Unique identifier for the discount.', 'invoicing'), |
|
977 | 977 | 'type' => 'integer', |
978 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
978 | + 'context' => array('view', 'edit', 'embed'), |
|
979 | 979 | 'readonly' => true, |
980 | 980 | ), |
981 | 981 | |
982 | 982 | 'title' => array( |
983 | - 'description' => __( 'The title for the discount.', 'invoicing' ), |
|
983 | + 'description' => __('The title for the discount.', 'invoicing'), |
|
984 | 984 | 'type' => 'string', |
985 | - 'context' => array( 'view', 'edit' ), |
|
985 | + 'context' => array('view', 'edit'), |
|
986 | 986 | ), |
987 | 987 | |
988 | 988 | 'code' => array( |
989 | - 'description' => __( 'The discount code.', 'invoicing' ), |
|
989 | + 'description' => __('The discount code.', 'invoicing'), |
|
990 | 990 | 'type' => 'string', |
991 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
991 | + 'context' => array('view', 'edit', 'embed'), |
|
992 | 992 | 'required' => true, |
993 | 993 | ), |
994 | 994 | |
995 | 995 | 'type' => array( |
996 | - 'description' => __( 'The type of discount.', 'invoicing' ), |
|
996 | + 'description' => __('The type of discount.', 'invoicing'), |
|
997 | 997 | 'type' => 'string', |
998 | - 'enum' => array_keys( wpinv_get_discount_types() ), |
|
999 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
998 | + 'enum' => array_keys(wpinv_get_discount_types()), |
|
999 | + 'context' => array('view', 'edit', 'embed'), |
|
1000 | 1000 | 'default' => 'percentage', |
1001 | 1001 | ), |
1002 | 1002 | |
1003 | 1003 | 'amount' => array( |
1004 | - 'description' => __( 'The discount value.', 'invoicing' ), |
|
1004 | + 'description' => __('The discount value.', 'invoicing'), |
|
1005 | 1005 | 'type' => 'number', |
1006 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
1006 | + 'context' => array('view', 'edit', 'embed'), |
|
1007 | 1007 | 'required' => true, |
1008 | 1008 | ), |
1009 | 1009 | |
1010 | 1010 | 'status' => array( |
1011 | - 'description' => __( 'A named status for the discount.', 'invoicing' ), |
|
1011 | + 'description' => __('A named status for the discount.', 'invoicing'), |
|
1012 | 1012 | 'type' => 'string', |
1013 | - 'enum' => array_keys( get_post_stati( array( 'internal' => false ) ) ), |
|
1014 | - 'context' => array( 'view', 'edit' ), |
|
1013 | + 'enum' => array_keys(get_post_stati(array('internal' => false))), |
|
1014 | + 'context' => array('view', 'edit'), |
|
1015 | 1015 | ), |
1016 | 1016 | |
1017 | 1017 | 'items' => array( |
1018 | - 'description' => __( 'Items which need to be in the cart to use this discount or, for "Item Discounts", which items are discounted. If left blank, this discount will be used on any item.', 'invoicing' ), |
|
1018 | + 'description' => __('Items which need to be in the cart to use this discount or, for "Item Discounts", which items are discounted. If left blank, this discount will be used on any item.', 'invoicing'), |
|
1019 | 1019 | 'type' => 'array', |
1020 | - 'context' => array( 'view', 'edit' ), |
|
1020 | + 'context' => array('view', 'edit'), |
|
1021 | 1021 | ), |
1022 | 1022 | |
1023 | 1023 | 'exclude_items' => array( |
1024 | - 'description' => __( 'Items which are NOT allowed to use this discount.', 'invoicing' ), |
|
1024 | + 'description' => __('Items which are NOT allowed to use this discount.', 'invoicing'), |
|
1025 | 1025 | 'type' => 'array', |
1026 | - 'context' => array( 'view', 'edit' ), |
|
1026 | + 'context' => array('view', 'edit'), |
|
1027 | 1027 | ), |
1028 | 1028 | |
1029 | 1029 | 'start_date' => array( |
1030 | - 'description' => __( 'The start date for the discount in the format of yyyy-mm-dd hh:mm:ss . If provided, the discount can only be used after or on this date.', 'invoicing' ), |
|
1030 | + 'description' => __('The start date for the discount in the format of yyyy-mm-dd hh:mm:ss . If provided, the discount can only be used after or on this date.', 'invoicing'), |
|
1031 | 1031 | 'type' => 'string', |
1032 | - 'context' => array( 'view', 'edit' ), |
|
1032 | + 'context' => array('view', 'edit'), |
|
1033 | 1033 | ), |
1034 | 1034 | |
1035 | 1035 | 'end_date' => array( |
1036 | - 'description' => __( 'The expiration date for the discount.', 'invoicing' ), |
|
1036 | + 'description' => __('The expiration date for the discount.', 'invoicing'), |
|
1037 | 1037 | 'type' => 'string', |
1038 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
1038 | + 'context' => array('view', 'edit', 'embed'), |
|
1039 | 1039 | ), |
1040 | 1040 | |
1041 | 1041 | 'minimum_amount' => array( |
1042 | - 'description' => __( 'Minimum amount needed to use this invoice.', 'invoicing' ), |
|
1042 | + 'description' => __('Minimum amount needed to use this invoice.', 'invoicing'), |
|
1043 | 1043 | 'type' => 'number', |
1044 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
1044 | + 'context' => array('view', 'edit', 'embed'), |
|
1045 | 1045 | ), |
1046 | 1046 | |
1047 | 1047 | 'maximum_amount' => array( |
1048 | - 'description' => __( 'Maximum amount needed to use this invoice.', 'invoicing' ), |
|
1048 | + 'description' => __('Maximum amount needed to use this invoice.', 'invoicing'), |
|
1049 | 1049 | 'type' => 'number', |
1050 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
1050 | + 'context' => array('view', 'edit', 'embed'), |
|
1051 | 1051 | ), |
1052 | 1052 | |
1053 | 1053 | 'recurring' => array( |
1054 | - 'description' => __( 'Whether the discount is applied to all recurring payments or only the first recurring payment.', 'invoicing' ), |
|
1054 | + 'description' => __('Whether the discount is applied to all recurring payments or only the first recurring payment.', 'invoicing'), |
|
1055 | 1055 | 'type' => 'integer', |
1056 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
1056 | + 'context' => array('view', 'edit', 'embed'), |
|
1057 | 1057 | ), |
1058 | 1058 | |
1059 | 1059 | 'max_uses' => array( |
1060 | - 'description' => __( 'The maximum number of times this discount code can be used.', 'invoicing' ), |
|
1060 | + 'description' => __('The maximum number of times this discount code can be used.', 'invoicing'), |
|
1061 | 1061 | 'type' => 'number', |
1062 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
1062 | + 'context' => array('view', 'edit', 'embed'), |
|
1063 | 1063 | ), |
1064 | 1064 | |
1065 | 1065 | 'single_use' => array( |
1066 | - 'description' => __( 'Whether or not this discount can only be used once per user.', 'invoicing' ), |
|
1066 | + 'description' => __('Whether or not this discount can only be used once per user.', 'invoicing'), |
|
1067 | 1067 | 'type' => 'integer', |
1068 | - 'context' => array( 'view', 'edit', 'embed' ), |
|
1068 | + 'context' => array('view', 'edit', 'embed'), |
|
1069 | 1069 | ) |
1070 | 1070 | |
1071 | 1071 | ), |
@@ -1083,12 +1083,12 @@ discard block |
||
1083 | 1083 | * |
1084 | 1084 | * @param array $schema The discount schema. |
1085 | 1085 | */ |
1086 | - $schema = apply_filters( "wpinv_rest_discount_schema", $schema ); |
|
1086 | + $schema = apply_filters("wpinv_rest_discount_schema", $schema); |
|
1087 | 1087 | |
1088 | 1088 | // Cache the discount schema. |
1089 | 1089 | $this->schema = $schema; |
1090 | 1090 | |
1091 | - return $this->add_additional_fields_schema( $this->schema ); |
|
1091 | + return $this->add_additional_fields_schema($this->schema); |
|
1092 | 1092 | } |
1093 | 1093 | |
1094 | 1094 | /** |
@@ -1100,20 +1100,20 @@ discard block |
||
1100 | 1100 | */ |
1101 | 1101 | protected function get_schema_links() { |
1102 | 1102 | |
1103 | - $href = rest_url( "{$this->namespace}/{$this->rest_base}/{id}" ); |
|
1103 | + $href = rest_url("{$this->namespace}/{$this->rest_base}/{id}"); |
|
1104 | 1104 | |
1105 | 1105 | $links = array(); |
1106 | 1106 | |
1107 | 1107 | $links[] = array( |
1108 | 1108 | 'rel' => 'https://api.w.org/action-publish', |
1109 | - 'title' => __( 'The current user can publish this discount.', 'invoicing' ), |
|
1109 | + 'title' => __('The current user can publish this discount.', 'invoicing'), |
|
1110 | 1110 | 'href' => $href, |
1111 | 1111 | 'targetSchema' => array( |
1112 | 1112 | 'type' => 'object', |
1113 | 1113 | 'properties' => array( |
1114 | 1114 | 'status' => array( |
1115 | 1115 | 'type' => 'string', |
1116 | - 'enum' => array( 'publish', 'future' ), |
|
1116 | + 'enum' => array('publish', 'future'), |
|
1117 | 1117 | ), |
1118 | 1118 | ), |
1119 | 1119 | ), |
@@ -1130,18 +1130,18 @@ discard block |
||
1130 | 1130 | * @param WP_Post $discount Post Object. |
1131 | 1131 | * @return array Links for the given discount. |
1132 | 1132 | */ |
1133 | - protected function prepare_links( $discount ) { |
|
1133 | + protected function prepare_links($discount) { |
|
1134 | 1134 | |
1135 | 1135 | // Prepare the base REST API endpoint for discounts. |
1136 | - $base = sprintf( '%s/%s', $this->namespace, $this->rest_base ); |
|
1136 | + $base = sprintf('%s/%s', $this->namespace, $this->rest_base); |
|
1137 | 1137 | |
1138 | 1138 | // Entity meta. |
1139 | 1139 | $links = array( |
1140 | 1140 | 'self' => array( |
1141 | - 'href' => rest_url( trailingslashit( $base ) . $discount->ID ), |
|
1141 | + 'href' => rest_url(trailingslashit($base) . $discount->ID), |
|
1142 | 1142 | ), |
1143 | 1143 | 'collection' => array( |
1144 | - 'href' => rest_url( $base ), |
|
1144 | + 'href' => rest_url($base), |
|
1145 | 1145 | ), |
1146 | 1146 | ); |
1147 | 1147 | |
@@ -1154,7 +1154,7 @@ discard block |
||
1154 | 1154 | * |
1155 | 1155 | * @param array $links Rest links. |
1156 | 1156 | */ |
1157 | - return apply_filters( "wpinv_rest_discount_links", $links ); |
|
1157 | + return apply_filters("wpinv_rest_discount_links", $links); |
|
1158 | 1158 | |
1159 | 1159 | } |
1160 | 1160 | |
@@ -1167,19 +1167,19 @@ discard block |
||
1167 | 1167 | * @param WP_REST_Request $request Request object. |
1168 | 1168 | * @return array List of link relations. |
1169 | 1169 | */ |
1170 | - protected function get_available_actions( $discount, $request ) { |
|
1170 | + protected function get_available_actions($discount, $request) { |
|
1171 | 1171 | |
1172 | - if ( 'edit' !== $request['context'] ) { |
|
1172 | + if ('edit' !== $request['context']) { |
|
1173 | 1173 | return array(); |
1174 | 1174 | } |
1175 | 1175 | |
1176 | 1176 | $rels = array(); |
1177 | 1177 | |
1178 | 1178 | // Retrieve the post type object. |
1179 | - $post_type = get_post_type_object( $discount->post_type ); |
|
1179 | + $post_type = get_post_type_object($discount->post_type); |
|
1180 | 1180 | |
1181 | 1181 | // Mark discount as published. |
1182 | - if ( current_user_can( $post_type->cap->publish_posts ) ) { |
|
1182 | + if (current_user_can($post_type->cap->publish_posts)) { |
|
1183 | 1183 | $rels[] = 'https://api.w.org/action-publish'; |
1184 | 1184 | } |
1185 | 1185 | |
@@ -1192,7 +1192,7 @@ discard block |
||
1192 | 1192 | * |
1193 | 1193 | * @param array $rels Available link relations. |
1194 | 1194 | */ |
1195 | - return apply_filters( "wpinv_rest_discount_link_relations", $rels ); |
|
1195 | + return apply_filters("wpinv_rest_discount_link_relations", $rels); |
|
1196 | 1196 | } |
1197 | 1197 | |
1198 | 1198 | /** |
@@ -1204,7 +1204,7 @@ discard block |
||
1204 | 1204 | * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. |
1205 | 1205 | */ |
1206 | 1206 | public function get_discount_types() { |
1207 | - return rest_ensure_response( wpinv_get_discount_types() ); |
|
1207 | + return rest_ensure_response(wpinv_get_discount_types()); |
|
1208 | 1208 | } |
1209 | 1209 | |
1210 | 1210 | } |
1211 | 1211 | \ No newline at end of file |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if (!defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -22,15 +22,15 @@ discard block |
||
22 | 22 | 'block-keywords'=> "['invoicing','subscriptions']", |
23 | 23 | 'class_name' => __CLASS__, |
24 | 24 | 'base_id' => 'wpinv_subscriptions', |
25 | - 'name' => __('Invoicing > Subscriptions History','invoicing'), |
|
25 | + 'name' => __('Invoicing > Subscriptions History', 'invoicing'), |
|
26 | 26 | 'widget_ops' => array( |
27 | 27 | 'classname' => 'wpinv-checkout-class wpi-g', |
28 | - 'description' => esc_html__('Displays subscriptions history.','invoicing'), |
|
28 | + 'description' => esc_html__('Displays subscriptions history.', 'invoicing'), |
|
29 | 29 | ), |
30 | 30 | 'arguments' => array( |
31 | 31 | 'title' => array( |
32 | - 'title' => __( 'Widget title', 'invoicing' ), |
|
33 | - 'desc' => __( 'Enter widget title.', 'invoicing' ), |
|
32 | + 'title' => __('Widget title', 'invoicing'), |
|
33 | + 'desc' => __('Enter widget title.', 'invoicing'), |
|
34 | 34 | 'type' => 'text', |
35 | 35 | 'desc_tip' => true, |
36 | 36 | 'default' => '', |
@@ -41,7 +41,7 @@ discard block |
||
41 | 41 | ); |
42 | 42 | |
43 | 43 | |
44 | - parent::__construct( $options ); |
|
44 | + parent::__construct($options); |
|
45 | 45 | } |
46 | 46 | |
47 | 47 | /** |
@@ -53,13 +53,13 @@ discard block |
||
53 | 53 | * |
54 | 54 | * @return mixed|string|bool |
55 | 55 | */ |
56 | - public function output( $args = array(), $widget_args = array(), $content = '' ) { |
|
56 | + public function output($args = array(), $widget_args = array(), $content = '') { |
|
57 | 57 | |
58 | 58 | ob_start(); |
59 | 59 | |
60 | - do_action( 'wpinv_before_user_subscriptions' ); |
|
61 | - wpinv_get_template_part( 'wpinv-subscriptions-history' ); |
|
62 | - do_action( 'wpinv_after_user_subscriptions' ); |
|
60 | + do_action('wpinv_before_user_subscriptions'); |
|
61 | + wpinv_get_template_part('wpinv-subscriptions-history'); |
|
62 | + do_action('wpinv_after_user_subscriptions'); |
|
63 | 63 | |
64 | 64 | $output = ob_get_clean(); |
65 | 65 | return trim($output); |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if (!defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -23,15 +23,15 @@ discard block |
||
23 | 23 | 'block-keywords'=> "['invoicing','checkout']", |
24 | 24 | 'class_name' => __CLASS__, |
25 | 25 | 'base_id' => 'wpinv_checkout', |
26 | - 'name' => __('Invoicing > Checkout','invoicing'), |
|
26 | + 'name' => __('Invoicing > Checkout', 'invoicing'), |
|
27 | 27 | 'widget_ops' => array( |
28 | 28 | 'classname' => 'wpinv-checkout-class wpi-g', |
29 | - 'description' => esc_html__('Displays checkout form.','invoicing'), |
|
29 | + 'description' => esc_html__('Displays checkout form.', 'invoicing'), |
|
30 | 30 | ), |
31 | 31 | 'arguments' => array( |
32 | 32 | 'title' => array( |
33 | - 'title' => __( 'Widget title', 'invoicing' ), |
|
34 | - 'desc' => __( 'Enter widget title.', 'invoicing' ), |
|
33 | + 'title' => __('Widget title', 'invoicing'), |
|
34 | + 'desc' => __('Enter widget title.', 'invoicing'), |
|
35 | 35 | 'type' => 'text', |
36 | 36 | 'desc_tip' => true, |
37 | 37 | 'default' => '', |
@@ -42,7 +42,7 @@ discard block |
||
42 | 42 | ); |
43 | 43 | |
44 | 44 | |
45 | - parent::__construct( $options ); |
|
45 | + parent::__construct($options); |
|
46 | 46 | } |
47 | 47 | |
48 | 48 | /** |
@@ -54,7 +54,7 @@ discard block |
||
54 | 54 | * |
55 | 55 | * @return mixed|string|bool |
56 | 56 | */ |
57 | - public function output( $args = array(), $widget_args = array(), $content = '' ) { |
|
57 | + public function output($args = array(), $widget_args = array(), $content = '') { |
|
58 | 58 | |
59 | 59 | return wpinv_checkout_form(); |
60 | 60 |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if (!defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -22,15 +22,15 @@ discard block |
||
22 | 22 | 'block-keywords'=> "['invoicing','history']", |
23 | 23 | 'class_name' => __CLASS__, |
24 | 24 | 'base_id' => 'wpinv_messages', |
25 | - 'name' => __('Invoicing > Invoice Messages','invoicing'), |
|
25 | + 'name' => __('Invoicing > Invoice Messages', 'invoicing'), |
|
26 | 26 | 'widget_ops' => array( |
27 | 27 | 'classname' => 'wpinv-messages-class wpi-g', |
28 | - 'description' => esc_html__('Displays invoice error and warning messages on checkout page.','invoicing'), |
|
28 | + 'description' => esc_html__('Displays invoice error and warning messages on checkout page.', 'invoicing'), |
|
29 | 29 | ), |
30 | 30 | 'arguments' => array( |
31 | 31 | 'title' => array( |
32 | - 'title' => __( 'Widget title', 'invoicing' ), |
|
33 | - 'desc' => __( 'Enter widget title.', 'invoicing' ), |
|
32 | + 'title' => __('Widget title', 'invoicing'), |
|
33 | + 'desc' => __('Enter widget title.', 'invoicing'), |
|
34 | 34 | 'type' => 'text', |
35 | 35 | 'desc_tip' => true, |
36 | 36 | 'default' => '', |
@@ -41,7 +41,7 @@ discard block |
||
41 | 41 | ); |
42 | 42 | |
43 | 43 | |
44 | - parent::__construct( $options ); |
|
44 | + parent::__construct($options); |
|
45 | 45 | } |
46 | 46 | |
47 | 47 | /** |
@@ -53,7 +53,7 @@ discard block |
||
53 | 53 | * |
54 | 54 | * @return mixed|string|bool |
55 | 55 | */ |
56 | - public function output( $args = array(), $widget_args = array(), $content = '' ) { |
|
56 | + public function output($args = array(), $widget_args = array(), $content = '') { |
|
57 | 57 | |
58 | 58 | ob_start(); |
59 | 59 |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if (!defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -22,15 +22,15 @@ discard block |
||
22 | 22 | 'block-keywords'=> "['invoicing','history']", |
23 | 23 | 'class_name' => __CLASS__, |
24 | 24 | 'base_id' => 'wpinv_history', |
25 | - 'name' => __('Invoicing > Invoice History','invoicing'), |
|
25 | + 'name' => __('Invoicing > Invoice History', 'invoicing'), |
|
26 | 26 | 'widget_ops' => array( |
27 | 27 | 'classname' => 'wpinv-history-class wpi-g', |
28 | - 'description' => esc_html__('Displays invoice history.','invoicing'), |
|
28 | + 'description' => esc_html__('Displays invoice history.', 'invoicing'), |
|
29 | 29 | ), |
30 | 30 | 'arguments' => array( |
31 | 31 | 'title' => array( |
32 | - 'title' => __( 'Widget title', 'invoicing' ), |
|
33 | - 'desc' => __( 'Enter widget title.', 'invoicing' ), |
|
32 | + 'title' => __('Widget title', 'invoicing'), |
|
33 | + 'desc' => __('Enter widget title.', 'invoicing'), |
|
34 | 34 | 'type' => 'text', |
35 | 35 | 'desc_tip' => true, |
36 | 36 | 'default' => '', |
@@ -41,7 +41,7 @@ discard block |
||
41 | 41 | ); |
42 | 42 | |
43 | 43 | |
44 | - parent::__construct( $options ); |
|
44 | + parent::__construct($options); |
|
45 | 45 | } |
46 | 46 | |
47 | 47 | /** |
@@ -53,13 +53,13 @@ discard block |
||
53 | 53 | * |
54 | 54 | * @return mixed|string|bool |
55 | 55 | */ |
56 | - public function output( $args = array(), $widget_args = array(), $content = '' ) { |
|
56 | + public function output($args = array(), $widget_args = array(), $content = '') { |
|
57 | 57 | |
58 | 58 | ob_start(); |
59 | 59 | |
60 | - do_action( 'wpinv_before_user_invoice_history' ); |
|
61 | - wpinv_get_template_part( 'wpinv-invoice-history' ); |
|
62 | - do_action( 'wpinv_after_user_invoice_history' ); |
|
60 | + do_action('wpinv_before_user_invoice_history'); |
|
61 | + wpinv_get_template_part('wpinv-invoice-history'); |
|
62 | + do_action('wpinv_after_user_invoice_history'); |
|
63 | 63 | |
64 | 64 | $output = ob_get_clean(); |
65 | 65 | return trim($output); |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if (!defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -22,15 +22,15 @@ discard block |
||
22 | 22 | 'block-keywords'=> "['invoicing','receipt']", |
23 | 23 | 'class_name' => __CLASS__, |
24 | 24 | 'base_id' => 'wpinv_receipt', |
25 | - 'name' => __('Invoicing > Invoice Receipt','invoicing'), |
|
25 | + 'name' => __('Invoicing > Invoice Receipt', 'invoicing'), |
|
26 | 26 | 'widget_ops' => array( |
27 | 27 | 'classname' => 'wpinv-receipt-class wpi-g', |
28 | - 'description' => esc_html__('Displays invoice receipt after checkout.','invoicing'), |
|
28 | + 'description' => esc_html__('Displays invoice receipt after checkout.', 'invoicing'), |
|
29 | 29 | ), |
30 | 30 | 'arguments' => array( |
31 | 31 | 'title' => array( |
32 | - 'title' => __( 'Widget title', 'invoicing' ), |
|
33 | - 'desc' => __( 'Enter widget title.', 'invoicing' ), |
|
32 | + 'title' => __('Widget title', 'invoicing'), |
|
33 | + 'desc' => __('Enter widget title.', 'invoicing'), |
|
34 | 34 | 'type' => 'text', |
35 | 35 | 'desc_tip' => true, |
36 | 36 | 'default' => '', |
@@ -41,7 +41,7 @@ discard block |
||
41 | 41 | ); |
42 | 42 | |
43 | 43 | |
44 | - parent::__construct( $options ); |
|
44 | + parent::__construct($options); |
|
45 | 45 | } |
46 | 46 | |
47 | 47 | /** |
@@ -53,13 +53,13 @@ discard block |
||
53 | 53 | * |
54 | 54 | * @return mixed|string|bool |
55 | 55 | */ |
56 | - public function output( $args = array(), $widget_args = array(), $content = '' ) { |
|
56 | + public function output($args = array(), $widget_args = array(), $content = '') { |
|
57 | 57 | |
58 | 58 | ob_start(); |
59 | 59 | |
60 | - do_action( 'wpinv_success_content_before' ); |
|
61 | - echo wpinv_payment_receipt( $args ); |
|
62 | - do_action( 'wpinv_success_content_after' ); |
|
60 | + do_action('wpinv_success_content_before'); |
|
61 | + echo wpinv_payment_receipt($args); |
|
62 | + do_action('wpinv_success_content_after'); |
|
63 | 63 | |
64 | 64 | $output = ob_get_clean(); |
65 | 65 | return trim($output); |
@@ -1,6 +1,6 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // Exit if accessed directly. |
3 | -if (!defined( 'ABSPATH' ) ) exit; |
|
3 | +if (!defined('ABSPATH')) exit; |
|
4 | 4 | |
5 | 5 | class WPInv_EUVat { |
6 | 6 | private static $is_ajax = false; |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | private static $instance = false; |
9 | 9 | |
10 | 10 | public static function get_instance() { |
11 | - if ( !self::$instance ) { |
|
11 | + if (!self::$instance) { |
|
12 | 12 | self::$instance = new self(); |
13 | 13 | self::$instance->actions(); |
14 | 14 | } |
@@ -17,137 +17,137 @@ discard block |
||
17 | 17 | } |
18 | 18 | |
19 | 19 | public function __construct() { |
20 | - self::$is_ajax = defined( 'DOING_AJAX' ) && DOING_AJAX; |
|
20 | + self::$is_ajax = defined('DOING_AJAX') && DOING_AJAX; |
|
21 | 21 | self::$default_country = wpinv_get_default_country(); |
22 | 22 | } |
23 | 23 | |
24 | 24 | public static function actions() { |
25 | - if ( is_admin() ) { |
|
26 | - add_action( 'admin_enqueue_scripts', array( self::$instance, 'enqueue_admin_scripts' ) ); |
|
27 | - add_action( 'wpinv_settings_sections_taxes', array( self::$instance, 'section_vat_settings' ) ); |
|
28 | - add_action( 'wpinv_settings_taxes', array( self::$instance, 'vat_settings' ) ); |
|
29 | - add_filter( 'wpinv_settings_taxes-vat_sanitize', array( self::$instance, 'sanitize_vat_settings' ) ); |
|
30 | - add_filter( 'wpinv_settings_taxes-vat_rates_sanitize', array( self::$instance, 'sanitize_vat_rates' ) ); |
|
31 | - add_action( 'wp_ajax_wpinv_add_vat_class', array( self::$instance, 'add_class' ) ); |
|
32 | - add_action( 'wp_ajax_nopriv_wpinv_add_vat_class', array( self::$instance, 'add_class' ) ); |
|
33 | - add_action( 'wp_ajax_wpinv_delete_vat_class', array( self::$instance, 'delete_class' ) ); |
|
34 | - add_action( 'wp_ajax_nopriv_wpinv_delete_vat_class', array( self::$instance, 'delete_class' ) ); |
|
35 | - add_action( 'wp_ajax_wpinv_update_vat_rates', array( self::$instance, 'update_eu_rates' ) ); |
|
36 | - add_action( 'wp_ajax_nopriv_wpinv_update_vat_rates', array( self::$instance, 'update_eu_rates' ) ); |
|
37 | - add_action( 'wp_ajax_wpinv_geoip2', array( self::$instance, 'geoip2_download_database' ) ); |
|
38 | - add_action( 'wp_ajax_nopriv_wpinv_geoip2', array( self::$instance, 'geoip2_download_database' ) ); |
|
39 | - } |
|
40 | - |
|
41 | - add_action( 'wp_enqueue_scripts', array( self::$instance, 'enqueue_vat_scripts' ) ); |
|
42 | - add_filter( 'wpinv_default_billing_country', array( self::$instance, 'get_user_country' ), 10 ); |
|
43 | - add_filter( 'wpinv_get_user_country', array( self::$instance, 'set_user_country' ), 10 ); |
|
44 | - add_action( 'wp_ajax_wpinv_vat_validate', array( self::$instance, 'ajax_vat_validate' ) ); |
|
45 | - add_action( 'wp_ajax_nopriv_wpinv_vat_validate', array( self::$instance, 'ajax_vat_validate' ) ); |
|
46 | - add_action( 'wp_ajax_wpinv_vat_reset', array( self::$instance, 'ajax_vat_reset' ) ); |
|
47 | - add_action( 'wp_ajax_nopriv_wpinv_vat_reset', array( self::$instance, 'ajax_vat_reset' ) ); |
|
48 | - add_action( 'wpinv_invoice_print_after_line_items', array( self::$instance, 'show_vat_notice' ), 999, 1 ); |
|
49 | - if ( wpinv_use_taxes() ) { |
|
50 | - add_action( 'wpinv_after_billing_fields', array( self::$instance, 'checkout_vat_fields' ) ); |
|
51 | - if ( self::allow_vat_rules() ) { |
|
52 | - add_action( 'wpinv_checkout_error_checks', array( self::$instance, 'checkout_vat_validate' ), 10, 2 ); |
|
53 | - add_filter( 'wpinv_tax_rate', array( self::$instance, 'get_rate' ), 10, 4 ); |
|
25 | + if (is_admin()) { |
|
26 | + add_action('admin_enqueue_scripts', array(self::$instance, 'enqueue_admin_scripts')); |
|
27 | + add_action('wpinv_settings_sections_taxes', array(self::$instance, 'section_vat_settings')); |
|
28 | + add_action('wpinv_settings_taxes', array(self::$instance, 'vat_settings')); |
|
29 | + add_filter('wpinv_settings_taxes-vat_sanitize', array(self::$instance, 'sanitize_vat_settings')); |
|
30 | + add_filter('wpinv_settings_taxes-vat_rates_sanitize', array(self::$instance, 'sanitize_vat_rates')); |
|
31 | + add_action('wp_ajax_wpinv_add_vat_class', array(self::$instance, 'add_class')); |
|
32 | + add_action('wp_ajax_nopriv_wpinv_add_vat_class', array(self::$instance, 'add_class')); |
|
33 | + add_action('wp_ajax_wpinv_delete_vat_class', array(self::$instance, 'delete_class')); |
|
34 | + add_action('wp_ajax_nopriv_wpinv_delete_vat_class', array(self::$instance, 'delete_class')); |
|
35 | + add_action('wp_ajax_wpinv_update_vat_rates', array(self::$instance, 'update_eu_rates')); |
|
36 | + add_action('wp_ajax_nopriv_wpinv_update_vat_rates', array(self::$instance, 'update_eu_rates')); |
|
37 | + add_action('wp_ajax_wpinv_geoip2', array(self::$instance, 'geoip2_download_database')); |
|
38 | + add_action('wp_ajax_nopriv_wpinv_geoip2', array(self::$instance, 'geoip2_download_database')); |
|
39 | + } |
|
40 | + |
|
41 | + add_action('wp_enqueue_scripts', array(self::$instance, 'enqueue_vat_scripts')); |
|
42 | + add_filter('wpinv_default_billing_country', array(self::$instance, 'get_user_country'), 10); |
|
43 | + add_filter('wpinv_get_user_country', array(self::$instance, 'set_user_country'), 10); |
|
44 | + add_action('wp_ajax_wpinv_vat_validate', array(self::$instance, 'ajax_vat_validate')); |
|
45 | + add_action('wp_ajax_nopriv_wpinv_vat_validate', array(self::$instance, 'ajax_vat_validate')); |
|
46 | + add_action('wp_ajax_wpinv_vat_reset', array(self::$instance, 'ajax_vat_reset')); |
|
47 | + add_action('wp_ajax_nopriv_wpinv_vat_reset', array(self::$instance, 'ajax_vat_reset')); |
|
48 | + add_action('wpinv_invoice_print_after_line_items', array(self::$instance, 'show_vat_notice'), 999, 1); |
|
49 | + if (wpinv_use_taxes()) { |
|
50 | + add_action('wpinv_after_billing_fields', array(self::$instance, 'checkout_vat_fields')); |
|
51 | + if (self::allow_vat_rules()) { |
|
52 | + add_action('wpinv_checkout_error_checks', array(self::$instance, 'checkout_vat_validate'), 10, 2); |
|
53 | + add_filter('wpinv_tax_rate', array(self::$instance, 'get_rate'), 10, 4); |
|
54 | 54 | } |
55 | 55 | } |
56 | 56 | } |
57 | 57 | |
58 | - public static function get_eu_states( $sort = true ) { |
|
59 | - $eu_states = array( 'AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GB', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE' ); |
|
60 | - if ( $sort ) { |
|
61 | - $sort = sort( $eu_states ); |
|
58 | + public static function get_eu_states($sort = true) { |
|
59 | + $eu_states = array('AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GB', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE'); |
|
60 | + if ($sort) { |
|
61 | + $sort = sort($eu_states); |
|
62 | 62 | } |
63 | 63 | |
64 | - return apply_filters( 'wpinv_get_eu_states', $eu_states, $sort ); |
|
64 | + return apply_filters('wpinv_get_eu_states', $eu_states, $sort); |
|
65 | 65 | } |
66 | 66 | |
67 | - public static function get_gst_countries( $sort = true ) { |
|
68 | - $gst_countries = array( 'AU', 'NZ', 'CA', 'CN' ); |
|
67 | + public static function get_gst_countries($sort = true) { |
|
68 | + $gst_countries = array('AU', 'NZ', 'CA', 'CN'); |
|
69 | 69 | |
70 | - if ( $sort ) { |
|
71 | - $sort = sort( $gst_countries ); |
|
70 | + if ($sort) { |
|
71 | + $sort = sort($gst_countries); |
|
72 | 72 | } |
73 | 73 | |
74 | - return apply_filters( 'wpinv_get_gst_countries', $gst_countries, $sort ); |
|
74 | + return apply_filters('wpinv_get_gst_countries', $gst_countries, $sort); |
|
75 | 75 | } |
76 | 76 | |
77 | - public static function is_eu_state( $country_code ) { |
|
78 | - $return = !empty( $country_code ) && in_array( strtoupper( $country_code ), self::get_eu_states() ) ? true : false; |
|
77 | + public static function is_eu_state($country_code) { |
|
78 | + $return = !empty($country_code) && in_array(strtoupper($country_code), self::get_eu_states()) ? true : false; |
|
79 | 79 | |
80 | - return apply_filters( 'wpinv_is_eu_state', $return, $country_code ); |
|
80 | + return apply_filters('wpinv_is_eu_state', $return, $country_code); |
|
81 | 81 | } |
82 | 82 | |
83 | - public static function is_gst_country( $country_code ) { |
|
84 | - $return = !empty( $country_code ) && in_array( strtoupper( $country_code ), self::get_gst_countries() ) ? true : false; |
|
83 | + public static function is_gst_country($country_code) { |
|
84 | + $return = !empty($country_code) && in_array(strtoupper($country_code), self::get_gst_countries()) ? true : false; |
|
85 | 85 | |
86 | - return apply_filters( 'wpinv_is_gst_country', $return, $country_code ); |
|
86 | + return apply_filters('wpinv_is_gst_country', $return, $country_code); |
|
87 | 87 | } |
88 | 88 | |
89 | 89 | public static function enqueue_vat_scripts() { |
90 | - if( wpinv_use_taxes() && wpinv_get_option( 'apply_vat_rules' ) ) { |
|
90 | + if (wpinv_use_taxes() && wpinv_get_option('apply_vat_rules')) { |
|
91 | 91 | self::load_vat_scripts(); |
92 | 92 | } |
93 | 93 | } |
94 | 94 | |
95 | - public static function load_vat_scripts(){ |
|
96 | - $suffix = '';//defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
95 | + public static function load_vat_scripts() { |
|
96 | + $suffix = ''; //defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
97 | 97 | |
98 | - wp_register_script( 'wpinv-vat-validation-script', WPINV_PLUGIN_URL . 'assets/js/jsvat' . $suffix . '.js', array( 'jquery' ), WPINV_VERSION ); |
|
99 | - wp_register_script( 'wpinv-vat-script', WPINV_PLUGIN_URL . 'assets/js/euvat' . $suffix . '.js', array( 'jquery' ), WPINV_VERSION ); |
|
98 | + wp_register_script('wpinv-vat-validation-script', WPINV_PLUGIN_URL . 'assets/js/jsvat' . $suffix . '.js', array('jquery'), WPINV_VERSION); |
|
99 | + wp_register_script('wpinv-vat-script', WPINV_PLUGIN_URL . 'assets/js/euvat' . $suffix . '.js', array('jquery'), WPINV_VERSION); |
|
100 | 100 | |
101 | - $vat_name = self::get_vat_name(); |
|
101 | + $vat_name = self::get_vat_name(); |
|
102 | 102 | |
103 | 103 | $vars = array(); |
104 | 104 | $vars['UseTaxes'] = wpinv_use_taxes(); |
105 | 105 | $vars['EUStates'] = self::get_eu_states(); |
106 | - $vars['NoRateSet'] = __( 'You have not set a rate. Do you want to continue?', 'invoicing' ); |
|
107 | - $vars['EmptyCompany'] = __( 'Please enter your registered company name!', 'invoicing' ); |
|
108 | - $vars['EmptyVAT'] = wp_sprintf( __( 'Please enter your %s number!', 'invoicing' ), $vat_name ); |
|
109 | - $vars['TotalsRefreshed'] = wp_sprintf( __( 'The invoice totals will be refreshed to update the %s.', 'invoicing' ), $vat_name ); |
|
110 | - $vars['ErrValidateVAT'] = wp_sprintf( __( 'Fail to validate the %s number!', 'invoicing' ), $vat_name ); |
|
111 | - $vars['ErrResetVAT'] = wp_sprintf( __( 'Fail to reset the %s number!', 'invoicing' ), $vat_name ); |
|
112 | - $vars['ErrInvalidVat'] = wp_sprintf( __( 'The %s number supplied does not have a valid format!', 'invoicing' ), $vat_name ); |
|
113 | - $vars['ErrInvalidResponse'] = __( 'An invalid response has been received from the server!', 'invoicing' ); |
|
106 | + $vars['NoRateSet'] = __('You have not set a rate. Do you want to continue?', 'invoicing'); |
|
107 | + $vars['EmptyCompany'] = __('Please enter your registered company name!', 'invoicing'); |
|
108 | + $vars['EmptyVAT'] = wp_sprintf(__('Please enter your %s number!', 'invoicing'), $vat_name); |
|
109 | + $vars['TotalsRefreshed'] = wp_sprintf(__('The invoice totals will be refreshed to update the %s.', 'invoicing'), $vat_name); |
|
110 | + $vars['ErrValidateVAT'] = wp_sprintf(__('Fail to validate the %s number!', 'invoicing'), $vat_name); |
|
111 | + $vars['ErrResetVAT'] = wp_sprintf(__('Fail to reset the %s number!', 'invoicing'), $vat_name); |
|
112 | + $vars['ErrInvalidVat'] = wp_sprintf(__('The %s number supplied does not have a valid format!', 'invoicing'), $vat_name); |
|
113 | + $vars['ErrInvalidResponse'] = __('An invalid response has been received from the server!', 'invoicing'); |
|
114 | 114 | $vars['ApplyVATRules'] = $vars['UseTaxes'] ? self::allow_vat_rules() : false; |
115 | 115 | $vars['HideVatFields'] = $vars['ApplyVATRules'] ? self::hide_vat_fields() : true; |
116 | - $vars['ErrResponse'] = __( 'The request response is invalid!', 'invoicing' ); |
|
117 | - $vars['ErrRateResponse'] = __( 'The get rate request response is invalid', 'invoicing' ); |
|
118 | - $vars['PageRefresh'] = __( 'The page will be refreshed in 10 seconds to show the new options.', 'invoicing' ); |
|
119 | - $vars['RequestResponseNotValidJSON'] = __( 'The get rate request response is not valid JSON', 'invoicing' ); |
|
120 | - $vars['GetRateRequestFailed'] = __( 'The get rate request failed: ', 'invoicing' ); |
|
121 | - $vars['NoRateInformationInResponse'] = __( 'The get rate request response does not contain any rate information', 'invoicing' ); |
|
122 | - $vars['RatesUpdated'] = __( 'The rates have been updated. Press the save button to record these new rates.', 'invoicing' ); |
|
123 | - $vars['IPAddressInformation'] = __( 'IP Address Information', 'invoicing' ); |
|
124 | - $vars['VatValidating'] = wp_sprintf( __( 'Validating %s number...', 'invoicing' ), $vat_name ); |
|
125 | - $vars['VatReseting'] = __( 'Reseting...', 'invoicing' ); |
|
126 | - $vars['VatValidated'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name ); |
|
127 | - $vars['VatNotValidated'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name ); |
|
128 | - $vars['ConfirmDeleteClass'] = __( 'Are you sure you wish to delete this rates class?', 'invoicing' ); |
|
116 | + $vars['ErrResponse'] = __('The request response is invalid!', 'invoicing'); |
|
117 | + $vars['ErrRateResponse'] = __('The get rate request response is invalid', 'invoicing'); |
|
118 | + $vars['PageRefresh'] = __('The page will be refreshed in 10 seconds to show the new options.', 'invoicing'); |
|
119 | + $vars['RequestResponseNotValidJSON'] = __('The get rate request response is not valid JSON', 'invoicing'); |
|
120 | + $vars['GetRateRequestFailed'] = __('The get rate request failed: ', 'invoicing'); |
|
121 | + $vars['NoRateInformationInResponse'] = __('The get rate request response does not contain any rate information', 'invoicing'); |
|
122 | + $vars['RatesUpdated'] = __('The rates have been updated. Press the save button to record these new rates.', 'invoicing'); |
|
123 | + $vars['IPAddressInformation'] = __('IP Address Information', 'invoicing'); |
|
124 | + $vars['VatValidating'] = wp_sprintf(__('Validating %s number...', 'invoicing'), $vat_name); |
|
125 | + $vars['VatReseting'] = __('Reseting...', 'invoicing'); |
|
126 | + $vars['VatValidated'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name); |
|
127 | + $vars['VatNotValidated'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name); |
|
128 | + $vars['ConfirmDeleteClass'] = __('Are you sure you wish to delete this rates class?', 'invoicing'); |
|
129 | 129 | $vars['isFront'] = is_admin() ? false : true; |
130 | 130 | $vars['baseCountry'] = wpinv_get_default_country(); |
131 | - $vars['disableVATSameCountry'] = ( self::same_country_rule() == 'no' ? true : false ); |
|
132 | - $vars['disableVATSimpleCheck'] = wpinv_get_option( 'vat_offline_check' ) ? true : false; |
|
131 | + $vars['disableVATSameCountry'] = (self::same_country_rule() == 'no' ? true : false); |
|
132 | + $vars['disableVATSimpleCheck'] = wpinv_get_option('vat_offline_check') ? true : false; |
|
133 | 133 | |
134 | - wp_enqueue_script( 'wpinv-vat-validation-script' ); |
|
135 | - wp_enqueue_script( 'wpinv-vat-script' ); |
|
136 | - wp_localize_script( 'wpinv-vat-script', 'WPInv_VAT_Vars', $vars ); |
|
134 | + wp_enqueue_script('wpinv-vat-validation-script'); |
|
135 | + wp_enqueue_script('wpinv-vat-script'); |
|
136 | + wp_localize_script('wpinv-vat-script', 'WPInv_VAT_Vars', $vars); |
|
137 | 137 | } |
138 | 138 | |
139 | 139 | public static function enqueue_admin_scripts() { |
140 | - if( isset( $_GET['page'] ) && 'wpinv-settings' == $_GET['page'] ) { |
|
140 | + if (isset($_GET['page']) && 'wpinv-settings' == $_GET['page']) { |
|
141 | 141 | self::load_vat_scripts(); |
142 | 142 | } |
143 | 143 | } |
144 | 144 | |
145 | - public static function section_vat_settings( $sections ) { |
|
146 | - if ( !empty( $sections ) ) { |
|
147 | - $sections['vat'] = __( 'EU VAT Settings', 'invoicing' ); |
|
145 | + public static function section_vat_settings($sections) { |
|
146 | + if (!empty($sections)) { |
|
147 | + $sections['vat'] = __('EU VAT Settings', 'invoicing'); |
|
148 | 148 | |
149 | - if ( self::allow_vat_classes() ) { |
|
150 | - $sections['vat_rates'] = __( 'EU VAT Rates', 'invoicing' ); |
|
149 | + if (self::allow_vat_classes()) { |
|
150 | + $sections['vat_rates'] = __('EU VAT Rates', 'invoicing'); |
|
151 | 151 | } |
152 | 152 | } |
153 | 153 | return $sections; |
@@ -156,52 +156,52 @@ discard block |
||
156 | 156 | public static function vat_rates_settings() { |
157 | 157 | $vat_classes = self::get_rate_classes(); |
158 | 158 | $vat_rates = array(); |
159 | - $vat_class = isset( $_REQUEST['wpi_sub'] ) && $_REQUEST['wpi_sub'] !== '' && isset( $vat_classes[$_REQUEST['wpi_sub']] )? sanitize_text_field( $_REQUEST['wpi_sub'] ) : '_new'; |
|
160 | - $current_url = remove_query_arg( 'wpi_sub' ); |
|
159 | + $vat_class = isset($_REQUEST['wpi_sub']) && $_REQUEST['wpi_sub'] !== '' && isset($vat_classes[$_REQUEST['wpi_sub']]) ? sanitize_text_field($_REQUEST['wpi_sub']) : '_new'; |
|
160 | + $current_url = remove_query_arg('wpi_sub'); |
|
161 | 161 | |
162 | 162 | $vat_rates['vat_rates_header'] = array( |
163 | 163 | 'id' => 'vat_rates_header', |
164 | - 'name' => '<h3>' . __( 'Manage VAT Rates', 'invoicing' ) . '</h3>', |
|
164 | + 'name' => '<h3>' . __('Manage VAT Rates', 'invoicing') . '</h3>', |
|
165 | 165 | 'desc' => '', |
166 | 166 | 'type' => 'header', |
167 | 167 | 'size' => 'regular' |
168 | 168 | ); |
169 | 169 | $vat_rates['vat_rates_class'] = array( |
170 | 170 | 'id' => 'vat_rates_class', |
171 | - 'name' => __( 'Edit VAT Rates', 'invoicing' ), |
|
172 | - 'desc' => __( 'The standard rate will apply where no explicit rate is provided.', 'invoicing' ), |
|
171 | + 'name' => __('Edit VAT Rates', 'invoicing'), |
|
172 | + 'desc' => __('The standard rate will apply where no explicit rate is provided.', 'invoicing'), |
|
173 | 173 | 'type' => 'select', |
174 | - 'options' => array_merge( $vat_classes, array( '_new' => __( 'Add New Rate Class', 'invoicing' ) ) ), |
|
175 | - 'placeholder' => __( 'Select a VAT Rate', 'invoicing' ), |
|
174 | + 'options' => array_merge($vat_classes, array('_new' => __('Add New Rate Class', 'invoicing'))), |
|
175 | + 'placeholder' => __('Select a VAT Rate', 'invoicing'), |
|
176 | 176 | 'selected' => $vat_class, |
177 | 177 | 'class' => 'wpi_select2', |
178 | 178 | 'onchange' => 'document.location.href="' . $current_url . '&wpi_sub=" + this.value;', |
179 | 179 | ); |
180 | 180 | |
181 | - if ( $vat_class != '_standard' && $vat_class != '_new' ) { |
|
181 | + if ($vat_class != '_standard' && $vat_class != '_new') { |
|
182 | 182 | $vat_rates['vat_rate_delete'] = array( |
183 | 183 | 'id' => 'vat_rate_delete', |
184 | 184 | 'type' => 'vat_rate_delete', |
185 | 185 | ); |
186 | 186 | } |
187 | 187 | |
188 | - if ( $vat_class == '_new' ) { |
|
188 | + if ($vat_class == '_new') { |
|
189 | 189 | $vat_rates['vat_rates_settings'] = array( |
190 | 190 | 'id' => 'vat_rates_settings', |
191 | - 'name' => '<h3>' . __( 'Add New Rate Class', 'invoicing' ) . '</h3>', |
|
191 | + 'name' => '<h3>' . __('Add New Rate Class', 'invoicing') . '</h3>', |
|
192 | 192 | 'type' => 'header', |
193 | 193 | ); |
194 | 194 | $vat_rates['vat_rate_name'] = array( |
195 | 195 | 'id' => 'vat_rate_name', |
196 | - 'name' => __( 'Name', 'invoicing' ), |
|
197 | - 'desc' => __( 'A short name for the new VAT Rate class', 'invoicing' ), |
|
196 | + 'name' => __('Name', 'invoicing'), |
|
197 | + 'desc' => __('A short name for the new VAT Rate class', 'invoicing'), |
|
198 | 198 | 'type' => 'text', |
199 | 199 | 'size' => 'regular', |
200 | 200 | ); |
201 | 201 | $vat_rates['vat_rate_desc'] = array( |
202 | 202 | 'id' => 'vat_rate_desc', |
203 | - 'name' => __( 'Description', 'invoicing' ), |
|
204 | - 'desc' => __( 'Manage VAT Rate class', 'invoicing' ), |
|
203 | + 'name' => __('Description', 'invoicing'), |
|
204 | + 'desc' => __('Manage VAT Rate class', 'invoicing'), |
|
205 | 205 | 'type' => 'text', |
206 | 206 | 'size' => 'regular', |
207 | 207 | ); |
@@ -213,7 +213,7 @@ discard block |
||
213 | 213 | $vat_rates['vat_rates'] = array( |
214 | 214 | 'id' => 'vat_rates', |
215 | 215 | 'name' => '<h3>' . $vat_classes[$vat_class] . '</h3>', |
216 | - 'desc' => self::get_class_desc( $vat_class ), |
|
216 | + 'desc' => self::get_class_desc($vat_class), |
|
217 | 217 | 'type' => 'vat_rates', |
218 | 218 | ); |
219 | 219 | } |
@@ -221,12 +221,12 @@ discard block |
||
221 | 221 | return $vat_rates; |
222 | 222 | } |
223 | 223 | |
224 | - public static function vat_settings( $settings ) { |
|
225 | - if ( !empty( $settings ) ) { |
|
224 | + public static function vat_settings($settings) { |
|
225 | + if (!empty($settings)) { |
|
226 | 226 | $vat_settings = array(); |
227 | 227 | $vat_settings['vat_company_title'] = array( |
228 | 228 | 'id' => 'vat_company_title', |
229 | - 'name' => '<h3>' . __( 'Your Company Details', 'invoicing' ) . '</h3>', |
|
229 | + 'name' => '<h3>' . __('Your Company Details', 'invoicing') . '</h3>', |
|
230 | 230 | 'desc' => '', |
231 | 231 | 'type' => 'header', |
232 | 232 | 'size' => 'regular' |
@@ -234,22 +234,22 @@ discard block |
||
234 | 234 | |
235 | 235 | $vat_settings['vat_company_name'] = array( |
236 | 236 | 'id' => 'vat_company_name', |
237 | - 'name' => __( 'Your Company Name', 'invoicing' ), |
|
238 | - 'desc' => wp_sprintf(__( 'Your company name as it appears on your VAT return, you can verify it via your VAT ID on the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ), |
|
237 | + 'name' => __('Your Company Name', 'invoicing'), |
|
238 | + 'desc' => wp_sprintf(__('Your company name as it appears on your VAT return, you can verify it via your VAT ID on the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'), |
|
239 | 239 | 'type' => 'text', |
240 | 240 | 'size' => 'regular', |
241 | 241 | ); |
242 | 242 | |
243 | 243 | $vat_settings['vat_number'] = array( |
244 | 244 | 'id' => 'vat_number', |
245 | - 'name' => __( 'Your VAT Number', 'invoicing' ), |
|
245 | + 'name' => __('Your VAT Number', 'invoicing'), |
|
246 | 246 | 'type' => 'vat_number', |
247 | 247 | 'size' => 'regular', |
248 | 248 | ); |
249 | 249 | |
250 | 250 | $vat_settings['vat_settings_title'] = array( |
251 | 251 | 'id' => 'vat_settings_title', |
252 | - 'name' => '<h3>' . __( 'Apply VAT Settings', 'invoicing' ) . '</h3>', |
|
252 | + 'name' => '<h3>' . __('Apply VAT Settings', 'invoicing') . '</h3>', |
|
253 | 253 | 'desc' => '', |
254 | 254 | 'type' => 'header', |
255 | 255 | 'size' => 'regular' |
@@ -257,8 +257,8 @@ discard block |
||
257 | 257 | |
258 | 258 | $vat_settings['apply_vat_rules'] = array( |
259 | 259 | 'id' => 'apply_vat_rules', |
260 | - 'name' => __( 'Enable VAT Rules', 'invoicing' ), |
|
261 | - 'desc' => __( 'Apply VAT to consumer sales from IP addresses within the EU, even if the billing address is outside the EU.', 'invoicing' ) . '<br><font style="color:red">' . __( 'Do not disable unless you know what you are doing.', 'invoicing' ) . '</font>', |
|
260 | + 'name' => __('Enable VAT Rules', 'invoicing'), |
|
261 | + 'desc' => __('Apply VAT to consumer sales from IP addresses within the EU, even if the billing address is outside the EU.', 'invoicing') . '<br><font style="color:red">' . __('Do not disable unless you know what you are doing.', 'invoicing') . '</font>', |
|
262 | 262 | 'type' => 'checkbox', |
263 | 263 | 'std' => '1' |
264 | 264 | ); |
@@ -274,8 +274,8 @@ discard block |
||
274 | 274 | |
275 | 275 | $vat_settings['vat_prevent_b2c_purchase'] = array( |
276 | 276 | 'id' => 'vat_prevent_b2c_purchase', |
277 | - 'name' => __( 'Prevent EU B2C Sales', 'invoicing' ), |
|
278 | - 'desc' => __( 'Enable this option if you are not registered for VAT in the EU.', 'invoicing' ), |
|
277 | + 'name' => __('Prevent EU B2C Sales', 'invoicing'), |
|
278 | + 'desc' => __('Enable this option if you are not registered for VAT in the EU.', 'invoicing'), |
|
279 | 279 | 'type' => 'checkbox' |
280 | 280 | ); |
281 | 281 | |
@@ -283,22 +283,22 @@ discard block |
||
283 | 283 | |
284 | 284 | $vat_settings['vat_same_country_rule'] = array( |
285 | 285 | 'id' => 'vat_same_country_rule', |
286 | - 'name' => __( 'Same Country Rule', 'invoicing' ), |
|
287 | - 'desc' => __( 'Select how you want to handle VAT charge if sales are in the same country as the base country.', 'invoicing' ), |
|
286 | + 'name' => __('Same Country Rule', 'invoicing'), |
|
287 | + 'desc' => __('Select how you want to handle VAT charge if sales are in the same country as the base country.', 'invoicing'), |
|
288 | 288 | 'type' => 'select', |
289 | 289 | 'options' => array( |
290 | - '' => __( 'Normal', 'invoicing' ), |
|
291 | - 'no' => __( 'No VAT', 'invoicing' ), |
|
292 | - 'always' => __( 'Always apply VAT', 'invoicing' ), |
|
290 | + '' => __('Normal', 'invoicing'), |
|
291 | + 'no' => __('No VAT', 'invoicing'), |
|
292 | + 'always' => __('Always apply VAT', 'invoicing'), |
|
293 | 293 | ), |
294 | - 'placeholder' => __( 'Select an option', 'invoicing' ), |
|
294 | + 'placeholder' => __('Select an option', 'invoicing'), |
|
295 | 295 | 'std' => '', |
296 | 296 | 'class' => 'wpi_select2', |
297 | 297 | ); |
298 | 298 | |
299 | 299 | $vat_settings['vat_checkout_title'] = array( |
300 | 300 | 'id' => 'vat_checkout_title', |
301 | - 'name' => '<h3>' . __( 'Checkout Fields', 'invoicing' ) . '</h3>', |
|
301 | + 'name' => '<h3>' . __('Checkout Fields', 'invoicing') . '</h3>', |
|
302 | 302 | 'desc' => '', |
303 | 303 | 'type' => 'header', |
304 | 304 | 'size' => 'regular' |
@@ -306,14 +306,14 @@ discard block |
||
306 | 306 | |
307 | 307 | $vat_settings['vat_disable_fields'] = array( |
308 | 308 | 'id' => 'vat_disable_fields', |
309 | - 'name' => __( 'Disable VAT Fields', 'invoicing' ), |
|
310 | - 'desc' => __( 'Disable VAT fields if Invoicing is being used for GST.', 'invoicing' ) . '<br><font style="color:red">' . __( 'Do not disable if you have enabled Prevent EU B2C sales, otherwise Prevent EU B2C sales setting will not work.', 'invoicing' ) . '</font>', |
|
309 | + 'name' => __('Disable VAT Fields', 'invoicing'), |
|
310 | + 'desc' => __('Disable VAT fields if Invoicing is being used for GST.', 'invoicing') . '<br><font style="color:red">' . __('Do not disable if you have enabled Prevent EU B2C sales, otherwise Prevent EU B2C sales setting will not work.', 'invoicing') . '</font>', |
|
311 | 311 | 'type' => 'checkbox' |
312 | 312 | ); |
313 | 313 | |
314 | 314 | $vat_settings['vat_ip_lookup'] = array( |
315 | 315 | 'id' => 'vat_ip_lookup', |
316 | - 'name' => __( 'IP Country Look-up', 'invoicing' ), |
|
316 | + 'name' => __('IP Country Look-up', 'invoicing'), |
|
317 | 317 | 'type' => 'vat_ip_lookup', |
318 | 318 | 'size' => 'regular', |
319 | 319 | 'std' => 'default', |
@@ -322,21 +322,21 @@ discard block |
||
322 | 322 | |
323 | 323 | $vat_settings['hide_ip_address'] = array( |
324 | 324 | 'id' => 'hide_ip_address', |
325 | - 'name' => __( 'Hide IP Info at Checkout', 'invoicing' ), |
|
326 | - 'desc' => __( 'Hide the user IP info at checkout.', 'invoicing' ), |
|
325 | + 'name' => __('Hide IP Info at Checkout', 'invoicing'), |
|
326 | + 'desc' => __('Hide the user IP info at checkout.', 'invoicing'), |
|
327 | 327 | 'type' => 'checkbox' |
328 | 328 | ); |
329 | 329 | |
330 | 330 | $vat_settings['vat_ip_country_default'] = array( |
331 | 331 | 'id' => 'vat_ip_country_default', |
332 | - 'name' => __( 'Enable IP Country as Default', 'invoicing' ), |
|
333 | - 'desc' => __( 'Show the country of the users IP as the default country, otherwise the site default country will be used.', 'invoicing' ), |
|
332 | + 'name' => __('Enable IP Country as Default', 'invoicing'), |
|
333 | + 'desc' => __('Show the country of the users IP as the default country, otherwise the site default country will be used.', 'invoicing'), |
|
334 | 334 | 'type' => 'checkbox' |
335 | 335 | ); |
336 | 336 | |
337 | 337 | $vat_settings['vies_validation_title'] = array( |
338 | 338 | 'id' => 'vies_validation_title', |
339 | - 'name' => '<h3>' . __( 'VIES Validation', 'invoicing' ) . '</h3>', |
|
339 | + 'name' => '<h3>' . __('VIES Validation', 'invoicing') . '</h3>', |
|
340 | 340 | 'desc' => '', |
341 | 341 | 'type' => 'header', |
342 | 342 | 'size' => 'regular' |
@@ -344,37 +344,37 @@ discard block |
||
344 | 344 | |
345 | 345 | $vat_settings['vat_vies_check'] = array( |
346 | 346 | 'id' => 'vat_vies_check', |
347 | - 'name' => __( 'Disable VIES VAT ID Check', 'invoicing' ), |
|
348 | - 'desc' => wp_sprintf( __( 'Prevent VAT numbers from being validated by the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ), |
|
347 | + 'name' => __('Disable VIES VAT ID Check', 'invoicing'), |
|
348 | + 'desc' => wp_sprintf(__('Prevent VAT numbers from being validated by the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'), |
|
349 | 349 | 'type' => 'checkbox' |
350 | 350 | ); |
351 | 351 | |
352 | 352 | $vat_settings['vat_disable_company_name_check'] = array( |
353 | 353 | 'id' => 'vat_disable_company_name_check', |
354 | - 'name' => __( 'Disable VIES Name Check', 'invoicing' ), |
|
355 | - 'desc' => wp_sprintf( __( 'Prevent company name from being validated by the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ), |
|
354 | + 'name' => __('Disable VIES Name Check', 'invoicing'), |
|
355 | + 'desc' => wp_sprintf(__('Prevent company name from being validated by the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'), |
|
356 | 356 | 'type' => 'checkbox' |
357 | 357 | ); |
358 | 358 | |
359 | 359 | $vat_settings['vat_offline_check'] = array( |
360 | 360 | 'id' => 'vat_offline_check', |
361 | - 'name' => __( 'Disable Basic Checks', 'invoicing' ), |
|
362 | - 'desc' => __( 'Disable basic JS checks for correct format of VAT number. (Not Recommended)', 'invoicing' ), |
|
361 | + 'name' => __('Disable Basic Checks', 'invoicing'), |
|
362 | + 'desc' => __('Disable basic JS checks for correct format of VAT number. (Not Recommended)', 'invoicing'), |
|
363 | 363 | 'type' => 'checkbox' |
364 | 364 | ); |
365 | 365 | |
366 | 366 | |
367 | 367 | $settings['vat'] = $vat_settings; |
368 | 368 | |
369 | - if ( self::allow_vat_classes() ) { |
|
369 | + if (self::allow_vat_classes()) { |
|
370 | 370 | $settings['vat_rates'] = self::vat_rates_settings(); |
371 | 371 | } |
372 | 372 | |
373 | 373 | $eu_fallback_rate = array( |
374 | 374 | 'id' => 'eu_fallback_rate', |
375 | - 'name' => '<h3>' . __( 'VAT rate for EU member states', 'invoicing' ) . '</h3>', |
|
375 | + 'name' => '<h3>' . __('VAT rate for EU member states', 'invoicing') . '</h3>', |
|
376 | 376 | 'type' => 'eu_fallback_rate', |
377 | - 'desc' => __( 'Enter the VAT rate to be charged for EU member states. You can edit the rates for each member state when a country rate has been set up by pressing this button.', 'invoicing' ), |
|
377 | + 'desc' => __('Enter the VAT rate to be charged for EU member states. You can edit the rates for each member state when a country rate has been set up by pressing this button.', 'invoicing'), |
|
378 | 378 | 'std' => '20', |
379 | 379 | 'size' => 'small' |
380 | 380 | ); |
@@ -390,11 +390,11 @@ discard block |
||
390 | 390 | $database_url = 'http' . (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] === 'on' ? 's' : '') . '://geolite.maxmind.com/download/geoip/database/'; |
391 | 391 | $destination_dir = $upload_dir['basedir'] . '/invoicing'; |
392 | 392 | |
393 | - if ( !is_dir( $destination_dir ) ) { |
|
394 | - mkdir( $destination_dir ); |
|
393 | + if (!is_dir($destination_dir)) { |
|
394 | + mkdir($destination_dir); |
|
395 | 395 | } |
396 | 396 | |
397 | - $database_files = array( |
|
397 | + $database_files = array( |
|
398 | 398 | 'country' => array( |
399 | 399 | 'source' => $database_url . 'GeoLite2-Country.mmdb.gz', |
400 | 400 | 'destination' => $destination_dir . '/GeoLite2-Country.mmdb', |
@@ -405,57 +405,57 @@ discard block |
||
405 | 405 | ) |
406 | 406 | ); |
407 | 407 | |
408 | - foreach( $database_files as $database => $files ) { |
|
409 | - $result = self::geoip2_download_file( $files['source'], $files['destination'] ); |
|
408 | + foreach ($database_files as $database => $files) { |
|
409 | + $result = self::geoip2_download_file($files['source'], $files['destination']); |
|
410 | 410 | |
411 | - if ( empty( $result['success'] ) ) { |
|
411 | + if (empty($result['success'])) { |
|
412 | 412 | echo $result['message']; |
413 | 413 | exit; |
414 | 414 | } |
415 | 415 | |
416 | - wpinv_update_option( 'wpinv_geoip2_date_updated', current_time( 'timestamp' ) ); |
|
417 | - echo sprintf(__( 'GeoIP2 %s database updated successfully.', 'invoicing' ), $database ) . ' '; |
|
416 | + wpinv_update_option('wpinv_geoip2_date_updated', current_time('timestamp')); |
|
417 | + echo sprintf(__('GeoIP2 %s database updated successfully.', 'invoicing'), $database) . ' '; |
|
418 | 418 | } |
419 | 419 | |
420 | 420 | exit; |
421 | 421 | } |
422 | 422 | |
423 | - public static function geoip2_download_file( $source_url, $destination_file ) { |
|
423 | + public static function geoip2_download_file($source_url, $destination_file) { |
|
424 | 424 | $success = false; |
425 | 425 | $message = ''; |
426 | 426 | |
427 | - if ( !function_exists( 'download_url' ) ) { |
|
428 | - require_once( ABSPATH . 'wp-admin/includes/file.php' ); |
|
427 | + if (!function_exists('download_url')) { |
|
428 | + require_once(ABSPATH . 'wp-admin/includes/file.php'); |
|
429 | 429 | } |
430 | 430 | |
431 | - $temp_file = download_url( $source_url ); |
|
431 | + $temp_file = download_url($source_url); |
|
432 | 432 | |
433 | - if ( is_wp_error( $temp_file ) ) { |
|
434 | - $message = sprintf( __( 'Error while downloading GeoIp2 database( %s ): %s', 'invoicing' ), $source_url, $temp_file->get_error_message() ); |
|
433 | + if (is_wp_error($temp_file)) { |
|
434 | + $message = sprintf(__('Error while downloading GeoIp2 database( %s ): %s', 'invoicing'), $source_url, $temp_file->get_error_message()); |
|
435 | 435 | } else { |
436 | - $handle = gzopen( $temp_file, 'rb' ); |
|
436 | + $handle = gzopen($temp_file, 'rb'); |
|
437 | 437 | |
438 | - if ( $handle ) { |
|
439 | - $fopen = fopen( $destination_file, 'wb' ); |
|
440 | - if ( $fopen ) { |
|
441 | - while ( ( $data = gzread( $handle, 4096 ) ) != false ) { |
|
442 | - fwrite( $fopen, $data ); |
|
438 | + if ($handle) { |
|
439 | + $fopen = fopen($destination_file, 'wb'); |
|
440 | + if ($fopen) { |
|
441 | + while (($data = gzread($handle, 4096)) != false) { |
|
442 | + fwrite($fopen, $data); |
|
443 | 443 | } |
444 | 444 | |
445 | - gzclose( $handle ); |
|
446 | - fclose( $fopen ); |
|
445 | + gzclose($handle); |
|
446 | + fclose($fopen); |
|
447 | 447 | |
448 | 448 | $success = true; |
449 | 449 | } else { |
450 | - gzclose( $handle ); |
|
451 | - $message = sprintf( __( 'Error could not open destination GeoIp2 database file for writing: %s', 'invoicing' ), $destination_file ); |
|
450 | + gzclose($handle); |
|
451 | + $message = sprintf(__('Error could not open destination GeoIp2 database file for writing: %s', 'invoicing'), $destination_file); |
|
452 | 452 | } |
453 | 453 | } else { |
454 | - $message = sprintf( __( 'Error could not open GeoIp2 database file for reading: %s', 'invoicing' ), $temp_file ); |
|
454 | + $message = sprintf(__('Error could not open GeoIp2 database file for reading: %s', 'invoicing'), $temp_file); |
|
455 | 455 | } |
456 | 456 | |
457 | - if ( file_exists( $temp_file ) ) { |
|
458 | - unlink( $temp_file ); |
|
457 | + if (file_exists($temp_file)) { |
|
458 | + unlink($temp_file); |
|
459 | 459 | } |
460 | 460 | } |
461 | 461 | |
@@ -467,11 +467,11 @@ discard block |
||
467 | 467 | } |
468 | 468 | |
469 | 469 | public static function load_geoip2() { |
470 | - if ( defined( 'WPINV_GEOIP2_LODDED' ) ) { |
|
470 | + if (defined('WPINV_GEOIP2_LODDED')) { |
|
471 | 471 | return; |
472 | 472 | } |
473 | 473 | |
474 | - if ( !class_exists( '\MaxMind\Db\Reader' ) ) { |
|
474 | + if (!class_exists('\MaxMind\Db\Reader')) { |
|
475 | 475 | $maxmind_db_files = array( |
476 | 476 | 'Reader/Decoder.php', |
477 | 477 | 'Reader/InvalidDatabaseException.php', |
@@ -480,12 +480,12 @@ discard block |
||
480 | 480 | 'Reader.php', |
481 | 481 | ); |
482 | 482 | |
483 | - foreach ( $maxmind_db_files as $key => $file ) { |
|
484 | - require_once( WPINV_PLUGIN_DIR . 'includes/libraries/MaxMind/Db/' . $file ); |
|
483 | + foreach ($maxmind_db_files as $key => $file) { |
|
484 | + require_once(WPINV_PLUGIN_DIR . 'includes/libraries/MaxMind/Db/' . $file); |
|
485 | 485 | } |
486 | 486 | } |
487 | 487 | |
488 | - if ( !class_exists( '\GeoIp2\Database\Reader' ) ) { |
|
488 | + if (!class_exists('\GeoIp2\Database\Reader')) { |
|
489 | 489 | $geoip2_files = array( |
490 | 490 | 'ProviderInterface.php', |
491 | 491 | 'Compat/JsonSerializable.php', |
@@ -519,23 +519,23 @@ discard block |
||
519 | 519 | 'WebService/Client.php', |
520 | 520 | ); |
521 | 521 | |
522 | - foreach ( $geoip2_files as $key => $file ) { |
|
523 | - require_once( WPINV_PLUGIN_DIR . 'includes/libraries/GeoIp2/' . $file ); |
|
522 | + foreach ($geoip2_files as $key => $file) { |
|
523 | + require_once(WPINV_PLUGIN_DIR . 'includes/libraries/GeoIp2/' . $file); |
|
524 | 524 | } |
525 | 525 | } |
526 | 526 | |
527 | - define( 'WPINV_GEOIP2_LODDED', true ); |
|
527 | + define('WPINV_GEOIP2_LODDED', true); |
|
528 | 528 | } |
529 | 529 | |
530 | 530 | public static function geoip2_country_dbfile() { |
531 | 531 | $upload_dir = wp_upload_dir(); |
532 | 532 | |
533 | - if ( !isset( $upload_dir['basedir'] ) ) { |
|
533 | + if (!isset($upload_dir['basedir'])) { |
|
534 | 534 | return false; |
535 | 535 | } |
536 | 536 | |
537 | 537 | $filename = $upload_dir['basedir'] . '/invoicing/GeoLite2-Country.mmdb'; |
538 | - if ( !file_exists( $filename ) ) { |
|
538 | + if (!file_exists($filename)) { |
|
539 | 539 | return false; |
540 | 540 | } |
541 | 541 | |
@@ -545,12 +545,12 @@ discard block |
||
545 | 545 | public static function geoip2_city_dbfile() { |
546 | 546 | $upload_dir = wp_upload_dir(); |
547 | 547 | |
548 | - if ( !isset( $upload_dir['basedir'] ) ) { |
|
548 | + if (!isset($upload_dir['basedir'])) { |
|
549 | 549 | return false; |
550 | 550 | } |
551 | 551 | |
552 | 552 | $filename = $upload_dir['basedir'] . '/invoicing/GeoLite2-City.mmdb'; |
553 | - if ( !file_exists( $filename ) ) { |
|
553 | + if (!file_exists($filename)) { |
|
554 | 554 | return false; |
555 | 555 | } |
556 | 556 | |
@@ -561,10 +561,10 @@ discard block |
||
561 | 561 | try { |
562 | 562 | self::load_geoip2(); |
563 | 563 | |
564 | - if ( $filename = self::geoip2_country_dbfile() ) { |
|
565 | - return new \GeoIp2\Database\Reader( $filename ); |
|
564 | + if ($filename = self::geoip2_country_dbfile()) { |
|
565 | + return new \GeoIp2\Database\Reader($filename); |
|
566 | 566 | } |
567 | - } catch( Exception $e ) { |
|
567 | + } catch (Exception $e) { |
|
568 | 568 | return false; |
569 | 569 | } |
570 | 570 | |
@@ -575,183 +575,183 @@ discard block |
||
575 | 575 | try { |
576 | 576 | self::load_geoip2(); |
577 | 577 | |
578 | - if ( $filename = self::geoip2_city_dbfile() ) { |
|
579 | - return new \GeoIp2\Database\Reader( $filename ); |
|
578 | + if ($filename = self::geoip2_city_dbfile()) { |
|
579 | + return new \GeoIp2\Database\Reader($filename); |
|
580 | 580 | } |
581 | - } catch( Exception $e ) { |
|
581 | + } catch (Exception $e) { |
|
582 | 582 | return false; |
583 | 583 | } |
584 | 584 | |
585 | 585 | return false; |
586 | 586 | } |
587 | 587 | |
588 | - public static function geoip2_country_record( $ip_address ) { |
|
588 | + public static function geoip2_country_record($ip_address) { |
|
589 | 589 | try { |
590 | 590 | $reader = self::geoip2_country_reader(); |
591 | 591 | |
592 | - if ( $reader ) { |
|
593 | - $record = $reader->country( $ip_address ); |
|
592 | + if ($reader) { |
|
593 | + $record = $reader->country($ip_address); |
|
594 | 594 | |
595 | - if ( !empty( $record->country->isoCode ) ) { |
|
595 | + if (!empty($record->country->isoCode)) { |
|
596 | 596 | return $record; |
597 | 597 | } |
598 | 598 | } |
599 | - } catch(\InvalidArgumentException $e) { |
|
600 | - wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' ); |
|
599 | + } catch (\InvalidArgumentException $e) { |
|
600 | + wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )'); |
|
601 | 601 | |
602 | 602 | return false; |
603 | - } catch(\GeoIp2\Exception\AddressNotFoundException $e) { |
|
604 | - wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' ); |
|
603 | + } catch (\GeoIp2\Exception\AddressNotFoundException $e) { |
|
604 | + wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )'); |
|
605 | 605 | |
606 | 606 | return false; |
607 | - } catch( Exception $e ) { |
|
607 | + } catch (Exception $e) { |
|
608 | 608 | return false; |
609 | 609 | } |
610 | 610 | |
611 | 611 | return false; |
612 | 612 | } |
613 | 613 | |
614 | - public static function geoip2_city_record( $ip_address ) { |
|
614 | + public static function geoip2_city_record($ip_address) { |
|
615 | 615 | try { |
616 | 616 | $reader = self::geoip2_city_reader(); |
617 | 617 | |
618 | - if ( $reader ) { |
|
619 | - $record = $reader->city( $ip_address ); |
|
618 | + if ($reader) { |
|
619 | + $record = $reader->city($ip_address); |
|
620 | 620 | |
621 | - if ( !empty( $record->country->isoCode ) ) { |
|
621 | + if (!empty($record->country->isoCode)) { |
|
622 | 622 | return $record; |
623 | 623 | } |
624 | 624 | } |
625 | - } catch(\InvalidArgumentException $e) { |
|
626 | - wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' ); |
|
625 | + } catch (\InvalidArgumentException $e) { |
|
626 | + wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )'); |
|
627 | 627 | |
628 | 628 | return false; |
629 | - } catch(\GeoIp2\Exception\AddressNotFoundException $e) { |
|
630 | - wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' ); |
|
629 | + } catch (\GeoIp2\Exception\AddressNotFoundException $e) { |
|
630 | + wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )'); |
|
631 | 631 | |
632 | 632 | return false; |
633 | - } catch( Exception $e ) { |
|
633 | + } catch (Exception $e) { |
|
634 | 634 | return false; |
635 | 635 | } |
636 | 636 | |
637 | 637 | return false; |
638 | 638 | } |
639 | 639 | |
640 | - public static function geoip2_country_code( $ip_address ) { |
|
641 | - $record = self::geoip2_country_record( $ip_address ); |
|
642 | - return !empty( $record->country->isoCode ) ? $record->country->isoCode : wpinv_get_default_country(); |
|
640 | + public static function geoip2_country_code($ip_address) { |
|
641 | + $record = self::geoip2_country_record($ip_address); |
|
642 | + return !empty($record->country->isoCode) ? $record->country->isoCode : wpinv_get_default_country(); |
|
643 | 643 | } |
644 | 644 | |
645 | 645 | // Find country by IP address. |
646 | - public static function get_country_by_ip( $ip = '' ) { |
|
646 | + public static function get_country_by_ip($ip = '') { |
|
647 | 647 | global $wpinv_ip_address_country; |
648 | 648 | |
649 | - if ( !empty( $wpinv_ip_address_country ) ) { |
|
649 | + if (!empty($wpinv_ip_address_country)) { |
|
650 | 650 | return $wpinv_ip_address_country; |
651 | 651 | } |
652 | 652 | |
653 | - if ( empty( $ip ) ) { |
|
653 | + if (empty($ip)) { |
|
654 | 654 | $ip = wpinv_get_ip(); |
655 | 655 | } |
656 | 656 | |
657 | - $ip_country_service = wpinv_get_option( 'vat_ip_lookup' ); |
|
658 | - $is_default = empty( $ip_country_service ) || $ip_country_service === 'default' ? true : false; |
|
657 | + $ip_country_service = wpinv_get_option('vat_ip_lookup'); |
|
658 | + $is_default = empty($ip_country_service) || $ip_country_service === 'default' ? true : false; |
|
659 | 659 | |
660 | - if ( !empty( $ip ) && $ip !== '127.0.0.1' ) { // For 127.0.0.1(localhost) use default country. |
|
661 | - if ( function_exists( 'geoip_country_code_by_name') && ( $ip_country_service === 'geoip' || $is_default ) ) { |
|
660 | + if (!empty($ip) && $ip !== '127.0.0.1') { // For 127.0.0.1(localhost) use default country. |
|
661 | + if (function_exists('geoip_country_code_by_name') && ($ip_country_service === 'geoip' || $is_default)) { |
|
662 | 662 | try { |
663 | - $wpinv_ip_address_country = geoip_country_code_by_name( $ip ); |
|
664 | - } catch( Exception $e ) { |
|
665 | - wpinv_error_log( $e->getMessage(), 'GeoIP Lookup( ' . $ip . ' )' ); |
|
663 | + $wpinv_ip_address_country = geoip_country_code_by_name($ip); |
|
664 | + } catch (Exception $e) { |
|
665 | + wpinv_error_log($e->getMessage(), 'GeoIP Lookup( ' . $ip . ' )'); |
|
666 | 666 | } |
667 | - } else if ( self::geoip2_country_dbfile() && ( $ip_country_service === 'geoip2' || $is_default ) ) { |
|
668 | - $wpinv_ip_address_country = self::geoip2_country_code( $ip ); |
|
669 | - } else if ( function_exists( 'simplexml_load_file' ) && ini_get('allow_url_fopen') && ( $ip_country_service === 'geoplugin' || $is_default ) ) { |
|
670 | - $load_xml = simplexml_load_file( 'http://www.geoplugin.net/xml.gp?ip=' . $ip ); |
|
667 | + } else if (self::geoip2_country_dbfile() && ($ip_country_service === 'geoip2' || $is_default)) { |
|
668 | + $wpinv_ip_address_country = self::geoip2_country_code($ip); |
|
669 | + } else if (function_exists('simplexml_load_file') && ini_get('allow_url_fopen') && ($ip_country_service === 'geoplugin' || $is_default)) { |
|
670 | + $load_xml = simplexml_load_file('http://www.geoplugin.net/xml.gp?ip=' . $ip); |
|
671 | 671 | |
672 | - if ( !empty( $load_xml ) && !empty( $load_xml->geoplugin_countryCode ) ) { |
|
673 | - $wpinv_ip_address_country = (string)$load_xml->geoplugin_countryCode; |
|
672 | + if (!empty($load_xml) && !empty($load_xml->geoplugin_countryCode)) { |
|
673 | + $wpinv_ip_address_country = (string) $load_xml->geoplugin_countryCode; |
|
674 | 674 | } |
675 | - }elseif(!empty( $ip )){ |
|
675 | + }elseif (!empty($ip)) { |
|
676 | 676 | $url = 'http://ip-api.com/json/' . $ip; |
677 | 677 | $response = wp_remote_get($url); |
678 | 678 | |
679 | - if ( is_array( $response ) && wp_remote_retrieve_response_code( $response ) == '200' ) { |
|
680 | - $data = json_decode(wp_remote_retrieve_body( $response ),true); |
|
681 | - if(!empty($data['countryCode'])){ |
|
682 | - $wpinv_ip_address_country = (string)$data['countryCode']; |
|
679 | + if (is_array($response) && wp_remote_retrieve_response_code($response) == '200') { |
|
680 | + $data = json_decode(wp_remote_retrieve_body($response), true); |
|
681 | + if (!empty($data['countryCode'])) { |
|
682 | + $wpinv_ip_address_country = (string) $data['countryCode']; |
|
683 | 683 | } |
684 | 684 | } |
685 | 685 | } |
686 | 686 | } |
687 | 687 | |
688 | - if ( empty( $wpinv_ip_address_country ) ) { |
|
688 | + if (empty($wpinv_ip_address_country)) { |
|
689 | 689 | $wpinv_ip_address_country = wpinv_get_default_country(); |
690 | 690 | } |
691 | 691 | |
692 | 692 | return $wpinv_ip_address_country; |
693 | 693 | } |
694 | 694 | |
695 | - public static function sanitize_vat_settings( $input ) { |
|
695 | + public static function sanitize_vat_settings($input) { |
|
696 | 696 | global $wpinv_options; |
697 | 697 | |
698 | 698 | $valid = false; |
699 | 699 | $message = ''; |
700 | 700 | |
701 | - if ( !empty( $wpinv_options['vat_vies_check'] ) ) { |
|
702 | - if ( empty( $wpinv_options['vat_offline_check'] ) ) { |
|
703 | - $valid = self::offline_check( $input['vat_number'] ); |
|
701 | + if (!empty($wpinv_options['vat_vies_check'])) { |
|
702 | + if (empty($wpinv_options['vat_offline_check'])) { |
|
703 | + $valid = self::offline_check($input['vat_number']); |
|
704 | 704 | } else { |
705 | 705 | $valid = true; |
706 | 706 | } |
707 | 707 | |
708 | - $message = $valid ? '' : __( 'VAT number not validated', 'invoicing' ); |
|
708 | + $message = $valid ? '' : __('VAT number not validated', 'invoicing'); |
|
709 | 709 | } else { |
710 | - $result = self::check_vat( $input['vat_number'] ); |
|
710 | + $result = self::check_vat($input['vat_number']); |
|
711 | 711 | |
712 | - if ( empty( $result['valid'] ) ) { |
|
712 | + if (empty($result['valid'])) { |
|
713 | 713 | $valid = false; |
714 | 714 | $message = $result['message']; |
715 | 715 | } else { |
716 | - $valid = ( isset( $result['company'] ) && ( $result['company'] == '---' || ( strcasecmp( trim( $result['company'] ), trim( $input['vat_company_name'] ) ) == 0 ) ) ) || !empty( $wpinv_options['vat_disable_company_name_check'] ); |
|
717 | - $message = $valid ? '' : __( 'The company name associated with the VAT number provided is not the same as the company name provided.', 'invoicing' ); |
|
716 | + $valid = (isset($result['company']) && ($result['company'] == '---' || (strcasecmp(trim($result['company']), trim($input['vat_company_name'])) == 0))) || !empty($wpinv_options['vat_disable_company_name_check']); |
|
717 | + $message = $valid ? '' : __('The company name associated with the VAT number provided is not the same as the company name provided.', 'invoicing'); |
|
718 | 718 | } |
719 | 719 | } |
720 | 720 | |
721 | - if ( $message && self::is_vat_validated() != $valid ) { |
|
722 | - add_settings_error( 'wpinv-notices', '', $message, ( $valid ? 'updated' : 'error' ) ); |
|
721 | + if ($message && self::is_vat_validated() != $valid) { |
|
722 | + add_settings_error('wpinv-notices', '', $message, ($valid ? 'updated' : 'error')); |
|
723 | 723 | } |
724 | 724 | |
725 | 725 | $input['vat_valid'] = $valid; |
726 | 726 | return $input; |
727 | 727 | } |
728 | 728 | |
729 | - public static function sanitize_vat_rates( $input ) { |
|
730 | - if( !wpinv_current_user_can_manage_invoicing() ) { |
|
731 | - add_settings_error( 'wpinv-notices', '', __( 'Your account does not have permission to add rate classes.', 'invoicing' ), 'error' ); |
|
729 | + public static function sanitize_vat_rates($input) { |
|
730 | + if (!wpinv_current_user_can_manage_invoicing()) { |
|
731 | + add_settings_error('wpinv-notices', '', __('Your account does not have permission to add rate classes.', 'invoicing'), 'error'); |
|
732 | 732 | return $input; |
733 | 733 | } |
734 | 734 | |
735 | 735 | $vat_classes = self::get_rate_classes(); |
736 | - $vat_class = !empty( $_REQUEST['wpi_vat_class'] ) && isset( $vat_classes[$_REQUEST['wpi_vat_class']] )? sanitize_text_field( $_REQUEST['wpi_vat_class'] ) : ''; |
|
736 | + $vat_class = !empty($_REQUEST['wpi_vat_class']) && isset($vat_classes[$_REQUEST['wpi_vat_class']]) ? sanitize_text_field($_REQUEST['wpi_vat_class']) : ''; |
|
737 | 737 | |
738 | - if ( empty( $vat_class ) ) { |
|
739 | - add_settings_error( 'wpinv-notices', '', __( 'No valid VAT rates class contained in the request to save rates.', 'invoicing' ), 'error' ); |
|
738 | + if (empty($vat_class)) { |
|
739 | + add_settings_error('wpinv-notices', '', __('No valid VAT rates class contained in the request to save rates.', 'invoicing'), 'error'); |
|
740 | 740 | |
741 | 741 | return $input; |
742 | 742 | } |
743 | 743 | |
744 | - $new_rates = ! empty( $_POST['vat_rates'] ) ? array_values( $_POST['vat_rates'] ) : array(); |
|
744 | + $new_rates = !empty($_POST['vat_rates']) ? array_values($_POST['vat_rates']) : array(); |
|
745 | 745 | |
746 | - if ( $vat_class === '_standard' ) { |
|
746 | + if ($vat_class === '_standard') { |
|
747 | 747 | // Save the active rates in the invoice settings |
748 | - update_option( 'wpinv_tax_rates', $new_rates ); |
|
748 | + update_option('wpinv_tax_rates', $new_rates); |
|
749 | 749 | } else { |
750 | 750 | // Get the existing set of rates |
751 | 751 | $rates = self::get_non_standard_rates(); |
752 | 752 | $rates[$vat_class] = $new_rates; |
753 | 753 | |
754 | - update_option( 'wpinv_vat_rates', $rates ); |
|
754 | + update_option('wpinv_vat_rates', $rates); |
|
755 | 755 | } |
756 | 756 | |
757 | 757 | return $input; |
@@ -761,71 +761,71 @@ discard block |
||
761 | 761 | $response = array(); |
762 | 762 | $response['success'] = false; |
763 | 763 | |
764 | - if ( !wpinv_current_user_can_manage_invoicing() ) { |
|
765 | - $response['error'] = __( 'Invalid access!', 'invoicing' ); |
|
766 | - wp_send_json( $response ); |
|
764 | + if (!wpinv_current_user_can_manage_invoicing()) { |
|
765 | + $response['error'] = __('Invalid access!', 'invoicing'); |
|
766 | + wp_send_json($response); |
|
767 | 767 | } |
768 | 768 | |
769 | - $vat_class_name = !empty( $_POST['name'] ) ? sanitize_text_field( $_POST['name'] ) : false; |
|
770 | - $vat_class_desc = !empty( $_POST['desc'] ) ? sanitize_text_field( $_POST['desc'] ) : false; |
|
769 | + $vat_class_name = !empty($_POST['name']) ? sanitize_text_field($_POST['name']) : false; |
|
770 | + $vat_class_desc = !empty($_POST['desc']) ? sanitize_text_field($_POST['desc']) : false; |
|
771 | 771 | |
772 | - if ( empty( $vat_class_name ) ) { |
|
773 | - $response['error'] = __( 'Select the VAT rate name', 'invoicing' ); |
|
774 | - wp_send_json( $response ); |
|
772 | + if (empty($vat_class_name)) { |
|
773 | + $response['error'] = __('Select the VAT rate name', 'invoicing'); |
|
774 | + wp_send_json($response); |
|
775 | 775 | } |
776 | 776 | |
777 | - $vat_classes = (array)self::get_rate_classes(); |
|
777 | + $vat_classes = (array) self::get_rate_classes(); |
|
778 | 778 | |
779 | - if ( !empty( $vat_classes ) && in_array( strtolower( $vat_class_name ), array_map( 'strtolower', array_values( $vat_classes ) ) ) ) { |
|
780 | - $response['error'] = wp_sprintf( __( 'A VAT Rate name "%s" already exists', 'invoicing' ), $vat_class_name ); |
|
781 | - wp_send_json( $response ); |
|
779 | + if (!empty($vat_classes) && in_array(strtolower($vat_class_name), array_map('strtolower', array_values($vat_classes)))) { |
|
780 | + $response['error'] = wp_sprintf(__('A VAT Rate name "%s" already exists', 'invoicing'), $vat_class_name); |
|
781 | + wp_send_json($response); |
|
782 | 782 | } |
783 | 783 | |
784 | - $rate_class_key = normalize_whitespace( 'wpi-' . $vat_class_name ); |
|
785 | - $rate_class_key = sanitize_key( str_replace( " ", "-", $rate_class_key ) ); |
|
784 | + $rate_class_key = normalize_whitespace('wpi-' . $vat_class_name); |
|
785 | + $rate_class_key = sanitize_key(str_replace(" ", "-", $rate_class_key)); |
|
786 | 786 | |
787 | - $vat_classes = (array)self::get_rate_classes( true ); |
|
788 | - $vat_classes[$rate_class_key] = array( 'name' => $vat_class_name, 'desc' => $vat_class_desc ); |
|
787 | + $vat_classes = (array) self::get_rate_classes(true); |
|
788 | + $vat_classes[$rate_class_key] = array('name' => $vat_class_name, 'desc' => $vat_class_desc); |
|
789 | 789 | |
790 | - update_option( '_wpinv_vat_rate_classes', $vat_classes ); |
|
790 | + update_option('_wpinv_vat_rate_classes', $vat_classes); |
|
791 | 791 | |
792 | 792 | $response['success'] = true; |
793 | - $response['redirect'] = admin_url( 'admin.php?page=wpinv-settings&tab=taxes§ion=vat_rates&wpi_sub=' . $rate_class_key ); |
|
793 | + $response['redirect'] = admin_url('admin.php?page=wpinv-settings&tab=taxes§ion=vat_rates&wpi_sub=' . $rate_class_key); |
|
794 | 794 | |
795 | - wp_send_json( $response ); |
|
795 | + wp_send_json($response); |
|
796 | 796 | } |
797 | 797 | |
798 | 798 | public static function delete_class() { |
799 | 799 | $response = array(); |
800 | 800 | $response['success'] = false; |
801 | 801 | |
802 | - if ( !wpinv_current_user_can_manage_invoicing() || !isset( $_POST['class'] ) ) { |
|
803 | - $response['error'] = __( 'Invalid access!', 'invoicing' ); |
|
804 | - wp_send_json( $response ); |
|
802 | + if (!wpinv_current_user_can_manage_invoicing() || !isset($_POST['class'])) { |
|
803 | + $response['error'] = __('Invalid access!', 'invoicing'); |
|
804 | + wp_send_json($response); |
|
805 | 805 | } |
806 | 806 | |
807 | - $vat_class = isset( $_POST['class'] ) && $_POST['class'] !== '' ? sanitize_text_field( $_POST['class'] ) : false; |
|
808 | - $vat_classes = (array)self::get_rate_classes(); |
|
807 | + $vat_class = isset($_POST['class']) && $_POST['class'] !== '' ? sanitize_text_field($_POST['class']) : false; |
|
808 | + $vat_classes = (array) self::get_rate_classes(); |
|
809 | 809 | |
810 | - if ( !isset( $vat_classes[$vat_class] ) ) { |
|
811 | - $response['error'] = __( 'Requested class does not exists', 'invoicing' ); |
|
812 | - wp_send_json( $response ); |
|
810 | + if (!isset($vat_classes[$vat_class])) { |
|
811 | + $response['error'] = __('Requested class does not exists', 'invoicing'); |
|
812 | + wp_send_json($response); |
|
813 | 813 | } |
814 | 814 | |
815 | - if ( $vat_class == '_new' || $vat_class == '_standard' ) { |
|
816 | - $response['error'] = __( 'You can not delete standard rates class', 'invoicing' ); |
|
817 | - wp_send_json( $response ); |
|
815 | + if ($vat_class == '_new' || $vat_class == '_standard') { |
|
816 | + $response['error'] = __('You can not delete standard rates class', 'invoicing'); |
|
817 | + wp_send_json($response); |
|
818 | 818 | } |
819 | 819 | |
820 | - $vat_classes = (array)self::get_rate_classes( true ); |
|
821 | - unset( $vat_classes[$vat_class] ); |
|
820 | + $vat_classes = (array) self::get_rate_classes(true); |
|
821 | + unset($vat_classes[$vat_class]); |
|
822 | 822 | |
823 | - update_option( '_wpinv_vat_rate_classes', $vat_classes ); |
|
823 | + update_option('_wpinv_vat_rate_classes', $vat_classes); |
|
824 | 824 | |
825 | 825 | $response['success'] = true; |
826 | - $response['redirect'] = admin_url( 'admin.php?page=wpinv-settings&tab=taxes§ion=vat_rates&wpi_sub=_new' ); |
|
826 | + $response['redirect'] = admin_url('admin.php?page=wpinv-settings&tab=taxes§ion=vat_rates&wpi_sub=_new'); |
|
827 | 827 | |
828 | - wp_send_json( $response ); |
|
828 | + wp_send_json($response); |
|
829 | 829 | } |
830 | 830 | |
831 | 831 | public static function update_eu_rates() { |
@@ -834,72 +834,72 @@ discard block |
||
834 | 834 | $response['error'] = null; |
835 | 835 | $response['data'] = null; |
836 | 836 | |
837 | - if ( !wpinv_current_user_can_manage_invoicing() ) { |
|
838 | - $response['error'] = __( 'Invalid access!', 'invoicing' ); |
|
839 | - wp_send_json( $response ); |
|
837 | + if (!wpinv_current_user_can_manage_invoicing()) { |
|
838 | + $response['error'] = __('Invalid access!', 'invoicing'); |
|
839 | + wp_send_json($response); |
|
840 | 840 | } |
841 | 841 | |
842 | - $group = !empty( $_POST['group'] ) ? sanitize_text_field( $_POST['group'] ) : ''; |
|
843 | - $euvatrates = self::request_euvatrates( $group ); |
|
842 | + $group = !empty($_POST['group']) ? sanitize_text_field($_POST['group']) : ''; |
|
843 | + $euvatrates = self::request_euvatrates($group); |
|
844 | 844 | |
845 | - if ( !empty( $euvatrates ) ) { |
|
846 | - if ( !empty( $euvatrates['success'] ) && !empty( $euvatrates['rates'] ) ) { |
|
845 | + if (!empty($euvatrates)) { |
|
846 | + if (!empty($euvatrates['success']) && !empty($euvatrates['rates'])) { |
|
847 | 847 | $response['success'] = true; |
848 | 848 | $response['data']['rates'] = $euvatrates['rates']; |
849 | - } else if ( !empty( $euvatrates['error'] ) ) { |
|
849 | + } else if (!empty($euvatrates['error'])) { |
|
850 | 850 | $response['error'] = $euvatrates['error']; |
851 | 851 | } |
852 | 852 | } |
853 | 853 | |
854 | - wp_send_json( $response ); |
|
854 | + wp_send_json($response); |
|
855 | 855 | } |
856 | 856 | |
857 | 857 | public static function hide_vat_fields() { |
858 | - $hide = wpinv_get_option( 'vat_disable_fields' ); |
|
858 | + $hide = wpinv_get_option('vat_disable_fields'); |
|
859 | 859 | |
860 | - return apply_filters( 'wpinv_hide_vat_fields', $hide ); |
|
860 | + return apply_filters('wpinv_hide_vat_fields', $hide); |
|
861 | 861 | } |
862 | 862 | |
863 | 863 | public static function same_country_rule() { |
864 | - $same_country_rule = wpinv_get_option( 'vat_same_country_rule' ); |
|
864 | + $same_country_rule = wpinv_get_option('vat_same_country_rule'); |
|
865 | 865 | |
866 | - return apply_filters( 'wpinv_vat_same_country_rule', $same_country_rule ); |
|
866 | + return apply_filters('wpinv_vat_same_country_rule', $same_country_rule); |
|
867 | 867 | } |
868 | 868 | |
869 | 869 | public static function get_vat_name() { |
870 | - $vat_name = wpinv_get_option( 'vat_name' ); |
|
871 | - $vat_name = !empty( $vat_name ) ? $vat_name : 'VAT'; |
|
870 | + $vat_name = wpinv_get_option('vat_name'); |
|
871 | + $vat_name = !empty($vat_name) ? $vat_name : 'VAT'; |
|
872 | 872 | |
873 | - return apply_filters( 'wpinv_get_owner_vat_name', $vat_name ); |
|
873 | + return apply_filters('wpinv_get_owner_vat_name', $vat_name); |
|
874 | 874 | } |
875 | 875 | |
876 | 876 | public static function get_company_name() { |
877 | - $company_name = wpinv_get_option( 'vat_company_name' ); |
|
877 | + $company_name = wpinv_get_option('vat_company_name'); |
|
878 | 878 | |
879 | - return apply_filters( 'wpinv_get_owner_company_name', $company_name ); |
|
879 | + return apply_filters('wpinv_get_owner_company_name', $company_name); |
|
880 | 880 | } |
881 | 881 | |
882 | 882 | public static function get_vat_number() { |
883 | - $vat_number = wpinv_get_option( 'vat_number' ); |
|
883 | + $vat_number = wpinv_get_option('vat_number'); |
|
884 | 884 | |
885 | - return apply_filters( 'wpinv_get_owner_vat_number', $vat_number ); |
|
885 | + return apply_filters('wpinv_get_owner_vat_number', $vat_number); |
|
886 | 886 | } |
887 | 887 | |
888 | 888 | public static function is_vat_validated() { |
889 | - $validated = self::get_vat_number() && wpinv_get_option( 'vat_valid' ); |
|
889 | + $validated = self::get_vat_number() && wpinv_get_option('vat_valid'); |
|
890 | 890 | |
891 | - return apply_filters( 'wpinv_is_owner_vat_validated', $validated ); |
|
891 | + return apply_filters('wpinv_is_owner_vat_validated', $validated); |
|
892 | 892 | } |
893 | 893 | |
894 | - public static function sanitize_vat( $vat_number, $country_code = '' ) { |
|
895 | - $vat_number = str_replace( array(' ', '.', '-', '_', ',' ), '', strtoupper( trim( $vat_number ) ) ); |
|
894 | + public static function sanitize_vat($vat_number, $country_code = '') { |
|
895 | + $vat_number = str_replace(array(' ', '.', '-', '_', ','), '', strtoupper(trim($vat_number))); |
|
896 | 896 | |
897 | - if ( empty( $country_code ) ) { |
|
898 | - $country_code = substr( $vat_number, 0, 2 ); |
|
897 | + if (empty($country_code)) { |
|
898 | + $country_code = substr($vat_number, 0, 2); |
|
899 | 899 | } |
900 | 900 | |
901 | - if ( strpos( $vat_number , $country_code ) === 0 ) { |
|
902 | - $vat = str_replace( $country_code, '', $vat_number ); |
|
901 | + if (strpos($vat_number, $country_code) === 0) { |
|
902 | + $vat = str_replace($country_code, '', $vat_number); |
|
903 | 903 | } else { |
904 | 904 | $vat = $country_code . $vat_number; |
905 | 905 | } |
@@ -912,140 +912,140 @@ discard block |
||
912 | 912 | return $return; |
913 | 913 | } |
914 | 914 | |
915 | - public static function offline_check( $vat_number, $country_code = '', $formatted = false ) { |
|
916 | - $vat = self::sanitize_vat( $vat_number, $country_code ); |
|
915 | + public static function offline_check($vat_number, $country_code = '', $formatted = false) { |
|
916 | + $vat = self::sanitize_vat($vat_number, $country_code); |
|
917 | 917 | $vat_number = $vat['vat_number']; |
918 | 918 | $country_code = $vat['iso']; |
919 | 919 | $regex = array(); |
920 | 920 | |
921 | - switch ( $country_code ) { |
|
921 | + switch ($country_code) { |
|
922 | 922 | case 'AT': |
923 | - $regex[] = '/^(AT)U(\d{8})$/'; // Austria |
|
923 | + $regex[] = '/^(AT)U(\d{8})$/'; // Austria |
|
924 | 924 | break; |
925 | 925 | case 'BE': |
926 | - $regex[] = '/^(BE)(0?\d{9})$/'; // Belgium |
|
926 | + $regex[] = '/^(BE)(0?\d{9})$/'; // Belgium |
|
927 | 927 | break; |
928 | 928 | case 'BG': |
929 | - $regex[] = '/^(BG)(\d{9,10})$/'; // Bulgaria |
|
929 | + $regex[] = '/^(BG)(\d{9,10})$/'; // Bulgaria |
|
930 | 930 | break; |
931 | 931 | case 'CH': |
932 | 932 | case 'CHE': |
933 | - $regex[] = '/^(CHE)(\d{9})MWST$/'; // Switzerland (Not EU) |
|
933 | + $regex[] = '/^(CHE)(\d{9})MWST$/'; // Switzerland (Not EU) |
|
934 | 934 | break; |
935 | 935 | case 'CY': |
936 | - $regex[] = '/^(CY)([0-5|9]\d{7}[A-Z])$/'; // Cyprus |
|
936 | + $regex[] = '/^(CY)([0-5|9]\d{7}[A-Z])$/'; // Cyprus |
|
937 | 937 | break; |
938 | 938 | case 'CZ': |
939 | - $regex[] = '/^(CZ)(\d{8,13})$/'; // Czech Republic |
|
939 | + $regex[] = '/^(CZ)(\d{8,13})$/'; // Czech Republic |
|
940 | 940 | break; |
941 | 941 | case 'DE': |
942 | - $regex[] = '/^(DE)([1-9]\d{8})$/'; // Germany |
|
942 | + $regex[] = '/^(DE)([1-9]\d{8})$/'; // Germany |
|
943 | 943 | break; |
944 | 944 | case 'DK': |
945 | - $regex[] = '/^(DK)(\d{8})$/'; // Denmark |
|
945 | + $regex[] = '/^(DK)(\d{8})$/'; // Denmark |
|
946 | 946 | break; |
947 | 947 | case 'EE': |
948 | - $regex[] = '/^(EE)(10\d{7})$/'; // Estonia |
|
948 | + $regex[] = '/^(EE)(10\d{7})$/'; // Estonia |
|
949 | 949 | break; |
950 | 950 | case 'EL': |
951 | - $regex[] = '/^(EL)(\d{9})$/'; // Greece |
|
951 | + $regex[] = '/^(EL)(\d{9})$/'; // Greece |
|
952 | 952 | break; |
953 | 953 | case 'ES': |
954 | - $regex[] = '/^(ES)([A-Z]\d{8})$/'; // Spain (National juridical entities) |
|
955 | - $regex[] = '/^(ES)([A-H|N-S|W]\d{7}[A-J])$/'; // Spain (Other juridical entities) |
|
956 | - $regex[] = '/^(ES)([0-9|Y|Z]\d{7}[A-Z])$/'; // Spain (Personal entities type 1) |
|
957 | - $regex[] = '/^(ES)([K|L|M|X]\d{7}[A-Z])$/'; // Spain (Personal entities type 2) |
|
954 | + $regex[] = '/^(ES)([A-Z]\d{8})$/'; // Spain (National juridical entities) |
|
955 | + $regex[] = '/^(ES)([A-H|N-S|W]\d{7}[A-J])$/'; // Spain (Other juridical entities) |
|
956 | + $regex[] = '/^(ES)([0-9|Y|Z]\d{7}[A-Z])$/'; // Spain (Personal entities type 1) |
|
957 | + $regex[] = '/^(ES)([K|L|M|X]\d{7}[A-Z])$/'; // Spain (Personal entities type 2) |
|
958 | 958 | break; |
959 | 959 | case 'EU': |
960 | - $regex[] = '/^(EU)(\d{9})$/'; // EU-type |
|
960 | + $regex[] = '/^(EU)(\d{9})$/'; // EU-type |
|
961 | 961 | break; |
962 | 962 | case 'FI': |
963 | - $regex[] = '/^(FI)(\d{8})$/'; // Finland |
|
963 | + $regex[] = '/^(FI)(\d{8})$/'; // Finland |
|
964 | 964 | break; |
965 | 965 | case 'FR': |
966 | - $regex[] = '/^(FR)(\d{11})$/'; // France (1) |
|
967 | - $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)](\d{10})$/'; // France (2) |
|
968 | - $regex[] = '/^(FR)\d[(A-H)|(J-N)|(P-Z)](\d{9})$/'; // France (3) |
|
969 | - $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)]{2}(\d{9})$/'; // France (4) |
|
966 | + $regex[] = '/^(FR)(\d{11})$/'; // France (1) |
|
967 | + $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)](\d{10})$/'; // France (2) |
|
968 | + $regex[] = '/^(FR)\d[(A-H)|(J-N)|(P-Z)](\d{9})$/'; // France (3) |
|
969 | + $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)]{2}(\d{9})$/'; // France (4) |
|
970 | 970 | break; |
971 | 971 | case 'GB': |
972 | - $regex[] = '/^(GB)?(\d{9})$/'; // UK (Standard) |
|
973 | - $regex[] = '/^(GB)?(\d{12})$/'; // UK (Branches) |
|
974 | - $regex[] = '/^(GB)?(GD\d{3})$/'; // UK (Government) |
|
975 | - $regex[] = '/^(GB)?(HA\d{3})$/'; // UK (Health authority) |
|
972 | + $regex[] = '/^(GB)?(\d{9})$/'; // UK (Standard) |
|
973 | + $regex[] = '/^(GB)?(\d{12})$/'; // UK (Branches) |
|
974 | + $regex[] = '/^(GB)?(GD\d{3})$/'; // UK (Government) |
|
975 | + $regex[] = '/^(GB)?(HA\d{3})$/'; // UK (Health authority) |
|
976 | 976 | break; |
977 | 977 | case 'GR': |
978 | - $regex[] = '/^(GR)(\d{8,9})$/'; // Greece |
|
978 | + $regex[] = '/^(GR)(\d{8,9})$/'; // Greece |
|
979 | 979 | break; |
980 | 980 | case 'HR': |
981 | - $regex[] = '/^(HR)(\d{11})$/'; // Croatia |
|
981 | + $regex[] = '/^(HR)(\d{11})$/'; // Croatia |
|
982 | 982 | break; |
983 | 983 | case 'HU': |
984 | - $regex[] = '/^(HU)(\d{8})$/'; // Hungary |
|
984 | + $regex[] = '/^(HU)(\d{8})$/'; // Hungary |
|
985 | 985 | break; |
986 | 986 | case 'IE': |
987 | - $regex[] = '/^(IE)(\d{7}[A-W])$/'; // Ireland (1) |
|
988 | - $regex[] = '/^(IE)([7-9][A-Z\*\+)]\d{5}[A-W])$/'; // Ireland (2) |
|
989 | - $regex[] = '/^(IE)(\d{7}[A-Z][AH])$/'; // Ireland (3) (new format from 1 Jan 2013) |
|
987 | + $regex[] = '/^(IE)(\d{7}[A-W])$/'; // Ireland (1) |
|
988 | + $regex[] = '/^(IE)([7-9][A-Z\*\+)]\d{5}[A-W])$/'; // Ireland (2) |
|
989 | + $regex[] = '/^(IE)(\d{7}[A-Z][AH])$/'; // Ireland (3) (new format from 1 Jan 2013) |
|
990 | 990 | break; |
991 | 991 | case 'IT': |
992 | - $regex[] = '/^(IT)(\d{11})$/'; // Italy |
|
992 | + $regex[] = '/^(IT)(\d{11})$/'; // Italy |
|
993 | 993 | break; |
994 | 994 | case 'LV': |
995 | - $regex[] = '/^(LV)(\d{11})$/'; // Latvia |
|
995 | + $regex[] = '/^(LV)(\d{11})$/'; // Latvia |
|
996 | 996 | break; |
997 | 997 | case 'LT': |
998 | - $regex[] = '/^(LT)(\d{9}|\d{12})$/'; // Lithuania |
|
998 | + $regex[] = '/^(LT)(\d{9}|\d{12})$/'; // Lithuania |
|
999 | 999 | break; |
1000 | 1000 | case 'LU': |
1001 | - $regex[] = '/^(LU)(\d{8})$/'; // Luxembourg |
|
1001 | + $regex[] = '/^(LU)(\d{8})$/'; // Luxembourg |
|
1002 | 1002 | break; |
1003 | 1003 | case 'MT': |
1004 | - $regex[] = '/^(MT)([1-9]\d{7})$/'; // Malta |
|
1004 | + $regex[] = '/^(MT)([1-9]\d{7})$/'; // Malta |
|
1005 | 1005 | break; |
1006 | 1006 | case 'NL': |
1007 | - $regex[] = '/^(NL)(\d{9})B\d{2}$/'; // Netherlands |
|
1007 | + $regex[] = '/^(NL)(\d{9})B\d{2}$/'; // Netherlands |
|
1008 | 1008 | break; |
1009 | 1009 | case 'NO': |
1010 | - $regex[] = '/^(NO)(\d{9})$/'; // Norway (Not EU) |
|
1010 | + $regex[] = '/^(NO)(\d{9})$/'; // Norway (Not EU) |
|
1011 | 1011 | break; |
1012 | 1012 | case 'PL': |
1013 | - $regex[] = '/^(PL)(\d{10})$/'; // Poland |
|
1013 | + $regex[] = '/^(PL)(\d{10})$/'; // Poland |
|
1014 | 1014 | break; |
1015 | 1015 | case 'PT': |
1016 | - $regex[] = '/^(PT)(\d{9})$/'; // Portugal |
|
1016 | + $regex[] = '/^(PT)(\d{9})$/'; // Portugal |
|
1017 | 1017 | break; |
1018 | 1018 | case 'RO': |
1019 | - $regex[] = '/^(RO)([1-9]\d{1,9})$/'; // Romania |
|
1019 | + $regex[] = '/^(RO)([1-9]\d{1,9})$/'; // Romania |
|
1020 | 1020 | break; |
1021 | 1021 | case 'RS': |
1022 | - $regex[] = '/^(RS)(\d{9})$/'; // Serbia (Not EU) |
|
1022 | + $regex[] = '/^(RS)(\d{9})$/'; // Serbia (Not EU) |
|
1023 | 1023 | break; |
1024 | 1024 | case 'SI': |
1025 | - $regex[] = '/^(SI)([1-9]\d{7})$/'; // Slovenia |
|
1025 | + $regex[] = '/^(SI)([1-9]\d{7})$/'; // Slovenia |
|
1026 | 1026 | break; |
1027 | 1027 | case 'SK': |
1028 | - $regex[] = '/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7})$/'; // Slovakia Republic |
|
1028 | + $regex[] = '/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7})$/'; // Slovakia Republic |
|
1029 | 1029 | break; |
1030 | 1030 | case 'SE': |
1031 | - $regex[] = '/^(SE)(\d{10}01)$/'; // Sweden |
|
1031 | + $regex[] = '/^(SE)(\d{10}01)$/'; // Sweden |
|
1032 | 1032 | break; |
1033 | 1033 | default: |
1034 | 1034 | $regex = array(); |
1035 | 1035 | break; |
1036 | 1036 | } |
1037 | 1037 | |
1038 | - if ( empty( $regex ) ) { |
|
1038 | + if (empty($regex)) { |
|
1039 | 1039 | return false; |
1040 | 1040 | } |
1041 | 1041 | |
1042 | - foreach ( $regex as $pattern ) { |
|
1042 | + foreach ($regex as $pattern) { |
|
1043 | 1043 | $matches = null; |
1044 | - preg_match_all( $pattern, $vat_number, $matches ); |
|
1044 | + preg_match_all($pattern, $vat_number, $matches); |
|
1045 | 1045 | |
1046 | - if ( !empty( $matches[1][0] ) && !empty( $matches[2][0] ) ) { |
|
1047 | - if ( $formatted ) { |
|
1048 | - return array( 'code' => $matches[1][0], 'number' => $matches[2][0] ); |
|
1046 | + if (!empty($matches[1][0]) && !empty($matches[2][0])) { |
|
1047 | + if ($formatted) { |
|
1048 | + return array('code' => $matches[1][0], 'number' => $matches[2][0]); |
|
1049 | 1049 | } else { |
1050 | 1050 | return true; |
1051 | 1051 | } |
@@ -1055,75 +1055,75 @@ discard block |
||
1055 | 1055 | return false; |
1056 | 1056 | } |
1057 | 1057 | |
1058 | - public static function vies_check( $vat_number, $country_code = '', $result = false ) { |
|
1059 | - $vat = self::sanitize_vat( $vat_number, $country_code ); |
|
1058 | + public static function vies_check($vat_number, $country_code = '', $result = false) { |
|
1059 | + $vat = self::sanitize_vat($vat_number, $country_code); |
|
1060 | 1060 | $vat_number = $vat['vat']; |
1061 | 1061 | $iso = $vat['iso']; |
1062 | 1062 | |
1063 | - $url = 'http://ec.europa.eu/taxation_customs/vies/viesquer.do?ms=' . urlencode( $iso ) . '&iso=' . urlencode( $iso ) . '&vat=' . urlencode( $vat_number ); |
|
1063 | + $url = 'http://ec.europa.eu/taxation_customs/vies/viesquer.do?ms=' . urlencode($iso) . '&iso=' . urlencode($iso) . '&vat=' . urlencode($vat_number); |
|
1064 | 1064 | |
1065 | - if ( ini_get( 'allow_url_fopen' ) ) { |
|
1066 | - $response = file_get_contents( $url ); |
|
1067 | - } else if ( function_exists( 'curl_init' ) ) { |
|
1065 | + if (ini_get('allow_url_fopen')) { |
|
1066 | + $response = file_get_contents($url); |
|
1067 | + } else if (function_exists('curl_init')) { |
|
1068 | 1068 | $ch = curl_init(); |
1069 | 1069 | |
1070 | - curl_setopt( $ch, CURLOPT_URL, $url ); |
|
1071 | - curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 30 ); |
|
1072 | - curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true ); |
|
1073 | - curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 0 ); |
|
1074 | - curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, 0 ); |
|
1070 | + curl_setopt($ch, CURLOPT_URL, $url); |
|
1071 | + curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30); |
|
1072 | + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); |
|
1073 | + curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); |
|
1074 | + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); |
|
1075 | 1075 | |
1076 | - $response = curl_exec( $ch ); |
|
1076 | + $response = curl_exec($ch); |
|
1077 | 1077 | |
1078 | - if ( curl_errno( $ch ) ) { |
|
1079 | - wpinv_error_log( curl_error( $ch ), 'VIES CHECK ERROR' ); |
|
1078 | + if (curl_errno($ch)) { |
|
1079 | + wpinv_error_log(curl_error($ch), 'VIES CHECK ERROR'); |
|
1080 | 1080 | $response = ''; |
1081 | 1081 | } |
1082 | 1082 | |
1083 | - curl_close( $ch ); |
|
1083 | + curl_close($ch); |
|
1084 | 1084 | } else { |
1085 | - wpinv_error_log( 'To use VIES CHECK you must have allow_url_fopen is ON or cURL installed & active on your server.', 'VIES CHECK ERROR' ); |
|
1085 | + wpinv_error_log('To use VIES CHECK you must have allow_url_fopen is ON or cURL installed & active on your server.', 'VIES CHECK ERROR'); |
|
1086 | 1086 | } |
1087 | 1087 | |
1088 | - if ( empty( $response ) ) { |
|
1088 | + if (empty($response)) { |
|
1089 | 1089 | return $result; |
1090 | 1090 | } |
1091 | 1091 | |
1092 | - if ( preg_match( '/invalid VAT number/i', $response ) ) { |
|
1092 | + if (preg_match('/invalid VAT number/i', $response)) { |
|
1093 | 1093 | return false; |
1094 | - } else if ( preg_match( '/valid VAT number/i', $response, $matches ) ) { |
|
1095 | - $content = explode( "valid VAT number", htmlentities( $response ) ); |
|
1094 | + } else if (preg_match('/valid VAT number/i', $response, $matches)) { |
|
1095 | + $content = explode("valid VAT number", htmlentities($response)); |
|
1096 | 1096 | |
1097 | - if ( !empty( $content[1] ) ) { |
|
1098 | - preg_match_all( '/<tr>(.*?)<td.*?>(.*?)<\/td>(.*?)<\/tr>/si', html_entity_decode( $content[1] ), $matches ); |
|
1097 | + if (!empty($content[1])) { |
|
1098 | + preg_match_all('/<tr>(.*?)<td.*?>(.*?)<\/td>(.*?)<\/tr>/si', html_entity_decode($content[1]), $matches); |
|
1099 | 1099 | |
1100 | - if ( !empty( $matches[2] ) && $matches[3] ) { |
|
1100 | + if (!empty($matches[2]) && $matches[3]) { |
|
1101 | 1101 | $return = array(); |
1102 | 1102 | |
1103 | - foreach ( $matches[2] as $key => $label ) { |
|
1104 | - $label = trim( $label ); |
|
1103 | + foreach ($matches[2] as $key => $label) { |
|
1104 | + $label = trim($label); |
|
1105 | 1105 | |
1106 | - switch ( strtolower( $label ) ) { |
|
1106 | + switch (strtolower($label)) { |
|
1107 | 1107 | case 'member state': |
1108 | - $return['state'] = trim( strip_tags( $matches[3][$key] ) ); |
|
1108 | + $return['state'] = trim(strip_tags($matches[3][$key])); |
|
1109 | 1109 | break; |
1110 | 1110 | case 'vat number': |
1111 | - $return['number'] = trim( strip_tags( $matches[3][$key] ) ); |
|
1111 | + $return['number'] = trim(strip_tags($matches[3][$key])); |
|
1112 | 1112 | break; |
1113 | 1113 | case 'name': |
1114 | - $return['company'] = trim( strip_tags( $matches[3][$key] ) ); |
|
1114 | + $return['company'] = trim(strip_tags($matches[3][$key])); |
|
1115 | 1115 | break; |
1116 | 1116 | case 'address': |
1117 | - $address = str_replace( array( "<br><br>", "<br /><br />", "<br/><br/>" ), "<br>", html_entity_decode( trim( $matches[3][$key] ) ) ); |
|
1118 | - $return['address'] = trim( strip_tags( $address, '<br>' ) ); |
|
1117 | + $address = str_replace(array("<br><br>", "<br /><br />", "<br/><br/>"), "<br>", html_entity_decode(trim($matches[3][$key]))); |
|
1118 | + $return['address'] = trim(strip_tags($address, '<br>')); |
|
1119 | 1119 | break; |
1120 | 1120 | case 'consultation number': |
1121 | - $return['consultation'] = trim( strip_tags( $matches[3][$key] ) ); |
|
1121 | + $return['consultation'] = trim(strip_tags($matches[3][$key])); |
|
1122 | 1122 | break; |
1123 | 1123 | } |
1124 | 1124 | } |
1125 | 1125 | |
1126 | - if ( !empty( $return ) ) { |
|
1126 | + if (!empty($return)) { |
|
1127 | 1127 | return $return; |
1128 | 1128 | } |
1129 | 1129 | } |
@@ -1135,63 +1135,63 @@ discard block |
||
1135 | 1135 | } |
1136 | 1136 | } |
1137 | 1137 | |
1138 | - public static function check_vat( $vat_number, $country_code = '' ) { |
|
1138 | + public static function check_vat($vat_number, $country_code = '') { |
|
1139 | 1139 | $vat_name = self::get_vat_name(); |
1140 | 1140 | |
1141 | 1141 | $return = array(); |
1142 | 1142 | $return['valid'] = false; |
1143 | - $return['message'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name ); |
|
1143 | + $return['message'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name); |
|
1144 | 1144 | |
1145 | - if ( !wpinv_get_option( 'vat_offline_check' ) && !self::offline_check( $vat_number, $country_code ) ) { |
|
1145 | + if (!wpinv_get_option('vat_offline_check') && !self::offline_check($vat_number, $country_code)) { |
|
1146 | 1146 | return $return; |
1147 | 1147 | } |
1148 | 1148 | |
1149 | - $response = self::vies_check( $vat_number, $country_code ); |
|
1149 | + $response = self::vies_check($vat_number, $country_code); |
|
1150 | 1150 | |
1151 | - if ( $response ) { |
|
1152 | - $return['valid'] = true; |
|
1151 | + if ($response) { |
|
1152 | + $return['valid'] = true; |
|
1153 | 1153 | |
1154 | - if ( is_array( $response ) ) { |
|
1155 | - $return['company'] = isset( $response['company'] ) ? $response['company'] : ''; |
|
1156 | - $return['address'] = isset( $response['address'] ) ? $response['address'] : ''; |
|
1154 | + if (is_array($response)) { |
|
1155 | + $return['company'] = isset($response['company']) ? $response['company'] : ''; |
|
1156 | + $return['address'] = isset($response['address']) ? $response['address'] : ''; |
|
1157 | 1157 | $return['message'] = $return['company'] . '<br/>' . $return['address']; |
1158 | 1158 | } |
1159 | 1159 | } else { |
1160 | 1160 | $return['valid'] = false; |
1161 | - $return['message'] = wp_sprintf( __( 'Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing' ), $vat_name ); |
|
1161 | + $return['message'] = wp_sprintf(__('Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing'), $vat_name); |
|
1162 | 1162 | } |
1163 | 1163 | |
1164 | 1164 | return $return; |
1165 | 1165 | } |
1166 | 1166 | |
1167 | - public static function request_euvatrates( $group ) { |
|
1167 | + public static function request_euvatrates($group) { |
|
1168 | 1168 | $response = array(); |
1169 | 1169 | $response['success'] = false; |
1170 | 1170 | $response['error'] = null; |
1171 | 1171 | $response['eurates'] = null; |
1172 | 1172 | |
1173 | 1173 | $euvatrates_url = 'https://euvatrates.com/rates.json'; |
1174 | - $euvatrates_url = apply_filters( 'wpinv_euvatrates_url', $euvatrates_url ); |
|
1175 | - $api_response = wp_remote_get( $euvatrates_url ); |
|
1174 | + $euvatrates_url = apply_filters('wpinv_euvatrates_url', $euvatrates_url); |
|
1175 | + $api_response = wp_remote_get($euvatrates_url); |
|
1176 | 1176 | |
1177 | 1177 | try { |
1178 | - if ( is_wp_error( $api_response ) ) { |
|
1179 | - $response['error'] = __( $api_response->get_error_message(), 'invoicing' ); |
|
1178 | + if (is_wp_error($api_response)) { |
|
1179 | + $response['error'] = __($api_response->get_error_message(), 'invoicing'); |
|
1180 | 1180 | } else { |
1181 | - $body = json_decode( $api_response['body'] ); |
|
1181 | + $body = json_decode($api_response['body']); |
|
1182 | 1182 | |
1183 | - if ( isset( $body->rates ) ) { |
|
1183 | + if (isset($body->rates)) { |
|
1184 | 1184 | $rates = array(); |
1185 | 1185 | |
1186 | - foreach ( $body->rates as $country_code => $rate ) { |
|
1186 | + foreach ($body->rates as $country_code => $rate) { |
|
1187 | 1187 | $vat_rate = array(); |
1188 | 1188 | $vat_rate['country'] = $rate->country; |
1189 | - $vat_rate['standard'] = (float)$rate->standard_rate; |
|
1190 | - $vat_rate['reduced'] = (float)$rate->reduced_rate; |
|
1191 | - $vat_rate['superreduced'] = (float)$rate->super_reduced_rate; |
|
1192 | - $vat_rate['parking'] = (float)$rate->parking_rate; |
|
1189 | + $vat_rate['standard'] = (float) $rate->standard_rate; |
|
1190 | + $vat_rate['reduced'] = (float) $rate->reduced_rate; |
|
1191 | + $vat_rate['superreduced'] = (float) $rate->super_reduced_rate; |
|
1192 | + $vat_rate['parking'] = (float) $rate->parking_rate; |
|
1193 | 1193 | |
1194 | - if ( $group !== '' && in_array( $group, array( 'standard', 'reduced', 'superreduced', 'parking' ) ) ) { |
|
1194 | + if ($group !== '' && in_array($group, array('standard', 'reduced', 'superreduced', 'parking'))) { |
|
1195 | 1195 | $vat_rate_group = array(); |
1196 | 1196 | $vat_rate_group['country'] = $rate->country; |
1197 | 1197 | $vat_rate_group[$group] = $vat_rate[$group]; |
@@ -1203,79 +1203,79 @@ discard block |
||
1203 | 1203 | } |
1204 | 1204 | |
1205 | 1205 | $response['success'] = true; |
1206 | - $response['rates'] = apply_filters( 'wpinv_process_euvatrates', $rates, $api_response, $group ); |
|
1206 | + $response['rates'] = apply_filters('wpinv_process_euvatrates', $rates, $api_response, $group); |
|
1207 | 1207 | } else { |
1208 | - $response['error'] = __( 'No EU rates found!', 'invoicing' ); |
|
1208 | + $response['error'] = __('No EU rates found!', 'invoicing'); |
|
1209 | 1209 | } |
1210 | 1210 | } |
1211 | - } catch ( Exception $e ) { |
|
1212 | - $response['error'] = __( $e->getMessage(), 'invoicing' ); |
|
1211 | + } catch (Exception $e) { |
|
1212 | + $response['error'] = __($e->getMessage(), 'invoicing'); |
|
1213 | 1213 | } |
1214 | 1214 | |
1215 | - return apply_filters( 'wpinv_response_euvatrates', $response, $group ); |
|
1215 | + return apply_filters('wpinv_response_euvatrates', $response, $group); |
|
1216 | 1216 | } |
1217 | 1217 | |
1218 | - public static function requires_vat( $requires_vat = false, $user_id = 0, $is_digital = null ) { |
|
1218 | + public static function requires_vat($requires_vat = false, $user_id = 0, $is_digital = null) { |
|
1219 | 1219 | global $wpi_item_id, $wpi_country; |
1220 | 1220 | |
1221 | - if ( !empty( $_POST['wpinv_country'] ) ) { |
|
1222 | - $country_code = trim( $_POST['wpinv_country'] ); |
|
1223 | - } else if ( !empty( $_POST['country'] ) ) { |
|
1224 | - $country_code = trim( $_POST['country'] ); |
|
1225 | - } else if ( !empty( $wpi_country ) ) { |
|
1221 | + if (!empty($_POST['wpinv_country'])) { |
|
1222 | + $country_code = trim($_POST['wpinv_country']); |
|
1223 | + } else if (!empty($_POST['country'])) { |
|
1224 | + $country_code = trim($_POST['country']); |
|
1225 | + } else if (!empty($wpi_country)) { |
|
1226 | 1226 | $country_code = $wpi_country; |
1227 | 1227 | } else { |
1228 | - $country_code = self::get_user_country( '', $user_id ); |
|
1228 | + $country_code = self::get_user_country('', $user_id); |
|
1229 | 1229 | } |
1230 | 1230 | |
1231 | - if ( $is_digital === null && $wpi_item_id ) { |
|
1232 | - $is_digital = $wpi_item_id ? self::item_has_digital_rule( $wpi_item_id ) : self::allow_vat_rules(); |
|
1231 | + if ($is_digital === null && $wpi_item_id) { |
|
1232 | + $is_digital = $wpi_item_id ? self::item_has_digital_rule($wpi_item_id) : self::allow_vat_rules(); |
|
1233 | 1233 | } |
1234 | 1234 | |
1235 | - if ( !empty( $country_code ) ) { |
|
1236 | - $requires_vat = ( self::is_eu_state( $country_code ) && ( self::is_eu_state( self::$default_country ) || $is_digital ) ) || ( self::is_gst_country( $country_code ) && self::is_gst_country( self::$default_country ) ); |
|
1235 | + if (!empty($country_code)) { |
|
1236 | + $requires_vat = (self::is_eu_state($country_code) && (self::is_eu_state(self::$default_country) || $is_digital)) || (self::is_gst_country($country_code) && self::is_gst_country(self::$default_country)); |
|
1237 | 1237 | } |
1238 | 1238 | |
1239 | - return apply_filters( 'wpinv_requires_vat', $requires_vat, $user_id ); |
|
1239 | + return apply_filters('wpinv_requires_vat', $requires_vat, $user_id); |
|
1240 | 1240 | } |
1241 | 1241 | |
1242 | - public static function tax_label( $label = '' ) { |
|
1242 | + public static function tax_label($label = '') { |
|
1243 | 1243 | global $wpi_requires_vat; |
1244 | 1244 | |
1245 | - if ( !( $wpi_requires_vat !== 0 && $wpi_requires_vat ) ) { |
|
1246 | - $wpi_requires_vat = self::requires_vat( 0, false ); |
|
1245 | + if (!($wpi_requires_vat !== 0 && $wpi_requires_vat)) { |
|
1246 | + $wpi_requires_vat = self::requires_vat(0, false); |
|
1247 | 1247 | } |
1248 | 1248 | |
1249 | - return $wpi_requires_vat ? __( self::get_vat_name(), 'invoicing' ) : ( $label ? $label : __( 'Tax', 'invoicing' ) ); |
|
1249 | + return $wpi_requires_vat ? __(self::get_vat_name(), 'invoicing') : ($label ? $label : __('Tax', 'invoicing')); |
|
1250 | 1250 | } |
1251 | 1251 | |
1252 | 1252 | public static function standard_rates_label() { |
1253 | - return __( 'Standard Rates', 'invoicing' ); |
|
1253 | + return __('Standard Rates', 'invoicing'); |
|
1254 | 1254 | } |
1255 | 1255 | |
1256 | - public static function get_rate_classes( $with_desc = false ) { |
|
1257 | - $rate_classes_option = get_option( '_wpinv_vat_rate_classes', true ); |
|
1258 | - $classes = maybe_unserialize( $rate_classes_option ); |
|
1256 | + public static function get_rate_classes($with_desc = false) { |
|
1257 | + $rate_classes_option = get_option('_wpinv_vat_rate_classes', true); |
|
1258 | + $classes = maybe_unserialize($rate_classes_option); |
|
1259 | 1259 | |
1260 | - if ( empty( $classes ) || !is_array( $classes ) ) { |
|
1260 | + if (empty($classes) || !is_array($classes)) { |
|
1261 | 1261 | $classes = array(); |
1262 | 1262 | } |
1263 | 1263 | |
1264 | 1264 | $rate_classes = array(); |
1265 | - if ( !array_key_exists( '_standard', $classes ) ) { |
|
1266 | - if ( $with_desc ) { |
|
1267 | - $rate_classes['_standard'] = array( 'name' => self::standard_rates_label(), 'desc' => __( 'EU member states standard VAT rates', 'invoicing' ) ); |
|
1265 | + if (!array_key_exists('_standard', $classes)) { |
|
1266 | + if ($with_desc) { |
|
1267 | + $rate_classes['_standard'] = array('name' => self::standard_rates_label(), 'desc' => __('EU member states standard VAT rates', 'invoicing')); |
|
1268 | 1268 | } else { |
1269 | 1269 | $rate_classes['_standard'] = self::standard_rates_label(); |
1270 | 1270 | } |
1271 | 1271 | } |
1272 | 1272 | |
1273 | - foreach ( $classes as $key => $class ) { |
|
1274 | - $name = !empty( $class['name'] ) ? __( $class['name'], 'invoicing' ) : $key; |
|
1275 | - $desc = !empty( $class['desc'] ) ? __( $class['desc'], 'invoicing' ) : ''; |
|
1273 | + foreach ($classes as $key => $class) { |
|
1274 | + $name = !empty($class['name']) ? __($class['name'], 'invoicing') : $key; |
|
1275 | + $desc = !empty($class['desc']) ? __($class['desc'], 'invoicing') : ''; |
|
1276 | 1276 | |
1277 | - if ( $with_desc ) { |
|
1278 | - $rate_classes[$key] = array( 'name' => $name, 'desc' => $desc ); |
|
1277 | + if ($with_desc) { |
|
1278 | + $rate_classes[$key] = array('name' => $name, 'desc' => $desc); |
|
1279 | 1279 | } else { |
1280 | 1280 | $rate_classes[$key] = $name; |
1281 | 1281 | } |
@@ -1286,15 +1286,15 @@ discard block |
||
1286 | 1286 | |
1287 | 1287 | public static function get_all_classes() { |
1288 | 1288 | $classes = self::get_rate_classes(); |
1289 | - $classes['_exempt'] = __( 'Exempt (0%)', 'invoicing' ); |
|
1289 | + $classes['_exempt'] = __('Exempt (0%)', 'invoicing'); |
|
1290 | 1290 | |
1291 | - return apply_filters( 'wpinv_vat_get_all_classes', $classes ); |
|
1291 | + return apply_filters('wpinv_vat_get_all_classes', $classes); |
|
1292 | 1292 | } |
1293 | 1293 | |
1294 | - public static function get_class_desc( $rate_class ) { |
|
1295 | - $rate_classes = self::get_rate_classes( true ); |
|
1294 | + public static function get_class_desc($rate_class) { |
|
1295 | + $rate_classes = self::get_rate_classes(true); |
|
1296 | 1296 | |
1297 | - if ( !empty( $rate_classes ) && isset( $rate_classes[$rate_class] ) && isset( $rate_classes[$rate_class]['desc'] ) ) { |
|
1297 | + if (!empty($rate_classes) && isset($rate_classes[$rate_class]) && isset($rate_classes[$rate_class]['desc'])) { |
|
1298 | 1298 | return $rate_classes[$rate_class]['desc']; |
1299 | 1299 | } |
1300 | 1300 | |
@@ -1310,106 +1310,106 @@ discard block |
||
1310 | 1310 | 'increased' => 'Increased' |
1311 | 1311 | ); |
1312 | 1312 | |
1313 | - return apply_filters( 'wpinv_get_vat_groups', $vat_groups ); |
|
1313 | + return apply_filters('wpinv_get_vat_groups', $vat_groups); |
|
1314 | 1314 | } |
1315 | 1315 | |
1316 | 1316 | public static function get_rules() { |
1317 | 1317 | $vat_rules = array( |
1318 | - 'digital' => __( 'Digital Product', 'invoicing' ), |
|
1319 | - 'physical' => __( 'Physical Product', 'invoicing' ) |
|
1318 | + 'digital' => __('Digital Product', 'invoicing'), |
|
1319 | + 'physical' => __('Physical Product', 'invoicing') |
|
1320 | 1320 | ); |
1321 | - return apply_filters( 'wpinv_get_vat_rules', $vat_rules ); |
|
1321 | + return apply_filters('wpinv_get_vat_rules', $vat_rules); |
|
1322 | 1322 | } |
1323 | 1323 | |
1324 | - public static function get_vat_rates( $class ) { |
|
1325 | - if ( $class === '_standard' ) { |
|
1324 | + public static function get_vat_rates($class) { |
|
1325 | + if ($class === '_standard') { |
|
1326 | 1326 | return wpinv_get_tax_rates(); |
1327 | 1327 | } |
1328 | 1328 | |
1329 | 1329 | $rates = self::get_non_standard_rates(); |
1330 | 1330 | |
1331 | - return array_key_exists( $class, $rates ) ? $rates[$class] : array(); |
|
1331 | + return array_key_exists($class, $rates) ? $rates[$class] : array(); |
|
1332 | 1332 | } |
1333 | 1333 | |
1334 | 1334 | public static function get_non_standard_rates() { |
1335 | - $option = get_option( 'wpinv_vat_rates', array()); |
|
1336 | - return is_array( $option ) ? $option : array(); |
|
1335 | + $option = get_option('wpinv_vat_rates', array()); |
|
1336 | + return is_array($option) ? $option : array(); |
|
1337 | 1337 | } |
1338 | 1338 | |
1339 | 1339 | public static function allow_vat_rules() { |
1340 | - return ( wpinv_use_taxes() && wpinv_get_option( 'apply_vat_rules' ) ? true : false ); |
|
1340 | + return (wpinv_use_taxes() && wpinv_get_option('apply_vat_rules') ? true : false); |
|
1341 | 1341 | } |
1342 | 1342 | |
1343 | 1343 | public static function allow_vat_classes() { |
1344 | 1344 | return false; // TODO |
1345 | - return ( wpinv_get_option( 'vat_allow_classes' ) ? true : false ); |
|
1345 | + return (wpinv_get_option('vat_allow_classes') ? true : false); |
|
1346 | 1346 | } |
1347 | 1347 | |
1348 | - public static function get_item_class( $postID ) { |
|
1349 | - $class = get_post_meta( $postID, '_wpinv_vat_class', true ); |
|
1348 | + public static function get_item_class($postID) { |
|
1349 | + $class = get_post_meta($postID, '_wpinv_vat_class', true); |
|
1350 | 1350 | |
1351 | - if ( empty( $class ) ) { |
|
1351 | + if (empty($class)) { |
|
1352 | 1352 | $class = '_standard'; |
1353 | 1353 | } |
1354 | 1354 | |
1355 | - return apply_filters( 'wpinv_get_item_vat_class', $class, $postID ); |
|
1355 | + return apply_filters('wpinv_get_item_vat_class', $class, $postID); |
|
1356 | 1356 | } |
1357 | 1357 | |
1358 | - public static function item_class_label( $postID ) { |
|
1358 | + public static function item_class_label($postID) { |
|
1359 | 1359 | $vat_classes = self::get_all_classes(); |
1360 | 1360 | |
1361 | - $class = self::get_item_class( $postID ); |
|
1362 | - $class = isset( $vat_classes[$class] ) ? $vat_classes[$class] : __( $class, 'invoicing' ); |
|
1361 | + $class = self::get_item_class($postID); |
|
1362 | + $class = isset($vat_classes[$class]) ? $vat_classes[$class] : __($class, 'invoicing'); |
|
1363 | 1363 | |
1364 | - return apply_filters( 'wpinv_item_class_label', $class, $postID ); |
|
1364 | + return apply_filters('wpinv_item_class_label', $class, $postID); |
|
1365 | 1365 | } |
1366 | 1366 | |
1367 | - public static function get_item_rule( $postID ) { |
|
1368 | - $rule_type = get_post_meta( $postID, '_wpinv_vat_rule', true ); |
|
1367 | + public static function get_item_rule($postID) { |
|
1368 | + $rule_type = get_post_meta($postID, '_wpinv_vat_rule', true); |
|
1369 | 1369 | |
1370 | - if ( empty( $rule_type ) ) { |
|
1370 | + if (empty($rule_type)) { |
|
1371 | 1371 | $rule_type = self::allow_vat_rules() ? 'digital' : 'physical'; |
1372 | 1372 | } |
1373 | 1373 | |
1374 | - return apply_filters( 'wpinv_item_get_vat_rule', $rule_type, $postID ); |
|
1374 | + return apply_filters('wpinv_item_get_vat_rule', $rule_type, $postID); |
|
1375 | 1375 | } |
1376 | 1376 | |
1377 | - public static function item_rule_label( $postID ) { |
|
1377 | + public static function item_rule_label($postID) { |
|
1378 | 1378 | $vat_rules = self::get_rules(); |
1379 | - $vat_rule = self::get_item_rule( $postID ); |
|
1380 | - $vat_rule = isset( $vat_rules[$vat_rule] ) ? $vat_rules[$vat_rule] : $vat_rule; |
|
1379 | + $vat_rule = self::get_item_rule($postID); |
|
1380 | + $vat_rule = isset($vat_rules[$vat_rule]) ? $vat_rules[$vat_rule] : $vat_rule; |
|
1381 | 1381 | |
1382 | - return apply_filters( 'wpinv_item_rule_label', $vat_rule, $postID ); |
|
1382 | + return apply_filters('wpinv_item_rule_label', $vat_rule, $postID); |
|
1383 | 1383 | } |
1384 | 1384 | |
1385 | - public static function item_has_digital_rule( $item_id = 0 ) { |
|
1386 | - return self::get_item_rule( $item_id ) == 'digital' ? true : false; |
|
1385 | + public static function item_has_digital_rule($item_id = 0) { |
|
1386 | + return self::get_item_rule($item_id) == 'digital' ? true : false; |
|
1387 | 1387 | } |
1388 | 1388 | |
1389 | - public static function invoice_has_digital_rule( $invoice = 0 ) { |
|
1390 | - if ( !self::allow_vat_rules() ) { |
|
1389 | + public static function invoice_has_digital_rule($invoice = 0) { |
|
1390 | + if (!self::allow_vat_rules()) { |
|
1391 | 1391 | return false; |
1392 | 1392 | } |
1393 | 1393 | |
1394 | - if ( empty( $invoice ) ) { |
|
1394 | + if (empty($invoice)) { |
|
1395 | 1395 | return true; |
1396 | 1396 | } |
1397 | 1397 | |
1398 | - if ( is_int( $invoice ) ) { |
|
1399 | - $invoice = new WPInv_Invoice( $invoice ); |
|
1398 | + if (is_int($invoice)) { |
|
1399 | + $invoice = new WPInv_Invoice($invoice); |
|
1400 | 1400 | } |
1401 | 1401 | |
1402 | - if ( !( is_object( $invoice ) && is_a( $invoice, 'WPInv_Invoice' ) ) ) { |
|
1402 | + if (!(is_object($invoice) && is_a($invoice, 'WPInv_Invoice'))) { |
|
1403 | 1403 | return true; |
1404 | 1404 | } |
1405 | 1405 | |
1406 | - $cart_items = $invoice->get_cart_details(); |
|
1406 | + $cart_items = $invoice->get_cart_details(); |
|
1407 | 1407 | |
1408 | - if ( !empty( $cart_items ) ) { |
|
1408 | + if (!empty($cart_items)) { |
|
1409 | 1409 | $has_digital_rule = false; |
1410 | 1410 | |
1411 | - foreach ( $cart_items as $key => $item ) { |
|
1412 | - if ( self::item_has_digital_rule( $item['id'] ) ) { |
|
1411 | + foreach ($cart_items as $key => $item) { |
|
1412 | + if (self::item_has_digital_rule($item['id'])) { |
|
1413 | 1413 | $has_digital_rule = true; |
1414 | 1414 | break; |
1415 | 1415 | } |
@@ -1421,67 +1421,67 @@ discard block |
||
1421 | 1421 | return $has_digital_rule; |
1422 | 1422 | } |
1423 | 1423 | |
1424 | - public static function item_is_taxable( $item_id = 0, $country = false, $state = false ) { |
|
1425 | - if ( !wpinv_use_taxes() ) { |
|
1424 | + public static function item_is_taxable($item_id = 0, $country = false, $state = false) { |
|
1425 | + if (!wpinv_use_taxes()) { |
|
1426 | 1426 | return false; |
1427 | 1427 | } |
1428 | 1428 | |
1429 | 1429 | $is_taxable = true; |
1430 | 1430 | |
1431 | - if ( !empty( $item_id ) && self::get_item_class( $item_id ) == '_exempt' ) { |
|
1431 | + if (!empty($item_id) && self::get_item_class($item_id) == '_exempt') { |
|
1432 | 1432 | $is_taxable = false; |
1433 | 1433 | } |
1434 | 1434 | |
1435 | - return apply_filters( 'wpinv_item_is_taxable', $is_taxable, $item_id, $country , $state ); |
|
1435 | + return apply_filters('wpinv_item_is_taxable', $is_taxable, $item_id, $country, $state); |
|
1436 | 1436 | } |
1437 | 1437 | |
1438 | - public static function find_rate( $country, $state, $rate, $class ) { |
|
1438 | + public static function find_rate($country, $state, $rate, $class) { |
|
1439 | 1439 | global $wpi_zero_tax; |
1440 | 1440 | |
1441 | - if ( $class === '_exempt' || $wpi_zero_tax ) { |
|
1441 | + if ($class === '_exempt' || $wpi_zero_tax) { |
|
1442 | 1442 | return 0; |
1443 | 1443 | } |
1444 | 1444 | |
1445 | - $tax_rates = wpinv_get_tax_rates(); |
|
1445 | + $tax_rates = wpinv_get_tax_rates(); |
|
1446 | 1446 | |
1447 | - if ( $class !== '_standard' ) { |
|
1448 | - $class_rates = self::get_vat_rates( $class ); |
|
1447 | + if ($class !== '_standard') { |
|
1448 | + $class_rates = self::get_vat_rates($class); |
|
1449 | 1449 | |
1450 | - if ( is_array( $class_rates ) ) { |
|
1450 | + if (is_array($class_rates)) { |
|
1451 | 1451 | $indexed_class_rates = array(); |
1452 | 1452 | |
1453 | - foreach ( $class_rates as $key => $cr ) { |
|
1453 | + foreach ($class_rates as $key => $cr) { |
|
1454 | 1454 | $indexed_class_rates[$cr['country']] = $cr; |
1455 | 1455 | } |
1456 | 1456 | |
1457 | - $tax_rates = array_map( function( $tr ) use( $indexed_class_rates ) { |
|
1457 | + $tax_rates = array_map(function($tr) use($indexed_class_rates) { |
|
1458 | 1458 | $tr_country = $tr['country']; |
1459 | - if ( !isset( $indexed_class_rates[$tr_country] ) ) { |
|
1459 | + if (!isset($indexed_class_rates[$tr_country])) { |
|
1460 | 1460 | return $tr; |
1461 | 1461 | } |
1462 | 1462 | $icr = $indexed_class_rates[$tr_country]; |
1463 | - return ( empty( $icr['rate'] ) && $icr['rate'] !== '0' ) ? $tr : $icr; |
|
1463 | + return (empty($icr['rate']) && $icr['rate'] !== '0') ? $tr : $icr; |
|
1464 | 1464 | |
1465 | - }, $tax_rates, $class_rates ); |
|
1465 | + }, $tax_rates, $class_rates); |
|
1466 | 1466 | } |
1467 | 1467 | } |
1468 | 1468 | |
1469 | - if ( !empty( $tax_rates ) ) { |
|
1470 | - foreach ( $tax_rates as $key => $tax_rate ) { |
|
1471 | - if ( $country != $tax_rate['country'] ) |
|
1469 | + if (!empty($tax_rates)) { |
|
1470 | + foreach ($tax_rates as $key => $tax_rate) { |
|
1471 | + if ($country != $tax_rate['country']) |
|
1472 | 1472 | continue; |
1473 | 1473 | |
1474 | - if ( !empty( $tax_rate['global'] ) ) { |
|
1475 | - if ( 0 !== $tax_rate['rate'] || !empty( $tax_rate['rate'] ) ) { |
|
1476 | - $rate = number_format( $tax_rate['rate'], 4 ); |
|
1474 | + if (!empty($tax_rate['global'])) { |
|
1475 | + if (0 !== $tax_rate['rate'] || !empty($tax_rate['rate'])) { |
|
1476 | + $rate = number_format($tax_rate['rate'], 4); |
|
1477 | 1477 | } |
1478 | 1478 | } else { |
1479 | - if ( empty( $tax_rate['state'] ) || strtolower( $state ) != strtolower( $tax_rate['state'] ) ) |
|
1479 | + if (empty($tax_rate['state']) || strtolower($state) != strtolower($tax_rate['state'])) |
|
1480 | 1480 | continue; |
1481 | 1481 | |
1482 | 1482 | $state_rate = $tax_rate['rate']; |
1483 | - if ( 0 !== $state_rate || !empty( $state_rate ) ) { |
|
1484 | - $rate = number_format( $state_rate, 4 ); |
|
1483 | + if (0 !== $state_rate || !empty($state_rate)) { |
|
1484 | + $rate = number_format($state_rate, 4); |
|
1485 | 1485 | } |
1486 | 1486 | } |
1487 | 1487 | } |
@@ -1490,84 +1490,84 @@ discard block |
||
1490 | 1490 | return $rate; |
1491 | 1491 | } |
1492 | 1492 | |
1493 | - public static function get_rate( $rate = 1, $country = '', $state = '', $item_id = 0 ) { |
|
1493 | + public static function get_rate($rate = 1, $country = '', $state = '', $item_id = 0) { |
|
1494 | 1494 | global $wpinv_options, $wpi_session, $wpi_item_id, $wpi_zero_tax; |
1495 | 1495 | |
1496 | 1496 | $item_id = $item_id > 0 ? $item_id : $wpi_item_id; |
1497 | 1497 | $allow_vat_classes = self::allow_vat_classes(); |
1498 | - $class = $item_id ? self::get_item_class( $item_id ) : '_standard'; |
|
1498 | + $class = $item_id ? self::get_item_class($item_id) : '_standard'; |
|
1499 | 1499 | |
1500 | - if ( $class === '_exempt' || $wpi_zero_tax ) { |
|
1500 | + if ($class === '_exempt' || $wpi_zero_tax) { |
|
1501 | 1501 | return 0; |
1502 | - } else if ( !$allow_vat_classes ) { |
|
1502 | + } else if (!$allow_vat_classes) { |
|
1503 | 1503 | $class = '_standard'; |
1504 | 1504 | } |
1505 | 1505 | |
1506 | - if( !empty( $_POST['wpinv_country'] ) ) { |
|
1506 | + if (!empty($_POST['wpinv_country'])) { |
|
1507 | 1507 | $post_country = $_POST['wpinv_country']; |
1508 | - } elseif( !empty( $_POST['wpinv_country'] ) ) { |
|
1508 | + } elseif (!empty($_POST['wpinv_country'])) { |
|
1509 | 1509 | $post_country = $_POST['wpinv_country']; |
1510 | - } elseif( !empty( $_POST['country'] ) ) { |
|
1510 | + } elseif (!empty($_POST['country'])) { |
|
1511 | 1511 | $post_country = $_POST['country']; |
1512 | 1512 | } else { |
1513 | 1513 | $post_country = ''; |
1514 | 1514 | } |
1515 | 1515 | |
1516 | - $country = !empty( $post_country ) ? $post_country : wpinv_default_billing_country( $country ); |
|
1517 | - $base_country = wpinv_is_base_country( $country ); |
|
1516 | + $country = !empty($post_country) ? $post_country : wpinv_default_billing_country($country); |
|
1517 | + $base_country = wpinv_is_base_country($country); |
|
1518 | 1518 | |
1519 | - $requires_vat = self::requires_vat( 0, false ); |
|
1520 | - $is_digital = self::get_item_rule( $item_id ) == 'digital' ; |
|
1521 | - $rate = $requires_vat && isset( $wpinv_options['eu_fallback_rate'] ) ? $wpinv_options['eu_fallback_rate'] : $rate; |
|
1519 | + $requires_vat = self::requires_vat(0, false); |
|
1520 | + $is_digital = self::get_item_rule($item_id) == 'digital'; |
|
1521 | + $rate = $requires_vat && isset($wpinv_options['eu_fallback_rate']) ? $wpinv_options['eu_fallback_rate'] : $rate; |
|
1522 | 1522 | |
1523 | - if ( self::same_country_rule() == 'no' && $base_country ) { // Disable VAT to same country |
|
1523 | + if (self::same_country_rule() == 'no' && $base_country) { // Disable VAT to same country |
|
1524 | 1524 | $rate = 0; |
1525 | - } else if ( $requires_vat ) { |
|
1526 | - $vat_number = self::get_user_vat_number( '', 0, true ); |
|
1525 | + } else if ($requires_vat) { |
|
1526 | + $vat_number = self::get_user_vat_number('', 0, true); |
|
1527 | 1527 | $vat_info = self::current_vat_data(); |
1528 | 1528 | |
1529 | - if ( is_array( $vat_info ) ) { |
|
1530 | - $vat_number = isset( $vat_info['number'] ) && !empty( $vat_info['valid'] ) ? $vat_info['number'] : ""; |
|
1529 | + if (is_array($vat_info)) { |
|
1530 | + $vat_number = isset($vat_info['number']) && !empty($vat_info['valid']) ? $vat_info['number'] : ""; |
|
1531 | 1531 | } |
1532 | 1532 | |
1533 | - if ( $country == 'UK' ) { |
|
1533 | + if ($country == 'UK') { |
|
1534 | 1534 | $country = 'GB'; |
1535 | 1535 | } |
1536 | 1536 | |
1537 | - if ( !empty( $vat_number ) ) { |
|
1537 | + if (!empty($vat_number)) { |
|
1538 | 1538 | $rate = 0; |
1539 | 1539 | } else { |
1540 | - $rate = self::find_rate( $country, $state, $rate, $class ); // Fix if there are no tax rated and you try to pay an invoice it does not add the fallback tax rate |
|
1540 | + $rate = self::find_rate($country, $state, $rate, $class); // Fix if there are no tax rated and you try to pay an invoice it does not add the fallback tax rate |
|
1541 | 1541 | } |
1542 | 1542 | |
1543 | - if ( empty( $vat_number ) && !$is_digital ) { |
|
1544 | - if ( $base_country ) { |
|
1545 | - $rate = self::find_rate( $country, null, $rate, $class ); |
|
1543 | + if (empty($vat_number) && !$is_digital) { |
|
1544 | + if ($base_country) { |
|
1545 | + $rate = self::find_rate($country, null, $rate, $class); |
|
1546 | 1546 | } else { |
1547 | - if ( empty( $country ) && isset( $wpinv_options['eu_fallback_rate'] ) ) { |
|
1547 | + if (empty($country) && isset($wpinv_options['eu_fallback_rate'])) { |
|
1548 | 1548 | $rate = $wpinv_options['eu_fallback_rate']; |
1549 | - } else if( !empty( $country ) ) { |
|
1550 | - $rate = self::find_rate( $country, $state, $rate, $class ); |
|
1549 | + } else if (!empty($country)) { |
|
1550 | + $rate = self::find_rate($country, $state, $rate, $class); |
|
1551 | 1551 | } |
1552 | 1552 | } |
1553 | - } else if ( empty( $vat_number ) || ( self::same_country_rule() == 'always' && $base_country ) ) { |
|
1554 | - if ( empty( $country ) && isset( $wpinv_options['eu_fallback_rate'] ) ) { |
|
1553 | + } else if (empty($vat_number) || (self::same_country_rule() == 'always' && $base_country)) { |
|
1554 | + if (empty($country) && isset($wpinv_options['eu_fallback_rate'])) { |
|
1555 | 1555 | $rate = $wpinv_options['eu_fallback_rate']; |
1556 | - } else if( !empty( $country ) ) { |
|
1557 | - $rate = self::find_rate( $country, $state, $rate, $class ); |
|
1556 | + } else if (!empty($country)) { |
|
1557 | + $rate = self::find_rate($country, $state, $rate, $class); |
|
1558 | 1558 | } |
1559 | 1559 | } |
1560 | 1560 | } else { |
1561 | - if ( $is_digital ) { |
|
1561 | + if ($is_digital) { |
|
1562 | 1562 | $ip_country_code = self::get_country_by_ip(); |
1563 | 1563 | |
1564 | - if ( $ip_country_code && self::is_eu_state( $ip_country_code ) ) { |
|
1565 | - $rate = self::find_rate( $ip_country_code, '', 0, $class ); |
|
1564 | + if ($ip_country_code && self::is_eu_state($ip_country_code)) { |
|
1565 | + $rate = self::find_rate($ip_country_code, '', 0, $class); |
|
1566 | 1566 | } else { |
1567 | - $rate = self::find_rate( $country, $state, $rate, $class ); |
|
1567 | + $rate = self::find_rate($country, $state, $rate, $class); |
|
1568 | 1568 | } |
1569 | 1569 | } else { |
1570 | - $rate = self::find_rate( $country, $state, $rate, $class ); |
|
1570 | + $rate = self::find_rate($country, $state, $rate, $class); |
|
1571 | 1571 | } |
1572 | 1572 | } |
1573 | 1573 | |
@@ -1577,48 +1577,48 @@ discard block |
||
1577 | 1577 | public static function current_vat_data() { |
1578 | 1578 | global $wpi_session; |
1579 | 1579 | |
1580 | - return $wpi_session->get( 'user_vat_data' ); |
|
1580 | + return $wpi_session->get('user_vat_data'); |
|
1581 | 1581 | } |
1582 | 1582 | |
1583 | - public static function get_user_country( $country = '', $user_id = 0 ) { |
|
1584 | - $user_address = wpinv_get_user_address( $user_id, false ); |
|
1583 | + public static function get_user_country($country = '', $user_id = 0) { |
|
1584 | + $user_address = wpinv_get_user_address($user_id, false); |
|
1585 | 1585 | |
1586 | - if ( wpinv_get_option( 'vat_ip_country_default' ) ) { |
|
1586 | + if (wpinv_get_option('vat_ip_country_default')) { |
|
1587 | 1587 | $country = ''; |
1588 | 1588 | } |
1589 | 1589 | |
1590 | - $country = empty( $user_address ) || !isset( $user_address['country'] ) || empty( $user_address['country'] ) ? $country : $user_address['country']; |
|
1591 | - $result = apply_filters( 'wpinv_get_user_country', $country, $user_id ); |
|
1590 | + $country = empty($user_address) || !isset($user_address['country']) || empty($user_address['country']) ? $country : $user_address['country']; |
|
1591 | + $result = apply_filters('wpinv_get_user_country', $country, $user_id); |
|
1592 | 1592 | |
1593 | - if ( empty( $result ) ) { |
|
1593 | + if (empty($result)) { |
|
1594 | 1594 | $result = self::get_country_by_ip(); |
1595 | 1595 | } |
1596 | 1596 | |
1597 | 1597 | return $result; |
1598 | 1598 | } |
1599 | 1599 | |
1600 | - public static function set_user_country( $country = '', $user_id = 0 ) { |
|
1600 | + public static function set_user_country($country = '', $user_id = 0) { |
|
1601 | 1601 | global $wpi_userID; |
1602 | 1602 | |
1603 | - if ( empty($country) && !empty($wpi_userID) && get_current_user_id() != $wpi_userID ) { |
|
1603 | + if (empty($country) && !empty($wpi_userID) && get_current_user_id() != $wpi_userID) { |
|
1604 | 1604 | $country = wpinv_get_default_country(); |
1605 | 1605 | } |
1606 | 1606 | |
1607 | 1607 | return $country; |
1608 | 1608 | } |
1609 | 1609 | |
1610 | - public static function get_user_vat_number( $vat_number = '', $user_id = 0, $is_valid = false ) { |
|
1610 | + public static function get_user_vat_number($vat_number = '', $user_id = 0, $is_valid = false) { |
|
1611 | 1611 | global $wpi_current_id, $wpi_userID; |
1612 | 1612 | |
1613 | - if ( !empty( $_POST['new_user'] ) ) { |
|
1613 | + if (!empty($_POST['new_user'])) { |
|
1614 | 1614 | return ''; |
1615 | 1615 | } |
1616 | 1616 | |
1617 | - if ( empty( $user_id ) ) { |
|
1618 | - $user_id = !empty( $wpi_userID ) ? $wpi_userID : ( $wpi_current_id ? wpinv_get_user_id( $wpi_current_id ) : get_current_user_id() ); |
|
1617 | + if (empty($user_id)) { |
|
1618 | + $user_id = !empty($wpi_userID) ? $wpi_userID : ($wpi_current_id ? wpinv_get_user_id($wpi_current_id) : get_current_user_id()); |
|
1619 | 1619 | } |
1620 | 1620 | |
1621 | - $vat_number = empty( $user_id ) ? '' : get_user_meta( $user_id, '_wpinv_vat_number', true ); |
|
1621 | + $vat_number = empty($user_id) ? '' : get_user_meta($user_id, '_wpinv_vat_number', true); |
|
1622 | 1622 | |
1623 | 1623 | /* TODO |
1624 | 1624 | if ( $is_valid && $vat_number ) { |
@@ -1629,38 +1629,38 @@ discard block |
||
1629 | 1629 | } |
1630 | 1630 | */ |
1631 | 1631 | |
1632 | - return apply_filters('wpinv_get_user_vat_number', $vat_number, $user_id, $is_valid ); |
|
1632 | + return apply_filters('wpinv_get_user_vat_number', $vat_number, $user_id, $is_valid); |
|
1633 | 1633 | } |
1634 | 1634 | |
1635 | - public static function get_user_company( $company = '', $user_id = 0 ) { |
|
1635 | + public static function get_user_company($company = '', $user_id = 0) { |
|
1636 | 1636 | global $wpi_current_id, $wpi_userID; |
1637 | 1637 | |
1638 | - if ( empty( $user_id ) ) { |
|
1639 | - $user_id = !empty( $wpi_userID ) ? $wpi_userID : ( $wpi_current_id ? wpinv_get_user_id( $wpi_current_id ) : get_current_user_id() ); |
|
1638 | + if (empty($user_id)) { |
|
1639 | + $user_id = !empty($wpi_userID) ? $wpi_userID : ($wpi_current_id ? wpinv_get_user_id($wpi_current_id) : get_current_user_id()); |
|
1640 | 1640 | } |
1641 | 1641 | |
1642 | - $company = empty( $user_id ) ? "" : get_user_meta( $user_id, '_wpinv_company', true ); |
|
1642 | + $company = empty($user_id) ? "" : get_user_meta($user_id, '_wpinv_company', true); |
|
1643 | 1643 | |
1644 | - return apply_filters( 'wpinv_user_company', $company, $user_id ); |
|
1644 | + return apply_filters('wpinv_user_company', $company, $user_id); |
|
1645 | 1645 | } |
1646 | 1646 | |
1647 | - public static function save_user_vat_details( $company = '', $vat_number = '' ) { |
|
1648 | - $save = apply_filters( 'wpinv_allow_save_user_vat_details', true ); |
|
1647 | + public static function save_user_vat_details($company = '', $vat_number = '') { |
|
1648 | + $save = apply_filters('wpinv_allow_save_user_vat_details', true); |
|
1649 | 1649 | |
1650 | - if ( is_user_logged_in() && $save ) { |
|
1650 | + if (is_user_logged_in() && $save) { |
|
1651 | 1651 | $user_id = get_current_user_id(); |
1652 | 1652 | |
1653 | - if ( !empty( $vat_number ) ) { |
|
1654 | - update_user_meta( $user_id, '_wpinv_vat_number', $vat_number ); |
|
1653 | + if (!empty($vat_number)) { |
|
1654 | + update_user_meta($user_id, '_wpinv_vat_number', $vat_number); |
|
1655 | 1655 | } else { |
1656 | - delete_user_meta( $user_id, '_wpinv_vat_number'); |
|
1656 | + delete_user_meta($user_id, '_wpinv_vat_number'); |
|
1657 | 1657 | } |
1658 | 1658 | |
1659 | - if ( !empty( $company ) ) { |
|
1660 | - update_user_meta( $user_id, '_wpinv_company', $company ); |
|
1659 | + if (!empty($company)) { |
|
1660 | + update_user_meta($user_id, '_wpinv_company', $company); |
|
1661 | 1661 | } else { |
1662 | - delete_user_meta( $user_id, '_wpinv_company'); |
|
1663 | - delete_user_meta( $user_id, '_wpinv_vat_number'); |
|
1662 | + delete_user_meta($user_id, '_wpinv_company'); |
|
1663 | + delete_user_meta($user_id, '_wpinv_vat_number'); |
|
1664 | 1664 | } |
1665 | 1665 | } |
1666 | 1666 | |
@@ -1670,113 +1670,113 @@ discard block |
||
1670 | 1670 | public static function ajax_vat_validate() { |
1671 | 1671 | global $wpinv_options, $wpi_session; |
1672 | 1672 | |
1673 | - $is_checkout = ( !empty( $_POST['source'] ) && $_POST['source'] == 'checkout' ) ? true : false; |
|
1673 | + $is_checkout = (!empty($_POST['source']) && $_POST['source'] == 'checkout') ? true : false; |
|
1674 | 1674 | $response = array(); |
1675 | 1675 | $response['success'] = false; |
1676 | 1676 | |
1677 | - if ( empty( $_REQUEST['_wpi_nonce'] ) || ( !empty( $_REQUEST['_wpi_nonce'] ) && !wp_verify_nonce( $_REQUEST['_wpi_nonce'], 'vat_validation' ) ) ) { |
|
1678 | - $response['error'] = __( 'Invalid security nonce', 'invoicing' ); |
|
1679 | - wp_send_json( $response ); |
|
1677 | + if (empty($_REQUEST['_wpi_nonce']) || (!empty($_REQUEST['_wpi_nonce']) && !wp_verify_nonce($_REQUEST['_wpi_nonce'], 'vat_validation'))) { |
|
1678 | + $response['error'] = __('Invalid security nonce', 'invoicing'); |
|
1679 | + wp_send_json($response); |
|
1680 | 1680 | } |
1681 | 1681 | |
1682 | - $vat_name = self::get_vat_name(); |
|
1682 | + $vat_name = self::get_vat_name(); |
|
1683 | 1683 | |
1684 | - if ( $is_checkout ) { |
|
1684 | + if ($is_checkout) { |
|
1685 | 1685 | $invoice = wpinv_get_invoice_cart(); |
1686 | 1686 | |
1687 | - if ( !self::requires_vat( false, 0, self::invoice_has_digital_rule( $invoice ) ) ) { |
|
1687 | + if (!self::requires_vat(false, 0, self::invoice_has_digital_rule($invoice))) { |
|
1688 | 1688 | $vat_info = array(); |
1689 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1689 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1690 | 1690 | |
1691 | 1691 | self::save_user_vat_details(); |
1692 | 1692 | |
1693 | 1693 | $response['success'] = true; |
1694 | - $response['message'] = wp_sprintf( __( 'Ignore %s', 'invoicing' ), $vat_name ); |
|
1695 | - wp_send_json( $response ); |
|
1694 | + $response['message'] = wp_sprintf(__('Ignore %s', 'invoicing'), $vat_name); |
|
1695 | + wp_send_json($response); |
|
1696 | 1696 | } |
1697 | 1697 | } |
1698 | 1698 | |
1699 | - $company = !empty( $_POST['company'] ) ? sanitize_text_field( $_POST['company'] ) : ''; |
|
1700 | - $vat_number = !empty( $_POST['number'] ) ? sanitize_text_field( $_POST['number'] ) : ''; |
|
1699 | + $company = !empty($_POST['company']) ? sanitize_text_field($_POST['company']) : ''; |
|
1700 | + $vat_number = !empty($_POST['number']) ? sanitize_text_field($_POST['number']) : ''; |
|
1701 | 1701 | |
1702 | - $vat_info = $wpi_session->get( 'user_vat_data' ); |
|
1703 | - if ( !is_array( $vat_info ) || empty( $vat_info ) ) { |
|
1704 | - $vat_info = array( 'company'=> $company, 'number' => '', 'valid' => true ); |
|
1702 | + $vat_info = $wpi_session->get('user_vat_data'); |
|
1703 | + if (!is_array($vat_info) || empty($vat_info)) { |
|
1704 | + $vat_info = array('company'=> $company, 'number' => '', 'valid' => true); |
|
1705 | 1705 | } |
1706 | 1706 | |
1707 | - if ( empty( $vat_number ) ) { |
|
1708 | - if ( $is_checkout ) { |
|
1707 | + if (empty($vat_number)) { |
|
1708 | + if ($is_checkout) { |
|
1709 | 1709 | $response['success'] = true; |
1710 | - $response['message'] = wp_sprintf( __( 'No %s number has been applied. %s will be added to invoice totals', 'invoicing' ), $vat_name, $vat_name ); |
|
1710 | + $response['message'] = wp_sprintf(__('No %s number has been applied. %s will be added to invoice totals', 'invoicing'), $vat_name, $vat_name); |
|
1711 | 1711 | |
1712 | - $vat_info = $wpi_session->get( 'user_vat_data' ); |
|
1712 | + $vat_info = $wpi_session->get('user_vat_data'); |
|
1713 | 1713 | $vat_info['number'] = ""; |
1714 | 1714 | $vat_info['valid'] = true; |
1715 | 1715 | |
1716 | - self::save_user_vat_details( $company ); |
|
1716 | + self::save_user_vat_details($company); |
|
1717 | 1717 | } else { |
1718 | - $response['error'] = wp_sprintf( __( 'Please enter your %s number!', 'invoicing' ), $vat_name ); |
|
1718 | + $response['error'] = wp_sprintf(__('Please enter your %s number!', 'invoicing'), $vat_name); |
|
1719 | 1719 | |
1720 | 1720 | $vat_info['valid'] = false; |
1721 | 1721 | } |
1722 | 1722 | |
1723 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1724 | - wp_send_json( $response ); |
|
1723 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1724 | + wp_send_json($response); |
|
1725 | 1725 | } |
1726 | 1726 | |
1727 | - if ( empty( $company ) ) { |
|
1727 | + if (empty($company)) { |
|
1728 | 1728 | $vat_info['valid'] = false; |
1729 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1729 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1730 | 1730 | |
1731 | - $response['error'] = __( 'Please enter your registered company name!', 'invoicing' ); |
|
1732 | - wp_send_json( $response ); |
|
1731 | + $response['error'] = __('Please enter your registered company name!', 'invoicing'); |
|
1732 | + wp_send_json($response); |
|
1733 | 1733 | } |
1734 | 1734 | |
1735 | - if ( !empty( $wpinv_options['vat_vies_check'] ) ) { |
|
1736 | - if ( empty( $wpinv_options['vat_offline_check'] ) && !self::offline_check( $vat_number ) ) { |
|
1735 | + if (!empty($wpinv_options['vat_vies_check'])) { |
|
1736 | + if (empty($wpinv_options['vat_offline_check']) && !self::offline_check($vat_number)) { |
|
1737 | 1737 | $vat_info['valid'] = false; |
1738 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1738 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1739 | 1739 | |
1740 | - $response['error'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name ); |
|
1741 | - wp_send_json( $response ); |
|
1740 | + $response['error'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name); |
|
1741 | + wp_send_json($response); |
|
1742 | 1742 | } |
1743 | 1743 | |
1744 | 1744 | $response['success'] = true; |
1745 | - $response['message'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name ); |
|
1745 | + $response['message'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name); |
|
1746 | 1746 | } else { |
1747 | - $result = self::check_vat( $vat_number ); |
|
1747 | + $result = self::check_vat($vat_number); |
|
1748 | 1748 | |
1749 | - if ( empty( $result['valid'] ) ) { |
|
1749 | + if (empty($result['valid'])) { |
|
1750 | 1750 | $response['error'] = $result['message']; |
1751 | - wp_send_json( $response ); |
|
1751 | + wp_send_json($response); |
|
1752 | 1752 | } |
1753 | 1753 | |
1754 | - $vies_company = !empty( $result['company'] ) ? $result['company'] : ''; |
|
1755 | - $vies_company = apply_filters( 'wpinv_vies_company_name', $vies_company ); |
|
1754 | + $vies_company = !empty($result['company']) ? $result['company'] : ''; |
|
1755 | + $vies_company = apply_filters('wpinv_vies_company_name', $vies_company); |
|
1756 | 1756 | |
1757 | - $valid_company = $vies_company && $company && ( $vies_company == '---' || strcasecmp( trim( $vies_company ), trim( $company ) ) == 0 ) ? true : false; |
|
1757 | + $valid_company = $vies_company && $company && ($vies_company == '---' || strcasecmp(trim($vies_company), trim($company)) == 0) ? true : false; |
|
1758 | 1758 | |
1759 | - if ( !empty( $wpinv_options['vat_disable_company_name_check'] ) || $valid_company ) { |
|
1759 | + if (!empty($wpinv_options['vat_disable_company_name_check']) || $valid_company) { |
|
1760 | 1760 | $response['success'] = true; |
1761 | - $response['message'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name ); |
|
1761 | + $response['message'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name); |
|
1762 | 1762 | } else { |
1763 | 1763 | $vat_info['valid'] = false; |
1764 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1764 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1765 | 1765 | |
1766 | 1766 | $response['success'] = false; |
1767 | - $response['message'] = wp_sprintf( __( 'The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing' ), $vat_name ); |
|
1768 | - wp_send_json( $response ); |
|
1767 | + $response['message'] = wp_sprintf(__('The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing'), $vat_name); |
|
1768 | + wp_send_json($response); |
|
1769 | 1769 | } |
1770 | 1770 | } |
1771 | 1771 | |
1772 | - if ( $is_checkout ) { |
|
1773 | - self::save_user_vat_details( $company, $vat_number ); |
|
1772 | + if ($is_checkout) { |
|
1773 | + self::save_user_vat_details($company, $vat_number); |
|
1774 | 1774 | |
1775 | - $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => true ); |
|
1776 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1775 | + $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => true); |
|
1776 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1777 | 1777 | } |
1778 | 1778 | |
1779 | - wp_send_json( $response ); |
|
1779 | + wp_send_json($response); |
|
1780 | 1780 | } |
1781 | 1781 | |
1782 | 1782 | public static function ajax_vat_reset() { |
@@ -1785,161 +1785,161 @@ discard block |
||
1785 | 1785 | $company = is_user_logged_in() ? self::get_user_company() : ''; |
1786 | 1786 | $vat_number = self::get_user_vat_number(); |
1787 | 1787 | |
1788 | - $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => false ); |
|
1789 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1788 | + $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => false); |
|
1789 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1790 | 1790 | |
1791 | 1791 | $response = array(); |
1792 | 1792 | $response['success'] = true; |
1793 | 1793 | $response['data']['company'] = $company; |
1794 | 1794 | $response['data']['number'] = $vat_number; |
1795 | 1795 | |
1796 | - wp_send_json( $response ); |
|
1796 | + wp_send_json($response); |
|
1797 | 1797 | } |
1798 | 1798 | |
1799 | - public static function checkout_vat_validate( $valid_data, $post ) { |
|
1799 | + public static function checkout_vat_validate($valid_data, $post) { |
|
1800 | 1800 | global $wpinv_options, $wpi_session; |
1801 | 1801 | |
1802 | - $vat_name = __( self::get_vat_name(), 'invoicing' ); |
|
1802 | + $vat_name = __(self::get_vat_name(), 'invoicing'); |
|
1803 | 1803 | |
1804 | - if ( !isset( $_POST['_wpi_nonce'] ) || !wp_verify_nonce( $_POST['_wpi_nonce'], 'vat_validation' ) ) { |
|
1805 | - wpinv_set_error( 'vat_validation', wp_sprintf( __( "Invalid %s validation request.", 'invoicing' ), $vat_name ) ); |
|
1804 | + if (!isset($_POST['_wpi_nonce']) || !wp_verify_nonce($_POST['_wpi_nonce'], 'vat_validation')) { |
|
1805 | + wpinv_set_error('vat_validation', wp_sprintf(__("Invalid %s validation request.", 'invoicing'), $vat_name)); |
|
1806 | 1806 | return; |
1807 | 1807 | } |
1808 | 1808 | |
1809 | - $vat_saved = $wpi_session->get( 'user_vat_data' ); |
|
1810 | - $wpi_session->set( 'user_vat_data', null ); |
|
1809 | + $vat_saved = $wpi_session->get('user_vat_data'); |
|
1810 | + $wpi_session->set('user_vat_data', null); |
|
1811 | 1811 | |
1812 | 1812 | $invoice = wpinv_get_invoice_cart(); |
1813 | 1813 | $amount = $invoice->get_total(); |
1814 | - $is_digital = self::invoice_has_digital_rule( $invoice ); |
|
1815 | - $no_vat = !self::requires_vat( 0, false, $is_digital ); |
|
1814 | + $is_digital = self::invoice_has_digital_rule($invoice); |
|
1815 | + $no_vat = !self::requires_vat(0, false, $is_digital); |
|
1816 | 1816 | |
1817 | - $company = !empty( $_POST['wpinv_company'] ) ? $_POST['wpinv_company'] : null; |
|
1818 | - $vat_number = !empty( $_POST['wpinv_vat_number'] ) ? $_POST['wpinv_vat_number'] : null; |
|
1819 | - $country = !empty( $_POST['wpinv_country'] ) ? $_POST['wpinv_country'] : $invoice->country; |
|
1820 | - if ( empty( $country ) ) { |
|
1817 | + $company = !empty($_POST['wpinv_company']) ? $_POST['wpinv_company'] : null; |
|
1818 | + $vat_number = !empty($_POST['wpinv_vat_number']) ? $_POST['wpinv_vat_number'] : null; |
|
1819 | + $country = !empty($_POST['wpinv_country']) ? $_POST['wpinv_country'] : $invoice->country; |
|
1820 | + if (empty($country)) { |
|
1821 | 1821 | $country = wpinv_default_billing_country(); |
1822 | 1822 | } |
1823 | 1823 | |
1824 | - if ( !$is_digital && $no_vat ) { |
|
1824 | + if (!$is_digital && $no_vat) { |
|
1825 | 1825 | return; |
1826 | 1826 | } |
1827 | 1827 | |
1828 | - $vat_data = array( 'company' => '', 'number' => '', 'valid' => false ); |
|
1828 | + $vat_data = array('company' => '', 'number' => '', 'valid' => false); |
|
1829 | 1829 | |
1830 | 1830 | $ip_country_code = self::get_country_by_ip(); |
1831 | - $is_eu_state = self::is_eu_state( $country ); |
|
1832 | - $is_eu_state_ip = self::is_eu_state( $ip_country_code ); |
|
1831 | + $is_eu_state = self::is_eu_state($country); |
|
1832 | + $is_eu_state_ip = self::is_eu_state($ip_country_code); |
|
1833 | 1833 | $is_non_eu_user = !$is_eu_state && !$is_eu_state_ip; |
1834 | 1834 | |
1835 | - if ( $is_digital && !$is_non_eu_user && empty( $vat_number ) && apply_filters( 'wpinv_checkout_requires_country', true, $amount ) ) { |
|
1835 | + if ($is_digital && !$is_non_eu_user && empty($vat_number) && apply_filters('wpinv_checkout_requires_country', true, $amount)) { |
|
1836 | 1836 | $vat_data['adddress_confirmed'] = false; |
1837 | 1837 | |
1838 | - if ( !isset( $_POST['wpinv_adddress_confirmed'] ) ) { |
|
1839 | - if ( $ip_country_code != $country ) { |
|
1840 | - wpinv_set_error( 'vat_validation', sprintf( __( 'The country of your current location must be the same as the country of your billing location or you must %s confirm %s the billing address is your home country.', 'invoicing' ), '<a href="#wpinv_adddress_confirm">', '</a>' ) ); |
|
1838 | + if (!isset($_POST['wpinv_adddress_confirmed'])) { |
|
1839 | + if ($ip_country_code != $country) { |
|
1840 | + wpinv_set_error('vat_validation', sprintf(__('The country of your current location must be the same as the country of your billing location or you must %s confirm %s the billing address is your home country.', 'invoicing'), '<a href="#wpinv_adddress_confirm">', '</a>')); |
|
1841 | 1841 | } |
1842 | 1842 | } else { |
1843 | 1843 | $vat_data['adddress_confirmed'] = true; |
1844 | 1844 | } |
1845 | 1845 | } |
1846 | 1846 | |
1847 | - if ( !empty( $wpinv_options['vat_prevent_b2c_purchase'] ) && !$is_non_eu_user && ( empty( $vat_number ) || $no_vat ) ) { |
|
1848 | - if ( $is_eu_state ) { |
|
1849 | - wpinv_set_error( 'vat_validation', wp_sprintf( __( 'Please enter and validate your %s number to verify your purchase is by an EU business.', 'invoicing' ), $vat_name ) ); |
|
1850 | - } else if ( $is_digital && $is_eu_state_ip ) { |
|
1851 | - wpinv_set_error( 'vat_validation', wp_sprintf( __( 'Sales to non-EU countries cannot be completed because %s must be applied.', 'invoicing' ), $vat_name ) ); |
|
1847 | + if (!empty($wpinv_options['vat_prevent_b2c_purchase']) && !$is_non_eu_user && (empty($vat_number) || $no_vat)) { |
|
1848 | + if ($is_eu_state) { |
|
1849 | + wpinv_set_error('vat_validation', wp_sprintf(__('Please enter and validate your %s number to verify your purchase is by an EU business.', 'invoicing'), $vat_name)); |
|
1850 | + } else if ($is_digital && $is_eu_state_ip) { |
|
1851 | + wpinv_set_error('vat_validation', wp_sprintf(__('Sales to non-EU countries cannot be completed because %s must be applied.', 'invoicing'), $vat_name)); |
|
1852 | 1852 | } |
1853 | 1853 | } |
1854 | 1854 | |
1855 | - if ( !$is_eu_state || $no_vat || empty( $vat_number ) ) { |
|
1855 | + if (!$is_eu_state || $no_vat || empty($vat_number)) { |
|
1856 | 1856 | return; |
1857 | 1857 | } |
1858 | 1858 | |
1859 | - if ( !empty( $vat_saved ) && isset( $vat_saved['valid'] ) ) { |
|
1860 | - $vat_data['valid'] = $vat_saved['valid']; |
|
1859 | + if (!empty($vat_saved) && isset($vat_saved['valid'])) { |
|
1860 | + $vat_data['valid'] = $vat_saved['valid']; |
|
1861 | 1861 | } |
1862 | 1862 | |
1863 | - if ( $company !== null ) { |
|
1863 | + if ($company !== null) { |
|
1864 | 1864 | $vat_data['company'] = $company; |
1865 | 1865 | } |
1866 | 1866 | |
1867 | 1867 | $message = ''; |
1868 | - if ( $vat_number !== null ) { |
|
1868 | + if ($vat_number !== null) { |
|
1869 | 1869 | $vat_data['number'] = $vat_number; |
1870 | 1870 | |
1871 | - if ( !$vat_data['valid'] || ( $vat_saved['number'] !== $vat_data['number'] ) || ( $vat_saved['company'] !== $vat_data['company'] ) ) { |
|
1872 | - if ( !empty( $wpinv_options['vat_vies_check'] ) ) { |
|
1873 | - if ( empty( $wpinv_options['vat_offline_check'] ) && !self::offline_check( $vat_number ) ) { |
|
1871 | + if (!$vat_data['valid'] || ($vat_saved['number'] !== $vat_data['number']) || ($vat_saved['company'] !== $vat_data['company'])) { |
|
1872 | + if (!empty($wpinv_options['vat_vies_check'])) { |
|
1873 | + if (empty($wpinv_options['vat_offline_check']) && !self::offline_check($vat_number)) { |
|
1874 | 1874 | $vat_data['valid'] = false; |
1875 | 1875 | } |
1876 | 1876 | } else { |
1877 | - $result = self::check_vat( $vat_number ); |
|
1877 | + $result = self::check_vat($vat_number); |
|
1878 | 1878 | |
1879 | - if ( !empty( $result['valid'] ) ) { |
|
1879 | + if (!empty($result['valid'])) { |
|
1880 | 1880 | $vat_data['valid'] = true; |
1881 | - $vies_company = !empty( $result['company'] ) ? $result['company'] : ''; |
|
1882 | - $vies_company = apply_filters( 'wpinv_vies_company_name', $vies_company ); |
|
1881 | + $vies_company = !empty($result['company']) ? $result['company'] : ''; |
|
1882 | + $vies_company = apply_filters('wpinv_vies_company_name', $vies_company); |
|
1883 | 1883 | |
1884 | - $valid_company = $vies_company && $company && ( $vies_company == '---' || strcasecmp( trim( $vies_company ), trim( $company ) ) == 0 ) ? true : false; |
|
1884 | + $valid_company = $vies_company && $company && ($vies_company == '---' || strcasecmp(trim($vies_company), trim($company)) == 0) ? true : false; |
|
1885 | 1885 | |
1886 | - if ( !( !empty( $wpinv_options['vat_disable_company_name_check'] ) || $valid_company ) ) { |
|
1886 | + if (!(!empty($wpinv_options['vat_disable_company_name_check']) || $valid_company)) { |
|
1887 | 1887 | $vat_data['valid'] = false; |
1888 | 1888 | |
1889 | - $message = wp_sprintf( __( 'The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing' ), $vat_name ); |
|
1889 | + $message = wp_sprintf(__('The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing'), $vat_name); |
|
1890 | 1890 | } |
1891 | 1891 | } else { |
1892 | - $message = wp_sprintf( __( 'Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing' ), $vat_name ); |
|
1892 | + $message = wp_sprintf(__('Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing'), $vat_name); |
|
1893 | 1893 | } |
1894 | 1894 | } |
1895 | 1895 | |
1896 | - if ( !$vat_data['valid'] ) { |
|
1897 | - $error = wp_sprintf( __( 'The %s %s number %s you have entered has not been validated', 'invoicing' ), '<a href="#wpi-vat-details">', $vat_name, '</a>' ) . ( $message ? ' ( ' . $message . ' )' : '' ); |
|
1898 | - wpinv_set_error( 'vat_validation', $error ); |
|
1896 | + if (!$vat_data['valid']) { |
|
1897 | + $error = wp_sprintf(__('The %s %s number %s you have entered has not been validated', 'invoicing'), '<a href="#wpi-vat-details">', $vat_name, '</a>') . ($message ? ' ( ' . $message . ' )' : ''); |
|
1898 | + wpinv_set_error('vat_validation', $error); |
|
1899 | 1899 | } |
1900 | 1900 | } |
1901 | 1901 | } |
1902 | 1902 | |
1903 | - $wpi_session->set( 'user_vat_data', $vat_data ); |
|
1903 | + $wpi_session->set('user_vat_data', $vat_data); |
|
1904 | 1904 | } |
1905 | 1905 | |
1906 | - public static function checkout_vat_fields( $billing_details ) { |
|
1906 | + public static function checkout_vat_fields($billing_details) { |
|
1907 | 1907 | global $wpi_session, $wpinv_options, $wpi_country, $wpi_requires_vat; |
1908 | 1908 | |
1909 | 1909 | $ip_address = wpinv_get_ip(); |
1910 | 1910 | $ip_country_code = self::get_country_by_ip(); |
1911 | 1911 | |
1912 | - $tax_label = __( self::get_vat_name(), 'invoicing' ); |
|
1912 | + $tax_label = __(self::get_vat_name(), 'invoicing'); |
|
1913 | 1913 | $invoice = wpinv_get_invoice_cart(); |
1914 | - $is_digital = self::invoice_has_digital_rule( $invoice ); |
|
1914 | + $is_digital = self::invoice_has_digital_rule($invoice); |
|
1915 | 1915 | $wpi_country = $invoice->country; |
1916 | 1916 | |
1917 | - $requires_vat = !self::hide_vat_fields() && !$invoice->is_free() && self::requires_vat( 0, false, $is_digital ); |
|
1917 | + $requires_vat = !self::hide_vat_fields() && !$invoice->is_free() && self::requires_vat(0, false, $is_digital); |
|
1918 | 1918 | $wpi_requires_vat = $requires_vat; |
1919 | 1919 | |
1920 | 1920 | $company = self::get_user_company(); |
1921 | 1921 | $vat_number = self::get_user_vat_number(); |
1922 | 1922 | |
1923 | - $validated = $vat_number ? self::get_user_vat_number( '', 0, true ) : 1; |
|
1924 | - $vat_info = $wpi_session->get( 'user_vat_data' ); |
|
1923 | + $validated = $vat_number ? self::get_user_vat_number('', 0, true) : 1; |
|
1924 | + $vat_info = $wpi_session->get('user_vat_data'); |
|
1925 | 1925 | |
1926 | - if ( is_array( $vat_info ) ) { |
|
1927 | - $company = isset( $vat_info['company'] ) ? $vat_info['company'] : ''; |
|
1928 | - $vat_number = isset( $vat_info['number'] ) ? $vat_info['number'] : ''; |
|
1929 | - $validated = isset( $vat_info['valid'] ) ? $vat_info['valid'] : false; |
|
1926 | + if (is_array($vat_info)) { |
|
1927 | + $company = isset($vat_info['company']) ? $vat_info['company'] : ''; |
|
1928 | + $vat_number = isset($vat_info['number']) ? $vat_info['number'] : ''; |
|
1929 | + $validated = isset($vat_info['valid']) ? $vat_info['valid'] : false; |
|
1930 | 1930 | } |
1931 | 1931 | |
1932 | 1932 | $selected_country = $invoice->country ? $invoice->country : wpinv_default_billing_country(); |
1933 | 1933 | |
1934 | - if ( $ip_country_code == 'UK' ) { |
|
1934 | + if ($ip_country_code == 'UK') { |
|
1935 | 1935 | $ip_country_code = 'GB'; |
1936 | 1936 | } |
1937 | 1937 | |
1938 | - if ( $selected_country == 'UK' ) { |
|
1938 | + if ($selected_country == 'UK') { |
|
1939 | 1939 | $selected_country = 'GB'; |
1940 | 1940 | } |
1941 | 1941 | |
1942 | - if ( $requires_vat && ( self::same_country_rule() == 'no' && wpinv_is_base_country( $selected_country ) || !self::allow_vat_rules() ) ) { |
|
1942 | + if ($requires_vat && (self::same_country_rule() == 'no' && wpinv_is_base_country($selected_country) || !self::allow_vat_rules())) { |
|
1943 | 1943 | $requires_vat = false; |
1944 | 1944 | } |
1945 | 1945 | |
@@ -1947,52 +1947,52 @@ discard block |
||
1947 | 1947 | $display_validate_btn = 'none'; |
1948 | 1948 | $display_reset_btn = 'none'; |
1949 | 1949 | |
1950 | - if ( !empty( $vat_number ) && $validated ) { |
|
1951 | - $vat_vailidated_text = wp_sprintf( __( '%s number validated', 'invoicing' ), $tax_label ); |
|
1950 | + if (!empty($vat_number) && $validated) { |
|
1951 | + $vat_vailidated_text = wp_sprintf(__('%s number validated', 'invoicing'), $tax_label); |
|
1952 | 1952 | $vat_vailidated_class = 'wpinv-vat-stat-1'; |
1953 | 1953 | $display_reset_btn = 'block'; |
1954 | 1954 | } else { |
1955 | - $vat_vailidated_text = empty( $vat_number ) ? '' : wp_sprintf( __( '%s number not validated', 'invoicing' ), $tax_label ); |
|
1956 | - $vat_vailidated_class = empty( $vat_number ) ? '' : 'wpinv-vat-stat-0'; |
|
1955 | + $vat_vailidated_text = empty($vat_number) ? '' : wp_sprintf(__('%s number not validated', 'invoicing'), $tax_label); |
|
1956 | + $vat_vailidated_class = empty($vat_number) ? '' : 'wpinv-vat-stat-0'; |
|
1957 | 1957 | $display_validate_btn = 'block'; |
1958 | 1958 | } |
1959 | 1959 | |
1960 | - $show_ip_country = $is_digital && ( empty( $vat_number ) || !$requires_vat ) && $ip_country_code != $selected_country ? 'block' : 'none'; |
|
1960 | + $show_ip_country = $is_digital && (empty($vat_number) || !$requires_vat) && $ip_country_code != $selected_country ? 'block' : 'none'; |
|
1961 | 1961 | ?> |
1962 | 1962 | <div id="wpi-vat-details" class="wpi-vat-details clearfix" style="display:<?php echo $display_vat_details; ?>"> |
1963 | 1963 | <div id="wpi_vat_info" class="clearfix panel panel-default"> |
1964 | - <div class="panel-heading"><h3 class="panel-title"><?php echo wp_sprintf( __( '%s Details', 'invoicing' ), $tax_label );?></h3></div> |
|
1964 | + <div class="panel-heading"><h3 class="panel-title"><?php echo wp_sprintf(__('%s Details', 'invoicing'), $tax_label); ?></h3></div> |
|
1965 | 1965 | <div id="wpinv-fields-box" class="panel-body"> |
1966 | 1966 | <p id="wpi_show_vat_note"> |
1967 | - <?php echo wp_sprintf( __( 'Validate your registered %s number to exclude tax.', 'invoicing' ), $tax_label ); ?> |
|
1967 | + <?php echo wp_sprintf(__('Validate your registered %s number to exclude tax.', 'invoicing'), $tax_label); ?> |
|
1968 | 1968 | </p> |
1969 | 1969 | <div id="wpi_vat_fields" class="wpi_vat_info"> |
1970 | 1970 | <p class="wpi-cart-field wpi-col2 wpi-colf"> |
1971 | - <label for="wpinv_company" class="wpi-label"><?php _e( 'Company Name', 'invoicing' );?></label> |
|
1971 | + <label for="wpinv_company" class="wpi-label"><?php _e('Company Name', 'invoicing'); ?></label> |
|
1972 | 1972 | <?php |
1973 | - echo wpinv_html_text( array( |
|
1973 | + echo wpinv_html_text(array( |
|
1974 | 1974 | 'id' => 'wpinv_company', |
1975 | 1975 | 'name' => 'wpinv_company', |
1976 | 1976 | 'value' => $company, |
1977 | 1977 | 'class' => 'wpi-input form-control', |
1978 | - 'placeholder' => __( 'Company name', 'invoicing' ), |
|
1979 | - ) ); |
|
1978 | + 'placeholder' => __('Company name', 'invoicing'), |
|
1979 | + )); |
|
1980 | 1980 | ?> |
1981 | 1981 | </p> |
1982 | 1982 | <p class="wpi-cart-field wpi-col2 wpi-coll wpi-cart-field-vat"> |
1983 | - <label for="wpinv_vat_number" class="wpi-label"><?php echo wp_sprintf( __( '%s Number', 'invoicing' ), $tax_label );?></label> |
|
1983 | + <label for="wpinv_vat_number" class="wpi-label"><?php echo wp_sprintf(__('%s Number', 'invoicing'), $tax_label); ?></label> |
|
1984 | 1984 | <span id="wpinv_vat_number-wrap"> |
1985 | 1985 | <label for="wpinv_vat_number" class="wpinv-label"></label> |
1986 | - <input type="text" class="wpi-input form-control" placeholder="<?php echo esc_attr( wp_sprintf( __( '%s number', 'invoicing' ), $tax_label ) );?>" value="<?php esc_attr_e( $vat_number );?>" id="wpinv_vat_number" name="wpinv_vat_number"> |
|
1987 | - <span class="wpinv-vat-stat <?php echo $vat_vailidated_class;?>"><i class="fa"></i> <font><?php echo $vat_vailidated_text;?></font></span> |
|
1986 | + <input type="text" class="wpi-input form-control" placeholder="<?php echo esc_attr(wp_sprintf(__('%s number', 'invoicing'), $tax_label)); ?>" value="<?php esc_attr_e($vat_number); ?>" id="wpinv_vat_number" name="wpinv_vat_number"> |
|
1987 | + <span class="wpinv-vat-stat <?php echo $vat_vailidated_class; ?>"><i class="fa"></i> <font><?php echo $vat_vailidated_text; ?></font></span> |
|
1988 | 1988 | </span> |
1989 | 1989 | </p> |
1990 | 1990 | <p class="wpi-cart-field wpi-col wpi-colf wpi-cart-field-actions"> |
1991 | - <button class="btn btn-success btn-sm wpinv-vat-validate" type="button" id="wpinv_vat_validate" style="display:<?php echo $display_validate_btn; ?>"><?php echo wp_sprintf( __("Validate %s Number", 'invoicing'), $tax_label ); ?></button> |
|
1992 | - <button class="btn btn-danger btn-sm wpinv-vat-reset" type="button" id="wpinv_vat_reset" style="display:<?php echo $display_reset_btn; ?>"><?php echo wp_sprintf( __("Reset %s", 'invoicing'), $tax_label ); ?></button> |
|
1991 | + <button class="btn btn-success btn-sm wpinv-vat-validate" type="button" id="wpinv_vat_validate" style="display:<?php echo $display_validate_btn; ?>"><?php echo wp_sprintf(__("Validate %s Number", 'invoicing'), $tax_label); ?></button> |
|
1992 | + <button class="btn btn-danger btn-sm wpinv-vat-reset" type="button" id="wpinv_vat_reset" style="display:<?php echo $display_reset_btn; ?>"><?php echo wp_sprintf(__("Reset %s", 'invoicing'), $tax_label); ?></button> |
|
1993 | 1993 | <span class="wpi-vat-box wpi-vat-box-info"><span id="text"></span></span> |
1994 | 1994 | <span class="wpi-vat-box wpi-vat-box-error"><span id="text"></span></span> |
1995 | - <input type="hidden" name="_wpi_nonce" value="<?php echo wp_create_nonce( 'vat_validation' ) ?>" /> |
|
1995 | + <input type="hidden" name="_wpi_nonce" value="<?php echo wp_create_nonce('vat_validation') ?>" /> |
|
1996 | 1996 | </p> |
1997 | 1997 | </div> |
1998 | 1998 | </div> |
@@ -2006,32 +2006,32 @@ discard block |
||
2006 | 2006 | </span> |
2007 | 2007 | </div> |
2008 | 2008 | </div> |
2009 | - <?php if ( empty( $wpinv_options['hide_ip_address'] ) ) { |
|
2010 | - $ip_link = '<a title="' . esc_attr( __( 'View more details on map', 'invoicing' ) ) . '" target="_blank" href="' . esc_url( admin_url( 'admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $ip_address ) ) . '" class="wpi-ip-address-link">' . $ip_address . ' <i class="fa fa-external-link-square" aria-hidden="true"></i></a>'; |
|
2009 | + <?php if (empty($wpinv_options['hide_ip_address'])) { |
|
2010 | + $ip_link = '<a title="' . esc_attr(__('View more details on map', 'invoicing')) . '" target="_blank" href="' . esc_url(admin_url('admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $ip_address)) . '" class="wpi-ip-address-link">' . $ip_address . ' <i class="fa fa-external-link-square" aria-hidden="true"></i></a>'; |
|
2011 | 2011 | ?> |
2012 | 2012 | <div class="wpi-ip-info clearfix panel panel-info"> |
2013 | 2013 | <div id="wpinv-fields-box" class="panel-body"> |
2014 | - <span><?php echo wp_sprintf( __( "Your IP address is: %s", 'invoicing' ), $ip_link ); ?></span> |
|
2014 | + <span><?php echo wp_sprintf(__("Your IP address is: %s", 'invoicing'), $ip_link); ?></span> |
|
2015 | 2015 | </div> |
2016 | 2016 | </div> |
2017 | 2017 | <?php } |
2018 | 2018 | } |
2019 | 2019 | |
2020 | - public static function show_vat_notice( $invoice ) { |
|
2021 | - if ( empty( $invoice ) ) { |
|
2020 | + public static function show_vat_notice($invoice) { |
|
2021 | + if (empty($invoice)) { |
|
2022 | 2022 | return NULL; |
2023 | 2023 | } |
2024 | 2024 | |
2025 | - $label = wpinv_get_option( 'vat_invoice_notice_label' ); |
|
2026 | - $notice = wpinv_get_option( 'vat_invoice_notice' ); |
|
2027 | - if ( $label || $notice ) { |
|
2025 | + $label = wpinv_get_option('vat_invoice_notice_label'); |
|
2026 | + $notice = wpinv_get_option('vat_invoice_notice'); |
|
2027 | + if ($label || $notice) { |
|
2028 | 2028 | ?> |
2029 | 2029 | <div class="row wpinv-vat-notice"> |
2030 | 2030 | <div class="col-sm-12"> |
2031 | - <?php if ( $label ) { ?> |
|
2032 | - <strong><?php _e( $label, 'invoicing' ); ?></strong> |
|
2033 | - <?php } if ( $notice ) { ?> |
|
2034 | - <?php echo wpautop( wptexturize( __( $notice, 'invoicing' ) ) ) ?> |
|
2031 | + <?php if ($label) { ?> |
|
2032 | + <strong><?php _e($label, 'invoicing'); ?></strong> |
|
2033 | + <?php } if ($notice) { ?> |
|
2034 | + <?php echo wpautop(wptexturize(__($notice, 'invoicing'))) ?> |
|
2035 | 2035 | <?php } ?> |
2036 | 2036 | </div> |
2037 | 2037 | </div> |