@@ -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,132 +17,132 @@ 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 | - $suffix = '';//defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
90 | + $suffix = ''; //defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
91 | 91 | |
92 | - wp_register_script( 'wpinv-vat-validation-script', WPINV_PLUGIN_URL . 'assets/js/jsvat' . $suffix . '.js', array( 'jquery' ), WPINV_VERSION ); |
|
93 | - wp_register_script( 'wpinv-vat-script', WPINV_PLUGIN_URL . 'assets/js/euvat' . $suffix . '.js', array( 'jquery' ), WPINV_VERSION ); |
|
92 | + wp_register_script('wpinv-vat-validation-script', WPINV_PLUGIN_URL . 'assets/js/jsvat' . $suffix . '.js', array('jquery'), WPINV_VERSION); |
|
93 | + wp_register_script('wpinv-vat-script', WPINV_PLUGIN_URL . 'assets/js/euvat' . $suffix . '.js', array('jquery'), WPINV_VERSION); |
|
94 | 94 | |
95 | - $vat_name = self::get_vat_name(); |
|
95 | + $vat_name = self::get_vat_name(); |
|
96 | 96 | |
97 | 97 | $vars = array(); |
98 | 98 | $vars['UseTaxes'] = wpinv_use_taxes(); |
99 | 99 | $vars['EUStates'] = self::get_eu_states(); |
100 | - $vars['NoRateSet'] = __( 'You have not set a rate. Do you want to continue?', 'invoicing' ); |
|
101 | - $vars['EmptyCompany'] = __( 'Please enter your registered company name!', 'invoicing' ); |
|
102 | - $vars['EmptyVAT'] = wp_sprintf( __( 'Please enter your %s number!', 'invoicing' ), $vat_name ); |
|
103 | - $vars['TotalsRefreshed'] = wp_sprintf( __( 'The invoice totals will be refreshed to update the %s.', 'invoicing' ), $vat_name ); |
|
104 | - $vars['ErrValidateVAT'] = wp_sprintf( __( 'Fail to validate the %s number!', 'invoicing' ), $vat_name ); |
|
105 | - $vars['ErrResetVAT'] = wp_sprintf( __( 'Fail to reset the %s number!', 'invoicing' ), $vat_name ); |
|
106 | - $vars['ErrInvalidVat'] = wp_sprintf( __( 'The %s number supplied does not have a valid format!', 'invoicing' ), $vat_name ); |
|
107 | - $vars['ErrInvalidResponse'] = __( 'An invalid response has been received from the server!', 'invoicing' ); |
|
100 | + $vars['NoRateSet'] = __('You have not set a rate. Do you want to continue?', 'invoicing'); |
|
101 | + $vars['EmptyCompany'] = __('Please enter your registered company name!', 'invoicing'); |
|
102 | + $vars['EmptyVAT'] = wp_sprintf(__('Please enter your %s number!', 'invoicing'), $vat_name); |
|
103 | + $vars['TotalsRefreshed'] = wp_sprintf(__('The invoice totals will be refreshed to update the %s.', 'invoicing'), $vat_name); |
|
104 | + $vars['ErrValidateVAT'] = wp_sprintf(__('Fail to validate the %s number!', 'invoicing'), $vat_name); |
|
105 | + $vars['ErrResetVAT'] = wp_sprintf(__('Fail to reset the %s number!', 'invoicing'), $vat_name); |
|
106 | + $vars['ErrInvalidVat'] = wp_sprintf(__('The %s number supplied does not have a valid format!', 'invoicing'), $vat_name); |
|
107 | + $vars['ErrInvalidResponse'] = __('An invalid response has been received from the server!', 'invoicing'); |
|
108 | 108 | $vars['ApplyVATRules'] = $vars['UseTaxes'] ? self::allow_vat_rules() : false; |
109 | 109 | $vars['HideVatFields'] = $vars['ApplyVATRules'] ? self::hide_vat_fields() : true; |
110 | - $vars['ErrResponse'] = __( 'The request response is invalid!', 'invoicing' ); |
|
111 | - $vars['ErrRateResponse'] = __( 'The get rate request response is invalid', 'invoicing' ); |
|
112 | - $vars['PageRefresh'] = __( 'The page will be refreshed in 10 seconds to show the new options.', 'invoicing' ); |
|
113 | - $vars['RequestResponseNotValidJSON'] = __( 'The get rate request response is not valid JSON', 'invoicing' ); |
|
114 | - $vars['GetRateRequestFailed'] = __( 'The get rate request failed: ', 'invoicing' ); |
|
115 | - $vars['NoRateInformationInResponse'] = __( 'The get rate request response does not contain any rate information', 'invoicing' ); |
|
116 | - $vars['RatesUpdated'] = __( 'The rates have been updated. Press the save button to record these new rates.', 'invoicing' ); |
|
117 | - $vars['IPAddressInformation'] = __( 'IP Address Information', 'invoicing' ); |
|
118 | - $vars['VatValidating'] = wp_sprintf( __( 'Validating %s number...', 'invoicing' ), $vat_name ); |
|
119 | - $vars['VatReseting'] = __( 'Reseting...', 'invoicing' ); |
|
120 | - $vars['VatValidated'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name ); |
|
121 | - $vars['VatNotValidated'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name ); |
|
122 | - $vars['ConfirmDeleteClass'] = __( 'Are you sure you wish to delete this rates class?', 'invoicing' ); |
|
110 | + $vars['ErrResponse'] = __('The request response is invalid!', 'invoicing'); |
|
111 | + $vars['ErrRateResponse'] = __('The get rate request response is invalid', 'invoicing'); |
|
112 | + $vars['PageRefresh'] = __('The page will be refreshed in 10 seconds to show the new options.', 'invoicing'); |
|
113 | + $vars['RequestResponseNotValidJSON'] = __('The get rate request response is not valid JSON', 'invoicing'); |
|
114 | + $vars['GetRateRequestFailed'] = __('The get rate request failed: ', 'invoicing'); |
|
115 | + $vars['NoRateInformationInResponse'] = __('The get rate request response does not contain any rate information', 'invoicing'); |
|
116 | + $vars['RatesUpdated'] = __('The rates have been updated. Press the save button to record these new rates.', 'invoicing'); |
|
117 | + $vars['IPAddressInformation'] = __('IP Address Information', 'invoicing'); |
|
118 | + $vars['VatValidating'] = wp_sprintf(__('Validating %s number...', 'invoicing'), $vat_name); |
|
119 | + $vars['VatReseting'] = __('Reseting...', 'invoicing'); |
|
120 | + $vars['VatValidated'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name); |
|
121 | + $vars['VatNotValidated'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name); |
|
122 | + $vars['ConfirmDeleteClass'] = __('Are you sure you wish to delete this rates class?', 'invoicing'); |
|
123 | 123 | $vars['isFront'] = is_admin() ? false : true; |
124 | - $vars['checkoutNonce'] = wp_create_nonce( 'wpinv_checkout_nonce' ); |
|
124 | + $vars['checkoutNonce'] = wp_create_nonce('wpinv_checkout_nonce'); |
|
125 | 125 | $vars['baseCountry'] = wpinv_get_default_country(); |
126 | - $vars['disableVATSameCountry'] = ( self::same_country_rule() == 'no' ? true : false ); |
|
127 | - $vars['disableVATSimpleCheck'] = wpinv_get_option( 'vat_offline_check' ) ? true : false; |
|
126 | + $vars['disableVATSameCountry'] = (self::same_country_rule() == 'no' ? true : false); |
|
127 | + $vars['disableVATSimpleCheck'] = wpinv_get_option('vat_offline_check') ? true : false; |
|
128 | 128 | |
129 | - wp_enqueue_script( 'wpinv-vat-validation-script' ); |
|
130 | - wp_enqueue_script( 'wpinv-vat-script' ); |
|
131 | - wp_localize_script( 'wpinv-vat-script', 'WPInv_VAT_Vars', $vars ); |
|
129 | + wp_enqueue_script('wpinv-vat-validation-script'); |
|
130 | + wp_enqueue_script('wpinv-vat-script'); |
|
131 | + wp_localize_script('wpinv-vat-script', 'WPInv_VAT_Vars', $vars); |
|
132 | 132 | } |
133 | 133 | |
134 | 134 | public static function enqueue_admin_scripts() { |
135 | - if( isset( $_GET['page'] ) && 'wpinv-settings' == $_GET['page'] ) { |
|
135 | + if (isset($_GET['page']) && 'wpinv-settings' == $_GET['page']) { |
|
136 | 136 | self::enqueue_vat_scripts(); |
137 | 137 | } |
138 | 138 | } |
139 | 139 | |
140 | - public static function section_vat_settings( $sections ) { |
|
141 | - if ( !empty( $sections ) ) { |
|
142 | - $sections['vat'] = __( 'EU VAT Settings', 'invoicing' ); |
|
140 | + public static function section_vat_settings($sections) { |
|
141 | + if (!empty($sections)) { |
|
142 | + $sections['vat'] = __('EU VAT Settings', 'invoicing'); |
|
143 | 143 | |
144 | - if ( self::allow_vat_classes() ) { |
|
145 | - $sections['vat_rates'] = __( 'EU VAT Rates', 'invoicing' ); |
|
144 | + if (self::allow_vat_classes()) { |
|
145 | + $sections['vat_rates'] = __('EU VAT Rates', 'invoicing'); |
|
146 | 146 | } |
147 | 147 | } |
148 | 148 | return $sections; |
@@ -151,52 +151,52 @@ discard block |
||
151 | 151 | public static function vat_rates_settings() { |
152 | 152 | $vat_classes = self::get_rate_classes(); |
153 | 153 | $vat_rates = array(); |
154 | - $vat_class = isset( $_REQUEST['wpi_sub'] ) && $_REQUEST['wpi_sub'] !== '' && isset( $vat_classes[$_REQUEST['wpi_sub']] )? sanitize_text_field( $_REQUEST['wpi_sub'] ) : '_new'; |
|
155 | - $current_url = remove_query_arg( 'wpi_sub' ); |
|
154 | + $vat_class = isset($_REQUEST['wpi_sub']) && $_REQUEST['wpi_sub'] !== '' && isset($vat_classes[$_REQUEST['wpi_sub']]) ? sanitize_text_field($_REQUEST['wpi_sub']) : '_new'; |
|
155 | + $current_url = remove_query_arg('wpi_sub'); |
|
156 | 156 | |
157 | 157 | $vat_rates['vat_rates_header'] = array( |
158 | 158 | 'id' => 'vat_rates_header', |
159 | - 'name' => '<h3>' . __( 'Manage VAT Rates', 'invoicing' ) . '</h3>', |
|
159 | + 'name' => '<h3>' . __('Manage VAT Rates', 'invoicing') . '</h3>', |
|
160 | 160 | 'desc' => '', |
161 | 161 | 'type' => 'header', |
162 | 162 | 'size' => 'regular' |
163 | 163 | ); |
164 | 164 | $vat_rates['vat_rates_class'] = array( |
165 | 165 | 'id' => 'vat_rates_class', |
166 | - 'name' => __( 'Edit VAT Rates', 'invoicing' ), |
|
167 | - 'desc' => __( 'The standard rate will apply where no explicit rate is provided.', 'invoicing' ), |
|
166 | + 'name' => __('Edit VAT Rates', 'invoicing'), |
|
167 | + 'desc' => __('The standard rate will apply where no explicit rate is provided.', 'invoicing'), |
|
168 | 168 | 'type' => 'select', |
169 | - 'options' => array_merge( $vat_classes, array( '_new' => __( 'Add New Rate Class', 'invoicing' ) ) ), |
|
169 | + 'options' => array_merge($vat_classes, array('_new' => __('Add New Rate Class', 'invoicing'))), |
|
170 | 170 | 'chosen' => true, |
171 | - 'placeholder' => __( 'Select a VAT Rate', 'invoicing' ), |
|
171 | + 'placeholder' => __('Select a VAT Rate', 'invoicing'), |
|
172 | 172 | 'selected' => $vat_class, |
173 | 173 | 'onchange' => 'document.location.href="' . $current_url . '&wpi_sub=" + this.value;', |
174 | 174 | ); |
175 | 175 | |
176 | - if ( $vat_class != '_standard' && $vat_class != '_new' ) { |
|
176 | + if ($vat_class != '_standard' && $vat_class != '_new') { |
|
177 | 177 | $vat_rates['vat_rate_delete'] = array( |
178 | 178 | 'id' => 'vat_rate_delete', |
179 | 179 | 'type' => 'vat_rate_delete', |
180 | 180 | ); |
181 | 181 | } |
182 | 182 | |
183 | - if ( $vat_class == '_new' ) { |
|
183 | + if ($vat_class == '_new') { |
|
184 | 184 | $vat_rates['vat_rates_settings'] = array( |
185 | 185 | 'id' => 'vat_rates_settings', |
186 | - 'name' => '<h3>' . __( 'Add New Rate Class', 'invoicing' ) . '</h3>', |
|
186 | + 'name' => '<h3>' . __('Add New Rate Class', 'invoicing') . '</h3>', |
|
187 | 187 | 'type' => 'header', |
188 | 188 | ); |
189 | 189 | $vat_rates['vat_rate_name'] = array( |
190 | 190 | 'id' => 'vat_rate_name', |
191 | - 'name' => __( 'Name', 'invoicing' ), |
|
192 | - 'desc' => __( 'A short name for the new VAT Rate class', 'invoicing' ), |
|
191 | + 'name' => __('Name', 'invoicing'), |
|
192 | + 'desc' => __('A short name for the new VAT Rate class', 'invoicing'), |
|
193 | 193 | 'type' => 'text', |
194 | 194 | 'size' => 'regular', |
195 | 195 | ); |
196 | 196 | $vat_rates['vat_rate_desc'] = array( |
197 | 197 | 'id' => 'vat_rate_desc', |
198 | - 'name' => __( 'Description', 'invoicing' ), |
|
199 | - 'desc' => __( 'Manage VAT Rate class', 'invoicing' ), |
|
198 | + 'name' => __('Description', 'invoicing'), |
|
199 | + 'desc' => __('Manage VAT Rate class', 'invoicing'), |
|
200 | 200 | 'type' => 'text', |
201 | 201 | 'size' => 'regular', |
202 | 202 | ); |
@@ -208,7 +208,7 @@ discard block |
||
208 | 208 | $vat_rates['vat_rates'] = array( |
209 | 209 | 'id' => 'vat_rates', |
210 | 210 | 'name' => '<h3>' . $vat_classes[$vat_class] . '</h3>', |
211 | - 'desc' => self::get_class_desc( $vat_class ), |
|
211 | + 'desc' => self::get_class_desc($vat_class), |
|
212 | 212 | 'type' => 'vat_rates', |
213 | 213 | ); |
214 | 214 | } |
@@ -216,12 +216,12 @@ discard block |
||
216 | 216 | return $vat_rates; |
217 | 217 | } |
218 | 218 | |
219 | - public static function vat_settings( $settings ) { |
|
220 | - if ( !empty( $settings ) ) { |
|
219 | + public static function vat_settings($settings) { |
|
220 | + if (!empty($settings)) { |
|
221 | 221 | $vat_settings = array(); |
222 | 222 | $vat_settings['vat_company_title'] = array( |
223 | 223 | 'id' => 'vat_company_title', |
224 | - 'name' => '<h3>' . __( 'Your Company Details', 'invoicing' ) . '</h3>', |
|
224 | + 'name' => '<h3>' . __('Your Company Details', 'invoicing') . '</h3>', |
|
225 | 225 | 'desc' => '', |
226 | 226 | 'type' => 'header', |
227 | 227 | 'size' => 'regular' |
@@ -229,22 +229,22 @@ discard block |
||
229 | 229 | |
230 | 230 | $vat_settings['vat_company_name'] = array( |
231 | 231 | 'id' => 'vat_company_name', |
232 | - 'name' => __( 'Your Company Name', 'invoicing' ), |
|
233 | - '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>' ), |
|
232 | + 'name' => __('Your Company Name', 'invoicing'), |
|
233 | + '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>'), |
|
234 | 234 | 'type' => 'text', |
235 | 235 | 'size' => 'regular', |
236 | 236 | ); |
237 | 237 | |
238 | 238 | $vat_settings['vat_number'] = array( |
239 | 239 | 'id' => 'vat_number', |
240 | - 'name' => __( 'Your VAT Number', 'invoicing' ), |
|
240 | + 'name' => __('Your VAT Number', 'invoicing'), |
|
241 | 241 | 'type' => 'vat_number', |
242 | 242 | 'size' => 'regular', |
243 | 243 | ); |
244 | 244 | |
245 | 245 | $vat_settings['vat_settings_title'] = array( |
246 | 246 | 'id' => 'vat_settings_title', |
247 | - 'name' => '<h3>' . __( 'Apply VAT Settings', 'invoicing' ) . '</h3>', |
|
247 | + 'name' => '<h3>' . __('Apply VAT Settings', 'invoicing') . '</h3>', |
|
248 | 248 | 'desc' => '', |
249 | 249 | 'type' => 'header', |
250 | 250 | 'size' => 'regular' |
@@ -252,8 +252,8 @@ discard block |
||
252 | 252 | |
253 | 253 | $vat_settings['apply_vat_rules'] = array( |
254 | 254 | 'id' => 'apply_vat_rules', |
255 | - 'name' => __( 'Enable VAT rules', 'invoicing' ), |
|
256 | - '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>', |
|
255 | + 'name' => __('Enable VAT rules', 'invoicing'), |
|
256 | + '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>', |
|
257 | 257 | 'type' => 'checkbox', |
258 | 258 | 'std' => '1' |
259 | 259 | ); |
@@ -269,8 +269,8 @@ discard block |
||
269 | 269 | |
270 | 270 | $vat_settings['vat_prevent_b2c_purchase'] = array( |
271 | 271 | 'id' => 'vat_prevent_b2c_purchase', |
272 | - 'name' => __( 'Prevent EU B2C sales', 'invoicing' ), |
|
273 | - 'desc' => __( 'Enable this option if you are not registered for VAT in the EU.', 'invoicing' ), |
|
272 | + 'name' => __('Prevent EU B2C sales', 'invoicing'), |
|
273 | + 'desc' => __('Enable this option if you are not registered for VAT in the EU.', 'invoicing'), |
|
274 | 274 | 'type' => 'checkbox' |
275 | 275 | ); |
276 | 276 | |
@@ -278,21 +278,21 @@ discard block |
||
278 | 278 | |
279 | 279 | $vat_settings['vat_same_country_rule'] = array( |
280 | 280 | 'id' => 'vat_same_country_rule', |
281 | - 'name' => __( 'Same country rule', 'invoicing' ), |
|
282 | - 'desc' => __( 'Select how you want handle VAT charge if sales are in the same country as the base country.', 'invoicing' ), |
|
281 | + 'name' => __('Same country rule', 'invoicing'), |
|
282 | + 'desc' => __('Select how you want handle VAT charge if sales are in the same country as the base country.', 'invoicing'), |
|
283 | 283 | 'type' => 'select', |
284 | 284 | 'options' => array( |
285 | - '' => __( 'Normal', 'invoicing' ), |
|
286 | - 'no' => __( 'No VAT', 'invoicing' ), |
|
287 | - 'always' => __( 'Always apply VAT', 'invoicing' ), |
|
285 | + '' => __('Normal', 'invoicing'), |
|
286 | + 'no' => __('No VAT', 'invoicing'), |
|
287 | + 'always' => __('Always apply VAT', 'invoicing'), |
|
288 | 288 | ), |
289 | - 'placeholder' => __( 'Select a option', 'invoicing' ), |
|
289 | + 'placeholder' => __('Select a option', 'invoicing'), |
|
290 | 290 | 'std' => '' |
291 | 291 | ); |
292 | 292 | |
293 | 293 | $vat_settings['vat_checkout_title'] = array( |
294 | 294 | 'id' => 'vat_checkout_title', |
295 | - 'name' => '<h3>' . __( 'Checkout Fields', 'invoicing' ) . '</h3>', |
|
295 | + 'name' => '<h3>' . __('Checkout Fields', 'invoicing') . '</h3>', |
|
296 | 296 | 'desc' => '', |
297 | 297 | 'type' => 'header', |
298 | 298 | 'size' => 'regular' |
@@ -300,14 +300,14 @@ discard block |
||
300 | 300 | |
301 | 301 | $vat_settings['vat_disable_fields'] = array( |
302 | 302 | 'id' => 'vat_disable_fields', |
303 | - 'name' => __( 'Disable VAT fields', 'invoicing' ), |
|
304 | - '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>', |
|
303 | + 'name' => __('Disable VAT fields', 'invoicing'), |
|
304 | + '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>', |
|
305 | 305 | 'type' => 'checkbox' |
306 | 306 | ); |
307 | 307 | |
308 | 308 | $vat_settings['vat_ip_lookup'] = array( |
309 | 309 | 'id' => 'vat_ip_lookup', |
310 | - 'name' => __( 'IP Country lookup', 'invoicing' ), |
|
310 | + 'name' => __('IP Country lookup', 'invoicing'), |
|
311 | 311 | 'type' => 'vat_ip_lookup', |
312 | 312 | 'size' => 'regular', |
313 | 313 | 'std' => 'default' |
@@ -315,21 +315,21 @@ discard block |
||
315 | 315 | |
316 | 316 | $vat_settings['hide_ip_address'] = array( |
317 | 317 | 'id' => 'hide_ip_address', |
318 | - 'name' => __( 'Hide IP info at checkout', 'invoicing' ), |
|
319 | - 'desc' => __( 'Hide the user IP info at checkout.', 'invoicing' ), |
|
318 | + 'name' => __('Hide IP info at checkout', 'invoicing'), |
|
319 | + 'desc' => __('Hide the user IP info at checkout.', 'invoicing'), |
|
320 | 320 | 'type' => 'checkbox' |
321 | 321 | ); |
322 | 322 | |
323 | 323 | $vat_settings['vat_ip_country_default'] = array( |
324 | 324 | 'id' => 'vat_ip_country_default', |
325 | - 'name' => __( 'Enable IP Country as Default', 'invoicing' ), |
|
326 | - 'desc' => __( 'Show the country of the users IP as the default country, otherwise the site default country will be used.', 'invoicing' ), |
|
325 | + 'name' => __('Enable IP Country as Default', 'invoicing'), |
|
326 | + 'desc' => __('Show the country of the users IP as the default country, otherwise the site default country will be used.', 'invoicing'), |
|
327 | 327 | 'type' => 'checkbox' |
328 | 328 | ); |
329 | 329 | |
330 | 330 | $vat_settings['vies_validation_title'] = array( |
331 | 331 | 'id' => 'vies_validation_title', |
332 | - 'name' => '<h3>' . __( 'VIES Validation', 'invoicing' ) . '</h3>', |
|
332 | + 'name' => '<h3>' . __('VIES Validation', 'invoicing') . '</h3>', |
|
333 | 333 | 'desc' => '', |
334 | 334 | 'type' => 'header', |
335 | 335 | 'size' => 'regular' |
@@ -337,37 +337,37 @@ discard block |
||
337 | 337 | |
338 | 338 | $vat_settings['vat_vies_check'] = array( |
339 | 339 | 'id' => 'vat_vies_check', |
340 | - 'name' => __( 'Disable VIES VAT ID check', 'invoicing' ), |
|
341 | - '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>' ), |
|
340 | + 'name' => __('Disable VIES VAT ID check', 'invoicing'), |
|
341 | + '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>'), |
|
342 | 342 | 'type' => 'checkbox' |
343 | 343 | ); |
344 | 344 | |
345 | 345 | $vat_settings['vat_disable_company_name_check'] = array( |
346 | 346 | 'id' => 'vat_disable_company_name_check', |
347 | - 'name' => __( 'Disable VIES name check', 'invoicing' ), |
|
348 | - '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>' ), |
|
347 | + 'name' => __('Disable VIES name check', 'invoicing'), |
|
348 | + '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>'), |
|
349 | 349 | 'type' => 'checkbox' |
350 | 350 | ); |
351 | 351 | |
352 | 352 | $vat_settings['vat_offline_check'] = array( |
353 | 353 | 'id' => 'vat_offline_check', |
354 | - 'name' => __( 'Disable basic checks', 'invoicing' ), |
|
355 | - 'desc' => __( 'This will disable basic JS correct format validation attempts, it is very rare this should need to be disabled.', 'invoicing' ), |
|
354 | + 'name' => __('Disable basic checks', 'invoicing'), |
|
355 | + 'desc' => __('This will disable basic JS correct format validation attempts, it is very rare this should need to be disabled.', 'invoicing'), |
|
356 | 356 | 'type' => 'checkbox' |
357 | 357 | ); |
358 | 358 | |
359 | 359 | |
360 | 360 | $settings['vat'] = $vat_settings; |
361 | 361 | |
362 | - if ( self::allow_vat_classes() ) { |
|
362 | + if (self::allow_vat_classes()) { |
|
363 | 363 | $settings['vat_rates'] = self::vat_rates_settings(); |
364 | 364 | } |
365 | 365 | |
366 | 366 | $eu_fallback_rate = array( |
367 | 367 | 'id' => 'eu_fallback_rate', |
368 | - 'name' => '<h3>' . __( 'VAT rate for EU member states', 'invoicing' ) . '</h3>', |
|
368 | + 'name' => '<h3>' . __('VAT rate for EU member states', 'invoicing') . '</h3>', |
|
369 | 369 | 'type' => 'eu_fallback_rate', |
370 | - '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' ), |
|
370 | + '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'), |
|
371 | 371 | 'std' => '20', |
372 | 372 | 'size' => 'small' |
373 | 373 | ); |
@@ -383,11 +383,11 @@ discard block |
||
383 | 383 | $database_url = 'http' . (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] === 'on' ? 's' : '') . '://geolite.maxmind.com/download/geoip/database/'; |
384 | 384 | $destination_dir = $upload_dir['basedir'] . '/invoicing'; |
385 | 385 | |
386 | - if ( !is_dir( $destination_dir ) ) { |
|
387 | - mkdir( $destination_dir ); |
|
386 | + if (!is_dir($destination_dir)) { |
|
387 | + mkdir($destination_dir); |
|
388 | 388 | } |
389 | 389 | |
390 | - $database_files = array( |
|
390 | + $database_files = array( |
|
391 | 391 | 'country' => array( |
392 | 392 | 'source' => $database_url . 'GeoLite2-Country.mmdb.gz', |
393 | 393 | 'destination' => $destination_dir . '/GeoLite2-Country.mmdb', |
@@ -398,57 +398,57 @@ discard block |
||
398 | 398 | ) |
399 | 399 | ); |
400 | 400 | |
401 | - foreach( $database_files as $database => $files ) { |
|
402 | - $result = self::geoip2_download_file( $files['source'], $files['destination'] ); |
|
401 | + foreach ($database_files as $database => $files) { |
|
402 | + $result = self::geoip2_download_file($files['source'], $files['destination']); |
|
403 | 403 | |
404 | - if ( empty( $result['success'] ) ) { |
|
404 | + if (empty($result['success'])) { |
|
405 | 405 | echo $result['message']; |
406 | 406 | exit; |
407 | 407 | } |
408 | 408 | |
409 | - wpinv_update_option( 'wpinv_geoip2_date_updated', current_time( 'timestamp' ) ); |
|
410 | - echo sprintf(__( 'GeoIp2 %s database updated successfully.', 'invoicing' ), $database ) . ' '; |
|
409 | + wpinv_update_option('wpinv_geoip2_date_updated', current_time('timestamp')); |
|
410 | + echo sprintf(__('GeoIp2 %s database updated successfully.', 'invoicing'), $database) . ' '; |
|
411 | 411 | } |
412 | 412 | |
413 | 413 | exit; |
414 | 414 | } |
415 | 415 | |
416 | - public static function geoip2_download_file( $source_url, $destination_file ) { |
|
416 | + public static function geoip2_download_file($source_url, $destination_file) { |
|
417 | 417 | $success = false; |
418 | 418 | $message = ''; |
419 | 419 | |
420 | - if ( !function_exists( 'download_url' ) ) { |
|
421 | - require_once( ABSPATH . 'wp-admin/includes/file.php' ); |
|
420 | + if (!function_exists('download_url')) { |
|
421 | + require_once(ABSPATH . 'wp-admin/includes/file.php'); |
|
422 | 422 | } |
423 | 423 | |
424 | - $temp_file = download_url( $source_url ); |
|
424 | + $temp_file = download_url($source_url); |
|
425 | 425 | |
426 | - if ( is_wp_error( $temp_file ) ) { |
|
427 | - $message = sprintf( __( 'Error while downloading GeoIp2 database( %s ): %s', 'invoicing' ), $source_url, $temp_file->get_error_message() ); |
|
426 | + if (is_wp_error($temp_file)) { |
|
427 | + $message = sprintf(__('Error while downloading GeoIp2 database( %s ): %s', 'invoicing'), $source_url, $temp_file->get_error_message()); |
|
428 | 428 | } else { |
429 | - $handle = gzopen( $temp_file, 'rb' ); |
|
429 | + $handle = gzopen($temp_file, 'rb'); |
|
430 | 430 | |
431 | - if ( $handle ) { |
|
432 | - $fopen = fopen( $destination_file, 'wb' ); |
|
433 | - if ( $fopen ) { |
|
434 | - while ( ( $data = gzread( $handle, 4096 ) ) != false ) { |
|
435 | - fwrite( $fopen, $data ); |
|
431 | + if ($handle) { |
|
432 | + $fopen = fopen($destination_file, 'wb'); |
|
433 | + if ($fopen) { |
|
434 | + while (($data = gzread($handle, 4096)) != false) { |
|
435 | + fwrite($fopen, $data); |
|
436 | 436 | } |
437 | 437 | |
438 | - gzclose( $handle ); |
|
439 | - fclose( $fopen ); |
|
438 | + gzclose($handle); |
|
439 | + fclose($fopen); |
|
440 | 440 | |
441 | 441 | $success = true; |
442 | 442 | } else { |
443 | - gzclose( $handle ); |
|
444 | - $message = sprintf( __( 'Error could not open destination GeoIp2 database file for writing: %s', 'invoicing' ), $destination_file ); |
|
443 | + gzclose($handle); |
|
444 | + $message = sprintf(__('Error could not open destination GeoIp2 database file for writing: %s', 'invoicing'), $destination_file); |
|
445 | 445 | } |
446 | 446 | } else { |
447 | - $message = sprintf( __( 'Error could not open GeoIp2 database file for reading: %s', 'invoicing' ), $temp_file ); |
|
447 | + $message = sprintf(__('Error could not open GeoIp2 database file for reading: %s', 'invoicing'), $temp_file); |
|
448 | 448 | } |
449 | 449 | |
450 | - if ( file_exists( $temp_file ) ) { |
|
451 | - unlink( $temp_file ); |
|
450 | + if (file_exists($temp_file)) { |
|
451 | + unlink($temp_file); |
|
452 | 452 | } |
453 | 453 | } |
454 | 454 | |
@@ -460,11 +460,11 @@ discard block |
||
460 | 460 | } |
461 | 461 | |
462 | 462 | public static function load_geoip2() { |
463 | - if ( defined( 'WPINV_GEOIP2_LODDED' ) ) { |
|
463 | + if (defined('WPINV_GEOIP2_LODDED')) { |
|
464 | 464 | return; |
465 | 465 | } |
466 | 466 | |
467 | - if ( !class_exists( '\MaxMind\Db\Reader' ) ) { |
|
467 | + if (!class_exists('\MaxMind\Db\Reader')) { |
|
468 | 468 | $maxmind_db_files = array( |
469 | 469 | 'Reader/Decoder.php', |
470 | 470 | 'Reader/InvalidDatabaseException.php', |
@@ -473,12 +473,12 @@ discard block |
||
473 | 473 | 'Reader.php', |
474 | 474 | ); |
475 | 475 | |
476 | - foreach ( $maxmind_db_files as $key => $file ) { |
|
477 | - require_once( WPINV_PLUGIN_DIR . 'includes/libraries/MaxMind/Db/' . $file ); |
|
476 | + foreach ($maxmind_db_files as $key => $file) { |
|
477 | + require_once(WPINV_PLUGIN_DIR . 'includes/libraries/MaxMind/Db/' . $file); |
|
478 | 478 | } |
479 | 479 | } |
480 | 480 | |
481 | - if ( !class_exists( '\GeoIp2\Database\Reader' ) ) { |
|
481 | + if (!class_exists('\GeoIp2\Database\Reader')) { |
|
482 | 482 | $geoip2_files = array( |
483 | 483 | 'ProviderInterface.php', |
484 | 484 | 'Compat/JsonSerializable.php', |
@@ -512,23 +512,23 @@ discard block |
||
512 | 512 | 'WebService/Client.php', |
513 | 513 | ); |
514 | 514 | |
515 | - foreach ( $geoip2_files as $key => $file ) { |
|
516 | - require_once( WPINV_PLUGIN_DIR . 'includes/libraries/GeoIp2/' . $file ); |
|
515 | + foreach ($geoip2_files as $key => $file) { |
|
516 | + require_once(WPINV_PLUGIN_DIR . 'includes/libraries/GeoIp2/' . $file); |
|
517 | 517 | } |
518 | 518 | } |
519 | 519 | |
520 | - define( 'WPINV_GEOIP2_LODDED', true ); |
|
520 | + define('WPINV_GEOIP2_LODDED', true); |
|
521 | 521 | } |
522 | 522 | |
523 | 523 | public static function geoip2_country_dbfile() { |
524 | 524 | $upload_dir = wp_upload_dir(); |
525 | 525 | |
526 | - if ( !isset( $upload_dir['basedir'] ) ) { |
|
526 | + if (!isset($upload_dir['basedir'])) { |
|
527 | 527 | return false; |
528 | 528 | } |
529 | 529 | |
530 | 530 | $filename = $upload_dir['basedir'] . '/invoicing/GeoLite2-Country.mmdb'; |
531 | - if ( !file_exists( $filename ) ) { |
|
531 | + if (!file_exists($filename)) { |
|
532 | 532 | return false; |
533 | 533 | } |
534 | 534 | |
@@ -538,12 +538,12 @@ discard block |
||
538 | 538 | public static function geoip2_city_dbfile() { |
539 | 539 | $upload_dir = wp_upload_dir(); |
540 | 540 | |
541 | - if ( !isset( $upload_dir['basedir'] ) ) { |
|
541 | + if (!isset($upload_dir['basedir'])) { |
|
542 | 542 | return false; |
543 | 543 | } |
544 | 544 | |
545 | 545 | $filename = $upload_dir['basedir'] . '/invoicing/GeoLite2-City.mmdb'; |
546 | - if ( !file_exists( $filename ) ) { |
|
546 | + if (!file_exists($filename)) { |
|
547 | 547 | return false; |
548 | 548 | } |
549 | 549 | |
@@ -554,10 +554,10 @@ discard block |
||
554 | 554 | try { |
555 | 555 | self::load_geoip2(); |
556 | 556 | |
557 | - if ( $filename = self::geoip2_country_dbfile() ) { |
|
558 | - return new \GeoIp2\Database\Reader( $filename ); |
|
557 | + if ($filename = self::geoip2_country_dbfile()) { |
|
558 | + return new \GeoIp2\Database\Reader($filename); |
|
559 | 559 | } |
560 | - } catch( Exception $e ) { |
|
560 | + } catch (Exception $e) { |
|
561 | 561 | return false; |
562 | 562 | } |
563 | 563 | |
@@ -568,173 +568,173 @@ discard block |
||
568 | 568 | try { |
569 | 569 | self::load_geoip2(); |
570 | 570 | |
571 | - if ( $filename = self::geoip2_city_dbfile() ) { |
|
572 | - return new \GeoIp2\Database\Reader( $filename ); |
|
571 | + if ($filename = self::geoip2_city_dbfile()) { |
|
572 | + return new \GeoIp2\Database\Reader($filename); |
|
573 | 573 | } |
574 | - } catch( Exception $e ) { |
|
574 | + } catch (Exception $e) { |
|
575 | 575 | return false; |
576 | 576 | } |
577 | 577 | |
578 | 578 | return false; |
579 | 579 | } |
580 | 580 | |
581 | - public static function geoip2_country_record( $ip_address ) { |
|
581 | + public static function geoip2_country_record($ip_address) { |
|
582 | 582 | try { |
583 | 583 | $reader = self::geoip2_country_reader(); |
584 | 584 | |
585 | - if ( $reader ) { |
|
586 | - $record = $reader->country( $ip_address ); |
|
585 | + if ($reader) { |
|
586 | + $record = $reader->country($ip_address); |
|
587 | 587 | |
588 | - if ( !empty( $record->country->isoCode ) ) { |
|
588 | + if (!empty($record->country->isoCode)) { |
|
589 | 589 | return $record; |
590 | 590 | } |
591 | 591 | } |
592 | - } catch(\InvalidArgumentException $e) { |
|
593 | - wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' ); |
|
592 | + } catch (\InvalidArgumentException $e) { |
|
593 | + wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )'); |
|
594 | 594 | |
595 | 595 | return false; |
596 | - } catch(\GeoIp2\Exception\AddressNotFoundException $e) { |
|
597 | - wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' ); |
|
596 | + } catch (\GeoIp2\Exception\AddressNotFoundException $e) { |
|
597 | + wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )'); |
|
598 | 598 | |
599 | 599 | return false; |
600 | - } catch( Exception $e ) { |
|
600 | + } catch (Exception $e) { |
|
601 | 601 | return false; |
602 | 602 | } |
603 | 603 | |
604 | 604 | return false; |
605 | 605 | } |
606 | 606 | |
607 | - public static function geoip2_city_record( $ip_address ) { |
|
607 | + public static function geoip2_city_record($ip_address) { |
|
608 | 608 | try { |
609 | 609 | $reader = self::geoip2_city_reader(); |
610 | 610 | |
611 | - if ( $reader ) { |
|
612 | - $record = $reader->city( $ip_address ); |
|
611 | + if ($reader) { |
|
612 | + $record = $reader->city($ip_address); |
|
613 | 613 | |
614 | - if ( !empty( $record->country->isoCode ) ) { |
|
614 | + if (!empty($record->country->isoCode)) { |
|
615 | 615 | return $record; |
616 | 616 | } |
617 | 617 | } |
618 | - } catch(\InvalidArgumentException $e) { |
|
619 | - wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' ); |
|
618 | + } catch (\InvalidArgumentException $e) { |
|
619 | + wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )'); |
|
620 | 620 | |
621 | 621 | return false; |
622 | - } catch(\GeoIp2\Exception\AddressNotFoundException $e) { |
|
623 | - wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' ); |
|
622 | + } catch (\GeoIp2\Exception\AddressNotFoundException $e) { |
|
623 | + wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )'); |
|
624 | 624 | |
625 | 625 | return false; |
626 | - } catch( Exception $e ) { |
|
626 | + } catch (Exception $e) { |
|
627 | 627 | return false; |
628 | 628 | } |
629 | 629 | |
630 | 630 | return false; |
631 | 631 | } |
632 | 632 | |
633 | - public static function geoip2_country_code( $ip_address ) { |
|
634 | - $record = self::geoip2_country_record( $ip_address ); |
|
635 | - return !empty( $record->country->isoCode ) ? $record->country->isoCode : wpinv_get_default_country(); |
|
633 | + public static function geoip2_country_code($ip_address) { |
|
634 | + $record = self::geoip2_country_record($ip_address); |
|
635 | + return !empty($record->country->isoCode) ? $record->country->isoCode : wpinv_get_default_country(); |
|
636 | 636 | } |
637 | 637 | |
638 | 638 | // Find country by IP address. |
639 | - public static function get_country_by_ip( $ip = '' ) { |
|
639 | + public static function get_country_by_ip($ip = '') { |
|
640 | 640 | global $wpinv_ip_address_country; |
641 | 641 | |
642 | - if ( !empty( $wpinv_ip_address_country ) ) { |
|
642 | + if (!empty($wpinv_ip_address_country)) { |
|
643 | 643 | return $wpinv_ip_address_country; |
644 | 644 | } |
645 | 645 | |
646 | - if ( empty( $ip ) ) { |
|
646 | + if (empty($ip)) { |
|
647 | 647 | $ip = wpinv_get_ip(); |
648 | 648 | } |
649 | 649 | |
650 | - $ip_country_service = wpinv_get_option( 'vat_ip_lookup' ); |
|
651 | - $is_default = empty( $ip_country_service ) || $ip_country_service === 'default' ? true : false; |
|
650 | + $ip_country_service = wpinv_get_option('vat_ip_lookup'); |
|
651 | + $is_default = empty($ip_country_service) || $ip_country_service === 'default' ? true : false; |
|
652 | 652 | |
653 | - if ( !empty( $ip ) && $ip !== '127.0.0.1' ) { // For 127.0.0.1(localhost) use default country. |
|
654 | - if ( function_exists( 'geoip_country_code_by_name') && ( $ip_country_service === 'geoip' || $is_default ) ) { |
|
653 | + if (!empty($ip) && $ip !== '127.0.0.1') { // For 127.0.0.1(localhost) use default country. |
|
654 | + if (function_exists('geoip_country_code_by_name') && ($ip_country_service === 'geoip' || $is_default)) { |
|
655 | 655 | try { |
656 | - $wpinv_ip_address_country = geoip_country_code_by_name( $ip ); |
|
657 | - } catch( Exception $e ) { |
|
658 | - wpinv_error_log( $e->getMessage(), 'GeoIP Lookup( ' . $ip . ' )' ); |
|
656 | + $wpinv_ip_address_country = geoip_country_code_by_name($ip); |
|
657 | + } catch (Exception $e) { |
|
658 | + wpinv_error_log($e->getMessage(), 'GeoIP Lookup( ' . $ip . ' )'); |
|
659 | 659 | } |
660 | - } else if ( self::geoip2_country_dbfile() && ( $ip_country_service === 'geoip2' || $is_default ) ) { |
|
661 | - $wpinv_ip_address_country = self::geoip2_country_code( $ip ); |
|
662 | - } else if ( function_exists( 'simplexml_load_file' ) && ( $ip_country_service === 'geoplugin' || $is_default ) ) { |
|
663 | - $load_xml = simplexml_load_file( 'http://www.geoplugin.net/xml.gp?ip=' . $ip ); |
|
660 | + } else if (self::geoip2_country_dbfile() && ($ip_country_service === 'geoip2' || $is_default)) { |
|
661 | + $wpinv_ip_address_country = self::geoip2_country_code($ip); |
|
662 | + } else if (function_exists('simplexml_load_file') && ($ip_country_service === 'geoplugin' || $is_default)) { |
|
663 | + $load_xml = simplexml_load_file('http://www.geoplugin.net/xml.gp?ip=' . $ip); |
|
664 | 664 | |
665 | - if ( !empty( $load_xml ) && !empty( $load_xml->geoplugin_countryCode ) ) { |
|
665 | + if (!empty($load_xml) && !empty($load_xml->geoplugin_countryCode)) { |
|
666 | 666 | $wpinv_ip_address_country = (string)$load_xml->geoplugin_countryCode; |
667 | 667 | } |
668 | 668 | } |
669 | 669 | } |
670 | 670 | |
671 | - if ( empty( $wpinv_ip_address_country ) ) { |
|
671 | + if (empty($wpinv_ip_address_country)) { |
|
672 | 672 | $wpinv_ip_address_country = wpinv_get_default_country(); |
673 | 673 | } |
674 | 674 | |
675 | 675 | return $wpinv_ip_address_country; |
676 | 676 | } |
677 | 677 | |
678 | - public static function sanitize_vat_settings( $input ) { |
|
678 | + public static function sanitize_vat_settings($input) { |
|
679 | 679 | global $wpinv_options; |
680 | 680 | |
681 | 681 | $valid = false; |
682 | 682 | $message = ''; |
683 | 683 | |
684 | - if ( !empty( $wpinv_options['vat_vies_check'] ) ) { |
|
685 | - if ( empty( $wpinv_options['vat_offline_check'] ) ) { |
|
686 | - $valid = self::offline_check( $input['vat_number'] ); |
|
684 | + if (!empty($wpinv_options['vat_vies_check'])) { |
|
685 | + if (empty($wpinv_options['vat_offline_check'])) { |
|
686 | + $valid = self::offline_check($input['vat_number']); |
|
687 | 687 | } else { |
688 | 688 | $valid = true; |
689 | 689 | } |
690 | 690 | |
691 | - $message = $valid ? '' : __( 'VAT number not validated', 'invoicing' ); |
|
691 | + $message = $valid ? '' : __('VAT number not validated', 'invoicing'); |
|
692 | 692 | } else { |
693 | - $result = self::check_vat( $input['vat_number'] ); |
|
693 | + $result = self::check_vat($input['vat_number']); |
|
694 | 694 | |
695 | - if ( empty( $result['valid'] ) ) { |
|
695 | + if (empty($result['valid'])) { |
|
696 | 696 | $valid = false; |
697 | 697 | $message = $result['message']; |
698 | 698 | } else { |
699 | - $valid = ( isset( $result['company'] ) && ( $result['company'] == '---' || ( strcasecmp( trim( $result['company'] ), trim( $input['vat_company_name'] ) ) == 0 ) ) ) || !empty( $wpinv_options['vat_disable_company_name_check'] ); |
|
700 | - $message = $valid ? '' : __( 'The company name associated with the VAT number provided is not the same as the company name provided.', 'invoicing' ); |
|
699 | + $valid = (isset($result['company']) && ($result['company'] == '---' || (strcasecmp(trim($result['company']), trim($input['vat_company_name'])) == 0))) || !empty($wpinv_options['vat_disable_company_name_check']); |
|
700 | + $message = $valid ? '' : __('The company name associated with the VAT number provided is not the same as the company name provided.', 'invoicing'); |
|
701 | 701 | } |
702 | 702 | } |
703 | 703 | |
704 | - if ( $message && self::is_vat_validated() != $valid ) { |
|
705 | - add_settings_error( 'wpinv-notices', '', $message, ( $valid ? 'updated' : 'error' ) ); |
|
704 | + if ($message && self::is_vat_validated() != $valid) { |
|
705 | + add_settings_error('wpinv-notices', '', $message, ($valid ? 'updated' : 'error')); |
|
706 | 706 | } |
707 | 707 | |
708 | 708 | $input['vat_valid'] = $valid; |
709 | 709 | return $input; |
710 | 710 | } |
711 | 711 | |
712 | - public static function sanitize_vat_rates( $input ) { |
|
713 | - if( !current_user_can( 'manage_options' ) ) { |
|
714 | - add_settings_error( 'wpinv-notices', '', __( 'Your account does not have permission to add rate classes.', 'invoicing' ), 'error' ); |
|
712 | + public static function sanitize_vat_rates($input) { |
|
713 | + if (!current_user_can('manage_options')) { |
|
714 | + add_settings_error('wpinv-notices', '', __('Your account does not have permission to add rate classes.', 'invoicing'), 'error'); |
|
715 | 715 | return $input; |
716 | 716 | } |
717 | 717 | |
718 | 718 | $vat_classes = self::get_rate_classes(); |
719 | - $vat_class = !empty( $_REQUEST['wpi_vat_class'] ) && isset( $vat_classes[$_REQUEST['wpi_vat_class']] )? sanitize_text_field( $_REQUEST['wpi_vat_class'] ) : ''; |
|
719 | + $vat_class = !empty($_REQUEST['wpi_vat_class']) && isset($vat_classes[$_REQUEST['wpi_vat_class']]) ? sanitize_text_field($_REQUEST['wpi_vat_class']) : ''; |
|
720 | 720 | |
721 | - if ( empty( $vat_class ) ) { |
|
722 | - add_settings_error( 'wpinv-notices', '', __( 'No valid VAT rates class contained in the request to save rates.', 'invoicing' ), 'error' ); |
|
721 | + if (empty($vat_class)) { |
|
722 | + add_settings_error('wpinv-notices', '', __('No valid VAT rates class contained in the request to save rates.', 'invoicing'), 'error'); |
|
723 | 723 | |
724 | 724 | return $input; |
725 | 725 | } |
726 | 726 | |
727 | - $new_rates = ! empty( $_POST['vat_rates'] ) ? array_values( $_POST['vat_rates'] ) : array(); |
|
727 | + $new_rates = !empty($_POST['vat_rates']) ? array_values($_POST['vat_rates']) : array(); |
|
728 | 728 | |
729 | - if ( $vat_class === '_standard' ) { |
|
729 | + if ($vat_class === '_standard') { |
|
730 | 730 | // Save the active rates in the invoice settings |
731 | - update_option( 'wpinv_tax_rates', $new_rates ); |
|
731 | + update_option('wpinv_tax_rates', $new_rates); |
|
732 | 732 | } else { |
733 | 733 | // Get the existing set of rates |
734 | 734 | $rates = self::get_non_standard_rates(); |
735 | 735 | $rates[$vat_class] = $new_rates; |
736 | 736 | |
737 | - update_option( 'wpinv_vat_rates', $rates ); |
|
737 | + update_option('wpinv_vat_rates', $rates); |
|
738 | 738 | } |
739 | 739 | |
740 | 740 | return $input; |
@@ -744,71 +744,71 @@ discard block |
||
744 | 744 | $response = array(); |
745 | 745 | $response['success'] = false; |
746 | 746 | |
747 | - if ( !current_user_can( 'manage_options' ) ) { |
|
748 | - $response['error'] = __( 'Invalid access!', 'invoicing' ); |
|
749 | - wp_send_json( $response ); |
|
747 | + if (!current_user_can('manage_options')) { |
|
748 | + $response['error'] = __('Invalid access!', 'invoicing'); |
|
749 | + wp_send_json($response); |
|
750 | 750 | } |
751 | 751 | |
752 | - $vat_class_name = !empty( $_POST['name'] ) ? sanitize_text_field( $_POST['name'] ) : false; |
|
753 | - $vat_class_desc = !empty( $_POST['desc'] ) ? sanitize_text_field( $_POST['desc'] ) : false; |
|
752 | + $vat_class_name = !empty($_POST['name']) ? sanitize_text_field($_POST['name']) : false; |
|
753 | + $vat_class_desc = !empty($_POST['desc']) ? sanitize_text_field($_POST['desc']) : false; |
|
754 | 754 | |
755 | - if ( empty( $vat_class_name ) ) { |
|
756 | - $response['error'] = __( 'Select the VAT rate name', 'invoicing' ); |
|
757 | - wp_send_json( $response ); |
|
755 | + if (empty($vat_class_name)) { |
|
756 | + $response['error'] = __('Select the VAT rate name', 'invoicing'); |
|
757 | + wp_send_json($response); |
|
758 | 758 | } |
759 | 759 | |
760 | 760 | $vat_classes = (array)self::get_rate_classes(); |
761 | 761 | |
762 | - if ( !empty( $vat_classes ) && in_array( strtolower( $vat_class_name ), array_map( 'strtolower', array_values( $vat_classes ) ) ) ) { |
|
763 | - $response['error'] = wp_sprintf( __( 'A VAT Rate name "%s" already exists', 'invoicing' ), $vat_class_name ); |
|
764 | - wp_send_json( $response ); |
|
762 | + if (!empty($vat_classes) && in_array(strtolower($vat_class_name), array_map('strtolower', array_values($vat_classes)))) { |
|
763 | + $response['error'] = wp_sprintf(__('A VAT Rate name "%s" already exists', 'invoicing'), $vat_class_name); |
|
764 | + wp_send_json($response); |
|
765 | 765 | } |
766 | 766 | |
767 | - $rate_class_key = normalize_whitespace( 'wpi-' . $vat_class_name ); |
|
768 | - $rate_class_key = sanitize_key( str_replace( " ", "-", $rate_class_key ) ); |
|
767 | + $rate_class_key = normalize_whitespace('wpi-' . $vat_class_name); |
|
768 | + $rate_class_key = sanitize_key(str_replace(" ", "-", $rate_class_key)); |
|
769 | 769 | |
770 | - $vat_classes = (array)self::get_rate_classes( true ); |
|
771 | - $vat_classes[$rate_class_key] = array( 'name' => $vat_class_name, 'desc' => $vat_class_desc ); |
|
770 | + $vat_classes = (array)self::get_rate_classes(true); |
|
771 | + $vat_classes[$rate_class_key] = array('name' => $vat_class_name, 'desc' => $vat_class_desc); |
|
772 | 772 | |
773 | - update_option( '_wpinv_vat_rate_classes', $vat_classes ); |
|
773 | + update_option('_wpinv_vat_rate_classes', $vat_classes); |
|
774 | 774 | |
775 | 775 | $response['success'] = true; |
776 | - $response['redirect'] = admin_url( 'admin.php?page=wpinv-settings&tab=taxes§ion=vat_rates&wpi_sub=' . $rate_class_key ); |
|
776 | + $response['redirect'] = admin_url('admin.php?page=wpinv-settings&tab=taxes§ion=vat_rates&wpi_sub=' . $rate_class_key); |
|
777 | 777 | |
778 | - wp_send_json( $response ); |
|
778 | + wp_send_json($response); |
|
779 | 779 | } |
780 | 780 | |
781 | 781 | public static function delete_class() { |
782 | 782 | $response = array(); |
783 | 783 | $response['success'] = false; |
784 | 784 | |
785 | - if ( !current_user_can( 'manage_options' ) || !isset( $_POST['class'] ) ) { |
|
786 | - $response['error'] = __( 'Invalid access!', 'invoicing' ); |
|
787 | - wp_send_json( $response ); |
|
785 | + if (!current_user_can('manage_options') || !isset($_POST['class'])) { |
|
786 | + $response['error'] = __('Invalid access!', 'invoicing'); |
|
787 | + wp_send_json($response); |
|
788 | 788 | } |
789 | 789 | |
790 | - $vat_class = isset( $_POST['class'] ) && $_POST['class'] !== '' ? sanitize_text_field( $_POST['class'] ) : false; |
|
790 | + $vat_class = isset($_POST['class']) && $_POST['class'] !== '' ? sanitize_text_field($_POST['class']) : false; |
|
791 | 791 | $vat_classes = (array)self::get_rate_classes(); |
792 | 792 | |
793 | - if ( !isset( $vat_classes[$vat_class] ) ) { |
|
794 | - $response['error'] = __( 'Requested class does not exists', 'invoicing' ); |
|
795 | - wp_send_json( $response ); |
|
793 | + if (!isset($vat_classes[$vat_class])) { |
|
794 | + $response['error'] = __('Requested class does not exists', 'invoicing'); |
|
795 | + wp_send_json($response); |
|
796 | 796 | } |
797 | 797 | |
798 | - if ( $vat_class == '_new' || $vat_class == '_standard' ) { |
|
799 | - $response['error'] = __( 'You can not delete standard rates class', 'invoicing' ); |
|
800 | - wp_send_json( $response ); |
|
798 | + if ($vat_class == '_new' || $vat_class == '_standard') { |
|
799 | + $response['error'] = __('You can not delete standard rates class', 'invoicing'); |
|
800 | + wp_send_json($response); |
|
801 | 801 | } |
802 | 802 | |
803 | - $vat_classes = (array)self::get_rate_classes( true ); |
|
804 | - unset( $vat_classes[$vat_class] ); |
|
803 | + $vat_classes = (array)self::get_rate_classes(true); |
|
804 | + unset($vat_classes[$vat_class]); |
|
805 | 805 | |
806 | - update_option( '_wpinv_vat_rate_classes', $vat_classes ); |
|
806 | + update_option('_wpinv_vat_rate_classes', $vat_classes); |
|
807 | 807 | |
808 | 808 | $response['success'] = true; |
809 | - $response['redirect'] = admin_url( 'admin.php?page=wpinv-settings&tab=taxes§ion=vat_rates&wpi_sub=_new' ); |
|
809 | + $response['redirect'] = admin_url('admin.php?page=wpinv-settings&tab=taxes§ion=vat_rates&wpi_sub=_new'); |
|
810 | 810 | |
811 | - wp_send_json( $response ); |
|
811 | + wp_send_json($response); |
|
812 | 812 | } |
813 | 813 | |
814 | 814 | public static function update_eu_rates() { |
@@ -817,72 +817,72 @@ discard block |
||
817 | 817 | $response['error'] = null; |
818 | 818 | $response['data'] = null; |
819 | 819 | |
820 | - if ( !current_user_can( 'manage_options' ) ) { |
|
821 | - $response['error'] = __( 'Invalid access!', 'invoicing' ); |
|
822 | - wp_send_json( $response ); |
|
820 | + if (!current_user_can('manage_options')) { |
|
821 | + $response['error'] = __('Invalid access!', 'invoicing'); |
|
822 | + wp_send_json($response); |
|
823 | 823 | } |
824 | 824 | |
825 | - $group = !empty( $_POST['group'] ) ? sanitize_text_field( $_POST['group'] ) : ''; |
|
826 | - $euvatrates = self::request_euvatrates( $group ); |
|
825 | + $group = !empty($_POST['group']) ? sanitize_text_field($_POST['group']) : ''; |
|
826 | + $euvatrates = self::request_euvatrates($group); |
|
827 | 827 | |
828 | - if ( !empty( $euvatrates ) ) { |
|
829 | - if ( !empty( $euvatrates['success'] ) && !empty( $euvatrates['rates'] ) ) { |
|
828 | + if (!empty($euvatrates)) { |
|
829 | + if (!empty($euvatrates['success']) && !empty($euvatrates['rates'])) { |
|
830 | 830 | $response['success'] = true; |
831 | 831 | $response['data']['rates'] = $euvatrates['rates']; |
832 | - } else if ( !empty( $euvatrates['error'] ) ) { |
|
832 | + } else if (!empty($euvatrates['error'])) { |
|
833 | 833 | $response['error'] = $euvatrates['error']; |
834 | 834 | } |
835 | 835 | } |
836 | 836 | |
837 | - wp_send_json( $response ); |
|
837 | + wp_send_json($response); |
|
838 | 838 | } |
839 | 839 | |
840 | 840 | public static function hide_vat_fields() { |
841 | - $hide = wpinv_get_option( 'vat_disable_fields' ); |
|
841 | + $hide = wpinv_get_option('vat_disable_fields'); |
|
842 | 842 | |
843 | - return apply_filters( 'wpinv_hide_vat_fields', $hide ); |
|
843 | + return apply_filters('wpinv_hide_vat_fields', $hide); |
|
844 | 844 | } |
845 | 845 | |
846 | 846 | public static function same_country_rule() { |
847 | - $same_country_rule = wpinv_get_option( 'vat_same_country_rule' ); |
|
847 | + $same_country_rule = wpinv_get_option('vat_same_country_rule'); |
|
848 | 848 | |
849 | - return apply_filters( 'wpinv_vat_same_country_rule', $same_country_rule ); |
|
849 | + return apply_filters('wpinv_vat_same_country_rule', $same_country_rule); |
|
850 | 850 | } |
851 | 851 | |
852 | 852 | public static function get_vat_name() { |
853 | - $vat_name = wpinv_get_option( 'vat_name' ); |
|
854 | - $vat_name = !empty( $vat_name ) ? $vat_name : 'VAT'; |
|
853 | + $vat_name = wpinv_get_option('vat_name'); |
|
854 | + $vat_name = !empty($vat_name) ? $vat_name : 'VAT'; |
|
855 | 855 | |
856 | - return apply_filters( 'wpinv_get_owner_vat_name', $vat_name ); |
|
856 | + return apply_filters('wpinv_get_owner_vat_name', $vat_name); |
|
857 | 857 | } |
858 | 858 | |
859 | 859 | public static function get_company_name() { |
860 | - $company_name = wpinv_get_option( 'vat_company_name' ); |
|
860 | + $company_name = wpinv_get_option('vat_company_name'); |
|
861 | 861 | |
862 | - return apply_filters( 'wpinv_get_owner_company_name', $company_name ); |
|
862 | + return apply_filters('wpinv_get_owner_company_name', $company_name); |
|
863 | 863 | } |
864 | 864 | |
865 | 865 | public static function get_vat_number() { |
866 | - $vat_number = wpinv_get_option( 'vat_number' ); |
|
866 | + $vat_number = wpinv_get_option('vat_number'); |
|
867 | 867 | |
868 | - return apply_filters( 'wpinv_get_owner_vat_number', $vat_number ); |
|
868 | + return apply_filters('wpinv_get_owner_vat_number', $vat_number); |
|
869 | 869 | } |
870 | 870 | |
871 | 871 | public static function is_vat_validated() { |
872 | - $validated = self::get_vat_number() && wpinv_get_option( 'vat_valid' ); |
|
872 | + $validated = self::get_vat_number() && wpinv_get_option('vat_valid'); |
|
873 | 873 | |
874 | - return apply_filters( 'wpinv_is_owner_vat_validated', $validated ); |
|
874 | + return apply_filters('wpinv_is_owner_vat_validated', $validated); |
|
875 | 875 | } |
876 | 876 | |
877 | - public static function sanitize_vat( $vat_number, $country_code = '' ) { |
|
878 | - $vat_number = str_replace( array(' ', '.', '-', '_', ',' ), '', strtoupper( trim( $vat_number ) ) ); |
|
877 | + public static function sanitize_vat($vat_number, $country_code = '') { |
|
878 | + $vat_number = str_replace(array(' ', '.', '-', '_', ','), '', strtoupper(trim($vat_number))); |
|
879 | 879 | |
880 | - if ( empty( $country_code ) ) { |
|
881 | - $country_code = substr( $vat_number, 0, 2 ); |
|
880 | + if (empty($country_code)) { |
|
881 | + $country_code = substr($vat_number, 0, 2); |
|
882 | 882 | } |
883 | 883 | |
884 | - if ( strpos( $vat_number , $country_code ) === 0 ) { |
|
885 | - $vat = str_replace( $country_code, '', $vat_number ); |
|
884 | + if (strpos($vat_number, $country_code) === 0) { |
|
885 | + $vat = str_replace($country_code, '', $vat_number); |
|
886 | 886 | } else { |
887 | 887 | $vat = $country_code . $vat_number; |
888 | 888 | } |
@@ -895,140 +895,140 @@ discard block |
||
895 | 895 | return $return; |
896 | 896 | } |
897 | 897 | |
898 | - public static function offline_check( $vat_number, $country_code = '', $formatted = false ) { |
|
899 | - $vat = self::sanitize_vat( $vat_number, $country_code ); |
|
898 | + public static function offline_check($vat_number, $country_code = '', $formatted = false) { |
|
899 | + $vat = self::sanitize_vat($vat_number, $country_code); |
|
900 | 900 | $vat_number = $vat['vat_number']; |
901 | 901 | $country_code = $vat['iso']; |
902 | 902 | $regex = array(); |
903 | 903 | |
904 | - switch ( $country_code ) { |
|
904 | + switch ($country_code) { |
|
905 | 905 | case 'AT': |
906 | - $regex[] = '/^(AT)U(\d{8})$/'; // Austria |
|
906 | + $regex[] = '/^(AT)U(\d{8})$/'; // Austria |
|
907 | 907 | break; |
908 | 908 | case 'BE': |
909 | - $regex[] = '/^(BE)(0?\d{9})$/'; // Belgium |
|
909 | + $regex[] = '/^(BE)(0?\d{9})$/'; // Belgium |
|
910 | 910 | break; |
911 | 911 | case 'BG': |
912 | - $regex[] = '/^(BG)(\d{9,10})$/'; // Bulgaria |
|
912 | + $regex[] = '/^(BG)(\d{9,10})$/'; // Bulgaria |
|
913 | 913 | break; |
914 | 914 | case 'CH': |
915 | 915 | case 'CHE': |
916 | - $regex[] = '/^(CHE)(\d{9})MWST$/'; // Switzerland (Not EU) |
|
916 | + $regex[] = '/^(CHE)(\d{9})MWST$/'; // Switzerland (Not EU) |
|
917 | 917 | break; |
918 | 918 | case 'CY': |
919 | - $regex[] = '/^(CY)([0-5|9]\d{7}[A-Z])$/'; // Cyprus |
|
919 | + $regex[] = '/^(CY)([0-5|9]\d{7}[A-Z])$/'; // Cyprus |
|
920 | 920 | break; |
921 | 921 | case 'CZ': |
922 | - $regex[] = '/^(CZ)(\d{8,13})$/'; // Czech Republic |
|
922 | + $regex[] = '/^(CZ)(\d{8,13})$/'; // Czech Republic |
|
923 | 923 | break; |
924 | 924 | case 'DE': |
925 | - $regex[] = '/^(DE)([1-9]\d{8})$/'; // Germany |
|
925 | + $regex[] = '/^(DE)([1-9]\d{8})$/'; // Germany |
|
926 | 926 | break; |
927 | 927 | case 'DK': |
928 | - $regex[] = '/^(DK)(\d{8})$/'; // Denmark |
|
928 | + $regex[] = '/^(DK)(\d{8})$/'; // Denmark |
|
929 | 929 | break; |
930 | 930 | case 'EE': |
931 | - $regex[] = '/^(EE)(10\d{7})$/'; // Estonia |
|
931 | + $regex[] = '/^(EE)(10\d{7})$/'; // Estonia |
|
932 | 932 | break; |
933 | 933 | case 'EL': |
934 | - $regex[] = '/^(EL)(\d{9})$/'; // Greece |
|
934 | + $regex[] = '/^(EL)(\d{9})$/'; // Greece |
|
935 | 935 | break; |
936 | 936 | case 'ES': |
937 | - $regex[] = '/^(ES)([A-Z]\d{8})$/'; // Spain (National juridical entities) |
|
938 | - $regex[] = '/^(ES)([A-H|N-S|W]\d{7}[A-J])$/'; // Spain (Other juridical entities) |
|
939 | - $regex[] = '/^(ES)([0-9|Y|Z]\d{7}[A-Z])$/'; // Spain (Personal entities type 1) |
|
940 | - $regex[] = '/^(ES)([K|L|M|X]\d{7}[A-Z])$/'; // Spain (Personal entities type 2) |
|
937 | + $regex[] = '/^(ES)([A-Z]\d{8})$/'; // Spain (National juridical entities) |
|
938 | + $regex[] = '/^(ES)([A-H|N-S|W]\d{7}[A-J])$/'; // Spain (Other juridical entities) |
|
939 | + $regex[] = '/^(ES)([0-9|Y|Z]\d{7}[A-Z])$/'; // Spain (Personal entities type 1) |
|
940 | + $regex[] = '/^(ES)([K|L|M|X]\d{7}[A-Z])$/'; // Spain (Personal entities type 2) |
|
941 | 941 | break; |
942 | 942 | case 'EU': |
943 | - $regex[] = '/^(EU)(\d{9})$/'; // EU-type |
|
943 | + $regex[] = '/^(EU)(\d{9})$/'; // EU-type |
|
944 | 944 | break; |
945 | 945 | case 'FI': |
946 | - $regex[] = '/^(FI)(\d{8})$/'; // Finland |
|
946 | + $regex[] = '/^(FI)(\d{8})$/'; // Finland |
|
947 | 947 | break; |
948 | 948 | case 'FR': |
949 | - $regex[] = '/^(FR)(\d{11})$/'; // France (1) |
|
950 | - $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)](\d{10})$/'; // France (2) |
|
951 | - $regex[] = '/^(FR)\d[(A-H)|(J-N)|(P-Z)](\d{9})$/'; // France (3) |
|
952 | - $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)]{2}(\d{9})$/'; // France (4) |
|
949 | + $regex[] = '/^(FR)(\d{11})$/'; // France (1) |
|
950 | + $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)](\d{10})$/'; // France (2) |
|
951 | + $regex[] = '/^(FR)\d[(A-H)|(J-N)|(P-Z)](\d{9})$/'; // France (3) |
|
952 | + $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)]{2}(\d{9})$/'; // France (4) |
|
953 | 953 | break; |
954 | 954 | case 'GB': |
955 | - $regex[] = '/^(GB)?(\d{9})$/'; // UK (Standard) |
|
956 | - $regex[] = '/^(GB)?(\d{12})$/'; // UK (Branches) |
|
957 | - $regex[] = '/^(GB)?(GD\d{3})$/'; // UK (Government) |
|
958 | - $regex[] = '/^(GB)?(HA\d{3})$/'; // UK (Health authority) |
|
955 | + $regex[] = '/^(GB)?(\d{9})$/'; // UK (Standard) |
|
956 | + $regex[] = '/^(GB)?(\d{12})$/'; // UK (Branches) |
|
957 | + $regex[] = '/^(GB)?(GD\d{3})$/'; // UK (Government) |
|
958 | + $regex[] = '/^(GB)?(HA\d{3})$/'; // UK (Health authority) |
|
959 | 959 | break; |
960 | 960 | case 'GR': |
961 | - $regex[] = '/^(GR)(\d{8,9})$/'; // Greece |
|
961 | + $regex[] = '/^(GR)(\d{8,9})$/'; // Greece |
|
962 | 962 | break; |
963 | 963 | case 'HR': |
964 | - $regex[] = '/^(HR)(\d{11})$/'; // Croatia |
|
964 | + $regex[] = '/^(HR)(\d{11})$/'; // Croatia |
|
965 | 965 | break; |
966 | 966 | case 'HU': |
967 | - $regex[] = '/^(HU)(\d{8})$/'; // Hungary |
|
967 | + $regex[] = '/^(HU)(\d{8})$/'; // Hungary |
|
968 | 968 | break; |
969 | 969 | case 'IE': |
970 | - $regex[] = '/^(IE)(\d{7}[A-W])$/'; // Ireland (1) |
|
971 | - $regex[] = '/^(IE)([7-9][A-Z\*\+)]\d{5}[A-W])$/'; // Ireland (2) |
|
972 | - $regex[] = '/^(IE)(\d{7}[A-Z][AH])$/'; // Ireland (3) (new format from 1 Jan 2013) |
|
970 | + $regex[] = '/^(IE)(\d{7}[A-W])$/'; // Ireland (1) |
|
971 | + $regex[] = '/^(IE)([7-9][A-Z\*\+)]\d{5}[A-W])$/'; // Ireland (2) |
|
972 | + $regex[] = '/^(IE)(\d{7}[A-Z][AH])$/'; // Ireland (3) (new format from 1 Jan 2013) |
|
973 | 973 | break; |
974 | 974 | case 'IT': |
975 | - $regex[] = '/^(IT)(\d{11})$/'; // Italy |
|
975 | + $regex[] = '/^(IT)(\d{11})$/'; // Italy |
|
976 | 976 | break; |
977 | 977 | case 'LV': |
978 | - $regex[] = '/^(LV)(\d{11})$/'; // Latvia |
|
978 | + $regex[] = '/^(LV)(\d{11})$/'; // Latvia |
|
979 | 979 | break; |
980 | 980 | case 'LT': |
981 | - $regex[] = '/^(LT)(\d{9}|\d{12})$/'; // Lithuania |
|
981 | + $regex[] = '/^(LT)(\d{9}|\d{12})$/'; // Lithuania |
|
982 | 982 | break; |
983 | 983 | case 'LU': |
984 | - $regex[] = '/^(LU)(\d{8})$/'; // Luxembourg |
|
984 | + $regex[] = '/^(LU)(\d{8})$/'; // Luxembourg |
|
985 | 985 | break; |
986 | 986 | case 'MT': |
987 | - $regex[] = '/^(MT)([1-9]\d{7})$/'; // Malta |
|
987 | + $regex[] = '/^(MT)([1-9]\d{7})$/'; // Malta |
|
988 | 988 | break; |
989 | 989 | case 'NL': |
990 | - $regex[] = '/^(NL)(\d{9})B\d{2}$/'; // Netherlands |
|
990 | + $regex[] = '/^(NL)(\d{9})B\d{2}$/'; // Netherlands |
|
991 | 991 | break; |
992 | 992 | case 'NO': |
993 | - $regex[] = '/^(NO)(\d{9})$/'; // Norway (Not EU) |
|
993 | + $regex[] = '/^(NO)(\d{9})$/'; // Norway (Not EU) |
|
994 | 994 | break; |
995 | 995 | case 'PL': |
996 | - $regex[] = '/^(PL)(\d{10})$/'; // Poland |
|
996 | + $regex[] = '/^(PL)(\d{10})$/'; // Poland |
|
997 | 997 | break; |
998 | 998 | case 'PT': |
999 | - $regex[] = '/^(PT)(\d{9})$/'; // Portugal |
|
999 | + $regex[] = '/^(PT)(\d{9})$/'; // Portugal |
|
1000 | 1000 | break; |
1001 | 1001 | case 'RO': |
1002 | - $regex[] = '/^(RO)([1-9]\d{1,9})$/'; // Romania |
|
1002 | + $regex[] = '/^(RO)([1-9]\d{1,9})$/'; // Romania |
|
1003 | 1003 | break; |
1004 | 1004 | case 'RS': |
1005 | - $regex[] = '/^(RS)(\d{9})$/'; // Serbia (Not EU) |
|
1005 | + $regex[] = '/^(RS)(\d{9})$/'; // Serbia (Not EU) |
|
1006 | 1006 | break; |
1007 | 1007 | case 'SI': |
1008 | - $regex[] = '/^(SI)([1-9]\d{7})$/'; // Slovenia |
|
1008 | + $regex[] = '/^(SI)([1-9]\d{7})$/'; // Slovenia |
|
1009 | 1009 | break; |
1010 | 1010 | case 'SK': |
1011 | - $regex[] = '/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7})$/'; // Slovakia Republic |
|
1011 | + $regex[] = '/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7})$/'; // Slovakia Republic |
|
1012 | 1012 | break; |
1013 | 1013 | case 'SE': |
1014 | - $regex[] = '/^(SE)(\d{10}01)$/'; // Sweden |
|
1014 | + $regex[] = '/^(SE)(\d{10}01)$/'; // Sweden |
|
1015 | 1015 | break; |
1016 | 1016 | default: |
1017 | 1017 | $regex = array(); |
1018 | 1018 | break; |
1019 | 1019 | } |
1020 | 1020 | |
1021 | - if ( empty( $regex ) ) { |
|
1021 | + if (empty($regex)) { |
|
1022 | 1022 | return false; |
1023 | 1023 | } |
1024 | 1024 | |
1025 | - foreach ( $regex as $pattern ) { |
|
1025 | + foreach ($regex as $pattern) { |
|
1026 | 1026 | $matches = null; |
1027 | - preg_match_all( $pattern, $vat_number, $matches ); |
|
1027 | + preg_match_all($pattern, $vat_number, $matches); |
|
1028 | 1028 | |
1029 | - if ( !empty( $matches[1][0] ) && !empty( $matches[2][0] ) ) { |
|
1030 | - if ( $formatted ) { |
|
1031 | - return array( 'code' => $matches[1][0], 'number' => $matches[2][0] ); |
|
1029 | + if (!empty($matches[1][0]) && !empty($matches[2][0])) { |
|
1030 | + if ($formatted) { |
|
1031 | + return array('code' => $matches[1][0], 'number' => $matches[2][0]); |
|
1032 | 1032 | } else { |
1033 | 1033 | return true; |
1034 | 1034 | } |
@@ -1038,75 +1038,75 @@ discard block |
||
1038 | 1038 | return false; |
1039 | 1039 | } |
1040 | 1040 | |
1041 | - public static function vies_check( $vat_number, $country_code = '', $result = false ) { |
|
1042 | - $vat = self::sanitize_vat( $vat_number, $country_code ); |
|
1041 | + public static function vies_check($vat_number, $country_code = '', $result = false) { |
|
1042 | + $vat = self::sanitize_vat($vat_number, $country_code); |
|
1043 | 1043 | $vat_number = $vat['vat']; |
1044 | 1044 | $iso = $vat['iso']; |
1045 | 1045 | |
1046 | - $url = 'http://ec.europa.eu/taxation_customs/vies/viesquer.do?ms=' . urlencode( $iso ) . '&iso=' . urlencode( $iso ) . '&vat=' . urlencode( $vat_number ); |
|
1046 | + $url = 'http://ec.europa.eu/taxation_customs/vies/viesquer.do?ms=' . urlencode($iso) . '&iso=' . urlencode($iso) . '&vat=' . urlencode($vat_number); |
|
1047 | 1047 | |
1048 | - if ( ini_get( 'allow_url_fopen' ) ) { |
|
1049 | - $response = file_get_contents( $url ); |
|
1050 | - } else if ( function_exists( 'curl_init' ) ) { |
|
1048 | + if (ini_get('allow_url_fopen')) { |
|
1049 | + $response = file_get_contents($url); |
|
1050 | + } else if (function_exists('curl_init')) { |
|
1051 | 1051 | $ch = curl_init(); |
1052 | 1052 | |
1053 | - curl_setopt( $ch, CURLOPT_URL, $url ); |
|
1054 | - curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 30 ); |
|
1055 | - curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true ); |
|
1056 | - curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 0 ); |
|
1057 | - curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, 0 ); |
|
1053 | + curl_setopt($ch, CURLOPT_URL, $url); |
|
1054 | + curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30); |
|
1055 | + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); |
|
1056 | + curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); |
|
1057 | + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); |
|
1058 | 1058 | |
1059 | - $response = curl_exec( $ch ); |
|
1059 | + $response = curl_exec($ch); |
|
1060 | 1060 | |
1061 | - if ( curl_errno( $ch ) ) { |
|
1062 | - wpinv_error_log( curl_error( $ch ), 'VIES CHECK ERROR' ); |
|
1061 | + if (curl_errno($ch)) { |
|
1062 | + wpinv_error_log(curl_error($ch), 'VIES CHECK ERROR'); |
|
1063 | 1063 | $response = ''; |
1064 | 1064 | } |
1065 | 1065 | |
1066 | - curl_close( $ch ); |
|
1066 | + curl_close($ch); |
|
1067 | 1067 | } else { |
1068 | - 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' ); |
|
1068 | + 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'); |
|
1069 | 1069 | } |
1070 | 1070 | |
1071 | - if ( empty( $response ) ) { |
|
1071 | + if (empty($response)) { |
|
1072 | 1072 | return $result; |
1073 | 1073 | } |
1074 | 1074 | |
1075 | - if ( preg_match( '/invalid VAT number/i', $response ) ) { |
|
1075 | + if (preg_match('/invalid VAT number/i', $response)) { |
|
1076 | 1076 | return false; |
1077 | - } else if ( preg_match( '/valid VAT number/i', $response, $matches ) ) { |
|
1078 | - $content = explode( "valid VAT number", htmlentities( $response ) ); |
|
1077 | + } else if (preg_match('/valid VAT number/i', $response, $matches)) { |
|
1078 | + $content = explode("valid VAT number", htmlentities($response)); |
|
1079 | 1079 | |
1080 | - if ( !empty( $content[1] ) ) { |
|
1081 | - preg_match_all( '/<tr>(.*?)<td.*?>(.*?)<\/td>(.*?)<\/tr>/si', html_entity_decode( $content[1] ), $matches ); |
|
1080 | + if (!empty($content[1])) { |
|
1081 | + preg_match_all('/<tr>(.*?)<td.*?>(.*?)<\/td>(.*?)<\/tr>/si', html_entity_decode($content[1]), $matches); |
|
1082 | 1082 | |
1083 | - if ( !empty( $matches[2] ) && $matches[3] ) { |
|
1083 | + if (!empty($matches[2]) && $matches[3]) { |
|
1084 | 1084 | $return = array(); |
1085 | 1085 | |
1086 | - foreach ( $matches[2] as $key => $label ) { |
|
1087 | - $label = trim( $label ); |
|
1086 | + foreach ($matches[2] as $key => $label) { |
|
1087 | + $label = trim($label); |
|
1088 | 1088 | |
1089 | - switch ( strtolower( $label ) ) { |
|
1089 | + switch (strtolower($label)) { |
|
1090 | 1090 | case 'member state': |
1091 | - $return['state'] = trim( strip_tags( $matches[3][$key] ) ); |
|
1091 | + $return['state'] = trim(strip_tags($matches[3][$key])); |
|
1092 | 1092 | break; |
1093 | 1093 | case 'vat number': |
1094 | - $return['number'] = trim( strip_tags( $matches[3][$key] ) ); |
|
1094 | + $return['number'] = trim(strip_tags($matches[3][$key])); |
|
1095 | 1095 | break; |
1096 | 1096 | case 'name': |
1097 | - $return['company'] = trim( strip_tags( $matches[3][$key] ) ); |
|
1097 | + $return['company'] = trim(strip_tags($matches[3][$key])); |
|
1098 | 1098 | break; |
1099 | 1099 | case 'address': |
1100 | - $address = str_replace( array( "<br><br>", "<br /><br />", "<br/><br/>" ), "<br>", html_entity_decode( trim( $matches[3][$key] ) ) ); |
|
1101 | - $return['address'] = trim( strip_tags( $address, '<br>' ) ); |
|
1100 | + $address = str_replace(array("<br><br>", "<br /><br />", "<br/><br/>"), "<br>", html_entity_decode(trim($matches[3][$key]))); |
|
1101 | + $return['address'] = trim(strip_tags($address, '<br>')); |
|
1102 | 1102 | break; |
1103 | 1103 | case 'consultation number': |
1104 | - $return['consultation'] = trim( strip_tags( $matches[3][$key] ) ); |
|
1104 | + $return['consultation'] = trim(strip_tags($matches[3][$key])); |
|
1105 | 1105 | break; |
1106 | 1106 | } |
1107 | 1107 | } |
1108 | 1108 | |
1109 | - if ( !empty( $return ) ) { |
|
1109 | + if (!empty($return)) { |
|
1110 | 1110 | return $return; |
1111 | 1111 | } |
1112 | 1112 | } |
@@ -1118,55 +1118,55 @@ discard block |
||
1118 | 1118 | } |
1119 | 1119 | } |
1120 | 1120 | |
1121 | - public static function check_vat( $vat_number, $country_code = '' ) { |
|
1121 | + public static function check_vat($vat_number, $country_code = '') { |
|
1122 | 1122 | $vat_name = self::get_vat_name(); |
1123 | 1123 | |
1124 | 1124 | $return = array(); |
1125 | 1125 | $return['valid'] = false; |
1126 | - $return['message'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name ); |
|
1126 | + $return['message'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name); |
|
1127 | 1127 | |
1128 | - if ( !wpinv_get_option( 'vat_offline_check' ) && !self::offline_check( $vat_number, $country_code ) ) { |
|
1128 | + if (!wpinv_get_option('vat_offline_check') && !self::offline_check($vat_number, $country_code)) { |
|
1129 | 1129 | return $return; |
1130 | 1130 | } |
1131 | 1131 | |
1132 | - $response = self::vies_check( $vat_number, $country_code ); |
|
1132 | + $response = self::vies_check($vat_number, $country_code); |
|
1133 | 1133 | |
1134 | - if ( $response ) { |
|
1135 | - $return['valid'] = true; |
|
1134 | + if ($response) { |
|
1135 | + $return['valid'] = true; |
|
1136 | 1136 | |
1137 | - if ( is_array( $response ) ) { |
|
1138 | - $return['company'] = isset( $response['company'] ) ? $response['company'] : ''; |
|
1139 | - $return['address'] = isset( $response['address'] ) ? $response['address'] : ''; |
|
1137 | + if (is_array($response)) { |
|
1138 | + $return['company'] = isset($response['company']) ? $response['company'] : ''; |
|
1139 | + $return['address'] = isset($response['address']) ? $response['address'] : ''; |
|
1140 | 1140 | $return['message'] = $return['company'] . '<br/>' . $return['address']; |
1141 | 1141 | } |
1142 | 1142 | } else { |
1143 | 1143 | $return['valid'] = false; |
1144 | - $return['message'] = wp_sprintf( __( 'Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing' ), $vat_name ); |
|
1144 | + $return['message'] = wp_sprintf(__('Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing'), $vat_name); |
|
1145 | 1145 | } |
1146 | 1146 | |
1147 | 1147 | return $return; |
1148 | 1148 | } |
1149 | 1149 | |
1150 | - public static function request_euvatrates( $group ) { |
|
1150 | + public static function request_euvatrates($group) { |
|
1151 | 1151 | $response = array(); |
1152 | 1152 | $response['success'] = false; |
1153 | 1153 | $response['error'] = null; |
1154 | 1154 | $response['eurates'] = null; |
1155 | 1155 | |
1156 | 1156 | $euvatrates_url = 'https://euvatrates.com/rates.json'; |
1157 | - $euvatrates_url = apply_filters( 'wpinv_euvatrates_url', $euvatrates_url ); |
|
1158 | - $api_response = wp_remote_get( $euvatrates_url ); |
|
1157 | + $euvatrates_url = apply_filters('wpinv_euvatrates_url', $euvatrates_url); |
|
1158 | + $api_response = wp_remote_get($euvatrates_url); |
|
1159 | 1159 | |
1160 | 1160 | try { |
1161 | - if ( is_wp_error( $api_response ) ) { |
|
1162 | - $response['error'] = __( $api_response->get_error_message(), 'invoicing' ); |
|
1161 | + if (is_wp_error($api_response)) { |
|
1162 | + $response['error'] = __($api_response->get_error_message(), 'invoicing'); |
|
1163 | 1163 | } else { |
1164 | - $body = json_decode( $api_response['body'] ); |
|
1164 | + $body = json_decode($api_response['body']); |
|
1165 | 1165 | |
1166 | - if ( isset( $body->rates ) ) { |
|
1166 | + if (isset($body->rates)) { |
|
1167 | 1167 | $rates = array(); |
1168 | 1168 | |
1169 | - foreach ( $body->rates as $country_code => $rate ) { |
|
1169 | + foreach ($body->rates as $country_code => $rate) { |
|
1170 | 1170 | $vat_rate = array(); |
1171 | 1171 | $vat_rate['country'] = $rate->country; |
1172 | 1172 | $vat_rate['standard'] = (float)$rate->standard_rate; |
@@ -1174,7 +1174,7 @@ discard block |
||
1174 | 1174 | $vat_rate['superreduced'] = (float)$rate->super_reduced_rate; |
1175 | 1175 | $vat_rate['parking'] = (float)$rate->parking_rate; |
1176 | 1176 | |
1177 | - if ( $group !== '' && in_array( $group, array( 'standard', 'reduced', 'superreduced', 'parking' ) ) ) { |
|
1177 | + if ($group !== '' && in_array($group, array('standard', 'reduced', 'superreduced', 'parking'))) { |
|
1178 | 1178 | $vat_rate_group = array(); |
1179 | 1179 | $vat_rate_group['country'] = $rate->country; |
1180 | 1180 | $vat_rate_group[$group] = $vat_rate[$group]; |
@@ -1186,79 +1186,79 @@ discard block |
||
1186 | 1186 | } |
1187 | 1187 | |
1188 | 1188 | $response['success'] = true; |
1189 | - $response['rates'] = apply_filters( 'wpinv_process_euvatrates', $rates, $api_response, $group ); |
|
1189 | + $response['rates'] = apply_filters('wpinv_process_euvatrates', $rates, $api_response, $group); |
|
1190 | 1190 | } else { |
1191 | - $response['error'] = __( 'No EU rates found!', 'invoicing' ); |
|
1191 | + $response['error'] = __('No EU rates found!', 'invoicing'); |
|
1192 | 1192 | } |
1193 | 1193 | } |
1194 | - } catch ( Exception $e ) { |
|
1195 | - $response['error'] = __( $e->getMessage(), 'invoicing' ); |
|
1194 | + } catch (Exception $e) { |
|
1195 | + $response['error'] = __($e->getMessage(), 'invoicing'); |
|
1196 | 1196 | } |
1197 | 1197 | |
1198 | - return apply_filters( 'wpinv_response_euvatrates', $response, $group ); |
|
1198 | + return apply_filters('wpinv_response_euvatrates', $response, $group); |
|
1199 | 1199 | } |
1200 | 1200 | |
1201 | - public static function requires_vat( $requires_vat = false, $user_id = 0, $is_digital = null ) { |
|
1201 | + public static function requires_vat($requires_vat = false, $user_id = 0, $is_digital = null) { |
|
1202 | 1202 | global $wpi_item_id, $wpi_country; |
1203 | 1203 | |
1204 | - if ( !empty( $_POST['wpinv_country'] ) ) { |
|
1205 | - $country_code = trim( $_POST['wpinv_country'] ); |
|
1206 | - } else if ( !empty( $_POST['country'] ) ) { |
|
1207 | - $country_code = trim( $_POST['country'] ); |
|
1208 | - } else if ( !empty( $wpi_country ) ) { |
|
1204 | + if (!empty($_POST['wpinv_country'])) { |
|
1205 | + $country_code = trim($_POST['wpinv_country']); |
|
1206 | + } else if (!empty($_POST['country'])) { |
|
1207 | + $country_code = trim($_POST['country']); |
|
1208 | + } else if (!empty($wpi_country)) { |
|
1209 | 1209 | $country_code = $wpi_country; |
1210 | 1210 | } else { |
1211 | - $country_code = self::get_user_country( '', $user_id ); |
|
1211 | + $country_code = self::get_user_country('', $user_id); |
|
1212 | 1212 | } |
1213 | 1213 | |
1214 | - if ( $is_digital === null && $wpi_item_id ) { |
|
1215 | - $is_digital = $wpi_item_id ? self::item_has_digital_rule( $wpi_item_id ) : self::allow_vat_rules(); |
|
1214 | + if ($is_digital === null && $wpi_item_id) { |
|
1215 | + $is_digital = $wpi_item_id ? self::item_has_digital_rule($wpi_item_id) : self::allow_vat_rules(); |
|
1216 | 1216 | } |
1217 | 1217 | |
1218 | - if ( !empty( $country_code ) ) { |
|
1219 | - $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 ) ); |
|
1218 | + if (!empty($country_code)) { |
|
1219 | + $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)); |
|
1220 | 1220 | } |
1221 | 1221 | |
1222 | - return apply_filters( 'wpinv_requires_vat', $requires_vat, $user_id ); |
|
1222 | + return apply_filters('wpinv_requires_vat', $requires_vat, $user_id); |
|
1223 | 1223 | } |
1224 | 1224 | |
1225 | - public static function tax_label( $label = '' ) { |
|
1225 | + public static function tax_label($label = '') { |
|
1226 | 1226 | global $wpi_requires_vat; |
1227 | 1227 | |
1228 | - if ( !( $wpi_requires_vat !== 0 && $wpi_requires_vat ) ) { |
|
1229 | - $wpi_requires_vat = self::requires_vat( 0, false ); |
|
1228 | + if (!($wpi_requires_vat !== 0 && $wpi_requires_vat)) { |
|
1229 | + $wpi_requires_vat = self::requires_vat(0, false); |
|
1230 | 1230 | } |
1231 | 1231 | |
1232 | - return $wpi_requires_vat ? __( self::get_vat_name(), 'invoicing' ) : ( $label ? $label : __( 'Tax', 'invoicing' ) ); |
|
1232 | + return $wpi_requires_vat ? __(self::get_vat_name(), 'invoicing') : ($label ? $label : __('Tax', 'invoicing')); |
|
1233 | 1233 | } |
1234 | 1234 | |
1235 | 1235 | public static function standard_rates_label() { |
1236 | - return __( 'Standard Rates', 'invoicing' ); |
|
1236 | + return __('Standard Rates', 'invoicing'); |
|
1237 | 1237 | } |
1238 | 1238 | |
1239 | - public static function get_rate_classes( $with_desc = false ) { |
|
1240 | - $rate_classes_option = get_option( '_wpinv_vat_rate_classes', true ); |
|
1241 | - $classes = maybe_unserialize( $rate_classes_option ); |
|
1239 | + public static function get_rate_classes($with_desc = false) { |
|
1240 | + $rate_classes_option = get_option('_wpinv_vat_rate_classes', true); |
|
1241 | + $classes = maybe_unserialize($rate_classes_option); |
|
1242 | 1242 | |
1243 | - if ( empty( $classes ) || !is_array( $classes ) ) { |
|
1243 | + if (empty($classes) || !is_array($classes)) { |
|
1244 | 1244 | $classes = array(); |
1245 | 1245 | } |
1246 | 1246 | |
1247 | 1247 | $rate_classes = array(); |
1248 | - if ( !array_key_exists( '_standard', $classes ) ) { |
|
1249 | - if ( $with_desc ) { |
|
1250 | - $rate_classes['_standard'] = array( 'name' => self::standard_rates_label(), 'desc' => __( 'EU member states standard VAT rates', 'invoicing' ) ); |
|
1248 | + if (!array_key_exists('_standard', $classes)) { |
|
1249 | + if ($with_desc) { |
|
1250 | + $rate_classes['_standard'] = array('name' => self::standard_rates_label(), 'desc' => __('EU member states standard VAT rates', 'invoicing')); |
|
1251 | 1251 | } else { |
1252 | 1252 | $rate_classes['_standard'] = self::standard_rates_label(); |
1253 | 1253 | } |
1254 | 1254 | } |
1255 | 1255 | |
1256 | - foreach ( $classes as $key => $class ) { |
|
1257 | - $name = !empty( $class['name'] ) ? __( $class['name'], 'invoicing' ) : $key; |
|
1258 | - $desc = !empty( $class['desc'] ) ? __( $class['desc'], 'invoicing' ) : ''; |
|
1256 | + foreach ($classes as $key => $class) { |
|
1257 | + $name = !empty($class['name']) ? __($class['name'], 'invoicing') : $key; |
|
1258 | + $desc = !empty($class['desc']) ? __($class['desc'], 'invoicing') : ''; |
|
1259 | 1259 | |
1260 | - if ( $with_desc ) { |
|
1261 | - $rate_classes[$key] = array( 'name' => $name, 'desc' => $desc ); |
|
1260 | + if ($with_desc) { |
|
1261 | + $rate_classes[$key] = array('name' => $name, 'desc' => $desc); |
|
1262 | 1262 | } else { |
1263 | 1263 | $rate_classes[$key] = $name; |
1264 | 1264 | } |
@@ -1269,15 +1269,15 @@ discard block |
||
1269 | 1269 | |
1270 | 1270 | public static function get_all_classes() { |
1271 | 1271 | $classes = self::get_rate_classes(); |
1272 | - $classes['_exempt'] = __( 'Exempt (0%)', 'invoicing' ); |
|
1272 | + $classes['_exempt'] = __('Exempt (0%)', 'invoicing'); |
|
1273 | 1273 | |
1274 | - return apply_filters( 'wpinv_vat_get_all_classes', $classes ); |
|
1274 | + return apply_filters('wpinv_vat_get_all_classes', $classes); |
|
1275 | 1275 | } |
1276 | 1276 | |
1277 | - public static function get_class_desc( $rate_class ) { |
|
1278 | - $rate_classes = self::get_rate_classes( true ); |
|
1277 | + public static function get_class_desc($rate_class) { |
|
1278 | + $rate_classes = self::get_rate_classes(true); |
|
1279 | 1279 | |
1280 | - if ( !empty( $rate_classes ) && isset( $rate_classes[$rate_class] ) && isset( $rate_classes[$rate_class]['desc'] ) ) { |
|
1280 | + if (!empty($rate_classes) && isset($rate_classes[$rate_class]) && isset($rate_classes[$rate_class]['desc'])) { |
|
1281 | 1281 | return $rate_classes[$rate_class]['desc']; |
1282 | 1282 | } |
1283 | 1283 | |
@@ -1293,106 +1293,106 @@ discard block |
||
1293 | 1293 | 'increased' => 'Increased' |
1294 | 1294 | ); |
1295 | 1295 | |
1296 | - return apply_filters( 'wpinv_get_vat_groups', $vat_groups ); |
|
1296 | + return apply_filters('wpinv_get_vat_groups', $vat_groups); |
|
1297 | 1297 | } |
1298 | 1298 | |
1299 | 1299 | public static function get_rules() { |
1300 | 1300 | $vat_rules = array( |
1301 | - 'digital' => __( 'Digital Product', 'invoicing' ), |
|
1302 | - 'physical' => __( 'Physical Product', 'invoicing' ) |
|
1301 | + 'digital' => __('Digital Product', 'invoicing'), |
|
1302 | + 'physical' => __('Physical Product', 'invoicing') |
|
1303 | 1303 | ); |
1304 | - return apply_filters( 'wpinv_get_vat_rules', $vat_rules ); |
|
1304 | + return apply_filters('wpinv_get_vat_rules', $vat_rules); |
|
1305 | 1305 | } |
1306 | 1306 | |
1307 | - public static function get_vat_rates( $class ) { |
|
1308 | - if ( $class === '_standard' ) { |
|
1307 | + public static function get_vat_rates($class) { |
|
1308 | + if ($class === '_standard') { |
|
1309 | 1309 | return wpinv_get_tax_rates(); |
1310 | 1310 | } |
1311 | 1311 | |
1312 | 1312 | $rates = self::get_non_standard_rates(); |
1313 | 1313 | |
1314 | - return array_key_exists( $class, $rates ) ? $rates[$class] : array(); |
|
1314 | + return array_key_exists($class, $rates) ? $rates[$class] : array(); |
|
1315 | 1315 | } |
1316 | 1316 | |
1317 | 1317 | public static function get_non_standard_rates() { |
1318 | - $option = get_option( 'wpinv_vat_rates', array()); |
|
1319 | - return is_array( $option ) ? $option : array(); |
|
1318 | + $option = get_option('wpinv_vat_rates', array()); |
|
1319 | + return is_array($option) ? $option : array(); |
|
1320 | 1320 | } |
1321 | 1321 | |
1322 | 1322 | public static function allow_vat_rules() { |
1323 | - return ( wpinv_use_taxes() && wpinv_get_option( 'apply_vat_rules' ) ? true : false ); |
|
1323 | + return (wpinv_use_taxes() && wpinv_get_option('apply_vat_rules') ? true : false); |
|
1324 | 1324 | } |
1325 | 1325 | |
1326 | 1326 | public static function allow_vat_classes() { |
1327 | 1327 | return false; // TODO |
1328 | - return ( wpinv_get_option( 'vat_allow_classes' ) ? true : false ); |
|
1328 | + return (wpinv_get_option('vat_allow_classes') ? true : false); |
|
1329 | 1329 | } |
1330 | 1330 | |
1331 | - public static function get_item_class( $postID ) { |
|
1332 | - $class = get_post_meta( $postID, '_wpinv_vat_class', true ); |
|
1331 | + public static function get_item_class($postID) { |
|
1332 | + $class = get_post_meta($postID, '_wpinv_vat_class', true); |
|
1333 | 1333 | |
1334 | - if ( empty( $class ) ) { |
|
1334 | + if (empty($class)) { |
|
1335 | 1335 | $class = '_standard'; |
1336 | 1336 | } |
1337 | 1337 | |
1338 | - return apply_filters( 'wpinv_get_item_vat_class', $class, $postID ); |
|
1338 | + return apply_filters('wpinv_get_item_vat_class', $class, $postID); |
|
1339 | 1339 | } |
1340 | 1340 | |
1341 | - public static function item_class_label( $postID ) { |
|
1341 | + public static function item_class_label($postID) { |
|
1342 | 1342 | $vat_classes = self::get_all_classes(); |
1343 | 1343 | |
1344 | - $class = self::get_item_class( $postID ); |
|
1345 | - $class = isset( $vat_classes[$class] ) ? $vat_classes[$class] : __( $class, 'invoicing' ); |
|
1344 | + $class = self::get_item_class($postID); |
|
1345 | + $class = isset($vat_classes[$class]) ? $vat_classes[$class] : __($class, 'invoicing'); |
|
1346 | 1346 | |
1347 | - return apply_filters( 'wpinv_item_class_label', $class, $postID ); |
|
1347 | + return apply_filters('wpinv_item_class_label', $class, $postID); |
|
1348 | 1348 | } |
1349 | 1349 | |
1350 | - public static function get_item_rule( $postID ) { |
|
1351 | - $rule_type = get_post_meta( $postID, '_wpinv_vat_rule', true ); |
|
1350 | + public static function get_item_rule($postID) { |
|
1351 | + $rule_type = get_post_meta($postID, '_wpinv_vat_rule', true); |
|
1352 | 1352 | |
1353 | - if ( empty( $rule_type ) ) { |
|
1353 | + if (empty($rule_type)) { |
|
1354 | 1354 | $rule_type = self::allow_vat_rules() ? 'digital' : 'physical'; |
1355 | 1355 | } |
1356 | 1356 | |
1357 | - return apply_filters( 'wpinv_item_get_vat_rule', $rule_type, $postID ); |
|
1357 | + return apply_filters('wpinv_item_get_vat_rule', $rule_type, $postID); |
|
1358 | 1358 | } |
1359 | 1359 | |
1360 | - public static function item_rule_label( $postID ) { |
|
1360 | + public static function item_rule_label($postID) { |
|
1361 | 1361 | $vat_rules = self::get_rules(); |
1362 | - $vat_rule = self::get_item_rule( $postID ); |
|
1363 | - $vat_rule = isset( $vat_rules[$vat_rule] ) ? $vat_rules[$vat_rule] : $vat_rule; |
|
1362 | + $vat_rule = self::get_item_rule($postID); |
|
1363 | + $vat_rule = isset($vat_rules[$vat_rule]) ? $vat_rules[$vat_rule] : $vat_rule; |
|
1364 | 1364 | |
1365 | - return apply_filters( 'wpinv_item_rule_label', $vat_rule, $postID ); |
|
1365 | + return apply_filters('wpinv_item_rule_label', $vat_rule, $postID); |
|
1366 | 1366 | } |
1367 | 1367 | |
1368 | - public static function item_has_digital_rule( $item_id = 0 ) { |
|
1369 | - return self::get_item_rule( $item_id ) == 'digital' ? true : false; |
|
1368 | + public static function item_has_digital_rule($item_id = 0) { |
|
1369 | + return self::get_item_rule($item_id) == 'digital' ? true : false; |
|
1370 | 1370 | } |
1371 | 1371 | |
1372 | - public static function invoice_has_digital_rule( $invoice = 0 ) { |
|
1373 | - if ( !self::allow_vat_rules() ) { |
|
1372 | + public static function invoice_has_digital_rule($invoice = 0) { |
|
1373 | + if (!self::allow_vat_rules()) { |
|
1374 | 1374 | return false; |
1375 | 1375 | } |
1376 | 1376 | |
1377 | - if ( empty( $invoice ) ) { |
|
1377 | + if (empty($invoice)) { |
|
1378 | 1378 | return true; |
1379 | 1379 | } |
1380 | 1380 | |
1381 | - if ( is_int( $invoice ) ) { |
|
1382 | - $invoice = new WPInv_Invoice( $invoice ); |
|
1381 | + if (is_int($invoice)) { |
|
1382 | + $invoice = new WPInv_Invoice($invoice); |
|
1383 | 1383 | } |
1384 | 1384 | |
1385 | - if ( !( is_object( $invoice ) && is_a( $invoice, 'WPInv_Invoice' ) ) ) { |
|
1385 | + if (!(is_object($invoice) && is_a($invoice, 'WPInv_Invoice'))) { |
|
1386 | 1386 | return true; |
1387 | 1387 | } |
1388 | 1388 | |
1389 | - $cart_items = $invoice->get_cart_details(); |
|
1389 | + $cart_items = $invoice->get_cart_details(); |
|
1390 | 1390 | |
1391 | - if ( !empty( $cart_items ) ) { |
|
1391 | + if (!empty($cart_items)) { |
|
1392 | 1392 | $has_digital_rule = false; |
1393 | 1393 | |
1394 | - foreach ( $cart_items as $key => $item ) { |
|
1395 | - if ( self::item_has_digital_rule( $item['id'] ) ) { |
|
1394 | + foreach ($cart_items as $key => $item) { |
|
1395 | + if (self::item_has_digital_rule($item['id'])) { |
|
1396 | 1396 | $has_digital_rule = true; |
1397 | 1397 | break; |
1398 | 1398 | } |
@@ -1404,67 +1404,67 @@ discard block |
||
1404 | 1404 | return $has_digital_rule; |
1405 | 1405 | } |
1406 | 1406 | |
1407 | - public static function item_is_taxable( $item_id = 0, $country = false, $state = false ) { |
|
1408 | - if ( !wpinv_use_taxes() ) { |
|
1407 | + public static function item_is_taxable($item_id = 0, $country = false, $state = false) { |
|
1408 | + if (!wpinv_use_taxes()) { |
|
1409 | 1409 | return false; |
1410 | 1410 | } |
1411 | 1411 | |
1412 | 1412 | $is_taxable = true; |
1413 | 1413 | |
1414 | - if ( !empty( $item_id ) && self::get_item_class( $item_id ) == '_exempt' ) { |
|
1414 | + if (!empty($item_id) && self::get_item_class($item_id) == '_exempt') { |
|
1415 | 1415 | $is_taxable = false; |
1416 | 1416 | } |
1417 | 1417 | |
1418 | - return apply_filters( 'wpinv_item_is_taxable', $is_taxable, $item_id, $country , $state ); |
|
1418 | + return apply_filters('wpinv_item_is_taxable', $is_taxable, $item_id, $country, $state); |
|
1419 | 1419 | } |
1420 | 1420 | |
1421 | - public static function find_rate( $country, $state, $rate, $class ) { |
|
1421 | + public static function find_rate($country, $state, $rate, $class) { |
|
1422 | 1422 | global $wpi_zero_tax; |
1423 | 1423 | |
1424 | - if ( $class === '_exempt' || $wpi_zero_tax ) { |
|
1424 | + if ($class === '_exempt' || $wpi_zero_tax) { |
|
1425 | 1425 | return 0; |
1426 | 1426 | } |
1427 | 1427 | |
1428 | - $tax_rates = wpinv_get_tax_rates(); |
|
1428 | + $tax_rates = wpinv_get_tax_rates(); |
|
1429 | 1429 | |
1430 | - if ( $class !== '_standard' ) { |
|
1431 | - $class_rates = self::get_vat_rates( $class ); |
|
1430 | + if ($class !== '_standard') { |
|
1431 | + $class_rates = self::get_vat_rates($class); |
|
1432 | 1432 | |
1433 | - if ( is_array( $class_rates ) ) { |
|
1433 | + if (is_array($class_rates)) { |
|
1434 | 1434 | $indexed_class_rates = array(); |
1435 | 1435 | |
1436 | - foreach ( $class_rates as $key => $cr ) { |
|
1436 | + foreach ($class_rates as $key => $cr) { |
|
1437 | 1437 | $indexed_class_rates[$cr['country']] = $cr; |
1438 | 1438 | } |
1439 | 1439 | |
1440 | - $tax_rates = array_map( function( $tr ) use( $indexed_class_rates ) { |
|
1440 | + $tax_rates = array_map(function($tr) use($indexed_class_rates) { |
|
1441 | 1441 | $tr_country = $tr['country']; |
1442 | - if ( !isset( $indexed_class_rates[$tr_country] ) ) { |
|
1442 | + if (!isset($indexed_class_rates[$tr_country])) { |
|
1443 | 1443 | return $tr; |
1444 | 1444 | } |
1445 | 1445 | $icr = $indexed_class_rates[$tr_country]; |
1446 | - return ( empty( $icr['rate'] ) && $icr['rate'] !== '0' ) ? $tr : $icr; |
|
1446 | + return (empty($icr['rate']) && $icr['rate'] !== '0') ? $tr : $icr; |
|
1447 | 1447 | |
1448 | - }, $tax_rates, $class_rates ); |
|
1448 | + }, $tax_rates, $class_rates); |
|
1449 | 1449 | } |
1450 | 1450 | } |
1451 | 1451 | |
1452 | - if ( !empty( $tax_rates ) ) { |
|
1453 | - foreach ( $tax_rates as $key => $tax_rate ) { |
|
1454 | - if ( $country != $tax_rate['country'] ) |
|
1452 | + if (!empty($tax_rates)) { |
|
1453 | + foreach ($tax_rates as $key => $tax_rate) { |
|
1454 | + if ($country != $tax_rate['country']) |
|
1455 | 1455 | continue; |
1456 | 1456 | |
1457 | - if ( !empty( $tax_rate['global'] ) ) { |
|
1458 | - if ( 0 !== $tax_rate['rate'] || !empty( $tax_rate['rate'] ) ) { |
|
1459 | - $rate = number_format( $tax_rate['rate'], 4 ); |
|
1457 | + if (!empty($tax_rate['global'])) { |
|
1458 | + if (0 !== $tax_rate['rate'] || !empty($tax_rate['rate'])) { |
|
1459 | + $rate = number_format($tax_rate['rate'], 4); |
|
1460 | 1460 | } |
1461 | 1461 | } else { |
1462 | - if ( empty( $tax_rate['state'] ) || strtolower( $state ) != strtolower( $tax_rate['state'] ) ) |
|
1462 | + if (empty($tax_rate['state']) || strtolower($state) != strtolower($tax_rate['state'])) |
|
1463 | 1463 | continue; |
1464 | 1464 | |
1465 | 1465 | $state_rate = $tax_rate['rate']; |
1466 | - if ( 0 !== $state_rate || !empty( $state_rate ) ) { |
|
1467 | - $rate = number_format( $state_rate, 4 ); |
|
1466 | + if (0 !== $state_rate || !empty($state_rate)) { |
|
1467 | + $rate = number_format($state_rate, 4); |
|
1468 | 1468 | } |
1469 | 1469 | } |
1470 | 1470 | } |
@@ -1473,84 +1473,84 @@ discard block |
||
1473 | 1473 | return $rate; |
1474 | 1474 | } |
1475 | 1475 | |
1476 | - public static function get_rate( $rate = 1, $country = '', $state = '', $item_id = 0 ) { |
|
1476 | + public static function get_rate($rate = 1, $country = '', $state = '', $item_id = 0) { |
|
1477 | 1477 | global $wpinv_options, $wpi_session, $wpi_item_id, $wpi_zero_tax; |
1478 | 1478 | |
1479 | 1479 | $item_id = $item_id > 0 ? $item_id : $wpi_item_id; |
1480 | 1480 | $allow_vat_classes = self::allow_vat_classes(); |
1481 | - $class = $item_id ? self::get_item_class( $item_id ) : '_standard'; |
|
1481 | + $class = $item_id ? self::get_item_class($item_id) : '_standard'; |
|
1482 | 1482 | |
1483 | - if ( $class === '_exempt' || $wpi_zero_tax ) { |
|
1483 | + if ($class === '_exempt' || $wpi_zero_tax) { |
|
1484 | 1484 | return 0; |
1485 | - } else if ( !$allow_vat_classes ) { |
|
1485 | + } else if (!$allow_vat_classes) { |
|
1486 | 1486 | $class = '_standard'; |
1487 | 1487 | } |
1488 | 1488 | |
1489 | - if( !empty( $_POST['wpinv_country'] ) ) { |
|
1489 | + if (!empty($_POST['wpinv_country'])) { |
|
1490 | 1490 | $post_country = $_POST['wpinv_country']; |
1491 | - } elseif( !empty( $_POST['wpinv_country'] ) ) { |
|
1491 | + } elseif (!empty($_POST['wpinv_country'])) { |
|
1492 | 1492 | $post_country = $_POST['wpinv_country']; |
1493 | - } elseif( !empty( $_POST['country'] ) ) { |
|
1493 | + } elseif (!empty($_POST['country'])) { |
|
1494 | 1494 | $post_country = $_POST['country']; |
1495 | 1495 | } else { |
1496 | 1496 | $post_country = ''; |
1497 | 1497 | } |
1498 | 1498 | |
1499 | - $country = !empty( $post_country ) ? $post_country : wpinv_default_billing_country( $country ); |
|
1500 | - $base_country = wpinv_is_base_country( $country ); |
|
1499 | + $country = !empty($post_country) ? $post_country : wpinv_default_billing_country($country); |
|
1500 | + $base_country = wpinv_is_base_country($country); |
|
1501 | 1501 | |
1502 | - $requires_vat = self::requires_vat( 0, false ); |
|
1503 | - $is_digital = self::get_item_rule( $item_id ) == 'digital' ; |
|
1504 | - $rate = $requires_vat && isset( $wpinv_options['eu_fallback_rate'] ) ? $wpinv_options['eu_fallback_rate'] : $rate; |
|
1502 | + $requires_vat = self::requires_vat(0, false); |
|
1503 | + $is_digital = self::get_item_rule($item_id) == 'digital'; |
|
1504 | + $rate = $requires_vat && isset($wpinv_options['eu_fallback_rate']) ? $wpinv_options['eu_fallback_rate'] : $rate; |
|
1505 | 1505 | |
1506 | - if ( self::same_country_rule() == 'no' && $base_country ) { // Disable VAT to same country |
|
1506 | + if (self::same_country_rule() == 'no' && $base_country) { // Disable VAT to same country |
|
1507 | 1507 | $rate = 0; |
1508 | - } else if ( $requires_vat ) { |
|
1509 | - $vat_number = self::get_user_vat_number( '', 0, true ); |
|
1508 | + } else if ($requires_vat) { |
|
1509 | + $vat_number = self::get_user_vat_number('', 0, true); |
|
1510 | 1510 | $vat_info = self::current_vat_data(); |
1511 | 1511 | |
1512 | - if ( is_array( $vat_info ) ) { |
|
1513 | - $vat_number = isset( $vat_info['number'] ) && !empty( $vat_info['valid'] ) ? $vat_info['number'] : ""; |
|
1512 | + if (is_array($vat_info)) { |
|
1513 | + $vat_number = isset($vat_info['number']) && !empty($vat_info['valid']) ? $vat_info['number'] : ""; |
|
1514 | 1514 | } |
1515 | 1515 | |
1516 | - if ( $country == 'UK' ) { |
|
1516 | + if ($country == 'UK') { |
|
1517 | 1517 | $country = 'GB'; |
1518 | 1518 | } |
1519 | 1519 | |
1520 | - if ( !empty( $vat_number ) ) { |
|
1520 | + if (!empty($vat_number)) { |
|
1521 | 1521 | $rate = 0; |
1522 | 1522 | } else { |
1523 | - $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 |
|
1523 | + $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 |
|
1524 | 1524 | } |
1525 | 1525 | |
1526 | - if ( empty( $vat_number ) && !$is_digital ) { |
|
1527 | - if ( $base_country ) { |
|
1528 | - $rate = self::find_rate( $country, null, $rate, $class ); |
|
1526 | + if (empty($vat_number) && !$is_digital) { |
|
1527 | + if ($base_country) { |
|
1528 | + $rate = self::find_rate($country, null, $rate, $class); |
|
1529 | 1529 | } else { |
1530 | - if ( empty( $country ) && isset( $wpinv_options['eu_fallback_rate'] ) ) { |
|
1530 | + if (empty($country) && isset($wpinv_options['eu_fallback_rate'])) { |
|
1531 | 1531 | $rate = $wpinv_options['eu_fallback_rate']; |
1532 | - } else if( !empty( $country ) ) { |
|
1533 | - $rate = self::find_rate( $country, $state, $rate, $class ); |
|
1532 | + } else if (!empty($country)) { |
|
1533 | + $rate = self::find_rate($country, $state, $rate, $class); |
|
1534 | 1534 | } |
1535 | 1535 | } |
1536 | - } else if ( empty( $vat_number ) || ( self::same_country_rule() == 'always' && $base_country ) ) { |
|
1537 | - if ( empty( $country ) && isset( $wpinv_options['eu_fallback_rate'] ) ) { |
|
1536 | + } else if (empty($vat_number) || (self::same_country_rule() == 'always' && $base_country)) { |
|
1537 | + if (empty($country) && isset($wpinv_options['eu_fallback_rate'])) { |
|
1538 | 1538 | $rate = $wpinv_options['eu_fallback_rate']; |
1539 | - } else if( !empty( $country ) ) { |
|
1540 | - $rate = self::find_rate( $country, $state, $rate, $class ); |
|
1539 | + } else if (!empty($country)) { |
|
1540 | + $rate = self::find_rate($country, $state, $rate, $class); |
|
1541 | 1541 | } |
1542 | 1542 | } |
1543 | 1543 | } else { |
1544 | - if ( $is_digital ) { |
|
1544 | + if ($is_digital) { |
|
1545 | 1545 | $ip_country_code = self::get_country_by_ip(); |
1546 | 1546 | |
1547 | - if ( $ip_country_code && self::is_eu_state( $ip_country_code ) ) { |
|
1548 | - $rate = self::find_rate( $ip_country_code, '', 0, $class ); |
|
1547 | + if ($ip_country_code && self::is_eu_state($ip_country_code)) { |
|
1548 | + $rate = self::find_rate($ip_country_code, '', 0, $class); |
|
1549 | 1549 | } else { |
1550 | - $rate = self::find_rate( $country, $state, $rate, $class ); |
|
1550 | + $rate = self::find_rate($country, $state, $rate, $class); |
|
1551 | 1551 | } |
1552 | 1552 | } else { |
1553 | - $rate = self::find_rate( $country, $state, $rate, $class ); |
|
1553 | + $rate = self::find_rate($country, $state, $rate, $class); |
|
1554 | 1554 | } |
1555 | 1555 | } |
1556 | 1556 | |
@@ -1560,48 +1560,48 @@ discard block |
||
1560 | 1560 | public static function current_vat_data() { |
1561 | 1561 | global $wpi_session; |
1562 | 1562 | |
1563 | - return $wpi_session->get( 'user_vat_data' ); |
|
1563 | + return $wpi_session->get('user_vat_data'); |
|
1564 | 1564 | } |
1565 | 1565 | |
1566 | - public static function get_user_country( $country = '', $user_id = 0 ) { |
|
1567 | - $user_address = wpinv_get_user_address( $user_id, false ); |
|
1566 | + public static function get_user_country($country = '', $user_id = 0) { |
|
1567 | + $user_address = wpinv_get_user_address($user_id, false); |
|
1568 | 1568 | |
1569 | - if ( wpinv_get_option( 'vat_ip_country_default' ) ) { |
|
1569 | + if (wpinv_get_option('vat_ip_country_default')) { |
|
1570 | 1570 | $country = ''; |
1571 | 1571 | } |
1572 | 1572 | |
1573 | - $country = empty( $user_address ) || !isset( $user_address['country'] ) || empty( $user_address['country'] ) ? $country : $user_address['country']; |
|
1574 | - $result = apply_filters( 'wpinv_get_user_country', $country, $user_id ); |
|
1573 | + $country = empty($user_address) || !isset($user_address['country']) || empty($user_address['country']) ? $country : $user_address['country']; |
|
1574 | + $result = apply_filters('wpinv_get_user_country', $country, $user_id); |
|
1575 | 1575 | |
1576 | - if ( empty( $result ) ) { |
|
1576 | + if (empty($result)) { |
|
1577 | 1577 | $result = self::get_country_by_ip(); |
1578 | 1578 | } |
1579 | 1579 | |
1580 | 1580 | return $result; |
1581 | 1581 | } |
1582 | 1582 | |
1583 | - public static function set_user_country( $country = '', $user_id = 0 ) { |
|
1583 | + public static function set_user_country($country = '', $user_id = 0) { |
|
1584 | 1584 | global $wpi_userID; |
1585 | 1585 | |
1586 | - if ( empty($country) && !empty($wpi_userID) && get_current_user_id() != $wpi_userID ) { |
|
1586 | + if (empty($country) && !empty($wpi_userID) && get_current_user_id() != $wpi_userID) { |
|
1587 | 1587 | $country = wpinv_get_default_country(); |
1588 | 1588 | } |
1589 | 1589 | |
1590 | 1590 | return $country; |
1591 | 1591 | } |
1592 | 1592 | |
1593 | - public static function get_user_vat_number( $vat_number = '', $user_id = 0, $is_valid = false ) { |
|
1593 | + public static function get_user_vat_number($vat_number = '', $user_id = 0, $is_valid = false) { |
|
1594 | 1594 | global $wpi_current_id, $wpi_userID; |
1595 | 1595 | |
1596 | - if ( !empty( $_POST['new_user'] ) ) { |
|
1596 | + if (!empty($_POST['new_user'])) { |
|
1597 | 1597 | return ''; |
1598 | 1598 | } |
1599 | 1599 | |
1600 | - if ( empty( $user_id ) ) { |
|
1601 | - $user_id = !empty( $wpi_userID ) ? $wpi_userID : ( $wpi_current_id ? wpinv_get_user_id( $wpi_current_id ) : get_current_user_id() ); |
|
1600 | + if (empty($user_id)) { |
|
1601 | + $user_id = !empty($wpi_userID) ? $wpi_userID : ($wpi_current_id ? wpinv_get_user_id($wpi_current_id) : get_current_user_id()); |
|
1602 | 1602 | } |
1603 | 1603 | |
1604 | - $vat_number = empty( $user_id ) ? '' : get_user_meta( $user_id, '_wpinv_vat_number', true ); |
|
1604 | + $vat_number = empty($user_id) ? '' : get_user_meta($user_id, '_wpinv_vat_number', true); |
|
1605 | 1605 | |
1606 | 1606 | /* TODO |
1607 | 1607 | if ( $is_valid && $vat_number ) { |
@@ -1612,36 +1612,36 @@ discard block |
||
1612 | 1612 | } |
1613 | 1613 | */ |
1614 | 1614 | |
1615 | - return apply_filters('wpinv_get_user_vat_number', $vat_number, $user_id, $is_valid ); |
|
1615 | + return apply_filters('wpinv_get_user_vat_number', $vat_number, $user_id, $is_valid); |
|
1616 | 1616 | } |
1617 | 1617 | |
1618 | - public static function get_user_company( $company = '', $user_id = 0 ) { |
|
1619 | - if ( empty( $user_id ) ) { |
|
1618 | + public static function get_user_company($company = '', $user_id = 0) { |
|
1619 | + if (empty($user_id)) { |
|
1620 | 1620 | $user_id = get_current_user_id(); |
1621 | 1621 | } |
1622 | 1622 | |
1623 | - $company = empty( $user_id ) ? "" : get_user_meta( $user_id, '_wpinv_company', true ); |
|
1623 | + $company = empty($user_id) ? "" : get_user_meta($user_id, '_wpinv_company', true); |
|
1624 | 1624 | |
1625 | - return apply_filters( 'wpinv_user_company', $company, $user_id ); |
|
1625 | + return apply_filters('wpinv_user_company', $company, $user_id); |
|
1626 | 1626 | } |
1627 | 1627 | |
1628 | - public static function save_user_vat_details( $company = '', $vat_number = '' ) { |
|
1629 | - $save = apply_filters( 'wpinv_allow_save_user_vat_details', true ); |
|
1628 | + public static function save_user_vat_details($company = '', $vat_number = '') { |
|
1629 | + $save = apply_filters('wpinv_allow_save_user_vat_details', true); |
|
1630 | 1630 | |
1631 | - if ( is_user_logged_in() && $save ) { |
|
1631 | + if (is_user_logged_in() && $save) { |
|
1632 | 1632 | $user_id = get_current_user_id(); |
1633 | 1633 | |
1634 | - if ( !empty( $vat_number ) ) { |
|
1635 | - update_user_meta( $user_id, '_wpinv_vat_number', $vat_number ); |
|
1634 | + if (!empty($vat_number)) { |
|
1635 | + update_user_meta($user_id, '_wpinv_vat_number', $vat_number); |
|
1636 | 1636 | } else { |
1637 | - delete_user_meta( $user_id, '_wpinv_vat_number'); |
|
1637 | + delete_user_meta($user_id, '_wpinv_vat_number'); |
|
1638 | 1638 | } |
1639 | 1639 | |
1640 | - if ( !empty( $company ) ) { |
|
1641 | - update_user_meta( $user_id, '_wpinv_company', $company ); |
|
1640 | + if (!empty($company)) { |
|
1641 | + update_user_meta($user_id, '_wpinv_company', $company); |
|
1642 | 1642 | } else { |
1643 | - delete_user_meta( $user_id, '_wpinv_company'); |
|
1644 | - delete_user_meta( $user_id, '_wpinv_vat_number'); |
|
1643 | + delete_user_meta($user_id, '_wpinv_company'); |
|
1644 | + delete_user_meta($user_id, '_wpinv_vat_number'); |
|
1645 | 1645 | } |
1646 | 1646 | } |
1647 | 1647 | |
@@ -1651,113 +1651,113 @@ discard block |
||
1651 | 1651 | public static function ajax_vat_validate() { |
1652 | 1652 | global $wpinv_options, $wpi_session; |
1653 | 1653 | |
1654 | - $is_checkout = ( !empty( $_POST['source'] ) && $_POST['source'] == 'checkout' ) ? true : false; |
|
1654 | + $is_checkout = (!empty($_POST['source']) && $_POST['source'] == 'checkout') ? true : false; |
|
1655 | 1655 | $response = array(); |
1656 | 1656 | $response['success'] = false; |
1657 | 1657 | |
1658 | - if ( empty( $_REQUEST['_wpi_nonce'] ) || ( !empty( $_REQUEST['_wpi_nonce'] ) && !wp_verify_nonce( $_REQUEST['_wpi_nonce'], 'vat_validation' ) ) ) { |
|
1659 | - $response['error'] = __( 'Invalid security nonce', 'invoicing' ); |
|
1660 | - wp_send_json( $response ); |
|
1658 | + if (empty($_REQUEST['_wpi_nonce']) || (!empty($_REQUEST['_wpi_nonce']) && !wp_verify_nonce($_REQUEST['_wpi_nonce'], 'vat_validation'))) { |
|
1659 | + $response['error'] = __('Invalid security nonce', 'invoicing'); |
|
1660 | + wp_send_json($response); |
|
1661 | 1661 | } |
1662 | 1662 | |
1663 | - $vat_name = self::get_vat_name(); |
|
1663 | + $vat_name = self::get_vat_name(); |
|
1664 | 1664 | |
1665 | - if ( $is_checkout ) { |
|
1665 | + if ($is_checkout) { |
|
1666 | 1666 | $invoice = wpinv_get_invoice_cart(); |
1667 | 1667 | |
1668 | - if ( !self::requires_vat( false, 0, self::invoice_has_digital_rule( $invoice ) ) ) { |
|
1668 | + if (!self::requires_vat(false, 0, self::invoice_has_digital_rule($invoice))) { |
|
1669 | 1669 | $vat_info = array(); |
1670 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1670 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1671 | 1671 | |
1672 | 1672 | self::save_user_vat_details(); |
1673 | 1673 | |
1674 | 1674 | $response['success'] = true; |
1675 | - $response['message'] = wp_sprintf( __( 'Ignore %s', 'invoicing' ), $vat_name ); |
|
1676 | - wp_send_json( $response ); |
|
1675 | + $response['message'] = wp_sprintf(__('Ignore %s', 'invoicing'), $vat_name); |
|
1676 | + wp_send_json($response); |
|
1677 | 1677 | } |
1678 | 1678 | } |
1679 | 1679 | |
1680 | - $company = !empty( $_POST['company'] ) ? sanitize_text_field( $_POST['company'] ) : ''; |
|
1681 | - $vat_number = !empty( $_POST['number'] ) ? sanitize_text_field( $_POST['number'] ) : ''; |
|
1680 | + $company = !empty($_POST['company']) ? sanitize_text_field($_POST['company']) : ''; |
|
1681 | + $vat_number = !empty($_POST['number']) ? sanitize_text_field($_POST['number']) : ''; |
|
1682 | 1682 | |
1683 | - $vat_info = $wpi_session->get( 'user_vat_data' ); |
|
1684 | - if ( !is_array( $vat_info ) || empty( $vat_info ) ) { |
|
1685 | - $vat_info = array( 'company'=> $company, 'number' => '', 'valid' => true ); |
|
1683 | + $vat_info = $wpi_session->get('user_vat_data'); |
|
1684 | + if (!is_array($vat_info) || empty($vat_info)) { |
|
1685 | + $vat_info = array('company'=> $company, 'number' => '', 'valid' => true); |
|
1686 | 1686 | } |
1687 | 1687 | |
1688 | - if ( empty( $vat_number ) ) { |
|
1689 | - if ( $is_checkout ) { |
|
1688 | + if (empty($vat_number)) { |
|
1689 | + if ($is_checkout) { |
|
1690 | 1690 | $response['success'] = true; |
1691 | - $response['message'] = wp_sprintf( __( 'No %s number has been applied. %s will be added to invoice totals', 'invoicing' ), $vat_name, $vat_name ); |
|
1691 | + $response['message'] = wp_sprintf(__('No %s number has been applied. %s will be added to invoice totals', 'invoicing'), $vat_name, $vat_name); |
|
1692 | 1692 | |
1693 | - $vat_info = $wpi_session->get( 'user_vat_data' ); |
|
1693 | + $vat_info = $wpi_session->get('user_vat_data'); |
|
1694 | 1694 | $vat_info['number'] = ""; |
1695 | 1695 | $vat_info['valid'] = true; |
1696 | 1696 | |
1697 | - self::save_user_vat_details( $company ); |
|
1697 | + self::save_user_vat_details($company); |
|
1698 | 1698 | } else { |
1699 | - $response['error'] = wp_sprintf( __( 'Please enter your %s number!', 'invoicing' ), $vat_name ); |
|
1699 | + $response['error'] = wp_sprintf(__('Please enter your %s number!', 'invoicing'), $vat_name); |
|
1700 | 1700 | |
1701 | 1701 | $vat_info['valid'] = false; |
1702 | 1702 | } |
1703 | 1703 | |
1704 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1705 | - wp_send_json( $response ); |
|
1704 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1705 | + wp_send_json($response); |
|
1706 | 1706 | } |
1707 | 1707 | |
1708 | - if ( empty( $company ) ) { |
|
1708 | + if (empty($company)) { |
|
1709 | 1709 | $vat_info['valid'] = false; |
1710 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1710 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1711 | 1711 | |
1712 | - $response['error'] = __( 'Please enter your registered company name!', 'invoicing' ); |
|
1713 | - wp_send_json( $response ); |
|
1712 | + $response['error'] = __('Please enter your registered company name!', 'invoicing'); |
|
1713 | + wp_send_json($response); |
|
1714 | 1714 | } |
1715 | 1715 | |
1716 | - if ( !empty( $wpinv_options['vat_vies_check'] ) ) { |
|
1717 | - if ( empty( $wpinv_options['vat_offline_check'] ) && !self::offline_check( $vat_number ) ) { |
|
1716 | + if (!empty($wpinv_options['vat_vies_check'])) { |
|
1717 | + if (empty($wpinv_options['vat_offline_check']) && !self::offline_check($vat_number)) { |
|
1718 | 1718 | $vat_info['valid'] = false; |
1719 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1719 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1720 | 1720 | |
1721 | - $response['error'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name ); |
|
1722 | - wp_send_json( $response ); |
|
1721 | + $response['error'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name); |
|
1722 | + wp_send_json($response); |
|
1723 | 1723 | } |
1724 | 1724 | |
1725 | 1725 | $response['success'] = true; |
1726 | - $response['message'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name ); |
|
1726 | + $response['message'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name); |
|
1727 | 1727 | } else { |
1728 | - $result = self::check_vat( $vat_number ); |
|
1728 | + $result = self::check_vat($vat_number); |
|
1729 | 1729 | |
1730 | - if ( empty( $result['valid'] ) ) { |
|
1730 | + if (empty($result['valid'])) { |
|
1731 | 1731 | $response['error'] = $result['message']; |
1732 | - wp_send_json( $response ); |
|
1732 | + wp_send_json($response); |
|
1733 | 1733 | } |
1734 | 1734 | |
1735 | - $vies_company = !empty( $result['company'] ) ? $result['company'] : ''; |
|
1736 | - $vies_company = apply_filters( 'wpinv_vies_company_name', $vies_company ); |
|
1735 | + $vies_company = !empty($result['company']) ? $result['company'] : ''; |
|
1736 | + $vies_company = apply_filters('wpinv_vies_company_name', $vies_company); |
|
1737 | 1737 | |
1738 | - $valid_company = $vies_company && $company && ( $vies_company == '---' || strcasecmp( trim( $vies_company ), trim( $company ) ) == 0 ) ? true : false; |
|
1738 | + $valid_company = $vies_company && $company && ($vies_company == '---' || strcasecmp(trim($vies_company), trim($company)) == 0) ? true : false; |
|
1739 | 1739 | |
1740 | - if ( !empty( $wpinv_options['vat_disable_company_name_check'] ) || $valid_company ) { |
|
1740 | + if (!empty($wpinv_options['vat_disable_company_name_check']) || $valid_company) { |
|
1741 | 1741 | $response['success'] = true; |
1742 | - $response['message'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name ); |
|
1742 | + $response['message'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name); |
|
1743 | 1743 | } else { |
1744 | 1744 | $vat_info['valid'] = false; |
1745 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1745 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1746 | 1746 | |
1747 | 1747 | $response['success'] = false; |
1748 | - $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 ); |
|
1749 | - wp_send_json( $response ); |
|
1748 | + $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); |
|
1749 | + wp_send_json($response); |
|
1750 | 1750 | } |
1751 | 1751 | } |
1752 | 1752 | |
1753 | - if ( $is_checkout ) { |
|
1754 | - self::save_user_vat_details( $company, $vat_number ); |
|
1753 | + if ($is_checkout) { |
|
1754 | + self::save_user_vat_details($company, $vat_number); |
|
1755 | 1755 | |
1756 | - $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => true ); |
|
1757 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1756 | + $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => true); |
|
1757 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1758 | 1758 | } |
1759 | 1759 | |
1760 | - wp_send_json( $response ); |
|
1760 | + wp_send_json($response); |
|
1761 | 1761 | } |
1762 | 1762 | |
1763 | 1763 | public static function ajax_vat_reset() { |
@@ -1766,161 +1766,161 @@ discard block |
||
1766 | 1766 | $company = is_user_logged_in() ? self::get_user_company() : ''; |
1767 | 1767 | $vat_number = self::get_user_vat_number(); |
1768 | 1768 | |
1769 | - $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => false ); |
|
1770 | - $wpi_session->set( 'user_vat_data', $vat_info ); |
|
1769 | + $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => false); |
|
1770 | + $wpi_session->set('user_vat_data', $vat_info); |
|
1771 | 1771 | |
1772 | 1772 | $response = array(); |
1773 | 1773 | $response['success'] = true; |
1774 | 1774 | $response['data']['company'] = $company; |
1775 | 1775 | $response['data']['number'] = $vat_number; |
1776 | 1776 | |
1777 | - wp_send_json( $response ); |
|
1777 | + wp_send_json($response); |
|
1778 | 1778 | } |
1779 | 1779 | |
1780 | - public static function checkout_vat_validate( $valid_data, $post ) { |
|
1780 | + public static function checkout_vat_validate($valid_data, $post) { |
|
1781 | 1781 | global $wpinv_options, $wpi_session; |
1782 | 1782 | |
1783 | - $vat_name = __( self::get_vat_name(), 'invoicing' ); |
|
1783 | + $vat_name = __(self::get_vat_name(), 'invoicing'); |
|
1784 | 1784 | |
1785 | - if ( !isset( $_POST['_wpi_nonce'] ) || !wp_verify_nonce( $_POST['_wpi_nonce'], 'vat_validation' ) ) { |
|
1786 | - wpinv_set_error( 'vat_validation', wp_sprintf( __( "Invalid %s validation request.", 'invoicing' ), $vat_name ) ); |
|
1785 | + if (!isset($_POST['_wpi_nonce']) || !wp_verify_nonce($_POST['_wpi_nonce'], 'vat_validation')) { |
|
1786 | + wpinv_set_error('vat_validation', wp_sprintf(__("Invalid %s validation request.", 'invoicing'), $vat_name)); |
|
1787 | 1787 | return; |
1788 | 1788 | } |
1789 | 1789 | |
1790 | - $vat_saved = $wpi_session->get( 'user_vat_data' ); |
|
1791 | - $wpi_session->set( 'user_vat_data', null ); |
|
1790 | + $vat_saved = $wpi_session->get('user_vat_data'); |
|
1791 | + $wpi_session->set('user_vat_data', null); |
|
1792 | 1792 | |
1793 | 1793 | $invoice = wpinv_get_invoice_cart(); |
1794 | 1794 | $amount = $invoice->get_total(); |
1795 | - $is_digital = self::invoice_has_digital_rule( $invoice ); |
|
1796 | - $no_vat = !self::requires_vat( 0, false, $is_digital ); |
|
1795 | + $is_digital = self::invoice_has_digital_rule($invoice); |
|
1796 | + $no_vat = !self::requires_vat(0, false, $is_digital); |
|
1797 | 1797 | |
1798 | - $company = !empty( $_POST['wpinv_company'] ) ? $_POST['wpinv_company'] : null; |
|
1799 | - $vat_number = !empty( $_POST['wpinv_vat_number'] ) ? $_POST['wpinv_vat_number'] : null; |
|
1800 | - $country = !empty( $_POST['wpinv_country'] ) ? $_POST['wpinv_country'] : $invoice->country; |
|
1801 | - if ( empty( $country ) ) { |
|
1798 | + $company = !empty($_POST['wpinv_company']) ? $_POST['wpinv_company'] : null; |
|
1799 | + $vat_number = !empty($_POST['wpinv_vat_number']) ? $_POST['wpinv_vat_number'] : null; |
|
1800 | + $country = !empty($_POST['wpinv_country']) ? $_POST['wpinv_country'] : $invoice->country; |
|
1801 | + if (empty($country)) { |
|
1802 | 1802 | $country = wpinv_default_billing_country(); |
1803 | 1803 | } |
1804 | 1804 | |
1805 | - if ( !$is_digital && $no_vat ) { |
|
1805 | + if (!$is_digital && $no_vat) { |
|
1806 | 1806 | return; |
1807 | 1807 | } |
1808 | 1808 | |
1809 | - $vat_data = array( 'company' => '', 'number' => '', 'valid' => false ); |
|
1809 | + $vat_data = array('company' => '', 'number' => '', 'valid' => false); |
|
1810 | 1810 | |
1811 | 1811 | $ip_country_code = self::get_country_by_ip(); |
1812 | - $is_eu_state = self::is_eu_state( $country ); |
|
1813 | - $is_eu_state_ip = self::is_eu_state( $ip_country_code ); |
|
1812 | + $is_eu_state = self::is_eu_state($country); |
|
1813 | + $is_eu_state_ip = self::is_eu_state($ip_country_code); |
|
1814 | 1814 | $is_non_eu_user = !$is_eu_state && !$is_eu_state_ip; |
1815 | 1815 | |
1816 | - if ( $is_digital && !$is_non_eu_user && empty( $vat_number ) && apply_filters( 'wpinv_checkout_requires_country', true, $amount ) ) { |
|
1816 | + if ($is_digital && !$is_non_eu_user && empty($vat_number) && apply_filters('wpinv_checkout_requires_country', true, $amount)) { |
|
1817 | 1817 | $vat_data['adddress_confirmed'] = false; |
1818 | 1818 | |
1819 | - if ( !isset( $_POST['wpinv_adddress_confirmed'] ) ) { |
|
1820 | - if ( $ip_country_code != $country ) { |
|
1821 | - 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>' ) ); |
|
1819 | + if (!isset($_POST['wpinv_adddress_confirmed'])) { |
|
1820 | + if ($ip_country_code != $country) { |
|
1821 | + 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>')); |
|
1822 | 1822 | } |
1823 | 1823 | } else { |
1824 | 1824 | $vat_data['adddress_confirmed'] = true; |
1825 | 1825 | } |
1826 | 1826 | } |
1827 | 1827 | |
1828 | - if ( !empty( $wpinv_options['vat_prevent_b2c_purchase'] ) && !$is_non_eu_user && ( empty( $vat_number ) || $no_vat ) ) { |
|
1829 | - if ( $is_eu_state ) { |
|
1830 | - 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 ) ); |
|
1831 | - } else if ( $is_digital && $is_eu_state_ip ) { |
|
1832 | - wpinv_set_error( 'vat_validation', wp_sprintf( __( 'Sales to non-EU countries cannot be completed because %s must be applied.', 'invoicing' ), $vat_name ) ); |
|
1828 | + if (!empty($wpinv_options['vat_prevent_b2c_purchase']) && !$is_non_eu_user && (empty($vat_number) || $no_vat)) { |
|
1829 | + if ($is_eu_state) { |
|
1830 | + 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)); |
|
1831 | + } else if ($is_digital && $is_eu_state_ip) { |
|
1832 | + wpinv_set_error('vat_validation', wp_sprintf(__('Sales to non-EU countries cannot be completed because %s must be applied.', 'invoicing'), $vat_name)); |
|
1833 | 1833 | } |
1834 | 1834 | } |
1835 | 1835 | |
1836 | - if ( !$is_eu_state || $no_vat || empty( $vat_number ) ) { |
|
1836 | + if (!$is_eu_state || $no_vat || empty($vat_number)) { |
|
1837 | 1837 | return; |
1838 | 1838 | } |
1839 | 1839 | |
1840 | - if ( !empty( $vat_saved ) && isset( $vat_saved['valid'] ) ) { |
|
1841 | - $vat_data['valid'] = $vat_saved['valid']; |
|
1840 | + if (!empty($vat_saved) && isset($vat_saved['valid'])) { |
|
1841 | + $vat_data['valid'] = $vat_saved['valid']; |
|
1842 | 1842 | } |
1843 | 1843 | |
1844 | - if ( $company !== null ) { |
|
1844 | + if ($company !== null) { |
|
1845 | 1845 | $vat_data['company'] = $company; |
1846 | 1846 | } |
1847 | 1847 | |
1848 | 1848 | $message = ''; |
1849 | - if ( $vat_number !== null ) { |
|
1849 | + if ($vat_number !== null) { |
|
1850 | 1850 | $vat_data['number'] = $vat_number; |
1851 | 1851 | |
1852 | - if ( !$vat_data['valid'] || ( $vat_saved['number'] !== $vat_data['number'] ) || ( $vat_saved['company'] !== $vat_data['company'] ) ) { |
|
1853 | - if ( !empty( $wpinv_options['vat_vies_check'] ) ) { |
|
1854 | - if ( empty( $wpinv_options['vat_offline_check'] ) && !self::offline_check( $vat_number ) ) { |
|
1852 | + if (!$vat_data['valid'] || ($vat_saved['number'] !== $vat_data['number']) || ($vat_saved['company'] !== $vat_data['company'])) { |
|
1853 | + if (!empty($wpinv_options['vat_vies_check'])) { |
|
1854 | + if (empty($wpinv_options['vat_offline_check']) && !self::offline_check($vat_number)) { |
|
1855 | 1855 | $vat_data['valid'] = false; |
1856 | 1856 | } |
1857 | 1857 | } else { |
1858 | - $result = self::check_vat( $vat_number ); |
|
1858 | + $result = self::check_vat($vat_number); |
|
1859 | 1859 | |
1860 | - if ( !empty( $result['valid'] ) ) { |
|
1860 | + if (!empty($result['valid'])) { |
|
1861 | 1861 | $vat_data['valid'] = true; |
1862 | - $vies_company = !empty( $result['company'] ) ? $result['company'] : ''; |
|
1863 | - $vies_company = apply_filters( 'wpinv_vies_company_name', $vies_company ); |
|
1862 | + $vies_company = !empty($result['company']) ? $result['company'] : ''; |
|
1863 | + $vies_company = apply_filters('wpinv_vies_company_name', $vies_company); |
|
1864 | 1864 | |
1865 | - $valid_company = $vies_company && $company && ( $vies_company == '---' || strcasecmp( trim( $vies_company ), trim( $company ) ) == 0 ) ? true : false; |
|
1865 | + $valid_company = $vies_company && $company && ($vies_company == '---' || strcasecmp(trim($vies_company), trim($company)) == 0) ? true : false; |
|
1866 | 1866 | |
1867 | - if ( !( !empty( $wpinv_options['vat_disable_company_name_check'] ) || $valid_company ) ) { |
|
1867 | + if (!(!empty($wpinv_options['vat_disable_company_name_check']) || $valid_company)) { |
|
1868 | 1868 | $vat_data['valid'] = false; |
1869 | 1869 | |
1870 | - $message = wp_sprintf( __( 'The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing' ), $vat_name ); |
|
1870 | + $message = wp_sprintf(__('The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing'), $vat_name); |
|
1871 | 1871 | } |
1872 | 1872 | } else { |
1873 | - $message = wp_sprintf( __( 'Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing' ), $vat_name ); |
|
1873 | + $message = wp_sprintf(__('Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing'), $vat_name); |
|
1874 | 1874 | } |
1875 | 1875 | } |
1876 | 1876 | |
1877 | - if ( !$vat_data['valid'] ) { |
|
1878 | - $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 . ' )' : '' ); |
|
1879 | - wpinv_set_error( 'vat_validation', $error ); |
|
1877 | + if (!$vat_data['valid']) { |
|
1878 | + $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 . ' )' : ''); |
|
1879 | + wpinv_set_error('vat_validation', $error); |
|
1880 | 1880 | } |
1881 | 1881 | } |
1882 | 1882 | } |
1883 | 1883 | |
1884 | - $wpi_session->set( 'user_vat_data', $vat_data ); |
|
1884 | + $wpi_session->set('user_vat_data', $vat_data); |
|
1885 | 1885 | } |
1886 | 1886 | |
1887 | - public static function checkout_vat_fields( $billing_details ) { |
|
1887 | + public static function checkout_vat_fields($billing_details) { |
|
1888 | 1888 | global $wpi_session, $wpinv_options, $wpi_country, $wpi_requires_vat; |
1889 | 1889 | |
1890 | 1890 | $ip_address = wpinv_get_ip(); |
1891 | 1891 | $ip_country_code = self::get_country_by_ip(); |
1892 | 1892 | |
1893 | - $tax_label = __( self::get_vat_name(), 'invoicing' ); |
|
1893 | + $tax_label = __(self::get_vat_name(), 'invoicing'); |
|
1894 | 1894 | $invoice = wpinv_get_invoice_cart(); |
1895 | - $is_digital = self::invoice_has_digital_rule( $invoice ); |
|
1895 | + $is_digital = self::invoice_has_digital_rule($invoice); |
|
1896 | 1896 | $wpi_country = $invoice->country; |
1897 | 1897 | |
1898 | - $requires_vat = !self::hide_vat_fields() && $invoice->get_total() > 0 && self::requires_vat( 0, false, $is_digital ); |
|
1898 | + $requires_vat = !self::hide_vat_fields() && $invoice->get_total() > 0 && self::requires_vat(0, false, $is_digital); |
|
1899 | 1899 | $wpi_requires_vat = $requires_vat; |
1900 | 1900 | |
1901 | 1901 | $company = is_user_logged_in() ? self::get_user_company() : ''; |
1902 | 1902 | $vat_number = self::get_user_vat_number(); |
1903 | 1903 | |
1904 | - $validated = $vat_number ? self::get_user_vat_number( '', 0, true ) : 1; |
|
1905 | - $vat_info = $wpi_session->get( 'user_vat_data' ); |
|
1904 | + $validated = $vat_number ? self::get_user_vat_number('', 0, true) : 1; |
|
1905 | + $vat_info = $wpi_session->get('user_vat_data'); |
|
1906 | 1906 | |
1907 | - if ( is_array( $vat_info ) ) { |
|
1908 | - $company = isset( $vat_info['company'] ) ? $vat_info['company'] : ''; |
|
1909 | - $vat_number = isset( $vat_info['number'] ) ? $vat_info['number'] : ''; |
|
1910 | - $validated = isset( $vat_info['valid'] ) ? $vat_info['valid'] : false; |
|
1907 | + if (is_array($vat_info)) { |
|
1908 | + $company = isset($vat_info['company']) ? $vat_info['company'] : ''; |
|
1909 | + $vat_number = isset($vat_info['number']) ? $vat_info['number'] : ''; |
|
1910 | + $validated = isset($vat_info['valid']) ? $vat_info['valid'] : false; |
|
1911 | 1911 | } |
1912 | 1912 | |
1913 | 1913 | $selected_country = $invoice->country ? $invoice->country : wpinv_default_billing_country(); |
1914 | 1914 | |
1915 | - if ( $ip_country_code == 'UK' ) { |
|
1915 | + if ($ip_country_code == 'UK') { |
|
1916 | 1916 | $ip_country_code = 'GB'; |
1917 | 1917 | } |
1918 | 1918 | |
1919 | - if ( $selected_country == 'UK' ) { |
|
1919 | + if ($selected_country == 'UK') { |
|
1920 | 1920 | $selected_country = 'GB'; |
1921 | 1921 | } |
1922 | 1922 | |
1923 | - if ( $requires_vat && ( self::same_country_rule() == 'no' && wpinv_is_base_country( $selected_country ) || !self::allow_vat_rules() ) ) { |
|
1923 | + if ($requires_vat && (self::same_country_rule() == 'no' && wpinv_is_base_country($selected_country) || !self::allow_vat_rules())) { |
|
1924 | 1924 | $requires_vat = false; |
1925 | 1925 | } |
1926 | 1926 | |
@@ -1928,52 +1928,52 @@ discard block |
||
1928 | 1928 | $display_validate_btn = 'none'; |
1929 | 1929 | $display_reset_btn = 'none'; |
1930 | 1930 | |
1931 | - if ( !empty( $vat_number ) && $validated ) { |
|
1932 | - $vat_vailidated_text = wp_sprintf( __( '%s number validated', 'invoicing' ), $tax_label ); |
|
1931 | + if (!empty($vat_number) && $validated) { |
|
1932 | + $vat_vailidated_text = wp_sprintf(__('%s number validated', 'invoicing'), $tax_label); |
|
1933 | 1933 | $vat_vailidated_class = 'wpinv-vat-stat-1'; |
1934 | 1934 | $display_reset_btn = 'block'; |
1935 | 1935 | } else { |
1936 | - $vat_vailidated_text = empty( $vat_number ) ? '' : wp_sprintf( __( '%s number not validated', 'invoicing' ), $tax_label ); |
|
1937 | - $vat_vailidated_class = empty( $vat_number ) ? '' : 'wpinv-vat-stat-0'; |
|
1936 | + $vat_vailidated_text = empty($vat_number) ? '' : wp_sprintf(__('%s number not validated', 'invoicing'), $tax_label); |
|
1937 | + $vat_vailidated_class = empty($vat_number) ? '' : 'wpinv-vat-stat-0'; |
|
1938 | 1938 | $display_validate_btn = 'block'; |
1939 | 1939 | } |
1940 | 1940 | |
1941 | - $show_ip_country = $is_digital && ( empty( $vat_number ) || !$requires_vat ) && $ip_country_code != $selected_country ? 'block' : 'none'; |
|
1941 | + $show_ip_country = $is_digital && (empty($vat_number) || !$requires_vat) && $ip_country_code != $selected_country ? 'block' : 'none'; |
|
1942 | 1942 | ?> |
1943 | 1943 | <div id="wpi-vat-details" class="wpi-vat-details clearfix" style="display:<?php echo $display_vat_details; ?>"> |
1944 | 1944 | <div id="wpi_vat_info" class="clearfix panel panel-default"> |
1945 | - <div class="panel-heading"><h3 class="panel-title"><?php echo wp_sprintf( __( '%s Details', 'invoicing' ), $tax_label );?></h3></div> |
|
1945 | + <div class="panel-heading"><h3 class="panel-title"><?php echo wp_sprintf(__('%s Details', 'invoicing'), $tax_label); ?></h3></div> |
|
1946 | 1946 | <div id="wpinv-fields-box" class="panel-body"> |
1947 | 1947 | <p id="wpi_show_vat_note"> |
1948 | - <?php echo wp_sprintf( __( 'Validate your registered %s number to exclude tax.', 'invoicing' ), $tax_label ); ?> |
|
1948 | + <?php echo wp_sprintf(__('Validate your registered %s number to exclude tax.', 'invoicing'), $tax_label); ?> |
|
1949 | 1949 | </p> |
1950 | 1950 | <div id="wpi_vat_fields" class="wpi_vat_info"> |
1951 | 1951 | <p class="wpi-cart-field wpi-col2 wpi-colf"> |
1952 | - <label for="wpinv_company" class="wpi-label"><?php _e( 'Company Name', 'invoicing' );?></label> |
|
1952 | + <label for="wpinv_company" class="wpi-label"><?php _e('Company Name', 'invoicing'); ?></label> |
|
1953 | 1953 | <?php |
1954 | - echo wpinv_html_text( array( |
|
1954 | + echo wpinv_html_text(array( |
|
1955 | 1955 | 'id' => 'wpinv_company', |
1956 | 1956 | 'name' => 'wpinv_company', |
1957 | 1957 | 'value' => $company, |
1958 | 1958 | 'class' => 'wpi-input form-control', |
1959 | - 'placeholder' => __( 'Company name', 'invoicing' ), |
|
1960 | - ) ); |
|
1959 | + 'placeholder' => __('Company name', 'invoicing'), |
|
1960 | + )); |
|
1961 | 1961 | ?> |
1962 | 1962 | </p> |
1963 | 1963 | <p class="wpi-cart-field wpi-col2 wpi-coll wpi-cart-field-vat"> |
1964 | - <label for="wpinv_vat_number" class="wpi-label"><?php echo wp_sprintf( __( '%s Number', 'invoicing' ), $tax_label );?></label> |
|
1964 | + <label for="wpinv_vat_number" class="wpi-label"><?php echo wp_sprintf(__('%s Number', 'invoicing'), $tax_label); ?></label> |
|
1965 | 1965 | <span id="wpinv_vat_number-wrap"> |
1966 | 1966 | <label for="wpinv_vat_number" class="wpinv-label"></label> |
1967 | - <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"> |
|
1968 | - <span class="wpinv-vat-stat <?php echo $vat_vailidated_class;?>"><i class="fa"></i> <font><?php echo $vat_vailidated_text;?></font></span> |
|
1967 | + <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"> |
|
1968 | + <span class="wpinv-vat-stat <?php echo $vat_vailidated_class; ?>"><i class="fa"></i> <font><?php echo $vat_vailidated_text; ?></font></span> |
|
1969 | 1969 | </span> |
1970 | 1970 | </p> |
1971 | 1971 | <p class="wpi-cart-field wpi-col wpi-colf wpi-cart-field-actions"> |
1972 | - <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> |
|
1973 | - <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> |
|
1972 | + <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> |
|
1973 | + <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> |
|
1974 | 1974 | <span class="wpi-vat-box wpi-vat-box-info"><span id="text"></span></span> |
1975 | 1975 | <span class="wpi-vat-box wpi-vat-box-error"><span id="text"></span></span> |
1976 | - <input type="hidden" name="_wpi_nonce" value="<?php echo wp_create_nonce( 'vat_validation' ) ?>" /> |
|
1976 | + <input type="hidden" name="_wpi_nonce" value="<?php echo wp_create_nonce('vat_validation') ?>" /> |
|
1977 | 1977 | </p> |
1978 | 1978 | </div> |
1979 | 1979 | </div> |
@@ -1987,32 +1987,32 @@ discard block |
||
1987 | 1987 | </span> |
1988 | 1988 | </div> |
1989 | 1989 | </div> |
1990 | - <?php if ( empty( $wpinv_options['hide_ip_address'] ) ) { |
|
1991 | - $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>'; |
|
1990 | + <?php if (empty($wpinv_options['hide_ip_address'])) { |
|
1991 | + $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>'; |
|
1992 | 1992 | ?> |
1993 | 1993 | <div class="wpi-ip-info clearfix panel panel-info"> |
1994 | 1994 | <div id="wpinv-fields-box" class="panel-body"> |
1995 | - <span><?php echo wp_sprintf( __( "Your IP address is: %s", 'invoicing' ), $ip_link ); ?></span> |
|
1995 | + <span><?php echo wp_sprintf(__("Your IP address is: %s", 'invoicing'), $ip_link); ?></span> |
|
1996 | 1996 | </div> |
1997 | 1997 | </div> |
1998 | 1998 | <?php } |
1999 | 1999 | } |
2000 | 2000 | |
2001 | - public static function show_vat_notice( $invoice ) { |
|
2002 | - if ( empty( $invoice ) ) { |
|
2001 | + public static function show_vat_notice($invoice) { |
|
2002 | + if (empty($invoice)) { |
|
2003 | 2003 | return NULL; |
2004 | 2004 | } |
2005 | 2005 | |
2006 | - $label = wpinv_get_option( 'vat_invoice_notice_label' ); |
|
2007 | - $notice = wpinv_get_option( 'vat_invoice_notice' ); |
|
2008 | - if ( $label || $notice ) { |
|
2006 | + $label = wpinv_get_option('vat_invoice_notice_label'); |
|
2007 | + $notice = wpinv_get_option('vat_invoice_notice'); |
|
2008 | + if ($label || $notice) { |
|
2009 | 2009 | ?> |
2010 | 2010 | <div class="row wpinv-vat-notice"> |
2011 | 2011 | <div class="col-sm-12"> |
2012 | - <?php if ( $label ) { ?> |
|
2013 | - <strong><?php _e( $label, 'invoicing' ); ?></strong> |
|
2014 | - <?php } if ( $notice ) { ?> |
|
2015 | - <?php echo wpautop( wptexturize( __( $notice, 'invoicing' ) ) ) ?> |
|
2012 | + <?php if ($label) { ?> |
|
2013 | + <strong><?php _e($label, 'invoicing'); ?></strong> |
|
2014 | + <?php } if ($notice) { ?> |
|
2015 | + <?php echo wpautop(wptexturize(__($notice, 'invoicing'))) ?> |
|
2016 | 2016 | <?php } ?> |
2017 | 2017 | </div> |
2018 | 2018 | </div> |
@@ -1,19 +1,19 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // Exit if accessed directly |
3 | -if ( ! defined( 'ABSPATH' ) ) exit; |
|
3 | +if (!defined('ABSPATH')) exit; |
|
4 | 4 | |
5 | -function wpinv_get_item_by( $field = '', $value = '', $type = '' ) { |
|
6 | - if( empty( $field ) || empty( $value ) ) { |
|
5 | +function wpinv_get_item_by($field = '', $value = '', $type = '') { |
|
6 | + if (empty($field) || empty($value)) { |
|
7 | 7 | return false; |
8 | 8 | } |
9 | 9 | |
10 | 10 | $posts = array(); |
11 | 11 | |
12 | - switch( strtolower( $field ) ) { |
|
12 | + switch (strtolower($field)) { |
|
13 | 13 | case 'id': |
14 | - $item = get_post( $value ); |
|
14 | + $item = get_post($value); |
|
15 | 15 | |
16 | - if( get_post_type( $item ) != 'wpi_item' ) { |
|
16 | + if (get_post_type($item) != 'wpi_item') { |
|
17 | 17 | return false; |
18 | 18 | } |
19 | 19 | |
@@ -21,16 +21,16 @@ discard block |
||
21 | 21 | |
22 | 22 | case 'slug': |
23 | 23 | case 'name': |
24 | - $posts = get_posts( array( |
|
24 | + $posts = get_posts(array( |
|
25 | 25 | 'post_type' => 'wpi_item', |
26 | 26 | 'name' => $value, |
27 | 27 | 'posts_per_page' => 1, |
28 | 28 | 'post_status' => 'any' |
29 | - ) ); |
|
29 | + )); |
|
30 | 30 | |
31 | 31 | break; |
32 | 32 | case 'package_id': |
33 | - $posts = get_posts( array( |
|
33 | + $posts = get_posts(array( |
|
34 | 34 | 'post_type' => 'wpi_item', |
35 | 35 | 'posts_per_page' => 1, |
36 | 36 | 'post_status' => 'any', |
@@ -46,11 +46,11 @@ discard block |
||
46 | 46 | 'value' => 'package', |
47 | 47 | ) |
48 | 48 | ) |
49 | - ) ); |
|
49 | + )); |
|
50 | 50 | |
51 | 51 | break; |
52 | 52 | case 'item_id': |
53 | - if ( empty( $value ) ) { |
|
53 | + if (empty($value)) { |
|
54 | 54 | return false; |
55 | 55 | } |
56 | 56 | |
@@ -59,7 +59,7 @@ discard block |
||
59 | 59 | 'key' => '_wpinv_post_id', |
60 | 60 | 'value' => $value, |
61 | 61 | ); |
62 | - if ( !empty( $type ) ) { |
|
62 | + if (!empty($type)) { |
|
63 | 63 | $meta_query[] = array( |
64 | 64 | 'key' => '_wpinv_type', |
65 | 65 | 'value' => $type, |
@@ -72,14 +72,14 @@ discard block |
||
72 | 72 | 'post_status' => 'any', |
73 | 73 | 'orderby' => 'ID', |
74 | 74 | 'order' => 'ASC', |
75 | - 'meta_query' => array( $meta_query ) |
|
75 | + 'meta_query' => array($meta_query) |
|
76 | 76 | ); |
77 | 77 | |
78 | - $posts = get_posts( $args ); |
|
78 | + $posts = get_posts($args); |
|
79 | 79 | |
80 | 80 | break; |
81 | 81 | case 'custom': |
82 | - if ( empty( $value ) || empty( $type ) ) { |
|
82 | + if (empty($value) || empty($type)) { |
|
83 | 83 | return false; |
84 | 84 | } |
85 | 85 | |
@@ -99,10 +99,10 @@ discard block |
||
99 | 99 | 'post_status' => 'any', |
100 | 100 | 'orderby' => 'ID', |
101 | 101 | 'order' => 'ASC', |
102 | - 'meta_query' => array( $meta_query ) |
|
102 | + 'meta_query' => array($meta_query) |
|
103 | 103 | ); |
104 | 104 | |
105 | - $posts = get_posts( $args ); |
|
105 | + $posts = get_posts($args); |
|
106 | 106 | |
107 | 107 | break; |
108 | 108 | |
@@ -110,17 +110,17 @@ discard block |
||
110 | 110 | return false; |
111 | 111 | } |
112 | 112 | |
113 | - if ( !empty( $posts[0] ) ) { |
|
114 | - return new WPInv_Item( $posts[0]->ID ); |
|
113 | + if (!empty($posts[0])) { |
|
114 | + return new WPInv_Item($posts[0]->ID); |
|
115 | 115 | } |
116 | 116 | |
117 | 117 | return false; |
118 | 118 | } |
119 | 119 | |
120 | -function wpinv_get_item( $item = 0 ) { |
|
121 | - if ( is_numeric( $item ) ) { |
|
122 | - $item = get_post( $item ); |
|
123 | - if ( ! $item || 'wpi_item' !== $item->post_type ) |
|
120 | +function wpinv_get_item($item = 0) { |
|
121 | + if (is_numeric($item)) { |
|
122 | + $item = get_post($item); |
|
123 | + if (!$item || 'wpi_item' !== $item->post_type) |
|
124 | 124 | return null; |
125 | 125 | return $item; |
126 | 126 | } |
@@ -133,136 +133,136 @@ discard block |
||
133 | 133 | |
134 | 134 | $item = get_posts($args); |
135 | 135 | |
136 | - if ( $item ) { |
|
136 | + if ($item) { |
|
137 | 137 | return $item[0]; |
138 | 138 | } |
139 | 139 | |
140 | 140 | return null; |
141 | 141 | } |
142 | 142 | |
143 | -function wpinv_is_free_item( $item_id = 0 ) { |
|
144 | - if( empty( $item_id ) ) { |
|
143 | +function wpinv_is_free_item($item_id = 0) { |
|
144 | + if (empty($item_id)) { |
|
145 | 145 | return false; |
146 | 146 | } |
147 | 147 | |
148 | - $item = new WPInv_Item( $item_id ); |
|
148 | + $item = new WPInv_Item($item_id); |
|
149 | 149 | |
150 | 150 | return $item->is_free(); |
151 | 151 | } |
152 | 152 | |
153 | -function wpinv_get_item_price( $item_id = 0 ) { |
|
154 | - if( empty( $item_id ) ) { |
|
153 | +function wpinv_get_item_price($item_id = 0) { |
|
154 | + if (empty($item_id)) { |
|
155 | 155 | return false; |
156 | 156 | } |
157 | 157 | |
158 | - $item = new WPInv_Item( $item_id ); |
|
158 | + $item = new WPInv_Item($item_id); |
|
159 | 159 | |
160 | 160 | return $item->get_price(); |
161 | 161 | } |
162 | 162 | |
163 | -function wpinv_is_recurring_item( $item_id = 0 ) { |
|
164 | - if( empty( $item_id ) ) { |
|
163 | +function wpinv_is_recurring_item($item_id = 0) { |
|
164 | + if (empty($item_id)) { |
|
165 | 165 | return false; |
166 | 166 | } |
167 | 167 | |
168 | - $item = new WPInv_Item( $item_id ); |
|
168 | + $item = new WPInv_Item($item_id); |
|
169 | 169 | |
170 | 170 | return $item->is_recurring(); |
171 | 171 | } |
172 | 172 | |
173 | -function wpinv_item_price( $item_id = 0 ) { |
|
174 | - if( empty( $item_id ) ) { |
|
173 | +function wpinv_item_price($item_id = 0) { |
|
174 | + if (empty($item_id)) { |
|
175 | 175 | return false; |
176 | 176 | } |
177 | 177 | |
178 | - $price = wpinv_get_item_price( $item_id ); |
|
179 | - $price = wpinv_price( wpinv_format_amount( $price ) ); |
|
178 | + $price = wpinv_get_item_price($item_id); |
|
179 | + $price = wpinv_price(wpinv_format_amount($price)); |
|
180 | 180 | |
181 | - return apply_filters( 'wpinv_item_price', $price, $item_id ); |
|
181 | + return apply_filters('wpinv_item_price', $price, $item_id); |
|
182 | 182 | } |
183 | 183 | |
184 | -function wpinv_item_show_price( $item_id = 0, $echo = true ) { |
|
185 | - if ( empty( $item_id ) ) { |
|
184 | +function wpinv_item_show_price($item_id = 0, $echo = true) { |
|
185 | + if (empty($item_id)) { |
|
186 | 186 | $item_id = get_the_ID(); |
187 | 187 | } |
188 | 188 | |
189 | - $price = wpinv_item_price( $item_id ); |
|
189 | + $price = wpinv_item_price($item_id); |
|
190 | 190 | |
191 | - $price = apply_filters( 'wpinv_item_price', wpinv_sanitize_amount( $price ), $item_id ); |
|
191 | + $price = apply_filters('wpinv_item_price', wpinv_sanitize_amount($price), $item_id); |
|
192 | 192 | $formatted_price = '<span class="wpinv_price" id="wpinv_item_' . $item_id . '">' . $price . '</span>'; |
193 | - $formatted_price = apply_filters( 'wpinv_item_price_after_html', $formatted_price, $item_id, $price ); |
|
193 | + $formatted_price = apply_filters('wpinv_item_price_after_html', $formatted_price, $item_id, $price); |
|
194 | 194 | |
195 | - if ( $echo ) { |
|
195 | + if ($echo) { |
|
196 | 196 | echo $formatted_price; |
197 | 197 | } else { |
198 | 198 | return $formatted_price; |
199 | 199 | } |
200 | 200 | } |
201 | 201 | |
202 | -function wpinv_get_item_final_price( $item_id = 0, $amount_override = null ) { |
|
203 | - if ( is_null( $amount_override ) ) { |
|
204 | - $original_price = get_post_meta( $item_id, '_wpinv_price', true ); |
|
202 | +function wpinv_get_item_final_price($item_id = 0, $amount_override = null) { |
|
203 | + if (is_null($amount_override)) { |
|
204 | + $original_price = get_post_meta($item_id, '_wpinv_price', true); |
|
205 | 205 | } else { |
206 | 206 | $original_price = $amount_override; |
207 | 207 | } |
208 | 208 | |
209 | 209 | $price = $original_price; |
210 | 210 | |
211 | - return apply_filters( 'wpinv_get_item_final_price', $price, $item_id ); |
|
211 | + return apply_filters('wpinv_get_item_final_price', $price, $item_id); |
|
212 | 212 | } |
213 | 213 | |
214 | -function wpinv_item_cpt_singular_name( $item_id ) { |
|
215 | - if( empty( $item_id ) ) { |
|
214 | +function wpinv_item_cpt_singular_name($item_id) { |
|
215 | + if (empty($item_id)) { |
|
216 | 216 | return false; |
217 | 217 | } |
218 | 218 | |
219 | - $item = new WPInv_Item( $item_id ); |
|
219 | + $item = new WPInv_Item($item_id); |
|
220 | 220 | |
221 | 221 | return $item->get_cpt_singular_name(); |
222 | 222 | } |
223 | 223 | |
224 | 224 | function wpinv_get_item_types() { |
225 | 225 | $item_types = array( |
226 | - 'custom' => __( 'Standard', 'invoicing' ), |
|
227 | - 'fee' => __( 'Fee', 'invoicing' ), |
|
226 | + 'custom' => __('Standard', 'invoicing'), |
|
227 | + 'fee' => __('Fee', 'invoicing'), |
|
228 | 228 | ); |
229 | - return apply_filters( 'wpinv_get_item_types', $item_types ); |
|
229 | + return apply_filters('wpinv_get_item_types', $item_types); |
|
230 | 230 | } |
231 | 231 | |
232 | 232 | function wpinv_item_types() { |
233 | 233 | $item_types = wpinv_get_item_types(); |
234 | 234 | |
235 | - return ( !empty( $item_types ) ? array_keys( $item_types ) : array() ); |
|
235 | + return (!empty($item_types) ? array_keys($item_types) : array()); |
|
236 | 236 | } |
237 | 237 | |
238 | -function wpinv_get_item_type( $item_id ) { |
|
239 | - if( empty( $item_id ) ) { |
|
238 | +function wpinv_get_item_type($item_id) { |
|
239 | + if (empty($item_id)) { |
|
240 | 240 | return false; |
241 | 241 | } |
242 | 242 | |
243 | - $item = new WPInv_Item( $item_id ); |
|
243 | + $item = new WPInv_Item($item_id); |
|
244 | 244 | |
245 | 245 | return $item->get_type(); |
246 | 246 | } |
247 | 247 | |
248 | -function wpinv_item_type( $item_id ) { |
|
248 | +function wpinv_item_type($item_id) { |
|
249 | 249 | $item_types = wpinv_get_item_types(); |
250 | 250 | |
251 | - $item_type = wpinv_get_item_type( $item_id ); |
|
251 | + $item_type = wpinv_get_item_type($item_id); |
|
252 | 252 | |
253 | - if ( empty( $item_type ) ) { |
|
253 | + if (empty($item_type)) { |
|
254 | 254 | $item_type = '-'; |
255 | 255 | } |
256 | 256 | |
257 | - $item_type = isset( $item_types[$item_type] ) ? $item_types[$item_type] : __( $item_type, 'invoicing' ); |
|
257 | + $item_type = isset($item_types[$item_type]) ? $item_types[$item_type] : __($item_type, 'invoicing'); |
|
258 | 258 | |
259 | - return apply_filters( 'wpinv_item_type', $item_type, $item_id ); |
|
259 | + return apply_filters('wpinv_item_type', $item_type, $item_id); |
|
260 | 260 | } |
261 | 261 | |
262 | -function wpinv_record_item_in_log( $item_id = 0, $file_id, $user_info, $ip, $invoice_id ) { |
|
262 | +function wpinv_record_item_in_log($item_id = 0, $file_id, $user_info, $ip, $invoice_id) { |
|
263 | 263 | global $wpinv_logs; |
264 | 264 | |
265 | - if ( empty( $wpinv_logs ) ) { |
|
265 | + if (empty($wpinv_logs)) { |
|
266 | 266 | return false; |
267 | 267 | } |
268 | 268 | |
@@ -271,7 +271,7 @@ discard block |
||
271 | 271 | 'log_type' => 'wpi_item' |
272 | 272 | ); |
273 | 273 | |
274 | - $user_id = isset( $user_info['user_id'] ) ? $user_info['user_id'] : (int) -1; |
|
274 | + $user_id = isset($user_info['user_id']) ? $user_info['user_id'] : (int) -1; |
|
275 | 275 | |
276 | 276 | $log_meta = array( |
277 | 277 | 'user_info' => $user_info, |
@@ -281,247 +281,247 @@ discard block |
||
281 | 281 | 'invoice_id'=> $invoice_id, |
282 | 282 | ); |
283 | 283 | |
284 | - $wpinv_logs->insert_log( $log_data, $log_meta ); |
|
284 | + $wpinv_logs->insert_log($log_data, $log_meta); |
|
285 | 285 | } |
286 | 286 | |
287 | -function wpinv_remove_item_logs_on_delete( $item_id = 0 ) { |
|
288 | - if ( 'wpi_item' !== get_post_type( $item_id ) ) |
|
287 | +function wpinv_remove_item_logs_on_delete($item_id = 0) { |
|
288 | + if ('wpi_item' !== get_post_type($item_id)) |
|
289 | 289 | return; |
290 | 290 | |
291 | 291 | global $wpinv_logs; |
292 | 292 | |
293 | - if ( empty( $wpinv_logs ) ) { |
|
293 | + if (empty($wpinv_logs)) { |
|
294 | 294 | return false; |
295 | 295 | } |
296 | 296 | |
297 | 297 | // Remove all log entries related to this item |
298 | - $wpinv_logs->delete_logs( $item_id ); |
|
298 | + $wpinv_logs->delete_logs($item_id); |
|
299 | 299 | } |
300 | -add_action( 'delete_post', 'wpinv_remove_item_logs_on_delete' ); |
|
300 | +add_action('delete_post', 'wpinv_remove_item_logs_on_delete'); |
|
301 | 301 | |
302 | -function wpinv_get_random_item( $post_ids = true ) { |
|
303 | - wpinv_get_random_items( 1, $post_ids ); |
|
302 | +function wpinv_get_random_item($post_ids = true) { |
|
303 | + wpinv_get_random_items(1, $post_ids); |
|
304 | 304 | } |
305 | 305 | |
306 | -function wpinv_get_random_items( $num = 3, $post_ids = true ) { |
|
307 | - if ( $post_ids ) { |
|
308 | - $args = array( 'post_type' => 'wpi_item', 'orderby' => 'rand', 'post_count' => $num, 'fields' => 'ids' ); |
|
306 | +function wpinv_get_random_items($num = 3, $post_ids = true) { |
|
307 | + if ($post_ids) { |
|
308 | + $args = array('post_type' => 'wpi_item', 'orderby' => 'rand', 'post_count' => $num, 'fields' => 'ids'); |
|
309 | 309 | } else { |
310 | - $args = array( 'post_type' => 'wpi_item', 'orderby' => 'rand', 'post_count' => $num ); |
|
310 | + $args = array('post_type' => 'wpi_item', 'orderby' => 'rand', 'post_count' => $num); |
|
311 | 311 | } |
312 | 312 | |
313 | - $args = apply_filters( 'wpinv_get_random_items', $args ); |
|
313 | + $args = apply_filters('wpinv_get_random_items', $args); |
|
314 | 314 | |
315 | - return get_posts( $args ); |
|
315 | + return get_posts($args); |
|
316 | 316 | } |
317 | 317 | |
318 | -function wpinv_get_item_token( $url = '' ) { |
|
318 | +function wpinv_get_item_token($url = '') { |
|
319 | 319 | $args = array(); |
320 | - $hash = apply_filters( 'wpinv_get_url_token_algorithm', 'sha256' ); |
|
321 | - $secret = apply_filters( 'wpinv_get_url_token_secret', hash( $hash, wp_salt() ) ); |
|
320 | + $hash = apply_filters('wpinv_get_url_token_algorithm', 'sha256'); |
|
321 | + $secret = apply_filters('wpinv_get_url_token_secret', hash($hash, wp_salt())); |
|
322 | 322 | |
323 | - $parts = parse_url( $url ); |
|
323 | + $parts = parse_url($url); |
|
324 | 324 | $options = array(); |
325 | 325 | |
326 | - if ( isset( $parts['query'] ) ) { |
|
327 | - wp_parse_str( $parts['query'], $query_args ); |
|
326 | + if (isset($parts['query'])) { |
|
327 | + wp_parse_str($parts['query'], $query_args); |
|
328 | 328 | |
329 | - if ( ! empty( $query_args['o'] ) ) { |
|
330 | - $options = explode( ':', rawurldecode( $query_args['o'] ) ); |
|
329 | + if (!empty($query_args['o'])) { |
|
330 | + $options = explode(':', rawurldecode($query_args['o'])); |
|
331 | 331 | |
332 | - if ( in_array( 'ip', $options ) ) { |
|
332 | + if (in_array('ip', $options)) { |
|
333 | 333 | $args['ip'] = wpinv_get_ip(); |
334 | 334 | } |
335 | 335 | |
336 | - if ( in_array( 'ua', $options ) ) { |
|
336 | + if (in_array('ua', $options)) { |
|
337 | 337 | $ua = wpinv_get_user_agent(); |
338 | - $args['user_agent'] = rawurlencode( $ua ); |
|
338 | + $args['user_agent'] = rawurlencode($ua); |
|
339 | 339 | } |
340 | 340 | } |
341 | 341 | } |
342 | 342 | |
343 | - $args = apply_filters( 'wpinv_get_url_token_args', $args, $url, $options ); |
|
343 | + $args = apply_filters('wpinv_get_url_token_args', $args, $url, $options); |
|
344 | 344 | |
345 | 345 | $args['secret'] = $secret; |
346 | 346 | $args['token'] = false; |
347 | 347 | |
348 | - $url = add_query_arg( $args, $url ); |
|
349 | - $parts = parse_url( $url ); |
|
348 | + $url = add_query_arg($args, $url); |
|
349 | + $parts = parse_url($url); |
|
350 | 350 | |
351 | - if ( ! isset( $parts['path'] ) ) { |
|
351 | + if (!isset($parts['path'])) { |
|
352 | 352 | $parts['path'] = ''; |
353 | 353 | } |
354 | 354 | |
355 | - $token = md5( $parts['path'] . '?' . $parts['query'] ); |
|
355 | + $token = md5($parts['path'] . '?' . $parts['query']); |
|
356 | 356 | |
357 | 357 | return $token; |
358 | 358 | } |
359 | 359 | |
360 | -function wpinv_validate_url_token( $url = '' ) { |
|
360 | +function wpinv_validate_url_token($url = '') { |
|
361 | 361 | $ret = false; |
362 | - $parts = parse_url( $url ); |
|
362 | + $parts = parse_url($url); |
|
363 | 363 | |
364 | - if ( isset( $parts['query'] ) ) { |
|
365 | - wp_parse_str( $parts['query'], $query_args ); |
|
364 | + if (isset($parts['query'])) { |
|
365 | + wp_parse_str($parts['query'], $query_args); |
|
366 | 366 | |
367 | - $allowed = apply_filters( 'wpinv_url_token_allowed_params', array( |
|
367 | + $allowed = apply_filters('wpinv_url_token_allowed_params', array( |
|
368 | 368 | 'item', |
369 | 369 | 'ttl', |
370 | 370 | 'token' |
371 | - ) ); |
|
371 | + )); |
|
372 | 372 | |
373 | 373 | $remove = array(); |
374 | 374 | |
375 | - foreach( $query_args as $key => $value ) { |
|
376 | - if( false === in_array( $key, $allowed ) ) { |
|
375 | + foreach ($query_args as $key => $value) { |
|
376 | + if (false === in_array($key, $allowed)) { |
|
377 | 377 | $remove[] = $key; |
378 | 378 | } |
379 | 379 | } |
380 | 380 | |
381 | - if( ! empty( $remove ) ) { |
|
382 | - $url = remove_query_arg( $remove, $url ); |
|
381 | + if (!empty($remove)) { |
|
382 | + $url = remove_query_arg($remove, $url); |
|
383 | 383 | } |
384 | 384 | |
385 | - if ( isset( $query_args['ttl'] ) && current_time( 'timestamp' ) > $query_args['ttl'] ) { |
|
386 | - wp_die( apply_filters( 'wpinv_item_link_expired_text', __( 'Sorry but your item link has expired.', 'invoicing' ) ), __( 'Error', 'invoicing' ), array( 'response' => 403 ) ); |
|
385 | + if (isset($query_args['ttl']) && current_time('timestamp') > $query_args['ttl']) { |
|
386 | + wp_die(apply_filters('wpinv_item_link_expired_text', __('Sorry but your item link has expired.', 'invoicing')), __('Error', 'invoicing'), array('response' => 403)); |
|
387 | 387 | } |
388 | 388 | |
389 | - if ( isset( $query_args['token'] ) && $query_args['token'] == wpinv_get_item_token( $url ) ) { |
|
389 | + if (isset($query_args['token']) && $query_args['token'] == wpinv_get_item_token($url)) { |
|
390 | 390 | $ret = true; |
391 | 391 | } |
392 | 392 | |
393 | 393 | } |
394 | 394 | |
395 | - return apply_filters( 'wpinv_validate_url_token', $ret, $url, $query_args ); |
|
395 | + return apply_filters('wpinv_validate_url_token', $ret, $url, $query_args); |
|
396 | 396 | } |
397 | 397 | |
398 | -function wpinv_item_in_cart( $item_id = 0, $options = array() ) { |
|
398 | +function wpinv_item_in_cart($item_id = 0, $options = array()) { |
|
399 | 399 | $cart_items = wpinv_get_cart_contents(); |
400 | 400 | |
401 | 401 | $ret = false; |
402 | 402 | |
403 | - if ( is_array( $cart_items ) ) { |
|
404 | - foreach ( $cart_items as $item ) { |
|
405 | - if ( $item['id'] == $item_id ) { |
|
403 | + if (is_array($cart_items)) { |
|
404 | + foreach ($cart_items as $item) { |
|
405 | + if ($item['id'] == $item_id) { |
|
406 | 406 | $ret = true; |
407 | 407 | break; |
408 | 408 | } |
409 | 409 | } |
410 | 410 | } |
411 | 411 | |
412 | - return (bool) apply_filters( 'wpinv_item_in_cart', $ret, $item_id, $options ); |
|
412 | + return (bool)apply_filters('wpinv_item_in_cart', $ret, $item_id, $options); |
|
413 | 413 | } |
414 | 414 | |
415 | -function wpinv_get_cart_item_tax( $item_id = 0, $subtotal = '', $options = array() ) { |
|
415 | +function wpinv_get_cart_item_tax($item_id = 0, $subtotal = '', $options = array()) { |
|
416 | 416 | $tax = 0; |
417 | - if ( ! wpinv_item_is_tax_exclusive( $item_id ) ) { |
|
418 | - $country = !empty( $_POST['country'] ) ? $_POST['country'] : false; |
|
419 | - $state = isset( $_POST['state'] ) ? $_POST['state'] : ''; |
|
417 | + if (!wpinv_item_is_tax_exclusive($item_id)) { |
|
418 | + $country = !empty($_POST['country']) ? $_POST['country'] : false; |
|
419 | + $state = isset($_POST['state']) ? $_POST['state'] : ''; |
|
420 | 420 | |
421 | - $tax = wpinv_calculate_tax( $subtotal, $country, $state, $item_id ); |
|
421 | + $tax = wpinv_calculate_tax($subtotal, $country, $state, $item_id); |
|
422 | 422 | } |
423 | 423 | |
424 | - return apply_filters( 'wpinv_get_cart_item_tax', $tax, $item_id, $subtotal, $options ); |
|
424 | + return apply_filters('wpinv_get_cart_item_tax', $tax, $item_id, $subtotal, $options); |
|
425 | 425 | } |
426 | 426 | |
427 | -function wpinv_cart_item_price( $item ) { |
|
427 | +function wpinv_cart_item_price($item) { |
|
428 | 428 | $use_taxes = wpinv_use_taxes(); |
429 | - $item_id = isset( $item['id'] ) ? $item['id'] : 0; |
|
430 | - $price = isset( $item['item_price'] ) ? wpinv_format_amount( $item['item_price'] ) : 0; |
|
431 | - $options = isset( $item['options'] ) ? $item['options'] : array(); |
|
432 | - $price_id = isset( $options['price_id'] ) ? $options['price_id'] : false; |
|
433 | - $tax = wpinv_price( wpinv_format_amount( $item['tax'] ) ); |
|
434 | - |
|
435 | - if ( !wpinv_is_free_item( $item_id, $price_id ) && !wpinv_item_is_tax_exclusive( $item_id ) ) { |
|
436 | - if ( wpinv_prices_show_tax_on_checkout() && !wpinv_prices_include_tax() ) { |
|
429 | + $item_id = isset($item['id']) ? $item['id'] : 0; |
|
430 | + $price = isset($item['item_price']) ? wpinv_format_amount($item['item_price']) : 0; |
|
431 | + $options = isset($item['options']) ? $item['options'] : array(); |
|
432 | + $price_id = isset($options['price_id']) ? $options['price_id'] : false; |
|
433 | + $tax = wpinv_price(wpinv_format_amount($item['tax'])); |
|
434 | + |
|
435 | + if (!wpinv_is_free_item($item_id, $price_id) && !wpinv_item_is_tax_exclusive($item_id)) { |
|
436 | + if (wpinv_prices_show_tax_on_checkout() && !wpinv_prices_include_tax()) { |
|
437 | 437 | $price += $tax; |
438 | 438 | } |
439 | 439 | |
440 | - if( !wpinv_prices_show_tax_on_checkout() && wpinv_prices_include_tax() ) { |
|
440 | + if (!wpinv_prices_show_tax_on_checkout() && wpinv_prices_include_tax()) { |
|
441 | 441 | $price -= $tax; |
442 | 442 | } |
443 | 443 | } |
444 | 444 | |
445 | - $price = wpinv_price( wpinv_format_amount( $price ) ); |
|
445 | + $price = wpinv_price(wpinv_format_amount($price)); |
|
446 | 446 | |
447 | - return apply_filters( 'wpinv_cart_item_price_label', $price, $item ); |
|
447 | + return apply_filters('wpinv_cart_item_price_label', $price, $item); |
|
448 | 448 | } |
449 | 449 | |
450 | -function wpinv_cart_item_subtotal( $item ) { |
|
451 | - $subtotal = isset( $item['subtotal'] ) ? $item['subtotal'] : 0; |
|
452 | - $subtotal = wpinv_price( wpinv_format_amount( $subtotal ) ); |
|
450 | +function wpinv_cart_item_subtotal($item) { |
|
451 | + $subtotal = isset($item['subtotal']) ? $item['subtotal'] : 0; |
|
452 | + $subtotal = wpinv_price(wpinv_format_amount($subtotal)); |
|
453 | 453 | |
454 | - return apply_filters( 'wpinv_cart_item_subtotal_label', $subtotal, $item ); |
|
454 | + return apply_filters('wpinv_cart_item_subtotal_label', $subtotal, $item); |
|
455 | 455 | } |
456 | 456 | |
457 | -function wpinv_cart_item_tax( $item ) { |
|
457 | +function wpinv_cart_item_tax($item) { |
|
458 | 458 | $tax = ''; |
459 | 459 | $tax_rate = ''; |
460 | 460 | |
461 | - if ( isset( $item['tax'] ) && $item['tax'] > 0 && $item['subtotal'] > 0 ) { |
|
462 | - $tax = wpinv_price( wpinv_format_amount( $item['tax'] ) ); |
|
463 | - $tax_rate = !empty( $item['vat_rate'] ) ? $item['vat_rate'] : ( $item['tax'] / $item['subtotal'] ) * 100; |
|
464 | - $tax_rate = $tax_rate > 0 ? (float)wpinv_format_amount( $tax_rate, 2 ) : ''; |
|
461 | + if (isset($item['tax']) && $item['tax'] > 0 && $item['subtotal'] > 0) { |
|
462 | + $tax = wpinv_price(wpinv_format_amount($item['tax'])); |
|
463 | + $tax_rate = !empty($item['vat_rate']) ? $item['vat_rate'] : ($item['tax'] / $item['subtotal']) * 100; |
|
464 | + $tax_rate = $tax_rate > 0 ? (float)wpinv_format_amount($tax_rate, 2) : ''; |
|
465 | 465 | $tax_rate = $tax_rate != '' ? ' <small class="tax-rate normal small">(' . $tax_rate . '%)</small>' : ''; |
466 | 466 | } |
467 | 467 | |
468 | - $tax = $tax . $tax_rate; |
|
468 | + $tax = $tax . $tax_rate; |
|
469 | 469 | |
470 | - if ( $tax === '' ) { |
|
470 | + if ($tax === '') { |
|
471 | 471 | $tax = 0; // Zero tax |
472 | 472 | } |
473 | 473 | |
474 | - return apply_filters( 'wpinv_cart_item_tax_label', $tax, $item ); |
|
474 | + return apply_filters('wpinv_cart_item_tax_label', $tax, $item); |
|
475 | 475 | } |
476 | 476 | |
477 | -function wpinv_get_cart_item_price( $item_id = 0, $options = array(), $remove_tax_from_inclusive = false ) { |
|
477 | +function wpinv_get_cart_item_price($item_id = 0, $options = array(), $remove_tax_from_inclusive = false) { |
|
478 | 478 | $price = 0; |
479 | - $variable_prices = wpinv_has_variable_prices( $item_id ); |
|
479 | + $variable_prices = wpinv_has_variable_prices($item_id); |
|
480 | 480 | |
481 | - if ( $variable_prices ) { |
|
482 | - $prices = wpinv_get_variable_prices( $item_id ); |
|
481 | + if ($variable_prices) { |
|
482 | + $prices = wpinv_get_variable_prices($item_id); |
|
483 | 483 | |
484 | - if ( $prices ) { |
|
485 | - if( ! empty( $options ) ) { |
|
486 | - $price = isset( $prices[ $options['price_id'] ] ) ? $prices[ $options['price_id'] ]['amount'] : false; |
|
484 | + if ($prices) { |
|
485 | + if (!empty($options)) { |
|
486 | + $price = isset($prices[$options['price_id']]) ? $prices[$options['price_id']]['amount'] : false; |
|
487 | 487 | } else { |
488 | 488 | $price = false; |
489 | 489 | } |
490 | 490 | } |
491 | 491 | } |
492 | 492 | |
493 | - if( ! $variable_prices || false === $price ) { |
|
493 | + if (!$variable_prices || false === $price) { |
|
494 | 494 | // Get the standard Item price if not using variable prices |
495 | - $price = wpinv_get_item_price( $item_id ); |
|
495 | + $price = wpinv_get_item_price($item_id); |
|
496 | 496 | } |
497 | 497 | |
498 | - if ( $remove_tax_from_inclusive && wpinv_prices_include_tax() ) { |
|
499 | - $price -= wpinv_get_cart_item_tax( $item_id, $price, $options ); |
|
498 | + if ($remove_tax_from_inclusive && wpinv_prices_include_tax()) { |
|
499 | + $price -= wpinv_get_cart_item_tax($item_id, $price, $options); |
|
500 | 500 | } |
501 | 501 | |
502 | - return apply_filters( 'wpinv_cart_item_price', $price, $item_id, $options ); |
|
502 | + return apply_filters('wpinv_cart_item_price', $price, $item_id, $options); |
|
503 | 503 | } |
504 | 504 | |
505 | -function wpinv_get_cart_item_price_id( $item = array() ) { |
|
506 | - if( isset( $item['item_number'] ) ) { |
|
507 | - $price_id = isset( $item['item_number']['options']['price_id'] ) ? $item['item_number']['options']['price_id'] : null; |
|
505 | +function wpinv_get_cart_item_price_id($item = array()) { |
|
506 | + if (isset($item['item_number'])) { |
|
507 | + $price_id = isset($item['item_number']['options']['price_id']) ? $item['item_number']['options']['price_id'] : null; |
|
508 | 508 | } else { |
509 | - $price_id = isset( $item['options']['price_id'] ) ? $item['options']['price_id'] : null; |
|
509 | + $price_id = isset($item['options']['price_id']) ? $item['options']['price_id'] : null; |
|
510 | 510 | } |
511 | 511 | return $price_id; |
512 | 512 | } |
513 | 513 | |
514 | -function wpinv_get_cart_item_price_name( $item = array() ) { |
|
515 | - $price_id = (int)wpinv_get_cart_item_price_id( $item ); |
|
516 | - $prices = wpinv_get_variable_prices( $item['id'] ); |
|
517 | - $name = ! empty( $prices[ $price_id ] ) ? $prices[ $price_id ]['name'] : ''; |
|
518 | - return apply_filters( 'wpinv_get_cart_item_price_name', $name, $item['id'], $price_id, $item ); |
|
514 | +function wpinv_get_cart_item_price_name($item = array()) { |
|
515 | + $price_id = (int)wpinv_get_cart_item_price_id($item); |
|
516 | + $prices = wpinv_get_variable_prices($item['id']); |
|
517 | + $name = !empty($prices[$price_id]) ? $prices[$price_id]['name'] : ''; |
|
518 | + return apply_filters('wpinv_get_cart_item_price_name', $name, $item['id'], $price_id, $item); |
|
519 | 519 | } |
520 | 520 | |
521 | -function wpinv_get_cart_item_name( $item = array() ) { |
|
522 | - $item_title = !empty( $item['name'] ) ? $item['name'] : get_the_title( $item['id'] ); |
|
521 | +function wpinv_get_cart_item_name($item = array()) { |
|
522 | + $item_title = !empty($item['name']) ? $item['name'] : get_the_title($item['id']); |
|
523 | 523 | |
524 | - if ( empty( $item_title ) ) { |
|
524 | + if (empty($item_title)) { |
|
525 | 525 | $item_title = $item['id']; |
526 | 526 | } |
527 | 527 | |
@@ -531,23 +531,23 @@ discard block |
||
531 | 531 | } |
532 | 532 | */ |
533 | 533 | |
534 | - return apply_filters( 'wpinv_get_cart_item_name', $item_title, $item['id'], $item ); |
|
534 | + return apply_filters('wpinv_get_cart_item_name', $item_title, $item['id'], $item); |
|
535 | 535 | } |
536 | 536 | |
537 | -function wpinv_has_variable_prices( $item_id = 0 ) { |
|
537 | +function wpinv_has_variable_prices($item_id = 0) { |
|
538 | 538 | return false; |
539 | 539 | } |
540 | 540 | |
541 | -function wpinv_get_item_position_in_cart( $item_id = 0, $options = array() ) { |
|
541 | +function wpinv_get_item_position_in_cart($item_id = 0, $options = array()) { |
|
542 | 542 | $cart_items = wpinv_get_cart_contents(); |
543 | 543 | |
544 | - if ( !is_array( $cart_items ) ) { |
|
544 | + if (!is_array($cart_items)) { |
|
545 | 545 | return false; // Empty cart |
546 | 546 | } else { |
547 | - foreach ( $cart_items as $position => $item ) { |
|
548 | - if ( $item['id'] == $item_id ) { |
|
549 | - if ( isset( $options['price_id'] ) && isset( $item['options']['price_id'] ) ) { |
|
550 | - if ( (int) $options['price_id'] == (int) $item['options']['price_id'] ) { |
|
547 | + foreach ($cart_items as $position => $item) { |
|
548 | + if ($item['id'] == $item_id) { |
|
549 | + if (isset($options['price_id']) && isset($item['options']['price_id'])) { |
|
550 | + if ((int)$options['price_id'] == (int)$item['options']['price_id']) { |
|
551 | 551 | return $position; |
552 | 552 | } |
553 | 553 | } else { |
@@ -560,80 +560,80 @@ discard block |
||
560 | 560 | return false; // Not found |
561 | 561 | } |
562 | 562 | |
563 | -function wpinv_get_cart_item_quantity( $item ) { |
|
564 | - if ( wpinv_item_quantities_enabled() ) { |
|
565 | - $quantity = !empty( $item['quantity'] ) && (int)$item['quantity'] > 0 ? absint( $item['quantity'] ) : 1; |
|
563 | +function wpinv_get_cart_item_quantity($item) { |
|
564 | + if (wpinv_item_quantities_enabled()) { |
|
565 | + $quantity = !empty($item['quantity']) && (int)$item['quantity'] > 0 ? absint($item['quantity']) : 1; |
|
566 | 566 | } else { |
567 | 567 | $quantity = 1; |
568 | 568 | } |
569 | 569 | |
570 | - if ( $quantity < 1 ) { |
|
570 | + if ($quantity < 1) { |
|
571 | 571 | $quantity = 1; |
572 | 572 | } |
573 | 573 | |
574 | - return apply_filters( 'wpinv_get_cart_item_quantity', $quantity, $item ); |
|
574 | + return apply_filters('wpinv_get_cart_item_quantity', $quantity, $item); |
|
575 | 575 | } |
576 | 576 | |
577 | -function wpinv_get_item_suffix( $item, $html = true ) { |
|
578 | - if ( empty( $item ) ) { |
|
577 | +function wpinv_get_item_suffix($item, $html = true) { |
|
578 | + if (empty($item)) { |
|
579 | 579 | return NULL; |
580 | 580 | } |
581 | 581 | |
582 | - if ( is_int( $item ) ) { |
|
583 | - $item = new WPInv_Item( $item ); |
|
582 | + if (is_int($item)) { |
|
583 | + $item = new WPInv_Item($item); |
|
584 | 584 | } |
585 | 585 | |
586 | - if ( !( is_object( $item ) && is_a( $item, 'WPInv_Item' ) ) ) { |
|
586 | + if (!(is_object($item) && is_a($item, 'WPInv_Item'))) { |
|
587 | 587 | return NULL; |
588 | 588 | } |
589 | 589 | |
590 | - $suffix = $item->is_recurring() ? ' <span class="wpi-suffix">' . __( '(r)', 'invoicing' ) . '</span>' : ''; |
|
590 | + $suffix = $item->is_recurring() ? ' <span class="wpi-suffix">' . __('(r)', 'invoicing') . '</span>' : ''; |
|
591 | 591 | |
592 | - if ( !$html && $suffix ) { |
|
593 | - $suffix = strip_tags( $suffix ); |
|
592 | + if (!$html && $suffix) { |
|
593 | + $suffix = strip_tags($suffix); |
|
594 | 594 | } |
595 | 595 | |
596 | - return apply_filters( 'wpinv_get_item_suffix', $suffix, $item, $html ); |
|
596 | + return apply_filters('wpinv_get_item_suffix', $suffix, $item, $html); |
|
597 | 597 | } |
598 | 598 | |
599 | -function wpinv_remove_item( $item = 0, $force_delete = false ) { |
|
600 | - if ( empty( $item ) ) { |
|
599 | +function wpinv_remove_item($item = 0, $force_delete = false) { |
|
600 | + if (empty($item)) { |
|
601 | 601 | return NULL; |
602 | 602 | } |
603 | 603 | |
604 | - if ( is_int( $item ) ) { |
|
605 | - $item = new WPInv_Item( $item ); |
|
604 | + if (is_int($item)) { |
|
605 | + $item = new WPInv_Item($item); |
|
606 | 606 | } |
607 | 607 | |
608 | - if ( !( is_object( $item ) && is_a( $item, 'WPInv_Item' ) ) ) { |
|
608 | + if (!(is_object($item) && is_a($item, 'WPInv_Item'))) { |
|
609 | 609 | return NULL; |
610 | 610 | } |
611 | 611 | |
612 | - do_action( 'wpinv_pre_delete_item', $item ); |
|
612 | + do_action('wpinv_pre_delete_item', $item); |
|
613 | 613 | |
614 | - wp_delete_post( $item->ID, $force_delete ); |
|
614 | + wp_delete_post($item->ID, $force_delete); |
|
615 | 615 | |
616 | - do_action( 'wpinv_post_delete_item', $item ); |
|
616 | + do_action('wpinv_post_delete_item', $item); |
|
617 | 617 | } |
618 | 618 | |
619 | -function wpinv_can_delete_item( $post_id ) { |
|
620 | - $return = current_user_can( 'manage_options' ) ? true : false; |
|
619 | +function wpinv_can_delete_item($post_id) { |
|
620 | + $return = current_user_can('manage_options') ? true : false; |
|
621 | 621 | |
622 | - if ( $return && wpinv_item_in_use( $post_id ) ) { |
|
622 | + if ($return && wpinv_item_in_use($post_id)) { |
|
623 | 623 | $return = false; // Don't delete item already use in invoices. |
624 | 624 | } |
625 | 625 | |
626 | - return apply_filters( 'wpinv_can_delete_item', $return, $post_id ); |
|
626 | + return apply_filters('wpinv_can_delete_item', $return, $post_id); |
|
627 | 627 | } |
628 | 628 | |
629 | 629 | function wpinv_admin_action_delete() { |
630 | 630 | $screen = get_current_screen(); |
631 | 631 | |
632 | - if ( !empty( $screen->post_type ) && $screen->post_type == 'wpi_item' && !empty( $_REQUEST['post'] ) && is_array( $_REQUEST['post'] ) ) { |
|
632 | + if (!empty($screen->post_type) && $screen->post_type == 'wpi_item' && !empty($_REQUEST['post']) && is_array($_REQUEST['post'])) { |
|
633 | 633 | $post_ids = array(); |
634 | 634 | |
635 | - foreach ( $_REQUEST['post'] as $post_id ) { |
|
636 | - if ( !wpinv_can_delete_item( $post_id ) ) { |
|
635 | + foreach ($_REQUEST['post'] as $post_id) { |
|
636 | + if (!wpinv_can_delete_item($post_id)) { |
|
637 | 637 | continue; |
638 | 638 | } |
639 | 639 | |
@@ -643,83 +643,83 @@ discard block |
||
643 | 643 | $_REQUEST['post'] = $post_ids; |
644 | 644 | } |
645 | 645 | } |
646 | -add_action( 'admin_action_trash', 'wpinv_admin_action_delete', -10 ); |
|
647 | -add_action( 'admin_action_delete', 'wpinv_admin_action_delete', -10 ); |
|
646 | +add_action('admin_action_trash', 'wpinv_admin_action_delete', -10); |
|
647 | +add_action('admin_action_delete', 'wpinv_admin_action_delete', -10); |
|
648 | 648 | |
649 | -function wpinv_check_delete_item( $check, $post, $force_delete ) { |
|
650 | - if ( $post->post_type == 'wpi_item' ) { |
|
651 | - if ( $force_delete && !wpinv_can_delete_item( $post->ID ) ) { |
|
649 | +function wpinv_check_delete_item($check, $post, $force_delete) { |
|
650 | + if ($post->post_type == 'wpi_item') { |
|
651 | + if ($force_delete && !wpinv_can_delete_item($post->ID)) { |
|
652 | 652 | return true; |
653 | 653 | } |
654 | 654 | } |
655 | 655 | |
656 | 656 | return $check; |
657 | 657 | } |
658 | -add_filter( 'pre_delete_post', 'wpinv_check_delete_item', 10, 3 ); |
|
658 | +add_filter('pre_delete_post', 'wpinv_check_delete_item', 10, 3); |
|
659 | 659 | |
660 | -function wpinv_item_in_use( $item_id ) { |
|
660 | +function wpinv_item_in_use($item_id) { |
|
661 | 661 | global $wpdb, $wpi_items_in_use; |
662 | 662 | |
663 | - if ( !$item_id > 0 ) { |
|
663 | + if (!$item_id > 0) { |
|
664 | 664 | return false; |
665 | 665 | } |
666 | 666 | |
667 | - if ( !empty( $wpi_items_in_use ) ) { |
|
668 | - if ( isset( $wpi_items_in_use[$item_id] ) ) { |
|
667 | + if (!empty($wpi_items_in_use)) { |
|
668 | + if (isset($wpi_items_in_use[$item_id])) { |
|
669 | 669 | return $wpi_items_in_use[$item_id]; |
670 | 670 | } |
671 | 671 | } else { |
672 | 672 | $wpi_items_in_use = array(); |
673 | 673 | } |
674 | 674 | |
675 | - $statuses = array_keys( wpinv_get_invoice_statuses( true ) ); |
|
675 | + $statuses = array_keys(wpinv_get_invoice_statuses(true)); |
|
676 | 676 | |
677 | - $query = "SELECT p.ID FROM " . $wpdb->posts . " AS p INNER JOIN " . $wpdb->postmeta . " AS pm ON p.ID = pm.post_id WHERE p.post_type = 'wpi_invoice' AND p.post_status IN( '" . implode( "','", $statuses ) . "' ) AND pm.meta_key = '_wpinv_item_ids' AND FIND_IN_SET( '" . (int)$item_id . "', pm.meta_value )"; |
|
678 | - $in_use = $wpdb->get_var( $query ) > 0 ? true : false; |
|
677 | + $query = "SELECT p.ID FROM " . $wpdb->posts . " AS p INNER JOIN " . $wpdb->postmeta . " AS pm ON p.ID = pm.post_id WHERE p.post_type = 'wpi_invoice' AND p.post_status IN( '" . implode("','", $statuses) . "' ) AND pm.meta_key = '_wpinv_item_ids' AND FIND_IN_SET( '" . (int)$item_id . "', pm.meta_value )"; |
|
678 | + $in_use = $wpdb->get_var($query) > 0 ? true : false; |
|
679 | 679 | |
680 | 680 | $wpi_items_in_use[$item_id] = $in_use; |
681 | 681 | |
682 | 682 | return $in_use; |
683 | 683 | } |
684 | 684 | |
685 | -function wpinv_create_item( $args = array(), $wp_error = false, $force_update = false ) { |
|
685 | +function wpinv_create_item($args = array(), $wp_error = false, $force_update = false) { |
|
686 | 686 | // Set some defaults |
687 | 687 | $defaults = array( |
688 | - 'type' => 'custom', // Optional. Item type. Default 'custom'. |
|
689 | - 'item_id' => 0, // Required. Any integer number. Must be unique within item type. |
|
690 | - 'title' => '', // Required. Item title. |
|
691 | - 'price' => '0.00', // Optional. Item price. Default '0.00'. |
|
692 | - 'status' => 'pending', // Optional. pending, publish |
|
693 | - 'vat_rule' => 'digital', // Optional. digital => Digital item, physical => Physical item |
|
694 | - 'cpt_singular_name' => '', // Optional. Sub title for item. Should be singular. |
|
695 | - 'cpt_name' => '', // Optional. Sub title for item. Should be plural. |
|
696 | - 'is_recurring' => 0, // Optional. 1 => Allow recurring or 0 => Don't allow recurring |
|
697 | - 'recurring_period' => 'M', // Optional. D => Daily, W => Weekly, M => Monthly, Y => Yearly |
|
698 | - 'recurring_interval' => 0, // Optional. Integer value between 1 - 90. |
|
699 | - 'recurring_limit' => 0, // Optional. Any integer number. 0 for recurring forever until cancelled. |
|
700 | - 'free_trial' => 0, // Optional. 1 => Allow free trial or 0 => Don't free trial |
|
701 | - 'trial_period' => 'M', // Optional. D => Daily, W => Weekly, M => Monthly, Y => Yearly |
|
702 | - 'trial_interval' => 0, // Optional. Any integer number. |
|
703 | - 'excerpt' => '', // Optional. Item short description |
|
688 | + 'type' => 'custom', // Optional. Item type. Default 'custom'. |
|
689 | + 'item_id' => 0, // Required. Any integer number. Must be unique within item type. |
|
690 | + 'title' => '', // Required. Item title. |
|
691 | + 'price' => '0.00', // Optional. Item price. Default '0.00'. |
|
692 | + 'status' => 'pending', // Optional. pending, publish |
|
693 | + 'vat_rule' => 'digital', // Optional. digital => Digital item, physical => Physical item |
|
694 | + 'cpt_singular_name' => '', // Optional. Sub title for item. Should be singular. |
|
695 | + 'cpt_name' => '', // Optional. Sub title for item. Should be plural. |
|
696 | + 'is_recurring' => 0, // Optional. 1 => Allow recurring or 0 => Don't allow recurring |
|
697 | + 'recurring_period' => 'M', // Optional. D => Daily, W => Weekly, M => Monthly, Y => Yearly |
|
698 | + 'recurring_interval' => 0, // Optional. Integer value between 1 - 90. |
|
699 | + 'recurring_limit' => 0, // Optional. Any integer number. 0 for recurring forever until cancelled. |
|
700 | + 'free_trial' => 0, // Optional. 1 => Allow free trial or 0 => Don't free trial |
|
701 | + 'trial_period' => 'M', // Optional. D => Daily, W => Weekly, M => Monthly, Y => Yearly |
|
702 | + 'trial_interval' => 0, // Optional. Any integer number. |
|
703 | + 'excerpt' => '', // Optional. Item short description |
|
704 | 704 | ); |
705 | 705 | |
706 | - $data = wp_parse_args( $args, $defaults ); |
|
706 | + $data = wp_parse_args($args, $defaults); |
|
707 | 707 | |
708 | - if ( empty( $data['item_id'] ) ) { |
|
709 | - if ( $wp_error ) { |
|
710 | - return new WP_Error( 'invalid_item_id', __( 'Invalid item ID.' ) ); |
|
708 | + if (empty($data['item_id'])) { |
|
709 | + if ($wp_error) { |
|
710 | + return new WP_Error('invalid_item_id', __('Invalid item ID.')); |
|
711 | 711 | } else { |
712 | 712 | return false; |
713 | 713 | } |
714 | 714 | } |
715 | 715 | |
716 | - if ( empty( $data['type'] ) ) { |
|
716 | + if (empty($data['type'])) { |
|
717 | 717 | $data['type'] = 'custom'; |
718 | 718 | } |
719 | 719 | |
720 | - $item = wpinv_get_item_by( 'item_id', $data['item_id'], $data['type'] ); |
|
720 | + $item = wpinv_get_item_by('item_id', $data['item_id'], $data['type']); |
|
721 | 721 | |
722 | - if ( !$force_update && !empty( $item ) ) { |
|
722 | + if (!$force_update && !empty($item)) { |
|
723 | 723 | return $item; |
724 | 724 | } |
725 | 725 | |
@@ -728,18 +728,18 @@ discard block |
||
728 | 728 | $meta['post_id'] = $data['item_id']; |
729 | 729 | $meta['cpt_singular_name'] = $data['cpt_singular_name']; |
730 | 730 | $meta['cpt_name'] = $data['cpt_name']; |
731 | - $meta['price'] = wpinv_format_amount( $data['price'], NULL, true ); |
|
731 | + $meta['price'] = wpinv_format_amount($data['price'], NULL, true); |
|
732 | 732 | $meta['vat_rule'] = $data['vat_rule']; |
733 | 733 | $meta['vat_class'] = '_standard'; |
734 | 734 | |
735 | - if ( !empty( $data['is_recurring'] ) ) { |
|
735 | + if (!empty($data['is_recurring'])) { |
|
736 | 736 | $meta['is_recurring'] = $data['is_recurring']; |
737 | 737 | $meta['recurring_period'] = $data['recurring_period']; |
738 | - $meta['recurring_interval'] = absint( $data['recurring_interval'] ); |
|
739 | - $meta['recurring_limit'] = absint( $data['recurring_limit'] ); |
|
738 | + $meta['recurring_interval'] = absint($data['recurring_interval']); |
|
739 | + $meta['recurring_limit'] = absint($data['recurring_limit']); |
|
740 | 740 | $meta['free_trial'] = $data['free_trial']; |
741 | 741 | $meta['trial_period'] = $data['trial_period']; |
742 | - $meta['trial_interval'] = absint( $data['trial_interval'] ); |
|
742 | + $meta['trial_interval'] = absint($data['trial_interval']); |
|
743 | 743 | } else { |
744 | 744 | $meta['is_recurring'] = 0; |
745 | 745 | $meta['recurring_period'] = ''; |
@@ -750,18 +750,18 @@ discard block |
||
750 | 750 | $meta['trial_interval'] = ''; |
751 | 751 | } |
752 | 752 | |
753 | - $post_data = array( |
|
753 | + $post_data = array( |
|
754 | 754 | 'post_title' => $data['title'], |
755 | 755 | 'post_excerpt' => $data['excerpt'], |
756 | 756 | 'post_status' => $data['status'], |
757 | 757 | 'meta' => $meta |
758 | 758 | ); |
759 | 759 | |
760 | - if ( !empty( $item ) ) { |
|
761 | - $item->update( $post_data, $wp_error ); |
|
760 | + if (!empty($item)) { |
|
761 | + $item->update($post_data, $wp_error); |
|
762 | 762 | } else { |
763 | 763 | $item = new WPInv_Item(); |
764 | - $item->create( $post_data, $wp_error ); |
|
764 | + $item->create($post_data, $wp_error); |
|
765 | 765 | } |
766 | 766 | |
767 | 767 | return $item; |
@@ -1,41 +1,41 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( !defined('ABSPATH') ) { |
|
2 | +if (!defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | global $post; |
6 | 6 | $invoice_id = $post->ID; |
7 | -$invoice = wpinv_get_invoice( $invoice_id ); |
|
8 | -if ( empty( $invoice ) ) { |
|
7 | +$invoice = wpinv_get_invoice($invoice_id); |
|
8 | +if (empty($invoice)) { |
|
9 | 9 | exit; |
10 | 10 | } |
11 | -$type = $post->post_type == 'wpi_invoice' ? __( 'Invoice', 'invoicing' ): __( 'Quotation', 'invoicing' ); |
|
12 | -do_action( 'wpinv_invoice_print_before_display', $invoice ); ?><!DOCTYPE html> |
|
11 | +$type = $post->post_type == 'wpi_invoice' ? __('Invoice', 'invoicing') : __('Quotation', 'invoicing'); |
|
12 | +do_action('wpinv_invoice_print_before_display', $invoice); ?><!DOCTYPE html> |
|
13 | 13 | <html <?php language_attributes(); ?>> |
14 | 14 | <head> |
15 | 15 | <meta charset="UTF-8"> |
16 | 16 | <title><?php wp_title() ?></title> |
17 | - <meta charset="<?php bloginfo( 'charset' ); ?>" /> |
|
17 | + <meta charset="<?php bloginfo('charset'); ?>" /> |
|
18 | 18 | <meta name="viewport" content="width=device-width, initial-scale=1"> |
19 | 19 | <meta name="robots" content="noindex,nofollow"> |
20 | 20 | |
21 | - <?php do_action( 'wpinv_invoice_print_head', $invoice ); ?> |
|
21 | + <?php do_action('wpinv_invoice_print_head', $invoice); ?> |
|
22 | 22 | </head> |
23 | 23 | <body class="body wpinv wpinv-print"> |
24 | - <?php do_action( 'wpinv_invoice_print_body_start', $invoice ); ?> |
|
24 | + <?php do_action('wpinv_invoice_print_body_start', $invoice); ?> |
|
25 | 25 | <div class="container wpinv-wrap"> |
26 | - <?php if ( $watermark = wpinv_watermark( $invoice_id ) ) { ?> |
|
27 | - <div class="watermark no-print"><p><?php echo esc_html( $watermark ) ?></p></div> |
|
26 | + <?php if ($watermark = wpinv_watermark($invoice_id)) { ?> |
|
27 | + <div class="watermark no-print"><p><?php echo esc_html($watermark) ?></p></div> |
|
28 | 28 | <?php } ?> |
29 | 29 | <!-- ///// Start PDF header --> |
30 | 30 | <htmlpageheader name="wpinv-pdf-header"> |
31 | - <?php do_action( 'wpinv_invoice_print_before_header', $invoice ); ?> |
|
31 | + <?php do_action('wpinv_invoice_print_before_header', $invoice); ?> |
|
32 | 32 | <div class="row wpinv-header"> |
33 | 33 | <div class="col-xs-6 wpinv-business"> |
34 | - <a target="_blank" href="<?php echo esc_url( wpinv_get_business_website() ); ?>"> |
|
35 | - <?php if ( $logo = wpinv_get_business_logo() ) { ?> |
|
36 | - <img class="logo" src="<?php echo esc_url( $logo ); ?>"> |
|
34 | + <a target="_blank" href="<?php echo esc_url(wpinv_get_business_website()); ?>"> |
|
35 | + <?php if ($logo = wpinv_get_business_logo()) { ?> |
|
36 | + <img class="logo" src="<?php echo esc_url($logo); ?>"> |
|
37 | 37 | <?php } else { ?> |
38 | - <h1><?php echo esc_html( wpinv_get_business_name() ); ?></h1> |
|
38 | + <h1><?php echo esc_html(wpinv_get_business_name()); ?></h1> |
|
39 | 39 | <?php } ?> |
40 | 40 | </a> |
41 | 41 | </div> |
@@ -44,56 +44,56 @@ discard block |
||
44 | 44 | <h2><?php echo $type; ?></h2> |
45 | 45 | </div> |
46 | 46 | </div> |
47 | - <?php do_action( 'wpinv_invoice_print_after_header', $invoice ); ?> |
|
47 | + <?php do_action('wpinv_invoice_print_after_header', $invoice); ?> |
|
48 | 48 | </htmlpageheader> |
49 | 49 | <!-- End PDF header ///// --> |
50 | 50 | |
51 | - <?php do_action( 'wpinv_invoice_print_before_top_content', $invoice ); ?> |
|
51 | + <?php do_action('wpinv_invoice_print_before_top_content', $invoice); ?> |
|
52 | 52 | <div class="row wpinv-top-content"> |
53 | 53 | <div class="col-xs-12 col-sm-6 wpinv-addresses"> |
54 | 54 | <div class="col-xs-12 wpinv-address wpinv-from-address"> |
55 | 55 | <?php wpinv_display_from_address(); ?> |
56 | 56 | </div> |
57 | 57 | <div class="col-xs-12 wpinv-address wpinv-to-address"> |
58 | - <?php wpinv_display_to_address( $invoice_id ); ?> |
|
58 | + <?php wpinv_display_to_address($invoice_id); ?> |
|
59 | 59 | </div> |
60 | 60 | </div> |
61 | 61 | <div class="col-xs-12 col-sm-6 wpinv-details"> |
62 | 62 | <div class="col-xs-12 wpinv-line-details"> |
63 | - <?php do_action( 'wpinv_invoice_print_before_details', $invoice ); ?> |
|
64 | - <?php wpinv_display_invoice_details( $invoice ); ?> |
|
65 | - <?php do_action( 'wpinv_invoice_print_after_details', $invoice ); ?> |
|
63 | + <?php do_action('wpinv_invoice_print_before_details', $invoice); ?> |
|
64 | + <?php wpinv_display_invoice_details($invoice); ?> |
|
65 | + <?php do_action('wpinv_invoice_print_after_details', $invoice); ?> |
|
66 | 66 | </div> |
67 | 67 | </div> |
68 | 68 | </div> |
69 | - <?php do_action( 'wpinv_invoice_print_after_top_content', $invoice ); ?> |
|
69 | + <?php do_action('wpinv_invoice_print_after_top_content', $invoice); ?> |
|
70 | 70 | |
71 | - <?php do_action( 'wpinv_invoice_print_middle', $invoice ); ?> |
|
71 | + <?php do_action('wpinv_invoice_print_middle', $invoice); ?> |
|
72 | 72 | |
73 | - <?php do_action( 'wpinv_invoice_print_before_line_items', $invoice ); ?> |
|
73 | + <?php do_action('wpinv_invoice_print_before_line_items', $invoice); ?> |
|
74 | 74 | <div class="row wpinv-items"> |
75 | 75 | <div class="col-sm-12 wpinv-line-items"> |
76 | - <?php wpinv_display_line_items( $invoice_id ); ?> |
|
76 | + <?php wpinv_display_line_items($invoice_id); ?> |
|
77 | 77 | </div> |
78 | 78 | </div> |
79 | - <?php do_action( 'wpinv_invoice_print_after_line_items', $invoice ); ?> |
|
79 | + <?php do_action('wpinv_invoice_print_after_line_items', $invoice); ?> |
|
80 | 80 | |
81 | 81 | <!-- ///// Start PDF footer --> |
82 | 82 | <htmlpagefooter name="wpinv-pdf-footer"> |
83 | - <?php do_action( 'wpinv_invoice_print_before_footer', $invoice ); ?> |
|
83 | + <?php do_action('wpinv_invoice_print_before_footer', $invoice); ?> |
|
84 | 84 | <div class="row wpinv-footer"> |
85 | 85 | <div class="col-sm-12"> |
86 | - <?php if ( $term_text = wpinv_get_terms_text() ) { ?> |
|
87 | - <div class="terms-text"><?php echo wpautop( $term_text ); ?></div> |
|
86 | + <?php if ($term_text = wpinv_get_terms_text()) { ?> |
|
87 | + <div class="terms-text"><?php echo wpautop($term_text); ?></div> |
|
88 | 88 | <?php } ?> |
89 | 89 | <div class="footer-text"><?php echo wpinv_get_business_footer(); ?></div> |
90 | - <div class="print-only"><?php _e( 'Page ', 'invoicing' ) ?> {PAGENO}/{nbpg}</div> |
|
90 | + <div class="print-only"><?php _e('Page ', 'invoicing') ?> {PAGENO}/{nbpg}</div> |
|
91 | 91 | </div> |
92 | 92 | </div> |
93 | - <?php do_action( 'wpinv_invoice_print_after_footer', $invoice ); ?> |
|
93 | + <?php do_action('wpinv_invoice_print_after_footer', $invoice); ?> |
|
94 | 94 | </htmlpagefooter> |
95 | 95 | <!-- End PDF footer ///// --> |
96 | 96 | </div><!-- END wpinv-wrap --> |
97 | - <?php do_action( 'wpinv_invoice_print_body_end', $invoice ); ?> |
|
97 | + <?php do_action('wpinv_invoice_print_body_end', $invoice); ?> |
|
98 | 98 | </body> |
99 | 99 | </html> |
100 | 100 | \ No newline at end of file |
@@ -7,15 +7,15 @@ 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 | class WPInv_Plugin { |
15 | 15 | private static $instance; |
16 | 16 | |
17 | 17 | public static function run() { |
18 | - if ( !isset( self::$instance ) && !( self::$instance instanceof WPInv_Plugin ) ) { |
|
18 | + if (!isset(self::$instance) && !(self::$instance instanceof WPInv_Plugin)) { |
|
19 | 19 | self::$instance = new WPInv_Plugin; |
20 | 20 | self::$instance->includes(); |
21 | 21 | self::$instance->actions(); |
@@ -23,7 +23,7 @@ discard block |
||
23 | 23 | self::$instance->reports = new WPInv_Reports(); |
24 | 24 | } |
25 | 25 | |
26 | - do_action( 'wpinv_loaded' ); |
|
26 | + do_action('wpinv_loaded'); |
|
27 | 27 | |
28 | 28 | return self::$instance; |
29 | 29 | } |
@@ -33,31 +33,31 @@ discard block |
||
33 | 33 | } |
34 | 34 | |
35 | 35 | public function define_constants() { |
36 | - define( 'WPINV_PLUGIN_DIR', plugin_dir_path( WPINV_PLUGIN_FILE ) ); |
|
37 | - define( 'WPINV_PLUGIN_URL', plugin_dir_url( WPINV_PLUGIN_FILE ) ); |
|
36 | + define('WPINV_PLUGIN_DIR', plugin_dir_path(WPINV_PLUGIN_FILE)); |
|
37 | + define('WPINV_PLUGIN_URL', plugin_dir_url(WPINV_PLUGIN_FILE)); |
|
38 | 38 | } |
39 | 39 | |
40 | 40 | private function actions() { |
41 | 41 | /* Internationalize the text strings used. */ |
42 | - add_action( 'plugins_loaded', array( &$this, 'plugins_loaded' ) ); |
|
42 | + add_action('plugins_loaded', array(&$this, 'plugins_loaded')); |
|
43 | 43 | |
44 | 44 | /* Perform actions on admin initialization. */ |
45 | - add_action( 'admin_init', array( &$this, 'admin_init') ); |
|
46 | - add_action( 'init', array( &$this, 'init' ), 3 ); |
|
47 | - add_action( 'init', array( 'WPInv_Shortcodes', 'init' ) ); |
|
48 | - add_action( 'init', array( &$this, 'wpinv_actions' ) ); |
|
45 | + add_action('admin_init', array(&$this, 'admin_init')); |
|
46 | + add_action('init', array(&$this, 'init'), 3); |
|
47 | + add_action('init', array('WPInv_Shortcodes', 'init')); |
|
48 | + add_action('init', array(&$this, 'wpinv_actions')); |
|
49 | 49 | |
50 | - if ( class_exists( 'BuddyPress' ) ) { |
|
51 | - add_action( 'bp_include', array( &$this, 'bp_invoicing_init' ) ); |
|
50 | + if (class_exists('BuddyPress')) { |
|
51 | + add_action('bp_include', array(&$this, 'bp_invoicing_init')); |
|
52 | 52 | } |
53 | 53 | |
54 | - add_action( 'wp_enqueue_scripts', array( &$this, 'enqueue_scripts' ) ); |
|
54 | + add_action('wp_enqueue_scripts', array(&$this, 'enqueue_scripts')); |
|
55 | 55 | |
56 | - if ( is_admin() ) { |
|
57 | - add_action( 'admin_enqueue_scripts', array( &$this, 'admin_enqueue_scripts' ) ); |
|
58 | - add_action( 'admin_body_class', array( &$this, 'admin_body_class' ) ); |
|
56 | + if (is_admin()) { |
|
57 | + add_action('admin_enqueue_scripts', array(&$this, 'admin_enqueue_scripts')); |
|
58 | + add_action('admin_body_class', array(&$this, 'admin_body_class')); |
|
59 | 59 | } else { |
60 | - add_filter( 'pre_get_posts', array( &$this, 'pre_get_posts' ) ); |
|
60 | + add_filter('pre_get_posts', array(&$this, 'pre_get_posts')); |
|
61 | 61 | } |
62 | 62 | |
63 | 63 | /** |
@@ -67,9 +67,9 @@ discard block |
||
67 | 67 | * |
68 | 68 | * @param WPInv_Plugin $this. Current WPInv_Plugin instance. Passed by reference. |
69 | 69 | */ |
70 | - do_action_ref_array( 'wpinv_actions', array( &$this ) ); |
|
70 | + do_action_ref_array('wpinv_actions', array(&$this)); |
|
71 | 71 | |
72 | - add_action( 'admin_init', array( &$this, 'activation_redirect') ); |
|
72 | + add_action('admin_init', array(&$this, 'activation_redirect')); |
|
73 | 73 | } |
74 | 74 | |
75 | 75 | public function plugins_loaded() { |
@@ -83,187 +83,187 @@ discard block |
||
83 | 83 | * @since 1.0 |
84 | 84 | */ |
85 | 85 | public function load_textdomain() { |
86 | - $locale = apply_filters( 'plugin_locale', get_locale(), 'invoicing' ); |
|
86 | + $locale = apply_filters('plugin_locale', get_locale(), 'invoicing'); |
|
87 | 87 | |
88 | - load_textdomain( 'invoicing', WP_LANG_DIR . '/invoicing/invoicing-' . $locale . '.mo' ); |
|
89 | - load_plugin_textdomain( 'invoicing', false, WPINV_PLUGIN_DIR . 'languages' ); |
|
88 | + load_textdomain('invoicing', WP_LANG_DIR . '/invoicing/invoicing-' . $locale . '.mo'); |
|
89 | + load_plugin_textdomain('invoicing', false, WPINV_PLUGIN_DIR . 'languages'); |
|
90 | 90 | |
91 | 91 | /** |
92 | 92 | * Define language constants. |
93 | 93 | */ |
94 | - require_once( WPINV_PLUGIN_DIR . 'language.php' ); |
|
94 | + require_once(WPINV_PLUGIN_DIR . 'language.php'); |
|
95 | 95 | } |
96 | 96 | |
97 | 97 | public function includes() { |
98 | 98 | global $wpinv_options; |
99 | 99 | |
100 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/register-settings.php' ); |
|
100 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/register-settings.php'); |
|
101 | 101 | $wpinv_options = wpinv_get_settings(); |
102 | 102 | |
103 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-post-types.php' ); |
|
104 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-email-functions.php' ); |
|
105 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-general-functions.php' ); |
|
106 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-helper-functions.php' ); |
|
107 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-tax-functions.php' ); |
|
108 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-template-functions.php' ); |
|
109 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-address-functions.php' ); |
|
110 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-invoice-functions.php' ); |
|
111 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-item-functions.php' ); |
|
112 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-discount-functions.php' ); |
|
113 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-gateway-functions.php' ); |
|
114 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-payment-functions.php' ); |
|
115 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-user-functions.php' ); |
|
116 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-gd-functions.php' ); |
|
117 | - require_once( WPINV_PLUGIN_DIR . 'includes/wpinv-error-functions.php' ); |
|
118 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-invoice.php' ); |
|
119 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-item.php' ); |
|
120 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-notes.php' ); |
|
121 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-session.php' ); |
|
122 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-ajax.php' ); |
|
123 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-api.php' ); |
|
124 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-reports.php' ); |
|
125 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-shortcodes.php' ); |
|
126 | - if ( !class_exists( 'Geodir_EUVat' ) ) { |
|
127 | - require_once( WPINV_PLUGIN_DIR . 'includes/libraries/wpinv-euvat/class-wpinv-euvat.php' ); |
|
103 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-post-types.php'); |
|
104 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-email-functions.php'); |
|
105 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-general-functions.php'); |
|
106 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-helper-functions.php'); |
|
107 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-tax-functions.php'); |
|
108 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-template-functions.php'); |
|
109 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-address-functions.php'); |
|
110 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-invoice-functions.php'); |
|
111 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-item-functions.php'); |
|
112 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-discount-functions.php'); |
|
113 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-gateway-functions.php'); |
|
114 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-payment-functions.php'); |
|
115 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-user-functions.php'); |
|
116 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-gd-functions.php'); |
|
117 | + require_once(WPINV_PLUGIN_DIR . 'includes/wpinv-error-functions.php'); |
|
118 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-invoice.php'); |
|
119 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-item.php'); |
|
120 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-notes.php'); |
|
121 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-session.php'); |
|
122 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-ajax.php'); |
|
123 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-api.php'); |
|
124 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-reports.php'); |
|
125 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-shortcodes.php'); |
|
126 | + if (!class_exists('Geodir_EUVat')) { |
|
127 | + require_once(WPINV_PLUGIN_DIR . 'includes/libraries/wpinv-euvat/class-wpinv-euvat.php'); |
|
128 | 128 | } |
129 | 129 | |
130 | - $gateways = array_keys( wpinv_get_enabled_payment_gateways() ); |
|
131 | - if ( !empty( $gateways ) ) { |
|
132 | - foreach ( $gateways as $gateway ) { |
|
133 | - if ( $gateway == 'manual' ) { |
|
130 | + $gateways = array_keys(wpinv_get_enabled_payment_gateways()); |
|
131 | + if (!empty($gateways)) { |
|
132 | + foreach ($gateways as $gateway) { |
|
133 | + if ($gateway == 'manual') { |
|
134 | 134 | continue; |
135 | 135 | } |
136 | 136 | |
137 | 137 | $gateway_file = WPINV_PLUGIN_DIR . 'includes/gateways/' . $gateway . '.php'; |
138 | 138 | |
139 | - if ( file_exists( $gateway_file ) ) { |
|
140 | - require_once( $gateway_file ); |
|
139 | + if (file_exists($gateway_file)) { |
|
140 | + require_once($gateway_file); |
|
141 | 141 | } |
142 | 142 | } |
143 | 143 | } |
144 | - require_once( WPINV_PLUGIN_DIR . 'includes/gateways/manual.php' ); |
|
145 | - |
|
146 | - if ( is_admin() ) { |
|
147 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/wpinv-admin-functions.php' ); |
|
148 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/admin-meta-boxes.php' ); |
|
149 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-details.php' ); |
|
150 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-items.php' ); |
|
151 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-notes.php' ); |
|
152 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-address.php' ); |
|
153 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/admin-pages.php' ); |
|
144 | + require_once(WPINV_PLUGIN_DIR . 'includes/gateways/manual.php'); |
|
145 | + |
|
146 | + if (is_admin()) { |
|
147 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/wpinv-admin-functions.php'); |
|
148 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/admin-meta-boxes.php'); |
|
149 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-details.php'); |
|
150 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-items.php'); |
|
151 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-notes.php'); |
|
152 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/meta-boxes/class-mb-invoice-address.php'); |
|
153 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/admin-pages.php'); |
|
154 | 154 | } |
155 | 155 | |
156 | 156 | // include css inliner |
157 | - if ( ! class_exists( 'Emogrifier' ) && class_exists( 'DOMDocument' ) ) { |
|
158 | - include_once( WPINV_PLUGIN_DIR . 'includes/libraries/class-emogrifier.php' ); |
|
157 | + if (!class_exists('Emogrifier') && class_exists('DOMDocument')) { |
|
158 | + include_once(WPINV_PLUGIN_DIR . 'includes/libraries/class-emogrifier.php'); |
|
159 | 159 | } |
160 | 160 | |
161 | - require_once( WPINV_PLUGIN_DIR . 'includes/admin/install.php' ); |
|
161 | + require_once(WPINV_PLUGIN_DIR . 'includes/admin/install.php'); |
|
162 | 162 | } |
163 | 163 | |
164 | 164 | public function init() { |
165 | 165 | } |
166 | 166 | |
167 | 167 | public function admin_init() { |
168 | - if (!(defined( 'DOING_AJAX' ) && DOING_AJAX)) { |
|
168 | + if (!(defined('DOING_AJAX') && DOING_AJAX)) { |
|
169 | 169 | } |
170 | 170 | |
171 | - add_action( 'admin_print_scripts-edit.php', array( &$this, 'admin_print_scripts_edit_php' ) ); |
|
171 | + add_action('admin_print_scripts-edit.php', array(&$this, 'admin_print_scripts_edit_php')); |
|
172 | 172 | } |
173 | 173 | |
174 | 174 | public function activation_redirect() { |
175 | 175 | // Bail if no activation redirect |
176 | - if ( !get_transient( '_wpinv_activation_redirect' ) ) { |
|
176 | + if (!get_transient('_wpinv_activation_redirect')) { |
|
177 | 177 | return; |
178 | 178 | } |
179 | 179 | |
180 | 180 | // Delete the redirect transient |
181 | - delete_transient( '_wpinv_activation_redirect' ); |
|
181 | + delete_transient('_wpinv_activation_redirect'); |
|
182 | 182 | |
183 | 183 | // Bail if activating from network, or bulk |
184 | - if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) { |
|
184 | + if (is_network_admin() || isset($_GET['activate-multi'])) { |
|
185 | 185 | return; |
186 | 186 | } |
187 | 187 | |
188 | - wp_safe_redirect( admin_url( 'admin.php?page=wpinv-settings&tab=general' ) ); |
|
188 | + wp_safe_redirect(admin_url('admin.php?page=wpinv-settings&tab=general')); |
|
189 | 189 | exit; |
190 | 190 | } |
191 | 191 | |
192 | 192 | public function enqueue_scripts() { |
193 | - $suffix = '';//defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
193 | + $suffix = ''; //defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
194 | 194 | |
195 | - wp_deregister_style( 'font-awesome' ); |
|
196 | - wp_register_style( 'font-awesome', '//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome' . $suffix . '.css', array(), '4.7.0' ); |
|
197 | - wp_enqueue_style( 'font-awesome' ); |
|
195 | + wp_deregister_style('font-awesome'); |
|
196 | + wp_register_style('font-awesome', '//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome' . $suffix . '.css', array(), '4.7.0'); |
|
197 | + wp_enqueue_style('font-awesome'); |
|
198 | 198 | |
199 | - wp_register_style( 'wpinv_front_style', WPINV_PLUGIN_URL . 'assets/css/invoice-front.css', array(), WPINV_VERSION ); |
|
200 | - wp_enqueue_style( 'wpinv_front_style' ); |
|
199 | + wp_register_style('wpinv_front_style', WPINV_PLUGIN_URL . 'assets/css/invoice-front.css', array(), WPINV_VERSION); |
|
200 | + wp_enqueue_style('wpinv_front_style'); |
|
201 | 201 | |
202 | 202 | // Register scripts |
203 | - wp_register_script( 'jquery-blockui', WPINV_PLUGIN_URL . 'assets/js/jquery.blockUI.min.js', array( 'jquery' ), '2.70', true ); |
|
204 | - wp_register_script( 'wpinv-front-script', WPINV_PLUGIN_URL . 'assets/js/invoice-front' . $suffix . '.js', array( 'jquery', 'wpinv-vat-script' ), WPINV_VERSION ); |
|
203 | + wp_register_script('jquery-blockui', WPINV_PLUGIN_URL . 'assets/js/jquery.blockUI.min.js', array('jquery'), '2.70', true); |
|
204 | + wp_register_script('wpinv-front-script', WPINV_PLUGIN_URL . 'assets/js/invoice-front' . $suffix . '.js', array('jquery', 'wpinv-vat-script'), WPINV_VERSION); |
|
205 | 205 | |
206 | 206 | $localize = array(); |
207 | - $localize['ajax_url'] = admin_url( 'admin-ajax.php' ); |
|
208 | - $localize['nonce'] = wp_create_nonce( 'wpinv-nonce' ); |
|
207 | + $localize['ajax_url'] = admin_url('admin-ajax.php'); |
|
208 | + $localize['nonce'] = wp_create_nonce('wpinv-nonce'); |
|
209 | 209 | $localize['currency_symbol'] = wpinv_currency_symbol(); |
210 | 210 | $localize['currency_pos'] = wpinv_currency_position(); |
211 | 211 | $localize['thousand_sep'] = wpinv_thousands_seperator(); |
212 | 212 | $localize['decimal_sep'] = wpinv_decimal_seperator(); |
213 | 213 | $localize['decimals'] = wpinv_decimals(); |
214 | 214 | |
215 | - $localize = apply_filters( 'wpinv_front_js_localize', $localize ); |
|
215 | + $localize = apply_filters('wpinv_front_js_localize', $localize); |
|
216 | 216 | |
217 | - wp_enqueue_script( 'jquery-blockui' ); |
|
218 | - wp_enqueue_script( 'wpinv-front-script' ); |
|
219 | - wp_localize_script( 'wpinv-front-script', 'WPInv', $localize ); |
|
217 | + wp_enqueue_script('jquery-blockui'); |
|
218 | + wp_enqueue_script('wpinv-front-script'); |
|
219 | + wp_localize_script('wpinv-front-script', 'WPInv', $localize); |
|
220 | 220 | } |
221 | 221 | |
222 | 222 | public function admin_enqueue_scripts() { |
223 | 223 | global $post, $pagenow; |
224 | 224 | |
225 | 225 | $post_type = wpinv_admin_post_type(); |
226 | - $suffix = '';//defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
226 | + $suffix = ''; //defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
227 | 227 | |
228 | - wp_deregister_style( 'font-awesome' ); |
|
229 | - wp_register_style( 'font-awesome', '//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome' . $suffix . '.css', array(), '4.7.0' ); |
|
230 | - wp_enqueue_style( 'font-awesome' ); |
|
228 | + wp_deregister_style('font-awesome'); |
|
229 | + wp_register_style('font-awesome', '//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome' . $suffix . '.css', array(), '4.7.0'); |
|
230 | + wp_enqueue_style('font-awesome'); |
|
231 | 231 | |
232 | - wp_register_style( 'jquery-ui-css', WPINV_PLUGIN_URL . 'assets/css/jquery-ui' . $suffix . '.css', array(), '1.8.16' ); |
|
233 | - wp_enqueue_style( 'jquery-ui-css' ); |
|
232 | + wp_register_style('jquery-ui-css', WPINV_PLUGIN_URL . 'assets/css/jquery-ui' . $suffix . '.css', array(), '1.8.16'); |
|
233 | + wp_enqueue_style('jquery-ui-css'); |
|
234 | 234 | |
235 | - wp_register_style( 'jquery-chosen', WPINV_PLUGIN_URL . 'assets/css/chosen' . $suffix . '.css', array(), '1.6.2' ); |
|
236 | - wp_enqueue_style( 'jquery-chosen' ); |
|
235 | + wp_register_style('jquery-chosen', WPINV_PLUGIN_URL . 'assets/css/chosen' . $suffix . '.css', array(), '1.6.2'); |
|
236 | + wp_enqueue_style('jquery-chosen'); |
|
237 | 237 | |
238 | - wp_register_script( 'jquery-chosen', WPINV_PLUGIN_URL . 'assets/js/chosen.jquery' . $suffix . '.js', array( 'jquery' ), '1.6.2' ); |
|
239 | - wp_enqueue_script( 'jquery-chosen' ); |
|
238 | + wp_register_script('jquery-chosen', WPINV_PLUGIN_URL . 'assets/js/chosen.jquery' . $suffix . '.js', array('jquery'), '1.6.2'); |
|
239 | + wp_enqueue_script('jquery-chosen'); |
|
240 | 240 | |
241 | - wp_register_style( 'wpinv_meta_box_style', WPINV_PLUGIN_URL . 'assets/css/meta-box.css', array(), WPINV_VERSION ); |
|
242 | - wp_enqueue_style( 'wpinv_meta_box_style' ); |
|
241 | + wp_register_style('wpinv_meta_box_style', WPINV_PLUGIN_URL . 'assets/css/meta-box.css', array(), WPINV_VERSION); |
|
242 | + wp_enqueue_style('wpinv_meta_box_style'); |
|
243 | 243 | |
244 | - wp_register_style( 'wpinv_admin_style', WPINV_PLUGIN_URL . 'assets/css/admin.css', array(), WPINV_VERSION ); |
|
245 | - wp_enqueue_style( 'wpinv_admin_style' ); |
|
244 | + wp_register_style('wpinv_admin_style', WPINV_PLUGIN_URL . 'assets/css/admin.css', array(), WPINV_VERSION); |
|
245 | + wp_enqueue_style('wpinv_admin_style'); |
|
246 | 246 | |
247 | - if ( $post_type == 'wpi_discount' || $post_type == 'wpi_invoice' && ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) ) { |
|
248 | - wp_enqueue_script( 'jquery-ui-datepicker' ); |
|
247 | + if ($post_type == 'wpi_discount' || $post_type == 'wpi_invoice' && ($pagenow == 'post-new.php' || $pagenow == 'post.php')) { |
|
248 | + wp_enqueue_script('jquery-ui-datepicker'); |
|
249 | 249 | } |
250 | 250 | |
251 | - wp_enqueue_style( 'wp-color-picker' ); |
|
252 | - wp_enqueue_script( 'wp-color-picker' ); |
|
251 | + wp_enqueue_style('wp-color-picker'); |
|
252 | + wp_enqueue_script('wp-color-picker'); |
|
253 | 253 | |
254 | - wp_register_script( 'jquery-blockui', WPINV_PLUGIN_URL . 'assets/js/jquery.blockUI.min.js', array( 'jquery' ), '2.70', true ); |
|
254 | + wp_register_script('jquery-blockui', WPINV_PLUGIN_URL . 'assets/js/jquery.blockUI.min.js', array('jquery'), '2.70', true); |
|
255 | 255 | |
256 | - wp_register_script( 'wpinv-admin-script', WPINV_PLUGIN_URL . 'assets/js/admin' . $suffix . '.js', array( 'jquery', 'jquery-blockui' ), WPINV_VERSION ); |
|
257 | - wp_enqueue_script( 'wpinv-admin-script' ); |
|
256 | + wp_register_script('wpinv-admin-script', WPINV_PLUGIN_URL . 'assets/js/admin' . $suffix . '.js', array('jquery', 'jquery-blockui'), WPINV_VERSION); |
|
257 | + wp_enqueue_script('wpinv-admin-script'); |
|
258 | 258 | |
259 | 259 | $localize = array(); |
260 | - $localize['ajax_url'] = admin_url( 'admin-ajax.php' ); |
|
261 | - $localize['post_ID'] = isset( $post->ID ) ? $post->ID : ''; |
|
262 | - $localize['wpinv_nonce'] = wp_create_nonce( 'wpinv-nonce' ); |
|
263 | - $localize['add_invoice_note_nonce'] = wp_create_nonce( 'add-invoice-note' ); |
|
264 | - $localize['delete_invoice_note_nonce'] = wp_create_nonce( 'delete-invoice-note' ); |
|
265 | - $localize['invoice_item_nonce'] = wp_create_nonce( 'invoice-item' ); |
|
266 | - $localize['billing_details_nonce'] = wp_create_nonce( 'get-billing-details' ); |
|
260 | + $localize['ajax_url'] = admin_url('admin-ajax.php'); |
|
261 | + $localize['post_ID'] = isset($post->ID) ? $post->ID : ''; |
|
262 | + $localize['wpinv_nonce'] = wp_create_nonce('wpinv-nonce'); |
|
263 | + $localize['add_invoice_note_nonce'] = wp_create_nonce('add-invoice-note'); |
|
264 | + $localize['delete_invoice_note_nonce'] = wp_create_nonce('delete-invoice-note'); |
|
265 | + $localize['invoice_item_nonce'] = wp_create_nonce('invoice-item'); |
|
266 | + $localize['billing_details_nonce'] = wp_create_nonce('get-billing-details'); |
|
267 | 267 | $localize['tax'] = wpinv_tax_amount(); |
268 | 268 | $localize['discount'] = wpinv_discount_amount(); |
269 | 269 | $localize['currency_symbol'] = wpinv_currency_symbol(); |
@@ -271,55 +271,55 @@ discard block |
||
271 | 271 | $localize['thousand_sep'] = wpinv_thousands_seperator(); |
272 | 272 | $localize['decimal_sep'] = wpinv_decimal_seperator(); |
273 | 273 | $localize['decimals'] = wpinv_decimals(); |
274 | - $localize['save_invoice'] = __( 'Save Invoice', 'invoicing' ); |
|
275 | - $localize['status_publish'] = wpinv_status_nicename( 'publish' ); |
|
276 | - $localize['status_pending'] = wpinv_status_nicename( 'pending' ); |
|
277 | - $localize['delete_tax_rate'] = __( 'Are you sure you wish to delete this tax rate?', 'invoicing' ); |
|
278 | - $localize['OneItemMin'] = __( 'Invoice must contain at least one item', 'invoicing' ); |
|
279 | - $localize['DeleteInvoiceItem'] = __( 'Are you sure you wish to delete this item?', 'invoicing' ); |
|
280 | - $localize['FillBillingDetails'] = __( 'Fill the user\'s billing information? This will remove any currently entered billing information', 'invoicing' ); |
|
281 | - $localize['confirmCalcTotals'] = __( 'Recalculate totals? This will recalculate totals based on the user billing country. If no billing country is set it will use the base country.', 'invoicing' ); |
|
282 | - $localize['AreYouSure'] = __( 'Are you sure?', 'invoicing' ); |
|
283 | - $localize['hasGD'] = wpinv_gd_active();; |
|
274 | + $localize['save_invoice'] = __('Save Invoice', 'invoicing'); |
|
275 | + $localize['status_publish'] = wpinv_status_nicename('publish'); |
|
276 | + $localize['status_pending'] = wpinv_status_nicename('pending'); |
|
277 | + $localize['delete_tax_rate'] = __('Are you sure you wish to delete this tax rate?', 'invoicing'); |
|
278 | + $localize['OneItemMin'] = __('Invoice must contain at least one item', 'invoicing'); |
|
279 | + $localize['DeleteInvoiceItem'] = __('Are you sure you wish to delete this item?', 'invoicing'); |
|
280 | + $localize['FillBillingDetails'] = __('Fill the user\'s billing information? This will remove any currently entered billing information', 'invoicing'); |
|
281 | + $localize['confirmCalcTotals'] = __('Recalculate totals? This will recalculate totals based on the user billing country. If no billing country is set it will use the base country.', 'invoicing'); |
|
282 | + $localize['AreYouSure'] = __('Are you sure?', 'invoicing'); |
|
283 | + $localize['hasGD'] = wpinv_gd_active(); ; |
|
284 | 284 | $localize['hasPM'] = wpinv_pm_active(); |
285 | - $localize['emptyInvoice'] = __( 'Add atleast one item to save invoice!', 'invoicing' ); |
|
286 | - $localize['deletePackage'] = __( 'GD package items should be deleted from GD payment manager only, otherwise it will break invoices that created with this package!', 'invoicing' ); |
|
287 | - $localize['deletePackages'] = __( 'GD package items should be deleted from GD payment manager only', 'invoicing' ); |
|
288 | - $localize['deleteInvoiceFirst'] = __( 'This item is in use! Before delete this item, you need to delete all the invoice(s) using this item.', 'invoicing' ); |
|
285 | + $localize['emptyInvoice'] = __('Add atleast one item to save invoice!', 'invoicing'); |
|
286 | + $localize['deletePackage'] = __('GD package items should be deleted from GD payment manager only, otherwise it will break invoices that created with this package!', 'invoicing'); |
|
287 | + $localize['deletePackages'] = __('GD package items should be deleted from GD payment manager only', 'invoicing'); |
|
288 | + $localize['deleteInvoiceFirst'] = __('This item is in use! Before delete this item, you need to delete all the invoice(s) using this item.', 'invoicing'); |
|
289 | 289 | |
290 | - wp_localize_script( 'wpinv-admin-script', 'WPInv_Admin', $localize ); |
|
290 | + wp_localize_script('wpinv-admin-script', 'WPInv_Admin', $localize); |
|
291 | 291 | } |
292 | 292 | |
293 | - public function admin_body_class( $classes ) { |
|
293 | + public function admin_body_class($classes) { |
|
294 | 294 | global $pagenow; |
295 | 295 | |
296 | - $page = isset( $_GET['page'] ) ? strtolower( $_GET['page'] ) : false; |
|
296 | + $page = isset($_GET['page']) ? strtolower($_GET['page']) : false; |
|
297 | 297 | |
298 | 298 | $add_class = false; |
299 | - if ( $pagenow == 'admin.php' && $page ) { |
|
300 | - $add_class = strpos( $page, 'wpinv-' ); |
|
299 | + if ($pagenow == 'admin.php' && $page) { |
|
300 | + $add_class = strpos($page, 'wpinv-'); |
|
301 | 301 | } |
302 | 302 | |
303 | 303 | $settings_class = array(); |
304 | - if ( $page == 'wpinv-settings' ) { |
|
305 | - if ( !empty( $_REQUEST['tab'] ) ) { |
|
306 | - $settings_class[] = sanitize_text_field( $_REQUEST['tab'] ); |
|
304 | + if ($page == 'wpinv-settings') { |
|
305 | + if (!empty($_REQUEST['tab'])) { |
|
306 | + $settings_class[] = sanitize_text_field($_REQUEST['tab']); |
|
307 | 307 | } |
308 | 308 | |
309 | - if ( !empty( $_REQUEST['section'] ) ) { |
|
310 | - $settings_class[] = sanitize_text_field( $_REQUEST['section'] ); |
|
309 | + if (!empty($_REQUEST['section'])) { |
|
310 | + $settings_class[] = sanitize_text_field($_REQUEST['section']); |
|
311 | 311 | } |
312 | 312 | |
313 | - $settings_class[] = isset( $_REQUEST['wpi_sub'] ) && $_REQUEST['wpi_sub'] !== '' ? sanitize_text_field( $_REQUEST['wpi_sub'] ) : 'main'; |
|
313 | + $settings_class[] = isset($_REQUEST['wpi_sub']) && $_REQUEST['wpi_sub'] !== '' ? sanitize_text_field($_REQUEST['wpi_sub']) : 'main'; |
|
314 | 314 | } |
315 | 315 | |
316 | - if ( !empty( $settings_class ) ) { |
|
317 | - $classes .= ' wpi-' . wpinv_sanitize_key( implode( $settings_class, '-' ) ); |
|
316 | + if (!empty($settings_class)) { |
|
317 | + $classes .= ' wpi-' . wpinv_sanitize_key(implode($settings_class, '-')); |
|
318 | 318 | } |
319 | 319 | |
320 | 320 | $post_type = wpinv_admin_post_type(); |
321 | 321 | |
322 | - if ( $post_type == 'wpi_invoice' || $post_type == 'wpi_quote' || $add_class !== false ) { |
|
322 | + if ($post_type == 'wpi_invoice' || $post_type == 'wpi_quote' || $add_class !== false) { |
|
323 | 323 | return $classes .= ' wpinv'; |
324 | 324 | } else { |
325 | 325 | return $classes; |
@@ -331,26 +331,26 @@ discard block |
||
331 | 331 | public function admin_print_scripts_edit_php() { |
332 | 332 | $post_type = wpinv_admin_post_type(); |
333 | 333 | |
334 | - if ( $post_type == 'wpi_item' ) { |
|
335 | - wp_enqueue_script( 'wpinv-inline-edit-post', WPINV_PLUGIN_URL . 'assets/js/quick-edit.js', array( 'jquery', 'inline-edit-post' ), '', true ); |
|
334 | + if ($post_type == 'wpi_item') { |
|
335 | + wp_enqueue_script('wpinv-inline-edit-post', WPINV_PLUGIN_URL . 'assets/js/quick-edit.js', array('jquery', 'inline-edit-post'), '', true); |
|
336 | 336 | } |
337 | 337 | } |
338 | 338 | |
339 | 339 | public function wpinv_actions() { |
340 | - if ( isset( $_REQUEST['wpi_action'] ) ) { |
|
341 | - do_action( 'wpinv_' . wpinv_sanitize_key( $_REQUEST['wpi_action'] ), $_REQUEST ); |
|
340 | + if (isset($_REQUEST['wpi_action'])) { |
|
341 | + do_action('wpinv_' . wpinv_sanitize_key($_REQUEST['wpi_action']), $_REQUEST); |
|
342 | 342 | } |
343 | 343 | } |
344 | 344 | |
345 | - public function pre_get_posts( $wp_query ) { |
|
346 | - if ( !empty( $wp_query->query_vars['post_type'] ) && $wp_query->query_vars['post_type'] == 'wpi_invoice' && is_user_logged_in() && is_single() && $wp_query->is_main_query() ) { |
|
347 | - $wp_query->query_vars['post_status'] = array_keys( wpinv_get_invoice_statuses() ); |
|
345 | + public function pre_get_posts($wp_query) { |
|
346 | + if (!empty($wp_query->query_vars['post_type']) && $wp_query->query_vars['post_type'] == 'wpi_invoice' && is_user_logged_in() && is_single() && $wp_query->is_main_query()) { |
|
347 | + $wp_query->query_vars['post_status'] = array_keys(wpinv_get_invoice_statuses()); |
|
348 | 348 | } |
349 | 349 | |
350 | 350 | return $wp_query; |
351 | 351 | } |
352 | 352 | |
353 | 353 | public function bp_invoicing_init() { |
354 | - require_once( WPINV_PLUGIN_DIR . 'includes/class-wpinv-bp-core.php' ); |
|
354 | + require_once(WPINV_PLUGIN_DIR . 'includes/class-wpinv-bp-core.php'); |
|
355 | 355 | } |
356 | 356 | } |
357 | 357 | \ No newline at end of file |
@@ -1,65 +1,65 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // MUST have WordPress. |
3 | -if ( !defined( 'WPINC' ) ) { |
|
4 | - exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) ); |
|
3 | +if (!defined('WPINC')) { |
|
4 | + exit('Do NOT access this file directly: ' . basename(__FILE__)); |
|
5 | 5 | } |
6 | 6 | |
7 | -function wpinv_add_meta_boxes( $post_type, $post ) { |
|
7 | +function wpinv_add_meta_boxes($post_type, $post) { |
|
8 | 8 | global $wpi_mb_invoice; |
9 | - if ( $post_type == 'wpi_invoice' && !empty( $post->ID ) ) { |
|
10 | - $wpi_mb_invoice = wpinv_get_invoice( $post->ID ); |
|
9 | + if ($post_type == 'wpi_invoice' && !empty($post->ID)) { |
|
10 | + $wpi_mb_invoice = wpinv_get_invoice($post->ID); |
|
11 | 11 | } |
12 | 12 | |
13 | - if ( !empty( $wpi_mb_invoice ) && !$wpi_mb_invoice->has_status( array( 'draft', 'auto-draft' ) ) ) { |
|
14 | - add_meta_box( 'wpinv-mb-resend-invoice', __( 'Resend Invoice', 'invoicing' ), 'WPInv_Meta_Box_Details::resend_invoice', 'wpi_invoice', 'side', 'high' ); |
|
13 | + if (!empty($wpi_mb_invoice) && !$wpi_mb_invoice->has_status(array('draft', 'auto-draft'))) { |
|
14 | + add_meta_box('wpinv-mb-resend-invoice', __('Resend Invoice', 'invoicing'), 'WPInv_Meta_Box_Details::resend_invoice', 'wpi_invoice', 'side', 'high'); |
|
15 | 15 | } |
16 | 16 | |
17 | - if ( !empty( $wpi_mb_invoice ) && $wpi_mb_invoice->is_recurring() && $wpi_mb_invoice->is_parent() ) { |
|
18 | - add_meta_box( 'wpinv-mb-subscriptions', __( 'Subscriptions', 'invoicing' ), 'WPInv_Meta_Box_Details::subscriptions', 'wpi_invoice', 'side', 'high' ); |
|
17 | + if (!empty($wpi_mb_invoice) && $wpi_mb_invoice->is_recurring() && $wpi_mb_invoice->is_parent()) { |
|
18 | + add_meta_box('wpinv-mb-subscriptions', __('Subscriptions', 'invoicing'), 'WPInv_Meta_Box_Details::subscriptions', 'wpi_invoice', 'side', 'high'); |
|
19 | 19 | } |
20 | 20 | |
21 | - if ( wpinv_is_subscription_payment( $wpi_mb_invoice ) ) { |
|
22 | - add_meta_box( 'wpinv-mb-renewals', __( 'Renewal Payment', 'invoicing' ), 'WPInv_Meta_Box_Details::renewals', 'wpi_invoice', 'side', 'high' ); |
|
21 | + if (wpinv_is_subscription_payment($wpi_mb_invoice)) { |
|
22 | + add_meta_box('wpinv-mb-renewals', __('Renewal Payment', 'invoicing'), 'WPInv_Meta_Box_Details::renewals', 'wpi_invoice', 'side', 'high'); |
|
23 | 23 | } |
24 | 24 | |
25 | - add_meta_box( 'wpinv-details', __( 'Invoice Details', 'invoicing' ), 'WPInv_Meta_Box_Details::output', 'wpi_invoice', 'side', 'default' ); |
|
26 | - add_meta_box( 'wpinv-payment-meta', __( 'Payment Meta', 'invoicing' ), 'WPInv_Meta_Box_Details::payment_meta', 'wpi_invoice', 'side', 'default' ); |
|
25 | + add_meta_box('wpinv-details', __('Invoice Details', 'invoicing'), 'WPInv_Meta_Box_Details::output', 'wpi_invoice', 'side', 'default'); |
|
26 | + add_meta_box('wpinv-payment-meta', __('Payment Meta', 'invoicing'), 'WPInv_Meta_Box_Details::payment_meta', 'wpi_invoice', 'side', 'default'); |
|
27 | 27 | |
28 | - add_meta_box( 'wpinv-address', __( 'Billing Details', 'invoicing' ), 'WPInv_Meta_Box_Billing_Details::output', 'wpi_invoice', 'normal', 'high' ); |
|
29 | - add_meta_box( 'wpinv-items', __( 'Invoice Items', 'invoicing' ), 'WPInv_Meta_Box_Items::output', 'wpi_invoice', 'normal', 'high' ); |
|
30 | - add_meta_box( 'wpinv-notes', __( 'Invoice Notes', 'invoicing' ), 'WPInv_Meta_Box_Notes::output', 'wpi_invoice', 'normal', 'high' ); |
|
28 | + add_meta_box('wpinv-address', __('Billing Details', 'invoicing'), 'WPInv_Meta_Box_Billing_Details::output', 'wpi_invoice', 'normal', 'high'); |
|
29 | + add_meta_box('wpinv-items', __('Invoice Items', 'invoicing'), 'WPInv_Meta_Box_Items::output', 'wpi_invoice', 'normal', 'high'); |
|
30 | + add_meta_box('wpinv-notes', __('Invoice Notes', 'invoicing'), 'WPInv_Meta_Box_Notes::output', 'wpi_invoice', 'normal', 'high'); |
|
31 | 31 | } |
32 | -add_action( 'add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2 ); |
|
32 | +add_action('add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2); |
|
33 | 33 | |
34 | -function wpinv_save_meta_boxes( $post_id, $post, $update = false ) { |
|
35 | - remove_action( 'save_post', __FUNCTION__ ); |
|
34 | +function wpinv_save_meta_boxes($post_id, $post, $update = false) { |
|
35 | + remove_action('save_post', __FUNCTION__); |
|
36 | 36 | |
37 | 37 | // $post_id and $post are required |
38 | - if ( empty( $post_id ) || empty( $post ) ) { |
|
38 | + if (empty($post_id) || empty($post)) { |
|
39 | 39 | return; |
40 | 40 | } |
41 | 41 | |
42 | - if ( !current_user_can( 'edit_post', $post_id ) || empty( $post->post_type ) ) { |
|
42 | + if (!current_user_can('edit_post', $post_id) || empty($post->post_type)) { |
|
43 | 43 | return; |
44 | 44 | } |
45 | 45 | |
46 | 46 | // Dont' save meta boxes for revisions or autosaves |
47 | - if ( defined( 'DOING_AUTOSAVE' ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) { |
|
47 | + if (defined('DOING_AUTOSAVE') || is_int(wp_is_post_revision($post)) || is_int(wp_is_post_autosave($post))) { |
|
48 | 48 | return; |
49 | 49 | } |
50 | 50 | |
51 | - if ( $post->post_type == 'wpi_invoice' or $post->post_type == 'wpi_quote' ) { |
|
52 | - if ( ( defined( 'DOING_AJAX') && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) { |
|
51 | + if ($post->post_type == 'wpi_invoice' or $post->post_type == 'wpi_quote') { |
|
52 | + if ((defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) { |
|
53 | 53 | return; |
54 | 54 | } |
55 | 55 | |
56 | - if ( isset( $_POST['wpinv_save_invoice'] ) && wp_verify_nonce( $_POST['wpinv_save_invoice'], 'wpinv_save_invoice' ) ) { |
|
57 | - WPInv_Meta_Box_Items::save( $post_id, $_POST, $post ); |
|
56 | + if (isset($_POST['wpinv_save_invoice']) && wp_verify_nonce($_POST['wpinv_save_invoice'], 'wpinv_save_invoice')) { |
|
57 | + WPInv_Meta_Box_Items::save($post_id, $_POST, $post); |
|
58 | 58 | } |
59 | - } else if ( $post->post_type == 'wpi_item' ) { |
|
59 | + } else if ($post->post_type == 'wpi_item') { |
|
60 | 60 | // verify nonce |
61 | - if ( isset( $_POST['wpinv_vat_meta_box_nonce'] ) && wp_verify_nonce( $_POST['wpinv_vat_meta_box_nonce'], 'wpinv_item_meta_box_save' ) ) { |
|
62 | - $fields = array(); |
|
61 | + if (isset($_POST['wpinv_vat_meta_box_nonce']) && wp_verify_nonce($_POST['wpinv_vat_meta_box_nonce'], 'wpinv_item_meta_box_save')) { |
|
62 | + $fields = array(); |
|
63 | 63 | $fields['_wpinv_price'] = 'wpinv_item_price'; |
64 | 64 | $fields['_wpinv_vat_class'] = 'wpinv_vat_class'; |
65 | 65 | $fields['_wpinv_vat_rule'] = 'wpinv_vat_rules'; |
@@ -72,291 +72,291 @@ discard block |
||
72 | 72 | $fields['_wpinv_trial_period'] = 'wpinv_trial_period'; |
73 | 73 | $fields['_wpinv_trial_interval'] = 'wpinv_trial_interval'; |
74 | 74 | |
75 | - if ( !isset( $_POST['wpinv_is_recurring'] ) ) { |
|
75 | + if (!isset($_POST['wpinv_is_recurring'])) { |
|
76 | 76 | $_POST['wpinv_is_recurring'] = 0; |
77 | 77 | } |
78 | 78 | |
79 | - if ( !isset( $_POST['wpinv_free_trial'] ) || empty( $_POST['wpinv_is_recurring'] ) ) { |
|
79 | + if (!isset($_POST['wpinv_free_trial']) || empty($_POST['wpinv_is_recurring'])) { |
|
80 | 80 | $_POST['wpinv_free_trial'] = 0; |
81 | 81 | } |
82 | 82 | |
83 | - foreach ( $fields as $field => $name ) { |
|
84 | - if ( isset( $_POST[ $name ] ) ) { |
|
85 | - if ( $field == '_wpinv_price' ) { |
|
86 | - if ( get_post_meta( $post_id, '_wpinv_type', true ) === 'package' ) { |
|
87 | - $value = wpinv_sanitize_amount( get_post_meta( $post_id, '_wpinv_price', true ) ); // Don't allow edit GD package item price. |
|
83 | + foreach ($fields as $field => $name) { |
|
84 | + if (isset($_POST[$name])) { |
|
85 | + if ($field == '_wpinv_price') { |
|
86 | + if (get_post_meta($post_id, '_wpinv_type', true) === 'package') { |
|
87 | + $value = wpinv_sanitize_amount(get_post_meta($post_id, '_wpinv_price', true)); // Don't allow edit GD package item price. |
|
88 | 88 | } else { |
89 | - $value = wpinv_sanitize_amount( $_POST[ $name ] ); |
|
89 | + $value = wpinv_sanitize_amount($_POST[$name]); |
|
90 | 90 | } |
91 | 91 | } else { |
92 | - $value = is_string( $_POST[ $name ] ) ? sanitize_text_field( $_POST[ $name ] ) : $_POST[ $name ]; |
|
92 | + $value = is_string($_POST[$name]) ? sanitize_text_field($_POST[$name]) : $_POST[$name]; |
|
93 | 93 | } |
94 | 94 | |
95 | - $value = apply_filters( 'wpinv_item_metabox_save_' . $field, $value, $name ); |
|
96 | - update_post_meta( $post_id, $field, $value ); |
|
95 | + $value = apply_filters('wpinv_item_metabox_save_' . $field, $value, $name); |
|
96 | + update_post_meta($post_id, $field, $value); |
|
97 | 97 | } |
98 | 98 | } |
99 | 99 | } |
100 | 100 | } |
101 | 101 | } |
102 | -add_action( 'save_post', 'wpinv_save_meta_boxes', 10, 3 ); |
|
102 | +add_action('save_post', 'wpinv_save_meta_boxes', 10, 3); |
|
103 | 103 | |
104 | -function wpinv_bulk_and_quick_edit_save( $post_id, $post, $update = false ) { |
|
105 | - if ( !( !empty( $_POST['action'] ) && $_POST['action'] == 'inline-save' ) ) { |
|
104 | +function wpinv_bulk_and_quick_edit_save($post_id, $post, $update = false) { |
|
105 | + if (!(!empty($_POST['action']) && $_POST['action'] == 'inline-save')) { |
|
106 | 106 | return; |
107 | 107 | } |
108 | 108 | |
109 | 109 | // $post_id and $post are required |
110 | - if ( empty( $post_id ) || empty( $post ) ) { |
|
110 | + if (empty($post_id) || empty($post)) { |
|
111 | 111 | return; |
112 | 112 | } |
113 | 113 | |
114 | - if ( !current_user_can( 'edit_post', $post_id ) || empty( $post->post_type ) ) { |
|
114 | + if (!current_user_can('edit_post', $post_id) || empty($post->post_type)) { |
|
115 | 115 | return; |
116 | 116 | } |
117 | 117 | |
118 | 118 | // Dont' save meta boxes for revisions or autosaves |
119 | - if ( defined( 'DOING_AUTOSAVE' ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) { |
|
119 | + if (defined('DOING_AUTOSAVE') || is_int(wp_is_post_revision($post)) || is_int(wp_is_post_autosave($post))) { |
|
120 | 120 | return; |
121 | 121 | } |
122 | 122 | |
123 | - if ( $post->post_type == 'wpi_item' ) { |
|
123 | + if ($post->post_type == 'wpi_item') { |
|
124 | 124 | // verify nonce |
125 | - if ( isset( $_POST['_wpinv_item_price'] ) && get_post_meta( $post->ID, '_wpinv_type', true ) !== 'package' ) { |
|
126 | - update_post_meta( $post_id, '_wpinv_price', wpinv_sanitize_amount( $_POST['_wpinv_item_price'] ) ); |
|
125 | + if (isset($_POST['_wpinv_item_price']) && get_post_meta($post->ID, '_wpinv_type', true) !== 'package') { |
|
126 | + update_post_meta($post_id, '_wpinv_price', wpinv_sanitize_amount($_POST['_wpinv_item_price'])); |
|
127 | 127 | } |
128 | 128 | |
129 | - if ( isset( $_POST['_wpinv_vat_class'] ) ) { |
|
130 | - update_post_meta( $post_id, '_wpinv_vat_class', sanitize_text_field( $_POST['_wpinv_vat_class'] ) ); |
|
129 | + if (isset($_POST['_wpinv_vat_class'])) { |
|
130 | + update_post_meta($post_id, '_wpinv_vat_class', sanitize_text_field($_POST['_wpinv_vat_class'])); |
|
131 | 131 | } |
132 | 132 | |
133 | - if ( isset( $_POST['_wpinv_vat_rules'] ) ) { |
|
134 | - update_post_meta( $post_id, '_wpinv_vat_rule', sanitize_text_field( $_POST['_wpinv_vat_rules'] ) ); |
|
133 | + if (isset($_POST['_wpinv_vat_rules'])) { |
|
134 | + update_post_meta($post_id, '_wpinv_vat_rule', sanitize_text_field($_POST['_wpinv_vat_rules'])); |
|
135 | 135 | } |
136 | 136 | |
137 | - if ( isset( $_POST['_wpinv_item_type'] ) ) { |
|
138 | - update_post_meta( $post_id, '_wpinv_type', sanitize_text_field( $_POST['_wpinv_item_type'] ) ); |
|
137 | + if (isset($_POST['_wpinv_item_type'])) { |
|
138 | + update_post_meta($post_id, '_wpinv_type', sanitize_text_field($_POST['_wpinv_item_type'])); |
|
139 | 139 | } |
140 | 140 | } |
141 | 141 | } |
142 | -add_action( 'save_post', 'wpinv_bulk_and_quick_edit_save', 10, 3 ); |
|
142 | +add_action('save_post', 'wpinv_bulk_and_quick_edit_save', 10, 3); |
|
143 | 143 | |
144 | 144 | function wpinv_register_item_meta_boxes() { |
145 | 145 | global $wpinv_euvat; |
146 | 146 | |
147 | - add_meta_box( 'wpinv_field_prices', __( 'Item Price', 'invoicing' ), 'WPInv_Meta_Box_Items::prices', 'wpi_item', 'normal', 'high' ); |
|
147 | + add_meta_box('wpinv_field_prices', __('Item Price', 'invoicing'), 'WPInv_Meta_Box_Items::prices', 'wpi_item', 'normal', 'high'); |
|
148 | 148 | |
149 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
150 | - add_meta_box( 'wpinv_field_vat_rules', __( 'VAT rules type to use', 'invoicing' ), 'WPInv_Meta_Box_Items::vat_rules', 'wpi_item', 'normal', 'high' ); |
|
149 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
150 | + add_meta_box('wpinv_field_vat_rules', __('VAT rules type to use', 'invoicing'), 'WPInv_Meta_Box_Items::vat_rules', 'wpi_item', 'normal', 'high'); |
|
151 | 151 | } |
152 | 152 | |
153 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
154 | - add_meta_box( 'wpinv_field_vat_classes', __( 'VAT rates class to use', 'invoicing' ), 'WPInv_Meta_Box_Items::vat_classes', 'wpi_item', 'normal', 'high' ); |
|
153 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
154 | + add_meta_box('wpinv_field_vat_classes', __('VAT rates class to use', 'invoicing'), 'WPInv_Meta_Box_Items::vat_classes', 'wpi_item', 'normal', 'high'); |
|
155 | 155 | } |
156 | 156 | |
157 | - add_meta_box( 'wpinv_field_item_info', __( 'Item info', 'invoicing' ), 'WPInv_Meta_Box_Items::item_info', 'wpi_item', 'side', 'core' ); |
|
157 | + add_meta_box('wpinv_field_item_info', __('Item info', 'invoicing'), 'WPInv_Meta_Box_Items::item_info', 'wpi_item', 'side', 'core'); |
|
158 | 158 | } |
159 | 159 | |
160 | 160 | function wpinv_register_discount_meta_boxes() { |
161 | - add_meta_box( 'wpinv_discount_fields', __( 'Discount Details', 'invoicing' ), 'wpinv_discount_metabox_details', 'wpi_discount', 'normal', 'high' ); |
|
161 | + add_meta_box('wpinv_discount_fields', __('Discount Details', 'invoicing'), 'wpinv_discount_metabox_details', 'wpi_discount', 'normal', 'high'); |
|
162 | 162 | } |
163 | 163 | |
164 | -function wpinv_discount_metabox_details( $post ) { |
|
164 | +function wpinv_discount_metabox_details($post) { |
|
165 | 165 | $discount_id = $post->ID; |
166 | - $discount = wpinv_get_discount( $discount_id ); |
|
166 | + $discount = wpinv_get_discount($discount_id); |
|
167 | 167 | |
168 | - $type = wpinv_get_discount_type( $discount_id ); |
|
169 | - $item_reqs = wpinv_get_discount_item_reqs( $discount_id ); |
|
170 | - $excluded_items = wpinv_get_discount_excluded_items( $discount_id ); |
|
171 | - $min_total = wpinv_get_discount_min_total( $discount_id ); |
|
172 | - $max_total = wpinv_get_discount_max_total( $discount_id ); |
|
173 | - $max_uses = wpinv_get_discount_max_uses( $discount_id ); |
|
174 | - $single_use = wpinv_discount_is_single_use( $discount_id ); |
|
175 | - $recurring = (bool)wpinv_discount_is_recurring( $discount_id ); |
|
168 | + $type = wpinv_get_discount_type($discount_id); |
|
169 | + $item_reqs = wpinv_get_discount_item_reqs($discount_id); |
|
170 | + $excluded_items = wpinv_get_discount_excluded_items($discount_id); |
|
171 | + $min_total = wpinv_get_discount_min_total($discount_id); |
|
172 | + $max_total = wpinv_get_discount_max_total($discount_id); |
|
173 | + $max_uses = wpinv_get_discount_max_uses($discount_id); |
|
174 | + $single_use = wpinv_discount_is_single_use($discount_id); |
|
175 | + $recurring = (bool)wpinv_discount_is_recurring($discount_id); |
|
176 | 176 | |
177 | 177 | $min_total = $min_total > 0 ? $min_total : ''; |
178 | 178 | $max_total = $max_total > 0 ? $max_total : ''; |
179 | 179 | $max_uses = $max_uses > 0 ? $max_uses : ''; |
180 | 180 | ?> |
181 | -<?php do_action( 'wpinv_discount_form_top', $post ); ?> |
|
182 | -<?php wp_nonce_field( 'wpinv_discount_metabox_nonce', 'wpinv_discount_metabox_nonce' ); ;?> |
|
181 | +<?php do_action('wpinv_discount_form_top', $post); ?> |
|
182 | +<?php wp_nonce_field('wpinv_discount_metabox_nonce', 'wpinv_discount_metabox_nonce'); ;?> |
|
183 | 183 | <table class="form-table wpi-form-table"> |
184 | 184 | <tbody> |
185 | - <?php do_action( 'wpinv_discount_form_first', $post ); ?> |
|
186 | - <?php do_action( 'wpinv_discount_form_before_code', $post ); ?> |
|
185 | + <?php do_action('wpinv_discount_form_first', $post); ?> |
|
186 | + <?php do_action('wpinv_discount_form_before_code', $post); ?> |
|
187 | 187 | <tr> |
188 | 188 | <th valign="top" scope="row"> |
189 | - <label for="wpinv_discount_code"><?php _e( 'Discount Code', 'invoicing' ); ?></label> |
|
189 | + <label for="wpinv_discount_code"><?php _e('Discount Code', 'invoicing'); ?></label> |
|
190 | 190 | </th> |
191 | 191 | <td> |
192 | - <input type="text" name="code" id="wpinv_discount_code" class="medium-text" value="<?php echo esc_attr( wpinv_get_discount_code( $discount_id ) ); ?>" required> |
|
193 | - <p class="description"><?php _e( 'Enter a code for this discount, such as 10OFF', 'invoicing' ); ?></p> |
|
192 | + <input type="text" name="code" id="wpinv_discount_code" class="medium-text" value="<?php echo esc_attr(wpinv_get_discount_code($discount_id)); ?>" required> |
|
193 | + <p class="description"><?php _e('Enter a code for this discount, such as 10OFF', 'invoicing'); ?></p> |
|
194 | 194 | </td> |
195 | 195 | </tr> |
196 | - <?php do_action( 'wpinv_discount_form_before_type', $post ); ?> |
|
196 | + <?php do_action('wpinv_discount_form_before_type', $post); ?> |
|
197 | 197 | <tr> |
198 | 198 | <th valign="top" scope="row"> |
199 | - <label for="wpinv_discount_type"><?php _e( 'Discount Type', 'invoicing' ); ?></label> |
|
199 | + <label for="wpinv_discount_type"><?php _e('Discount Type', 'invoicing'); ?></label> |
|
200 | 200 | </th> |
201 | 201 | <td> |
202 | 202 | <select id="wpinv_discount_type" name="type" class="medium-text"> |
203 | - <?php foreach ( wpinv_get_discount_types() as $value => $label ) { ?> |
|
204 | - <option value="<?php echo $value ;?>" <?php selected( $type, $value ); ?>><?php echo $label; ?></option> |
|
203 | + <?php foreach (wpinv_get_discount_types() as $value => $label) { ?> |
|
204 | + <option value="<?php echo $value; ?>" <?php selected($type, $value); ?>><?php echo $label; ?></option> |
|
205 | 205 | <?php } ?> |
206 | 206 | </select> |
207 | - <p class="description"><?php _e( 'The kind of discount to apply for this discount.', 'invoicing' ); ?></p> |
|
207 | + <p class="description"><?php _e('The kind of discount to apply for this discount.', 'invoicing'); ?></p> |
|
208 | 208 | </td> |
209 | 209 | </tr> |
210 | - <?php do_action( 'wpinv_discount_form_before_amount', $post ); ?> |
|
210 | + <?php do_action('wpinv_discount_form_before_amount', $post); ?> |
|
211 | 211 | <tr> |
212 | 212 | <th valign="top" scope="row"> |
213 | - <label for="wpinv_discount_amount"><?php _e( 'Amount', 'invoicing' ); ?></label> |
|
213 | + <label for="wpinv_discount_amount"><?php _e('Amount', 'invoicing'); ?></label> |
|
214 | 214 | </th> |
215 | 215 | <td> |
216 | - <input type="text" name="amount" id="wpinv_discount_amount" class="wpi-field-price wpi-price" value="<?php echo esc_attr( wpinv_get_discount_amount( $discount_id ) ); ?>" required> <font class="wpi-discount-p">%</font><font class="wpi-discount-f" style="display:none;"><?php echo wpinv_currency_symbol() ;?></font> |
|
217 | - <p style="display:none;" class="description"><?php _e( 'Enter the discount amount in USD', 'invoicing' ); ?></p> |
|
218 | - <p class="description"><?php _e( 'Enter the discount value. Ex: 10', 'invoicing' ); ?></p> |
|
216 | + <input type="text" name="amount" id="wpinv_discount_amount" class="wpi-field-price wpi-price" value="<?php echo esc_attr(wpinv_get_discount_amount($discount_id)); ?>" required> <font class="wpi-discount-p">%</font><font class="wpi-discount-f" style="display:none;"><?php echo wpinv_currency_symbol(); ?></font> |
|
217 | + <p style="display:none;" class="description"><?php _e('Enter the discount amount in USD', 'invoicing'); ?></p> |
|
218 | + <p class="description"><?php _e('Enter the discount value. Ex: 10', 'invoicing'); ?></p> |
|
219 | 219 | </td> |
220 | 220 | </tr> |
221 | - <?php do_action( 'wpinv_discount_form_before_items', $post ); ?> |
|
221 | + <?php do_action('wpinv_discount_form_before_items', $post); ?> |
|
222 | 222 | <tr> |
223 | 223 | <th valign="top" scope="row"> |
224 | - <label for="wpinv_discount_items"><?php _e( 'Items', 'invoicing' ); ?></label> |
|
224 | + <label for="wpinv_discount_items"><?php _e('Items', 'invoicing'); ?></label> |
|
225 | 225 | </th> |
226 | 226 | <td> |
227 | - <p><?php echo wpinv_item_dropdown( array( |
|
227 | + <p><?php echo wpinv_item_dropdown(array( |
|
228 | 228 | 'name' => 'items[]', |
229 | 229 | 'id' => 'items', |
230 | 230 | 'selected' => $item_reqs, |
231 | 231 | 'multiple' => true, |
232 | 232 | 'chosen' => true, |
233 | 233 | 'class' => 'medium-text', |
234 | - 'placeholder' => __( 'Select one or more Items', 'invoicing' ), |
|
234 | + 'placeholder' => __('Select one or more Items', 'invoicing'), |
|
235 | 235 | 'show_recurring' => true, |
236 | - ) ); ?> |
|
236 | + )); ?> |
|
237 | 237 | </p> |
238 | - <p class="description"><?php _e( '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 can be used on any item.', 'invoicing' ); ?></p> |
|
238 | + <p class="description"><?php _e('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 can be used on any item.', 'invoicing'); ?></p> |
|
239 | 239 | </td> |
240 | 240 | </tr> |
241 | - <?php do_action( 'wpinv_discount_form_before_excluded_items', $post ); ?> |
|
241 | + <?php do_action('wpinv_discount_form_before_excluded_items', $post); ?> |
|
242 | 242 | <tr> |
243 | 243 | <th valign="top" scope="row"> |
244 | - <label for="wpinv_discount_excluded_items"><?php _e( 'Excluded Items', 'invoicing' ); ?></label> |
|
244 | + <label for="wpinv_discount_excluded_items"><?php _e('Excluded Items', 'invoicing'); ?></label> |
|
245 | 245 | </th> |
246 | 246 | <td> |
247 | - <p><?php echo wpinv_item_dropdown( array( |
|
247 | + <p><?php echo wpinv_item_dropdown(array( |
|
248 | 248 | 'name' => 'excluded_items[]', |
249 | 249 | 'id' => 'excluded_items', |
250 | 250 | 'selected' => $excluded_items, |
251 | 251 | 'multiple' => true, |
252 | 252 | 'chosen' => true, |
253 | 253 | 'class' => 'medium-text', |
254 | - 'placeholder' => __( 'Select one or more Items', 'invoicing' ), |
|
254 | + 'placeholder' => __('Select one or more Items', 'invoicing'), |
|
255 | 255 | 'show_recurring' => true, |
256 | - ) ); ?> |
|
256 | + )); ?> |
|
257 | 257 | </p> |
258 | - <p class="description"><?php _e( 'Items which are NOT allowed to use this discount.', 'invoicing' ); ?></p> |
|
258 | + <p class="description"><?php _e('Items which are NOT allowed to use this discount.', 'invoicing'); ?></p> |
|
259 | 259 | </td> |
260 | 260 | </tr> |
261 | - <?php do_action( 'wpinv_discount_form_before_start', $post ); ?> |
|
261 | + <?php do_action('wpinv_discount_form_before_start', $post); ?> |
|
262 | 262 | <tr> |
263 | 263 | <th valign="top" scope="row"> |
264 | - <label for="wpinv_discount_start"><?php _e( 'Start date', 'invoicing' ); ?></label> |
|
264 | + <label for="wpinv_discount_start"><?php _e('Start date', 'invoicing'); ?></label> |
|
265 | 265 | </th> |
266 | 266 | <td> |
267 | - <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_start" data-dateFormat="yy-mm-dd" name="start" value="<?php echo esc_attr( wpinv_get_discount_start_date( $discount_id ) ); ?>"> |
|
268 | - <p class="description"><?php _e( 'Enter the start date for this discount code in the format of yyyy-mm-dd. For no start date, leave blank. If entered, the discount can only be used after or on this date.', 'invoicing' ); ?></p> |
|
267 | + <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_start" data-dateFormat="yy-mm-dd" name="start" value="<?php echo esc_attr(wpinv_get_discount_start_date($discount_id)); ?>"> |
|
268 | + <p class="description"><?php _e('Enter the start date for this discount code in the format of yyyy-mm-dd. For no start date, leave blank. If entered, the discount can only be used after or on this date.', 'invoicing'); ?></p> |
|
269 | 269 | </td> |
270 | 270 | </tr> |
271 | - <?php do_action( 'wpinv_discount_form_before_expiration', $post ); ?> |
|
271 | + <?php do_action('wpinv_discount_form_before_expiration', $post); ?> |
|
272 | 272 | <tr> |
273 | 273 | <th valign="top" scope="row"> |
274 | - <label for="wpinv_discount_expiration"><?php _e( 'Expiration date', 'invoicing' ); ?></label> |
|
274 | + <label for="wpinv_discount_expiration"><?php _e('Expiration date', 'invoicing'); ?></label> |
|
275 | 275 | </th> |
276 | 276 | <td> |
277 | - <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_expiration" data-dateFormat="yy-mm-dd" name="expiration" value="<?php echo esc_attr( wpinv_get_discount_expiration( $discount_id ) ); ?>"> |
|
278 | - <p class="description"><?php _e( 'Enter the expiration date for this discount code in the format of yyyy-mm-dd. Leave blank for no expiration.', 'invoicing' ); ?></p> |
|
277 | + <input type="text" class="medium-text wpiDatepicker" id="wpinv_discount_expiration" data-dateFormat="yy-mm-dd" name="expiration" value="<?php echo esc_attr(wpinv_get_discount_expiration($discount_id)); ?>"> |
|
278 | + <p class="description"><?php _e('Enter the expiration date for this discount code in the format of yyyy-mm-dd. Leave blank for no expiration.', 'invoicing'); ?></p> |
|
279 | 279 | </td> |
280 | 280 | </tr> |
281 | - <?php do_action( 'wpinv_discount_form_before_min_total', $post ); ?> |
|
281 | + <?php do_action('wpinv_discount_form_before_min_total', $post); ?> |
|
282 | 282 | <tr> |
283 | 283 | <th valign="top" scope="row"> |
284 | - <label for="wpinv_discount_min_total"><?php _e( 'Minimum Amount', 'invoicing' ); ?></label> |
|
284 | + <label for="wpinv_discount_min_total"><?php _e('Minimum Amount', 'invoicing'); ?></label> |
|
285 | 285 | </th> |
286 | 286 | <td> |
287 | 287 | <input type="text" name="min_total" id="wpinv_discount_min_total" class="wpi-field-price wpi-price" value="<?php echo $min_total; ?>"> |
288 | - <p class="description"><?php _e( 'This allows you to set the minimum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing' ); ?></p> |
|
288 | + <p class="description"><?php _e('This allows you to set the minimum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing'); ?></p> |
|
289 | 289 | </td> |
290 | 290 | </tr> |
291 | - <?php do_action( 'wpinv_discount_form_before_max_total', $post ); ?> |
|
291 | + <?php do_action('wpinv_discount_form_before_max_total', $post); ?> |
|
292 | 292 | <tr> |
293 | 293 | <th valign="top" scope="row"> |
294 | - <label for="wpinv_discount_max_total"><?php _e( 'Maximum Amount', 'invoicing' ); ?></label> |
|
294 | + <label for="wpinv_discount_max_total"><?php _e('Maximum Amount', 'invoicing'); ?></label> |
|
295 | 295 | </th> |
296 | 296 | <td> |
297 | 297 | <input type="text" name="max_total" id="wpinv_discount_max_total" class="wpi-field-price wpi-price" value="<?php echo $max_total; ?>"> |
298 | - <p class="description"><?php _e( 'This allows you to set the maximum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing' ); ?></p> |
|
298 | + <p class="description"><?php _e('This allows you to set the maximum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing'); ?></p> |
|
299 | 299 | </td> |
300 | 300 | </tr> |
301 | - <?php do_action( 'wpinv_discount_form_before_recurring', $post ); ?> |
|
301 | + <?php do_action('wpinv_discount_form_before_recurring', $post); ?> |
|
302 | 302 | <tr> |
303 | 303 | <th valign="top" scope="row"> |
304 | - <label for="wpinv_discount_recurring"><?php _e( 'For recurring apply to', 'invoicing' ); ?></label> |
|
304 | + <label for="wpinv_discount_recurring"><?php _e('For recurring apply to', 'invoicing'); ?></label> |
|
305 | 305 | </th> |
306 | 306 | <td> |
307 | 307 | <select id="wpinv_discount_recurring" name="recurring" class="medium-text"> |
308 | - <option value="0" <?php selected( false, $recurring ); ?>><?php _e( 'All payments', 'invoicing' ); ?></option> |
|
309 | - <option value="1" <?php selected( true, $recurring ); ?>><?php _e( 'First payment only', 'invoicing' ); ?></option> |
|
308 | + <option value="0" <?php selected(false, $recurring); ?>><?php _e('All payments', 'invoicing'); ?></option> |
|
309 | + <option value="1" <?php selected(true, $recurring); ?>><?php _e('First payment only', 'invoicing'); ?></option> |
|
310 | 310 | </select> |
311 | - <p class="description"><?php _e( '<b>All payments:</b> apply this discount to all recurring payments of the recurring invoice. <br><b>First payment only:</b> apply this discount to only first payment of the recurring invoice.', 'invoicing' ); ?></p> |
|
311 | + <p class="description"><?php _e('<b>All payments:</b> apply this discount to all recurring payments of the recurring invoice. <br><b>First payment only:</b> apply this discount to only first payment of the recurring invoice.', 'invoicing'); ?></p> |
|
312 | 312 | </td> |
313 | 313 | </tr> |
314 | - <?php do_action( 'wpinv_discount_form_before_max_uses', $post ); ?> |
|
314 | + <?php do_action('wpinv_discount_form_before_max_uses', $post); ?> |
|
315 | 315 | <tr> |
316 | 316 | <th valign="top" scope="row"> |
317 | - <label for="wpinv_discount_max_uses"><?php _e( 'Max Uses', 'invoicing' ); ?></label> |
|
317 | + <label for="wpinv_discount_max_uses"><?php _e('Max Uses', 'invoicing'); ?></label> |
|
318 | 318 | </th> |
319 | 319 | <td> |
320 | 320 | <input type="number" min="0" step="1" id="wpinv_discount_max_uses" name="max_uses" class="medium-text" value="<?php echo $max_uses; ?>"> |
321 | - <p class="description"><?php _e( 'The maximum number of times this discount can be used. Leave blank for unlimited.', 'invoicing' ); ?></p> |
|
321 | + <p class="description"><?php _e('The maximum number of times this discount can be used. Leave blank for unlimited.', 'invoicing'); ?></p> |
|
322 | 322 | </td> |
323 | 323 | </tr> |
324 | - <?php do_action( 'wpinv_discount_form_before_single_use', $post ); ?> |
|
324 | + <?php do_action('wpinv_discount_form_before_single_use', $post); ?> |
|
325 | 325 | <tr> |
326 | 326 | <th valign="top" scope="row"> |
327 | - <label for="wpinv_discount_single_use"><?php _e( 'Use Once Per User', 'invoicing' ); ?></label> |
|
327 | + <label for="wpinv_discount_single_use"><?php _e('Use Once Per User', 'invoicing'); ?></label> |
|
328 | 328 | </th> |
329 | 329 | <td> |
330 | - <input type="checkbox" value="1" name="single_use" id="wpinv_discount_single_use" <?php checked( true, $single_use ); ?>> |
|
331 | - <span class="description"><?php _e( 'Limit this discount to a single use per user?', 'invoicing' ); ?></span> |
|
330 | + <input type="checkbox" value="1" name="single_use" id="wpinv_discount_single_use" <?php checked(true, $single_use); ?>> |
|
331 | + <span class="description"><?php _e('Limit this discount to a single use per user?', 'invoicing'); ?></span> |
|
332 | 332 | </td> |
333 | 333 | </tr> |
334 | - <?php do_action( 'wpinv_discount_form_last', $post ); ?> |
|
334 | + <?php do_action('wpinv_discount_form_last', $post); ?> |
|
335 | 335 | </tbody> |
336 | 336 | </table> |
337 | -<?php do_action( 'wpinv_discount_form_bottom', $post ); ?> |
|
337 | +<?php do_action('wpinv_discount_form_bottom', $post); ?> |
|
338 | 338 | <?php |
339 | 339 | } |
340 | 340 | |
341 | -function wpinv_discount_metabox_save( $post_id, $post, $update = false ) { |
|
342 | - $post_type = !empty( $post ) ? $post->post_type : ''; |
|
341 | +function wpinv_discount_metabox_save($post_id, $post, $update = false) { |
|
342 | + $post_type = !empty($post) ? $post->post_type : ''; |
|
343 | 343 | |
344 | - if ( $post_type != 'wpi_discount' ) { |
|
344 | + if ($post_type != 'wpi_discount') { |
|
345 | 345 | return; |
346 | 346 | } |
347 | 347 | |
348 | - if ( !isset( $_POST['wpinv_discount_metabox_nonce'] ) || ( isset( $_POST['wpinv_discount_metabox_nonce'] ) && !wp_verify_nonce( $_POST['wpinv_discount_metabox_nonce'], 'wpinv_discount_metabox_nonce' ) ) ) { |
|
348 | + if (!isset($_POST['wpinv_discount_metabox_nonce']) || (isset($_POST['wpinv_discount_metabox_nonce']) && !wp_verify_nonce($_POST['wpinv_discount_metabox_nonce'], 'wpinv_discount_metabox_nonce'))) { |
|
349 | 349 | return; |
350 | 350 | } |
351 | 351 | |
352 | - if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ( defined( 'DOING_AJAX') && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) { |
|
352 | + if ((defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) || (defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) { |
|
353 | 353 | return; |
354 | 354 | } |
355 | 355 | |
356 | - if ( !current_user_can( 'manage_options', $post_id ) ) { |
|
356 | + if (!current_user_can('manage_options', $post_id)) { |
|
357 | 357 | return; |
358 | 358 | } |
359 | 359 | |
360 | - return wpinv_store_discount( $post_id, $_POST, $post, $update ); |
|
360 | + return wpinv_store_discount($post_id, $_POST, $post, $update); |
|
361 | 361 | } |
362 | -add_action( 'save_post', 'wpinv_discount_metabox_save', 10, 3 ); |
|
363 | 362 | \ No newline at end of file |
363 | +add_action('save_post', 'wpinv_discount_metabox_save', 10, 3); |
|
364 | 364 | \ No newline at end of file |
@@ -7,12 +7,12 @@ 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 | final class WPInv_Invoice { |
15 | - public $ID = 0; |
|
15 | + public $ID = 0; |
|
16 | 16 | public $title; |
17 | 17 | public $post_type; |
18 | 18 | |
@@ -65,17 +65,17 @@ discard block |
||
65 | 65 | public $full_name = ''; |
66 | 66 | public $parent_invoice = 0; |
67 | 67 | |
68 | - public function __construct( $invoice_id = false ) { |
|
69 | - if( empty( $invoice_id ) ) { |
|
68 | + public function __construct($invoice_id = false) { |
|
69 | + if (empty($invoice_id)) { |
|
70 | 70 | return false; |
71 | 71 | } |
72 | 72 | |
73 | - $this->setup_invoice( $invoice_id ); |
|
73 | + $this->setup_invoice($invoice_id); |
|
74 | 74 | } |
75 | 75 | |
76 | - public function get( $key ) { |
|
77 | - if ( method_exists( $this, 'get_' . $key ) ) { |
|
78 | - $value = call_user_func( array( $this, 'get_' . $key ) ); |
|
76 | + public function get($key) { |
|
77 | + if (method_exists($this, 'get_' . $key)) { |
|
78 | + $value = call_user_func(array($this, 'get_' . $key)); |
|
79 | 79 | } else { |
80 | 80 | $value = $this->$key; |
81 | 81 | } |
@@ -83,52 +83,52 @@ discard block |
||
83 | 83 | return $value; |
84 | 84 | } |
85 | 85 | |
86 | - public function set( $key, $value ) { |
|
87 | - $ignore = array( 'items', 'cart_details', 'fees', '_ID' ); |
|
86 | + public function set($key, $value) { |
|
87 | + $ignore = array('items', 'cart_details', 'fees', '_ID'); |
|
88 | 88 | |
89 | - if ( $key === 'status' ) { |
|
89 | + if ($key === 'status') { |
|
90 | 90 | $this->old_status = $this->status; |
91 | 91 | } |
92 | 92 | |
93 | - if ( ! in_array( $key, $ignore ) ) { |
|
94 | - $this->pending[ $key ] = $value; |
|
93 | + if (!in_array($key, $ignore)) { |
|
94 | + $this->pending[$key] = $value; |
|
95 | 95 | } |
96 | 96 | |
97 | - if( '_ID' !== $key ) { |
|
97 | + if ('_ID' !== $key) { |
|
98 | 98 | $this->$key = $value; |
99 | 99 | } |
100 | 100 | } |
101 | 101 | |
102 | - public function _isset( $name ) { |
|
103 | - if ( property_exists( $this, $name) ) { |
|
104 | - return false === empty( $this->$name ); |
|
102 | + public function _isset($name) { |
|
103 | + if (property_exists($this, $name)) { |
|
104 | + return false === empty($this->$name); |
|
105 | 105 | } else { |
106 | 106 | return null; |
107 | 107 | } |
108 | 108 | } |
109 | 109 | |
110 | - private function setup_invoice( $invoice_id ) { |
|
110 | + private function setup_invoice($invoice_id) { |
|
111 | 111 | $this->pending = array(); |
112 | 112 | |
113 | - if ( empty( $invoice_id ) ) { |
|
113 | + if (empty($invoice_id)) { |
|
114 | 114 | return false; |
115 | 115 | } |
116 | 116 | |
117 | - $invoice = get_post( $invoice_id ); |
|
117 | + $invoice = get_post($invoice_id); |
|
118 | 118 | |
119 | - if( !$invoice || is_wp_error( $invoice ) ) { |
|
119 | + if (!$invoice || is_wp_error($invoice)) { |
|
120 | 120 | return false; |
121 | 121 | } |
122 | 122 | |
123 | - if( !('wpi_invoice' == $invoice->post_type OR 'wpi_quote' == $invoice->post_type) ) { |
|
123 | + if (!('wpi_invoice' == $invoice->post_type OR 'wpi_quote' == $invoice->post_type)) { |
|
124 | 124 | return false; |
125 | 125 | } |
126 | 126 | |
127 | - do_action( 'wpinv_pre_setup_invoice', $this, $invoice_id ); |
|
127 | + do_action('wpinv_pre_setup_invoice', $this, $invoice_id); |
|
128 | 128 | |
129 | 129 | // Primary Identifier |
130 | - $this->ID = absint( $invoice_id ); |
|
131 | - $this->post_type = $invoice->post_type; |
|
130 | + $this->ID = absint($invoice_id); |
|
131 | + $this->post_type = $invoice->post_type; |
|
132 | 132 | |
133 | 133 | // We have a payment, get the generic payment_meta item to reduce calls to it |
134 | 134 | $this->payment_meta = $this->get_meta(); |
@@ -139,7 +139,7 @@ discard block |
||
139 | 139 | $this->post_status = $this->status; |
140 | 140 | $this->mode = $this->setup_mode(); |
141 | 141 | $this->parent_invoice = $invoice->post_parent; |
142 | - $this->post_name = $this->setup_post_name( $invoice ); |
|
142 | + $this->post_name = $this->setup_post_name($invoice); |
|
143 | 143 | $this->status_nicename = $this->setup_status_nicename(); |
144 | 144 | |
145 | 145 | // Items |
@@ -161,8 +161,8 @@ discard block |
||
161 | 161 | |
162 | 162 | // User based |
163 | 163 | $this->ip = $this->setup_ip(); |
164 | - $this->user_id = !empty( $invoice->post_author ) ? $invoice->post_author : get_current_user_id();///$this->setup_user_id(); |
|
165 | - $this->email = get_the_author_meta( 'email', $this->user_id ); |
|
164 | + $this->user_id = !empty($invoice->post_author) ? $invoice->post_author : get_current_user_id(); ///$this->setup_user_id(); |
|
165 | + $this->email = get_the_author_meta('email', $this->user_id); |
|
166 | 166 | |
167 | 167 | $this->user_info = $this->setup_user_info(); |
168 | 168 | |
@@ -171,7 +171,7 @@ discard block |
||
171 | 171 | $this->company = $this->user_info['company']; |
172 | 172 | $this->vat_number = $this->user_info['vat_number']; |
173 | 173 | $this->vat_rate = $this->user_info['vat_rate']; |
174 | - $this->adddress_confirmed = $this->user_info['adddress_confirmed']; |
|
174 | + $this->adddress_confirmed = $this->user_info['adddress_confirmed']; |
|
175 | 175 | $this->address = $this->user_info['address']; |
176 | 176 | $this->city = $this->user_info['city']; |
177 | 177 | $this->country = $this->user_info['country']; |
@@ -186,48 +186,48 @@ discard block |
||
186 | 186 | // Other Identifiers |
187 | 187 | $this->key = $this->setup_invoice_key(); |
188 | 188 | $this->number = $this->setup_invoice_number(); |
189 | - $this->title = !empty( $invoice->post_title ) ? $invoice->post_title : $this->number; |
|
189 | + $this->title = !empty($invoice->post_title) ? $invoice->post_title : $this->number; |
|
190 | 190 | |
191 | - $this->full_name = trim( $this->first_name . ' '. $this->last_name ); |
|
191 | + $this->full_name = trim($this->first_name . ' ' . $this->last_name); |
|
192 | 192 | |
193 | 193 | // Allow extensions to add items to this object via hook |
194 | - do_action( 'wpinv_setup_invoice', $this, $invoice_id ); |
|
194 | + do_action('wpinv_setup_invoice', $this, $invoice_id); |
|
195 | 195 | |
196 | 196 | return true; |
197 | 197 | } |
198 | 198 | |
199 | 199 | private function setup_status_nicename() { |
200 | - $all_invoice_statuses = wpinv_get_invoice_statuses(); |
|
200 | + $all_invoice_statuses = wpinv_get_invoice_statuses(); |
|
201 | 201 | |
202 | - $status = array_key_exists( $this->status, $all_invoice_statuses ) ? $all_invoice_statuses[$this->status] : ucfirst( $this->status ); |
|
202 | + $status = array_key_exists($this->status, $all_invoice_statuses) ? $all_invoice_statuses[$this->status] : ucfirst($this->status); |
|
203 | 203 | |
204 | 204 | return $status; |
205 | 205 | } |
206 | 206 | |
207 | - private function setup_post_name( $post = NULL ) { |
|
207 | + private function setup_post_name($post = NULL) { |
|
208 | 208 | $post_name = ''; |
209 | 209 | |
210 | - if ( !empty( $post ) ) { |
|
211 | - if( !empty( $post->post_name ) ) { |
|
210 | + if (!empty($post)) { |
|
211 | + if (!empty($post->post_name)) { |
|
212 | 212 | $post_name = $post->post_name; |
213 | - } else if ( !empty( $post->ID ) && !empty( $post->post_title ) ) { |
|
214 | - $post_name = sanitize_title( $post->post_title ); |
|
213 | + } else if (!empty($post->ID) && !empty($post->post_title)) { |
|
214 | + $post_name = sanitize_title($post->post_title); |
|
215 | 215 | |
216 | 216 | global $wpdb; |
217 | - $wpdb->update( $wpdb->posts, array( 'post_name' => $post_name ), array( 'ID' => $post->ID ) ); |
|
217 | + $wpdb->update($wpdb->posts, array('post_name' => $post_name), array('ID' => $post->ID)); |
|
218 | 218 | } |
219 | 219 | } |
220 | 220 | |
221 | - $this->post_name = $post_name; |
|
221 | + $this->post_name = $post_name; |
|
222 | 222 | } |
223 | 223 | |
224 | 224 | private function setup_due_date() { |
225 | - $due_date = $this->get_meta( '_wpinv_due_date' ); |
|
225 | + $due_date = $this->get_meta('_wpinv_due_date'); |
|
226 | 226 | |
227 | - if ( empty( $due_date ) ) { |
|
228 | - $overdue_time = strtotime( $this->date ) + ( DAY_IN_SECONDS * absint( wpinv_get_option( 'overdue_days' ) ) ); |
|
229 | - $due_date = date_i18n( 'Y-m-d', $overdue_time ); |
|
230 | - } else if ( $due_date == 'none' ) { |
|
227 | + if (empty($due_date)) { |
|
228 | + $overdue_time = strtotime($this->date) + (DAY_IN_SECONDS * absint(wpinv_get_option('overdue_days'))); |
|
229 | + $due_date = date_i18n('Y-m-d', $overdue_time); |
|
230 | + } else if ($due_date == 'none') { |
|
231 | 231 | $due_date = ''; |
232 | 232 | } |
233 | 233 | |
@@ -235,63 +235,63 @@ discard block |
||
235 | 235 | } |
236 | 236 | |
237 | 237 | private function setup_completed_date() { |
238 | - $invoice = get_post( $this->ID ); |
|
238 | + $invoice = get_post($this->ID); |
|
239 | 239 | |
240 | - if ( 'pending' == $invoice->post_status || 'preapproved' == $invoice->post_status ) { |
|
240 | + if ('pending' == $invoice->post_status || 'preapproved' == $invoice->post_status) { |
|
241 | 241 | return false; // This invoice was never paid |
242 | 242 | } |
243 | 243 | |
244 | - $date = ( $date = $this->get_meta( '_wpinv_completed_date', true ) ) ? $date : $invoice->modified_date; |
|
244 | + $date = ($date = $this->get_meta('_wpinv_completed_date', true)) ? $date : $invoice->modified_date; |
|
245 | 245 | |
246 | 246 | return $date; |
247 | 247 | } |
248 | 248 | |
249 | 249 | private function setup_cart_details() { |
250 | - $cart_details = isset( $this->payment_meta['cart_details'] ) ? maybe_unserialize( $this->payment_meta['cart_details'] ) : array(); |
|
250 | + $cart_details = isset($this->payment_meta['cart_details']) ? maybe_unserialize($this->payment_meta['cart_details']) : array(); |
|
251 | 251 | return $cart_details; |
252 | 252 | } |
253 | 253 | |
254 | 254 | public function array_convert() { |
255 | - return get_object_vars( $this ); |
|
255 | + return get_object_vars($this); |
|
256 | 256 | } |
257 | 257 | |
258 | 258 | private function setup_items() { |
259 | - $items = isset( $this->payment_meta['items'] ) ? maybe_unserialize( $this->payment_meta['items'] ) : array(); |
|
259 | + $items = isset($this->payment_meta['items']) ? maybe_unserialize($this->payment_meta['items']) : array(); |
|
260 | 260 | return $items; |
261 | 261 | } |
262 | 262 | |
263 | 263 | private function setup_fees() { |
264 | - $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array(); |
|
264 | + $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array(); |
|
265 | 265 | return $payment_fees; |
266 | 266 | } |
267 | 267 | |
268 | 268 | private function setup_currency() { |
269 | - $currency = isset( $this->payment_meta['currency'] ) ? $this->payment_meta['currency'] : apply_filters( 'wpinv_currency_default', wpinv_get_currency(), $this ); |
|
269 | + $currency = isset($this->payment_meta['currency']) ? $this->payment_meta['currency'] : apply_filters('wpinv_currency_default', wpinv_get_currency(), $this); |
|
270 | 270 | return $currency; |
271 | 271 | } |
272 | 272 | |
273 | 273 | private function setup_discount() { |
274 | 274 | //$discount = $this->get_meta( '_wpinv_discount', true ); |
275 | - $discount = $this->subtotal - ( $this->total - $this->tax - $this->fees_total ); |
|
276 | - if ( $discount < 0 ) { |
|
275 | + $discount = $this->subtotal - ($this->total - $this->tax - $this->fees_total); |
|
276 | + if ($discount < 0) { |
|
277 | 277 | $discount = 0; |
278 | 278 | } |
279 | - $discount = wpinv_format_amount( $discount, NULL, true ); |
|
279 | + $discount = wpinv_format_amount($discount, NULL, true); |
|
280 | 280 | |
281 | 281 | return $discount; |
282 | 282 | } |
283 | 283 | |
284 | 284 | private function setup_discount_code() { |
285 | - $discount_code = !empty( $this->discounts ) ? $this->discounts : $this->get_meta( '_wpinv_discount_code', true ); |
|
285 | + $discount_code = !empty($this->discounts) ? $this->discounts : $this->get_meta('_wpinv_discount_code', true); |
|
286 | 286 | return $discount_code; |
287 | 287 | } |
288 | 288 | |
289 | 289 | private function setup_tax() { |
290 | - $tax = $this->get_meta( '_wpinv_tax', true ); |
|
290 | + $tax = $this->get_meta('_wpinv_tax', true); |
|
291 | 291 | |
292 | 292 | // We don't have tax as it's own meta and no meta was passed |
293 | - if ( '' === $tax ) { |
|
294 | - $tax = isset( $this->payment_meta['tax'] ) ? $this->payment_meta['tax'] : 0; |
|
293 | + if ('' === $tax) { |
|
294 | + $tax = isset($this->payment_meta['tax']) ? $this->payment_meta['tax'] : 0; |
|
295 | 295 | } |
296 | 296 | |
297 | 297 | return $tax; |
@@ -305,9 +305,9 @@ discard block |
||
305 | 305 | $subtotal = 0; |
306 | 306 | $cart_details = $this->cart_details; |
307 | 307 | |
308 | - if ( is_array( $cart_details ) ) { |
|
309 | - foreach ( $cart_details as $item ) { |
|
310 | - if ( isset( $item['subtotal'] ) ) { |
|
308 | + if (is_array($cart_details)) { |
|
309 | + foreach ($cart_details as $item) { |
|
310 | + if (isset($item['subtotal'])) { |
|
311 | 311 | $subtotal += $item['subtotal']; |
312 | 312 | } |
313 | 313 | } |
@@ -321,18 +321,18 @@ discard block |
||
321 | 321 | } |
322 | 322 | |
323 | 323 | private function setup_discounts() { |
324 | - $discounts = ! empty( $this->payment_meta['user_info']['discount'] ) ? $this->payment_meta['user_info']['discount'] : array(); |
|
324 | + $discounts = !empty($this->payment_meta['user_info']['discount']) ? $this->payment_meta['user_info']['discount'] : array(); |
|
325 | 325 | return $discounts; |
326 | 326 | } |
327 | 327 | |
328 | 328 | private function setup_total() { |
329 | - $amount = $this->get_meta( '_wpinv_total', true ); |
|
329 | + $amount = $this->get_meta('_wpinv_total', true); |
|
330 | 330 | |
331 | - if ( empty( $amount ) && '0.00' != $amount ) { |
|
332 | - $meta = $this->get_meta( '_wpinv_payment_meta', true ); |
|
333 | - $meta = maybe_unserialize( $meta ); |
|
331 | + if (empty($amount) && '0.00' != $amount) { |
|
332 | + $meta = $this->get_meta('_wpinv_payment_meta', true); |
|
333 | + $meta = maybe_unserialize($meta); |
|
334 | 334 | |
335 | - if ( isset( $meta['amount'] ) ) { |
|
335 | + if (isset($meta['amount'])) { |
|
336 | 336 | $amount = $meta['amount']; |
337 | 337 | } |
338 | 338 | } |
@@ -341,13 +341,13 @@ discard block |
||
341 | 341 | } |
342 | 342 | |
343 | 343 | private function setup_mode() { |
344 | - return $this->get_meta( '_wpinv_mode' ); |
|
344 | + return $this->get_meta('_wpinv_mode'); |
|
345 | 345 | } |
346 | 346 | |
347 | 347 | private function setup_gateway() { |
348 | - $gateway = $this->get_meta( '_wpinv_gateway' ); |
|
348 | + $gateway = $this->get_meta('_wpinv_gateway'); |
|
349 | 349 | |
350 | - if ( empty( $gateway ) && 'publish' === $this->status || 'complete' === $this->status ) { |
|
350 | + if (empty($gateway) && 'publish' === $this->status || 'complete' === $this->status) { |
|
351 | 351 | $gateway = 'manual'; |
352 | 352 | } |
353 | 353 | |
@@ -355,23 +355,23 @@ discard block |
||
355 | 355 | } |
356 | 356 | |
357 | 357 | private function setup_gateway_title() { |
358 | - $gateway_title = wpinv_get_gateway_checkout_label( $this->gateway ); |
|
358 | + $gateway_title = wpinv_get_gateway_checkout_label($this->gateway); |
|
359 | 359 | return $gateway_title; |
360 | 360 | } |
361 | 361 | |
362 | 362 | private function setup_transaction_id() { |
363 | - $transaction_id = $this->get_meta( '_wpinv_transaction_id' ); |
|
363 | + $transaction_id = $this->get_meta('_wpinv_transaction_id'); |
|
364 | 364 | |
365 | - if ( empty( $transaction_id ) || (int) $transaction_id === (int) $this->ID ) { |
|
365 | + if (empty($transaction_id) || (int)$transaction_id === (int)$this->ID) { |
|
366 | 366 | $gateway = $this->gateway; |
367 | - $transaction_id = apply_filters( 'wpinv_get_invoice_transaction_id-' . $gateway, $this->ID ); |
|
367 | + $transaction_id = apply_filters('wpinv_get_invoice_transaction_id-' . $gateway, $this->ID); |
|
368 | 368 | } |
369 | 369 | |
370 | 370 | return $transaction_id; |
371 | 371 | } |
372 | 372 | |
373 | 373 | private function setup_ip() { |
374 | - $ip = $this->get_meta( '_wpinv_user_ip' ); |
|
374 | + $ip = $this->get_meta('_wpinv_user_ip'); |
|
375 | 375 | return $ip; |
376 | 376 | } |
377 | 377 | |
@@ -381,62 +381,62 @@ discard block |
||
381 | 381 | ///} |
382 | 382 | |
383 | 383 | private function setup_first_name() { |
384 | - $first_name = $this->get_meta( '_wpinv_first_name' ); |
|
384 | + $first_name = $this->get_meta('_wpinv_first_name'); |
|
385 | 385 | return $first_name; |
386 | 386 | } |
387 | 387 | |
388 | 388 | private function setup_last_name() { |
389 | - $last_name = $this->get_meta( '_wpinv_last_name' ); |
|
389 | + $last_name = $this->get_meta('_wpinv_last_name'); |
|
390 | 390 | return $last_name; |
391 | 391 | } |
392 | 392 | |
393 | 393 | private function setup_company() { |
394 | - $company = $this->get_meta( '_wpinv_company' ); |
|
394 | + $company = $this->get_meta('_wpinv_company'); |
|
395 | 395 | return $company; |
396 | 396 | } |
397 | 397 | |
398 | 398 | private function setup_vat_number() { |
399 | - $vat_number = $this->get_meta( '_wpinv_vat_number' ); |
|
399 | + $vat_number = $this->get_meta('_wpinv_vat_number'); |
|
400 | 400 | return $vat_number; |
401 | 401 | } |
402 | 402 | |
403 | 403 | private function setup_vat_rate() { |
404 | - $vat_rate = $this->get_meta( '_wpinv_vat_rate' ); |
|
404 | + $vat_rate = $this->get_meta('_wpinv_vat_rate'); |
|
405 | 405 | return $vat_rate; |
406 | 406 | } |
407 | 407 | |
408 | 408 | private function setup_adddress_confirmed() { |
409 | - $adddress_confirmed = $this->get_meta( '_wpinv_adddress_confirmed' ); |
|
409 | + $adddress_confirmed = $this->get_meta('_wpinv_adddress_confirmed'); |
|
410 | 410 | return $adddress_confirmed; |
411 | 411 | } |
412 | 412 | |
413 | 413 | private function setup_phone() { |
414 | - $phone = $this->get_meta( '_wpinv_phone' ); |
|
414 | + $phone = $this->get_meta('_wpinv_phone'); |
|
415 | 415 | return $phone; |
416 | 416 | } |
417 | 417 | |
418 | 418 | private function setup_address() { |
419 | - $address = $this->get_meta( '_wpinv_address', true ); |
|
419 | + $address = $this->get_meta('_wpinv_address', true); |
|
420 | 420 | return $address; |
421 | 421 | } |
422 | 422 | |
423 | 423 | private function setup_city() { |
424 | - $city = $this->get_meta( '_wpinv_city', true ); |
|
424 | + $city = $this->get_meta('_wpinv_city', true); |
|
425 | 425 | return $city; |
426 | 426 | } |
427 | 427 | |
428 | 428 | private function setup_country() { |
429 | - $country = $this->get_meta( '_wpinv_country', true ); |
|
429 | + $country = $this->get_meta('_wpinv_country', true); |
|
430 | 430 | return $country; |
431 | 431 | } |
432 | 432 | |
433 | 433 | private function setup_state() { |
434 | - $state = $this->get_meta( '_wpinv_state', true ); |
|
434 | + $state = $this->get_meta('_wpinv_state', true); |
|
435 | 435 | return $state; |
436 | 436 | } |
437 | 437 | |
438 | 438 | private function setup_zip() { |
439 | - $zip = $this->get_meta( '_wpinv_zip', true ); |
|
439 | + $zip = $this->get_meta('_wpinv_zip', true); |
|
440 | 440 | return $zip; |
441 | 441 | } |
442 | 442 | |
@@ -445,7 +445,7 @@ discard block |
||
445 | 445 | 'user_id' => $this->user_id, |
446 | 446 | 'first_name' => $this->first_name, |
447 | 447 | 'last_name' => $this->last_name, |
448 | - 'email' => get_the_author_meta( 'email', $this->user_id ), |
|
448 | + 'email' => get_the_author_meta('email', $this->user_id), |
|
449 | 449 | 'phone' => $this->phone, |
450 | 450 | 'address' => $this->address, |
451 | 451 | 'city' => $this->city, |
@@ -460,12 +460,12 @@ discard block |
||
460 | 460 | ); |
461 | 461 | |
462 | 462 | $user_info = array(); |
463 | - if ( isset( $this->payment_meta['user_info'] ) ) { |
|
464 | - $user_info = maybe_unserialize( $this->payment_meta['user_info'] ); |
|
463 | + if (isset($this->payment_meta['user_info'])) { |
|
464 | + $user_info = maybe_unserialize($this->payment_meta['user_info']); |
|
465 | 465 | |
466 | - if ( !empty( $user_info ) && isset( $user_info['user_id'] ) && $post = get_post( $this->ID ) ) { |
|
466 | + if (!empty($user_info) && isset($user_info['user_id']) && $post = get_post($this->ID)) { |
|
467 | 467 | $this->user_id = $post->post_author; |
468 | - $this->email = get_the_author_meta( 'email', $this->user_id ); |
|
468 | + $this->email = get_the_author_meta('email', $this->user_id); |
|
469 | 469 | |
470 | 470 | $user_info['user_id'] = $this->user_id; |
471 | 471 | $user_info['email'] = $this->email; |
@@ -474,13 +474,13 @@ discard block |
||
474 | 474 | } |
475 | 475 | } |
476 | 476 | |
477 | - $user_info = wp_parse_args( $user_info, $defaults ); |
|
477 | + $user_info = wp_parse_args($user_info, $defaults); |
|
478 | 478 | |
479 | 479 | // Get the user, but only if it's been created |
480 | - $user = get_userdata( $this->user_id ); |
|
480 | + $user = get_userdata($this->user_id); |
|
481 | 481 | |
482 | - if ( !empty( $user ) && $user->ID > 0 ) { |
|
483 | - if ( empty( $user_info ) ) { |
|
482 | + if (!empty($user) && $user->ID > 0) { |
|
483 | + if (empty($user_info)) { |
|
484 | 484 | $user_info = array( |
485 | 485 | 'user_id' => $user->ID, |
486 | 486 | 'first_name' => $user->first_name, |
@@ -489,23 +489,23 @@ discard block |
||
489 | 489 | 'discount' => '', |
490 | 490 | ); |
491 | 491 | } else { |
492 | - foreach ( $user_info as $key => $value ) { |
|
493 | - if ( ! empty( $value ) ) { |
|
492 | + foreach ($user_info as $key => $value) { |
|
493 | + if (!empty($value)) { |
|
494 | 494 | continue; |
495 | 495 | } |
496 | 496 | |
497 | - switch( $key ) { |
|
497 | + switch ($key) { |
|
498 | 498 | case 'user_id': |
499 | - $user_info[ $key ] = $user->ID; |
|
499 | + $user_info[$key] = $user->ID; |
|
500 | 500 | break; |
501 | 501 | case 'first_name': |
502 | - $user_info[ $key ] = $user->first_name; |
|
502 | + $user_info[$key] = $user->first_name; |
|
503 | 503 | break; |
504 | 504 | case 'last_name': |
505 | - $user_info[ $key ] = $user->last_name; |
|
505 | + $user_info[$key] = $user->last_name; |
|
506 | 506 | break; |
507 | 507 | case 'email': |
508 | - $user_info[ $key ] = $user->user_email; |
|
508 | + $user_info[$key] = $user->user_email; |
|
509 | 509 | break; |
510 | 510 | } |
511 | 511 | } |
@@ -516,16 +516,16 @@ discard block |
||
516 | 516 | } |
517 | 517 | |
518 | 518 | private function setup_invoice_key() { |
519 | - $key = $this->get_meta( '_wpinv_key', true ); |
|
519 | + $key = $this->get_meta('_wpinv_key', true); |
|
520 | 520 | |
521 | 521 | return $key; |
522 | 522 | } |
523 | 523 | |
524 | 524 | private function setup_invoice_number() { |
525 | - $number = $this->get_meta( '_wpinv_number', true ); |
|
525 | + $number = $this->get_meta('_wpinv_number', true); |
|
526 | 526 | |
527 | - if ( !$number ) { |
|
528 | - $number = wpinv_format_invoice_number( $this->ID ); |
|
527 | + if (!$number) { |
|
528 | + $number = wpinv_format_invoice_number($this->ID); |
|
529 | 529 | } |
530 | 530 | |
531 | 531 | return $number; |
@@ -536,18 +536,18 @@ discard block |
||
536 | 536 | |
537 | 537 | if ($number = $this->get_number()) { |
538 | 538 | $invoice_title = $number; |
539 | - } else if ( ! empty( $this->ID ) ) { |
|
540 | - $invoice_title = wpinv_format_invoice_number( $this->ID ); |
|
539 | + } else if (!empty($this->ID)) { |
|
540 | + $invoice_title = wpinv_format_invoice_number($this->ID); |
|
541 | 541 | } else { |
542 | - $invoice_title = wpinv_format_invoice_number( 0 ); |
|
542 | + $invoice_title = wpinv_format_invoice_number(0); |
|
543 | 543 | } |
544 | 544 | |
545 | - if ( empty( $this->key ) ) { |
|
545 | + if (empty($this->key)) { |
|
546 | 546 | $this->key = self::generate_key(); |
547 | 547 | $this->pending['key'] = $this->key; |
548 | 548 | } |
549 | 549 | |
550 | - if ( empty( $this->ip ) ) { |
|
550 | + if (empty($this->ip)) { |
|
551 | 551 | $this->ip = wpinv_get_ip(); |
552 | 552 | $this->pending['ip'] = $this->ip; |
553 | 553 | } |
@@ -579,75 +579,75 @@ discard block |
||
579 | 579 | 'fees' => $this->fees, |
580 | 580 | ); |
581 | 581 | |
582 | - $post_name = sanitize_title( $invoice_title ); |
|
582 | + $post_name = sanitize_title($invoice_title); |
|
583 | 583 | |
584 | 584 | $post_data = array( |
585 | 585 | 'post_title' => $invoice_title, |
586 | 586 | 'post_status' => $this->status, |
587 | 587 | 'post_author' => $this->user_id, |
588 | 588 | 'post_type' => $this->post_type, |
589 | - 'post_date' => ! empty( $this->date ) && $this->date != '0000-00-00 00:00:00' ? $this->date : current_time( 'mysql' ), |
|
590 | - 'post_date_gmt' => ! empty( $this->date ) && $this->date != '0000-00-00 00:00:00' ? get_gmt_from_date( $this->date ) : current_time( 'mysql', 1 ), |
|
589 | + 'post_date' => !empty($this->date) && $this->date != '0000-00-00 00:00:00' ? $this->date : current_time('mysql'), |
|
590 | + 'post_date_gmt' => !empty($this->date) && $this->date != '0000-00-00 00:00:00' ? get_gmt_from_date($this->date) : current_time('mysql', 1), |
|
591 | 591 | 'post_parent' => $this->parent_invoice, |
592 | 592 | ); |
593 | - $args = apply_filters( 'wpinv_insert_invoice_args', $post_data, $this ); |
|
593 | + $args = apply_filters('wpinv_insert_invoice_args', $post_data, $this); |
|
594 | 594 | |
595 | 595 | // Create a blank invoice |
596 | - if ( !empty( $this->ID ) ) { |
|
596 | + if (!empty($this->ID)) { |
|
597 | 597 | $args['ID'] = $this->ID; |
598 | 598 | $args['post_name'] = $post_name; |
599 | 599 | |
600 | - $invoice_id = wp_update_post( $args ); |
|
600 | + $invoice_id = wp_update_post($args); |
|
601 | 601 | } else { |
602 | - $invoice_id = wp_insert_post( $args ); |
|
602 | + $invoice_id = wp_insert_post($args); |
|
603 | 603 | |
604 | - $post_title = wpinv_format_invoice_number( $invoice_id ); |
|
604 | + $post_title = wpinv_format_invoice_number($invoice_id); |
|
605 | 605 | global $wpdb; |
606 | - $wpdb->update( $wpdb->posts, array( 'post_title' => $post_title, 'post_name' => sanitize_title( $post_title ) ), array( 'ID' => $invoice_id ) ); |
|
607 | - clean_post_cache( $invoice_id ); |
|
606 | + $wpdb->update($wpdb->posts, array('post_title' => $post_title, 'post_name' => sanitize_title($post_title)), array('ID' => $invoice_id)); |
|
607 | + clean_post_cache($invoice_id); |
|
608 | 608 | } |
609 | 609 | |
610 | - if ( !empty( $invoice_id ) ) { |
|
610 | + if (!empty($invoice_id)) { |
|
611 | 611 | $this->ID = $invoice_id; |
612 | 612 | $this->_ID = $invoice_id; |
613 | 613 | |
614 | 614 | ///$this->pending['user_id'] = $this->user_id; |
615 | - if ( isset( $this->pending['number'] ) ) { |
|
615 | + if (isset($this->pending['number'])) { |
|
616 | 616 | $this->pending['number'] = $post_name; |
617 | 617 | } |
618 | 618 | |
619 | - $this->payment_meta = apply_filters( 'wpinv_payment_meta', $this->payment_meta, $payment_data ); |
|
620 | - if ( ! empty( $this->payment_meta['fees'] ) ) { |
|
621 | - $this->fees = array_merge( $this->fees, $this->payment_meta['fees'] ); |
|
622 | - foreach( $this->fees as $fee ) { |
|
623 | - $this->increase_fees( $fee['amount'] ); |
|
619 | + $this->payment_meta = apply_filters('wpinv_payment_meta', $this->payment_meta, $payment_data); |
|
620 | + if (!empty($this->payment_meta['fees'])) { |
|
621 | + $this->fees = array_merge($this->fees, $this->payment_meta['fees']); |
|
622 | + foreach ($this->fees as $fee) { |
|
623 | + $this->increase_fees($fee['amount']); |
|
624 | 624 | } |
625 | 625 | } |
626 | 626 | |
627 | - $this->update_meta( '_wpinv_payment_meta', $this->payment_meta ); |
|
627 | + $this->update_meta('_wpinv_payment_meta', $this->payment_meta); |
|
628 | 628 | $this->new = true; |
629 | 629 | } |
630 | 630 | |
631 | 631 | return $this->ID; |
632 | 632 | } |
633 | 633 | |
634 | - public function save( $setup = false ) { |
|
634 | + public function save($setup = false) { |
|
635 | 635 | global $wpi_session; |
636 | 636 | |
637 | 637 | $saved = false; |
638 | - if ( empty( $this->items ) ) { |
|
638 | + if (empty($this->items)) { |
|
639 | 639 | return $saved; // Don't save empty invoice. |
640 | 640 | } |
641 | 641 | |
642 | - if ( empty( $this->key ) ) { |
|
642 | + if (empty($this->key)) { |
|
643 | 643 | $this->key = self::generate_key(); |
644 | 644 | $this->pending['key'] = $this->key; |
645 | 645 | } |
646 | 646 | |
647 | - if ( empty( $this->ID ) ) { |
|
647 | + if (empty($this->ID)) { |
|
648 | 648 | $invoice_id = $this->insert_invoice(); |
649 | 649 | |
650 | - if ( false === $invoice_id ) { |
|
650 | + if (false === $invoice_id) { |
|
651 | 651 | $saved = false; |
652 | 652 | } else { |
653 | 653 | $this->ID = $invoice_id; |
@@ -655,27 +655,27 @@ discard block |
||
655 | 655 | } |
656 | 656 | |
657 | 657 | // If we have something pending, let's save it |
658 | - if ( !empty( $this->pending ) ) { |
|
658 | + if (!empty($this->pending)) { |
|
659 | 659 | $total_increase = 0; |
660 | 660 | $total_decrease = 0; |
661 | 661 | |
662 | - foreach ( $this->pending as $key => $value ) { |
|
663 | - switch( $key ) { |
|
662 | + foreach ($this->pending as $key => $value) { |
|
663 | + switch ($key) { |
|
664 | 664 | case 'items': |
665 | 665 | // Update totals for pending items |
666 | - foreach ( $this->pending[ $key ] as $item ) { |
|
667 | - switch( $item['action'] ) { |
|
666 | + foreach ($this->pending[$key] as $item) { |
|
667 | + switch ($item['action']) { |
|
668 | 668 | case 'add': |
669 | 669 | $price = $item['price']; |
670 | 670 | $taxes = $item['tax']; |
671 | 671 | |
672 | - if ( 'publish' === $this->status || 'complete' === $this->status || 'revoked' === $this->status ) { |
|
672 | + if ('publish' === $this->status || 'complete' === $this->status || 'revoked' === $this->status) { |
|
673 | 673 | $total_increase += $price; |
674 | 674 | } |
675 | 675 | break; |
676 | 676 | |
677 | 677 | case 'remove': |
678 | - if ( 'publish' === $this->status || 'complete' === $this->status || 'revoked' === $this->status ) { |
|
678 | + if ('publish' === $this->status || 'complete' === $this->status || 'revoked' === $this->status) { |
|
679 | 679 | $total_decrease += $item['price']; |
680 | 680 | } |
681 | 681 | break; |
@@ -683,16 +683,16 @@ discard block |
||
683 | 683 | } |
684 | 684 | break; |
685 | 685 | case 'fees': |
686 | - if ( 'publish' !== $this->status && 'complete' !== $this->status && 'revoked' !== $this->status ) { |
|
686 | + if ('publish' !== $this->status && 'complete' !== $this->status && 'revoked' !== $this->status) { |
|
687 | 687 | break; |
688 | 688 | } |
689 | 689 | |
690 | - if ( empty( $this->pending[ $key ] ) ) { |
|
690 | + if (empty($this->pending[$key])) { |
|
691 | 691 | break; |
692 | 692 | } |
693 | 693 | |
694 | - foreach ( $this->pending[ $key ] as $fee ) { |
|
695 | - switch( $fee['action'] ) { |
|
694 | + foreach ($this->pending[$key] as $fee) { |
|
695 | + switch ($fee['action']) { |
|
696 | 696 | case 'add': |
697 | 697 | $total_increase += $fee['amount']; |
698 | 698 | break; |
@@ -704,86 +704,86 @@ discard block |
||
704 | 704 | } |
705 | 705 | break; |
706 | 706 | case 'status': |
707 | - $this->update_status( $this->status ); |
|
707 | + $this->update_status($this->status); |
|
708 | 708 | break; |
709 | 709 | case 'gateway': |
710 | - $this->update_meta( '_wpinv_gateway', $this->gateway ); |
|
710 | + $this->update_meta('_wpinv_gateway', $this->gateway); |
|
711 | 711 | break; |
712 | 712 | case 'mode': |
713 | - $this->update_meta( '_wpinv_mode', $this->mode ); |
|
713 | + $this->update_meta('_wpinv_mode', $this->mode); |
|
714 | 714 | break; |
715 | 715 | case 'transaction_id': |
716 | - $this->update_meta( '_wpinv_transaction_id', $this->transaction_id ); |
|
716 | + $this->update_meta('_wpinv_transaction_id', $this->transaction_id); |
|
717 | 717 | break; |
718 | 718 | case 'ip': |
719 | - $this->update_meta( '_wpinv_user_ip', $this->ip ); |
|
719 | + $this->update_meta('_wpinv_user_ip', $this->ip); |
|
720 | 720 | break; |
721 | 721 | ///case 'user_id': |
722 | 722 | ///$this->update_meta( '_wpinv_user_id', $this->user_id ); |
723 | 723 | ///$this->user_info['user_id'] = $this->user_id; |
724 | 724 | ///break; |
725 | 725 | case 'first_name': |
726 | - $this->update_meta( '_wpinv_first_name', $this->first_name ); |
|
726 | + $this->update_meta('_wpinv_first_name', $this->first_name); |
|
727 | 727 | $this->user_info['first_name'] = $this->first_name; |
728 | 728 | break; |
729 | 729 | case 'last_name': |
730 | - $this->update_meta( '_wpinv_last_name', $this->last_name ); |
|
730 | + $this->update_meta('_wpinv_last_name', $this->last_name); |
|
731 | 731 | $this->user_info['last_name'] = $this->last_name; |
732 | 732 | break; |
733 | 733 | case 'phone': |
734 | - $this->update_meta( '_wpinv_phone', $this->phone ); |
|
734 | + $this->update_meta('_wpinv_phone', $this->phone); |
|
735 | 735 | $this->user_info['phone'] = $this->phone; |
736 | 736 | break; |
737 | 737 | case 'address': |
738 | - $this->update_meta( '_wpinv_address', $this->address ); |
|
738 | + $this->update_meta('_wpinv_address', $this->address); |
|
739 | 739 | $this->user_info['address'] = $this->address; |
740 | 740 | break; |
741 | 741 | case 'city': |
742 | - $this->update_meta( '_wpinv_city', $this->city ); |
|
742 | + $this->update_meta('_wpinv_city', $this->city); |
|
743 | 743 | $this->user_info['city'] = $this->city; |
744 | 744 | break; |
745 | 745 | case 'country': |
746 | - $this->update_meta( '_wpinv_country', $this->country ); |
|
746 | + $this->update_meta('_wpinv_country', $this->country); |
|
747 | 747 | $this->user_info['country'] = $this->country; |
748 | 748 | break; |
749 | 749 | case 'state': |
750 | - $this->update_meta( '_wpinv_state', $this->state ); |
|
750 | + $this->update_meta('_wpinv_state', $this->state); |
|
751 | 751 | $this->user_info['state'] = $this->state; |
752 | 752 | break; |
753 | 753 | case 'zip': |
754 | - $this->update_meta( '_wpinv_zip', $this->zip ); |
|
754 | + $this->update_meta('_wpinv_zip', $this->zip); |
|
755 | 755 | $this->user_info['zip'] = $this->zip; |
756 | 756 | break; |
757 | 757 | case 'company': |
758 | - $this->update_meta( '_wpinv_company', $this->company ); |
|
758 | + $this->update_meta('_wpinv_company', $this->company); |
|
759 | 759 | $this->user_info['company'] = $this->company; |
760 | 760 | break; |
761 | 761 | case 'vat_number': |
762 | - $this->update_meta( '_wpinv_vat_number', $this->vat_number ); |
|
762 | + $this->update_meta('_wpinv_vat_number', $this->vat_number); |
|
763 | 763 | $this->user_info['vat_number'] = $this->vat_number; |
764 | 764 | |
765 | - $vat_info = $wpi_session->get( 'user_vat_data' ); |
|
766 | - if ( $this->vat_number && !empty( $vat_info ) && isset( $vat_info['number'] ) && isset( $vat_info['valid'] ) && $vat_info['number'] == $this->vat_number ) { |
|
767 | - $adddress_confirmed = isset( $vat_info['adddress_confirmed'] ) ? $vat_info['adddress_confirmed'] : false; |
|
768 | - $this->update_meta( '_wpinv_adddress_confirmed', (bool)$adddress_confirmed ); |
|
765 | + $vat_info = $wpi_session->get('user_vat_data'); |
|
766 | + if ($this->vat_number && !empty($vat_info) && isset($vat_info['number']) && isset($vat_info['valid']) && $vat_info['number'] == $this->vat_number) { |
|
767 | + $adddress_confirmed = isset($vat_info['adddress_confirmed']) ? $vat_info['adddress_confirmed'] : false; |
|
768 | + $this->update_meta('_wpinv_adddress_confirmed', (bool)$adddress_confirmed); |
|
769 | 769 | $this->user_info['adddress_confirmed'] = (bool)$adddress_confirmed; |
770 | 770 | } |
771 | 771 | |
772 | 772 | break; |
773 | 773 | case 'vat_rate': |
774 | - $this->update_meta( '_wpinv_vat_rate', $this->vat_rate ); |
|
774 | + $this->update_meta('_wpinv_vat_rate', $this->vat_rate); |
|
775 | 775 | $this->user_info['vat_rate'] = $this->vat_rate; |
776 | 776 | break; |
777 | 777 | case 'adddress_confirmed': |
778 | - $this->update_meta( '_wpinv_adddress_confirmed', $this->adddress_confirmed ); |
|
778 | + $this->update_meta('_wpinv_adddress_confirmed', $this->adddress_confirmed); |
|
779 | 779 | $this->user_info['adddress_confirmed'] = $this->adddress_confirmed; |
780 | 780 | break; |
781 | 781 | |
782 | 782 | case 'key': |
783 | - $this->update_meta( '_wpinv_key', $this->key ); |
|
783 | + $this->update_meta('_wpinv_key', $this->key); |
|
784 | 784 | break; |
785 | 785 | case 'number': |
786 | - $this->update_meta( '_wpinv_number', $this->number ); |
|
786 | + $this->update_meta('_wpinv_number', $this->number); |
|
787 | 787 | break; |
788 | 788 | case 'date': |
789 | 789 | $args = array( |
@@ -792,34 +792,34 @@ discard block |
||
792 | 792 | 'edit_date' => true, |
793 | 793 | ); |
794 | 794 | |
795 | - wp_update_post( $args ); |
|
795 | + wp_update_post($args); |
|
796 | 796 | break; |
797 | 797 | case 'due_date': |
798 | - if ( empty( $this->due_date ) ) { |
|
798 | + if (empty($this->due_date)) { |
|
799 | 799 | $this->due_date = 'none'; |
800 | 800 | } |
801 | 801 | |
802 | - $this->update_meta( '_wpinv_due_date', $this->due_date ); |
|
802 | + $this->update_meta('_wpinv_due_date', $this->due_date); |
|
803 | 803 | break; |
804 | 804 | case 'completed_date': |
805 | - $this->update_meta( '_wpinv_completed_date', $this->completed_date ); |
|
805 | + $this->update_meta('_wpinv_completed_date', $this->completed_date); |
|
806 | 806 | break; |
807 | 807 | case 'discounts': |
808 | - if ( ! is_array( $this->discounts ) ) { |
|
809 | - $this->discounts = explode( ',', $this->discounts ); |
|
808 | + if (!is_array($this->discounts)) { |
|
809 | + $this->discounts = explode(',', $this->discounts); |
|
810 | 810 | } |
811 | 811 | |
812 | - $this->user_info['discount'] = implode( ',', $this->discounts ); |
|
812 | + $this->user_info['discount'] = implode(',', $this->discounts); |
|
813 | 813 | break; |
814 | 814 | |
815 | 815 | //case 'tax': |
816 | 816 | //$this->update_meta( '_wpinv_tax', wpinv_format_amount( $this->tax, NULL, true ) ); |
817 | 817 | //break; |
818 | 818 | case 'discount': |
819 | - $this->update_meta( '_wpinv_discount', wpinv_format_amount( $this->discount, NULL, true ) ); |
|
819 | + $this->update_meta('_wpinv_discount', wpinv_format_amount($this->discount, NULL, true)); |
|
820 | 820 | break; |
821 | 821 | case 'discount_code': |
822 | - $this->update_meta( '_wpinv_discount_code', $this->discount_code ); |
|
822 | + $this->update_meta('_wpinv_discount_code', $this->discount_code); |
|
823 | 823 | break; |
824 | 824 | //case 'fees': |
825 | 825 | //$this->update_meta( '_wpinv_fees', $this->fees ); |
@@ -829,19 +829,19 @@ discard block |
||
829 | 829 | 'ID' => $this->ID, |
830 | 830 | 'post_parent' => $this->parent_invoice, |
831 | 831 | ); |
832 | - wp_update_post( $args ); |
|
832 | + wp_update_post($args); |
|
833 | 833 | break; |
834 | 834 | default: |
835 | - do_action( 'wpinv_save', $this, $key ); |
|
835 | + do_action('wpinv_save', $this, $key); |
|
836 | 836 | break; |
837 | 837 | } |
838 | 838 | } |
839 | 839 | |
840 | - $this->update_meta( '_wpinv_subtotal', wpinv_format_amount( $this->subtotal, NULL, true ) ); |
|
841 | - $this->update_meta( '_wpinv_total', wpinv_format_amount( $this->total, NULL, true ) ); |
|
842 | - $this->update_meta( '_wpinv_tax', wpinv_format_amount( $this->tax, NULL, true ) ); |
|
840 | + $this->update_meta('_wpinv_subtotal', wpinv_format_amount($this->subtotal, NULL, true)); |
|
841 | + $this->update_meta('_wpinv_total', wpinv_format_amount($this->total, NULL, true)); |
|
842 | + $this->update_meta('_wpinv_tax', wpinv_format_amount($this->tax, NULL, true)); |
|
843 | 843 | |
844 | - $this->items = array_values( $this->items ); |
|
844 | + $this->items = array_values($this->items); |
|
845 | 845 | |
846 | 846 | $new_meta = array( |
847 | 847 | 'items' => $this->items, |
@@ -852,12 +852,12 @@ discard block |
||
852 | 852 | ); |
853 | 853 | |
854 | 854 | $meta = $this->get_meta(); |
855 | - $merged_meta = array_merge( $meta, $new_meta ); |
|
855 | + $merged_meta = array_merge($meta, $new_meta); |
|
856 | 856 | |
857 | 857 | // Only save the payment meta if it's changed |
858 | - if ( md5( serialize( $meta ) ) !== md5( serialize( $merged_meta) ) ) { |
|
859 | - $updated = $this->update_meta( '_wpinv_payment_meta', $merged_meta ); |
|
860 | - if ( false !== $updated ) { |
|
858 | + if (md5(serialize($meta)) !== md5(serialize($merged_meta))) { |
|
859 | + $updated = $this->update_meta('_wpinv_payment_meta', $merged_meta); |
|
860 | + if (false !== $updated) { |
|
861 | 861 | $saved = true; |
862 | 862 | } |
863 | 863 | } |
@@ -865,15 +865,15 @@ discard block |
||
865 | 865 | $this->pending = array(); |
866 | 866 | $saved = true; |
867 | 867 | } else { |
868 | - $this->update_meta( '_wpinv_subtotal', wpinv_format_amount( $this->subtotal, NULL, true ) ); |
|
869 | - $this->update_meta( '_wpinv_total', wpinv_format_amount( $this->total, NULL, true ) ); |
|
870 | - $this->update_meta( '_wpinv_tax', wpinv_format_amount( $this->tax, NULL, true ) ); |
|
868 | + $this->update_meta('_wpinv_subtotal', wpinv_format_amount($this->subtotal, NULL, true)); |
|
869 | + $this->update_meta('_wpinv_total', wpinv_format_amount($this->total, NULL, true)); |
|
870 | + $this->update_meta('_wpinv_tax', wpinv_format_amount($this->tax, NULL, true)); |
|
871 | 871 | } |
872 | 872 | |
873 | - do_action( 'wpinv_invoice_save', $this, $saved ); |
|
873 | + do_action('wpinv_invoice_save', $this, $saved); |
|
874 | 874 | |
875 | - if ( true === $saved || $setup ) { |
|
876 | - $this->setup_invoice( $this->ID ); |
|
875 | + if (true === $saved || $setup) { |
|
876 | + $this->setup_invoice($this->ID); |
|
877 | 877 | } |
878 | 878 | |
879 | 879 | $this->refresh_item_ids(); |
@@ -881,7 +881,7 @@ discard block |
||
881 | 881 | return $saved; |
882 | 882 | } |
883 | 883 | |
884 | - public function add_fee( $args, $global = true ) { |
|
884 | + public function add_fee($args, $global = true) { |
|
885 | 885 | $default_args = array( |
886 | 886 | 'label' => '', |
887 | 887 | 'amount' => 0, |
@@ -891,75 +891,75 @@ discard block |
||
891 | 891 | 'item_id' => 0, |
892 | 892 | ); |
893 | 893 | |
894 | - $fee = wp_parse_args( $args, $default_args ); |
|
894 | + $fee = wp_parse_args($args, $default_args); |
|
895 | 895 | |
896 | - if ( !empty( $fee['label'] ) ) { |
|
896 | + if (!empty($fee['label'])) { |
|
897 | 897 | return false; |
898 | 898 | } |
899 | 899 | |
900 | - $fee['id'] = sanitize_title( $fee['label'] ); |
|
900 | + $fee['id'] = sanitize_title($fee['label']); |
|
901 | 901 | |
902 | - $this->fees[] = $fee; |
|
902 | + $this->fees[] = $fee; |
|
903 | 903 | |
904 | 904 | $added_fee = $fee; |
905 | 905 | $added_fee['action'] = 'add'; |
906 | 906 | $this->pending['fees'][] = $added_fee; |
907 | - reset( $this->fees ); |
|
907 | + reset($this->fees); |
|
908 | 908 | |
909 | - $this->increase_fees( $fee['amount'] ); |
|
909 | + $this->increase_fees($fee['amount']); |
|
910 | 910 | return true; |
911 | 911 | } |
912 | 912 | |
913 | - public function remove_fee( $key ) { |
|
913 | + public function remove_fee($key) { |
|
914 | 914 | $removed = false; |
915 | 915 | |
916 | - if ( is_numeric( $key ) ) { |
|
917 | - $removed = $this->remove_fee_by( 'index', $key ); |
|
916 | + if (is_numeric($key)) { |
|
917 | + $removed = $this->remove_fee_by('index', $key); |
|
918 | 918 | } |
919 | 919 | |
920 | 920 | return $removed; |
921 | 921 | } |
922 | 922 | |
923 | - public function remove_fee_by( $key, $value, $global = false ) { |
|
924 | - $allowed_fee_keys = apply_filters( 'wpinv_fee_keys', array( |
|
923 | + public function remove_fee_by($key, $value, $global = false) { |
|
924 | + $allowed_fee_keys = apply_filters('wpinv_fee_keys', array( |
|
925 | 925 | 'index', 'label', 'amount', 'type', |
926 | - ) ); |
|
926 | + )); |
|
927 | 927 | |
928 | - if ( ! in_array( $key, $allowed_fee_keys ) ) { |
|
928 | + if (!in_array($key, $allowed_fee_keys)) { |
|
929 | 929 | return false; |
930 | 930 | } |
931 | 931 | |
932 | 932 | $removed = false; |
933 | - if ( 'index' === $key && array_key_exists( $value, $this->fees ) ) { |
|
934 | - $removed_fee = $this->fees[ $value ]; |
|
933 | + if ('index' === $key && array_key_exists($value, $this->fees)) { |
|
934 | + $removed_fee = $this->fees[$value]; |
|
935 | 935 | $removed_fee['action'] = 'remove'; |
936 | 936 | $this->pending['fees'][] = $removed_fee; |
937 | 937 | |
938 | - $this->decrease_fees( $removed_fee['amount'] ); |
|
938 | + $this->decrease_fees($removed_fee['amount']); |
|
939 | 939 | |
940 | - unset( $this->fees[ $value ] ); |
|
940 | + unset($this->fees[$value]); |
|
941 | 941 | $removed = true; |
942 | - } else if ( 'index' !== $key ) { |
|
943 | - foreach ( $this->fees as $index => $fee ) { |
|
944 | - if ( isset( $fee[ $key ] ) && $fee[ $key ] == $value ) { |
|
942 | + } else if ('index' !== $key) { |
|
943 | + foreach ($this->fees as $index => $fee) { |
|
944 | + if (isset($fee[$key]) && $fee[$key] == $value) { |
|
945 | 945 | $removed_fee = $fee; |
946 | 946 | $removed_fee['action'] = 'remove'; |
947 | 947 | $this->pending['fees'][] = $removed_fee; |
948 | 948 | |
949 | - $this->decrease_fees( $removed_fee['amount'] ); |
|
949 | + $this->decrease_fees($removed_fee['amount']); |
|
950 | 950 | |
951 | - unset( $this->fees[ $index ] ); |
|
951 | + unset($this->fees[$index]); |
|
952 | 952 | $removed = true; |
953 | 953 | |
954 | - if ( false === $global ) { |
|
954 | + if (false === $global) { |
|
955 | 955 | break; |
956 | 956 | } |
957 | 957 | } |
958 | 958 | } |
959 | 959 | } |
960 | 960 | |
961 | - if ( true === $removed ) { |
|
962 | - $this->fees = array_values( $this->fees ); |
|
961 | + if (true === $removed) { |
|
962 | + $this->fees = array_values($this->fees); |
|
963 | 963 | } |
964 | 964 | |
965 | 965 | return $removed; |
@@ -967,35 +967,35 @@ discard block |
||
967 | 967 | |
968 | 968 | |
969 | 969 | |
970 | - public function add_note( $note = '', $customer_type = false, $added_by_user = false, $system = false ) { |
|
970 | + public function add_note($note = '', $customer_type = false, $added_by_user = false, $system = false) { |
|
971 | 971 | // Bail if no note specified |
972 | - if( !$note ) { |
|
972 | + if (!$note) { |
|
973 | 973 | return false; |
974 | 974 | } |
975 | 975 | |
976 | - if ( empty( $this->ID ) ) |
|
976 | + if (empty($this->ID)) |
|
977 | 977 | return false; |
978 | 978 | |
979 | - if ( ( ( is_user_logged_in() && current_user_can( 'manage_options' ) ) || $added_by_user ) && !$system ) { |
|
980 | - $user = get_user_by( 'id', get_current_user_id() ); |
|
979 | + if (((is_user_logged_in() && current_user_can('manage_options')) || $added_by_user) && !$system) { |
|
980 | + $user = get_user_by('id', get_current_user_id()); |
|
981 | 981 | $comment_author = $user->display_name; |
982 | 982 | $comment_author_email = $user->user_email; |
983 | 983 | } else { |
984 | - $comment_author = __( 'System', 'invoicing' ); |
|
985 | - $comment_author_email = strtolower( __( 'System', 'invoicing' ) ) . '@'; |
|
986 | - $comment_author_email .= isset( $_SERVER['HTTP_HOST'] ) ? str_replace( 'www.', '', $_SERVER['HTTP_HOST'] ) : 'noreply.com'; |
|
987 | - $comment_author_email = sanitize_email( $comment_author_email ); |
|
984 | + $comment_author = __('System', 'invoicing'); |
|
985 | + $comment_author_email = strtolower(__('System', 'invoicing')) . '@'; |
|
986 | + $comment_author_email .= isset($_SERVER['HTTP_HOST']) ? str_replace('www.', '', $_SERVER['HTTP_HOST']) : 'noreply.com'; |
|
987 | + $comment_author_email = sanitize_email($comment_author_email); |
|
988 | 988 | } |
989 | 989 | |
990 | - do_action( 'wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type ); |
|
990 | + do_action('wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type); |
|
991 | 991 | |
992 | - $note_id = wp_insert_comment( wp_filter_comment( array( |
|
992 | + $note_id = wp_insert_comment(wp_filter_comment(array( |
|
993 | 993 | 'comment_post_ID' => $this->ID, |
994 | 994 | 'comment_content' => $note, |
995 | 995 | 'comment_agent' => 'GeoDirectory', |
996 | 996 | 'user_id' => is_admin() ? get_current_user_id() : 0, |
997 | - 'comment_date' => current_time( 'mysql' ), |
|
998 | - 'comment_date_gmt' => current_time( 'mysql', 1 ), |
|
997 | + 'comment_date' => current_time('mysql'), |
|
998 | + 'comment_date_gmt' => current_time('mysql', 1), |
|
999 | 999 | 'comment_approved' => 1, |
1000 | 1000 | 'comment_parent' => 0, |
1001 | 1001 | 'comment_author' => $comment_author, |
@@ -1003,53 +1003,53 @@ discard block |
||
1003 | 1003 | 'comment_author_url' => '', |
1004 | 1004 | 'comment_author_email' => $comment_author_email, |
1005 | 1005 | 'comment_type' => 'wpinv_note' |
1006 | - ) ) ); |
|
1006 | + ))); |
|
1007 | 1007 | |
1008 | - do_action( 'wpinv_insert_payment_note', $note_id, $this->ID, $note ); |
|
1008 | + do_action('wpinv_insert_payment_note', $note_id, $this->ID, $note); |
|
1009 | 1009 | |
1010 | - if ( $customer_type ) { |
|
1011 | - add_comment_meta( $note_id, '_wpi_customer_note', 1 ); |
|
1010 | + if ($customer_type) { |
|
1011 | + add_comment_meta($note_id, '_wpi_customer_note', 1); |
|
1012 | 1012 | |
1013 | - do_action( 'wpinv_new_customer_note', array( 'invoice_id' => $this->ID, 'user_note' => $note ) ); |
|
1013 | + do_action('wpinv_new_customer_note', array('invoice_id' => $this->ID, 'user_note' => $note)); |
|
1014 | 1014 | } |
1015 | 1015 | |
1016 | 1016 | return $note_id; |
1017 | 1017 | } |
1018 | 1018 | |
1019 | - private function increase_subtotal( $amount = 0.00 ) { |
|
1020 | - $amount = (float) $amount; |
|
1019 | + private function increase_subtotal($amount = 0.00) { |
|
1020 | + $amount = (float)$amount; |
|
1021 | 1021 | $this->subtotal += $amount; |
1022 | - $this->subtotal = wpinv_format_amount( $this->subtotal, NULL, true ); |
|
1022 | + $this->subtotal = wpinv_format_amount($this->subtotal, NULL, true); |
|
1023 | 1023 | |
1024 | 1024 | $this->recalculate_total(); |
1025 | 1025 | } |
1026 | 1026 | |
1027 | - private function decrease_subtotal( $amount = 0.00 ) { |
|
1028 | - $amount = (float) $amount; |
|
1027 | + private function decrease_subtotal($amount = 0.00) { |
|
1028 | + $amount = (float)$amount; |
|
1029 | 1029 | $this->subtotal -= $amount; |
1030 | - $this->subtotal = wpinv_format_amount( $this->subtotal, NULL, true ); |
|
1030 | + $this->subtotal = wpinv_format_amount($this->subtotal, NULL, true); |
|
1031 | 1031 | |
1032 | - if ( $this->subtotal < 0 ) { |
|
1032 | + if ($this->subtotal < 0) { |
|
1033 | 1033 | $this->subtotal = 0; |
1034 | 1034 | } |
1035 | 1035 | |
1036 | 1036 | $this->recalculate_total(); |
1037 | 1037 | } |
1038 | 1038 | |
1039 | - private function increase_fees( $amount = 0.00 ) { |
|
1039 | + private function increase_fees($amount = 0.00) { |
|
1040 | 1040 | $amount = (float)$amount; |
1041 | 1041 | $this->fees_total += $amount; |
1042 | - $this->fees_total = wpinv_format_amount( $this->fees_total, NULL, true ); |
|
1042 | + $this->fees_total = wpinv_format_amount($this->fees_total, NULL, true); |
|
1043 | 1043 | |
1044 | 1044 | $this->recalculate_total(); |
1045 | 1045 | } |
1046 | 1046 | |
1047 | - private function decrease_fees( $amount = 0.00 ) { |
|
1048 | - $amount = (float) $amount; |
|
1047 | + private function decrease_fees($amount = 0.00) { |
|
1048 | + $amount = (float)$amount; |
|
1049 | 1049 | $this->fees_total -= $amount; |
1050 | - $this->fees_total = wpinv_format_amount( $this->fees_total, NULL, true ); |
|
1050 | + $this->fees_total = wpinv_format_amount($this->fees_total, NULL, true); |
|
1051 | 1051 | |
1052 | - if ( $this->fees_total < 0 ) { |
|
1052 | + if ($this->fees_total < 0) { |
|
1053 | 1053 | $this->fees_total = 0; |
1054 | 1054 | } |
1055 | 1055 | |
@@ -1060,54 +1060,54 @@ discard block |
||
1060 | 1060 | global $wpi_nosave; |
1061 | 1061 | |
1062 | 1062 | $this->total = $this->subtotal + $this->tax + $this->fees_total; |
1063 | - $this->total = wpinv_format_amount( $this->total, NULL, true ); |
|
1063 | + $this->total = wpinv_format_amount($this->total, NULL, true); |
|
1064 | 1064 | |
1065 | - do_action( 'wpinv_invoice_recalculate_total', $this, $wpi_nosave ); |
|
1065 | + do_action('wpinv_invoice_recalculate_total', $this, $wpi_nosave); |
|
1066 | 1066 | } |
1067 | 1067 | |
1068 | - public function increase_tax( $amount = 0.00 ) { |
|
1069 | - $amount = (float) $amount; |
|
1068 | + public function increase_tax($amount = 0.00) { |
|
1069 | + $amount = (float)$amount; |
|
1070 | 1070 | $this->tax += $amount; |
1071 | 1071 | |
1072 | 1072 | $this->recalculate_total(); |
1073 | 1073 | } |
1074 | 1074 | |
1075 | - public function decrease_tax( $amount = 0.00 ) { |
|
1076 | - $amount = (float) $amount; |
|
1075 | + public function decrease_tax($amount = 0.00) { |
|
1076 | + $amount = (float)$amount; |
|
1077 | 1077 | $this->tax -= $amount; |
1078 | 1078 | |
1079 | - if ( $this->tax < 0 ) { |
|
1079 | + if ($this->tax < 0) { |
|
1080 | 1080 | $this->tax = 0; |
1081 | 1081 | } |
1082 | 1082 | |
1083 | 1083 | $this->recalculate_total(); |
1084 | 1084 | } |
1085 | 1085 | |
1086 | - public function update_status( $new_status = false, $note = '', $manual = false ) { |
|
1087 | - $old_status = ! empty( $this->old_status ) ? $this->old_status : get_post_status( $this->ID ); |
|
1086 | + public function update_status($new_status = false, $note = '', $manual = false) { |
|
1087 | + $old_status = !empty($this->old_status) ? $this->old_status : get_post_status($this->ID); |
|
1088 | 1088 | |
1089 | - if ( $old_status === $new_status && in_array( $new_status, array_keys( wpinv_get_invoice_statuses() ) ) ) { |
|
1089 | + if ($old_status === $new_status && in_array($new_status, array_keys(wpinv_get_invoice_statuses()))) { |
|
1090 | 1090 | return false; // Don't permit status changes that aren't changes |
1091 | 1091 | } |
1092 | 1092 | |
1093 | - $do_change = apply_filters( 'wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status ); |
|
1093 | + $do_change = apply_filters('wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status); |
|
1094 | 1094 | $updated = false; |
1095 | 1095 | |
1096 | - if ( $do_change ) { |
|
1097 | - do_action( 'wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status ); |
|
1096 | + if ($do_change) { |
|
1097 | + do_action('wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status); |
|
1098 | 1098 | |
1099 | 1099 | $update_post_data = array(); |
1100 | 1100 | $update_post_data['ID'] = $this->ID; |
1101 | 1101 | $update_post_data['post_status'] = $new_status; |
1102 | - $update_post_data['edit_date'] = current_time( 'mysql', 0 ); |
|
1103 | - $update_post_data['edit_date_gmt'] = current_time( 'mysql', 1 ); |
|
1102 | + $update_post_data['edit_date'] = current_time('mysql', 0); |
|
1103 | + $update_post_data['edit_date_gmt'] = current_time('mysql', 1); |
|
1104 | 1104 | |
1105 | - $update_post_data = apply_filters( 'wpinv_update_invoice_status_fields', $update_post_data, $this->ID ); |
|
1105 | + $update_post_data = apply_filters('wpinv_update_invoice_status_fields', $update_post_data, $this->ID); |
|
1106 | 1106 | |
1107 | - $updated = wp_update_post( $update_post_data ); |
|
1107 | + $updated = wp_update_post($update_post_data); |
|
1108 | 1108 | |
1109 | 1109 | // Process any specific status functions |
1110 | - switch( $new_status ) { |
|
1110 | + switch ($new_status) { |
|
1111 | 1111 | case 'refunded': |
1112 | 1112 | $this->process_refund(); |
1113 | 1113 | break; |
@@ -1120,9 +1120,9 @@ discard block |
||
1120 | 1120 | } |
1121 | 1121 | |
1122 | 1122 | // Status was changed. |
1123 | - do_action( 'wpinv_status_' . $new_status, $this->ID, $old_status ); |
|
1124 | - do_action( 'wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status ); |
|
1125 | - do_action( 'wpinv_update_status', $this->ID, $new_status, $old_status ); |
|
1123 | + do_action('wpinv_status_' . $new_status, $this->ID, $old_status); |
|
1124 | + do_action('wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status); |
|
1125 | + do_action('wpinv_update_status', $this->ID, $new_status, $old_status); |
|
1126 | 1126 | } |
1127 | 1127 | |
1128 | 1128 | return $updated; |
@@ -1136,72 +1136,72 @@ discard block |
||
1136 | 1136 | $this->save(); |
1137 | 1137 | } |
1138 | 1138 | |
1139 | - public function update_meta( $meta_key = '', $meta_value = '', $prev_value = '' ) { |
|
1140 | - if ( empty( $meta_key ) ) { |
|
1139 | + public function update_meta($meta_key = '', $meta_value = '', $prev_value = '') { |
|
1140 | + if (empty($meta_key)) { |
|
1141 | 1141 | return false; |
1142 | 1142 | } |
1143 | 1143 | |
1144 | - if ( $meta_key == 'key' || $meta_key == 'date' ) { |
|
1144 | + if ($meta_key == 'key' || $meta_key == 'date') { |
|
1145 | 1145 | $current_meta = $this->get_meta(); |
1146 | - $current_meta[ $meta_key ] = $meta_value; |
|
1146 | + $current_meta[$meta_key] = $meta_value; |
|
1147 | 1147 | |
1148 | 1148 | $meta_key = '_wpinv_payment_meta'; |
1149 | 1149 | $meta_value = $current_meta; |
1150 | 1150 | } |
1151 | 1151 | |
1152 | - $meta_value = apply_filters( 'wpinv_update_payment_meta_' . $meta_key, $meta_value, $this->ID ); |
|
1152 | + $meta_value = apply_filters('wpinv_update_payment_meta_' . $meta_key, $meta_value, $this->ID); |
|
1153 | 1153 | |
1154 | - if ( $meta_key == '_wpinv_completed_date' && !empty( $meta_value ) ) { |
|
1154 | + if ($meta_key == '_wpinv_completed_date' && !empty($meta_value)) { |
|
1155 | 1155 | $args = array( |
1156 | 1156 | 'ID' => $this->ID, |
1157 | 1157 | 'post_date' => $meta_value, |
1158 | 1158 | 'edit_date' => true, |
1159 | - 'post_date_gmt' => get_gmt_from_date( $meta_value ), |
|
1159 | + 'post_date_gmt' => get_gmt_from_date($meta_value), |
|
1160 | 1160 | 'post_modified' => $meta_value, |
1161 | - 'post_modified_gmt' => get_gmt_from_date( $meta_value ) |
|
1161 | + 'post_modified_gmt' => get_gmt_from_date($meta_value) |
|
1162 | 1162 | ); |
1163 | - wp_update_post( $args ); |
|
1163 | + wp_update_post($args); |
|
1164 | 1164 | } |
1165 | 1165 | |
1166 | - return update_post_meta( $this->ID, $meta_key, $meta_value, $prev_value ); |
|
1166 | + return update_post_meta($this->ID, $meta_key, $meta_value, $prev_value); |
|
1167 | 1167 | } |
1168 | 1168 | |
1169 | 1169 | private function process_refund() { |
1170 | 1170 | $process_refund = true; |
1171 | 1171 | |
1172 | 1172 | // If the payment was not in publish or revoked status, don't decrement stats as they were never incremented |
1173 | - if ( ( 'publish' != $this->old_status && 'revoked' != $this->old_status ) || 'refunded' != $this->status ) { |
|
1173 | + if (('publish' != $this->old_status && 'revoked' != $this->old_status) || 'refunded' != $this->status) { |
|
1174 | 1174 | $process_refund = false; |
1175 | 1175 | } |
1176 | 1176 | |
1177 | 1177 | // Allow extensions to filter for their own payment types, Example: Recurring Payments |
1178 | - $process_refund = apply_filters( 'wpinv_should_process_refund', $process_refund, $this ); |
|
1178 | + $process_refund = apply_filters('wpinv_should_process_refund', $process_refund, $this); |
|
1179 | 1179 | |
1180 | - if ( false === $process_refund ) { |
|
1180 | + if (false === $process_refund) { |
|
1181 | 1181 | return; |
1182 | 1182 | } |
1183 | 1183 | |
1184 | - do_action( 'wpinv_pre_refund_invoice', $this ); |
|
1184 | + do_action('wpinv_pre_refund_invoice', $this); |
|
1185 | 1185 | |
1186 | - $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_refund', true, $this ); |
|
1187 | - $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_refund', true, $this ); |
|
1188 | - $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_refund', true, $this ); |
|
1186 | + $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_refund', true, $this); |
|
1187 | + $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_refund', true, $this); |
|
1188 | + $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_refund', true, $this); |
|
1189 | 1189 | |
1190 | - do_action( 'wpinv_post_refund_invoice', $this ); |
|
1190 | + do_action('wpinv_post_refund_invoice', $this); |
|
1191 | 1191 | } |
1192 | 1192 | |
1193 | 1193 | private function process_failure() { |
1194 | 1194 | $discounts = $this->discounts; |
1195 | - if ( empty( $discounts ) ) { |
|
1195 | + if (empty($discounts)) { |
|
1196 | 1196 | return; |
1197 | 1197 | } |
1198 | 1198 | |
1199 | - if ( ! is_array( $discounts ) ) { |
|
1200 | - $discounts = array_map( 'trim', explode( ',', $discounts ) ); |
|
1199 | + if (!is_array($discounts)) { |
|
1200 | + $discounts = array_map('trim', explode(',', $discounts)); |
|
1201 | 1201 | } |
1202 | 1202 | |
1203 | - foreach ( $discounts as $discount ) { |
|
1204 | - wpinv_decrease_discount_usage( $discount ); |
|
1203 | + foreach ($discounts as $discount) { |
|
1204 | + wpinv_decrease_discount_usage($discount); |
|
1205 | 1205 | } |
1206 | 1206 | } |
1207 | 1207 | |
@@ -1209,92 +1209,92 @@ discard block |
||
1209 | 1209 | $process_pending = true; |
1210 | 1210 | |
1211 | 1211 | // If the payment was not in publish or revoked status, don't decrement stats as they were never incremented |
1212 | - if ( ( 'publish' != $this->old_status && 'revoked' != $this->old_status ) || 'pending' != $this->status ) { |
|
1212 | + if (('publish' != $this->old_status && 'revoked' != $this->old_status) || 'pending' != $this->status) { |
|
1213 | 1213 | $process_pending = false; |
1214 | 1214 | } |
1215 | 1215 | |
1216 | 1216 | // Allow extensions to filter for their own payment types, Example: Recurring Payments |
1217 | - $process_pending = apply_filters( 'wpinv_should_process_pending', $process_pending, $this ); |
|
1217 | + $process_pending = apply_filters('wpinv_should_process_pending', $process_pending, $this); |
|
1218 | 1218 | |
1219 | - if ( false === $process_pending ) { |
|
1219 | + if (false === $process_pending) { |
|
1220 | 1220 | return; |
1221 | 1221 | } |
1222 | 1222 | |
1223 | - $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_pending', true, $this ); |
|
1224 | - $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_pending', true, $this ); |
|
1225 | - $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_pending', true, $this ); |
|
1223 | + $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_pending', true, $this); |
|
1224 | + $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_pending', true, $this); |
|
1225 | + $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_pending', true, $this); |
|
1226 | 1226 | |
1227 | 1227 | $this->completed_date = ''; |
1228 | - $this->update_meta( '_wpinv_completed_date', '' ); |
|
1228 | + $this->update_meta('_wpinv_completed_date', ''); |
|
1229 | 1229 | } |
1230 | 1230 | |
1231 | 1231 | // get data |
1232 | - public function get_meta( $meta_key = '_wpinv_payment_meta', $single = true ) { |
|
1233 | - $meta = get_post_meta( $this->ID, $meta_key, $single ); |
|
1232 | + public function get_meta($meta_key = '_wpinv_payment_meta', $single = true) { |
|
1233 | + $meta = get_post_meta($this->ID, $meta_key, $single); |
|
1234 | 1234 | |
1235 | - if ( $meta_key === '_wpinv_payment_meta' ) { |
|
1235 | + if ($meta_key === '_wpinv_payment_meta') { |
|
1236 | 1236 | |
1237 | - if(!is_array($meta)){$meta = array();} // we need this to be an array so make sure it is. |
|
1237 | + if (!is_array($meta)) {$meta = array(); } // we need this to be an array so make sure it is. |
|
1238 | 1238 | |
1239 | - if ( empty( $meta['key'] ) ) { |
|
1239 | + if (empty($meta['key'])) { |
|
1240 | 1240 | $meta['key'] = $this->setup_invoice_key(); |
1241 | 1241 | } |
1242 | 1242 | |
1243 | - if ( empty( $meta['date'] ) ) { |
|
1244 | - $meta['date'] = get_post_field( 'post_date', $this->ID ); |
|
1243 | + if (empty($meta['date'])) { |
|
1244 | + $meta['date'] = get_post_field('post_date', $this->ID); |
|
1245 | 1245 | } |
1246 | 1246 | } |
1247 | 1247 | |
1248 | - $meta = apply_filters( 'wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID ); |
|
1248 | + $meta = apply_filters('wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID); |
|
1249 | 1249 | |
1250 | - return apply_filters( 'wpinv_get_invoice_meta', $meta, $this->ID, $meta_key ); |
|
1250 | + return apply_filters('wpinv_get_invoice_meta', $meta, $this->ID, $meta_key); |
|
1251 | 1251 | } |
1252 | 1252 | |
1253 | 1253 | public function get_description() { |
1254 | - $post = get_post( $this->ID ); |
|
1254 | + $post = get_post($this->ID); |
|
1255 | 1255 | |
1256 | - $description = !empty( $post ) ? $post->post_content : ''; |
|
1257 | - return apply_filters( 'wpinv_get_description', $description, $this->ID, $this ); |
|
1256 | + $description = !empty($post) ? $post->post_content : ''; |
|
1257 | + return apply_filters('wpinv_get_description', $description, $this->ID, $this); |
|
1258 | 1258 | } |
1259 | 1259 | |
1260 | - public function get_status( $nicename = false ) { |
|
1261 | - if ( !$nicename ) { |
|
1260 | + public function get_status($nicename = false) { |
|
1261 | + if (!$nicename) { |
|
1262 | 1262 | $status = $this->status; |
1263 | 1263 | } else { |
1264 | 1264 | $status = $this->status_nicename; |
1265 | 1265 | } |
1266 | 1266 | |
1267 | - return apply_filters( 'wpinv_get_status', $status, $nicename, $this->ID, $this ); |
|
1267 | + return apply_filters('wpinv_get_status', $status, $nicename, $this->ID, $this); |
|
1268 | 1268 | } |
1269 | 1269 | |
1270 | 1270 | public function get_cart_details() { |
1271 | - return apply_filters( 'wpinv_cart_details', $this->cart_details, $this->ID, $this ); |
|
1271 | + return apply_filters('wpinv_cart_details', $this->cart_details, $this->ID, $this); |
|
1272 | 1272 | } |
1273 | 1273 | |
1274 | - public function get_subtotal( $currency = false ) { |
|
1275 | - $subtotal = wpinv_format_amount( $this->subtotal, NULL, !$currency ); |
|
1274 | + public function get_subtotal($currency = false) { |
|
1275 | + $subtotal = wpinv_format_amount($this->subtotal, NULL, !$currency); |
|
1276 | 1276 | |
1277 | - if ( $currency ) { |
|
1278 | - $subtotal = wpinv_price( $subtotal, $this->get_currency() ); |
|
1277 | + if ($currency) { |
|
1278 | + $subtotal = wpinv_price($subtotal, $this->get_currency()); |
|
1279 | 1279 | } |
1280 | 1280 | |
1281 | - return apply_filters( 'wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency ); |
|
1281 | + return apply_filters('wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency); |
|
1282 | 1282 | } |
1283 | 1283 | |
1284 | - public function get_total( $currency = false ) { |
|
1285 | - if ( $this->is_free_trial() ) { |
|
1286 | - $total = wpinv_format_amount( 0, NULL, !$currency ); |
|
1284 | + public function get_total($currency = false) { |
|
1285 | + if ($this->is_free_trial()) { |
|
1286 | + $total = wpinv_format_amount(0, NULL, !$currency); |
|
1287 | 1287 | } else { |
1288 | - $total = wpinv_format_amount( $this->total, NULL, !$currency ); |
|
1288 | + $total = wpinv_format_amount($this->total, NULL, !$currency); |
|
1289 | 1289 | } |
1290 | - if ( $currency ) { |
|
1291 | - $total = wpinv_price( $total, $this->get_currency() ); |
|
1290 | + if ($currency) { |
|
1291 | + $total = wpinv_price($total, $this->get_currency()); |
|
1292 | 1292 | } |
1293 | 1293 | |
1294 | - return apply_filters( 'wpinv_get_invoice_total', $total, $this->ID, $this, $currency ); |
|
1294 | + return apply_filters('wpinv_get_invoice_total', $total, $this->ID, $this, $currency); |
|
1295 | 1295 | } |
1296 | 1296 | |
1297 | - public function get_recurring_details( $field = '', $currency = false ) { |
|
1297 | + public function get_recurring_details($field = '', $currency = false) { |
|
1298 | 1298 | $data = array(); |
1299 | 1299 | $data['cart_details'] = $this->cart_details; |
1300 | 1300 | $data['subtotal'] = $this->get_subtotal(); |
@@ -1302,45 +1302,45 @@ discard block |
||
1302 | 1302 | $data['tax'] = $this->get_tax(); |
1303 | 1303 | $data['total'] = $this->get_total(); |
1304 | 1304 | |
1305 | - if ( !empty( $this->cart_details ) && ( $this->is_parent() || $this->is_renewal() ) ) { |
|
1305 | + if (!empty($this->cart_details) && ($this->is_parent() || $this->is_renewal())) { |
|
1306 | 1306 | $is_free_trial = $this->is_free_trial(); |
1307 | - $discounts = $this->get_discounts( true ); |
|
1307 | + $discounts = $this->get_discounts(true); |
|
1308 | 1308 | |
1309 | - if ( $is_free_trial || !empty( $discounts ) ) { |
|
1309 | + if ($is_free_trial || !empty($discounts)) { |
|
1310 | 1310 | $first_use_only = false; |
1311 | 1311 | |
1312 | - if ( !empty( $discounts ) ) { |
|
1313 | - foreach ( $discounts as $key => $code ) { |
|
1314 | - if ( wpinv_discount_is_recurring( $code, true ) ) { |
|
1312 | + if (!empty($discounts)) { |
|
1313 | + foreach ($discounts as $key => $code) { |
|
1314 | + if (wpinv_discount_is_recurring($code, true)) { |
|
1315 | 1315 | $first_use_only = true; |
1316 | 1316 | break; |
1317 | 1317 | } |
1318 | 1318 | } |
1319 | 1319 | } |
1320 | 1320 | |
1321 | - if ( !$first_use_only ) { |
|
1322 | - $data['subtotal'] = wpinv_format_amount( $this->subtotal, NULL, true ); |
|
1323 | - $data['discount'] = wpinv_format_amount( $this->discount, NULL, true ); |
|
1324 | - $data['tax'] = wpinv_format_amount( $this->tax, NULL, true ); |
|
1325 | - $data['total'] = wpinv_format_amount( $this->total, NULL, true ); |
|
1321 | + if (!$first_use_only) { |
|
1322 | + $data['subtotal'] = wpinv_format_amount($this->subtotal, NULL, true); |
|
1323 | + $data['discount'] = wpinv_format_amount($this->discount, NULL, true); |
|
1324 | + $data['tax'] = wpinv_format_amount($this->tax, NULL, true); |
|
1325 | + $data['total'] = wpinv_format_amount($this->total, NULL, true); |
|
1326 | 1326 | } else { |
1327 | 1327 | $cart_subtotal = 0; |
1328 | 1328 | $cart_discount = 0; |
1329 | 1329 | $cart_tax = 0; |
1330 | 1330 | |
1331 | - foreach ( $this->cart_details as $key => $item ) { |
|
1332 | - $item_quantity = $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1; |
|
1333 | - $item_subtotal = !empty( $item['subtotal'] ) ? $item['subtotal'] : $item['item_price'] * $item_quantity; |
|
1331 | + foreach ($this->cart_details as $key => $item) { |
|
1332 | + $item_quantity = $item['quantity'] > 0 ? absint($item['quantity']) : 1; |
|
1333 | + $item_subtotal = !empty($item['subtotal']) ? $item['subtotal'] : $item['item_price'] * $item_quantity; |
|
1334 | 1334 | $item_discount = 0; |
1335 | - $item_tax = $item_subtotal > 0 && !empty( $item['vat_rate'] ) ? ( $item_subtotal * 0.01 * (float)$item['vat_rate'] ) : 0; |
|
1335 | + $item_tax = $item_subtotal > 0 && !empty($item['vat_rate']) ? ($item_subtotal * 0.01 * (float)$item['vat_rate']) : 0; |
|
1336 | 1336 | |
1337 | - if ( wpinv_prices_include_tax() ) { |
|
1338 | - $item_subtotal -= wpinv_format_amount( $item_tax, NULL, true ); |
|
1337 | + if (wpinv_prices_include_tax()) { |
|
1338 | + $item_subtotal -= wpinv_format_amount($item_tax, NULL, true); |
|
1339 | 1339 | } |
1340 | 1340 | |
1341 | 1341 | $item_total = $item_subtotal - $item_discount + $item_tax; |
1342 | 1342 | // Do not allow totals to go negative |
1343 | - if ( $item_total < 0 ) { |
|
1343 | + if ($item_total < 0) { |
|
1344 | 1344 | $item_total = 0; |
1345 | 1345 | } |
1346 | 1346 | |
@@ -1348,107 +1348,107 @@ discard block |
||
1348 | 1348 | $cart_discount += (float)($item_discount); |
1349 | 1349 | $cart_tax += (float)($item_tax); |
1350 | 1350 | |
1351 | - $data['cart_details'][$key]['discount'] = wpinv_format_amount( $item_discount, NULL, true ); |
|
1352 | - $data['cart_details'][$key]['tax'] = wpinv_format_amount( $item_tax, NULL, true ); |
|
1353 | - $data['cart_details'][$key]['price'] = wpinv_format_amount( $item_total, NULL, true ); |
|
1351 | + $data['cart_details'][$key]['discount'] = wpinv_format_amount($item_discount, NULL, true); |
|
1352 | + $data['cart_details'][$key]['tax'] = wpinv_format_amount($item_tax, NULL, true); |
|
1353 | + $data['cart_details'][$key]['price'] = wpinv_format_amount($item_total, NULL, true); |
|
1354 | 1354 | } |
1355 | 1355 | |
1356 | - $data['subtotal'] = wpinv_format_amount( $cart_subtotal, NULL, true ); |
|
1357 | - $data['discount'] = wpinv_format_amount( $cart_discount, NULL, true ); |
|
1358 | - $data['tax'] = wpinv_format_amount( $cart_tax, NULL, true ); |
|
1359 | - $data['total'] = wpinv_format_amount( ( $data['subtotal'] + $data['tax'] ), NULL, true ); |
|
1356 | + $data['subtotal'] = wpinv_format_amount($cart_subtotal, NULL, true); |
|
1357 | + $data['discount'] = wpinv_format_amount($cart_discount, NULL, true); |
|
1358 | + $data['tax'] = wpinv_format_amount($cart_tax, NULL, true); |
|
1359 | + $data['total'] = wpinv_format_amount(($data['subtotal'] + $data['tax']), NULL, true); |
|
1360 | 1360 | } |
1361 | 1361 | } |
1362 | 1362 | } |
1363 | 1363 | |
1364 | - $data = apply_filters( 'wpinv_get_invoice_recurring_details', $data, $this, $field, $currency ); |
|
1364 | + $data = apply_filters('wpinv_get_invoice_recurring_details', $data, $this, $field, $currency); |
|
1365 | 1365 | |
1366 | - if ( isset( $data[$field] ) ) { |
|
1367 | - return ( $currency ? wpinv_price( $data[$field], $this->get_currency() ) : $data[$field] ); |
|
1366 | + if (isset($data[$field])) { |
|
1367 | + return ($currency ? wpinv_price($data[$field], $this->get_currency()) : $data[$field]); |
|
1368 | 1368 | } |
1369 | 1369 | |
1370 | 1370 | return $data; |
1371 | 1371 | } |
1372 | 1372 | |
1373 | - public function get_final_tax( $currency = false ) { |
|
1374 | - $final_total = wpinv_format_amount( $this->tax, NULL, !$currency ); |
|
1375 | - if ( $currency ) { |
|
1376 | - $final_total = wpinv_price( $final_total, $this->get_currency() ); |
|
1373 | + public function get_final_tax($currency = false) { |
|
1374 | + $final_total = wpinv_format_amount($this->tax, NULL, !$currency); |
|
1375 | + if ($currency) { |
|
1376 | + $final_total = wpinv_price($final_total, $this->get_currency()); |
|
1377 | 1377 | } |
1378 | 1378 | |
1379 | - return apply_filters( 'wpinv_get_invoice_final_total', $final_total, $this, $currency ); |
|
1379 | + return apply_filters('wpinv_get_invoice_final_total', $final_total, $this, $currency); |
|
1380 | 1380 | } |
1381 | 1381 | |
1382 | - public function get_discounts( $array = false ) { |
|
1382 | + public function get_discounts($array = false) { |
|
1383 | 1383 | $discounts = $this->discounts; |
1384 | - if ( $array && $discounts ) { |
|
1385 | - $discounts = explode( ',', $discounts ); |
|
1384 | + if ($array && $discounts) { |
|
1385 | + $discounts = explode(',', $discounts); |
|
1386 | 1386 | } |
1387 | - return apply_filters( 'wpinv_payment_discounts', $discounts, $this->ID, $this, $array ); |
|
1387 | + return apply_filters('wpinv_payment_discounts', $discounts, $this->ID, $this, $array); |
|
1388 | 1388 | } |
1389 | 1389 | |
1390 | - public function get_discount( $currency = false, $dash = false ) { |
|
1391 | - if ( !empty( $this->discounts ) ) { |
|
1390 | + public function get_discount($currency = false, $dash = false) { |
|
1391 | + if (!empty($this->discounts)) { |
|
1392 | 1392 | global $ajax_cart_details; |
1393 | 1393 | $ajax_cart_details = $this->get_cart_details(); |
1394 | 1394 | |
1395 | - $this->discount = wpinv_get_cart_items_discount_amount( $this->items , $this->discounts ); |
|
1395 | + $this->discount = wpinv_get_cart_items_discount_amount($this->items, $this->discounts); |
|
1396 | 1396 | } |
1397 | - $discount = wpinv_format_amount( $this->discount, NULL, !$currency ); |
|
1397 | + $discount = wpinv_format_amount($this->discount, NULL, !$currency); |
|
1398 | 1398 | $dash = $dash && $discount > 0 ? '–' : ''; |
1399 | 1399 | |
1400 | - if ( $currency ) { |
|
1401 | - $discount = wpinv_price( $discount, $this->get_currency() ); |
|
1400 | + if ($currency) { |
|
1401 | + $discount = wpinv_price($discount, $this->get_currency()); |
|
1402 | 1402 | } |
1403 | 1403 | |
1404 | - $discount = $dash . $discount; |
|
1404 | + $discount = $dash . $discount; |
|
1405 | 1405 | |
1406 | - return apply_filters( 'wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash ); |
|
1406 | + return apply_filters('wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash); |
|
1407 | 1407 | } |
1408 | 1408 | |
1409 | 1409 | public function get_discount_code() { |
1410 | 1410 | return $this->discount_code; |
1411 | 1411 | } |
1412 | 1412 | |
1413 | - public function get_tax( $currency = false ) { |
|
1414 | - $tax = wpinv_format_amount( $this->tax, NULL, !$currency ); |
|
1413 | + public function get_tax($currency = false) { |
|
1414 | + $tax = wpinv_format_amount($this->tax, NULL, !$currency); |
|
1415 | 1415 | |
1416 | - if ( $currency ) { |
|
1417 | - $tax = wpinv_price( $tax, $this->get_currency() ); |
|
1416 | + if ($currency) { |
|
1417 | + $tax = wpinv_price($tax, $this->get_currency()); |
|
1418 | 1418 | } |
1419 | 1419 | |
1420 | - return apply_filters( 'wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency ); |
|
1420 | + return apply_filters('wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency); |
|
1421 | 1421 | } |
1422 | 1422 | |
1423 | - public function get_fees( $type = 'all' ) { |
|
1424 | - $fees = array(); |
|
1423 | + public function get_fees($type = 'all') { |
|
1424 | + $fees = array(); |
|
1425 | 1425 | |
1426 | - if ( ! empty( $this->fees ) && is_array( $this->fees ) ) { |
|
1427 | - foreach ( $this->fees as $fee ) { |
|
1428 | - if( 'all' != $type && ! empty( $fee['type'] ) && $type != $fee['type'] ) { |
|
1426 | + if (!empty($this->fees) && is_array($this->fees)) { |
|
1427 | + foreach ($this->fees as $fee) { |
|
1428 | + if ('all' != $type && !empty($fee['type']) && $type != $fee['type']) { |
|
1429 | 1429 | continue; |
1430 | 1430 | } |
1431 | 1431 | |
1432 | - $fee['label'] = stripslashes( $fee['label'] ); |
|
1433 | - $fee['amount_display'] = wpinv_price( $fee['amount'], $this->get_currency() ); |
|
1434 | - $fees[] = $fee; |
|
1432 | + $fee['label'] = stripslashes($fee['label']); |
|
1433 | + $fee['amount_display'] = wpinv_price($fee['amount'], $this->get_currency()); |
|
1434 | + $fees[] = $fee; |
|
1435 | 1435 | } |
1436 | 1436 | } |
1437 | 1437 | |
1438 | - return apply_filters( 'wpinv_get_invoice_fees', $fees, $this->ID, $this ); |
|
1438 | + return apply_filters('wpinv_get_invoice_fees', $fees, $this->ID, $this); |
|
1439 | 1439 | } |
1440 | 1440 | |
1441 | - public function get_fees_total( $type = 'all' ) { |
|
1442 | - $fees_total = (float) 0.00; |
|
1441 | + public function get_fees_total($type = 'all') { |
|
1442 | + $fees_total = (float)0.00; |
|
1443 | 1443 | |
1444 | - $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array(); |
|
1445 | - if ( ! empty( $payment_fees ) ) { |
|
1446 | - foreach ( $payment_fees as $fee ) { |
|
1447 | - $fees_total += (float) $fee['amount']; |
|
1444 | + $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array(); |
|
1445 | + if (!empty($payment_fees)) { |
|
1446 | + foreach ($payment_fees as $fee) { |
|
1447 | + $fees_total += (float)$fee['amount']; |
|
1448 | 1448 | } |
1449 | 1449 | } |
1450 | 1450 | |
1451 | - return apply_filters( 'wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this ); |
|
1451 | + return apply_filters('wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this); |
|
1452 | 1452 | /* |
1453 | 1453 | $fees = $this->get_fees( $type ); |
1454 | 1454 | |
@@ -1468,116 +1468,116 @@ discard block |
||
1468 | 1468 | } |
1469 | 1469 | |
1470 | 1470 | public function get_user_id() { |
1471 | - return apply_filters( 'wpinv_user_id', $this->user_id, $this->ID, $this ); |
|
1471 | + return apply_filters('wpinv_user_id', $this->user_id, $this->ID, $this); |
|
1472 | 1472 | } |
1473 | 1473 | |
1474 | 1474 | public function get_first_name() { |
1475 | - return apply_filters( 'wpinv_first_name', $this->first_name, $this->ID, $this ); |
|
1475 | + return apply_filters('wpinv_first_name', $this->first_name, $this->ID, $this); |
|
1476 | 1476 | } |
1477 | 1477 | |
1478 | 1478 | public function get_last_name() { |
1479 | - return apply_filters( 'wpinv_last_name', $this->last_name, $this->ID, $this ); |
|
1479 | + return apply_filters('wpinv_last_name', $this->last_name, $this->ID, $this); |
|
1480 | 1480 | } |
1481 | 1481 | |
1482 | 1482 | public function get_user_full_name() { |
1483 | - return apply_filters( 'wpinv_user_full_name', $this->full_name, $this->ID, $this ); |
|
1483 | + return apply_filters('wpinv_user_full_name', $this->full_name, $this->ID, $this); |
|
1484 | 1484 | } |
1485 | 1485 | |
1486 | 1486 | public function get_user_info() { |
1487 | - return apply_filters( 'wpinv_user_info', $this->user_info, $this->ID, $this ); |
|
1487 | + return apply_filters('wpinv_user_info', $this->user_info, $this->ID, $this); |
|
1488 | 1488 | } |
1489 | 1489 | |
1490 | 1490 | public function get_email() { |
1491 | - return apply_filters( 'wpinv_user_email', $this->email, $this->ID, $this ); |
|
1491 | + return apply_filters('wpinv_user_email', $this->email, $this->ID, $this); |
|
1492 | 1492 | } |
1493 | 1493 | |
1494 | 1494 | public function get_address() { |
1495 | - return apply_filters( 'wpinv_address', $this->address, $this->ID, $this ); |
|
1495 | + return apply_filters('wpinv_address', $this->address, $this->ID, $this); |
|
1496 | 1496 | } |
1497 | 1497 | |
1498 | 1498 | public function get_phone() { |
1499 | - return apply_filters( 'wpinv_phone', $this->phone, $this->ID, $this ); |
|
1499 | + return apply_filters('wpinv_phone', $this->phone, $this->ID, $this); |
|
1500 | 1500 | } |
1501 | 1501 | |
1502 | 1502 | public function get_number() { |
1503 | - return apply_filters( 'wpinv_number', $this->number, $this->ID, $this ); |
|
1503 | + return apply_filters('wpinv_number', $this->number, $this->ID, $this); |
|
1504 | 1504 | } |
1505 | 1505 | |
1506 | 1506 | public function get_items() { |
1507 | - return apply_filters( 'wpinv_payment_meta_items', $this->items, $this->ID, $this ); |
|
1507 | + return apply_filters('wpinv_payment_meta_items', $this->items, $this->ID, $this); |
|
1508 | 1508 | } |
1509 | 1509 | |
1510 | 1510 | public function get_key() { |
1511 | - return apply_filters( 'wpinv_key', $this->key, $this->ID, $this ); |
|
1511 | + return apply_filters('wpinv_key', $this->key, $this->ID, $this); |
|
1512 | 1512 | } |
1513 | 1513 | |
1514 | 1514 | public function get_transaction_id() { |
1515 | - return apply_filters( 'wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this ); |
|
1515 | + return apply_filters('wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this); |
|
1516 | 1516 | } |
1517 | 1517 | |
1518 | 1518 | public function get_gateway() { |
1519 | - return apply_filters( 'wpinv_gateway', $this->gateway, $this->ID, $this ); |
|
1519 | + return apply_filters('wpinv_gateway', $this->gateway, $this->ID, $this); |
|
1520 | 1520 | } |
1521 | 1521 | |
1522 | 1522 | public function get_gateway_title() { |
1523 | - $this->gateway_title = !empty( $this->gateway_title ) ? $this->gateway_title : wpinv_get_gateway_checkout_label( $this->gateway ); |
|
1523 | + $this->gateway_title = !empty($this->gateway_title) ? $this->gateway_title : wpinv_get_gateway_checkout_label($this->gateway); |
|
1524 | 1524 | |
1525 | - return apply_filters( 'wpinv_gateway_title', $this->gateway_title, $this->ID, $this ); |
|
1525 | + return apply_filters('wpinv_gateway_title', $this->gateway_title, $this->ID, $this); |
|
1526 | 1526 | } |
1527 | 1527 | |
1528 | 1528 | public function get_currency() { |
1529 | - return apply_filters( 'wpinv_currency_code', $this->currency, $this->ID, $this ); |
|
1529 | + return apply_filters('wpinv_currency_code', $this->currency, $this->ID, $this); |
|
1530 | 1530 | } |
1531 | 1531 | |
1532 | 1532 | public function get_created_date() { |
1533 | - return apply_filters( 'wpinv_created_date', $this->date, $this->ID, $this ); |
|
1533 | + return apply_filters('wpinv_created_date', $this->date, $this->ID, $this); |
|
1534 | 1534 | } |
1535 | 1535 | |
1536 | - public function get_due_date( $display = false ) { |
|
1537 | - $due_date = apply_filters( 'wpinv_due_date', $this->due_date, $this->ID, $this ); |
|
1536 | + public function get_due_date($display = false) { |
|
1537 | + $due_date = apply_filters('wpinv_due_date', $this->due_date, $this->ID, $this); |
|
1538 | 1538 | |
1539 | - if ( !$display || empty( $due_date ) ) { |
|
1539 | + if (!$display || empty($due_date)) { |
|
1540 | 1540 | return $due_date; |
1541 | 1541 | } |
1542 | 1542 | |
1543 | - return date_i18n( get_option( 'date_format' ), strtotime( $due_date ) ); |
|
1543 | + return date_i18n(get_option('date_format'), strtotime($due_date)); |
|
1544 | 1544 | } |
1545 | 1545 | |
1546 | 1546 | public function get_completed_date() { |
1547 | - return apply_filters( 'wpinv_completed_date', $this->completed_date, $this->ID, $this ); |
|
1547 | + return apply_filters('wpinv_completed_date', $this->completed_date, $this->ID, $this); |
|
1548 | 1548 | } |
1549 | 1549 | |
1550 | - public function get_invoice_date( $formatted = true ) { |
|
1550 | + public function get_invoice_date($formatted = true) { |
|
1551 | 1551 | $date_completed = $this->completed_date; |
1552 | 1552 | $invoice_date = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? $date_completed : ''; |
1553 | 1553 | |
1554 | - if ( $invoice_date == '' ) { |
|
1554 | + if ($invoice_date == '') { |
|
1555 | 1555 | $date_created = $this->date; |
1556 | 1556 | $invoice_date = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? $date_created : ''; |
1557 | 1557 | } |
1558 | 1558 | |
1559 | - if ( $formatted && $invoice_date ) { |
|
1560 | - $invoice_date = date_i18n( get_option( 'date_format' ), strtotime( $invoice_date ) ); |
|
1559 | + if ($formatted && $invoice_date) { |
|
1560 | + $invoice_date = date_i18n(get_option('date_format'), strtotime($invoice_date)); |
|
1561 | 1561 | } |
1562 | 1562 | |
1563 | - return apply_filters( 'wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this ); |
|
1563 | + return apply_filters('wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this); |
|
1564 | 1564 | } |
1565 | 1565 | |
1566 | 1566 | public function get_ip() { |
1567 | - return apply_filters( 'wpinv_user_ip', $this->ip, $this->ID, $this ); |
|
1567 | + return apply_filters('wpinv_user_ip', $this->ip, $this->ID, $this); |
|
1568 | 1568 | } |
1569 | 1569 | |
1570 | - public function has_status( $status ) { |
|
1571 | - return apply_filters( 'wpinv_has_status', ( is_array( $status ) && in_array( $this->get_status(), $status ) ) || $this->get_status() === $status ? true : false, $this, $status ); |
|
1570 | + public function has_status($status) { |
|
1571 | + return apply_filters('wpinv_has_status', (is_array($status) && in_array($this->get_status(), $status)) || $this->get_status() === $status ? true : false, $this, $status); |
|
1572 | 1572 | } |
1573 | 1573 | |
1574 | - public function add_item( $item_id = 0, $args = array() ) { |
|
1574 | + public function add_item($item_id = 0, $args = array()) { |
|
1575 | 1575 | global $wpi_current_id, $wpi_item_id; |
1576 | 1576 | |
1577 | - $item = new WPInv_Item( $item_id ); |
|
1577 | + $item = new WPInv_Item($item_id); |
|
1578 | 1578 | |
1579 | 1579 | // Bail if this post isn't a item |
1580 | - if( !$item || $item->post_type !== 'wpi_item' ) { |
|
1580 | + if (!$item || $item->post_type !== 'wpi_item') { |
|
1581 | 1581 | return false; |
1582 | 1582 | } |
1583 | 1583 | |
@@ -1595,8 +1595,8 @@ discard block |
||
1595 | 1595 | 'fees' => array() |
1596 | 1596 | ); |
1597 | 1597 | |
1598 | - $args = wp_parse_args( apply_filters( 'wpinv_add_item_args', $args, $item->ID ), $defaults ); |
|
1599 | - $args['quantity'] = $has_quantities && $args['quantity'] > 0 ? absint( $args['quantity'] ) : 1; |
|
1598 | + $args = wp_parse_args(apply_filters('wpinv_add_item_args', $args, $item->ID), $defaults); |
|
1599 | + $args['quantity'] = $has_quantities && $args['quantity'] > 0 ? absint($args['quantity']) : 1; |
|
1600 | 1600 | |
1601 | 1601 | $wpi_current_id = $this->ID; |
1602 | 1602 | $wpi_item_id = $item->ID; |
@@ -1608,19 +1608,19 @@ discard block |
||
1608 | 1608 | $found_cart_key = false; |
1609 | 1609 | |
1610 | 1610 | if ($has_quantities) { |
1611 | - $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details; |
|
1611 | + $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details; |
|
1612 | 1612 | |
1613 | - foreach ( $this->items as $key => $cart_item ) { |
|
1614 | - if ( (int)$item_id !== (int)$cart_item['id'] ) { |
|
1613 | + foreach ($this->items as $key => $cart_item) { |
|
1614 | + if ((int)$item_id !== (int)$cart_item['id']) { |
|
1615 | 1615 | continue; |
1616 | 1616 | } |
1617 | 1617 | |
1618 | - $this->items[ $key ]['quantity'] += $args['quantity']; |
|
1618 | + $this->items[$key]['quantity'] += $args['quantity']; |
|
1619 | 1619 | break; |
1620 | 1620 | } |
1621 | 1621 | |
1622 | - foreach ( $this->cart_details as $cart_key => $cart_item ) { |
|
1623 | - if ( $item_id != $cart_item['id'] ) { |
|
1622 | + foreach ($this->cart_details as $cart_key => $cart_item) { |
|
1623 | + if ($item_id != $cart_item['id']) { |
|
1624 | 1624 | continue; |
1625 | 1625 | } |
1626 | 1626 | |
@@ -1632,29 +1632,29 @@ discard block |
||
1632 | 1632 | if ($has_quantities && $found_cart_key !== false) { |
1633 | 1633 | $cart_item = $this->cart_details[$found_cart_key]; |
1634 | 1634 | $item_price = $cart_item['item_price']; |
1635 | - $quantity = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1; |
|
1636 | - $tax_rate = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0; |
|
1635 | + $quantity = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1; |
|
1636 | + $tax_rate = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0; |
|
1637 | 1637 | |
1638 | 1638 | $new_quantity = $quantity + $args['quantity']; |
1639 | 1639 | $subtotal = $item_price * $new_quantity; |
1640 | 1640 | |
1641 | 1641 | $args['quantity'] = $new_quantity; |
1642 | - $discount = !empty( $args['discount'] ) ? $args['discount'] : 0; |
|
1643 | - $tax = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0; |
|
1642 | + $discount = !empty($args['discount']) ? $args['discount'] : 0; |
|
1643 | + $tax = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0; |
|
1644 | 1644 | |
1645 | 1645 | $discount_increased = $discount > 0 && $subtotal > 0 && $discount > (float)$cart_item['discount'] ? $discount - (float)$cart_item['discount'] : 0; |
1646 | 1646 | $tax_increased = $tax > 0 && $subtotal > 0 && $tax > (float)$cart_item['tax'] ? $tax - (float)$cart_item['tax'] : 0; |
1647 | 1647 | // The total increase equals the number removed * the item_price |
1648 | - $total_increased = wpinv_format_amount( $item_price, NULL, true ); |
|
1648 | + $total_increased = wpinv_format_amount($item_price, NULL, true); |
|
1649 | 1649 | |
1650 | - if ( wpinv_prices_include_tax() ) { |
|
1651 | - $subtotal -= wpinv_format_amount( $tax, NULL, true ); |
|
1650 | + if (wpinv_prices_include_tax()) { |
|
1651 | + $subtotal -= wpinv_format_amount($tax, NULL, true); |
|
1652 | 1652 | } |
1653 | 1653 | |
1654 | - $total = $subtotal - $discount + $tax; |
|
1654 | + $total = $subtotal - $discount + $tax; |
|
1655 | 1655 | |
1656 | 1656 | // Do not allow totals to go negative |
1657 | - if( $total < 0 ) { |
|
1657 | + if ($total < 0) { |
|
1658 | 1658 | $total = 0; |
1659 | 1659 | } |
1660 | 1660 | |
@@ -1670,20 +1670,20 @@ discard block |
||
1670 | 1670 | $this->cart_details[$found_cart_key] = $cart_item; |
1671 | 1671 | } else { |
1672 | 1672 | // Allow overriding the price |
1673 | - if( false !== $args['item_price'] ) { |
|
1673 | + if (false !== $args['item_price']) { |
|
1674 | 1674 | $item_price = $args['item_price']; |
1675 | 1675 | } else { |
1676 | - $item_price = wpinv_get_item_price( $item->ID ); |
|
1676 | + $item_price = wpinv_get_item_price($item->ID); |
|
1677 | 1677 | } |
1678 | 1678 | |
1679 | 1679 | // Sanitizing the price here so we don't have a dozen calls later |
1680 | - $item_price = wpinv_sanitize_amount( $item_price ); |
|
1681 | - $subtotal = wpinv_format_amount( $item_price * $args['quantity'], NULL, true ); |
|
1680 | + $item_price = wpinv_sanitize_amount($item_price); |
|
1681 | + $subtotal = wpinv_format_amount($item_price * $args['quantity'], NULL, true); |
|
1682 | 1682 | |
1683 | - $discount = !empty( $args['discount'] ) ? $args['discount'] : 0; |
|
1684 | - $tax_class = !empty( $args['vat_class'] ) ? $args['vat_class'] : ''; |
|
1685 | - $tax_rate = !empty( $args['vat_rate'] ) ? $args['vat_rate'] : 0; |
|
1686 | - $tax = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0; |
|
1683 | + $discount = !empty($args['discount']) ? $args['discount'] : 0; |
|
1684 | + $tax_class = !empty($args['vat_class']) ? $args['vat_class'] : ''; |
|
1685 | + $tax_rate = !empty($args['vat_rate']) ? $args['vat_rate'] : 0; |
|
1686 | + $tax = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0; |
|
1687 | 1687 | |
1688 | 1688 | // Setup the items meta item |
1689 | 1689 | $new_item = array( |
@@ -1691,28 +1691,28 @@ discard block |
||
1691 | 1691 | 'quantity' => $args['quantity'], |
1692 | 1692 | ); |
1693 | 1693 | |
1694 | - $this->items[] = $new_item; |
|
1694 | + $this->items[] = $new_item; |
|
1695 | 1695 | |
1696 | - if ( wpinv_prices_include_tax() ) { |
|
1697 | - $subtotal -= wpinv_format_amount( $tax, NULL, true ); |
|
1696 | + if (wpinv_prices_include_tax()) { |
|
1697 | + $subtotal -= wpinv_format_amount($tax, NULL, true); |
|
1698 | 1698 | } |
1699 | 1699 | |
1700 | - $total = $subtotal - $discount + $tax; |
|
1700 | + $total = $subtotal - $discount + $tax; |
|
1701 | 1701 | |
1702 | 1702 | // Do not allow totals to go negative |
1703 | - if( $total < 0 ) { |
|
1703 | + if ($total < 0) { |
|
1704 | 1704 | $total = 0; |
1705 | 1705 | } |
1706 | 1706 | |
1707 | 1707 | $this->cart_details[] = array( |
1708 | 1708 | 'name' => !empty($args['name']) ? $args['name'] : $item->get_name(), |
1709 | 1709 | 'id' => $item->ID, |
1710 | - 'item_price' => wpinv_format_amount( $item_price, NULL, true ), |
|
1710 | + 'item_price' => wpinv_format_amount($item_price, NULL, true), |
|
1711 | 1711 | 'quantity' => $args['quantity'], |
1712 | 1712 | 'discount' => $discount, |
1713 | - 'subtotal' => wpinv_format_amount( $subtotal, NULL, true ), |
|
1714 | - 'tax' => wpinv_format_amount( $tax, NULL, true ), |
|
1715 | - 'price' => wpinv_format_amount( $total, NULL, true ), |
|
1713 | + 'subtotal' => wpinv_format_amount($subtotal, NULL, true), |
|
1714 | + 'tax' => wpinv_format_amount($tax, NULL, true), |
|
1715 | + 'price' => wpinv_format_amount($total, NULL, true), |
|
1716 | 1716 | 'vat_rate' => $tax_rate, |
1717 | 1717 | 'vat_class' => $tax_class, |
1718 | 1718 | 'meta' => $args['meta'], |
@@ -1722,69 +1722,69 @@ discard block |
||
1722 | 1722 | $subtotal = $subtotal - $discount; |
1723 | 1723 | } |
1724 | 1724 | |
1725 | - $added_item = end( $this->cart_details ); |
|
1726 | - $added_item['action'] = 'add'; |
|
1725 | + $added_item = end($this->cart_details); |
|
1726 | + $added_item['action'] = 'add'; |
|
1727 | 1727 | |
1728 | 1728 | $this->pending['items'][] = $added_item; |
1729 | 1729 | |
1730 | - $this->increase_subtotal( $subtotal ); |
|
1731 | - $this->increase_tax( $tax ); |
|
1730 | + $this->increase_subtotal($subtotal); |
|
1731 | + $this->increase_tax($tax); |
|
1732 | 1732 | |
1733 | 1733 | return true; |
1734 | 1734 | } |
1735 | 1735 | |
1736 | - public function remove_item( $item_id, $args = array() ) { |
|
1736 | + public function remove_item($item_id, $args = array()) { |
|
1737 | 1737 | // Set some defaults |
1738 | 1738 | $defaults = array( |
1739 | 1739 | 'quantity' => 1, |
1740 | 1740 | 'item_price' => false, |
1741 | 1741 | 'cart_index' => false, |
1742 | 1742 | ); |
1743 | - $args = wp_parse_args( $args, $defaults ); |
|
1743 | + $args = wp_parse_args($args, $defaults); |
|
1744 | 1744 | |
1745 | 1745 | // Bail if this post isn't a item |
1746 | - if ( get_post_type( $item_id ) !== 'wpi_item' ) { |
|
1746 | + if (get_post_type($item_id) !== 'wpi_item') { |
|
1747 | 1747 | return false; |
1748 | 1748 | } |
1749 | 1749 | |
1750 | - $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details; |
|
1750 | + $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details; |
|
1751 | 1751 | |
1752 | - foreach ( $this->items as $key => $item ) { |
|
1753 | - if ( !empty($item['id']) && (int)$item_id !== (int)$item['id'] ) { |
|
1752 | + foreach ($this->items as $key => $item) { |
|
1753 | + if (!empty($item['id']) && (int)$item_id !== (int)$item['id']) { |
|
1754 | 1754 | continue; |
1755 | 1755 | } |
1756 | 1756 | |
1757 | - if ( false !== $args['cart_index'] ) { |
|
1758 | - $cart_index = absint( $args['cart_index'] ); |
|
1759 | - $cart_item = ! empty( $this->cart_details[ $cart_index ] ) ? $this->cart_details[ $cart_index ] : false; |
|
1757 | + if (false !== $args['cart_index']) { |
|
1758 | + $cart_index = absint($args['cart_index']); |
|
1759 | + $cart_item = !empty($this->cart_details[$cart_index]) ? $this->cart_details[$cart_index] : false; |
|
1760 | 1760 | |
1761 | - if ( ! empty( $cart_item ) ) { |
|
1761 | + if (!empty($cart_item)) { |
|
1762 | 1762 | // If the cart index item isn't the same item ID, don't remove it |
1763 | - if ( !empty($cart_item['id']) && $cart_item['id'] != $item['id'] ) { |
|
1763 | + if (!empty($cart_item['id']) && $cart_item['id'] != $item['id']) { |
|
1764 | 1764 | continue; |
1765 | 1765 | } |
1766 | 1766 | } |
1767 | 1767 | } |
1768 | 1768 | |
1769 | - $item_quantity = $this->items[ $key ]['quantity']; |
|
1770 | - if ( $item_quantity > $args['quantity'] ) { |
|
1771 | - $this->items[ $key ]['quantity'] -= $args['quantity']; |
|
1769 | + $item_quantity = $this->items[$key]['quantity']; |
|
1770 | + if ($item_quantity > $args['quantity']) { |
|
1771 | + $this->items[$key]['quantity'] -= $args['quantity']; |
|
1772 | 1772 | break; |
1773 | 1773 | } else { |
1774 | - unset( $this->items[ $key ] ); |
|
1774 | + unset($this->items[$key]); |
|
1775 | 1775 | break; |
1776 | 1776 | } |
1777 | 1777 | } |
1778 | 1778 | |
1779 | 1779 | $found_cart_key = false; |
1780 | - if ( false === $args['cart_index'] ) { |
|
1781 | - foreach ( $this->cart_details as $cart_key => $item ) { |
|
1782 | - if ( $item_id != $item['id'] ) { |
|
1780 | + if (false === $args['cart_index']) { |
|
1781 | + foreach ($this->cart_details as $cart_key => $item) { |
|
1782 | + if ($item_id != $item['id']) { |
|
1783 | 1783 | continue; |
1784 | 1784 | } |
1785 | 1785 | |
1786 | - if ( false !== $args['item_price'] ) { |
|
1787 | - if ( isset( $item['item_price'] ) && (float) $args['item_price'] != (float) $item['item_price'] ) { |
|
1786 | + if (false !== $args['item_price']) { |
|
1787 | + if (isset($item['item_price']) && (float)$args['item_price'] != (float)$item['item_price']) { |
|
1788 | 1788 | continue; |
1789 | 1789 | } |
1790 | 1790 | } |
@@ -1793,13 +1793,13 @@ discard block |
||
1793 | 1793 | break; |
1794 | 1794 | } |
1795 | 1795 | } else { |
1796 | - $cart_index = absint( $args['cart_index'] ); |
|
1796 | + $cart_index = absint($args['cart_index']); |
|
1797 | 1797 | |
1798 | - if ( ! array_key_exists( $cart_index, $this->cart_details ) ) { |
|
1798 | + if (!array_key_exists($cart_index, $this->cart_details)) { |
|
1799 | 1799 | return false; // Invalid cart index passed. |
1800 | 1800 | } |
1801 | 1801 | |
1802 | - if ( (int) $this->cart_details[ $cart_index ]['id'] > 0 && (int) $this->cart_details[ $cart_index ]['id'] !== (int) $item_id ) { |
|
1802 | + if ((int)$this->cart_details[$cart_index]['id'] > 0 && (int)$this->cart_details[$cart_index]['id'] !== (int)$item_id) { |
|
1803 | 1803 | return false; // We still need the proper Item ID to be sure. |
1804 | 1804 | } |
1805 | 1805 | |
@@ -1807,41 +1807,41 @@ discard block |
||
1807 | 1807 | } |
1808 | 1808 | |
1809 | 1809 | $cart_item = $this->cart_details[$found_cart_key]; |
1810 | - $quantity = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1; |
|
1810 | + $quantity = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1; |
|
1811 | 1811 | |
1812 | - if ( count( $this->cart_details ) == 1 && ( $quantity - $args['quantity'] ) < 1 ) { |
|
1812 | + if (count($this->cart_details) == 1 && ($quantity - $args['quantity']) < 1) { |
|
1813 | 1813 | return false; // Invoice must contain at least one item. |
1814 | 1814 | } |
1815 | 1815 | |
1816 | - $discounts = $this->get_discounts(); |
|
1816 | + $discounts = $this->get_discounts(); |
|
1817 | 1817 | |
1818 | - if ( $quantity > $args['quantity'] ) { |
|
1818 | + if ($quantity > $args['quantity']) { |
|
1819 | 1819 | $item_price = $cart_item['item_price']; |
1820 | - $tax_rate = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0; |
|
1820 | + $tax_rate = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0; |
|
1821 | 1821 | |
1822 | - $new_quantity = max( $quantity - $args['quantity'], 1); |
|
1822 | + $new_quantity = max($quantity - $args['quantity'], 1); |
|
1823 | 1823 | $subtotal = $item_price * $new_quantity; |
1824 | 1824 | |
1825 | 1825 | $args['quantity'] = $new_quantity; |
1826 | - $discount = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0; |
|
1827 | - $tax = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0; |
|
1826 | + $discount = !empty($cart_item['discount']) ? $cart_item['discount'] : 0; |
|
1827 | + $tax = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0; |
|
1828 | 1828 | |
1829 | - $discount_decrease = (float)$cart_item['discount'] > 0 && $quantity > 0 ? wpinv_format_amount( ( (float)$cart_item['discount'] / $quantity ), NULL, true ) : 0; |
|
1829 | + $discount_decrease = (float)$cart_item['discount'] > 0 && $quantity > 0 ? wpinv_format_amount(((float)$cart_item['discount'] / $quantity), NULL, true) : 0; |
|
1830 | 1830 | $discount_decrease = $discount > 0 && $subtotal > 0 && (float)$cart_item['discount'] > $discount ? (float)$cart_item['discount'] - $discount : $discount_decrease; |
1831 | - $tax_decrease = (float)$cart_item['tax'] > 0 && $quantity > 0 ? wpinv_format_amount( ( (float)$cart_item['tax'] / $quantity ), NULL, true ) : 0; |
|
1831 | + $tax_decrease = (float)$cart_item['tax'] > 0 && $quantity > 0 ? wpinv_format_amount(((float)$cart_item['tax'] / $quantity), NULL, true) : 0; |
|
1832 | 1832 | $tax_decrease = $tax > 0 && $subtotal > 0 && (float)$cart_item['tax'] > $tax ? (float)$cart_item['tax'] - $tax : $tax_decrease; |
1833 | 1833 | |
1834 | 1834 | // The total increase equals the number removed * the item_price |
1835 | - $total_decrease = wpinv_format_amount( $item_price, NULL, true ); |
|
1835 | + $total_decrease = wpinv_format_amount($item_price, NULL, true); |
|
1836 | 1836 | |
1837 | - if ( wpinv_prices_include_tax() ) { |
|
1838 | - $subtotal -= wpinv_format_amount( $tax, NULL, true ); |
|
1837 | + if (wpinv_prices_include_tax()) { |
|
1838 | + $subtotal -= wpinv_format_amount($tax, NULL, true); |
|
1839 | 1839 | } |
1840 | 1840 | |
1841 | - $total = $subtotal - $discount + $tax; |
|
1841 | + $total = $subtotal - $discount + $tax; |
|
1842 | 1842 | |
1843 | 1843 | // Do not allow totals to go negative |
1844 | - if( $total < 0 ) { |
|
1844 | + if ($total < 0) { |
|
1845 | 1845 | $total = 0; |
1846 | 1846 | } |
1847 | 1847 | |
@@ -1860,16 +1860,16 @@ discard block |
||
1860 | 1860 | |
1861 | 1861 | $this->cart_details[$found_cart_key] = $cart_item; |
1862 | 1862 | |
1863 | - $remove_item = end( $this->cart_details ); |
|
1863 | + $remove_item = end($this->cart_details); |
|
1864 | 1864 | } else { |
1865 | 1865 | $item_price = $cart_item['item_price']; |
1866 | - $discount = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0; |
|
1867 | - $tax = !empty( $cart_item['tax'] ) ? $cart_item['tax'] : 0; |
|
1866 | + $discount = !empty($cart_item['discount']) ? $cart_item['discount'] : 0; |
|
1867 | + $tax = !empty($cart_item['tax']) ? $cart_item['tax'] : 0; |
|
1868 | 1868 | |
1869 | - $subtotal_decrease = ( $item_price * $quantity ) - $discount; |
|
1869 | + $subtotal_decrease = ($item_price * $quantity) - $discount; |
|
1870 | 1870 | $tax_decrease = $tax; |
1871 | 1871 | |
1872 | - unset( $this->cart_details[$found_cart_key] ); |
|
1872 | + unset($this->cart_details[$found_cart_key]); |
|
1873 | 1873 | |
1874 | 1874 | $remove_item = $args; |
1875 | 1875 | $remove_item['id'] = $item_id; |
@@ -1880,8 +1880,8 @@ discard block |
||
1880 | 1880 | $remove_item['action'] = 'remove'; |
1881 | 1881 | $this->pending['items'][] = $remove_item; |
1882 | 1882 | |
1883 | - $this->decrease_subtotal( $subtotal_decrease ); |
|
1884 | - $this->decrease_tax( $tax_decrease ); |
|
1883 | + $this->decrease_subtotal($subtotal_decrease); |
|
1884 | + $this->decrease_tax($tax_decrease); |
|
1885 | 1885 | |
1886 | 1886 | return true; |
1887 | 1887 | } |
@@ -1889,7 +1889,7 @@ discard block |
||
1889 | 1889 | public function update_items($temp = false) { |
1890 | 1890 | global $wpinv_euvat, $wpi_current_id, $wpi_item_id, $wpi_nosave; |
1891 | 1891 | |
1892 | - if ( !empty( $this->cart_details ) ) { |
|
1892 | + if (!empty($this->cart_details)) { |
|
1893 | 1893 | $wpi_nosave = $temp; |
1894 | 1894 | $cart_subtotal = 0; |
1895 | 1895 | $cart_discount = 0; |
@@ -1899,41 +1899,41 @@ discard block |
||
1899 | 1899 | $_POST['wpinv_country'] = $this->country; |
1900 | 1900 | $_POST['wpinv_state'] = $this->state; |
1901 | 1901 | |
1902 | - foreach ( $this->cart_details as $key => $item ) { |
|
1902 | + foreach ($this->cart_details as $key => $item) { |
|
1903 | 1903 | $item_price = $item['item_price']; |
1904 | - $quantity = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1; |
|
1905 | - $amount = wpinv_format_amount( $item_price * $quantity, NULL, true ); |
|
1904 | + $quantity = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint($item['quantity']) : 1; |
|
1905 | + $amount = wpinv_format_amount($item_price * $quantity, NULL, true); |
|
1906 | 1906 | $subtotal = $item_price * $quantity; |
1907 | 1907 | |
1908 | 1908 | $wpi_current_id = $this->ID; |
1909 | 1909 | $wpi_item_id = $item['id']; |
1910 | 1910 | |
1911 | - $discount = wpinv_get_cart_item_discount_amount( $item, $this->get_discounts() ); |
|
1911 | + $discount = wpinv_get_cart_item_discount_amount($item, $this->get_discounts()); |
|
1912 | 1912 | |
1913 | - $tax_rate = wpinv_get_tax_rate( $this->country, $this->state, $wpi_item_id ); |
|
1914 | - $tax_class = $wpinv_euvat->get_item_class( $wpi_item_id ); |
|
1915 | - $tax = $item_price > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0; |
|
1913 | + $tax_rate = wpinv_get_tax_rate($this->country, $this->state, $wpi_item_id); |
|
1914 | + $tax_class = $wpinv_euvat->get_item_class($wpi_item_id); |
|
1915 | + $tax = $item_price > 0 ? (($subtotal - $discount) * 0.01 * (float)$tax_rate) : 0; |
|
1916 | 1916 | |
1917 | - if ( wpinv_prices_include_tax() ) { |
|
1918 | - $subtotal -= wpinv_format_amount( $tax, NULL, true ); |
|
1917 | + if (wpinv_prices_include_tax()) { |
|
1918 | + $subtotal -= wpinv_format_amount($tax, NULL, true); |
|
1919 | 1919 | } |
1920 | 1920 | |
1921 | - $total = $subtotal - $discount + $tax; |
|
1921 | + $total = $subtotal - $discount + $tax; |
|
1922 | 1922 | |
1923 | 1923 | // Do not allow totals to go negative |
1924 | - if( $total < 0 ) { |
|
1924 | + if ($total < 0) { |
|
1925 | 1925 | $total = 0; |
1926 | 1926 | } |
1927 | 1927 | |
1928 | 1928 | $cart_details[] = array( |
1929 | 1929 | 'id' => $item['id'], |
1930 | 1930 | 'name' => $item['name'], |
1931 | - 'item_price' => wpinv_format_amount( $item_price, NULL, true ), |
|
1931 | + 'item_price' => wpinv_format_amount($item_price, NULL, true), |
|
1932 | 1932 | 'quantity' => $quantity, |
1933 | 1933 | 'discount' => $discount, |
1934 | - 'subtotal' => wpinv_format_amount( $subtotal, NULL, true ), |
|
1935 | - 'tax' => wpinv_format_amount( $tax, NULL, true ), |
|
1936 | - 'price' => wpinv_format_amount( $total, NULL, true ), |
|
1934 | + 'subtotal' => wpinv_format_amount($subtotal, NULL, true), |
|
1935 | + 'tax' => wpinv_format_amount($tax, NULL, true), |
|
1936 | + 'price' => wpinv_format_amount($total, NULL, true), |
|
1937 | 1937 | 'vat_rate' => $tax_rate, |
1938 | 1938 | 'vat_class' => $tax_class, |
1939 | 1939 | 'meta' => isset($item['meta']) ? $item['meta'] : array(), |
@@ -1944,9 +1944,9 @@ discard block |
||
1944 | 1944 | $cart_discount += (float)($discount); |
1945 | 1945 | $cart_tax += (float)($tax); |
1946 | 1946 | } |
1947 | - $this->subtotal = wpinv_format_amount( $cart_subtotal, NULL, true ); |
|
1948 | - $this->tax = wpinv_format_amount( $cart_tax, NULL, true ); |
|
1949 | - $this->discount = wpinv_format_amount( $cart_discount, NULL, true ); |
|
1947 | + $this->subtotal = wpinv_format_amount($cart_subtotal, NULL, true); |
|
1948 | + $this->tax = wpinv_format_amount($cart_tax, NULL, true); |
|
1949 | + $this->discount = wpinv_format_amount($cart_discount, NULL, true); |
|
1950 | 1950 | |
1951 | 1951 | $this->recalculate_total(); |
1952 | 1952 | |
@@ -1958,221 +1958,221 @@ discard block |
||
1958 | 1958 | |
1959 | 1959 | public function recalculate_totals($temp = false) { |
1960 | 1960 | $this->update_items($temp); |
1961 | - $this->save( true ); |
|
1961 | + $this->save(true); |
|
1962 | 1962 | |
1963 | 1963 | return $this; |
1964 | 1964 | } |
1965 | 1965 | |
1966 | 1966 | public function needs_payment() { |
1967 | - $valid_invoice_statuses = apply_filters( 'wpinv_valid_invoice_statuses_for_payment', array( 'pending' ), $this ); |
|
1967 | + $valid_invoice_statuses = apply_filters('wpinv_valid_invoice_statuses_for_payment', array('pending'), $this); |
|
1968 | 1968 | |
1969 | - if ( $this->has_status( $valid_invoice_statuses ) && ( $this->get_total() > 0 || $this->is_free_trial() ) ) { |
|
1969 | + if ($this->has_status($valid_invoice_statuses) && ($this->get_total() > 0 || $this->is_free_trial())) { |
|
1970 | 1970 | $needs_payment = true; |
1971 | 1971 | } else { |
1972 | 1972 | $needs_payment = false; |
1973 | 1973 | } |
1974 | 1974 | |
1975 | - return apply_filters( 'wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses ); |
|
1975 | + return apply_filters('wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses); |
|
1976 | 1976 | } |
1977 | 1977 | |
1978 | - public function get_checkout_payment_url( $on_checkout = false, $secret = false ) { |
|
1978 | + public function get_checkout_payment_url($on_checkout = false, $secret = false) { |
|
1979 | 1979 | $pay_url = wpinv_get_checkout_uri(); |
1980 | 1980 | |
1981 | - if ( is_ssl() ) { |
|
1982 | - $pay_url = str_replace( 'http:', 'https:', $pay_url ); |
|
1981 | + if (is_ssl()) { |
|
1982 | + $pay_url = str_replace('http:', 'https:', $pay_url); |
|
1983 | 1983 | } |
1984 | 1984 | |
1985 | 1985 | $key = $this->get_key(); |
1986 | 1986 | |
1987 | - if ( $on_checkout ) { |
|
1988 | - $pay_url = add_query_arg( 'invoice_key', $key, $pay_url ); |
|
1987 | + if ($on_checkout) { |
|
1988 | + $pay_url = add_query_arg('invoice_key', $key, $pay_url); |
|
1989 | 1989 | } else { |
1990 | - $pay_url = add_query_arg( array( 'wpi_action' => 'pay_for_invoice', 'invoice_key' => $key ), $pay_url ); |
|
1990 | + $pay_url = add_query_arg(array('wpi_action' => 'pay_for_invoice', 'invoice_key' => $key), $pay_url); |
|
1991 | 1991 | } |
1992 | 1992 | |
1993 | - if ( $secret ) { |
|
1994 | - $pay_url = add_query_arg( array( '_wpipay' => md5( $this->get_user_id() . '::' . $this->get_email() . '::' . $key ) ), $pay_url ); |
|
1993 | + if ($secret) { |
|
1994 | + $pay_url = add_query_arg(array('_wpipay' => md5($this->get_user_id() . '::' . $this->get_email() . '::' . $key)), $pay_url); |
|
1995 | 1995 | } |
1996 | 1996 | |
1997 | - return apply_filters( 'wpinv_get_checkout_payment_url', $pay_url, $this ); |
|
1997 | + return apply_filters('wpinv_get_checkout_payment_url', $pay_url, $this); |
|
1998 | 1998 | } |
1999 | 1999 | |
2000 | - public function get_view_url( $secret = false ) { |
|
2001 | - $print_url = get_permalink( $this->ID ); |
|
2000 | + public function get_view_url($secret = false) { |
|
2001 | + $print_url = get_permalink($this->ID); |
|
2002 | 2002 | |
2003 | - if ( $secret ) { |
|
2004 | - $print_url = add_query_arg( array( '_wpipay' => md5( $this->get_user_id() . '::' . $this->get_email() . '::' . $this->get_key() ) ), $print_url ); |
|
2003 | + if ($secret) { |
|
2004 | + $print_url = add_query_arg(array('_wpipay' => md5($this->get_user_id() . '::' . $this->get_email() . '::' . $this->get_key())), $print_url); |
|
2005 | 2005 | } |
2006 | 2006 | |
2007 | - return apply_filters( 'wpinv_get_view_url', $print_url, $this ); |
|
2007 | + return apply_filters('wpinv_get_view_url', $print_url, $this); |
|
2008 | 2008 | } |
2009 | 2009 | |
2010 | - public function generate_key( $string = '' ) { |
|
2011 | - $auth_key = defined( 'AUTH_KEY' ) ? AUTH_KEY : ''; |
|
2012 | - return strtolower( md5( $string . date( 'Y-m-d H:i:s' ) . $auth_key . uniqid( 'wpinv', true ) ) ); // Unique key |
|
2010 | + public function generate_key($string = '') { |
|
2011 | + $auth_key = defined('AUTH_KEY') ? AUTH_KEY : ''; |
|
2012 | + return strtolower(md5($string . date('Y-m-d H:i:s') . $auth_key . uniqid('wpinv', true))); // Unique key |
|
2013 | 2013 | } |
2014 | 2014 | |
2015 | 2015 | public function is_recurring() { |
2016 | - if ( empty( $this->cart_details ) ) { |
|
2016 | + if (empty($this->cart_details)) { |
|
2017 | 2017 | return false; |
2018 | 2018 | } |
2019 | 2019 | |
2020 | 2020 | $has_subscription = false; |
2021 | - foreach( $this->cart_details as $cart_item ) { |
|
2022 | - if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] ) ) { |
|
2021 | + foreach ($this->cart_details as $cart_item) { |
|
2022 | + if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) { |
|
2023 | 2023 | $has_subscription = true; |
2024 | 2024 | break; |
2025 | 2025 | } |
2026 | 2026 | } |
2027 | 2027 | |
2028 | - if ( count( $this->cart_details ) > 1 ) { |
|
2028 | + if (count($this->cart_details) > 1) { |
|
2029 | 2029 | $has_subscription = false; |
2030 | 2030 | } |
2031 | 2031 | |
2032 | - return apply_filters( 'wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details ); |
|
2032 | + return apply_filters('wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details); |
|
2033 | 2033 | } |
2034 | 2034 | |
2035 | 2035 | public function is_free_trial() { |
2036 | 2036 | $is_free_trial = false; |
2037 | 2037 | |
2038 | - if ( $this->is_parent() && $item = $this->get_recurring( true ) ) { |
|
2039 | - if ( !empty( $item ) && $item->has_free_trial() ) { |
|
2038 | + if ($this->is_parent() && $item = $this->get_recurring(true)) { |
|
2039 | + if (!empty($item) && $item->has_free_trial()) { |
|
2040 | 2040 | $is_free_trial = true; |
2041 | 2041 | } |
2042 | 2042 | } |
2043 | 2043 | |
2044 | - return apply_filters( 'wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details ); |
|
2044 | + return apply_filters('wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details); |
|
2045 | 2045 | } |
2046 | 2046 | |
2047 | - public function get_recurring( $object = false ) { |
|
2047 | + public function get_recurring($object = false) { |
|
2048 | 2048 | $item = NULL; |
2049 | 2049 | |
2050 | - if ( empty( $this->cart_details ) ) { |
|
2050 | + if (empty($this->cart_details)) { |
|
2051 | 2051 | return $item; |
2052 | 2052 | } |
2053 | 2053 | |
2054 | - foreach( $this->cart_details as $cart_item ) { |
|
2055 | - if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] ) ) { |
|
2054 | + foreach ($this->cart_details as $cart_item) { |
|
2055 | + if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) { |
|
2056 | 2056 | $item = $cart_item['id']; |
2057 | 2057 | break; |
2058 | 2058 | } |
2059 | 2059 | } |
2060 | 2060 | |
2061 | - if ( $object ) { |
|
2062 | - $item = $item ? new WPInv_Item( $item ) : NULL; |
|
2061 | + if ($object) { |
|
2062 | + $item = $item ? new WPInv_Item($item) : NULL; |
|
2063 | 2063 | |
2064 | - apply_filters( 'wpinv_invoice_get_recurring_item', $item, $this ); |
|
2064 | + apply_filters('wpinv_invoice_get_recurring_item', $item, $this); |
|
2065 | 2065 | } |
2066 | 2066 | |
2067 | - return apply_filters( 'wpinv_invoice_get_recurring_item_id', $item, $this ); |
|
2067 | + return apply_filters('wpinv_invoice_get_recurring_item_id', $item, $this); |
|
2068 | 2068 | } |
2069 | 2069 | |
2070 | 2070 | public function get_subscription_name() { |
2071 | - $item = $this->get_recurring( true ); |
|
2071 | + $item = $this->get_recurring(true); |
|
2072 | 2072 | |
2073 | - if ( empty( $item ) ) { |
|
2073 | + if (empty($item)) { |
|
2074 | 2074 | return NULL; |
2075 | 2075 | } |
2076 | 2076 | |
2077 | - if ( !($name = $item->get_name()) ) { |
|
2077 | + if (!($name = $item->get_name())) { |
|
2078 | 2078 | $name = $item->post_name; |
2079 | 2079 | } |
2080 | 2080 | |
2081 | - return apply_filters( 'wpinv_invoice_get_subscription_name', $name, $this ); |
|
2081 | + return apply_filters('wpinv_invoice_get_subscription_name', $name, $this); |
|
2082 | 2082 | } |
2083 | 2083 | |
2084 | 2084 | public function get_expiration() { |
2085 | - $expiration = $this->get_meta( '_wpinv_subscr_expiration', true ); |
|
2085 | + $expiration = $this->get_meta('_wpinv_subscr_expiration', true); |
|
2086 | 2086 | return $expiration; |
2087 | 2087 | } |
2088 | 2088 | |
2089 | - public function get_cancelled_date( $formatted = true ) { |
|
2090 | - $cancelled_date = $this->get_subscription_status() == 'cancelled' ? $this->get_meta( '_wpinv_subscr_cancelled_on', true ) : ''; |
|
2089 | + public function get_cancelled_date($formatted = true) { |
|
2090 | + $cancelled_date = $this->get_subscription_status() == 'cancelled' ? $this->get_meta('_wpinv_subscr_cancelled_on', true) : ''; |
|
2091 | 2091 | |
2092 | - if ( $formatted && $cancelled_date ) { |
|
2093 | - $cancelled_date = date_i18n( get_option( 'date_format' ), strtotime( $cancelled_date ) ); |
|
2092 | + if ($formatted && $cancelled_date) { |
|
2093 | + $cancelled_date = date_i18n(get_option('date_format'), strtotime($cancelled_date)); |
|
2094 | 2094 | } |
2095 | 2095 | |
2096 | 2096 | return $cancelled_date; |
2097 | 2097 | } |
2098 | 2098 | |
2099 | - public function get_trial_end_date( $formatted = true ) { |
|
2100 | - if ( !$this->is_free_trial() || !$this->is_paid() ) { |
|
2099 | + public function get_trial_end_date($formatted = true) { |
|
2100 | + if (!$this->is_free_trial() || !$this->is_paid()) { |
|
2101 | 2101 | return NULL; |
2102 | 2102 | } |
2103 | 2103 | |
2104 | - $trial_end_date = $this->get_subscription_status() == 'trialing' ? $this->get_meta( '_wpinv_subscr_trial_end', true ) : ''; |
|
2104 | + $trial_end_date = $this->get_subscription_status() == 'trialing' ? $this->get_meta('_wpinv_subscr_trial_end', true) : ''; |
|
2105 | 2105 | |
2106 | - if ( empty( $trial_end_date ) ) { |
|
2107 | - $trial_start_time = strtotime( $this->get_subscription_start() ); |
|
2108 | - $trial_start_time += ( wpinv_period_in_days( $this->get_subscription_trial_interval(), $this->get_subscription_trial_period() ) * DAY_IN_SECONDS ) ; |
|
2106 | + if (empty($trial_end_date)) { |
|
2107 | + $trial_start_time = strtotime($this->get_subscription_start()); |
|
2108 | + $trial_start_time += (wpinv_period_in_days($this->get_subscription_trial_interval(), $this->get_subscription_trial_period()) * DAY_IN_SECONDS); |
|
2109 | 2109 | |
2110 | - $trial_end_date = date_i18n( 'Y-m-d H:i:s', $trial_start_time ); |
|
2110 | + $trial_end_date = date_i18n('Y-m-d H:i:s', $trial_start_time); |
|
2111 | 2111 | } |
2112 | 2112 | |
2113 | - if ( $formatted && $trial_end_date ) { |
|
2114 | - $trial_end_date = date_i18n( get_option( 'date_format' ), strtotime( $trial_end_date ) ); |
|
2113 | + if ($formatted && $trial_end_date) { |
|
2114 | + $trial_end_date = date_i18n(get_option('date_format'), strtotime($trial_end_date)); |
|
2115 | 2115 | } |
2116 | 2116 | |
2117 | 2117 | return $trial_end_date; |
2118 | 2118 | } |
2119 | 2119 | |
2120 | - public function get_subscription_created( $default = true ) { |
|
2121 | - $created = $this->get_meta( '_wpinv_subscr_created', true ); |
|
2120 | + public function get_subscription_created($default = true) { |
|
2121 | + $created = $this->get_meta('_wpinv_subscr_created', true); |
|
2122 | 2122 | |
2123 | - if ( empty( $created ) && $default ) { |
|
2123 | + if (empty($created) && $default) { |
|
2124 | 2124 | $created = $this->date; |
2125 | 2125 | } |
2126 | 2126 | return $created; |
2127 | 2127 | } |
2128 | 2128 | |
2129 | - public function get_subscription_start( $formatted = true ) { |
|
2130 | - if ( !$this->is_paid() ) { |
|
2129 | + public function get_subscription_start($formatted = true) { |
|
2130 | + if (!$this->is_paid()) { |
|
2131 | 2131 | return '-'; |
2132 | 2132 | } |
2133 | - $start = $this->get_subscription_created(); |
|
2133 | + $start = $this->get_subscription_created(); |
|
2134 | 2134 | |
2135 | - if ( $formatted ) { |
|
2136 | - $date = date_i18n( get_option( 'date_format' ), strtotime( $start ) ); |
|
2135 | + if ($formatted) { |
|
2136 | + $date = date_i18n(get_option('date_format'), strtotime($start)); |
|
2137 | 2137 | } else { |
2138 | - $date = date_i18n( 'Y-m-d H:i:s', strtotime( $start ) ); |
|
2138 | + $date = date_i18n('Y-m-d H:i:s', strtotime($start)); |
|
2139 | 2139 | } |
2140 | 2140 | |
2141 | 2141 | return $date; |
2142 | 2142 | } |
2143 | 2143 | |
2144 | - public function get_subscription_end( $formatted = true ) { |
|
2145 | - if ( !$this->is_paid() ) { |
|
2144 | + public function get_subscription_end($formatted = true) { |
|
2145 | + if (!$this->is_paid()) { |
|
2146 | 2146 | return '-'; |
2147 | 2147 | } |
2148 | 2148 | $start = $this->get_subscription_created(); |
2149 | 2149 | $interval = $this->get_subscription_interval(); |
2150 | - $period = $this->get_subscription_period( true ); |
|
2150 | + $period = $this->get_subscription_period(true); |
|
2151 | 2151 | $bill_times = (int)$this->get_bill_times(); |
2152 | 2152 | |
2153 | - if ( $bill_times == 0 ) { |
|
2154 | - return $formatted ? __( 'Until cancelled', 'invoicing' ) : $bill_times; |
|
2153 | + if ($bill_times == 0) { |
|
2154 | + return $formatted ? __('Until cancelled', 'invoicing') : $bill_times; |
|
2155 | 2155 | } |
2156 | 2156 | |
2157 | - $total_period = $start . '+' . ( $interval * $bill_times ) . ' ' . $period; |
|
2157 | + $total_period = $start . '+' . ($interval * $bill_times) . ' ' . $period; |
|
2158 | 2158 | |
2159 | - $end_time = strtotime( $start . '+' . ( $interval * $bill_times ) . ' ' . $period ); |
|
2159 | + $end_time = strtotime($start . '+' . ($interval * $bill_times) . ' ' . $period); |
|
2160 | 2160 | |
2161 | - if ( $this->is_free_trial() ) { |
|
2162 | - $end_time += ( wpinv_period_in_days( $this->get_subscription_trial_interval(), $this->get_subscription_trial_period() ) * DAY_IN_SECONDS ) ; |
|
2161 | + if ($this->is_free_trial()) { |
|
2162 | + $end_time += (wpinv_period_in_days($this->get_subscription_trial_interval(), $this->get_subscription_trial_period()) * DAY_IN_SECONDS); |
|
2163 | 2163 | } |
2164 | 2164 | |
2165 | - if ( $formatted ) { |
|
2166 | - $date = date_i18n( get_option( 'date_format' ), $end_time ); |
|
2165 | + if ($formatted) { |
|
2166 | + $date = date_i18n(get_option('date_format'), $end_time); |
|
2167 | 2167 | } else { |
2168 | - $date = date_i18n( 'Y-m-d H:i:s', $end_time ); |
|
2168 | + $date = date_i18n('Y-m-d H:i:s', $end_time); |
|
2169 | 2169 | } |
2170 | 2170 | |
2171 | 2171 | return $date; |
2172 | 2172 | } |
2173 | 2173 | |
2174 | 2174 | public function get_expiration_time() { |
2175 | - return strtotime( $this->get_expiration(), current_time( 'timestamp' ) ); |
|
2175 | + return strtotime($this->get_expiration(), current_time('timestamp')); |
|
2176 | 2176 | } |
2177 | 2177 | |
2178 | 2178 | public function get_original_invoice_id() { |
@@ -2184,125 +2184,125 @@ discard block |
||
2184 | 2184 | return $subscription_data['bill_times']; |
2185 | 2185 | } |
2186 | 2186 | |
2187 | - public function get_child_payments( $self = false ) { |
|
2188 | - $invoices = get_posts( array( |
|
2187 | + public function get_child_payments($self = false) { |
|
2188 | + $invoices = get_posts(array( |
|
2189 | 2189 | 'post_type' => $this->post_type, |
2190 | 2190 | 'post_parent' => (int)$this->ID, |
2191 | 2191 | 'posts_per_page' => '999', |
2192 | - 'post_status' => array( 'publish', 'complete', 'processing', 'renewal' ), |
|
2192 | + 'post_status' => array('publish', 'complete', 'processing', 'renewal'), |
|
2193 | 2193 | 'orderby' => 'ID', |
2194 | 2194 | 'order' => 'DESC', |
2195 | 2195 | 'fields' => 'ids' |
2196 | - ) ); |
|
2196 | + )); |
|
2197 | 2197 | |
2198 | - if ( $this->is_free_trial() ) { |
|
2198 | + if ($this->is_free_trial()) { |
|
2199 | 2199 | $self = false; |
2200 | 2200 | } |
2201 | 2201 | |
2202 | - if ( $self && $this->is_paid() ) { |
|
2203 | - if ( !empty( $invoices ) ) { |
|
2202 | + if ($self && $this->is_paid()) { |
|
2203 | + if (!empty($invoices)) { |
|
2204 | 2204 | $invoices[] = (int)$this->ID; |
2205 | 2205 | } else { |
2206 | - $invoices = array( $this->ID ); |
|
2206 | + $invoices = array($this->ID); |
|
2207 | 2207 | } |
2208 | 2208 | |
2209 | - $invoices = array_unique( $invoices ); |
|
2209 | + $invoices = array_unique($invoices); |
|
2210 | 2210 | } |
2211 | 2211 | |
2212 | 2212 | return $invoices; |
2213 | 2213 | } |
2214 | 2214 | |
2215 | - public function get_total_payments( $self = true ) { |
|
2216 | - return count( $this->get_child_payments( $self ) ); |
|
2215 | + public function get_total_payments($self = true) { |
|
2216 | + return count($this->get_child_payments($self)); |
|
2217 | 2217 | } |
2218 | 2218 | |
2219 | - public function get_subscriptions( $limit = -1 ) { |
|
2220 | - $subscriptions = wpinv_get_subscriptions( array( 'parent_invoice_id' => $this->ID, 'numberposts' => $limit ) ); |
|
2219 | + public function get_subscriptions($limit = -1) { |
|
2220 | + $subscriptions = wpinv_get_subscriptions(array('parent_invoice_id' => $this->ID, 'numberposts' => $limit)); |
|
2221 | 2221 | |
2222 | 2222 | return $subscriptions; |
2223 | 2223 | } |
2224 | 2224 | |
2225 | 2225 | public function get_subscription_id() { |
2226 | - $subscription_id = $this->get_meta( '_wpinv_subscr_profile_id', true ); |
|
2226 | + $subscription_id = $this->get_meta('_wpinv_subscr_profile_id', true); |
|
2227 | 2227 | |
2228 | - if ( empty( $subscription_id ) && !empty( $this->parent_invoice ) ) { |
|
2229 | - $parent_invoice = wpinv_get_invoice( $this->parent_invoice ); |
|
2228 | + if (empty($subscription_id) && !empty($this->parent_invoice)) { |
|
2229 | + $parent_invoice = wpinv_get_invoice($this->parent_invoice); |
|
2230 | 2230 | |
2231 | - $subscription_id = $parent_invoice->get_meta( '_wpinv_subscr_profile_id', true ); |
|
2231 | + $subscription_id = $parent_invoice->get_meta('_wpinv_subscr_profile_id', true); |
|
2232 | 2232 | } |
2233 | 2233 | |
2234 | 2234 | return $subscription_id; |
2235 | 2235 | } |
2236 | 2236 | |
2237 | 2237 | public function get_subscription_status() { |
2238 | - $subscription_status = $this->get_meta( '_wpinv_subscr_status', true ); |
|
2238 | + $subscription_status = $this->get_meta('_wpinv_subscr_status', true); |
|
2239 | 2239 | |
2240 | - if ( empty( $subscription_status ) ) { |
|
2240 | + if (empty($subscription_status)) { |
|
2241 | 2241 | $status = 'pending'; |
2242 | 2242 | |
2243 | - if ( $this->is_paid() ) { |
|
2243 | + if ($this->is_paid()) { |
|
2244 | 2244 | $bill_times = (int)$this->get_bill_times(); |
2245 | 2245 | $times_billed = (int)$this->get_total_payments(); |
2246 | - $expiration = $this->get_subscription_end( false ); |
|
2247 | - $expired = $bill_times != 0 && $expiration != '' && $expiration != '-' && strtotime( date_i18n( 'Y-m-d', strtotime( $expiration ) ) ) < strtotime( date_i18n( 'Y-m-d', current_time( 'timestamp' ) ) ) ? true : false; |
|
2246 | + $expiration = $this->get_subscription_end(false); |
|
2247 | + $expired = $bill_times != 0 && $expiration != '' && $expiration != '-' && strtotime(date_i18n('Y-m-d', strtotime($expiration))) < strtotime(date_i18n('Y-m-d', current_time('timestamp'))) ? true : false; |
|
2248 | 2248 | |
2249 | - if ( (int)$bill_times == 0 ) { |
|
2249 | + if ((int)$bill_times == 0) { |
|
2250 | 2250 | $status = $expired ? 'expired' : 'active'; |
2251 | - } else if ( $bill_times > 0 && $times_billed >= $bill_times ) { |
|
2251 | + } else if ($bill_times > 0 && $times_billed >= $bill_times) { |
|
2252 | 2252 | $status = 'completed'; |
2253 | - } else if ( $expired ) { |
|
2253 | + } else if ($expired) { |
|
2254 | 2254 | $status = 'expired'; |
2255 | - } else if ( $bill_times > 0 ) { |
|
2255 | + } else if ($bill_times > 0) { |
|
2256 | 2256 | $status = 'active'; |
2257 | 2257 | } else { |
2258 | 2258 | $status = 'pending'; |
2259 | 2259 | } |
2260 | 2260 | } |
2261 | 2261 | |
2262 | - if ( $status && $status != $subscription_status ) { |
|
2262 | + if ($status && $status != $subscription_status) { |
|
2263 | 2263 | $subscription_status = $status; |
2264 | 2264 | |
2265 | - $this->update_meta( '_wpinv_subscr_status', $status ); |
|
2265 | + $this->update_meta('_wpinv_subscr_status', $status); |
|
2266 | 2266 | } |
2267 | 2267 | } |
2268 | 2268 | |
2269 | 2269 | return $subscription_status; |
2270 | 2270 | } |
2271 | 2271 | |
2272 | - public function get_subscription_status_label( $status = '' ) { |
|
2273 | - $status = !empty( $status ) ? $status : $this->get_subscription_status(); |
|
2272 | + public function get_subscription_status_label($status = '') { |
|
2273 | + $status = !empty($status) ? $status : $this->get_subscription_status(); |
|
2274 | 2274 | |
2275 | - switch( $status ) { |
|
2275 | + switch ($status) { |
|
2276 | 2276 | case 'active' : |
2277 | - $status_label = __( 'Active', 'invoicing' ); |
|
2277 | + $status_label = __('Active', 'invoicing'); |
|
2278 | 2278 | break; |
2279 | 2279 | |
2280 | 2280 | case 'cancelled' : |
2281 | - $status_label = __( 'Cancelled', 'invoicing' ); |
|
2281 | + $status_label = __('Cancelled', 'invoicing'); |
|
2282 | 2282 | break; |
2283 | 2283 | |
2284 | 2284 | case 'completed' : |
2285 | - $status_label = __( 'Completed', 'invoicing' ); |
|
2285 | + $status_label = __('Completed', 'invoicing'); |
|
2286 | 2286 | break; |
2287 | 2287 | |
2288 | 2288 | case 'expired' : |
2289 | - $status_label = __( 'Expired', 'invoicing' ); |
|
2289 | + $status_label = __('Expired', 'invoicing'); |
|
2290 | 2290 | break; |
2291 | 2291 | |
2292 | 2292 | case 'pending' : |
2293 | - $status_label = __( 'Pending', 'invoicing' ); |
|
2293 | + $status_label = __('Pending', 'invoicing'); |
|
2294 | 2294 | break; |
2295 | 2295 | |
2296 | 2296 | case 'failing' : |
2297 | - $status_label = __( 'Failing', 'invoicing' ); |
|
2297 | + $status_label = __('Failing', 'invoicing'); |
|
2298 | 2298 | break; |
2299 | 2299 | |
2300 | 2300 | case 'stopped' : |
2301 | - $status_label = __( 'Stopped', 'invoicing' ); |
|
2301 | + $status_label = __('Stopped', 'invoicing'); |
|
2302 | 2302 | break; |
2303 | 2303 | |
2304 | 2304 | case 'trialing' : |
2305 | - $status_label = __( 'Trialing', 'invoicing' ); |
|
2305 | + $status_label = __('Trialing', 'invoicing'); |
|
2306 | 2306 | break; |
2307 | 2307 | |
2308 | 2308 | default: |
@@ -2313,15 +2313,15 @@ discard block |
||
2313 | 2313 | return $status_label; |
2314 | 2314 | } |
2315 | 2315 | |
2316 | - public function get_subscription_period( $full = false ) { |
|
2317 | - $period = $this->get_meta( '_wpinv_subscr_period', true ); |
|
2316 | + public function get_subscription_period($full = false) { |
|
2317 | + $period = $this->get_meta('_wpinv_subscr_period', true); |
|
2318 | 2318 | |
2319 | - if ( !in_array( $period, array( 'D', 'W', 'M', 'Y' ) ) ) { |
|
2319 | + if (!in_array($period, array('D', 'W', 'M', 'Y'))) { |
|
2320 | 2320 | $period = 'D'; |
2321 | 2321 | } |
2322 | 2322 | |
2323 | - if ( $full ) { |
|
2324 | - switch( $period ) { |
|
2323 | + if ($full) { |
|
2324 | + switch ($period) { |
|
2325 | 2325 | case 'D': |
2326 | 2326 | $period = 'day'; |
2327 | 2327 | break; |
@@ -2341,28 +2341,28 @@ discard block |
||
2341 | 2341 | } |
2342 | 2342 | |
2343 | 2343 | public function get_subscription_interval() { |
2344 | - $interval = (int)$this->get_meta( '_wpinv_subscr_interval', true ); |
|
2344 | + $interval = (int)$this->get_meta('_wpinv_subscr_interval', true); |
|
2345 | 2345 | |
2346 | - if ( !$interval > 0 ) { |
|
2346 | + if (!$interval > 0) { |
|
2347 | 2347 | $interval = 1; |
2348 | 2348 | } |
2349 | 2349 | |
2350 | 2350 | return $interval; |
2351 | 2351 | } |
2352 | 2352 | |
2353 | - public function get_subscription_trial_period( $full = false ) { |
|
2354 | - if ( !$this->is_free_trial() ) { |
|
2353 | + public function get_subscription_trial_period($full = false) { |
|
2354 | + if (!$this->is_free_trial()) { |
|
2355 | 2355 | return ''; |
2356 | 2356 | } |
2357 | 2357 | |
2358 | - $period = $this->get_meta( '_wpinv_subscr_trial_period', true ); |
|
2358 | + $period = $this->get_meta('_wpinv_subscr_trial_period', true); |
|
2359 | 2359 | |
2360 | - if ( !in_array( $period, array( 'D', 'W', 'M', 'Y' ) ) ) { |
|
2360 | + if (!in_array($period, array('D', 'W', 'M', 'Y'))) { |
|
2361 | 2361 | $period = 'D'; |
2362 | 2362 | } |
2363 | 2363 | |
2364 | - if ( $full ) { |
|
2365 | - switch( $period ) { |
|
2364 | + if ($full) { |
|
2365 | + switch ($period) { |
|
2366 | 2366 | case 'D': |
2367 | 2367 | $period = 'day'; |
2368 | 2368 | break; |
@@ -2382,13 +2382,13 @@ discard block |
||
2382 | 2382 | } |
2383 | 2383 | |
2384 | 2384 | public function get_subscription_trial_interval() { |
2385 | - if ( !$this->is_free_trial() ) { |
|
2385 | + if (!$this->is_free_trial()) { |
|
2386 | 2386 | return 0; |
2387 | 2387 | } |
2388 | 2388 | |
2389 | - $interval = (int)$this->get_meta( '_wpinv_subscr_trial_interval', true ); |
|
2389 | + $interval = (int)$this->get_meta('_wpinv_subscr_trial_interval', true); |
|
2390 | 2390 | |
2391 | - if ( !$interval > 0 ) { |
|
2391 | + if (!$interval > 0) { |
|
2392 | 2392 | $interval = 1; |
2393 | 2393 | } |
2394 | 2394 | |
@@ -2400,8 +2400,8 @@ discard block |
||
2400 | 2400 | 'status' => 'failing' |
2401 | 2401 | ); |
2402 | 2402 | |
2403 | - if ( $this->update_subscription( $args ) ) { |
|
2404 | - do_action( 'wpinv_subscription_failing', $this->ID, $this ); |
|
2403 | + if ($this->update_subscription($args)) { |
|
2404 | + do_action('wpinv_subscription_failing', $this->ID, $this); |
|
2405 | 2405 | return true; |
2406 | 2406 | } |
2407 | 2407 | |
@@ -2413,8 +2413,8 @@ discard block |
||
2413 | 2413 | 'status' => 'stopped' |
2414 | 2414 | ); |
2415 | 2415 | |
2416 | - if ( $this->update_subscription( $args ) ) { |
|
2417 | - do_action( 'wpinv_subscription_stopped', $this->ID, $this ); |
|
2416 | + if ($this->update_subscription($args)) { |
|
2417 | + do_action('wpinv_subscription_stopped', $this->ID, $this); |
|
2418 | 2418 | return true; |
2419 | 2419 | } |
2420 | 2420 | |
@@ -2426,8 +2426,8 @@ discard block |
||
2426 | 2426 | 'status' => 'active' |
2427 | 2427 | ); |
2428 | 2428 | |
2429 | - if ( $this->update_subscription( $args ) ) { |
|
2430 | - do_action( 'wpinv_subscription_restarted', $this->ID, $this ); |
|
2429 | + if ($this->update_subscription($args)) { |
|
2430 | + do_action('wpinv_subscription_restarted', $this->ID, $this); |
|
2431 | 2431 | return true; |
2432 | 2432 | } |
2433 | 2433 | |
@@ -2439,23 +2439,23 @@ discard block |
||
2439 | 2439 | 'status' => 'cancelled' |
2440 | 2440 | ); |
2441 | 2441 | |
2442 | - if ( $this->update_subscription( $args ) ) { |
|
2443 | - if ( is_user_logged_in() ) { |
|
2444 | - $userdata = get_userdata( get_current_user_id() ); |
|
2442 | + if ($this->update_subscription($args)) { |
|
2443 | + if (is_user_logged_in()) { |
|
2444 | + $userdata = get_userdata(get_current_user_id()); |
|
2445 | 2445 | $user = $userdata->user_login; |
2446 | 2446 | } else { |
2447 | - $user = __( 'gateway', 'invoicing' ); |
|
2447 | + $user = __('gateway', 'invoicing'); |
|
2448 | 2448 | } |
2449 | 2449 | |
2450 | 2450 | $subscription_id = $this->get_subscription_id(); |
2451 | - if ( !$subscription_id ) { |
|
2451 | + if (!$subscription_id) { |
|
2452 | 2452 | $subscription_id = $this->ID; |
2453 | 2453 | } |
2454 | 2454 | |
2455 | - $note = sprintf( __( 'Subscription %s has been cancelled by %s', 'invoicing' ), $subscription_id, $user ); |
|
2456 | - $this->add_note( $note ); |
|
2455 | + $note = sprintf(__('Subscription %s has been cancelled by %s', 'invoicing'), $subscription_id, $user); |
|
2456 | + $this->add_note($note); |
|
2457 | 2457 | |
2458 | - do_action( 'wpinv_subscription_cancelled', $this->ID, $this ); |
|
2458 | + do_action('wpinv_subscription_cancelled', $this->ID, $this); |
|
2459 | 2459 | return true; |
2460 | 2460 | } |
2461 | 2461 | |
@@ -2463,11 +2463,11 @@ discard block |
||
2463 | 2463 | } |
2464 | 2464 | |
2465 | 2465 | public function can_cancel() { |
2466 | - return apply_filters( 'wpinv_subscription_can_cancel', false, $this ); |
|
2466 | + return apply_filters('wpinv_subscription_can_cancel', false, $this); |
|
2467 | 2467 | } |
2468 | 2468 | |
2469 | - public function add_subscription( $data = array() ) { |
|
2470 | - if ( empty( $this->ID ) ) { |
|
2469 | + public function add_subscription($data = array()) { |
|
2470 | + if (empty($this->ID)) { |
|
2471 | 2471 | return false; |
2472 | 2472 | } |
2473 | 2473 | |
@@ -2486,85 +2486,85 @@ discard block |
||
2486 | 2486 | 'profile_id' => '', |
2487 | 2487 | ); |
2488 | 2488 | |
2489 | - $args = wp_parse_args( $data, $defaults ); |
|
2489 | + $args = wp_parse_args($data, $defaults); |
|
2490 | 2490 | |
2491 | - if ( $args['expiration'] && strtotime( 'NOW', current_time( 'timestamp' ) ) > strtotime( $args['expiration'], current_time( 'timestamp' ) ) ) { |
|
2492 | - if ( 'active' == $args['status'] || $args['status'] == 'trialing' ) { |
|
2491 | + if ($args['expiration'] && strtotime('NOW', current_time('timestamp')) > strtotime($args['expiration'], current_time('timestamp'))) { |
|
2492 | + if ('active' == $args['status'] || $args['status'] == 'trialing') { |
|
2493 | 2493 | $args['status'] = 'expired'; |
2494 | 2494 | } |
2495 | 2495 | } |
2496 | 2496 | |
2497 | - do_action( 'wpinv_subscription_pre_create', $args, $data, $this ); |
|
2497 | + do_action('wpinv_subscription_pre_create', $args, $data, $this); |
|
2498 | 2498 | |
2499 | - if ( !empty( $args ) ) { |
|
2500 | - foreach ( $args as $key => $value ) { |
|
2501 | - $this->update_meta( '_wpinv_subscr_' . $key, $value ); |
|
2499 | + if (!empty($args)) { |
|
2500 | + foreach ($args as $key => $value) { |
|
2501 | + $this->update_meta('_wpinv_subscr_' . $key, $value); |
|
2502 | 2502 | } |
2503 | 2503 | } |
2504 | 2504 | |
2505 | - do_action( 'wpinv_subscription_post_create', $args, $data, $this ); |
|
2505 | + do_action('wpinv_subscription_post_create', $args, $data, $this); |
|
2506 | 2506 | |
2507 | 2507 | return true; |
2508 | 2508 | } |
2509 | 2509 | |
2510 | - public function update_subscription( $args = array() ) { |
|
2511 | - if ( empty( $this->ID ) ) { |
|
2510 | + public function update_subscription($args = array()) { |
|
2511 | + if (empty($this->ID)) { |
|
2512 | 2512 | return false; |
2513 | 2513 | } |
2514 | 2514 | |
2515 | - if ( !empty( $args['expiration'] ) && $args['expiration'] && strtotime( 'NOW', current_time( 'timestamp' ) ) > strtotime( $args['expiration'], current_time( 'timestamp' ) ) ) { |
|
2516 | - if ( !isset( $args['status'] ) || ( isset( $args['status'] ) && ( 'active' == $args['status'] || $args['status'] == 'trialing' ) ) ) { |
|
2515 | + if (!empty($args['expiration']) && $args['expiration'] && strtotime('NOW', current_time('timestamp')) > strtotime($args['expiration'], current_time('timestamp'))) { |
|
2516 | + if (!isset($args['status']) || (isset($args['status']) && ('active' == $args['status'] || $args['status'] == 'trialing'))) { |
|
2517 | 2517 | $args['status'] = 'expired'; |
2518 | 2518 | } |
2519 | 2519 | } |
2520 | 2520 | |
2521 | - if ( isset( $args['status'] ) && $args['status'] == 'cancelled' && empty( $args['cancelled_on'] ) ) { |
|
2522 | - $args['cancelled_on'] = date_i18n( 'Y-m-d H:i:s', current_time( 'timestamp' ) ); |
|
2521 | + if (isset($args['status']) && $args['status'] == 'cancelled' && empty($args['cancelled_on'])) { |
|
2522 | + $args['cancelled_on'] = date_i18n('Y-m-d H:i:s', current_time('timestamp')); |
|
2523 | 2523 | } |
2524 | 2524 | |
2525 | - do_action( 'wpinv_subscription_pre_update', $args, $this ); |
|
2525 | + do_action('wpinv_subscription_pre_update', $args, $this); |
|
2526 | 2526 | |
2527 | - if ( !empty( $args ) ) { |
|
2528 | - foreach ( $args as $key => $value ) { |
|
2529 | - $this->update_meta( '_wpinv_subscr_' . $key, $value ); |
|
2527 | + if (!empty($args)) { |
|
2528 | + foreach ($args as $key => $value) { |
|
2529 | + $this->update_meta('_wpinv_subscr_' . $key, $value); |
|
2530 | 2530 | } |
2531 | 2531 | } |
2532 | 2532 | |
2533 | - do_action( 'wpinv_subscription_post_update', $args, $this ); |
|
2533 | + do_action('wpinv_subscription_post_update', $args, $this); |
|
2534 | 2534 | |
2535 | 2535 | return true; |
2536 | 2536 | } |
2537 | 2537 | |
2538 | 2538 | public function renew_subscription() { |
2539 | 2539 | $parent_invoice = $this->get_parent_payment(); |
2540 | - $parent_invoice = empty( $parent_invoice ) ? $this : $parent_invoice; |
|
2540 | + $parent_invoice = empty($parent_invoice) ? $this : $parent_invoice; |
|
2541 | 2541 | |
2542 | - $current_time = current_time( 'timestamp' ); |
|
2542 | + $current_time = current_time('timestamp'); |
|
2543 | 2543 | $start = $this->get_subscription_created(); |
2544 | - $start = $start ? strtotime( $start ) : $current_time; |
|
2544 | + $start = $start ? strtotime($start) : $current_time; |
|
2545 | 2545 | $expires = $this->get_expiration_time(); |
2546 | 2546 | |
2547 | - if ( !$expires ) { |
|
2548 | - $expires = strtotime( '+' . $parent_invoice->get_subscription_interval() . ' ' . $parent_invoice->get_subscription_period( true ), $start ); |
|
2547 | + if (!$expires) { |
|
2548 | + $expires = strtotime('+' . $parent_invoice->get_subscription_interval() . ' ' . $parent_invoice->get_subscription_period(true), $start); |
|
2549 | 2549 | } |
2550 | 2550 | |
2551 | - $expiration = date_i18n( 'Y-m-d 23:59:59', $expires ); |
|
2552 | - $expiration = apply_filters( 'wpinv_subscription_renewal_expiration', $expiration, $this->ID, $this ); |
|
2551 | + $expiration = date_i18n('Y-m-d 23:59:59', $expires); |
|
2552 | + $expiration = apply_filters('wpinv_subscription_renewal_expiration', $expiration, $this->ID, $this); |
|
2553 | 2553 | $bill_times = $parent_invoice->get_bill_times(); |
2554 | 2554 | $times_billed = $parent_invoice->get_total_payments(); |
2555 | 2555 | |
2556 | - if ( $parent_invoice->get_subscription_status() == 'trialing' && ( $times_billed > 0 || strtotime( date_i18n( 'Y-m-d' ) ) < strtotime( $parent_invoice->get_trial_end_date( false ) ) ) ) { |
|
2556 | + if ($parent_invoice->get_subscription_status() == 'trialing' && ($times_billed > 0 || strtotime(date_i18n('Y-m-d')) < strtotime($parent_invoice->get_trial_end_date(false)))) { |
|
2557 | 2557 | $args = array( |
2558 | 2558 | 'status' => 'active', |
2559 | 2559 | ); |
2560 | 2560 | |
2561 | - $parent_invoice->update_subscription( $args ); |
|
2561 | + $parent_invoice->update_subscription($args); |
|
2562 | 2562 | } |
2563 | 2563 | |
2564 | - do_action( 'wpinv_subscription_pre_renew', $this->ID, $expiration, $this ); |
|
2564 | + do_action('wpinv_subscription_pre_renew', $this->ID, $expiration, $this); |
|
2565 | 2565 | |
2566 | - $status = 'active'; |
|
2567 | - if ( $bill_times > 0 && $times_billed >= $bill_times ) { |
|
2566 | + $status = 'active'; |
|
2567 | + if ($bill_times > 0 && $times_billed >= $bill_times) { |
|
2568 | 2568 | $this->complete_subscription(); |
2569 | 2569 | $status = 'completed'; |
2570 | 2570 | } |
@@ -2574,10 +2574,10 @@ discard block |
||
2574 | 2574 | 'status' => $status, |
2575 | 2575 | ); |
2576 | 2576 | |
2577 | - $this->update_subscription( $args ); |
|
2577 | + $this->update_subscription($args); |
|
2578 | 2578 | |
2579 | - do_action( 'wpinv_subscription_post_renew', $this->ID, $expiration, $this ); |
|
2580 | - do_action( 'wpinv_recurring_set_subscription_status', $this->ID, $status, $this ); |
|
2579 | + do_action('wpinv_subscription_post_renew', $this->ID, $expiration, $this); |
|
2580 | + do_action('wpinv_recurring_set_subscription_status', $this->ID, $status, $this); |
|
2581 | 2581 | } |
2582 | 2582 | |
2583 | 2583 | public function complete_subscription() { |
@@ -2585,8 +2585,8 @@ discard block |
||
2585 | 2585 | 'status' => 'completed' |
2586 | 2586 | ); |
2587 | 2587 | |
2588 | - if ( $this->update_subscription( $args ) ) { |
|
2589 | - do_action( 'wpinv_subscription_completed', $this->ID, $this ); |
|
2588 | + if ($this->update_subscription($args)) { |
|
2589 | + do_action('wpinv_subscription_completed', $this->ID, $this); |
|
2590 | 2590 | } |
2591 | 2591 | } |
2592 | 2592 | |
@@ -2595,44 +2595,44 @@ discard block |
||
2595 | 2595 | 'status' => 'expired' |
2596 | 2596 | ); |
2597 | 2597 | |
2598 | - if ( $this->update_subscription( $args ) ) { |
|
2599 | - do_action( 'wpinv_subscription_expired', $this->ID, $this ); |
|
2598 | + if ($this->update_subscription($args)) { |
|
2599 | + do_action('wpinv_subscription_expired', $this->ID, $this); |
|
2600 | 2600 | } |
2601 | 2601 | } |
2602 | 2602 | |
2603 | 2603 | public function get_cancel_url() { |
2604 | - $url = wp_nonce_url( add_query_arg( array( 'wpi_action' => 'cancel_subscription', 'sub_id' => $this->ID ) ), 'wpinv-recurring-cancel' ); |
|
2604 | + $url = wp_nonce_url(add_query_arg(array('wpi_action' => 'cancel_subscription', 'sub_id' => $this->ID)), 'wpinv-recurring-cancel'); |
|
2605 | 2605 | |
2606 | - return apply_filters( 'wpinv_subscription_cancel_url', $url, $this ); |
|
2606 | + return apply_filters('wpinv_subscription_cancel_url', $url, $this); |
|
2607 | 2607 | } |
2608 | 2608 | |
2609 | 2609 | public function can_update() { |
2610 | - return apply_filters( 'wpinv_subscription_can_update', false, $this ); |
|
2610 | + return apply_filters('wpinv_subscription_can_update', false, $this); |
|
2611 | 2611 | } |
2612 | 2612 | |
2613 | 2613 | public function get_update_url() { |
2614 | - $url = add_query_arg( array( 'action' => 'update', 'sub_id' => $this->ID ) ); |
|
2614 | + $url = add_query_arg(array('action' => 'update', 'sub_id' => $this->ID)); |
|
2615 | 2615 | |
2616 | - return apply_filters( 'wpinv_subscription_update_url', $url, $this ); |
|
2616 | + return apply_filters('wpinv_subscription_update_url', $url, $this); |
|
2617 | 2617 | } |
2618 | 2618 | |
2619 | 2619 | public function is_parent() { |
2620 | - $is_parent = empty( $this->parent_invoice ) ? true : false; |
|
2620 | + $is_parent = empty($this->parent_invoice) ? true : false; |
|
2621 | 2621 | |
2622 | - return apply_filters( 'wpinv_invoice_is_parent', $is_parent, $this ); |
|
2622 | + return apply_filters('wpinv_invoice_is_parent', $is_parent, $this); |
|
2623 | 2623 | } |
2624 | 2624 | |
2625 | 2625 | public function is_renewal() { |
2626 | 2626 | $is_renewal = $this->parent_invoice && $this->parent_invoice != $this->ID ? true : false; |
2627 | 2627 | |
2628 | - return apply_filters( 'wpinv_invoice_is_renewal', $is_renewal, $this ); |
|
2628 | + return apply_filters('wpinv_invoice_is_renewal', $is_renewal, $this); |
|
2629 | 2629 | } |
2630 | 2630 | |
2631 | 2631 | public function get_parent_payment() { |
2632 | 2632 | $parent_payment = NULL; |
2633 | 2633 | |
2634 | - if ( $this->is_renewal() ) { |
|
2635 | - $parent_payment = wpinv_get_invoice( $this->parent_invoice ); |
|
2634 | + if ($this->is_renewal()) { |
|
2635 | + $parent_payment = wpinv_get_invoice($this->parent_invoice); |
|
2636 | 2636 | } |
2637 | 2637 | |
2638 | 2638 | return $parent_payment; |
@@ -2643,100 +2643,100 @@ discard block |
||
2643 | 2643 | |
2644 | 2644 | $subscription_status = $this->get_subscription_status(); |
2645 | 2645 | |
2646 | - if( ! $this->is_subscription_expired() && ( $subscription_status == 'active' || $subscription_status == 'cancelled' || $subscription_status == 'trialing' ) ) { |
|
2646 | + if (!$this->is_subscription_expired() && ($subscription_status == 'active' || $subscription_status == 'cancelled' || $subscription_status == 'trialing')) { |
|
2647 | 2647 | $ret = true; |
2648 | 2648 | } |
2649 | 2649 | |
2650 | - return apply_filters( 'wpinv_subscription_is_active', $ret, $this->ID, $this ); |
|
2650 | + return apply_filters('wpinv_subscription_is_active', $ret, $this->ID, $this); |
|
2651 | 2651 | } |
2652 | 2652 | |
2653 | 2653 | public function is_subscription_expired() { |
2654 | 2654 | $ret = false; |
2655 | 2655 | $subscription_status = $this->get_subscription_status(); |
2656 | 2656 | |
2657 | - if ( $subscription_status == 'expired' ) { |
|
2657 | + if ($subscription_status == 'expired') { |
|
2658 | 2658 | $ret = true; |
2659 | - } else if ( 'active' === $subscription_status || 'cancelled' === $subscription_status || 'trialing' == $subscription_status ) { |
|
2659 | + } else if ('active' === $subscription_status || 'cancelled' === $subscription_status || 'trialing' == $subscription_status) { |
|
2660 | 2660 | $ret = false; |
2661 | 2661 | $expiration = $this->get_expiration_time(); |
2662 | 2662 | |
2663 | - if ( $expiration && strtotime( 'NOW', current_time( 'timestamp' ) ) > $expiration ) { |
|
2663 | + if ($expiration && strtotime('NOW', current_time('timestamp')) > $expiration) { |
|
2664 | 2664 | $ret = true; |
2665 | 2665 | |
2666 | - if ( 'active' === $subscription_status || 'trialing' === $subscription_status ) { |
|
2666 | + if ('active' === $subscription_status || 'trialing' === $subscription_status) { |
|
2667 | 2667 | $this->expire_subscription(); |
2668 | 2668 | } |
2669 | 2669 | } |
2670 | 2670 | } |
2671 | 2671 | |
2672 | - return apply_filters( 'wpinv_subscription_is_expired', $ret, $this->ID, $this ); |
|
2672 | + return apply_filters('wpinv_subscription_is_expired', $ret, $this->ID, $this); |
|
2673 | 2673 | } |
2674 | 2674 | |
2675 | - public function get_new_expiration( $item_id = 0, $trial = true ) { |
|
2676 | - $item = new WPInv_Item( $item_id ); |
|
2675 | + public function get_new_expiration($item_id = 0, $trial = true) { |
|
2676 | + $item = new WPInv_Item($item_id); |
|
2677 | 2677 | $interval = $item->get_recurring_interval(); |
2678 | - $period = $item->get_recurring_period( true ); |
|
2678 | + $period = $item->get_recurring_period(true); |
|
2679 | 2679 | |
2680 | - $expiration_time = strtotime( '+' . $interval . ' ' . $period ); |
|
2680 | + $expiration_time = strtotime('+' . $interval . ' ' . $period); |
|
2681 | 2681 | |
2682 | - if ( $trial && $this->is_free_trial() && $item->has_free_trial() ) { |
|
2683 | - $expiration_time += ( wpinv_period_in_days( $item->get_trial_interval(), $item->get_trial_period() ) * DAY_IN_SECONDS ) ; |
|
2682 | + if ($trial && $this->is_free_trial() && $item->has_free_trial()) { |
|
2683 | + $expiration_time += (wpinv_period_in_days($item->get_trial_interval(), $item->get_trial_period()) * DAY_IN_SECONDS); |
|
2684 | 2684 | } |
2685 | 2685 | |
2686 | - return date_i18n( 'Y-m-d 23:59:59', $expiration_time ); |
|
2686 | + return date_i18n('Y-m-d 23:59:59', $expiration_time); |
|
2687 | 2687 | } |
2688 | 2688 | |
2689 | - public function get_subscription_data( $filed = '' ) { |
|
2690 | - $fields = array( 'item_id', 'status', 'period', 'initial_amount', 'recurring_amount', 'interval', 'bill_times', 'trial_period', 'trial_interval', 'expiration', 'profile_id', 'created', 'cancelled_on' ); |
|
2689 | + public function get_subscription_data($filed = '') { |
|
2690 | + $fields = array('item_id', 'status', 'period', 'initial_amount', 'recurring_amount', 'interval', 'bill_times', 'trial_period', 'trial_interval', 'expiration', 'profile_id', 'created', 'cancelled_on'); |
|
2691 | 2691 | |
2692 | 2692 | $subscription_meta = array(); |
2693 | - foreach ( $fields as $field ) { |
|
2694 | - $subscription_meta[ $field ] = $this->get_meta( '_wpinv_subscr_' . $field ); |
|
2693 | + foreach ($fields as $field) { |
|
2694 | + $subscription_meta[$field] = $this->get_meta('_wpinv_subscr_' . $field); |
|
2695 | 2695 | } |
2696 | 2696 | |
2697 | - $item = $this->get_recurring( true ); |
|
2697 | + $item = $this->get_recurring(true); |
|
2698 | 2698 | |
2699 | - if ( !empty( $item ) ) { |
|
2700 | - if ( empty( $subscription_meta['item_id'] ) ) { |
|
2699 | + if (!empty($item)) { |
|
2700 | + if (empty($subscription_meta['item_id'])) { |
|
2701 | 2701 | $subscription_meta['item_id'] = $item->ID; |
2702 | 2702 | } |
2703 | - if ( empty( $subscription_meta['period'] ) ) { |
|
2703 | + if (empty($subscription_meta['period'])) { |
|
2704 | 2704 | $subscription_meta['period'] = $item->get_recurring_period(); |
2705 | 2705 | } |
2706 | - if ( empty( $subscription_meta['interval'] ) ) { |
|
2706 | + if (empty($subscription_meta['interval'])) { |
|
2707 | 2707 | $subscription_meta['interval'] = $item->get_recurring_interval(); |
2708 | 2708 | } |
2709 | - if ( $item->has_free_trial() ) { |
|
2710 | - if ( empty( $subscription_meta['trial_period'] ) ) { |
|
2709 | + if ($item->has_free_trial()) { |
|
2710 | + if (empty($subscription_meta['trial_period'])) { |
|
2711 | 2711 | $subscription_meta['trial_period'] = $item->get_trial_period(); |
2712 | 2712 | } |
2713 | - if ( empty( $subscription_meta['trial_interval'] ) ) { |
|
2713 | + if (empty($subscription_meta['trial_interval'])) { |
|
2714 | 2714 | $subscription_meta['trial_interval'] = $item->get_trial_interval(); |
2715 | 2715 | } |
2716 | 2716 | } else { |
2717 | 2717 | $subscription_meta['trial_period'] = ''; |
2718 | 2718 | $subscription_meta['trial_interval'] = 0; |
2719 | 2719 | } |
2720 | - if ( !$subscription_meta['bill_times'] && $subscription_meta['bill_times'] !== 0 ) { |
|
2720 | + if (!$subscription_meta['bill_times'] && $subscription_meta['bill_times'] !== 0) { |
|
2721 | 2721 | $subscription_meta['bill_times'] = $item->get_recurring_limit(); |
2722 | 2722 | } |
2723 | - if ( $subscription_meta['initial_amount'] === '' || $subscription_meta['recurring_amount'] === '' ) { |
|
2724 | - $subscription_meta['initial_amount'] = wpinv_format_amount( $this->get_total() ); |
|
2725 | - $subscription_meta['recurring_amount'] = wpinv_format_amount( $this->get_recurring_details( 'total' ) ); |
|
2723 | + if ($subscription_meta['initial_amount'] === '' || $subscription_meta['recurring_amount'] === '') { |
|
2724 | + $subscription_meta['initial_amount'] = wpinv_format_amount($this->get_total()); |
|
2725 | + $subscription_meta['recurring_amount'] = wpinv_format_amount($this->get_recurring_details('total')); |
|
2726 | 2726 | } |
2727 | 2727 | } |
2728 | 2728 | |
2729 | - if ( $filed === '' ) { |
|
2730 | - return apply_filters( 'wpinv_get_invoice_subscription_data', $subscription_meta, $this ); |
|
2729 | + if ($filed === '') { |
|
2730 | + return apply_filters('wpinv_get_invoice_subscription_data', $subscription_meta, $this); |
|
2731 | 2731 | } |
2732 | 2732 | |
2733 | - $value = isset( $subscription_meta[$filed] ) ? $subscription_meta[$filed] : ''; |
|
2733 | + $value = isset($subscription_meta[$filed]) ? $subscription_meta[$filed] : ''; |
|
2734 | 2734 | |
2735 | - return apply_filters( 'wpinv_invoice_subscription_data_value', $value, $subscription_meta, $this ); |
|
2735 | + return apply_filters('wpinv_invoice_subscription_data_value', $value, $subscription_meta, $this); |
|
2736 | 2736 | } |
2737 | 2737 | |
2738 | 2738 | public function is_paid() { |
2739 | - if ( $this->has_status( array( 'publish', 'complete', 'processing', 'renewal' ) ) ) { |
|
2739 | + if ($this->has_status(array('publish', 'complete', 'processing', 'renewal'))) { |
|
2740 | 2740 | return true; |
2741 | 2741 | } |
2742 | 2742 | |
@@ -2748,28 +2748,28 @@ discard block |
||
2748 | 2748 | |
2749 | 2749 | $requires_vat = false; |
2750 | 2750 | |
2751 | - if ( $this->country ) { |
|
2751 | + if ($this->country) { |
|
2752 | 2752 | $wpi_country = $this->country; |
2753 | 2753 | |
2754 | - $requires_vat = $wpinv_euvat->requires_vat( $requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule( $this ) ); |
|
2754 | + $requires_vat = $wpinv_euvat->requires_vat($requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule($this)); |
|
2755 | 2755 | } |
2756 | 2756 | |
2757 | - return apply_filters( 'wpinv_invoice_has_vat', $requires_vat, $this ); |
|
2757 | + return apply_filters('wpinv_invoice_has_vat', $requires_vat, $this); |
|
2758 | 2758 | } |
2759 | 2759 | |
2760 | 2760 | public function refresh_item_ids() { |
2761 | 2761 | $item_ids = array(); |
2762 | 2762 | |
2763 | - if ( !empty( $this->cart_details ) ) { |
|
2764 | - foreach ( $this->cart_details as $key => $item ) { |
|
2765 | - if ( !empty( $item['id'] ) ) { |
|
2763 | + if (!empty($this->cart_details)) { |
|
2764 | + foreach ($this->cart_details as $key => $item) { |
|
2765 | + if (!empty($item['id'])) { |
|
2766 | 2766 | $item_ids[] = $item['id']; |
2767 | 2767 | } |
2768 | 2768 | } |
2769 | 2769 | } |
2770 | 2770 | |
2771 | - $item_ids = !empty( $item_ids ) ? implode( ',', array_unique( $item_ids ) ) : ''; |
|
2771 | + $item_ids = !empty($item_ids) ? implode(',', array_unique($item_ids)) : ''; |
|
2772 | 2772 | |
2773 | - update_post_meta( $this->ID, '_wpinv_item_ids', $item_ids ); |
|
2773 | + update_post_meta($this->ID, '_wpinv_item_ids', $item_ids); |
|
2774 | 2774 | } |
2775 | 2775 | } |
@@ -1,66 +1,66 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // MUST have WordPress. |
3 | -if ( !defined( 'WPINC' ) ) { |
|
4 | - exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) ); |
|
3 | +if (!defined('WPINC')) { |
|
4 | + exit('Do NOT access this file directly: ' . basename(__FILE__)); |
|
5 | 5 | } |
6 | 6 | |
7 | -add_action( 'admin_menu', 'wpinv_add_options_link', 10 ); |
|
7 | +add_action('admin_menu', 'wpinv_add_options_link', 10); |
|
8 | 8 | function wpinv_add_options_link() { |
9 | 9 | global $menu; |
10 | 10 | |
11 | - if ( current_user_can( 'manage_options' ) ) { |
|
12 | - $menu[] = array( '', 'read', 'separator-wpinv', '', 'wp-menu-separator wpinv' ); |
|
11 | + if (current_user_can('manage_options')) { |
|
12 | + $menu[] = array('', 'read', 'separator-wpinv', '', 'wp-menu-separator wpinv'); |
|
13 | 13 | } |
14 | 14 | |
15 | - $wpi_invoice = get_post_type_object( 'wpi_invoice' ); |
|
15 | + $wpi_invoice = get_post_type_object('wpi_invoice'); |
|
16 | 16 | |
17 | - add_menu_page( __( 'Invoicing', 'invoicing' ), __( 'Invoicing', 'invoicing' ), 'manage_options', 'wpinv', null, $wpi_invoice->menu_icon, '54.123460' ); |
|
17 | + add_menu_page(__('Invoicing', 'invoicing'), __('Invoicing', 'invoicing'), 'manage_options', 'wpinv', null, $wpi_invoice->menu_icon, '54.123460'); |
|
18 | 18 | |
19 | - $wpi_settings_page = add_submenu_page( 'wpinv', __( 'Invoice Settings', 'invoicing' ), __( 'Settings', 'invoicing' ), 'manage_options', 'wpinv-settings', 'wpinv_options_page' ); |
|
19 | + $wpi_settings_page = add_submenu_page('wpinv', __('Invoice Settings', 'invoicing'), __('Settings', 'invoicing'), 'manage_options', 'wpinv-settings', 'wpinv_options_page'); |
|
20 | 20 | } |
21 | 21 | |
22 | -add_action( 'admin_menu', 'wpinv_remove_admin_submenus', 999 ); |
|
22 | +add_action('admin_menu', 'wpinv_remove_admin_submenus', 999); |
|
23 | 23 | function wpinv_remove_admin_submenus() { |
24 | - remove_submenu_page( 'edit.php?post_type=wpi_invoice', 'post-new.php?post_type=wpi_invoice' ); |
|
24 | + remove_submenu_page('edit.php?post_type=wpi_invoice', 'post-new.php?post_type=wpi_invoice'); |
|
25 | 25 | } |
26 | 26 | |
27 | -add_filter( 'manage_wpi_discount_posts_columns', 'wpinv_discount_columns' ); |
|
28 | -function wpinv_discount_columns( $existing_columns ) { |
|
27 | +add_filter('manage_wpi_discount_posts_columns', 'wpinv_discount_columns'); |
|
28 | +function wpinv_discount_columns($existing_columns) { |
|
29 | 29 | $columns = array(); |
30 | 30 | $columns['cb'] = $existing_columns['cb']; |
31 | - $columns['name'] = __( 'Name', 'invoicing' ); |
|
32 | - $columns['code'] = __( 'Code', 'invoicing' ); |
|
33 | - $columns['amount'] = __( 'Amount', 'invoicing' ); |
|
34 | - $columns['usage'] = __( 'Usage / Limit', 'invoicing' ); |
|
35 | - $columns['expiry_date'] = __( 'Expiry Date', 'invoicing' ); |
|
36 | - $columns['status'] = __( 'Status', 'invoicing' ); |
|
31 | + $columns['name'] = __('Name', 'invoicing'); |
|
32 | + $columns['code'] = __('Code', 'invoicing'); |
|
33 | + $columns['amount'] = __('Amount', 'invoicing'); |
|
34 | + $columns['usage'] = __('Usage / Limit', 'invoicing'); |
|
35 | + $columns['expiry_date'] = __('Expiry Date', 'invoicing'); |
|
36 | + $columns['status'] = __('Status', 'invoicing'); |
|
37 | 37 | |
38 | 38 | return $columns; |
39 | 39 | } |
40 | 40 | |
41 | -add_action( 'manage_wpi_discount_posts_custom_column', 'wpinv_discount_custom_column' ); |
|
42 | -function wpinv_discount_custom_column( $column ) { |
|
41 | +add_action('manage_wpi_discount_posts_custom_column', 'wpinv_discount_custom_column'); |
|
42 | +function wpinv_discount_custom_column($column) { |
|
43 | 43 | global $post; |
44 | 44 | |
45 | 45 | $discount = $post; |
46 | 46 | |
47 | - switch ( $column ) { |
|
47 | + switch ($column) { |
|
48 | 48 | case 'name' : |
49 | - echo get_the_title( $discount->ID ); |
|
49 | + echo get_the_title($discount->ID); |
|
50 | 50 | break; |
51 | 51 | case 'code' : |
52 | - echo wpinv_get_discount_code( $discount->ID ); |
|
52 | + echo wpinv_get_discount_code($discount->ID); |
|
53 | 53 | break; |
54 | 54 | case 'amount' : |
55 | - echo wpinv_format_discount_rate( wpinv_get_discount_type( $discount->ID ), wpinv_get_discount_amount( $discount->ID ) ); |
|
55 | + echo wpinv_format_discount_rate(wpinv_get_discount_type($discount->ID), wpinv_get_discount_amount($discount->ID)); |
|
56 | 56 | break; |
57 | 57 | case 'usage_limit' : |
58 | - echo wpinv_get_discount_uses( $discount->ID ); |
|
58 | + echo wpinv_get_discount_uses($discount->ID); |
|
59 | 59 | break; |
60 | 60 | case 'usage' : |
61 | - $usage = wpinv_get_discount_uses( $discount->ID ) . ' / '; |
|
62 | - if ( wpinv_get_discount_max_uses( $discount->ID ) ) { |
|
63 | - $usage .= wpinv_get_discount_max_uses( $discount->ID ); |
|
61 | + $usage = wpinv_get_discount_uses($discount->ID) . ' / '; |
|
62 | + if (wpinv_get_discount_max_uses($discount->ID)) { |
|
63 | + $usage .= wpinv_get_discount_max_uses($discount->ID); |
|
64 | 64 | } else { |
65 | 65 | $usage .= ' ∞'; |
66 | 66 | } |
@@ -68,162 +68,162 @@ discard block |
||
68 | 68 | echo $usage; |
69 | 69 | break; |
70 | 70 | case 'expiry_date' : |
71 | - if ( wpinv_get_discount_expiration( $discount->ID ) ) { |
|
72 | - $expiration = date_i18n( get_option( 'date_format' ), strtotime( wpinv_get_discount_expiration( $discount->ID ) ) ); |
|
71 | + if (wpinv_get_discount_expiration($discount->ID)) { |
|
72 | + $expiration = date_i18n(get_option('date_format'), strtotime(wpinv_get_discount_expiration($discount->ID))); |
|
73 | 73 | } else { |
74 | - $expiration = __( 'Never', 'invoicing' ); |
|
74 | + $expiration = __('Never', 'invoicing'); |
|
75 | 75 | } |
76 | 76 | |
77 | 77 | echo $expiration; |
78 | 78 | break; |
79 | 79 | case 'description' : |
80 | - echo wp_kses_post( $post->post_excerpt ); |
|
80 | + echo wp_kses_post($post->post_excerpt); |
|
81 | 81 | break; |
82 | 82 | case 'status' : |
83 | - $status = wpinv_is_discount_expired( $discount->ID ) ? 'expired' : $discount->post_status; |
|
83 | + $status = wpinv_is_discount_expired($discount->ID) ? 'expired' : $discount->post_status; |
|
84 | 84 | |
85 | - echo wpinv_discount_status( $status ); |
|
85 | + echo wpinv_discount_status($status); |
|
86 | 86 | break; |
87 | 87 | } |
88 | 88 | } |
89 | 89 | |
90 | -add_filter( 'post_row_actions', 'wpinv_post_row_actions', 9999, 2 ); |
|
91 | -function wpinv_post_row_actions( $actions, $post ) { |
|
92 | - $post_type = !empty( $post->post_type ) ? $post->post_type : ''; |
|
90 | +add_filter('post_row_actions', 'wpinv_post_row_actions', 9999, 2); |
|
91 | +function wpinv_post_row_actions($actions, $post) { |
|
92 | + $post_type = !empty($post->post_type) ? $post->post_type : ''; |
|
93 | 93 | |
94 | - if ( $post_type == 'wpi_invoice' ) { |
|
94 | + if ($post_type == 'wpi_invoice') { |
|
95 | 95 | $actions = array(); |
96 | 96 | } |
97 | 97 | |
98 | - if ( $post_type == 'wpi_discount' ) { |
|
99 | - $actions = wpinv_discount_row_actions( $post, $actions ); |
|
98 | + if ($post_type == 'wpi_discount') { |
|
99 | + $actions = wpinv_discount_row_actions($post, $actions); |
|
100 | 100 | } |
101 | 101 | |
102 | 102 | return $actions; |
103 | 103 | } |
104 | 104 | |
105 | -function wpinv_discount_row_actions( $discount, $row_actions ) { |
|
106 | - $row_actions = array(); |
|
107 | - $edit_link = get_edit_post_link( $discount->ID ); |
|
108 | - $row_actions['edit'] = '<a href="' . esc_url( $edit_link ) . '">' . __( 'Edit', 'invoicing' ) . '</a>'; |
|
105 | +function wpinv_discount_row_actions($discount, $row_actions) { |
|
106 | + $row_actions = array(); |
|
107 | + $edit_link = get_edit_post_link($discount->ID); |
|
108 | + $row_actions['edit'] = '<a href="' . esc_url($edit_link) . '">' . __('Edit', 'invoicing') . '</a>'; |
|
109 | 109 | |
110 | - if( in_array( strtolower( $discount->post_status ), array( 'publish' ) ) ) { |
|
111 | - $row_actions['deactivate'] = '<a href="' . esc_url( wp_nonce_url( add_query_arg( array( 'wpi_action' => 'deactivate_discount', 'discount' => $discount->ID ) ), 'wpinv_discount_nonce' ) ) . '">' . __( 'Deactivate', 'invoicing' ) . '</a>'; |
|
112 | - } elseif( in_array( strtolower( $discount->post_status ), array( 'pending', 'draft' ) ) ) { |
|
113 | - $row_actions['activate'] = '<a href="' . esc_url( wp_nonce_url( add_query_arg( array( 'wpi_action' => 'activate_discount', 'discount' => $discount->ID ) ), 'wpinv_discount_nonce' ) ) . '">' . __( 'Activate', 'invoicing' ) . '</a>'; |
|
110 | + if (in_array(strtolower($discount->post_status), array('publish'))) { |
|
111 | + $row_actions['deactivate'] = '<a href="' . esc_url(wp_nonce_url(add_query_arg(array('wpi_action' => 'deactivate_discount', 'discount' => $discount->ID)), 'wpinv_discount_nonce')) . '">' . __('Deactivate', 'invoicing') . '</a>'; |
|
112 | + } elseif (in_array(strtolower($discount->post_status), array('pending', 'draft'))) { |
|
113 | + $row_actions['activate'] = '<a href="' . esc_url(wp_nonce_url(add_query_arg(array('wpi_action' => 'activate_discount', 'discount' => $discount->ID)), 'wpinv_discount_nonce')) . '">' . __('Activate', 'invoicing') . '</a>'; |
|
114 | 114 | } |
115 | 115 | |
116 | - if ( wpinv_get_discount_uses( $discount->ID ) > 0 ) { |
|
117 | - if ( isset( $row_actions['delete'] ) ) { |
|
118 | - unset( $row_actions['delete'] ); // Don't delete used discounts. |
|
116 | + if (wpinv_get_discount_uses($discount->ID) > 0) { |
|
117 | + if (isset($row_actions['delete'])) { |
|
118 | + unset($row_actions['delete']); // Don't delete used discounts. |
|
119 | 119 | } |
120 | 120 | } else { |
121 | - $row_actions['delete'] = '<a href="' . esc_url( wp_nonce_url( add_query_arg( array( 'wpi_action' => 'delete_discount', 'discount' => $discount->ID ) ), 'wpinv_discount_nonce' ) ) . '">' . __( 'Delete', 'invoicing' ) . '</a>'; |
|
121 | + $row_actions['delete'] = '<a href="' . esc_url(wp_nonce_url(add_query_arg(array('wpi_action' => 'delete_discount', 'discount' => $discount->ID)), 'wpinv_discount_nonce')) . '">' . __('Delete', 'invoicing') . '</a>'; |
|
122 | 122 | } |
123 | 123 | |
124 | 124 | |
125 | - $row_actions = apply_filters( 'wpinv_discount_row_actions', $row_actions, $discount ); |
|
125 | + $row_actions = apply_filters('wpinv_discount_row_actions', $row_actions, $discount); |
|
126 | 126 | |
127 | 127 | return $row_actions; |
128 | 128 | } |
129 | 129 | |
130 | -add_filter( 'list_table_primary_column', 'wpinv_table_primary_column', 10, 2 ); |
|
131 | -function wpinv_table_primary_column( $default, $screen_id ) { |
|
132 | - if ( 'edit-wpi_invoice' === $screen_id ) { |
|
130 | +add_filter('list_table_primary_column', 'wpinv_table_primary_column', 10, 2); |
|
131 | +function wpinv_table_primary_column($default, $screen_id) { |
|
132 | + if ('edit-wpi_invoice' === $screen_id) { |
|
133 | 133 | return 'name'; |
134 | 134 | } |
135 | 135 | |
136 | 136 | return $default; |
137 | 137 | } |
138 | 138 | |
139 | -function wpinv_discount_bulk_actions( $actions, $display = false ) { |
|
140 | - if ( !$display ) { |
|
139 | +function wpinv_discount_bulk_actions($actions, $display = false) { |
|
140 | + if (!$display) { |
|
141 | 141 | return array(); |
142 | 142 | } |
143 | 143 | |
144 | 144 | $actions = array( |
145 | - 'activate' => __( 'Activate', 'invoicing' ), |
|
146 | - 'deactivate' => __( 'Deactivate', 'invoicing' ), |
|
147 | - 'delete' => __( 'Delete', 'invoicing' ), |
|
145 | + 'activate' => __('Activate', 'invoicing'), |
|
146 | + 'deactivate' => __('Deactivate', 'invoicing'), |
|
147 | + 'delete' => __('Delete', 'invoicing'), |
|
148 | 148 | ); |
149 | 149 | $two = ''; |
150 | 150 | $which = 'top'; |
151 | 151 | echo '</div><div class="alignleft actions bulkactions">'; |
152 | - echo '<label for="bulk-action-selector-' . esc_attr( $which ) . '" class="screen-reader-text">' . __( 'Select bulk action' ) . '</label>'; |
|
153 | - echo '<select name="action' . $two . '" id="bulk-action-selector-' . esc_attr( $which ) . "\">"; |
|
154 | - echo '<option value="-1">' . __( 'Bulk Actions' ) . "</option>"; |
|
152 | + echo '<label for="bulk-action-selector-' . esc_attr($which) . '" class="screen-reader-text">' . __('Select bulk action') . '</label>'; |
|
153 | + echo '<select name="action' . $two . '" id="bulk-action-selector-' . esc_attr($which) . "\">"; |
|
154 | + echo '<option value="-1">' . __('Bulk Actions') . "</option>"; |
|
155 | 155 | |
156 | - foreach ( $actions as $name => $title ) { |
|
156 | + foreach ($actions as $name => $title) { |
|
157 | 157 | $class = 'edit' === $name ? ' class="hide-if-no-js"' : ''; |
158 | 158 | |
159 | 159 | echo "" . '<option value="' . $name . '"' . $class . '>' . $title . "</option>"; |
160 | 160 | } |
161 | 161 | echo "</select>"; |
162 | 162 | |
163 | - submit_button( __( 'Apply' ), 'action', '', false, array( 'id' => "doaction$two" ) ); |
|
163 | + submit_button(__('Apply'), 'action', '', false, array('id' => "doaction$two")); |
|
164 | 164 | |
165 | 165 | echo '</div><div class="alignleft actions">'; |
166 | 166 | } |
167 | -add_filter( 'bulk_actions-edit-wpi_discount', 'wpinv_discount_bulk_actions', 10 ); |
|
167 | +add_filter('bulk_actions-edit-wpi_discount', 'wpinv_discount_bulk_actions', 10); |
|
168 | 168 | |
169 | -function wpinv_disable_months_dropdown( $disable, $post_type ) { |
|
170 | - if ( $post_type == 'wpi_discount' ) { |
|
169 | +function wpinv_disable_months_dropdown($disable, $post_type) { |
|
170 | + if ($post_type == 'wpi_discount') { |
|
171 | 171 | $disable = true; |
172 | 172 | } |
173 | 173 | |
174 | 174 | return $disable; |
175 | 175 | } |
176 | -add_filter( 'disable_months_dropdown', 'wpinv_disable_months_dropdown', 10, 2 ); |
|
176 | +add_filter('disable_months_dropdown', 'wpinv_disable_months_dropdown', 10, 2); |
|
177 | 177 | |
178 | 178 | function wpinv_restrict_manage_posts() { |
179 | 179 | global $typenow; |
180 | 180 | |
181 | - if( 'wpi_discount' == $typenow ) { |
|
181 | + if ('wpi_discount' == $typenow) { |
|
182 | 182 | wpinv_discount_filters(); |
183 | 183 | } |
184 | 184 | } |
185 | -add_action( 'restrict_manage_posts', 'wpinv_restrict_manage_posts', 10 ); |
|
185 | +add_action('restrict_manage_posts', 'wpinv_restrict_manage_posts', 10); |
|
186 | 186 | |
187 | 187 | function wpinv_discount_filters() { |
188 | - echo wpinv_discount_bulk_actions( array(), true ); |
|
188 | + echo wpinv_discount_bulk_actions(array(), true); |
|
189 | 189 | |
190 | 190 | ?> |
191 | 191 | <select name="discount_type" id="dropdown_wpinv_discount_type"> |
192 | - <option value=""><?php _e( 'Show all types', 'invoicing' ); ?></option> |
|
192 | + <option value=""><?php _e('Show all types', 'invoicing'); ?></option> |
|
193 | 193 | <?php |
194 | 194 | $types = wpinv_get_discount_types(); |
195 | 195 | |
196 | - foreach ( $types as $name => $type ) { |
|
197 | - echo '<option value="' . esc_attr( $name ) . '"'; |
|
196 | + foreach ($types as $name => $type) { |
|
197 | + echo '<option value="' . esc_attr($name) . '"'; |
|
198 | 198 | |
199 | - if ( isset( $_GET['discount_type'] ) ) |
|
200 | - selected( $name, $_GET['discount_type'] ); |
|
199 | + if (isset($_GET['discount_type'])) |
|
200 | + selected($name, $_GET['discount_type']); |
|
201 | 201 | |
202 | - echo '>' . esc_html__( $type, 'invoicing' ) . '</option>'; |
|
202 | + echo '>' . esc_html__($type, 'invoicing') . '</option>'; |
|
203 | 203 | } |
204 | 204 | ?> |
205 | 205 | </select> |
206 | 206 | <?php |
207 | 207 | } |
208 | 208 | |
209 | -function wpinv_request( $vars ) { |
|
209 | +function wpinv_request($vars) { |
|
210 | 210 | global $typenow, $wp_query, $wp_post_statuses; |
211 | 211 | |
212 | - if ( 'wpi_invoice' === $typenow or 'wpi_quote' === $typenow ) { |
|
213 | - if ( !isset( $vars['post_status'] ) ) { |
|
212 | + if ('wpi_invoice' === $typenow or 'wpi_quote' === $typenow) { |
|
213 | + if (!isset($vars['post_status'])) { |
|
214 | 214 | $post_statuses = wpinv_get_invoice_statuses(); |
215 | 215 | |
216 | - foreach ( $post_statuses as $status => $value ) { |
|
217 | - if ( isset( $wp_post_statuses[ $status ] ) && false === $wp_post_statuses[ $status ]->show_in_admin_all_list ) { |
|
218 | - unset( $post_statuses[ $status ] ); |
|
216 | + foreach ($post_statuses as $status => $value) { |
|
217 | + if (isset($wp_post_statuses[$status]) && false === $wp_post_statuses[$status]->show_in_admin_all_list) { |
|
218 | + unset($post_statuses[$status]); |
|
219 | 219 | } |
220 | 220 | } |
221 | 221 | |
222 | - $vars['post_status'] = array_keys( $post_statuses ); |
|
222 | + $vars['post_status'] = array_keys($post_statuses); |
|
223 | 223 | } |
224 | 224 | |
225 | - if ( isset( $vars['orderby'] ) ) { |
|
226 | - if ( 'amount' == $vars['orderby'] ) { |
|
225 | + if (isset($vars['orderby'])) { |
|
226 | + if ('amount' == $vars['orderby']) { |
|
227 | 227 | $vars = array_merge( |
228 | 228 | $vars, |
229 | 229 | array( |
@@ -231,7 +231,7 @@ discard block |
||
231 | 231 | 'orderby' => 'meta_value_num' |
232 | 232 | ) |
233 | 233 | ); |
234 | - } else if ( 'customer' == $vars['orderby'] ) { |
|
234 | + } else if ('customer' == $vars['orderby']) { |
|
235 | 235 | $vars = array_merge( |
236 | 236 | $vars, |
237 | 237 | array( |
@@ -241,9 +241,9 @@ discard block |
||
241 | 241 | ); |
242 | 242 | } |
243 | 243 | } |
244 | - } else if ( 'wpi_item' == $typenow ) { |
|
244 | + } else if ('wpi_item' == $typenow) { |
|
245 | 245 | // Check if 'orderby' is set to "price" |
246 | - if ( isset( $vars['orderby'] ) && 'price' == $vars['orderby'] ) { |
|
246 | + if (isset($vars['orderby']) && 'price' == $vars['orderby']) { |
|
247 | 247 | $vars = array_merge( |
248 | 248 | $vars, |
249 | 249 | array( |
@@ -254,7 +254,7 @@ discard block |
||
254 | 254 | } |
255 | 255 | |
256 | 256 | // Check if "orderby" is set to "vat_rule" |
257 | - if ( isset( $vars['orderby'] ) && 'vat_rule' == $vars['orderby'] ) { |
|
257 | + if (isset($vars['orderby']) && 'vat_rule' == $vars['orderby']) { |
|
258 | 258 | $vars = array_merge( |
259 | 259 | $vars, |
260 | 260 | array( |
@@ -265,7 +265,7 @@ discard block |
||
265 | 265 | } |
266 | 266 | |
267 | 267 | // Check if "orderby" is set to "vat_class" |
268 | - if ( isset( $vars['orderby'] ) && 'vat_class' == $vars['orderby'] ) { |
|
268 | + if (isset($vars['orderby']) && 'vat_class' == $vars['orderby']) { |
|
269 | 269 | $vars = array_merge( |
270 | 270 | $vars, |
271 | 271 | array( |
@@ -276,7 +276,7 @@ discard block |
||
276 | 276 | } |
277 | 277 | |
278 | 278 | // Check if "orderby" is set to "type" |
279 | - if ( isset( $vars['orderby'] ) && 'type' == $vars['orderby'] ) { |
|
279 | + if (isset($vars['orderby']) && 'type' == $vars['orderby']) { |
|
280 | 280 | $vars = array_merge( |
281 | 281 | $vars, |
282 | 282 | array( |
@@ -287,7 +287,7 @@ discard block |
||
287 | 287 | } |
288 | 288 | |
289 | 289 | // Check if "orderby" is set to "recurring" |
290 | - if ( isset( $vars['orderby'] ) && 'recurring' == $vars['orderby'] ) { |
|
290 | + if (isset($vars['orderby']) && 'recurring' == $vars['orderby']) { |
|
291 | 291 | $vars = array_merge( |
292 | 292 | $vars, |
293 | 293 | array( |
@@ -297,120 +297,120 @@ discard block |
||
297 | 297 | ); |
298 | 298 | } |
299 | 299 | |
300 | - $meta_query = !empty( $vars['meta_query'] ) ? $vars['meta_query'] : array(); |
|
300 | + $meta_query = !empty($vars['meta_query']) ? $vars['meta_query'] : array(); |
|
301 | 301 | // Filter vat rule type |
302 | - if ( isset( $_GET['vat_rule'] ) && $_GET['vat_rule'] !== '' ) { |
|
302 | + if (isset($_GET['vat_rule']) && $_GET['vat_rule'] !== '') { |
|
303 | 303 | $meta_query[] = array( |
304 | 304 | 'key' => '_wpinv_vat_rule', |
305 | - 'value' => sanitize_text_field( $_GET['vat_rule'] ), |
|
305 | + 'value' => sanitize_text_field($_GET['vat_rule']), |
|
306 | 306 | 'compare' => '=' |
307 | 307 | ); |
308 | 308 | } |
309 | 309 | |
310 | 310 | // Filter vat class |
311 | - if ( isset( $_GET['vat_class'] ) && $_GET['vat_class'] !== '' ) { |
|
311 | + if (isset($_GET['vat_class']) && $_GET['vat_class'] !== '') { |
|
312 | 312 | $meta_query[] = array( |
313 | 313 | 'key' => '_wpinv_vat_class', |
314 | - 'value' => sanitize_text_field( $_GET['vat_class'] ), |
|
314 | + 'value' => sanitize_text_field($_GET['vat_class']), |
|
315 | 315 | 'compare' => '=' |
316 | 316 | ); |
317 | 317 | } |
318 | 318 | |
319 | 319 | // Filter item type |
320 | - if ( isset( $_GET['type'] ) && $_GET['type'] !== '' ) { |
|
320 | + if (isset($_GET['type']) && $_GET['type'] !== '') { |
|
321 | 321 | $meta_query[] = array( |
322 | 322 | 'key' => '_wpinv_type', |
323 | - 'value' => sanitize_text_field( $_GET['type'] ), |
|
323 | + 'value' => sanitize_text_field($_GET['type']), |
|
324 | 324 | 'compare' => '=' |
325 | 325 | ); |
326 | 326 | } |
327 | 327 | |
328 | - if ( !empty( $meta_query ) ) { |
|
328 | + if (!empty($meta_query)) { |
|
329 | 329 | $vars['meta_query'] = $meta_query; |
330 | 330 | } |
331 | - } else if ( 'wpi_discount' == $typenow ) { |
|
332 | - $meta_query = !empty( $vars['meta_query'] ) ? $vars['meta_query'] : array(); |
|
331 | + } else if ('wpi_discount' == $typenow) { |
|
332 | + $meta_query = !empty($vars['meta_query']) ? $vars['meta_query'] : array(); |
|
333 | 333 | // Filter vat rule type |
334 | - if ( isset( $_GET['discount_type'] ) && $_GET['discount_type'] !== '' ) { |
|
334 | + if (isset($_GET['discount_type']) && $_GET['discount_type'] !== '') { |
|
335 | 335 | $meta_query[] = array( |
336 | 336 | 'key' => '_wpi_discount_type', |
337 | - 'value' => sanitize_text_field( $_GET['discount_type'] ), |
|
337 | + 'value' => sanitize_text_field($_GET['discount_type']), |
|
338 | 338 | 'compare' => '=' |
339 | 339 | ); |
340 | 340 | } |
341 | 341 | |
342 | - if ( !empty( $meta_query ) ) { |
|
342 | + if (!empty($meta_query)) { |
|
343 | 343 | $vars['meta_query'] = $meta_query; |
344 | 344 | } |
345 | 345 | } |
346 | 346 | |
347 | 347 | return $vars; |
348 | 348 | } |
349 | -add_filter( 'request', 'wpinv_request' ); |
|
349 | +add_filter('request', 'wpinv_request'); |
|
350 | 350 | |
351 | 351 | function wpinv_options_page() { |
352 | - $page = isset( $_GET['page'] ) ? strtolower( $_GET['page'] ) : false; |
|
352 | + $page = isset($_GET['page']) ? strtolower($_GET['page']) : false; |
|
353 | 353 | |
354 | - if ( $page !== 'wpinv-settings' ) { |
|
354 | + if ($page !== 'wpinv-settings') { |
|
355 | 355 | return; |
356 | 356 | } |
357 | 357 | |
358 | 358 | $settings_tabs = wpinv_get_settings_tabs(); |
359 | 359 | $settings_tabs = empty($settings_tabs) ? array() : $settings_tabs; |
360 | - $active_tab = isset( $_GET['tab'] ) && array_key_exists( $_GET['tab'], $settings_tabs ) ? sanitize_text_field( $_GET['tab'] ) : 'general'; |
|
361 | - $sections = wpinv_get_settings_tab_sections( $active_tab ); |
|
360 | + $active_tab = isset($_GET['tab']) && array_key_exists($_GET['tab'], $settings_tabs) ? sanitize_text_field($_GET['tab']) : 'general'; |
|
361 | + $sections = wpinv_get_settings_tab_sections($active_tab); |
|
362 | 362 | $key = 'main'; |
363 | 363 | |
364 | - if ( is_array( $sections ) ) { |
|
365 | - $key = key( $sections ); |
|
364 | + if (is_array($sections)) { |
|
365 | + $key = key($sections); |
|
366 | 366 | } |
367 | 367 | |
368 | - $registered_sections = wpinv_get_settings_tab_sections( $active_tab ); |
|
369 | - $section = isset( $_GET['section'] ) && ! empty( $registered_sections ) && array_key_exists( $_GET['section'], $registered_sections ) ? $_GET['section'] : $key; |
|
368 | + $registered_sections = wpinv_get_settings_tab_sections($active_tab); |
|
369 | + $section = isset($_GET['section']) && !empty($registered_sections) && array_key_exists($_GET['section'], $registered_sections) ? $_GET['section'] : $key; |
|
370 | 370 | ob_start(); |
371 | 371 | ?> |
372 | 372 | <div class="wrap"> |
373 | 373 | <h1 class="nav-tab-wrapper"> |
374 | 374 | <?php |
375 | - foreach( wpinv_get_settings_tabs() as $tab_id => $tab_name ) { |
|
376 | - $tab_url = add_query_arg( array( |
|
375 | + foreach (wpinv_get_settings_tabs() as $tab_id => $tab_name) { |
|
376 | + $tab_url = add_query_arg(array( |
|
377 | 377 | 'settings-updated' => false, |
378 | 378 | 'tab' => $tab_id, |
379 | - ) ); |
|
379 | + )); |
|
380 | 380 | |
381 | 381 | // Remove the section from the tabs so we always end up at the main section |
382 | - $tab_url = remove_query_arg( 'section', $tab_url ); |
|
383 | - $tab_url = remove_query_arg( 'wpi_sub', $tab_url ); |
|
382 | + $tab_url = remove_query_arg('section', $tab_url); |
|
383 | + $tab_url = remove_query_arg('wpi_sub', $tab_url); |
|
384 | 384 | |
385 | 385 | $active = $active_tab == $tab_id ? ' nav-tab-active' : ''; |
386 | 386 | |
387 | - echo '<a href="' . esc_url( $tab_url ) . '" title="' . esc_attr( $tab_name ) . '" class="nav-tab' . $active . '">'; |
|
388 | - echo esc_html( $tab_name ); |
|
387 | + echo '<a href="' . esc_url($tab_url) . '" title="' . esc_attr($tab_name) . '" class="nav-tab' . $active . '">'; |
|
388 | + echo esc_html($tab_name); |
|
389 | 389 | echo '</a>'; |
390 | 390 | } |
391 | 391 | ?> |
392 | 392 | </h1> |
393 | 393 | <?php |
394 | - $number_of_sections = count( $sections ); |
|
394 | + $number_of_sections = count($sections); |
|
395 | 395 | $number = 0; |
396 | - if ( $number_of_sections > 1 ) { |
|
396 | + if ($number_of_sections > 1) { |
|
397 | 397 | echo '<div><ul class="subsubsub">'; |
398 | - foreach( $sections as $section_id => $section_name ) { |
|
398 | + foreach ($sections as $section_id => $section_name) { |
|
399 | 399 | echo '<li>'; |
400 | 400 | $number++; |
401 | - $tab_url = add_query_arg( array( |
|
401 | + $tab_url = add_query_arg(array( |
|
402 | 402 | 'settings-updated' => false, |
403 | 403 | 'tab' => $active_tab, |
404 | 404 | 'section' => $section_id |
405 | - ) ); |
|
406 | - $tab_url = remove_query_arg( 'wpi_sub', $tab_url ); |
|
405 | + )); |
|
406 | + $tab_url = remove_query_arg('wpi_sub', $tab_url); |
|
407 | 407 | $class = ''; |
408 | - if ( $section == $section_id ) { |
|
408 | + if ($section == $section_id) { |
|
409 | 409 | $class = 'current'; |
410 | 410 | } |
411 | - echo '<a class="' . $class . '" href="' . esc_url( $tab_url ) . '">' . $section_name . '</a>'; |
|
411 | + echo '<a class="' . $class . '" href="' . esc_url($tab_url) . '">' . $section_name . '</a>'; |
|
412 | 412 | |
413 | - if ( $number != $number_of_sections ) { |
|
413 | + if ($number != $number_of_sections) { |
|
414 | 414 | echo ' | '; |
415 | 415 | } |
416 | 416 | echo '</li>'; |
@@ -422,19 +422,19 @@ discard block |
||
422 | 422 | <form method="post" action="options.php"> |
423 | 423 | <table class="form-table"> |
424 | 424 | <?php |
425 | - settings_fields( 'wpinv_settings' ); |
|
425 | + settings_fields('wpinv_settings'); |
|
426 | 426 | |
427 | - if ( 'main' === $section ) { |
|
428 | - do_action( 'wpinv_settings_tab_top', $active_tab ); |
|
427 | + if ('main' === $section) { |
|
428 | + do_action('wpinv_settings_tab_top', $active_tab); |
|
429 | 429 | } |
430 | 430 | |
431 | - do_action( 'wpinv_settings_tab_top_' . $active_tab . '_' . $section ); |
|
432 | - do_settings_sections( 'wpinv_settings_' . $active_tab . '_' . $section ); |
|
433 | - do_action( 'wpinv_settings_tab_bottom_' . $active_tab . '_' . $section ); |
|
431 | + do_action('wpinv_settings_tab_top_' . $active_tab . '_' . $section); |
|
432 | + do_settings_sections('wpinv_settings_' . $active_tab . '_' . $section); |
|
433 | + do_action('wpinv_settings_tab_bottom_' . $active_tab . '_' . $section); |
|
434 | 434 | |
435 | 435 | // For backwards compatibility |
436 | - if ( 'main' === $section ) { |
|
437 | - do_action( 'wpinv_settings_tab_bottom', $active_tab ); |
|
436 | + if ('main' === $section) { |
|
437 | + do_action('wpinv_settings_tab_bottom', $active_tab); |
|
438 | 438 | } |
439 | 439 | ?> |
440 | 440 | </table> |
@@ -447,12 +447,12 @@ discard block |
||
447 | 447 | echo $content; |
448 | 448 | } |
449 | 449 | |
450 | -function wpinv_item_type_class( $classes, $class, $post_id ) { |
|
450 | +function wpinv_item_type_class($classes, $class, $post_id) { |
|
451 | 451 | global $pagenow, $typenow; |
452 | 452 | |
453 | - if ( $pagenow == 'edit.php' && $typenow == 'wpi_item' && get_post_type( $post_id ) == $typenow && $type = get_post_meta( $post_id, '_wpinv_type', true ) ) { |
|
454 | - $classes[] = 'wpi-type-' . sanitize_html_class( $type ); |
|
453 | + if ($pagenow == 'edit.php' && $typenow == 'wpi_item' && get_post_type($post_id) == $typenow && $type = get_post_meta($post_id, '_wpinv_type', true)) { |
|
454 | + $classes[] = 'wpi-type-' . sanitize_html_class($type); |
|
455 | 455 | } |
456 | 456 | return $classes; |
457 | 457 | } |
458 | -add_filter( 'post_class', 'wpinv_item_type_class', 10, 3 ); |
|
459 | 458 | \ No newline at end of file |
459 | +add_filter('post_class', 'wpinv_item_type_class', 10, 3); |
|
460 | 460 | \ No newline at end of file |
@@ -7,228 +7,228 @@ 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 | - 'ID' => __( 'ID', 'invoicing' ), |
|
18 | - 'details' => __( 'Details', 'invoicing' ), |
|
17 | + 'ID' => __('ID', 'invoicing'), |
|
18 | + 'details' => __('Details', 'invoicing'), |
|
19 | 19 | //'email' => __( 'Email', 'invoicing' ), |
20 | - 'customer' => __( 'Customer', 'invoicing' ), |
|
21 | - 'amount' => __( 'Amount', 'invoicing' ), |
|
22 | - 'invoice_date' => __( 'Date', 'invoicing' ), |
|
23 | - 'status' => __( 'Status', 'invoicing' ), |
|
24 | - 'wpi_actions' => __( 'Actions', 'invoicing' ), |
|
20 | + 'customer' => __('Customer', 'invoicing'), |
|
21 | + 'amount' => __('Amount', 'invoicing'), |
|
22 | + 'invoice_date' => __('Date', 'invoicing'), |
|
23 | + 'status' => __('Status', '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' ); |
|
38 | +add_filter('bulk_actions-edit-wpi_invoice', 'wpinv_bulk_actions'); |
|
39 | 39 | |
40 | -function wpinv_sortable_columns( $columns ) { |
|
40 | +function wpinv_sortable_columns($columns) { |
|
41 | 41 | $columns = array( |
42 | - 'ID' => array( 'ID', true ), |
|
43 | - 'amount' => array( 'amount', false ), |
|
44 | - 'invoice_date' => array( 'date', false ), |
|
45 | - 'customer' => array( 'customer', false ), |
|
42 | + 'ID' => array('ID', true), |
|
43 | + 'amount' => array('amount', false), |
|
44 | + 'invoice_date' => array('date', false), |
|
45 | + 'customer' => array('customer', false), |
|
46 | 46 | ///'email' => array( 'email', false ), |
47 | - 'status' => array( 'status', false ), |
|
47 | + 'status' => array('status', false), |
|
48 | 48 | ); |
49 | 49 | |
50 | - return apply_filters( 'wpi_invoice_table_sortable_columns', $columns ); |
|
50 | + return apply_filters('wpi_invoice_table_sortable_columns', $columns); |
|
51 | 51 | } |
52 | -add_filter( 'manage_edit-wpi_invoice_sortable_columns', 'wpinv_sortable_columns' ); |
|
52 | +add_filter('manage_edit-wpi_invoice_sortable_columns', 'wpinv_sortable_columns'); |
|
53 | 53 | |
54 | -add_action( 'manage_wpi_invoice_posts_custom_column', 'wpinv_posts_custom_column'); |
|
55 | -function wpinv_posts_custom_column( $column_name, $post_id = 0 ) { |
|
54 | +add_action('manage_wpi_invoice_posts_custom_column', 'wpinv_posts_custom_column'); |
|
55 | +function wpinv_posts_custom_column($column_name, $post_id = 0) { |
|
56 | 56 | global $post, $wpi_invoice; |
57 | 57 | |
58 | - if ( empty( $wpi_invoice ) || ( !empty( $wpi_invoice ) && $post->ID != $wpi_invoice->ID ) ) { |
|
59 | - $wpi_invoice = new WPInv_Invoice( $post->ID ); |
|
58 | + if (empty($wpi_invoice) || (!empty($wpi_invoice) && $post->ID != $wpi_invoice->ID)) { |
|
59 | + $wpi_invoice = new WPInv_Invoice($post->ID); |
|
60 | 60 | } |
61 | 61 | |
62 | 62 | $value = NULL; |
63 | 63 | |
64 | - switch ( $column_name ) { |
|
64 | + switch ($column_name) { |
|
65 | 65 | case 'email' : |
66 | - $value = $wpi_invoice->get_email(); |
|
66 | + $value = $wpi_invoice->get_email(); |
|
67 | 67 | break; |
68 | 68 | case 'customer' : |
69 | 69 | $customer_name = $wpi_invoice->get_user_full_name(); |
70 | - $customer_name = $customer_name != '' ? $customer_name : __( 'Customer', 'invoicing' ); |
|
71 | - $value = '<a href="' . esc_url( get_edit_user_link( $wpi_invoice->get_user_id() ) ) . '">' . $customer_name . '</a>'; |
|
72 | - if ( $email = $wpi_invoice->get_email() ) { |
|
70 | + $customer_name = $customer_name != '' ? $customer_name : __('Customer', 'invoicing'); |
|
71 | + $value = '<a href="' . esc_url(get_edit_user_link($wpi_invoice->get_user_id())) . '">' . $customer_name . '</a>'; |
|
72 | + if ($email = $wpi_invoice->get_email()) { |
|
73 | 73 | $value .= '<br><a class="email" href="mailto:' . $email . '">' . $email . '</a>'; |
74 | 74 | } |
75 | 75 | break; |
76 | 76 | case 'amount' : |
77 | - echo $wpi_invoice->get_total( true ); |
|
77 | + echo $wpi_invoice->get_total(true); |
|
78 | 78 | break; |
79 | 79 | case 'invoice_date' : |
80 | - $date_format = get_option( 'date_format' ); |
|
81 | - $time_format = get_option( 'time_format' ); |
|
82 | - $date_time_format = $date_format . ' '. $time_format; |
|
80 | + $date_format = get_option('date_format'); |
|
81 | + $time_format = get_option('time_format'); |
|
82 | + $date_time_format = $date_format . ' ' . $time_format; |
|
83 | 83 | |
84 | - $t_time = get_the_time( $date_time_format ); |
|
84 | + $t_time = get_the_time($date_time_format); |
|
85 | 85 | $m_time = $post->post_date; |
86 | - $h_time = mysql2date( $date_format, $m_time ); |
|
86 | + $h_time = mysql2date($date_format, $m_time); |
|
87 | 87 | |
88 | 88 | $value = '<abbr title="' . $t_time . '">' . $h_time . '</abbr>'; |
89 | 89 | break; |
90 | 90 | case 'status' : |
91 | - $value = $wpi_invoice->get_status( true ) . ( $wpi_invoice->is_recurring() && $wpi_invoice->is_parent() ? ' <span class="wpi-suffix">' . __( '(r)', 'invoicing' ) . '</span>' : '' ); |
|
91 | + $value = $wpi_invoice->get_status(true) . ($wpi_invoice->is_recurring() && $wpi_invoice->is_parent() ? ' <span class="wpi-suffix">' . __('(r)', 'invoicing') . '</span>' : ''); |
|
92 | 92 | break; |
93 | 93 | case 'details' : |
94 | - $edit_link = get_edit_post_link( $post->ID ); |
|
95 | - $value = '<a href="' . esc_url( $edit_link ) . '">' . __( 'View Invoice Details', 'invoicing' ) . '</a>'; |
|
94 | + $edit_link = get_edit_post_link($post->ID); |
|
95 | + $value = '<a href="' . esc_url($edit_link) . '">' . __('View Invoice Details', 'invoicing') . '</a>'; |
|
96 | 96 | break; |
97 | 97 | case 'wpi_actions' : |
98 | 98 | $value = ''; |
99 | - if ( !empty( $post->post_name ) ) { |
|
100 | - $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>'; |
|
99 | + if (!empty($post->post_name)) { |
|
100 | + $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>'; |
|
101 | 101 | } |
102 | 102 | |
103 | - if ( $email = $wpi_invoice->get_email() ) { |
|
104 | - $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>'; |
|
103 | + if ($email = $wpi_invoice->get_email()) { |
|
104 | + $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>'; |
|
105 | 105 | } |
106 | 106 | |
107 | 107 | break; |
108 | 108 | default: |
109 | - $value = isset( $post->$column_name ) ? $post->$column_name : ''; |
|
109 | + $value = isset($post->$column_name) ? $post->$column_name : ''; |
|
110 | 110 | break; |
111 | 111 | |
112 | 112 | } |
113 | - $value = apply_filters( 'wpinv_payments_table_column', $value, $post->ID, $column_name ); |
|
113 | + $value = apply_filters('wpinv_payments_table_column', $value, $post->ID, $column_name); |
|
114 | 114 | |
115 | - if ( $value !== NULL ) { |
|
115 | + if ($value !== NULL) { |
|
116 | 116 | echo $value; |
117 | 117 | } |
118 | 118 | } |
119 | 119 | |
120 | -function wpinv_admin_post_id( $id = 0 ) { |
|
120 | +function wpinv_admin_post_id($id = 0) { |
|
121 | 121 | global $post; |
122 | 122 | |
123 | - if ( isset( $id ) && ! empty( $id ) ) { |
|
123 | + if (isset($id) && !empty($id)) { |
|
124 | 124 | return (int)$id; |
125 | - } else if ( get_the_ID() ) { |
|
126 | - return (int) get_the_ID(); |
|
127 | - } else if ( isset( $post->ID ) && !empty( $post->ID ) ) { |
|
128 | - return (int) $post->ID; |
|
129 | - } else if ( isset( $_GET['post'] ) && !empty( $_GET['post'] ) ) { |
|
130 | - return (int) $_GET['post']; |
|
131 | - } else if ( isset( $_GET['id'] ) && !empty( $_GET['id'] ) ) { |
|
132 | - return (int) $_GET['id']; |
|
133 | - } else if ( isset( $_POST['id'] ) && !empty( $_POST['id'] ) ) { |
|
134 | - return (int) $_POST['id']; |
|
125 | + } else if (get_the_ID()) { |
|
126 | + return (int)get_the_ID(); |
|
127 | + } else if (isset($post->ID) && !empty($post->ID)) { |
|
128 | + return (int)$post->ID; |
|
129 | + } else if (isset($_GET['post']) && !empty($_GET['post'])) { |
|
130 | + return (int)$_GET['post']; |
|
131 | + } else if (isset($_GET['id']) && !empty($_GET['id'])) { |
|
132 | + return (int)$_GET['id']; |
|
133 | + } else if (isset($_POST['id']) && !empty($_POST['id'])) { |
|
134 | + return (int)$_POST['id']; |
|
135 | 135 | } |
136 | 136 | |
137 | 137 | return null; |
138 | 138 | } |
139 | 139 | |
140 | -function wpinv_admin_post_type( $id = 0 ) { |
|
141 | - if ( !$id ) { |
|
140 | +function wpinv_admin_post_type($id = 0) { |
|
141 | + if (!$id) { |
|
142 | 142 | $id = wpinv_admin_post_id(); |
143 | 143 | } |
144 | 144 | |
145 | - $type = get_post_type( $id ); |
|
145 | + $type = get_post_type($id); |
|
146 | 146 | |
147 | - if ( !$type ) { |
|
148 | - $type = isset( $_GET['post_type'] ) && !empty( $_GET['post_type'] ) ? $_GET['post_type'] : null; |
|
147 | + if (!$type) { |
|
148 | + $type = isset($_GET['post_type']) && !empty($_GET['post_type']) ? $_GET['post_type'] : null; |
|
149 | 149 | } |
150 | 150 | |
151 | - return apply_filters( 'wpinv_admin_post_type', $type, $id ); |
|
151 | + return apply_filters('wpinv_admin_post_type', $type, $id); |
|
152 | 152 | } |
153 | 153 | |
154 | 154 | function wpinv_admin_messages() { |
155 | 155 | global $wpinv_options; |
156 | 156 | |
157 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_added' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
158 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-added', __( 'Discount code added.', 'invoicing' ), 'updated' ); |
|
157 | + if (isset($_GET['wpinv-message']) && 'discount_added' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
158 | + add_settings_error('wpinv-notices', 'wpinv-discount-added', __('Discount code added.', 'invoicing'), 'updated'); |
|
159 | 159 | } |
160 | 160 | |
161 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_add_failed' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
162 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-add-fail', __( 'There was a problem adding your discount code, please try again.', 'invoicing' ), 'error' ); |
|
161 | + if (isset($_GET['wpinv-message']) && 'discount_add_failed' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
162 | + add_settings_error('wpinv-notices', 'wpinv-discount-add-fail', __('There was a problem adding your discount code, please try again.', 'invoicing'), 'error'); |
|
163 | 163 | } |
164 | 164 | |
165 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_exists' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
166 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-exists', __( 'A discount with that code already exists, please use a different code.', 'invoicing' ), 'error' ); |
|
165 | + if (isset($_GET['wpinv-message']) && 'discount_exists' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
166 | + add_settings_error('wpinv-notices', 'wpinv-discount-exists', __('A discount with that code already exists, please use a different code.', 'invoicing'), 'error'); |
|
167 | 167 | } |
168 | 168 | |
169 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_updated' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
170 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-updated', __( 'Discount code updated.', 'invoicing' ), 'updated' ); |
|
169 | + if (isset($_GET['wpinv-message']) && 'discount_updated' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
170 | + add_settings_error('wpinv-notices', 'wpinv-discount-updated', __('Discount code updated.', 'invoicing'), 'updated'); |
|
171 | 171 | } |
172 | 172 | |
173 | - if ( isset( $_GET['wpinv-message'] ) && 'discount_update_failed' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
174 | - add_settings_error( 'wpinv-notices', 'wpinv-discount-updated-fail', __( 'There was a problem updating your discount code, please try again.', 'invoicing' ), 'error' ); |
|
173 | + if (isset($_GET['wpinv-message']) && 'discount_update_failed' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
174 | + add_settings_error('wpinv-notices', 'wpinv-discount-updated-fail', __('There was a problem updating your discount code, please try again.', 'invoicing'), 'error'); |
|
175 | 175 | } |
176 | 176 | |
177 | - if ( isset( $_GET['wpinv-message'] ) && 'invoice_deleted' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
178 | - add_settings_error( 'wpinv-notices', 'wpinv-deleted', __( 'The invoice has been deleted.', 'invoicing' ), 'updated' ); |
|
177 | + if (isset($_GET['wpinv-message']) && 'invoice_deleted' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
178 | + add_settings_error('wpinv-notices', 'wpinv-deleted', __('The invoice has been deleted.', 'invoicing'), 'updated'); |
|
179 | 179 | } |
180 | 180 | |
181 | - if ( isset( $_GET['wpinv-message'] ) && 'email_sent' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
182 | - add_settings_error( 'wpinv-notices', 'wpinv-sent', __( 'The email has been sent to customer.', 'invoicing' ), 'updated' ); |
|
181 | + if (isset($_GET['wpinv-message']) && 'email_sent' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
182 | + add_settings_error('wpinv-notices', 'wpinv-sent', __('The email has been sent to customer.', 'invoicing'), 'updated'); |
|
183 | 183 | } |
184 | 184 | |
185 | - if ( isset( $_GET['wpinv-message'] ) && 'email_fail' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
186 | - add_settings_error( 'wpinv-notices', 'wpinv-sent-fail', __( 'Fail to send email to the customer.', 'invoicing' ), 'error' ); |
|
185 | + if (isset($_GET['wpinv-message']) && 'email_fail' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
186 | + add_settings_error('wpinv-notices', 'wpinv-sent-fail', __('Fail to send email to the customer.', 'invoicing'), 'error'); |
|
187 | 187 | } |
188 | 188 | |
189 | - if ( isset( $_GET['wpinv-message'] ) && 'invoice-note-deleted' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
190 | - add_settings_error( 'wpinv-notices', 'wpinv-note-deleted', __( 'The invoice note has been deleted.', 'invoicing' ), 'updated' ); |
|
189 | + if (isset($_GET['wpinv-message']) && 'invoice-note-deleted' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
190 | + add_settings_error('wpinv-notices', 'wpinv-note-deleted', __('The invoice note has been deleted.', 'invoicing'), 'updated'); |
|
191 | 191 | } |
192 | 192 | |
193 | - if ( isset( $_GET['wpinv-message'] ) && 'settings-imported' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
194 | - add_settings_error( 'wpinv-notices', 'wpinv-settings-imported', __( 'The settings have been imported.', 'invoicing' ), 'updated' ); |
|
193 | + if (isset($_GET['wpinv-message']) && 'settings-imported' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
194 | + add_settings_error('wpinv-notices', 'wpinv-settings-imported', __('The settings have been imported.', 'invoicing'), 'updated'); |
|
195 | 195 | } |
196 | 196 | |
197 | - if ( isset( $_GET['wpinv-message'] ) && 'note-added' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
198 | - add_settings_error( 'wpinv-notices', 'wpinv-note-added', __( 'The invoice note has been added successfully.', 'invoicing' ), 'updated' ); |
|
197 | + if (isset($_GET['wpinv-message']) && 'note-added' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
198 | + add_settings_error('wpinv-notices', 'wpinv-note-added', __('The invoice note has been added successfully.', 'invoicing'), 'updated'); |
|
199 | 199 | } |
200 | 200 | |
201 | - if ( isset( $_GET['wpinv-message'] ) && 'invoice-updated' == $_GET['wpinv-message'] && current_user_can( 'manage_options' ) ) { |
|
202 | - add_settings_error( 'wpinv-notices', 'wpinv-updated', __( 'The invoice has been successfully updated.', 'invoicing' ), 'updated' ); |
|
201 | + if (isset($_GET['wpinv-message']) && 'invoice-updated' == $_GET['wpinv-message'] && current_user_can('manage_options')) { |
|
202 | + add_settings_error('wpinv-notices', 'wpinv-updated', __('The invoice has been successfully updated.', 'invoicing'), 'updated'); |
|
203 | 203 | } |
204 | 204 | |
205 | - settings_errors( 'wpinv-notices' ); |
|
205 | + settings_errors('wpinv-notices'); |
|
206 | 206 | } |
207 | -add_action( 'admin_notices', 'wpinv_admin_messages' ); |
|
207 | +add_action('admin_notices', 'wpinv_admin_messages'); |
|
208 | 208 | |
209 | -function wpinv_items_columns( $existing_columns ) { |
|
209 | +function wpinv_items_columns($existing_columns) { |
|
210 | 210 | global $wpinv_euvat; |
211 | 211 | |
212 | 212 | $columns = array(); |
213 | 213 | $columns['cb'] = $existing_columns['cb']; |
214 | - $columns['title'] = __( 'Title', 'invoicing' ); |
|
215 | - $columns['price'] = __( 'Price', 'invoicing' ); |
|
216 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
217 | - $columns['vat_rule'] = __( 'VAT rule type', 'invoicing' ); |
|
214 | + $columns['title'] = __('Title', 'invoicing'); |
|
215 | + $columns['price'] = __('Price', 'invoicing'); |
|
216 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
217 | + $columns['vat_rule'] = __('VAT rule type', 'invoicing'); |
|
218 | 218 | } |
219 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
220 | - $columns['vat_class'] = __( 'VAT class', 'invoicing' ); |
|
219 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
220 | + $columns['vat_class'] = __('VAT class', 'invoicing'); |
|
221 | 221 | } |
222 | - $columns['type'] = __( 'Type', 'invoicing' ); |
|
223 | - $columns['recurring'] = __( 'Recurring', 'invoicing' ); |
|
224 | - $columns['date'] = __( 'Date', 'invoicing' ); |
|
225 | - $columns['id'] = __( 'ID', 'invoicing' ); |
|
222 | + $columns['type'] = __('Type', 'invoicing'); |
|
223 | + $columns['recurring'] = __('Recurring', 'invoicing'); |
|
224 | + $columns['date'] = __('Date', 'invoicing'); |
|
225 | + $columns['id'] = __('ID', 'invoicing'); |
|
226 | 226 | |
227 | - return apply_filters( 'wpinv_items_columns', $columns ); |
|
227 | + return apply_filters('wpinv_items_columns', $columns); |
|
228 | 228 | } |
229 | -add_filter( 'manage_wpi_item_posts_columns', 'wpinv_items_columns' ); |
|
229 | +add_filter('manage_wpi_item_posts_columns', 'wpinv_items_columns'); |
|
230 | 230 | |
231 | -function wpinv_items_sortable_columns( $columns ) { |
|
231 | +function wpinv_items_sortable_columns($columns) { |
|
232 | 232 | $columns['price'] = 'price'; |
233 | 233 | $columns['vat_rule'] = 'vat_rule'; |
234 | 234 | $columns['vat_class'] = 'vat_class'; |
@@ -238,10 +238,10 @@ discard block |
||
238 | 238 | |
239 | 239 | return $columns; |
240 | 240 | } |
241 | -add_filter( 'manage_edit-wpi_item_sortable_columns', 'wpinv_items_sortable_columns' ); |
|
241 | +add_filter('manage_edit-wpi_item_sortable_columns', 'wpinv_items_sortable_columns'); |
|
242 | 242 | |
243 | -function wpinv_item_quick_edit( $column_name, $post_type ) { |
|
244 | - if ( !( $post_type == 'wpi_item' && $column_name == 'price' ) ) { |
|
243 | +function wpinv_item_quick_edit($column_name, $post_type) { |
|
244 | + if (!($post_type == 'wpi_item' && $column_name == 'price')) { |
|
245 | 245 | return; |
246 | 246 | } |
247 | 247 | global $wpinv_euvat, $post; |
@@ -249,23 +249,23 @@ discard block |
||
249 | 249 | $symbol = wpinv_currency_symbol(); |
250 | 250 | $position = wpinv_currency_position(); |
251 | 251 | |
252 | - $price = wpinv_get_item_price( $post->ID ); |
|
253 | - $item_type = wpinv_get_item_type( $post->ID ); |
|
252 | + $price = wpinv_get_item_price($post->ID); |
|
253 | + $item_type = wpinv_get_item_type($post->ID); |
|
254 | 254 | ?> |
255 | 255 | <fieldset class="inline-edit-col-right wpi-inline-item-col"> |
256 | 256 | <div class="inline-edit-col"> |
257 | 257 | <div class="inline-edit-group wp-clearfix"> |
258 | 258 | <label class="inline-edit-wpinv-price"> |
259 | - <span class="title"><?php _e( 'Item price', 'invoicing' );?></span> |
|
260 | - <span class="input-text-wrap"><?php echo ( $position != 'right' ? $symbol . ' ' : '' );?><input type="text" placeholder="<?php echo wpinv_format_amount( 0 ); ?>" value="<?php echo wpinv_format_amount( $price );?>" name="_wpinv_item_price" class="wpi-field-price wpi-price" id="wpinv_item_price-<?php echo $post->ID;?>"><?php echo ( $position == 'right' ? $symbol . ' ' : '' );?></span> |
|
259 | + <span class="title"><?php _e('Item price', 'invoicing'); ?></span> |
|
260 | + <span class="input-text-wrap"><?php echo ($position != 'right' ? $symbol . ' ' : ''); ?><input type="text" placeholder="<?php echo wpinv_format_amount(0); ?>" value="<?php echo wpinv_format_amount($price); ?>" name="_wpinv_item_price" class="wpi-field-price wpi-price" id="wpinv_item_price-<?php echo $post->ID; ?>"><?php echo ($position == 'right' ? $symbol . ' ' : ''); ?></span> |
|
261 | 261 | </label> |
262 | 262 | </div> |
263 | - <?php if ( $wpinv_euvat->allow_vat_rules() ) { $rule_type = $wpinv_euvat->get_item_rule( $post->ID ); ?> |
|
263 | + <?php if ($wpinv_euvat->allow_vat_rules()) { $rule_type = $wpinv_euvat->get_item_rule($post->ID); ?> |
|
264 | 264 | <div class="inline-edit-group wp-clearfix"> |
265 | 265 | <label class="inline-edit-wpinv-vat-rate"> |
266 | - <span class="title"><?php _e( 'VAT rule type to use', 'invoicing' );?></span> |
|
266 | + <span class="title"><?php _e('VAT rule type to use', 'invoicing'); ?></span> |
|
267 | 267 | <span class="input-text-wrap"> |
268 | - <?php echo wpinv_html_select( array( |
|
268 | + <?php echo wpinv_html_select(array( |
|
269 | 269 | 'options' => $wpinv_euvat->get_rules(), |
270 | 270 | 'name' => '_wpinv_vat_rules', |
271 | 271 | 'id' => 'wpinv_vat_rules-' . $post->ID, |
@@ -273,16 +273,16 @@ discard block |
||
273 | 273 | 'show_option_all' => false, |
274 | 274 | 'show_option_none' => false, |
275 | 275 | 'class' => 'gdmbx2-text-medium wpinv-vat-rules', |
276 | - ) ); ?> |
|
276 | + )); ?> |
|
277 | 277 | </span> |
278 | 278 | </label> |
279 | 279 | </div> |
280 | - <?php } if ( $wpinv_euvat->allow_vat_classes() ) { $vat_class = $wpinv_euvat->get_item_class( $post->ID ); ?> |
|
280 | + <?php } if ($wpinv_euvat->allow_vat_classes()) { $vat_class = $wpinv_euvat->get_item_class($post->ID); ?> |
|
281 | 281 | <div class="inline-edit-group wp-clearfix"> |
282 | 282 | <label class="inline-edit-wpinv-vat-class"> |
283 | - <span class="title"><?php _e( 'VAT class to use', 'invoicing' );?></span> |
|
283 | + <span class="title"><?php _e('VAT class to use', 'invoicing'); ?></span> |
|
284 | 284 | <span class="input-text-wrap"> |
285 | - <?php echo wpinv_html_select( array( |
|
285 | + <?php echo wpinv_html_select(array( |
|
286 | 286 | 'options' => $wpinv_euvat->get_all_classes(), |
287 | 287 | 'name' => '_wpinv_vat_class', |
288 | 288 | 'id' => 'wpinv_vat_class-' . $post->ID, |
@@ -290,16 +290,16 @@ discard block |
||
290 | 290 | 'show_option_all' => false, |
291 | 291 | 'show_option_none' => false, |
292 | 292 | 'class' => 'gdmbx2-text-medium wpinv-vat-class', |
293 | - ) ); ?> |
|
293 | + )); ?> |
|
294 | 294 | </span> |
295 | 295 | </label> |
296 | 296 | </div> |
297 | 297 | <?php } ?> |
298 | 298 | <div class="inline-edit-group wp-clearfix"> |
299 | 299 | <label class="inline-edit-wpinv-type"> |
300 | - <span class="title"><?php _e( 'Item type', 'invoicing' );?></span> |
|
300 | + <span class="title"><?php _e('Item type', 'invoicing'); ?></span> |
|
301 | 301 | <span class="input-text-wrap"> |
302 | - <?php echo wpinv_html_select( array( |
|
302 | + <?php echo wpinv_html_select(array( |
|
303 | 303 | 'options' => wpinv_get_item_types(), |
304 | 304 | 'name' => '_wpinv_item_type', |
305 | 305 | 'id' => 'wpinv_item_type-' . $post->ID, |
@@ -307,7 +307,7 @@ discard block |
||
307 | 307 | 'show_option_all' => false, |
308 | 308 | 'show_option_none' => false, |
309 | 309 | 'class' => 'gdmbx2-text-medium wpinv-item-type', |
310 | - ) ); ?> |
|
310 | + )); ?> |
|
311 | 311 | </span> |
312 | 312 | </label> |
313 | 313 | </div> |
@@ -315,150 +315,150 @@ discard block |
||
315 | 315 | </fieldset> |
316 | 316 | <?php |
317 | 317 | } |
318 | -add_action( 'quick_edit_custom_box', 'wpinv_item_quick_edit', 10, 2 ); |
|
319 | -add_action( 'bulk_edit_custom_box', 'wpinv_item_quick_edit', 10, 2 ); |
|
318 | +add_action('quick_edit_custom_box', 'wpinv_item_quick_edit', 10, 2); |
|
319 | +add_action('bulk_edit_custom_box', 'wpinv_item_quick_edit', 10, 2); |
|
320 | 320 | |
321 | -function wpinv_items_table_custom_column( $column ) { |
|
321 | +function wpinv_items_table_custom_column($column) { |
|
322 | 322 | global $wpinv_euvat, $post, $wpi_item; |
323 | 323 | |
324 | - if ( empty( $wpi_item ) || ( !empty( $wpi_item ) && $post->ID != $wpi_item->ID ) ) { |
|
325 | - $wpi_item = new WPInv_Item( $post->ID ); |
|
324 | + if (empty($wpi_item) || (!empty($wpi_item) && $post->ID != $wpi_item->ID)) { |
|
325 | + $wpi_item = new WPInv_Item($post->ID); |
|
326 | 326 | } |
327 | 327 | |
328 | - switch ( $column ) { |
|
328 | + switch ($column) { |
|
329 | 329 | case 'price' : |
330 | - echo wpinv_item_price( $post->ID ); |
|
330 | + echo wpinv_item_price($post->ID); |
|
331 | 331 | break; |
332 | 332 | case 'vat_rule' : |
333 | - echo $wpinv_euvat->item_rule_label( $post->ID ); |
|
333 | + echo $wpinv_euvat->item_rule_label($post->ID); |
|
334 | 334 | break; |
335 | 335 | case 'vat_class' : |
336 | - echo $wpinv_euvat->item_class_label( $post->ID ); |
|
336 | + echo $wpinv_euvat->item_class_label($post->ID); |
|
337 | 337 | break; |
338 | 338 | case 'type' : |
339 | - echo wpinv_item_type( $post->ID ) . '<span class="meta">' . $wpi_item->get_cpt_singular_name() . '</span>'; |
|
339 | + echo wpinv_item_type($post->ID) . '<span class="meta">' . $wpi_item->get_cpt_singular_name() . '</span>'; |
|
340 | 340 | break; |
341 | 341 | case 'recurring' : |
342 | - 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>' ); |
|
342 | + 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>'); |
|
343 | 343 | break; |
344 | 344 | case 'id' : |
345 | 345 | echo $post->ID; |
346 | 346 | echo '<div class="hidden" id="wpinv_inline-' . $post->ID . '"> |
347 | - <div class="price">' . wpinv_get_item_price( $post->ID ) . '</div>'; |
|
348 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
349 | - echo '<div class="vat_rule">' . $wpinv_euvat->get_item_rule( $post->ID ) . '</div>'; |
|
347 | + <div class="price">' . wpinv_get_item_price($post->ID) . '</div>'; |
|
348 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
349 | + echo '<div class="vat_rule">' . $wpinv_euvat->get_item_rule($post->ID) . '</div>'; |
|
350 | 350 | } |
351 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
352 | - echo '<div class="vat_class">' . $wpinv_euvat->get_item_class( $post->ID ) . '</div>'; |
|
351 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
352 | + echo '<div class="vat_class">' . $wpinv_euvat->get_item_class($post->ID) . '</div>'; |
|
353 | 353 | } |
354 | - echo '<div class="type">' . wpinv_get_item_type( $post->ID ) . '</div> |
|
354 | + echo '<div class="type">' . wpinv_get_item_type($post->ID) . '</div> |
|
355 | 355 | </div>'; |
356 | 356 | break; |
357 | 357 | } |
358 | 358 | |
359 | - do_action( 'wpinv_items_table_column_item_' . $column, $wpi_item, $post ); |
|
359 | + do_action('wpinv_items_table_column_item_' . $column, $wpi_item, $post); |
|
360 | 360 | } |
361 | -add_action( 'manage_wpi_item_posts_custom_column', 'wpinv_items_table_custom_column' ); |
|
361 | +add_action('manage_wpi_item_posts_custom_column', 'wpinv_items_table_custom_column'); |
|
362 | 362 | |
363 | 363 | function wpinv_add_items_filters() { |
364 | 364 | global $wpinv_euvat, $typenow; |
365 | 365 | |
366 | 366 | // Checks if the current post type is 'item' |
367 | - if ( $typenow == 'wpi_item') { |
|
368 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
369 | - echo wpinv_html_select( array( |
|
370 | - 'options' => array_merge( array( '' => __( 'All VAT rules', 'invoicing' ) ), $wpinv_euvat->get_rules() ), |
|
367 | + if ($typenow == 'wpi_item') { |
|
368 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
369 | + echo wpinv_html_select(array( |
|
370 | + 'options' => array_merge(array('' => __('All VAT rules', 'invoicing')), $wpinv_euvat->get_rules()), |
|
371 | 371 | 'name' => 'vat_rule', |
372 | 372 | 'id' => 'vat_rule', |
373 | - 'selected' => ( isset( $_GET['vat_rule'] ) ? $_GET['vat_rule'] : '' ), |
|
373 | + 'selected' => (isset($_GET['vat_rule']) ? $_GET['vat_rule'] : ''), |
|
374 | 374 | 'show_option_all' => false, |
375 | 375 | 'show_option_none' => false, |
376 | 376 | 'class' => 'gdmbx2-text-medium', |
377 | - ) ); |
|
377 | + )); |
|
378 | 378 | } |
379 | 379 | |
380 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
381 | - echo wpinv_html_select( array( |
|
382 | - 'options' => array_merge( array( '' => __( 'All VAT classes', 'invoicing' ) ), $wpinv_euvat->get_all_classes() ), |
|
380 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
381 | + echo wpinv_html_select(array( |
|
382 | + 'options' => array_merge(array('' => __('All VAT classes', 'invoicing')), $wpinv_euvat->get_all_classes()), |
|
383 | 383 | 'name' => 'vat_class', |
384 | 384 | 'id' => 'vat_class', |
385 | - 'selected' => ( isset( $_GET['vat_class'] ) ? $_GET['vat_class'] : '' ), |
|
385 | + 'selected' => (isset($_GET['vat_class']) ? $_GET['vat_class'] : ''), |
|
386 | 386 | 'show_option_all' => false, |
387 | 387 | 'show_option_none' => false, |
388 | 388 | 'class' => 'gdmbx2-text-medium', |
389 | - ) ); |
|
389 | + )); |
|
390 | 390 | } |
391 | 391 | |
392 | - echo wpinv_html_select( array( |
|
393 | - 'options' => array_merge( array( '' => __( 'All item types', 'invoicing' ) ), wpinv_get_item_types() ), |
|
392 | + echo wpinv_html_select(array( |
|
393 | + 'options' => array_merge(array('' => __('All item types', 'invoicing')), wpinv_get_item_types()), |
|
394 | 394 | 'name' => 'type', |
395 | 395 | 'id' => 'type', |
396 | - 'selected' => ( isset( $_GET['type'] ) ? $_GET['type'] : '' ), |
|
396 | + 'selected' => (isset($_GET['type']) ? $_GET['type'] : ''), |
|
397 | 397 | 'show_option_all' => false, |
398 | 398 | 'show_option_none' => false, |
399 | 399 | 'class' => 'gdmbx2-text-medium', |
400 | - ) ); |
|
400 | + )); |
|
401 | 401 | |
402 | - if ( isset( $_REQUEST['all_posts'] ) && '1' === $_REQUEST['all_posts'] ) { |
|
402 | + if (isset($_REQUEST['all_posts']) && '1' === $_REQUEST['all_posts']) { |
|
403 | 403 | echo '<input type="hidden" name="all_posts" value="1" />'; |
404 | 404 | } |
405 | 405 | } |
406 | 406 | } |
407 | -add_action( 'restrict_manage_posts', 'wpinv_add_items_filters', 100 ); |
|
407 | +add_action('restrict_manage_posts', 'wpinv_add_items_filters', 100); |
|
408 | 408 | |
409 | -function wpinv_send_invoice_after_save( $post_id ) { |
|
409 | +function wpinv_send_invoice_after_save($post_id) { |
|
410 | 410 | // If this is just a revision, don't send the email. |
411 | - if ( wp_is_post_revision( $post_id ) ) { |
|
411 | + if (wp_is_post_revision($post_id)) { |
|
412 | 412 | return; |
413 | 413 | } |
414 | 414 | |
415 | - if ( !current_user_can( 'manage_options' ) || !(get_post_type( $post_id ) == 'wpi_invoice' || get_post_type( $post_id ) == 'wpi_quote') ) { |
|
415 | + if (!current_user_can('manage_options') || !(get_post_type($post_id) == 'wpi_invoice' || get_post_type($post_id) == 'wpi_quote')) { |
|
416 | 416 | return; |
417 | 417 | } |
418 | 418 | |
419 | - if ( !empty( $_POST['wpi_save_send'] ) ) { |
|
420 | - wpinv_user_invoice_notification( $post_id ); |
|
419 | + if (!empty($_POST['wpi_save_send'])) { |
|
420 | + wpinv_user_invoice_notification($post_id); |
|
421 | 421 | } |
422 | 422 | } |
423 | -add_action( 'save_post_wpi_invoice', 'wpinv_send_invoice_after_save', 100, 1 ); |
|
423 | +add_action('save_post_wpi_invoice', 'wpinv_send_invoice_after_save', 100, 1); |
|
424 | 424 | |
425 | -function wpinv_send_register_new_user( $data, $postarr ) { |
|
426 | - if ( current_user_can( 'manage_options' ) && !empty( $data['post_type'] ) && $data['post_type'] == 'wpi_invoice' ) { |
|
427 | - $is_new_user = !empty( $postarr['wpinv_new_user'] ) ? true : false; |
|
428 | - $email = !empty( $postarr['wpinv_email'] ) && $postarr['wpinv_email'] && is_email( $postarr['wpinv_email'] ) ? $postarr['wpinv_email'] : NULL; |
|
425 | +function wpinv_send_register_new_user($data, $postarr) { |
|
426 | + if (current_user_can('manage_options') && !empty($data['post_type']) && $data['post_type'] == 'wpi_invoice') { |
|
427 | + $is_new_user = !empty($postarr['wpinv_new_user']) ? true : false; |
|
428 | + $email = !empty($postarr['wpinv_email']) && $postarr['wpinv_email'] && is_email($postarr['wpinv_email']) ? $postarr['wpinv_email'] : NULL; |
|
429 | 429 | |
430 | - if ( $is_new_user && $email && !email_exists( $email ) ) { |
|
431 | - $first_name = !empty( $postarr['wpinv_first_name'] ) ? sanitize_text_field( $postarr['wpinv_first_name'] ) : ''; |
|
432 | - $last_name = !empty( $postarr['wpinv_last_name'] ) ? sanitize_text_field( $postarr['wpinv_last_name'] ) : ''; |
|
433 | - $display_name = $first_name || $last_name ? trim( $first_name . ' ' . $last_name ) : ''; |
|
434 | - $user_nicename = $display_name ? trim( $display_name ) : $email; |
|
435 | - $user_company = !empty( $postarr['wpinv_company'] ) ? sanitize_text_field( $postarr['wpinv_company'] ) : ''; |
|
430 | + if ($is_new_user && $email && !email_exists($email)) { |
|
431 | + $first_name = !empty($postarr['wpinv_first_name']) ? sanitize_text_field($postarr['wpinv_first_name']) : ''; |
|
432 | + $last_name = !empty($postarr['wpinv_last_name']) ? sanitize_text_field($postarr['wpinv_last_name']) : ''; |
|
433 | + $display_name = $first_name || $last_name ? trim($first_name . ' ' . $last_name) : ''; |
|
434 | + $user_nicename = $display_name ? trim($display_name) : $email; |
|
435 | + $user_company = !empty($postarr['wpinv_company']) ? sanitize_text_field($postarr['wpinv_company']) : ''; |
|
436 | 436 | |
437 | - $user_login = sanitize_user( str_replace( ' ', '', $display_name ), true ); |
|
438 | - if ( !( validate_username( $user_login ) && !username_exists( $user_login ) ) ) { |
|
439 | - $user_login = sanitize_user( str_replace( ' ', '', $user_company ), true ); |
|
437 | + $user_login = sanitize_user(str_replace(' ', '', $display_name), true); |
|
438 | + if (!(validate_username($user_login) && !username_exists($user_login))) { |
|
439 | + $user_login = sanitize_user(str_replace(' ', '', $user_company), true); |
|
440 | 440 | |
441 | - if ( !( validate_username( $user_login ) && !username_exists( $user_login ) ) ) { |
|
441 | + if (!(validate_username($user_login) && !username_exists($user_login))) { |
|
442 | 442 | $user_login = $email; |
443 | 443 | } |
444 | 444 | } |
445 | 445 | |
446 | 446 | $userdata = array( |
447 | 447 | 'user_login' => $user_login, |
448 | - 'user_pass' => wp_generate_password( 12, false ), |
|
449 | - 'user_email' => sanitize_text_field( $email ), |
|
448 | + 'user_pass' => wp_generate_password(12, false), |
|
449 | + 'user_email' => sanitize_text_field($email), |
|
450 | 450 | 'first_name' => $first_name, |
451 | 451 | 'last_name' => $last_name, |
452 | - 'user_nicename' => wpinv_utf8_substr( $user_nicename, 0, 50 ), |
|
452 | + 'user_nicename' => wpinv_utf8_substr($user_nicename, 0, 50), |
|
453 | 453 | 'nickname' => $display_name, |
454 | 454 | 'display_name' => $display_name, |
455 | 455 | ); |
456 | 456 | |
457 | - $userdata = apply_filters( 'wpinv_register_new_user_data', $userdata ); |
|
457 | + $userdata = apply_filters('wpinv_register_new_user_data', $userdata); |
|
458 | 458 | |
459 | - $new_user_id = wp_insert_user( $userdata ); |
|
459 | + $new_user_id = wp_insert_user($userdata); |
|
460 | 460 | |
461 | - if ( !is_wp_error( $new_user_id ) ) { |
|
461 | + if (!is_wp_error($new_user_id)) { |
|
462 | 462 | $data['post_author'] = $new_user_id; |
463 | 463 | $_POST['post_author'] = $new_user_id; |
464 | 464 | $_POST['post_author_override'] = $new_user_id; |
@@ -479,27 +479,27 @@ discard block |
||
479 | 479 | |
480 | 480 | $meta = array(); |
481 | 481 | ///$meta['_wpinv_user_id'] = $new_user_id; |
482 | - foreach ( $meta_fields as $field ) { |
|
483 | - $meta['_wpinv_' . $field] = isset( $postarr['wpinv_' . $field] ) ? sanitize_text_field( $postarr['wpinv_' . $field] ) : ''; |
|
482 | + foreach ($meta_fields as $field) { |
|
483 | + $meta['_wpinv_' . $field] = isset($postarr['wpinv_' . $field]) ? sanitize_text_field($postarr['wpinv_' . $field]) : ''; |
|
484 | 484 | } |
485 | 485 | |
486 | - $meta = apply_filters( 'wpinv_register_new_user_meta', $meta, $new_user_id ); |
|
486 | + $meta = apply_filters('wpinv_register_new_user_meta', $meta, $new_user_id); |
|
487 | 487 | |
488 | 488 | // Update user meta. |
489 | - foreach ( $meta as $key => $value ) { |
|
490 | - update_user_meta( $new_user_id, $key, $value ); |
|
489 | + foreach ($meta as $key => $value) { |
|
490 | + update_user_meta($new_user_id, $key, $value); |
|
491 | 491 | } |
492 | 492 | |
493 | - if ( function_exists( 'wp_send_new_user_notifications' ) ) { |
|
493 | + if (function_exists('wp_send_new_user_notifications')) { |
|
494 | 494 | // Send email notifications related to the creation of new user. |
495 | - wp_send_new_user_notifications( $new_user_id, 'user' ); |
|
495 | + wp_send_new_user_notifications($new_user_id, 'user'); |
|
496 | 496 | } |
497 | 497 | } else { |
498 | - wpinv_error_log( $new_user_id->get_error_message(), 'Invoice add new user', __FILE__, __LINE__ ); |
|
498 | + wpinv_error_log($new_user_id->get_error_message(), 'Invoice add new user', __FILE__, __LINE__); |
|
499 | 499 | } |
500 | 500 | } |
501 | 501 | } |
502 | 502 | |
503 | 503 | return $data; |
504 | 504 | } |
505 | -add_filter( 'wp_insert_post_data', 'wpinv_send_register_new_user', 10, 2 ); |
|
506 | 505 | \ No newline at end of file |
506 | +add_filter('wp_insert_post_data', 'wpinv_send_register_new_user', 10, 2); |
|
507 | 507 | \ No newline at end of file |
@@ -1,22 +1,22 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | // MUST have WordPress. |
3 | -if ( !defined( 'WPINC' ) ) { |
|
4 | - exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) ); |
|
3 | +if (!defined('WPINC')) { |
|
4 | + exit('Do NOT access this file directly: ' . basename(__FILE__)); |
|
5 | 5 | } |
6 | 6 | |
7 | 7 | class WPInv_Meta_Box_Items { |
8 | - public static function output( $post ) { |
|
8 | + public static function output($post) { |
|
9 | 9 | global $wpinv_euvat, $ajax_cart_details; |
10 | 10 | |
11 | - $post_id = !empty( $post->ID ) ? $post->ID : 0; |
|
12 | - $invoice = new WPInv_Invoice( $post_id ); |
|
11 | + $post_id = !empty($post->ID) ? $post->ID : 0; |
|
12 | + $invoice = new WPInv_Invoice($post_id); |
|
13 | 13 | $ajax_cart_details = $invoice->get_cart_details(); |
14 | - $subtotal = $invoice->get_subtotal( true ); |
|
14 | + $subtotal = $invoice->get_subtotal(true); |
|
15 | 15 | $discount_raw = $invoice->get_discount(); |
16 | - $discount = wpinv_price( $discount_raw, $invoice->get_currency() ); |
|
16 | + $discount = wpinv_price($discount_raw, $invoice->get_currency()); |
|
17 | 17 | $discounts = $discount_raw > 0 ? $invoice->get_discounts() : ''; |
18 | - $tax = $invoice->get_tax( true ); |
|
19 | - $total = $invoice->get_total( true ); |
|
18 | + $tax = $invoice->get_tax(true); |
|
19 | + $total = $invoice->get_total(true); |
|
20 | 20 | $item_quantities = wpinv_item_quantities_enabled(); |
21 | 21 | $use_taxes = wpinv_use_taxes(); |
22 | 22 | $item_types = wpinv_get_item_types(); |
@@ -29,17 +29,17 @@ discard block |
||
29 | 29 | } |
30 | 30 | |
31 | 31 | $cols = 5; |
32 | - if ( $item_quantities ) { |
|
32 | + if ($item_quantities) { |
|
33 | 33 | $cols++; |
34 | 34 | } |
35 | - if ( $use_taxes ) { |
|
35 | + if ($use_taxes) { |
|
36 | 36 | $cols++; |
37 | 37 | } |
38 | 38 | $class = ''; |
39 | - if ( $invoice->is_paid() ) { |
|
39 | + if ($invoice->is_paid()) { |
|
40 | 40 | $class .= ' wpinv-paid'; |
41 | 41 | } |
42 | - if ( $is_recurring ) { |
|
42 | + if ($is_recurring) { |
|
43 | 43 | $class .= ' wpi-recurring'; |
44 | 44 | } |
45 | 45 | ?> |
@@ -47,21 +47,21 @@ discard block |
||
47 | 47 | <table id="wpinv_items" class="wpinv-items" cellspacing="0" cellpadding="0"> |
48 | 48 | <thead> |
49 | 49 | <tr> |
50 | - <th class="id"><?php _e( 'ID', 'invoicing' );?></th> |
|
51 | - <th class="title"><?php _e( 'Item', 'invoicing' );?></th> |
|
52 | - <th class="price"><?php _e( 'Price', 'invoicing' );?></th> |
|
53 | - <?php if ( $item_quantities ) { ?> |
|
54 | - <th class="qty"><?php _e( 'Qty', 'invoicing' );?></th> |
|
50 | + <th class="id"><?php _e('ID', 'invoicing'); ?></th> |
|
51 | + <th class="title"><?php _e('Item', 'invoicing'); ?></th> |
|
52 | + <th class="price"><?php _e('Price', 'invoicing'); ?></th> |
|
53 | + <?php if ($item_quantities) { ?> |
|
54 | + <th class="qty"><?php _e('Qty', 'invoicing'); ?></th> |
|
55 | 55 | <?php } ?> |
56 | - <th class="total"><?php _e( 'Total', 'invoicing' );?></th> |
|
57 | - <?php if ( $use_taxes ) { ?> |
|
58 | - <th class="tax"><?php _e( 'Tax (%)', 'invoicing' );?></th> |
|
56 | + <th class="total"><?php _e('Total', 'invoicing'); ?></th> |
|
57 | + <?php if ($use_taxes) { ?> |
|
58 | + <th class="tax"><?php _e('Tax (%)', 'invoicing'); ?></th> |
|
59 | 59 | <?php } ?> |
60 | 60 | <th class="action"></th> |
61 | 61 | </tr> |
62 | 62 | </thead> |
63 | 63 | <tbody class="wpinv-line-items"> |
64 | - <?php echo wpinv_admin_get_line_items( $invoice ); ?> |
|
64 | + <?php echo wpinv_admin_get_line_items($invoice); ?> |
|
65 | 65 | </tbody> |
66 | 66 | <tfoot class="wpinv-totals"> |
67 | 67 | <tr> |
@@ -73,44 +73,44 @@ discard block |
||
73 | 73 | </td> |
74 | 74 | <td class="title"> |
75 | 75 | <input type="text" class="regular-text" placeholder="Item name" value="" name="_wpinv_quick[name]"> |
76 | - <?php if ( $wpinv_euvat->allow_vat_rules() ) { ?> |
|
76 | + <?php if ($wpinv_euvat->allow_vat_rules()) { ?> |
|
77 | 77 | <div class="wp-clearfix"> |
78 | 78 | <label class="wpi-vat-rule"> |
79 | - <span class="title"><?php _e( 'VAT rule type', 'invoicing' );?></span> |
|
79 | + <span class="title"><?php _e('VAT rule type', 'invoicing'); ?></span> |
|
80 | 80 | <span class="input-text-wrap"> |
81 | - <?php echo wpinv_html_select( array( |
|
81 | + <?php echo wpinv_html_select(array( |
|
82 | 82 | 'options' => $wpinv_euvat->get_rules(), |
83 | 83 | 'name' => '_wpinv_quick[vat_rule]', |
84 | 84 | 'id' => '_wpinv_quick_vat_rule', |
85 | 85 | 'show_option_all' => false, |
86 | 86 | 'show_option_none' => false, |
87 | 87 | 'class' => 'gdmbx2-text-medium wpinv-quick-vat-rule', |
88 | - ) ); ?> |
|
88 | + )); ?> |
|
89 | 89 | </span> |
90 | 90 | </label> |
91 | 91 | </div> |
92 | - <?php } if ( $wpinv_euvat->allow_vat_classes() ) { ?> |
|
92 | + <?php } if ($wpinv_euvat->allow_vat_classes()) { ?> |
|
93 | 93 | <div class="wp-clearfix"> |
94 | 94 | <label class="wpi-vat-class"> |
95 | - <span class="title"><?php _e( 'VAT class', 'invoicing' );?></span> |
|
95 | + <span class="title"><?php _e('VAT class', 'invoicing'); ?></span> |
|
96 | 96 | <span class="input-text-wrap"> |
97 | - <?php echo wpinv_html_select( array( |
|
97 | + <?php echo wpinv_html_select(array( |
|
98 | 98 | 'options' => $wpinv_euvat->get_all_classes(), |
99 | 99 | 'name' => '_wpinv_quick[vat_class]', |
100 | 100 | 'id' => '_wpinv_quick_vat_class', |
101 | 101 | 'show_option_all' => false, |
102 | 102 | 'show_option_none' => false, |
103 | 103 | 'class' => 'gdmbx2-text-medium wpinv-quick-vat-class', |
104 | - ) ); ?> |
|
104 | + )); ?> |
|
105 | 105 | </span> |
106 | 106 | </label> |
107 | 107 | </div> |
108 | 108 | <?php } ?> |
109 | 109 | <div class="wp-clearfix"> |
110 | 110 | <label class="wpi-item-type"> |
111 | - <span class="title"><?php _e( 'Item type', 'invoicing' );?></span> |
|
111 | + <span class="title"><?php _e('Item type', 'invoicing'); ?></span> |
|
112 | 112 | <span class="input-text-wrap"> |
113 | - <?php echo wpinv_html_select( array( |
|
113 | + <?php echo wpinv_html_select(array( |
|
114 | 114 | 'options' => $item_types, |
115 | 115 | 'name' => '_wpinv_quick[type]', |
116 | 116 | 'id' => '_wpinv_quick_type', |
@@ -118,7 +118,7 @@ discard block |
||
118 | 118 | 'show_option_all' => false, |
119 | 119 | 'show_option_none' => false, |
120 | 120 | 'class' => 'gdmbx2-text-medium wpinv-quick-type', |
121 | - ) ); ?> |
|
121 | + )); ?> |
|
122 | 122 | </span> |
123 | 123 | </label> |
124 | 124 | </div> |
@@ -131,11 +131,11 @@ discard block |
||
131 | 131 | </div> |
132 | 132 | </td> |
133 | 133 | <td class="price"><input type="text" placeholder="0.00" class="wpi-field-price wpi-price" name="_wpinv_quick[price]" /></td> |
134 | - <?php if ( $item_quantities ) { ?> |
|
134 | + <?php if ($item_quantities) { ?> |
|
135 | 135 | <td class="qty"><input type="number" class="small-text" step="1" min="1" value="1" name="_wpinv_quick[qty]" /></td> |
136 | 136 | <?php } ?> |
137 | 137 | <td class="total"></td> |
138 | - <?php if ( $use_taxes ) { ?> |
|
138 | + <?php if ($use_taxes) { ?> |
|
139 | 139 | <td class="tax"></td> |
140 | 140 | <?php } ?> |
141 | 141 | <td class="action"></td> |
@@ -148,29 +148,29 @@ discard block |
||
148 | 148 | <td colspan="<?php echo $cols; ?>"></td> |
149 | 149 | </tr> |
150 | 150 | <tr class="totals"> |
151 | - <td colspan="<?php echo ( $cols - 4 ); ?>"></td> |
|
151 | + <td colspan="<?php echo ($cols - 4); ?>"></td> |
|
152 | 152 | <td colspan="4"> |
153 | 153 | <table cellspacing="0" cellpadding="0"> |
154 | 154 | <tr class="subtotal"> |
155 | - <td class="name"><?php _e( 'Sub Total:', 'invoicing' );?></td> |
|
156 | - <td class="total"><?php echo $subtotal;?></td> |
|
155 | + <td class="name"><?php _e('Sub Total:', 'invoicing'); ?></td> |
|
156 | + <td class="total"><?php echo $subtotal; ?></td> |
|
157 | 157 | <td class="action"></td> |
158 | 158 | </tr> |
159 | 159 | <tr class="discount"> |
160 | - <td class="name"><?php wpinv_get_discount_label( wpinv_discount_code( $invoice->ID ) ); ?>:</td> |
|
161 | - <td class="total"><?php echo wpinv_discount( $invoice->ID, true, true ); ?></td> |
|
160 | + <td class="name"><?php wpinv_get_discount_label(wpinv_discount_code($invoice->ID)); ?>:</td> |
|
161 | + <td class="total"><?php echo wpinv_discount($invoice->ID, true, true); ?></td> |
|
162 | 162 | <td class="action"></td> |
163 | 163 | </tr> |
164 | - <?php if ( $use_taxes ) { ?> |
|
164 | + <?php if ($use_taxes) { ?> |
|
165 | 165 | <tr class="tax"> |
166 | - <td class="name"><?php _e( 'Tax:', 'invoicing' );?></td> |
|
167 | - <td class="total"><?php echo $tax;?></td> |
|
166 | + <td class="name"><?php _e('Tax:', 'invoicing'); ?></td> |
|
167 | + <td class="total"><?php echo $tax; ?></td> |
|
168 | 168 | <td class="action"></td> |
169 | 169 | </tr> |
170 | 170 | <?php } ?> |
171 | 171 | <tr class="total"> |
172 | - <td class="name"><?php _e( 'Invoice Total:', 'invoicing' );?></td> |
|
173 | - <td class="total"><?php echo $total;?></td> |
|
172 | + <td class="name"><?php _e('Invoice Total:', 'invoicing'); ?></td> |
|
173 | + <td class="total"><?php echo $total; ?></td> |
|
174 | 174 | <td class="action"></td> |
175 | 175 | </tr> |
176 | 176 | </table> |
@@ -180,89 +180,89 @@ discard block |
||
180 | 180 | </table> |
181 | 181 | <div class="wpinv-actions"> |
182 | 182 | <?php |
183 | - if ( !$invoice->is_paid() ) { |
|
184 | - if ( !$invoice->is_recurring() ) { |
|
185 | - echo wpinv_item_dropdown( array( |
|
183 | + if (!$invoice->is_paid()) { |
|
184 | + if (!$invoice->is_recurring()) { |
|
185 | + echo wpinv_item_dropdown(array( |
|
186 | 186 | 'name' => 'wpinv_invoice_item', |
187 | 187 | 'id' => 'wpinv_invoice_item', |
188 | 188 | 'with_packages' => false, |
189 | 189 | 'show_recurring' => true, |
190 | - ) ); |
|
190 | + )); |
|
191 | 191 | ?> |
192 | - <input type="button" value="<?php echo sprintf(esc_attr__( 'Add item to %s', 'invoicing'), $type_title); ?>" class="button button-primary" id="wpinv-add-item"><input type="button" value="<?php esc_attr_e( 'Create new item', 'invoicing' );?>" class="button button-primary" id="wpinv-new-item"><?php } ?><input type="button" value="<?php esc_attr_e( 'Recalculate Totals', 'invoicing' );?>" class="button button-primary wpinv-flr" id="wpinv-recalc-totals"> |
|
192 | + <input type="button" value="<?php echo sprintf(esc_attr__('Add item to %s', 'invoicing'), $type_title); ?>" class="button button-primary" id="wpinv-add-item"><input type="button" value="<?php esc_attr_e('Create new item', 'invoicing'); ?>" class="button button-primary" id="wpinv-new-item"><?php } ?><input type="button" value="<?php esc_attr_e('Recalculate Totals', 'invoicing'); ?>" class="button button-primary wpinv-flr" id="wpinv-recalc-totals"> |
|
193 | 193 | <?php } ?> |
194 | - <?php do_action( 'wpinv_invoice_items_actions', $invoice ); ?> |
|
194 | + <?php do_action('wpinv_invoice_items_actions', $invoice); ?> |
|
195 | 195 | </div> |
196 | 196 | </div> |
197 | 197 | <?php |
198 | 198 | } |
199 | 199 | |
200 | - public static function prices( $post ) { |
|
200 | + public static function prices($post) { |
|
201 | 201 | $symbol = wpinv_currency_symbol(); |
202 | 202 | $position = wpinv_currency_position(); |
203 | - $item = new WPInv_Item( $post->ID ); |
|
203 | + $item = new WPInv_Item($post->ID); |
|
204 | 204 | |
205 | 205 | $price = $item->get_price(); |
206 | 206 | $is_recurring = $item->is_recurring(); |
207 | 207 | $period = $item->get_recurring_period(); |
208 | - $interval = absint( $item->get_recurring_interval() ); |
|
209 | - $times = absint( $item->get_recurring_limit() ); |
|
208 | + $interval = absint($item->get_recurring_interval()); |
|
209 | + $times = absint($item->get_recurring_limit()); |
|
210 | 210 | $free_trial = $item->has_free_trial(); |
211 | 211 | $trial_interval = $item->get_trial_interval(); |
212 | 212 | $trial_period = $item->get_trial_period(); |
213 | 213 | |
214 | 214 | $intervals = array(); |
215 | - for ( $i = 1; $i <= 90; $i++ ) { |
|
215 | + for ($i = 1; $i <= 90; $i++) { |
|
216 | 216 | $intervals[$i] = $i; |
217 | 217 | } |
218 | 218 | |
219 | - $interval = $interval > 0 ? $interval : 1; |
|
219 | + $interval = $interval > 0 ? $interval : 1; |
|
220 | 220 | |
221 | 221 | $class = $is_recurring ? 'wpinv-recurring-y' : 'wpinv-recurring-n'; |
222 | 222 | ?> |
223 | - <p class="wpinv-row-prices"><?php echo ( $position != 'right' ? $symbol . ' ' : '' );?><input type="text" maxlength="12" placeholder="<?php echo wpinv_format_amount( 0 ); ?>" value="<?php echo wpinv_format_amount( $price );?>" id="wpinv_item_price" name="wpinv_item_price" class="medium-text wpi-field-price wpi-price" <?php disabled( $item->is_package(), true ); ?> /><?php echo ( $position == 'right' ? ' ' . $symbol : '' );?><input type="hidden" name="wpinv_vat_meta_box_nonce" value="<?php echo wp_create_nonce( 'wpinv_item_meta_box_save' ) ;?>" /> |
|
224 | - <?php if ( $item->is_package() ) { ?> |
|
225 | - <span class="description"><?php _e( 'GD package item price can be edited only from GD payment manager.', 'invoicing' ); ?></span> |
|
223 | + <p class="wpinv-row-prices"><?php echo ($position != 'right' ? $symbol . ' ' : ''); ?><input type="text" maxlength="12" placeholder="<?php echo wpinv_format_amount(0); ?>" value="<?php echo wpinv_format_amount($price); ?>" id="wpinv_item_price" name="wpinv_item_price" class="medium-text wpi-field-price wpi-price" <?php disabled($item->is_package(), true); ?> /><?php echo ($position == 'right' ? ' ' . $symbol : ''); ?><input type="hidden" name="wpinv_vat_meta_box_nonce" value="<?php echo wp_create_nonce('wpinv_item_meta_box_save'); ?>" /> |
|
224 | + <?php if ($item->is_package()) { ?> |
|
225 | + <span class="description"><?php _e('GD package item price can be edited only from GD payment manager.', 'invoicing'); ?></span> |
|
226 | 226 | <?php } ?> |
227 | 227 | </p> |
228 | 228 | <p class="wpinv-row-is-recurring"> |
229 | 229 | <label for="wpinv_is_recurring"> |
230 | - <input type="checkbox" name="wpinv_is_recurring" id="wpinv_is_recurring" value="1" <?php checked( 1, $is_recurring ); ?> /> |
|
231 | - <?php echo apply_filters( 'wpinv_is_recurring_toggle_text', __( 'Is Recurring Item?', 'invoicing' ) ); ?> |
|
230 | + <input type="checkbox" name="wpinv_is_recurring" id="wpinv_is_recurring" value="1" <?php checked(1, $is_recurring); ?> /> |
|
231 | + <?php echo apply_filters('wpinv_is_recurring_toggle_text', __('Is Recurring Item?', 'invoicing')); ?> |
|
232 | 232 | </label> |
233 | 233 | </p> |
234 | - <p class="wpinv-row-recurring-fields <?php echo $class;?>"> |
|
235 | - <label class="wpinv-period" for="wpinv_recurring_period"><?php _e( 'Recurring', 'invoicing' );?> <select class="wpinv-select " id="wpinv_recurring_period" name="wpinv_recurring_period"><option value="D" data-text="<?php esc_attr_e( 'day(s)', 'invoicing' ); ?>" <?php selected( 'D', $period );?>><?php _e( 'Daily', 'invoicing' ); ?></option><option value="W" data-text="<?php esc_attr_e( 'week(s)', 'invoicing' ); ?>" <?php selected( 'W', $period );?>><?php _e( 'Weekly', 'invoicing' ); ?></option><option value="M" data-text="<?php esc_attr_e( 'month(s)', 'invoicing' ); ?>" <?php selected( 'M', $period );?>><?php _e( 'Monthly', 'invoicing' ); ?></option><option value="Y" data-text="<?php esc_attr_e( 'year(s)', 'invoicing' ); ?>" <?php selected( 'Y', $period );?>><?php _e( 'Yearly', 'invoicing' ); ?></option></select></label> |
|
236 | - <label class="wpinv-interval" for="wpinv_recurring_interval"> <?php _e( 'at every', 'invoicing' );?> <?php echo wpinv_html_select( array( |
|
234 | + <p class="wpinv-row-recurring-fields <?php echo $class; ?>"> |
|
235 | + <label class="wpinv-period" for="wpinv_recurring_period"><?php _e('Recurring', 'invoicing'); ?> <select class="wpinv-select " id="wpinv_recurring_period" name="wpinv_recurring_period"><option value="D" data-text="<?php esc_attr_e('day(s)', 'invoicing'); ?>" <?php selected('D', $period); ?>><?php _e('Daily', 'invoicing'); ?></option><option value="W" data-text="<?php esc_attr_e('week(s)', 'invoicing'); ?>" <?php selected('W', $period); ?>><?php _e('Weekly', 'invoicing'); ?></option><option value="M" data-text="<?php esc_attr_e('month(s)', 'invoicing'); ?>" <?php selected('M', $period); ?>><?php _e('Monthly', 'invoicing'); ?></option><option value="Y" data-text="<?php esc_attr_e('year(s)', 'invoicing'); ?>" <?php selected('Y', $period); ?>><?php _e('Yearly', 'invoicing'); ?></option></select></label> |
|
236 | + <label class="wpinv-interval" for="wpinv_recurring_interval"> <?php _e('at every', 'invoicing'); ?> <?php echo wpinv_html_select(array( |
|
237 | 237 | 'options' => $intervals, |
238 | 238 | 'name' => 'wpinv_recurring_interval', |
239 | 239 | 'id' => 'wpinv_recurring_interval', |
240 | 240 | 'selected' => $interval, |
241 | 241 | 'show_option_all' => false, |
242 | 242 | 'show_option_none' => false |
243 | - ) ); ?> <span id="wpinv_interval_text"><?php _e( 'day(s)', 'invoicing' );?></span></label> |
|
244 | - <label class="wpinv-times" for="wpinv_recurring_limit"> <?php _e( 'for', 'invoicing' );?> <input class="small-text" type="number" value="<?php echo $times;?>" size="4" id="wpinv_recurring_limit" name="wpinv_recurring_limit" step="1" min="0"> <?php _e( 'time(s) <i>(select 0 for recurring forever until cancelled</i>)', 'invoicing' );?></label> |
|
243 | + )); ?> <span id="wpinv_interval_text"><?php _e('day(s)', 'invoicing'); ?></span></label> |
|
244 | + <label class="wpinv-times" for="wpinv_recurring_limit"> <?php _e('for', 'invoicing'); ?> <input class="small-text" type="number" value="<?php echo $times; ?>" size="4" id="wpinv_recurring_limit" name="wpinv_recurring_limit" step="1" min="0"> <?php _e('time(s) <i>(select 0 for recurring forever until cancelled</i>)', 'invoicing'); ?></label> |
|
245 | 245 | <span class="clear wpi-trial-clr"></span> |
246 | 246 | <label class="wpinv-free-trial" for="wpinv_free_trial"> |
247 | - <input type="checkbox" name="wpinv_free_trial" id="wpinv_free_trial" value="1" <?php checked( true, (bool)$free_trial ); ?> /> |
|
248 | - <?php echo __( 'Offer free trial for', 'invoicing' ); ?> |
|
247 | + <input type="checkbox" name="wpinv_free_trial" id="wpinv_free_trial" value="1" <?php checked(true, (bool)$free_trial); ?> /> |
|
248 | + <?php echo __('Offer free trial for', 'invoicing'); ?> |
|
249 | 249 | </label> |
250 | 250 | <label class="wpinv-trial-interval" for="wpinv_trial_interval"> |
251 | - <input class="small-text" type="number" value="<?php echo $trial_interval;?>" size="4" id="wpinv_trial_interval" name="wpinv_trial_interval" step="1" min="1"> <select class="wpinv-select" id="wpinv_trial_period" name="wpinv_trial_period"><option value="D" <?php selected( 'D', $trial_period );?>><?php _e( 'day(s)', 'invoicing' ); ?></option><option value="W" <?php selected( 'W', $trial_period );?>><?php _e( 'week(s)', 'invoicing' ); ?></option><option value="M" <?php selected( 'M', $trial_period );?>><?php _e( 'month(s)', 'invoicing' ); ?></option><option value="Y" <?php selected( 'Y', $trial_period );?>><?php _e( 'year(s)', 'invoicing' ); ?></option></select> |
|
251 | + <input class="small-text" type="number" value="<?php echo $trial_interval; ?>" size="4" id="wpinv_trial_interval" name="wpinv_trial_interval" step="1" min="1"> <select class="wpinv-select" id="wpinv_trial_period" name="wpinv_trial_period"><option value="D" <?php selected('D', $trial_period); ?>><?php _e('day(s)', 'invoicing'); ?></option><option value="W" <?php selected('W', $trial_period); ?>><?php _e('week(s)', 'invoicing'); ?></option><option value="M" <?php selected('M', $trial_period); ?>><?php _e('month(s)', 'invoicing'); ?></option><option value="Y" <?php selected('Y', $trial_period); ?>><?php _e('year(s)', 'invoicing'); ?></option></select> |
|
252 | 252 | </label> |
253 | 253 | </p> |
254 | - <input type="hidden" id="_wpi_current_type" value="<?php echo wpinv_get_item_type( $post->ID ); ?>" /> |
|
255 | - <?php do_action( 'wpinv_item_price_field', $post->ID ); ?> |
|
254 | + <input type="hidden" id="_wpi_current_type" value="<?php echo wpinv_get_item_type($post->ID); ?>" /> |
|
255 | + <?php do_action('wpinv_item_price_field', $post->ID); ?> |
|
256 | 256 | <?php |
257 | 257 | } |
258 | 258 | |
259 | - public static function vat_rules( $post ) { |
|
259 | + public static function vat_rules($post) { |
|
260 | 260 | global $wpinv_euvat; |
261 | 261 | |
262 | - $rule_type = $wpinv_euvat->get_item_rule( $post->ID ); |
|
262 | + $rule_type = $wpinv_euvat->get_item_rule($post->ID); |
|
263 | 263 | ?> |
264 | - <p><label for="wpinv_vat_rules"><strong><?php _e( 'Select how VAT rules will be applied:', 'invoicing' );?></strong></label> |
|
265 | - <?php echo wpinv_html_select( array( |
|
264 | + <p><label for="wpinv_vat_rules"><strong><?php _e('Select how VAT rules will be applied:', 'invoicing'); ?></strong></label> |
|
265 | + <?php echo wpinv_html_select(array( |
|
266 | 266 | 'options' => $wpinv_euvat->get_rules(), |
267 | 267 | 'name' => 'wpinv_vat_rules', |
268 | 268 | 'id' => 'wpinv_vat_rules', |
@@ -270,19 +270,19 @@ discard block |
||
270 | 270 | 'show_option_all' => false, |
271 | 271 | 'show_option_none' => false, |
272 | 272 | 'class' => 'gdmbx2-text-medium wpinv-vat-rules', |
273 | - ) ); ?> |
|
273 | + )); ?> |
|
274 | 274 | </p> |
275 | - <p class="wpi-m0"><?php _e( 'When you select physical product rules, only consumers and businesses in your country will be charged VAT. The VAT rate used will be the rate in your country.', 'invoicing' ); ?></p> |
|
276 | - <p class="wpi-m0"><?php _e( 'If you select Digital product rules, VAT will be charged at the rate that applies in the country of the consumer. Only businesses in your country will be charged VAT.', 'invoicing' ); ?></p> |
|
275 | + <p class="wpi-m0"><?php _e('When you select physical product rules, only consumers and businesses in your country will be charged VAT. The VAT rate used will be the rate in your country.', 'invoicing'); ?></p> |
|
276 | + <p class="wpi-m0"><?php _e('If you select Digital product rules, VAT will be charged at the rate that applies in the country of the consumer. Only businesses in your country will be charged VAT.', 'invoicing'); ?></p> |
|
277 | 277 | <?php |
278 | 278 | } |
279 | 279 | |
280 | - public static function vat_classes( $post ) { |
|
280 | + public static function vat_classes($post) { |
|
281 | 281 | global $wpinv_euvat; |
282 | 282 | |
283 | - $vat_class = $wpinv_euvat->get_item_class( $post->ID ); |
|
283 | + $vat_class = $wpinv_euvat->get_item_class($post->ID); |
|
284 | 284 | ?> |
285 | - <p><?php echo wpinv_html_select( array( |
|
285 | + <p><?php echo wpinv_html_select(array( |
|
286 | 286 | 'options' => $wpinv_euvat->get_all_classes(), |
287 | 287 | 'name' => 'wpinv_vat_class', |
288 | 288 | 'id' => 'wpinv_vat_class', |
@@ -290,18 +290,18 @@ discard block |
||
290 | 290 | 'show_option_all' => false, |
291 | 291 | 'show_option_none' => false, |
292 | 292 | 'class' => 'gdmbx2-text-medium wpinv-vat-class', |
293 | - ) ); ?> |
|
293 | + )); ?> |
|
294 | 294 | </p> |
295 | - <p class="wpi-m0"><?php _e( 'Select the VAT rate class to use for this invoice item.', 'invoicing' ); ?></p> |
|
295 | + <p class="wpi-m0"><?php _e('Select the VAT rate class to use for this invoice item.', 'invoicing'); ?></p> |
|
296 | 296 | <?php |
297 | 297 | } |
298 | 298 | |
299 | - public static function item_info( $post ) { |
|
300 | - $item_type = wpinv_get_item_type( $post->ID ); |
|
301 | - do_action( 'wpinv_item_info_metabox_before', $post ); |
|
299 | + public static function item_info($post) { |
|
300 | + $item_type = wpinv_get_item_type($post->ID); |
|
301 | + do_action('wpinv_item_info_metabox_before', $post); |
|
302 | 302 | ?> |
303 | - <p><label for="wpinv_item_type"><strong><?php _e( 'Type:', 'invoicing' );?></strong></label> |
|
304 | - <?php echo wpinv_html_select( array( |
|
303 | + <p><label for="wpinv_item_type"><strong><?php _e('Type:', 'invoicing'); ?></strong></label> |
|
304 | + <?php echo wpinv_html_select(array( |
|
305 | 305 | 'options' => wpinv_get_item_types(), |
306 | 306 | 'name' => 'wpinv_item_type', |
307 | 307 | 'id' => 'wpinv_item_type', |
@@ -310,93 +310,93 @@ discard block |
||
310 | 310 | 'show_option_none' => false, |
311 | 311 | 'class' => 'gdmbx2-text-medium wpinv-item-type', |
312 | 312 | //'disabled' => $item_type == 'package' ? true : false, |
313 | - ) ); ?> |
|
313 | + )); ?> |
|
314 | 314 | </p> |
315 | - <p class="wpi-m0"><?php _e( 'Select item type.', 'invoicing' );?><br><?php _e( 'Standard: standard item type', 'invoicing' );?><br><?php _e( 'Fee: like Registration Fee, Signup Fee etc.', 'invoicing' );?></p> |
|
315 | + <p class="wpi-m0"><?php _e('Select item type.', 'invoicing'); ?><br><?php _e('Standard: standard item type', 'invoicing'); ?><br><?php _e('Fee: like Registration Fee, Signup Fee etc.', 'invoicing'); ?></p> |
|
316 | 316 | <?php |
317 | - do_action( 'wpinv_item_info_metabox_after', $post ); |
|
317 | + do_action('wpinv_item_info_metabox_after', $post); |
|
318 | 318 | } |
319 | 319 | |
320 | - public static function save( $post_id, $data, $post ) { |
|
321 | - $invoice = new WPInv_Invoice( $post_id ); |
|
320 | + public static function save($post_id, $data, $post) { |
|
321 | + $invoice = new WPInv_Invoice($post_id); |
|
322 | 322 | |
323 | 323 | // Billing |
324 | - $first_name = sanitize_text_field( $data['wpinv_first_name'] ); |
|
325 | - $last_name = sanitize_text_field( $data['wpinv_last_name'] ); |
|
326 | - $company = sanitize_text_field( $data['wpinv_company'] ); |
|
327 | - $vat_number = sanitize_text_field( $data['wpinv_vat_number'] ); |
|
328 | - $phone = sanitize_text_field( $data['wpinv_phone'] ); |
|
329 | - $address = sanitize_text_field( $data['wpinv_address'] ); |
|
330 | - $city = sanitize_text_field( $data['wpinv_city'] ); |
|
331 | - $zip = sanitize_text_field( $data['wpinv_zip'] ); |
|
332 | - $country = sanitize_text_field( $data['wpinv_country'] ); |
|
333 | - $state = sanitize_text_field( $data['wpinv_state'] ); |
|
324 | + $first_name = sanitize_text_field($data['wpinv_first_name']); |
|
325 | + $last_name = sanitize_text_field($data['wpinv_last_name']); |
|
326 | + $company = sanitize_text_field($data['wpinv_company']); |
|
327 | + $vat_number = sanitize_text_field($data['wpinv_vat_number']); |
|
328 | + $phone = sanitize_text_field($data['wpinv_phone']); |
|
329 | + $address = sanitize_text_field($data['wpinv_address']); |
|
330 | + $city = sanitize_text_field($data['wpinv_city']); |
|
331 | + $zip = sanitize_text_field($data['wpinv_zip']); |
|
332 | + $country = sanitize_text_field($data['wpinv_country']); |
|
333 | + $state = sanitize_text_field($data['wpinv_state']); |
|
334 | 334 | |
335 | 335 | // Details |
336 | - $status = sanitize_text_field( $data['wpinv_status'] ); |
|
337 | - $old_status = !empty( $data['original_post_status'] ) ? sanitize_text_field( $data['original_post_status'] ) : $status; |
|
338 | - $number = sanitize_text_field( $data['wpinv_number'] ); |
|
339 | - $due_date = isset( $data['wpinv_due_date'] ) ? sanitize_text_field( $data['wpinv_due_date'] ) : ''; |
|
336 | + $status = sanitize_text_field($data['wpinv_status']); |
|
337 | + $old_status = !empty($data['original_post_status']) ? sanitize_text_field($data['original_post_status']) : $status; |
|
338 | + $number = sanitize_text_field($data['wpinv_number']); |
|
339 | + $due_date = isset($data['wpinv_due_date']) ? sanitize_text_field($data['wpinv_due_date']) : ''; |
|
340 | 340 | //$discounts = sanitize_text_field( $data['wpinv_discounts'] ); |
341 | 341 | //$discount = sanitize_text_field( $data['wpinv_discount'] ); |
342 | 342 | |
343 | - $ip = $invoice->get_ip() ? $invoice->get_ip() : wpinv_get_ip(); |
|
343 | + $ip = $invoice->get_ip() ? $invoice->get_ip() : wpinv_get_ip(); |
|
344 | 344 | |
345 | - $invoice->set( 'due_date', $due_date ); |
|
346 | - $invoice->set( 'first_name', $first_name ); |
|
347 | - $invoice->set( 'last_name', $last_name ); |
|
348 | - $invoice->set( 'company', $company ); |
|
349 | - $invoice->set( 'vat_number', $vat_number ); |
|
350 | - $invoice->set( 'phone', $phone ); |
|
351 | - $invoice->set( 'address', $address ); |
|
352 | - $invoice->set( 'city', $city ); |
|
353 | - $invoice->set( 'zip', $zip ); |
|
354 | - $invoice->set( 'country', $country ); |
|
355 | - $invoice->set( 'state', $state ); |
|
356 | - $invoice->set( 'status', $status ); |
|
357 | - $invoice->set( 'number', $number ); |
|
345 | + $invoice->set('due_date', $due_date); |
|
346 | + $invoice->set('first_name', $first_name); |
|
347 | + $invoice->set('last_name', $last_name); |
|
348 | + $invoice->set('company', $company); |
|
349 | + $invoice->set('vat_number', $vat_number); |
|
350 | + $invoice->set('phone', $phone); |
|
351 | + $invoice->set('address', $address); |
|
352 | + $invoice->set('city', $city); |
|
353 | + $invoice->set('zip', $zip); |
|
354 | + $invoice->set('country', $country); |
|
355 | + $invoice->set('state', $state); |
|
356 | + $invoice->set('status', $status); |
|
357 | + $invoice->set('number', $number); |
|
358 | 358 | //$invoice->set( 'discounts', $discounts ); |
359 | 359 | //$invoice->set( 'discount', $discount ); |
360 | - $invoice->set( 'ip', $ip ); |
|
360 | + $invoice->set('ip', $ip); |
|
361 | 361 | $invoice->old_status = $_POST['original_post_status']; |
362 | 362 | $invoice->currency = wpinv_get_currency(); |
363 | - if ( !empty( $data['wpinv_gateway'] ) ) { |
|
364 | - $invoice->set( 'gateway', sanitize_text_field( $data['wpinv_gateway'] ) ); |
|
363 | + if (!empty($data['wpinv_gateway'])) { |
|
364 | + $invoice->set('gateway', sanitize_text_field($data['wpinv_gateway'])); |
|
365 | 365 | } |
366 | 366 | $saved = $invoice->save(); |
367 | 367 | |
368 | 368 | // Check for payment notes |
369 | - if ( !empty( $data['invoice_note'] ) ) { |
|
370 | - $note = wp_kses( $data['invoice_note'], array() ); |
|
371 | - $note_type = sanitize_text_field( $data['invoice_note_type'] ); |
|
369 | + if (!empty($data['invoice_note'])) { |
|
370 | + $note = wp_kses($data['invoice_note'], array()); |
|
371 | + $note_type = sanitize_text_field($data['invoice_note_type']); |
|
372 | 372 | $is_customer_note = $note_type == 'customer' ? 1 : 0; |
373 | 373 | |
374 | - wpinv_insert_payment_note( $invoice->ID, $note, $is_customer_note ); |
|
374 | + wpinv_insert_payment_note($invoice->ID, $note, $is_customer_note); |
|
375 | 375 | } |
376 | 376 | |
377 | 377 | // Update user address if empty. |
378 | - if ( $saved && !empty( $invoice ) ) { |
|
379 | - if ( $user_id = $invoice->get_user_id() ) { |
|
380 | - $user_address = wpinv_get_user_address( $user_id, false ); |
|
378 | + if ($saved && !empty($invoice)) { |
|
379 | + if ($user_id = $invoice->get_user_id()) { |
|
380 | + $user_address = wpinv_get_user_address($user_id, false); |
|
381 | 381 | |
382 | 382 | if (empty($user_address['first_name'])) { |
383 | - update_user_meta( $user_id, '_wpinv_first_name', $first_name ); |
|
384 | - update_user_meta( $user_id, '_wpinv_last_name', $last_name ); |
|
383 | + update_user_meta($user_id, '_wpinv_first_name', $first_name); |
|
384 | + update_user_meta($user_id, '_wpinv_last_name', $last_name); |
|
385 | 385 | } else if (empty($user_address['last_name']) && $user_address['first_name'] == $first_name) { |
386 | - update_user_meta( $user_id, '_wpinv_last_name', $last_name ); |
|
386 | + update_user_meta($user_id, '_wpinv_last_name', $last_name); |
|
387 | 387 | } |
388 | 388 | |
389 | 389 | if (empty($user_address['address']) || empty($user_address['city']) || empty($user_address['state']) || empty($user_address['country'])) { |
390 | - update_user_meta( $user_id, '_wpinv_address', $address ); |
|
391 | - update_user_meta( $user_id, '_wpinv_city', $city ); |
|
392 | - update_user_meta( $user_id, '_wpinv_state', $state ); |
|
393 | - update_user_meta( $user_id, '_wpinv_country', $country ); |
|
394 | - update_user_meta( $user_id, '_wpinv_zip', $zip ); |
|
395 | - update_user_meta( $user_id, '_wpinv_phone', $phone ); |
|
390 | + update_user_meta($user_id, '_wpinv_address', $address); |
|
391 | + update_user_meta($user_id, '_wpinv_city', $city); |
|
392 | + update_user_meta($user_id, '_wpinv_state', $state); |
|
393 | + update_user_meta($user_id, '_wpinv_country', $country); |
|
394 | + update_user_meta($user_id, '_wpinv_zip', $zip); |
|
395 | + update_user_meta($user_id, '_wpinv_phone', $phone); |
|
396 | 396 | } |
397 | 397 | } |
398 | 398 | |
399 | - do_action( 'wpinv_invoice_metabox_saveed', $invoice ); |
|
399 | + do_action('wpinv_invoice_metabox_saveed', $invoice); |
|
400 | 400 | } |
401 | 401 | |
402 | 402 | return $saved; |