@@ -45,8 +45,7 @@ discard block |
||
45 | 45 | |
46 | 46 | if($section_id=='recommended_plugins'){ |
47 | 47 | $section_data->products = self::get_recommend_wp_plugins_edd_formatted(); |
48 | - } |
|
49 | - elseif ( ! empty( $section ) ) { |
|
48 | + } elseif ( ! empty( $section ) ) { |
|
50 | 49 | if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing |
51 | 50 | //if ( 1==1) { |
52 | 51 | |
@@ -121,13 +120,13 @@ discard block |
||
121 | 120 | $button_args['file'] = isset($status['file']) ? $status['file'] : ''; |
122 | 121 | if(isset($status['status'])){$button_args['install_status'] = $status['status'];} |
123 | 122 | $button_args['update_url'] = "https://wpinvoicing.com"; |
124 | - }elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) { |
|
123 | + } elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) { |
|
125 | 124 | if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;} |
126 | 125 | $button_args['installed'] = self::is_theme_installed($addon); |
127 | 126 | if(!in_array($button_args['slug'],$wp_org_themes)){ |
128 | 127 | $button_args['update_url'] = "https://wpinvoicing.com"; |
129 | 128 | } |
130 | - }elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){ |
|
129 | + } elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){ |
|
131 | 130 | include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api.. |
132 | 131 | $status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>"")); |
133 | 132 | $button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install'; |
@@ -139,7 +138,7 @@ discard block |
||
139 | 138 | if(is_object($addon->pricing)){ |
140 | 139 | $prices = (Array)$addon->pricing; |
141 | 140 | $button_args['price'] = reset($prices); |
142 | - }elseif(isset($addon->pricing)){ |
|
141 | + } elseif(isset($addon->pricing)){ |
|
143 | 142 | $button_args['price'] = $addon->pricing; |
144 | 143 | } |
145 | 144 | } |
@@ -160,7 +159,7 @@ discard block |
||
160 | 159 | if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){ |
161 | 160 | if($button_args['type'] != 'themes'){ |
162 | 161 | $button_args['active'] = is_plugin_active($button_args['file']); |
163 | - }else{ |
|
162 | + } else{ |
|
164 | 163 | $button_args['active'] = self::is_theme_active($addon); |
165 | 164 | } |
166 | 165 | } |
@@ -169,27 +168,27 @@ discard block |
||
169 | 168 | if($button_args['active']){ |
170 | 169 | $button_args['button_text'] = __('Active','invoicing'); |
171 | 170 | $button_args['class'] = ' button-secondary disabled '; |
172 | - }elseif($button_args['installed']){ |
|
171 | + } elseif($button_args['installed']){ |
|
173 | 172 | $button_args['button_text'] = __('Activate','invoicing'); |
174 | 173 | |
175 | 174 | if($button_args['type'] != 'themes'){ |
176 | 175 | if ( current_user_can( 'manage_options' ) ) { |
177 | 176 | $button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']); |
178 | - }else{ |
|
177 | + } else{ |
|
179 | 178 | $button_args['url'] = '#'; |
180 | 179 | } |
181 | - }else{ |
|
180 | + } else{ |
|
182 | 181 | if ( current_user_can( 'switch_themes' ) ) { |
183 | 182 | $button_args['url'] = self::get_theme_activation_url($addon); |
184 | - }else{ |
|
183 | + } else{ |
|
185 | 184 | $button_args['url'] = '#'; |
186 | 185 | } |
187 | 186 | } |
188 | 187 | |
189 | - }else{ |
|
188 | + } else{ |
|
190 | 189 | if($button_args['type'] == 'recommended_plugins'){ |
191 | 190 | $button_args['button_text'] = __('Install','invoicing'); |
192 | - }else{ |
|
191 | + } else{ |
|
193 | 192 | $button_args['button_text'] = __('Get it','invoicing'); |
194 | 193 | |
195 | 194 | /*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){ |
@@ -6,7 +6,7 @@ discard block |
||
6 | 6 | * |
7 | 7 | */ |
8 | 8 | if ( ! defined( 'ABSPATH' ) ) { |
9 | - exit; |
|
9 | + exit; |
|
10 | 10 | } |
11 | 11 | |
12 | 12 | /** |
@@ -15,71 +15,71 @@ discard block |
||
15 | 15 | class WPInv_Admin_Addons extends Ayecode_Addons { |
16 | 16 | |
17 | 17 | |
18 | - /** |
|
19 | - * Get the extensions page tabs. |
|
20 | - * |
|
21 | - * @return array of tabs. |
|
22 | - */ |
|
23 | - public function get_tabs(){ |
|
24 | - $tabs = array( |
|
25 | - 'addons' => __("Addons", "invoicing"), |
|
18 | + /** |
|
19 | + * Get the extensions page tabs. |
|
20 | + * |
|
21 | + * @return array of tabs. |
|
22 | + */ |
|
23 | + public function get_tabs(){ |
|
24 | + $tabs = array( |
|
25 | + 'addons' => __("Addons", "invoicing"), |
|
26 | 26 | 'gateways' => __("Payment Gateways", "invoicing"), |
27 | 27 | 'recommended_plugins' => __("Recommended plugins", "invoicing"), |
28 | 28 | 'membership' => __("Membership", "invoicing"), |
29 | - ); |
|
30 | - |
|
31 | - return $tabs; |
|
32 | - } |
|
33 | - |
|
34 | - /** |
|
35 | - * Get section content for the addons screen. |
|
36 | - * |
|
37 | - * @param string $section_id |
|
38 | - * |
|
39 | - * @return array |
|
40 | - */ |
|
41 | - public function get_section_data( $section_id ) { |
|
42 | - $section = self::get_tab( $section_id ); |
|
43 | - $api_url = "https://wpinvoicing.com/edd-api/v2/products/"; |
|
44 | - $section_data = new stdClass(); |
|
45 | - |
|
46 | - if($section_id=='recommended_plugins'){ |
|
47 | - $section_data->products = self::get_recommend_wp_plugins_edd_formatted(); |
|
48 | - } |
|
49 | - elseif ( ! empty( $section ) ) { |
|
50 | - if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing |
|
51 | - //if ( 1==1) { |
|
52 | - |
|
53 | - $query_args = array( 'category' => $section_id, 'number' => 100); |
|
54 | - $query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id); |
|
55 | - |
|
56 | - $raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout' => 15, ) ); |
|
57 | - |
|
58 | - if ( ! is_wp_error( $raw_section ) ) { |
|
59 | - $section_data = json_decode( wp_remote_retrieve_body( $raw_section ) ); |
|
60 | - |
|
61 | - if ( ! empty( $section_data->products ) ) { |
|
62 | - set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS ); |
|
63 | - } |
|
64 | - } |
|
65 | - } |
|
66 | - } |
|
67 | - |
|
68 | - $products = isset($section_data->products) ? $section_data->products : ''; |
|
69 | - |
|
70 | - return apply_filters( 'wpi_addons_section_data', $products, $section_id ); |
|
71 | - } |
|
72 | - |
|
73 | - /** |
|
74 | - * Outputs a button. |
|
75 | - *ccc |
|
76 | - * @param string $url |
|
77 | - * @param string $text |
|
78 | - * @param string $theme |
|
79 | - * @param string $plugin |
|
80 | - */ |
|
81 | - public function output_button( $addon ) { |
|
82 | - $current_tab = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] ); |
|
29 | + ); |
|
30 | + |
|
31 | + return $tabs; |
|
32 | + } |
|
33 | + |
|
34 | + /** |
|
35 | + * Get section content for the addons screen. |
|
36 | + * |
|
37 | + * @param string $section_id |
|
38 | + * |
|
39 | + * @return array |
|
40 | + */ |
|
41 | + public function get_section_data( $section_id ) { |
|
42 | + $section = self::get_tab( $section_id ); |
|
43 | + $api_url = "https://wpinvoicing.com/edd-api/v2/products/"; |
|
44 | + $section_data = new stdClass(); |
|
45 | + |
|
46 | + if($section_id=='recommended_plugins'){ |
|
47 | + $section_data->products = self::get_recommend_wp_plugins_edd_formatted(); |
|
48 | + } |
|
49 | + elseif ( ! empty( $section ) ) { |
|
50 | + if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing |
|
51 | + //if ( 1==1) { |
|
52 | + |
|
53 | + $query_args = array( 'category' => $section_id, 'number' => 100); |
|
54 | + $query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id); |
|
55 | + |
|
56 | + $raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout' => 15, ) ); |
|
57 | + |
|
58 | + if ( ! is_wp_error( $raw_section ) ) { |
|
59 | + $section_data = json_decode( wp_remote_retrieve_body( $raw_section ) ); |
|
60 | + |
|
61 | + if ( ! empty( $section_data->products ) ) { |
|
62 | + set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS ); |
|
63 | + } |
|
64 | + } |
|
65 | + } |
|
66 | + } |
|
67 | + |
|
68 | + $products = isset($section_data->products) ? $section_data->products : ''; |
|
69 | + |
|
70 | + return apply_filters( 'wpi_addons_section_data', $products, $section_id ); |
|
71 | + } |
|
72 | + |
|
73 | + /** |
|
74 | + * Outputs a button. |
|
75 | + *ccc |
|
76 | + * @param string $url |
|
77 | + * @param string $text |
|
78 | + * @param string $theme |
|
79 | + * @param string $plugin |
|
80 | + */ |
|
81 | + public function output_button( $addon ) { |
|
82 | + $current_tab = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] ); |
|
83 | 83 | // $button_text = __('Free','invoicing'); |
84 | 84 | // $licensing = false; |
85 | 85 | // $installed = false; |
@@ -91,123 +91,123 @@ discard block |
||
91 | 91 | // $install_status = 'get'; |
92 | 92 | // $onclick = ''; |
93 | 93 | |
94 | - $wp_org_themes = array('supreme-directory','directory-starter'); |
|
95 | - |
|
96 | - $button_args = array( |
|
97 | - 'type' => ($current_tab == 'addons' || $current_tab =='gateways') ? 'addons' : $current_tab, |
|
98 | - 'id' => isset($addon->info->id) ? absint($addon->info->id) : '', |
|
99 | - 'title' => isset($addon->info->title) ? $addon->info->title : '', |
|
100 | - 'button_text' => __('Free','invoicing'), |
|
101 | - 'price_text' => __('Free','invoicing'), |
|
102 | - 'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product |
|
103 | - 'url' => isset($addon->info->link) ? $addon->info->link : '', // button url |
|
104 | - 'class' => 'button-primary', |
|
105 | - 'install_status' => 'get', |
|
106 | - 'installed' => false, |
|
107 | - 'price' => '', |
|
108 | - 'licensing' => isset($addon->licensing->enabled) && $addon->licensing->enabled ? true : false, |
|
109 | - 'license' => isset($addon->licensing->license) && $addon->licensing->license ? $addon->licensing->license : '', |
|
110 | - 'onclick' => '', |
|
111 | - 'slug' => isset($addon->info->slug) ? $addon->info->slug : '', |
|
112 | - 'active' => false, |
|
113 | - 'file' => '', |
|
114 | - 'update_url' => '', |
|
115 | - ); |
|
116 | - |
|
117 | - if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){ |
|
118 | - include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api.. |
|
119 | - if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;} |
|
120 | - $status = self::install_plugin_install_status($addon); |
|
121 | - $button_args['file'] = isset($status['file']) ? $status['file'] : ''; |
|
122 | - if(isset($status['status'])){$button_args['install_status'] = $status['status'];} |
|
123 | - $button_args['update_url'] = "https://wpinvoicing.com"; |
|
124 | - }elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) { |
|
125 | - if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;} |
|
126 | - $button_args['installed'] = self::is_theme_installed($addon); |
|
127 | - if(!in_array($button_args['slug'],$wp_org_themes)){ |
|
128 | - $button_args['update_url'] = "https://wpinvoicing.com"; |
|
129 | - } |
|
130 | - }elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){ |
|
131 | - include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api.. |
|
132 | - $status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>"")); |
|
133 | - $button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install'; |
|
134 | - $button_args['file'] = isset($status['file']) ? $status['file'] : ''; |
|
135 | - } |
|
136 | - |
|
137 | - // set price |
|
138 | - if(isset($addon->pricing) && !empty($addon->pricing)){ |
|
139 | - if(is_object($addon->pricing)){ |
|
140 | - $prices = (Array)$addon->pricing; |
|
141 | - $button_args['price'] = reset($prices); |
|
142 | - }elseif(isset($addon->pricing)){ |
|
143 | - $button_args['price'] = $addon->pricing; |
|
144 | - } |
|
145 | - } |
|
146 | - |
|
147 | - // set price text |
|
148 | - if( $button_args['price'] && $button_args['price'] != '0.00' ){ |
|
149 | - $button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']); |
|
150 | - } |
|
151 | - |
|
152 | - |
|
153 | - // set if installed |
|
154 | - if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){ |
|
155 | - $button_args['installed'] = true; |
|
156 | - } |
|
94 | + $wp_org_themes = array('supreme-directory','directory-starter'); |
|
95 | + |
|
96 | + $button_args = array( |
|
97 | + 'type' => ($current_tab == 'addons' || $current_tab =='gateways') ? 'addons' : $current_tab, |
|
98 | + 'id' => isset($addon->info->id) ? absint($addon->info->id) : '', |
|
99 | + 'title' => isset($addon->info->title) ? $addon->info->title : '', |
|
100 | + 'button_text' => __('Free','invoicing'), |
|
101 | + 'price_text' => __('Free','invoicing'), |
|
102 | + 'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product |
|
103 | + 'url' => isset($addon->info->link) ? $addon->info->link : '', // button url |
|
104 | + 'class' => 'button-primary', |
|
105 | + 'install_status' => 'get', |
|
106 | + 'installed' => false, |
|
107 | + 'price' => '', |
|
108 | + 'licensing' => isset($addon->licensing->enabled) && $addon->licensing->enabled ? true : false, |
|
109 | + 'license' => isset($addon->licensing->license) && $addon->licensing->license ? $addon->licensing->license : '', |
|
110 | + 'onclick' => '', |
|
111 | + 'slug' => isset($addon->info->slug) ? $addon->info->slug : '', |
|
112 | + 'active' => false, |
|
113 | + 'file' => '', |
|
114 | + 'update_url' => '', |
|
115 | + ); |
|
116 | + |
|
117 | + if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){ |
|
118 | + include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api.. |
|
119 | + if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;} |
|
120 | + $status = self::install_plugin_install_status($addon); |
|
121 | + $button_args['file'] = isset($status['file']) ? $status['file'] : ''; |
|
122 | + if(isset($status['status'])){$button_args['install_status'] = $status['status'];} |
|
123 | + $button_args['update_url'] = "https://wpinvoicing.com"; |
|
124 | + }elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) { |
|
125 | + if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;} |
|
126 | + $button_args['installed'] = self::is_theme_installed($addon); |
|
127 | + if(!in_array($button_args['slug'],$wp_org_themes)){ |
|
128 | + $button_args['update_url'] = "https://wpinvoicing.com"; |
|
129 | + } |
|
130 | + }elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){ |
|
131 | + include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api.. |
|
132 | + $status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>"")); |
|
133 | + $button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install'; |
|
134 | + $button_args['file'] = isset($status['file']) ? $status['file'] : ''; |
|
135 | + } |
|
136 | + |
|
137 | + // set price |
|
138 | + if(isset($addon->pricing) && !empty($addon->pricing)){ |
|
139 | + if(is_object($addon->pricing)){ |
|
140 | + $prices = (Array)$addon->pricing; |
|
141 | + $button_args['price'] = reset($prices); |
|
142 | + }elseif(isset($addon->pricing)){ |
|
143 | + $button_args['price'] = $addon->pricing; |
|
144 | + } |
|
145 | + } |
|
146 | + |
|
147 | + // set price text |
|
148 | + if( $button_args['price'] && $button_args['price'] != '0.00' ){ |
|
149 | + $button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']); |
|
150 | + } |
|
151 | + |
|
152 | + |
|
153 | + // set if installed |
|
154 | + if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){ |
|
155 | + $button_args['installed'] = true; |
|
156 | + } |
|
157 | 157 | |
158 | 158 | // print_r($button_args); |
159 | - // set if active |
|
160 | - if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){ |
|
161 | - if($button_args['type'] != 'themes'){ |
|
162 | - $button_args['active'] = is_plugin_active($button_args['file']); |
|
163 | - }else{ |
|
164 | - $button_args['active'] = self::is_theme_active($addon); |
|
165 | - } |
|
166 | - } |
|
167 | - |
|
168 | - // set button text and class |
|
169 | - if($button_args['active']){ |
|
170 | - $button_args['button_text'] = __('Active','invoicing'); |
|
171 | - $button_args['class'] = ' button-secondary disabled '; |
|
172 | - }elseif($button_args['installed']){ |
|
173 | - $button_args['button_text'] = __('Activate','invoicing'); |
|
174 | - |
|
175 | - if($button_args['type'] != 'themes'){ |
|
176 | - if ( current_user_can( 'manage_options' ) ) { |
|
177 | - $button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']); |
|
178 | - }else{ |
|
179 | - $button_args['url'] = '#'; |
|
180 | - } |
|
181 | - }else{ |
|
182 | - if ( current_user_can( 'switch_themes' ) ) { |
|
183 | - $button_args['url'] = self::get_theme_activation_url($addon); |
|
184 | - }else{ |
|
185 | - $button_args['url'] = '#'; |
|
186 | - } |
|
187 | - } |
|
188 | - |
|
189 | - }else{ |
|
190 | - if($button_args['type'] == 'recommended_plugins'){ |
|
191 | - $button_args['button_text'] = __('Install','invoicing'); |
|
192 | - }else{ |
|
193 | - $button_args['button_text'] = __('Get it','invoicing'); |
|
194 | - |
|
195 | - /*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){ |
|
159 | + // set if active |
|
160 | + if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){ |
|
161 | + if($button_args['type'] != 'themes'){ |
|
162 | + $button_args['active'] = is_plugin_active($button_args['file']); |
|
163 | + }else{ |
|
164 | + $button_args['active'] = self::is_theme_active($addon); |
|
165 | + } |
|
166 | + } |
|
167 | + |
|
168 | + // set button text and class |
|
169 | + if($button_args['active']){ |
|
170 | + $button_args['button_text'] = __('Active','invoicing'); |
|
171 | + $button_args['class'] = ' button-secondary disabled '; |
|
172 | + }elseif($button_args['installed']){ |
|
173 | + $button_args['button_text'] = __('Activate','invoicing'); |
|
174 | + |
|
175 | + if($button_args['type'] != 'themes'){ |
|
176 | + if ( current_user_can( 'manage_options' ) ) { |
|
177 | + $button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']); |
|
178 | + }else{ |
|
179 | + $button_args['url'] = '#'; |
|
180 | + } |
|
181 | + }else{ |
|
182 | + if ( current_user_can( 'switch_themes' ) ) { |
|
183 | + $button_args['url'] = self::get_theme_activation_url($addon); |
|
184 | + }else{ |
|
185 | + $button_args['url'] = '#'; |
|
186 | + } |
|
187 | + } |
|
188 | + |
|
189 | + }else{ |
|
190 | + if($button_args['type'] == 'recommended_plugins'){ |
|
191 | + $button_args['button_text'] = __('Install','invoicing'); |
|
192 | + }else{ |
|
193 | + $button_args['button_text'] = __('Get it','invoicing'); |
|
194 | + |
|
195 | + /*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){ |
|
196 | 196 | $button_args['button_text'] = __('Install','invoicing'); |
197 | 197 | $button_args['url'] = self::get_theme_install_url($button_args['slug']); |
198 | 198 | $button_args['onclick'] = 'gd_set_button_installing(this);'; |
199 | 199 | }*/ |
200 | 200 | |
201 | - } |
|
202 | - } |
|
201 | + } |
|
202 | + } |
|
203 | 203 | |
204 | 204 | |
205 | - // filter the button arguments |
|
206 | - $button_args = apply_filters('edd_api_button_args',$button_args); |
|
205 | + // filter the button arguments |
|
206 | + $button_args = apply_filters('edd_api_button_args',$button_args); |
|
207 | 207 | // print_r($button_args); |
208 | - // set price text |
|
209 | - if(isset($button_args['price_text'])){ |
|
210 | - ?> |
|
208 | + // set price text |
|
209 | + if(isset($button_args['price_text'])){ |
|
210 | + ?> |
|
211 | 211 | <a |
212 | 212 | target="_blank" |
213 | 213 | class="addons-price-text" |
@@ -215,15 +215,15 @@ discard block |
||
215 | 215 | <?php echo esc_html( $button_args['price_text'] ); ?> |
216 | 216 | </a> |
217 | 217 | <?php |
218 | - } |
|
218 | + } |
|
219 | 219 | |
220 | 220 | |
221 | - $target = ''; |
|
222 | - if ( ! empty( $button_args['url'] ) ) { |
|
223 | - $target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" '; |
|
224 | - } |
|
221 | + $target = ''; |
|
222 | + if ( ! empty( $button_args['url'] ) ) { |
|
223 | + $target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" '; |
|
224 | + } |
|
225 | 225 | |
226 | - ?> |
|
226 | + ?> |
|
227 | 227 | <a |
228 | 228 | data-licence="<?php echo esc_attr($button_args['license']);?>" |
229 | 229 | data-licensing="<?php echo $button_args['licensing'] ? 1 : 0;?>" |
@@ -246,28 +246,28 @@ discard block |
||
246 | 246 | <?php |
247 | 247 | |
248 | 248 | |
249 | - } |
|
250 | - |
|
251 | - |
|
252 | - /** |
|
253 | - * Handles output of the addons page in admin. |
|
254 | - */ |
|
255 | - public function output() { |
|
256 | - $tabs = self::get_tabs(); |
|
257 | - $sections = self::get_sections(); |
|
258 | - $theme = wp_get_theme(); |
|
259 | - $section_keys = array_keys( $sections ); |
|
260 | - $current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys ); |
|
261 | - $current_tab = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] ); |
|
262 | - include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' ); |
|
263 | - } |
|
264 | - |
|
265 | - /** |
|
266 | - * A list of recommended wp.org plugins. |
|
267 | - * @return array |
|
268 | - */ |
|
269 | - public function get_recommend_wp_plugins(){ |
|
270 | - $plugins = array( |
|
249 | + } |
|
250 | + |
|
251 | + |
|
252 | + /** |
|
253 | + * Handles output of the addons page in admin. |
|
254 | + */ |
|
255 | + public function output() { |
|
256 | + $tabs = self::get_tabs(); |
|
257 | + $sections = self::get_sections(); |
|
258 | + $theme = wp_get_theme(); |
|
259 | + $section_keys = array_keys( $sections ); |
|
260 | + $current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys ); |
|
261 | + $current_tab = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] ); |
|
262 | + include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' ); |
|
263 | + } |
|
264 | + |
|
265 | + /** |
|
266 | + * A list of recommended wp.org plugins. |
|
267 | + * @return array |
|
268 | + */ |
|
269 | + public function get_recommend_wp_plugins(){ |
|
270 | + $plugins = array( |
|
271 | 271 | 'invoicing-quotes' => array( |
272 | 272 | 'url' => 'https://wordpress.org/plugins/invoicing-quotes/', |
273 | 273 | 'slug' => 'invoicing-quotes', |
@@ -286,8 +286,8 @@ discard block |
||
286 | 286 | 'name' => 'UsersWP', |
287 | 287 | 'desc' => __('Allow frontend user login and registration as well as have slick profile pages.','invoicing'), |
288 | 288 | ), |
289 | - ); |
|
289 | + ); |
|
290 | 290 | |
291 | - return $plugins; |
|
292 | - } |
|
291 | + return $plugins; |
|
292 | + } |
|
293 | 293 | } |
@@ -5,7 +5,7 @@ discard block |
||
5 | 5 | * All Invoicing extensions screen related functions can be found here. |
6 | 6 | * |
7 | 7 | */ |
8 | -if ( ! defined( 'ABSPATH' ) ) { |
|
8 | +if (!defined('ABSPATH')) { |
|
9 | 9 | exit; |
10 | 10 | } |
11 | 11 | |
@@ -20,7 +20,7 @@ discard block |
||
20 | 20 | * |
21 | 21 | * @return array of tabs. |
22 | 22 | */ |
23 | - public function get_tabs(){ |
|
23 | + public function get_tabs() { |
|
24 | 24 | $tabs = array( |
25 | 25 | 'addons' => __("Addons", "invoicing"), |
26 | 26 | 'gateways' => __("Payment Gateways", "invoicing"), |
@@ -38,28 +38,28 @@ discard block |
||
38 | 38 | * |
39 | 39 | * @return array |
40 | 40 | */ |
41 | - public function get_section_data( $section_id ) { |
|
42 | - $section = self::get_tab( $section_id ); |
|
41 | + public function get_section_data($section_id) { |
|
42 | + $section = self::get_tab($section_id); |
|
43 | 43 | $api_url = "https://wpinvoicing.com/edd-api/v2/products/"; |
44 | 44 | $section_data = new stdClass(); |
45 | 45 | |
46 | - if($section_id=='recommended_plugins'){ |
|
46 | + if ($section_id == 'recommended_plugins') { |
|
47 | 47 | $section_data->products = self::get_recommend_wp_plugins_edd_formatted(); |
48 | 48 | } |
49 | - elseif ( ! empty( $section ) ) { |
|
50 | - if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing |
|
49 | + elseif (!empty($section)) { |
|
50 | + if (false === ($section_data = get_transient('wpi_addons_section_' . $section_id))) { //@todo restore after testing |
|
51 | 51 | //if ( 1==1) { |
52 | 52 | |
53 | - $query_args = array( 'category' => $section_id, 'number' => 100); |
|
54 | - $query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id); |
|
53 | + $query_args = array('category' => $section_id, 'number' => 100); |
|
54 | + $query_args = apply_filters('wpeu_edd_api_query_args', $query_args, $api_url, $section_id); |
|
55 | 55 | |
56 | - $raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout' => 15, ) ); |
|
56 | + $raw_section = wp_safe_remote_get(esc_url_raw(add_query_arg($query_args, $api_url)), array('user-agent' => 'Invoicing Addons Page', 'timeout' => 15,)); |
|
57 | 57 | |
58 | - if ( ! is_wp_error( $raw_section ) ) { |
|
59 | - $section_data = json_decode( wp_remote_retrieve_body( $raw_section ) ); |
|
58 | + if (!is_wp_error($raw_section)) { |
|
59 | + $section_data = json_decode(wp_remote_retrieve_body($raw_section)); |
|
60 | 60 | |
61 | - if ( ! empty( $section_data->products ) ) { |
|
62 | - set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS ); |
|
61 | + if (!empty($section_data->products)) { |
|
62 | + set_transient('wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS); |
|
63 | 63 | } |
64 | 64 | } |
65 | 65 | } |
@@ -67,7 +67,7 @@ discard block |
||
67 | 67 | |
68 | 68 | $products = isset($section_data->products) ? $section_data->products : ''; |
69 | 69 | |
70 | - return apply_filters( 'wpi_addons_section_data', $products, $section_id ); |
|
70 | + return apply_filters('wpi_addons_section_data', $products, $section_id); |
|
71 | 71 | } |
72 | 72 | |
73 | 73 | /** |
@@ -78,8 +78,8 @@ discard block |
||
78 | 78 | * @param string $theme |
79 | 79 | * @param string $plugin |
80 | 80 | */ |
81 | - public function output_button( $addon ) { |
|
82 | - $current_tab = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] ); |
|
81 | + public function output_button($addon) { |
|
82 | + $current_tab = empty($_GET['tab']) ? 'addons' : sanitize_title($_GET['tab']); |
|
83 | 83 | // $button_text = __('Free','invoicing'); |
84 | 84 | // $licensing = false; |
85 | 85 | // $installed = false; |
@@ -91,14 +91,14 @@ discard block |
||
91 | 91 | // $install_status = 'get'; |
92 | 92 | // $onclick = ''; |
93 | 93 | |
94 | - $wp_org_themes = array('supreme-directory','directory-starter'); |
|
94 | + $wp_org_themes = array('supreme-directory', 'directory-starter'); |
|
95 | 95 | |
96 | 96 | $button_args = array( |
97 | - 'type' => ($current_tab == 'addons' || $current_tab =='gateways') ? 'addons' : $current_tab, |
|
97 | + 'type' => ($current_tab == 'addons' || $current_tab == 'gateways') ? 'addons' : $current_tab, |
|
98 | 98 | 'id' => isset($addon->info->id) ? absint($addon->info->id) : '', |
99 | 99 | 'title' => isset($addon->info->title) ? $addon->info->title : '', |
100 | - 'button_text' => __('Free','invoicing'), |
|
101 | - 'price_text' => __('Free','invoicing'), |
|
100 | + 'button_text' => __('Free', 'invoicing'), |
|
101 | + 'price_text' => __('Free', 'invoicing'), |
|
102 | 102 | 'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product |
103 | 103 | 'url' => isset($addon->info->link) ? $addon->info->link : '', // button url |
104 | 104 | 'class' => 'button-primary', |
@@ -114,83 +114,83 @@ discard block |
||
114 | 114 | 'update_url' => '', |
115 | 115 | ); |
116 | 116 | |
117 | - if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){ |
|
118 | - include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api.. |
|
119 | - if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;} |
|
117 | + if (($current_tab == 'addons' || $current_tab == 'gateways') && isset($addon->info->id) && $addon->info->id) { |
|
118 | + include_once(ABSPATH . 'wp-admin/includes/plugin-install.php'); //for plugins_api.. |
|
119 | + if (!empty($addon->licensing->edd_slug)) {$button_args['slug'] = $addon->licensing->edd_slug; } |
|
120 | 120 | $status = self::install_plugin_install_status($addon); |
121 | 121 | $button_args['file'] = isset($status['file']) ? $status['file'] : ''; |
122 | - if(isset($status['status'])){$button_args['install_status'] = $status['status'];} |
|
122 | + if (isset($status['status'])) {$button_args['install_status'] = $status['status']; } |
|
123 | 123 | $button_args['update_url'] = "https://wpinvoicing.com"; |
124 | - }elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) { |
|
125 | - if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;} |
|
124 | + }elseif ($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) { |
|
125 | + if (!empty($addon->licensing->edd_slug)) {$button_args['slug'] = $addon->licensing->edd_slug; } |
|
126 | 126 | $button_args['installed'] = self::is_theme_installed($addon); |
127 | - if(!in_array($button_args['slug'],$wp_org_themes)){ |
|
127 | + if (!in_array($button_args['slug'], $wp_org_themes)) { |
|
128 | 128 | $button_args['update_url'] = "https://wpinvoicing.com"; |
129 | 129 | } |
130 | - }elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){ |
|
131 | - include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api.. |
|
132 | - $status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>"")); |
|
130 | + }elseif ($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug) { |
|
131 | + include_once(ABSPATH . 'wp-admin/includes/plugin-install.php'); //for plugins_api.. |
|
132 | + $status = install_plugin_install_status(array("slug"=>$button_args['slug'], "version"=>"")); |
|
133 | 133 | $button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install'; |
134 | 134 | $button_args['file'] = isset($status['file']) ? $status['file'] : ''; |
135 | 135 | } |
136 | 136 | |
137 | 137 | // set price |
138 | - if(isset($addon->pricing) && !empty($addon->pricing)){ |
|
139 | - if(is_object($addon->pricing)){ |
|
140 | - $prices = (Array)$addon->pricing; |
|
138 | + if (isset($addon->pricing) && !empty($addon->pricing)) { |
|
139 | + if (is_object($addon->pricing)) { |
|
140 | + $prices = (Array) $addon->pricing; |
|
141 | 141 | $button_args['price'] = reset($prices); |
142 | - }elseif(isset($addon->pricing)){ |
|
142 | + }elseif (isset($addon->pricing)) { |
|
143 | 143 | $button_args['price'] = $addon->pricing; |
144 | 144 | } |
145 | 145 | } |
146 | 146 | |
147 | 147 | // set price text |
148 | - if( $button_args['price'] && $button_args['price'] != '0.00' ){ |
|
149 | - $button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']); |
|
148 | + if ($button_args['price'] && $button_args['price'] != '0.00') { |
|
149 | + $button_args['price_text'] = sprintf(__('From: $%d', 'invoicing'), $button_args['price']); |
|
150 | 150 | } |
151 | 151 | |
152 | 152 | |
153 | 153 | // set if installed |
154 | - if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){ |
|
154 | + if (in_array($button_args['install_status'], array('installed', 'latest_installed', 'update_available', 'newer_installed'))) { |
|
155 | 155 | $button_args['installed'] = true; |
156 | 156 | } |
157 | 157 | |
158 | 158 | // print_r($button_args); |
159 | 159 | // set if active |
160 | - if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){ |
|
161 | - if($button_args['type'] != 'themes'){ |
|
160 | + if ($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')) { |
|
161 | + if ($button_args['type'] != 'themes') { |
|
162 | 162 | $button_args['active'] = is_plugin_active($button_args['file']); |
163 | - }else{ |
|
163 | + } else { |
|
164 | 164 | $button_args['active'] = self::is_theme_active($addon); |
165 | 165 | } |
166 | 166 | } |
167 | 167 | |
168 | 168 | // set button text and class |
169 | - if($button_args['active']){ |
|
170 | - $button_args['button_text'] = __('Active','invoicing'); |
|
169 | + if ($button_args['active']) { |
|
170 | + $button_args['button_text'] = __('Active', 'invoicing'); |
|
171 | 171 | $button_args['class'] = ' button-secondary disabled '; |
172 | - }elseif($button_args['installed']){ |
|
173 | - $button_args['button_text'] = __('Activate','invoicing'); |
|
172 | + }elseif ($button_args['installed']) { |
|
173 | + $button_args['button_text'] = __('Activate', 'invoicing'); |
|
174 | 174 | |
175 | - if($button_args['type'] != 'themes'){ |
|
176 | - if ( current_user_can( 'manage_options' ) ) { |
|
177 | - $button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']); |
|
178 | - }else{ |
|
175 | + if ($button_args['type'] != 'themes') { |
|
176 | + if (current_user_can('manage_options')) { |
|
177 | + $button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin=' . $button_args['file']), 'activate-plugin_' . $button_args['file']); |
|
178 | + } else { |
|
179 | 179 | $button_args['url'] = '#'; |
180 | 180 | } |
181 | - }else{ |
|
182 | - if ( current_user_can( 'switch_themes' ) ) { |
|
181 | + } else { |
|
182 | + if (current_user_can('switch_themes')) { |
|
183 | 183 | $button_args['url'] = self::get_theme_activation_url($addon); |
184 | - }else{ |
|
184 | + } else { |
|
185 | 185 | $button_args['url'] = '#'; |
186 | 186 | } |
187 | 187 | } |
188 | 188 | |
189 | - }else{ |
|
190 | - if($button_args['type'] == 'recommended_plugins'){ |
|
191 | - $button_args['button_text'] = __('Install','invoicing'); |
|
192 | - }else{ |
|
193 | - $button_args['button_text'] = __('Get it','invoicing'); |
|
189 | + } else { |
|
190 | + if ($button_args['type'] == 'recommended_plugins') { |
|
191 | + $button_args['button_text'] = __('Install', 'invoicing'); |
|
192 | + } else { |
|
193 | + $button_args['button_text'] = __('Get it', 'invoicing'); |
|
194 | 194 | |
195 | 195 | /*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){ |
196 | 196 | $button_args['button_text'] = __('Install','invoicing'); |
@@ -203,45 +203,45 @@ discard block |
||
203 | 203 | |
204 | 204 | |
205 | 205 | // filter the button arguments |
206 | - $button_args = apply_filters('edd_api_button_args',$button_args); |
|
206 | + $button_args = apply_filters('edd_api_button_args', $button_args); |
|
207 | 207 | // print_r($button_args); |
208 | 208 | // set price text |
209 | - if(isset($button_args['price_text'])){ |
|
209 | + if (isset($button_args['price_text'])) { |
|
210 | 210 | ?> |
211 | 211 | <a |
212 | 212 | target="_blank" |
213 | 213 | class="addons-price-text" |
214 | - href="<?php echo esc_url( $button_args['link'] ); ?>"> |
|
215 | - <?php echo esc_html( $button_args['price_text'] ); ?> |
|
214 | + href="<?php echo esc_url($button_args['link']); ?>"> |
|
215 | + <?php echo esc_html($button_args['price_text']); ?> |
|
216 | 216 | </a> |
217 | 217 | <?php |
218 | 218 | } |
219 | 219 | |
220 | 220 | |
221 | 221 | $target = ''; |
222 | - if ( ! empty( $button_args['url'] ) ) { |
|
222 | + if (!empty($button_args['url'])) { |
|
223 | 223 | $target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" '; |
224 | 224 | } |
225 | 225 | |
226 | 226 | ?> |
227 | 227 | <a |
228 | - data-licence="<?php echo esc_attr($button_args['license']);?>" |
|
229 | - data-licensing="<?php echo $button_args['licensing'] ? 1 : 0;?>" |
|
230 | - data-title="<?php echo esc_attr($button_args['title']);?>" |
|
231 | - data-type="<?php echo esc_attr($button_args['type']);?>" |
|
232 | - data-text-error-message="<?php _e('Something went wrong!','invoicing');?>" |
|
233 | - data-text-activate="<?php _e('Activate','invoicing');?>" |
|
234 | - data-text-activating="<?php _e('Activating','invoicing');?>" |
|
235 | - data-text-deactivate="<?php _e('Deactivate','invoicing');?>" |
|
236 | - data-text-installed="<?php _e('Installed','invoicing');?>" |
|
237 | - data-text-install="<?php _e('Install','invoicing');?>" |
|
238 | - data-text-installing="<?php _e('Installing','invoicing');?>" |
|
239 | - data-text-error="<?php _e('Error','invoicing');?>" |
|
240 | - <?php if(!empty($button_args['onclick'])){echo " onclick='".$button_args['onclick']."' ";}?> |
|
241 | - <?php echo $target;?> |
|
242 | - class="addons-button <?php echo esc_attr( $button_args['class'] ); ?>" |
|
243 | - href="<?php echo esc_url( $button_args['url'] ); ?>"> |
|
244 | - <?php echo esc_html( $button_args['button_text'] ); ?> |
|
228 | + data-licence="<?php echo esc_attr($button_args['license']); ?>" |
|
229 | + data-licensing="<?php echo $button_args['licensing'] ? 1 : 0; ?>" |
|
230 | + data-title="<?php echo esc_attr($button_args['title']); ?>" |
|
231 | + data-type="<?php echo esc_attr($button_args['type']); ?>" |
|
232 | + data-text-error-message="<?php _e('Something went wrong!', 'invoicing'); ?>" |
|
233 | + data-text-activate="<?php _e('Activate', 'invoicing'); ?>" |
|
234 | + data-text-activating="<?php _e('Activating', 'invoicing'); ?>" |
|
235 | + data-text-deactivate="<?php _e('Deactivate', 'invoicing'); ?>" |
|
236 | + data-text-installed="<?php _e('Installed', 'invoicing'); ?>" |
|
237 | + data-text-install="<?php _e('Install', 'invoicing'); ?>" |
|
238 | + data-text-installing="<?php _e('Installing', 'invoicing'); ?>" |
|
239 | + data-text-error="<?php _e('Error', 'invoicing'); ?>" |
|
240 | + <?php if (!empty($button_args['onclick'])) {echo " onclick='" . $button_args['onclick'] . "' "; }?> |
|
241 | + <?php echo $target; ?> |
|
242 | + class="addons-button <?php echo esc_attr($button_args['class']); ?>" |
|
243 | + href="<?php echo esc_url($button_args['url']); ?>"> |
|
244 | + <?php echo esc_html($button_args['button_text']); ?> |
|
245 | 245 | </a> |
246 | 246 | <?php |
247 | 247 | |
@@ -256,35 +256,35 @@ discard block |
||
256 | 256 | $tabs = self::get_tabs(); |
257 | 257 | $sections = self::get_sections(); |
258 | 258 | $theme = wp_get_theme(); |
259 | - $section_keys = array_keys( $sections ); |
|
260 | - $current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys ); |
|
261 | - $current_tab = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] ); |
|
262 | - include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' ); |
|
259 | + $section_keys = array_keys($sections); |
|
260 | + $current_section = isset($_GET['section']) ? sanitize_text_field($_GET['section']) : current($section_keys); |
|
261 | + $current_tab = empty($_GET['tab']) ? 'addons' : sanitize_title($_GET['tab']); |
|
262 | + include_once(WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php'); |
|
263 | 263 | } |
264 | 264 | |
265 | 265 | /** |
266 | 266 | * A list of recommended wp.org plugins. |
267 | 267 | * @return array |
268 | 268 | */ |
269 | - public function get_recommend_wp_plugins(){ |
|
269 | + public function get_recommend_wp_plugins() { |
|
270 | 270 | $plugins = array( |
271 | 271 | 'invoicing-quotes' => array( |
272 | 272 | 'url' => 'https://wordpress.org/plugins/invoicing-quotes/', |
273 | 273 | 'slug' => 'invoicing-quotes', |
274 | 274 | 'name' => 'Quotes', |
275 | - 'desc' => __('Allows you to create quotes, send them to clients and convert them to Invoices when accepted by the customer.','invoicing'), |
|
275 | + 'desc' => __('Allows you to create quotes, send them to clients and convert them to Invoices when accepted by the customer.', 'invoicing'), |
|
276 | 276 | ), |
277 | 277 | 'geodirectory' => array( |
278 | 278 | 'url' => 'https://wordpress.org/plugins/geodirectory/', |
279 | 279 | 'slug' => 'geodirectory', |
280 | 280 | 'name' => 'GeoDirectory', |
281 | - 'desc' => __('Turn any WordPress theme into a global business directory portal.','invoicing'), |
|
281 | + 'desc' => __('Turn any WordPress theme into a global business directory portal.', 'invoicing'), |
|
282 | 282 | ), |
283 | 283 | 'userswp' => array( |
284 | 284 | 'url' => 'https://wordpress.org/plugins/userswp/', |
285 | 285 | 'slug' => 'userswp', |
286 | 286 | 'name' => 'UsersWP', |
287 | - 'desc' => __('Allow frontend user login and registration as well as have slick profile pages.','invoicing'), |
|
287 | + 'desc' => __('Allow frontend user login and registration as well as have slick profile pages.', 'invoicing'), |
|
288 | 288 | ), |
289 | 289 | ); |
290 | 290 |
@@ -1,7 +1,7 @@ |
||
1 | 1 | <?php |
2 | 2 | // Exit if accessed directly |
3 | -if ( ! defined( 'ABSPATH' ) ) exit; |
|
4 | -if(!class_exists('Ayecode_Addons')) { |
|
3 | +if (!defined('ABSPATH')) exit; |
|
4 | +if (!class_exists('Ayecode_Addons')) { |
|
5 | 5 | |
6 | 6 | abstract class Ayecode_Addons |
7 | 7 | { |
@@ -1,6 +1,8 @@ |
||
1 | 1 | <?php |
2 | 2 | // Exit if accessed directly |
3 | -if ( ! defined( 'ABSPATH' ) ) exit; |
|
3 | +if ( ! defined( 'ABSPATH' ) ) { |
|
4 | + exit; |
|
5 | +} |
|
4 | 6 | if(!class_exists('Ayecode_Addons')) { |
5 | 7 | |
6 | 8 | abstract class Ayecode_Addons |
@@ -13,7 +13,7 @@ discard block |
||
13 | 13 | * Bail if we are not in WP. |
14 | 14 | */ |
15 | 15 | if ( ! defined( 'ABSPATH' ) ) { |
16 | - exit; |
|
16 | + exit; |
|
17 | 17 | } |
18 | 18 | |
19 | 19 | /** |
@@ -21,294 +21,294 @@ discard block |
||
21 | 21 | */ |
22 | 22 | if ( ! class_exists( 'WP_Font_Awesome_Settings' ) ) { |
23 | 23 | |
24 | - /** |
|
25 | - * A Class to be able to change settings for Font Awesome. |
|
26 | - * |
|
27 | - * Class WP_Font_Awesome_Settings |
|
28 | - * @since 1.0.10 Now able to pass wp.org theme check. |
|
29 | - * @since 1.0.11 Font Awesome Pro now supported. |
|
30 | - * @since 1.0.11 Font Awesome Kits now supported. |
|
31 | - * @ver 1.0.11 |
|
32 | - * @todo decide how to implement textdomain |
|
33 | - */ |
|
34 | - class WP_Font_Awesome_Settings { |
|
35 | - |
|
36 | - /** |
|
37 | - * Class version version. |
|
38 | - * |
|
39 | - * @var string |
|
40 | - */ |
|
41 | - public $version = '1.0.11'; |
|
42 | - |
|
43 | - /** |
|
44 | - * Class textdomain. |
|
45 | - * |
|
46 | - * @var string |
|
47 | - */ |
|
48 | - public $textdomain = 'font-awesome-settings'; |
|
49 | - |
|
50 | - /** |
|
51 | - * Latest version of Font Awesome at time of publish published. |
|
52 | - * |
|
53 | - * @var string |
|
54 | - */ |
|
55 | - public $latest = "5.8.2"; |
|
56 | - |
|
57 | - /** |
|
58 | - * The title. |
|
59 | - * |
|
60 | - * @var string |
|
61 | - */ |
|
62 | - public $name = 'Font Awesome'; |
|
63 | - |
|
64 | - /** |
|
65 | - * Holds the settings values. |
|
66 | - * |
|
67 | - * @var array |
|
68 | - */ |
|
69 | - private $settings; |
|
70 | - |
|
71 | - /** |
|
72 | - * WP_Font_Awesome_Settings instance. |
|
73 | - * |
|
74 | - * @access private |
|
75 | - * @since 1.0.0 |
|
76 | - * @var WP_Font_Awesome_Settings There can be only one! |
|
77 | - */ |
|
78 | - private static $instance = null; |
|
79 | - |
|
80 | - /** |
|
81 | - * Main WP_Font_Awesome_Settings Instance. |
|
82 | - * |
|
83 | - * Ensures only one instance of WP_Font_Awesome_Settings is loaded or can be loaded. |
|
84 | - * |
|
85 | - * @since 1.0.0 |
|
86 | - * @static |
|
87 | - * @return WP_Font_Awesome_Settings - Main instance. |
|
88 | - */ |
|
89 | - public static function instance() { |
|
90 | - if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) { |
|
91 | - self::$instance = new WP_Font_Awesome_Settings; |
|
92 | - |
|
93 | - add_action( 'init', array( self::$instance, 'init' ) ); // set settings |
|
94 | - |
|
95 | - if ( is_admin() ) { |
|
96 | - add_action( 'admin_menu', array( self::$instance, 'menu_item' ) ); |
|
97 | - add_action( 'admin_init', array( self::$instance, 'register_settings' ) ); |
|
98 | - } |
|
99 | - |
|
100 | - do_action( 'wp_font_awesome_settings_loaded' ); |
|
101 | - } |
|
102 | - |
|
103 | - return self::$instance; |
|
104 | - } |
|
105 | - |
|
106 | - /** |
|
107 | - * Initiate the settings and add the required action hooks. |
|
108 | - * |
|
109 | - * @since 1.0.8 Settings name wrong - FIXED |
|
110 | - */ |
|
111 | - public function init() { |
|
112 | - $this->settings = $this->get_settings(); |
|
113 | - |
|
114 | - if ( $this->settings['type'] == 'CSS' ) { |
|
115 | - |
|
116 | - if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) { |
|
117 | - add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 ); |
|
118 | - } |
|
119 | - |
|
120 | - if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) { |
|
121 | - add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 ); |
|
122 | - } |
|
123 | - |
|
124 | - } else { |
|
125 | - |
|
126 | - if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) { |
|
127 | - add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 ); |
|
128 | - } |
|
129 | - |
|
130 | - if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) { |
|
131 | - add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 ); |
|
132 | - } |
|
133 | - } |
|
134 | - |
|
135 | - // remove font awesome if set to do so |
|
136 | - if ( $this->settings['dequeue'] == '1' ) { |
|
137 | - add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 ); |
|
138 | - } |
|
139 | - |
|
140 | - } |
|
141 | - |
|
142 | - /** |
|
143 | - * Adds the Font Awesome styles. |
|
144 | - */ |
|
145 | - public function enqueue_style() { |
|
146 | - // build url |
|
147 | - $url = $this->get_url(); |
|
148 | - |
|
149 | - wp_deregister_style( 'font-awesome' ); // deregister in case its already there |
|
150 | - wp_register_style( 'font-awesome', $url, array(), null ); |
|
151 | - wp_enqueue_style( 'font-awesome' ); |
|
152 | - |
|
153 | - if ( $this->settings['shims'] ) { |
|
154 | - $url = $this->get_url( true ); |
|
155 | - wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there |
|
156 | - wp_register_style( 'font-awesome-shims', $url, array(), null ); |
|
157 | - wp_enqueue_style( 'font-awesome-shims' ); |
|
158 | - } |
|
159 | - } |
|
160 | - |
|
161 | - /** |
|
162 | - * Adds the Font Awesome JS. |
|
163 | - */ |
|
164 | - public function enqueue_scripts() { |
|
165 | - // build url |
|
166 | - $url = $this->get_url(); |
|
167 | - |
|
168 | - $deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script'; |
|
169 | - call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there |
|
170 | - wp_register_script( 'font-awesome', $url, array(), null ); |
|
171 | - wp_enqueue_script( 'font-awesome' ); |
|
172 | - |
|
173 | - if ( $this->settings['shims'] ) { |
|
174 | - $url = $this->get_url( true ); |
|
175 | - call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there |
|
176 | - wp_register_script( 'font-awesome-shims', $url, array(), null ); |
|
177 | - wp_enqueue_script( 'font-awesome-shims' ); |
|
178 | - } |
|
179 | - } |
|
180 | - |
|
181 | - /** |
|
182 | - * Get the url of the Font Awesome files. |
|
183 | - * |
|
184 | - * @param bool $shims If this is a shim file or not. |
|
185 | - * |
|
186 | - * @return string The url to the file. |
|
187 | - */ |
|
188 | - public function get_url( $shims = false ) { |
|
189 | - $script = $shims ? 'v4-shims' : 'all'; |
|
190 | - $sub = $this->settings['pro'] ? 'pro' : 'use'; |
|
191 | - $type = $this->settings['type']; |
|
192 | - $version = $this->settings['version']; |
|
193 | - $kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : ''; |
|
194 | - $url = ''; |
|
195 | - |
|
196 | - if ( $type == 'KIT' && $kit_url ) { |
|
197 | - if ( $shims ) { |
|
198 | - // if its a kit then we don't add shims here |
|
199 | - return ''; |
|
200 | - } |
|
201 | - $url .= $kit_url; // CDN |
|
202 | - $url .= "?wpfas=true"; // set our var so our version is not removed |
|
203 | - } else { |
|
204 | - $url .= "https://$sub.fontawesome.com/releases/"; // CDN |
|
205 | - $url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version |
|
206 | - $url .= $type == 'CSS' ? 'css/' : 'js/'; // type |
|
207 | - $url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type |
|
208 | - $url .= "?wpfas=true"; // set our var so our version is not removed |
|
209 | - } |
|
210 | - |
|
211 | - return $url; |
|
212 | - } |
|
213 | - |
|
214 | - /** |
|
215 | - * Try and remove any other versions of Font Awesome added by other plugins/themes. |
|
216 | - * |
|
217 | - * Uses the clean_url filter to try and remove any other Font Awesome files added, it can also add pseudo-elements flag for the JS version. |
|
218 | - * |
|
219 | - * @param $url |
|
220 | - * @param $original_url |
|
221 | - * @param $_context |
|
222 | - * |
|
223 | - * @return string The filtered url. |
|
224 | - */ |
|
225 | - public function remove_font_awesome( $url, $original_url, $_context ) { |
|
226 | - |
|
227 | - if ( $_context == 'display' |
|
228 | - && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false ) |
|
229 | - && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false ) |
|
230 | - ) {// it's a font-awesome-url (probably) |
|
231 | - |
|
232 | - if ( strstr( $url, "wpfas=true" ) !== false ) { |
|
233 | - if ( $this->settings['type'] == 'JS' ) { |
|
234 | - if ( $this->settings['js-pseudo'] ) { |
|
235 | - $url .= "' data-search-pseudo-elements defer='defer"; |
|
236 | - } else { |
|
237 | - $url .= "' defer='defer"; |
|
238 | - } |
|
239 | - } |
|
240 | - } else { |
|
241 | - $url = ''; // removing the url removes the file |
|
242 | - } |
|
243 | - |
|
244 | - } |
|
245 | - |
|
246 | - return $url; |
|
247 | - } |
|
248 | - |
|
249 | - /** |
|
250 | - * Register the database settings with WordPress. |
|
251 | - */ |
|
252 | - public function register_settings() { |
|
253 | - register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' ); |
|
254 | - } |
|
255 | - |
|
256 | - /** |
|
257 | - * Add the WordPress settings menu item. |
|
258 | - * @since 1.0.10 Calling function name direct will fail theme check so we don't. |
|
259 | - */ |
|
260 | - public function menu_item() { |
|
261 | - $menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme |
|
262 | - call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array( |
|
263 | - $this, |
|
264 | - 'settings_page' |
|
265 | - ) ); |
|
266 | - } |
|
267 | - |
|
268 | - /** |
|
269 | - * Get the current Font Awesome output settings. |
|
270 | - * |
|
271 | - * @return array The array of settings. |
|
272 | - */ |
|
273 | - public function get_settings() { |
|
274 | - |
|
275 | - $db_settings = get_option( 'wp-font-awesome-settings' ); |
|
276 | - |
|
277 | - $defaults = array( |
|
278 | - 'type' => 'CSS', // type to use, CSS or JS or KIT |
|
279 | - 'version' => '', // latest |
|
280 | - 'enqueue' => '', // front and backend |
|
281 | - 'shims' => '1', // default on for now, @todo maybe change to off in 2020 |
|
282 | - 'js-pseudo' => '0', // if the pseudo elements flag should be set (CPU intensive) |
|
283 | - 'dequeue' => '0', // if we should try to remove other versions added by other plugins/themes |
|
284 | - 'pro' => '0', // if pro CDN url should be used |
|
285 | - 'kit-url' => '', // the kit url |
|
286 | - ); |
|
287 | - |
|
288 | - $settings = wp_parse_args( $db_settings, $defaults ); |
|
289 | - |
|
290 | - /** |
|
291 | - * Filter the Font Awesome settings. |
|
292 | - * |
|
293 | - * @todo if we add this filer people might use it and then it defeates the purpose of this class :/ |
|
294 | - */ |
|
295 | - return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults ); |
|
296 | - } |
|
297 | - |
|
298 | - |
|
299 | - /** |
|
300 | - * The settings page html output. |
|
301 | - */ |
|
302 | - public function settings_page() { |
|
303 | - if ( ! current_user_can( 'manage_options' ) ) { |
|
304 | - wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) ); |
|
305 | - } |
|
306 | - |
|
307 | - // a hidden way to force the update of the verison number vai api instead of waiting the 48 hours |
|
308 | - if ( isset( $_REQUEST['force-version-check'] ) ) { |
|
309 | - $this->get_latest_version( $force_api = true ); |
|
310 | - } |
|
311 | - ?> |
|
24 | + /** |
|
25 | + * A Class to be able to change settings for Font Awesome. |
|
26 | + * |
|
27 | + * Class WP_Font_Awesome_Settings |
|
28 | + * @since 1.0.10 Now able to pass wp.org theme check. |
|
29 | + * @since 1.0.11 Font Awesome Pro now supported. |
|
30 | + * @since 1.0.11 Font Awesome Kits now supported. |
|
31 | + * @ver 1.0.11 |
|
32 | + * @todo decide how to implement textdomain |
|
33 | + */ |
|
34 | + class WP_Font_Awesome_Settings { |
|
35 | + |
|
36 | + /** |
|
37 | + * Class version version. |
|
38 | + * |
|
39 | + * @var string |
|
40 | + */ |
|
41 | + public $version = '1.0.11'; |
|
42 | + |
|
43 | + /** |
|
44 | + * Class textdomain. |
|
45 | + * |
|
46 | + * @var string |
|
47 | + */ |
|
48 | + public $textdomain = 'font-awesome-settings'; |
|
49 | + |
|
50 | + /** |
|
51 | + * Latest version of Font Awesome at time of publish published. |
|
52 | + * |
|
53 | + * @var string |
|
54 | + */ |
|
55 | + public $latest = "5.8.2"; |
|
56 | + |
|
57 | + /** |
|
58 | + * The title. |
|
59 | + * |
|
60 | + * @var string |
|
61 | + */ |
|
62 | + public $name = 'Font Awesome'; |
|
63 | + |
|
64 | + /** |
|
65 | + * Holds the settings values. |
|
66 | + * |
|
67 | + * @var array |
|
68 | + */ |
|
69 | + private $settings; |
|
70 | + |
|
71 | + /** |
|
72 | + * WP_Font_Awesome_Settings instance. |
|
73 | + * |
|
74 | + * @access private |
|
75 | + * @since 1.0.0 |
|
76 | + * @var WP_Font_Awesome_Settings There can be only one! |
|
77 | + */ |
|
78 | + private static $instance = null; |
|
79 | + |
|
80 | + /** |
|
81 | + * Main WP_Font_Awesome_Settings Instance. |
|
82 | + * |
|
83 | + * Ensures only one instance of WP_Font_Awesome_Settings is loaded or can be loaded. |
|
84 | + * |
|
85 | + * @since 1.0.0 |
|
86 | + * @static |
|
87 | + * @return WP_Font_Awesome_Settings - Main instance. |
|
88 | + */ |
|
89 | + public static function instance() { |
|
90 | + if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) { |
|
91 | + self::$instance = new WP_Font_Awesome_Settings; |
|
92 | + |
|
93 | + add_action( 'init', array( self::$instance, 'init' ) ); // set settings |
|
94 | + |
|
95 | + if ( is_admin() ) { |
|
96 | + add_action( 'admin_menu', array( self::$instance, 'menu_item' ) ); |
|
97 | + add_action( 'admin_init', array( self::$instance, 'register_settings' ) ); |
|
98 | + } |
|
99 | + |
|
100 | + do_action( 'wp_font_awesome_settings_loaded' ); |
|
101 | + } |
|
102 | + |
|
103 | + return self::$instance; |
|
104 | + } |
|
105 | + |
|
106 | + /** |
|
107 | + * Initiate the settings and add the required action hooks. |
|
108 | + * |
|
109 | + * @since 1.0.8 Settings name wrong - FIXED |
|
110 | + */ |
|
111 | + public function init() { |
|
112 | + $this->settings = $this->get_settings(); |
|
113 | + |
|
114 | + if ( $this->settings['type'] == 'CSS' ) { |
|
115 | + |
|
116 | + if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) { |
|
117 | + add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 ); |
|
118 | + } |
|
119 | + |
|
120 | + if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) { |
|
121 | + add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 ); |
|
122 | + } |
|
123 | + |
|
124 | + } else { |
|
125 | + |
|
126 | + if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) { |
|
127 | + add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 ); |
|
128 | + } |
|
129 | + |
|
130 | + if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) { |
|
131 | + add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 ); |
|
132 | + } |
|
133 | + } |
|
134 | + |
|
135 | + // remove font awesome if set to do so |
|
136 | + if ( $this->settings['dequeue'] == '1' ) { |
|
137 | + add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 ); |
|
138 | + } |
|
139 | + |
|
140 | + } |
|
141 | + |
|
142 | + /** |
|
143 | + * Adds the Font Awesome styles. |
|
144 | + */ |
|
145 | + public function enqueue_style() { |
|
146 | + // build url |
|
147 | + $url = $this->get_url(); |
|
148 | + |
|
149 | + wp_deregister_style( 'font-awesome' ); // deregister in case its already there |
|
150 | + wp_register_style( 'font-awesome', $url, array(), null ); |
|
151 | + wp_enqueue_style( 'font-awesome' ); |
|
152 | + |
|
153 | + if ( $this->settings['shims'] ) { |
|
154 | + $url = $this->get_url( true ); |
|
155 | + wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there |
|
156 | + wp_register_style( 'font-awesome-shims', $url, array(), null ); |
|
157 | + wp_enqueue_style( 'font-awesome-shims' ); |
|
158 | + } |
|
159 | + } |
|
160 | + |
|
161 | + /** |
|
162 | + * Adds the Font Awesome JS. |
|
163 | + */ |
|
164 | + public function enqueue_scripts() { |
|
165 | + // build url |
|
166 | + $url = $this->get_url(); |
|
167 | + |
|
168 | + $deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script'; |
|
169 | + call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there |
|
170 | + wp_register_script( 'font-awesome', $url, array(), null ); |
|
171 | + wp_enqueue_script( 'font-awesome' ); |
|
172 | + |
|
173 | + if ( $this->settings['shims'] ) { |
|
174 | + $url = $this->get_url( true ); |
|
175 | + call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there |
|
176 | + wp_register_script( 'font-awesome-shims', $url, array(), null ); |
|
177 | + wp_enqueue_script( 'font-awesome-shims' ); |
|
178 | + } |
|
179 | + } |
|
180 | + |
|
181 | + /** |
|
182 | + * Get the url of the Font Awesome files. |
|
183 | + * |
|
184 | + * @param bool $shims If this is a shim file or not. |
|
185 | + * |
|
186 | + * @return string The url to the file. |
|
187 | + */ |
|
188 | + public function get_url( $shims = false ) { |
|
189 | + $script = $shims ? 'v4-shims' : 'all'; |
|
190 | + $sub = $this->settings['pro'] ? 'pro' : 'use'; |
|
191 | + $type = $this->settings['type']; |
|
192 | + $version = $this->settings['version']; |
|
193 | + $kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : ''; |
|
194 | + $url = ''; |
|
195 | + |
|
196 | + if ( $type == 'KIT' && $kit_url ) { |
|
197 | + if ( $shims ) { |
|
198 | + // if its a kit then we don't add shims here |
|
199 | + return ''; |
|
200 | + } |
|
201 | + $url .= $kit_url; // CDN |
|
202 | + $url .= "?wpfas=true"; // set our var so our version is not removed |
|
203 | + } else { |
|
204 | + $url .= "https://$sub.fontawesome.com/releases/"; // CDN |
|
205 | + $url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version |
|
206 | + $url .= $type == 'CSS' ? 'css/' : 'js/'; // type |
|
207 | + $url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type |
|
208 | + $url .= "?wpfas=true"; // set our var so our version is not removed |
|
209 | + } |
|
210 | + |
|
211 | + return $url; |
|
212 | + } |
|
213 | + |
|
214 | + /** |
|
215 | + * Try and remove any other versions of Font Awesome added by other plugins/themes. |
|
216 | + * |
|
217 | + * Uses the clean_url filter to try and remove any other Font Awesome files added, it can also add pseudo-elements flag for the JS version. |
|
218 | + * |
|
219 | + * @param $url |
|
220 | + * @param $original_url |
|
221 | + * @param $_context |
|
222 | + * |
|
223 | + * @return string The filtered url. |
|
224 | + */ |
|
225 | + public function remove_font_awesome( $url, $original_url, $_context ) { |
|
226 | + |
|
227 | + if ( $_context == 'display' |
|
228 | + && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false ) |
|
229 | + && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false ) |
|
230 | + ) {// it's a font-awesome-url (probably) |
|
231 | + |
|
232 | + if ( strstr( $url, "wpfas=true" ) !== false ) { |
|
233 | + if ( $this->settings['type'] == 'JS' ) { |
|
234 | + if ( $this->settings['js-pseudo'] ) { |
|
235 | + $url .= "' data-search-pseudo-elements defer='defer"; |
|
236 | + } else { |
|
237 | + $url .= "' defer='defer"; |
|
238 | + } |
|
239 | + } |
|
240 | + } else { |
|
241 | + $url = ''; // removing the url removes the file |
|
242 | + } |
|
243 | + |
|
244 | + } |
|
245 | + |
|
246 | + return $url; |
|
247 | + } |
|
248 | + |
|
249 | + /** |
|
250 | + * Register the database settings with WordPress. |
|
251 | + */ |
|
252 | + public function register_settings() { |
|
253 | + register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' ); |
|
254 | + } |
|
255 | + |
|
256 | + /** |
|
257 | + * Add the WordPress settings menu item. |
|
258 | + * @since 1.0.10 Calling function name direct will fail theme check so we don't. |
|
259 | + */ |
|
260 | + public function menu_item() { |
|
261 | + $menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme |
|
262 | + call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array( |
|
263 | + $this, |
|
264 | + 'settings_page' |
|
265 | + ) ); |
|
266 | + } |
|
267 | + |
|
268 | + /** |
|
269 | + * Get the current Font Awesome output settings. |
|
270 | + * |
|
271 | + * @return array The array of settings. |
|
272 | + */ |
|
273 | + public function get_settings() { |
|
274 | + |
|
275 | + $db_settings = get_option( 'wp-font-awesome-settings' ); |
|
276 | + |
|
277 | + $defaults = array( |
|
278 | + 'type' => 'CSS', // type to use, CSS or JS or KIT |
|
279 | + 'version' => '', // latest |
|
280 | + 'enqueue' => '', // front and backend |
|
281 | + 'shims' => '1', // default on for now, @todo maybe change to off in 2020 |
|
282 | + 'js-pseudo' => '0', // if the pseudo elements flag should be set (CPU intensive) |
|
283 | + 'dequeue' => '0', // if we should try to remove other versions added by other plugins/themes |
|
284 | + 'pro' => '0', // if pro CDN url should be used |
|
285 | + 'kit-url' => '', // the kit url |
|
286 | + ); |
|
287 | + |
|
288 | + $settings = wp_parse_args( $db_settings, $defaults ); |
|
289 | + |
|
290 | + /** |
|
291 | + * Filter the Font Awesome settings. |
|
292 | + * |
|
293 | + * @todo if we add this filer people might use it and then it defeates the purpose of this class :/ |
|
294 | + */ |
|
295 | + return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults ); |
|
296 | + } |
|
297 | + |
|
298 | + |
|
299 | + /** |
|
300 | + * The settings page html output. |
|
301 | + */ |
|
302 | + public function settings_page() { |
|
303 | + if ( ! current_user_can( 'manage_options' ) ) { |
|
304 | + wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) ); |
|
305 | + } |
|
306 | + |
|
307 | + // a hidden way to force the update of the verison number vai api instead of waiting the 48 hours |
|
308 | + if ( isset( $_REQUEST['force-version-check'] ) ) { |
|
309 | + $this->get_latest_version( $force_api = true ); |
|
310 | + } |
|
311 | + ?> |
|
312 | 312 | <style> |
313 | 313 | .wpfas-kit-show { |
314 | 314 | display: none; |
@@ -326,10 +326,10 @@ discard block |
||
326 | 326 | <h1><?php echo $this->name; ?></h1> |
327 | 327 | <form method="post" action="options.php"> |
328 | 328 | <?php |
329 | - settings_fields( 'wp-font-awesome-settings' ); |
|
330 | - do_settings_sections( 'wp-font-awesome-settings' ); |
|
331 | - $kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : ''; |
|
332 | - ?> |
|
329 | + settings_fields( 'wp-font-awesome-settings' ); |
|
330 | + do_settings_sections( 'wp-font-awesome-settings' ); |
|
331 | + $kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : ''; |
|
332 | + ?> |
|
333 | 333 | <table class="form-table wpfas-table-settings <?php echo esc_attr( $kit_set ); ?>"> |
334 | 334 | <tr valign="top"> |
335 | 335 | <th scope="row"><label |
@@ -355,12 +355,12 @@ discard block |
||
355 | 355 | value="<?php echo esc_attr( $this->settings['kit-url'] ); ?>" |
356 | 356 | placeholder="https://kit.fontawesome.com/123abc.js"/> |
357 | 357 | <span><?php |
358 | - echo sprintf( |
|
359 | - __( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ), |
|
360 | - '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>', |
|
361 | - '</a>' |
|
362 | - ); |
|
363 | - ?></span> |
|
358 | + echo sprintf( |
|
359 | + __( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ), |
|
360 | + '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>', |
|
361 | + '</a>' |
|
362 | + ); |
|
363 | + ?></span> |
|
364 | 364 | </td> |
365 | 365 | </tr> |
366 | 366 | |
@@ -420,14 +420,14 @@ discard block |
||
420 | 420 | <input type="checkbox" name="wp-font-awesome-settings[pro]" |
421 | 421 | value="1" <?php checked( $this->settings['pro'], '1' ); ?> id="wpfas-pro"/> |
422 | 422 | <span><?php |
423 | - echo sprintf( |
|
424 | - __( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ), |
|
425 | - '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>', |
|
426 | - '</a>', |
|
427 | - '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>', |
|
428 | - '</a>' |
|
429 | - ); |
|
430 | - ?></span> |
|
423 | + echo sprintf( |
|
424 | + __( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ), |
|
425 | + '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>', |
|
426 | + '</a>', |
|
427 | + '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>', |
|
428 | + '</a>' |
|
429 | + ); |
|
430 | + ?></span> |
|
431 | 431 | </td> |
432 | 432 | </tr> |
433 | 433 | |
@@ -470,88 +470,88 @@ discard block |
||
470 | 470 | |
471 | 471 | </table> |
472 | 472 | <?php |
473 | - submit_button(); |
|
474 | - ?> |
|
473 | + submit_button(); |
|
474 | + ?> |
|
475 | 475 | </form> |
476 | 476 | |
477 | 477 | <div id="wpfas-version"><?php echo $this->version; ?></div> |
478 | 478 | </div> |
479 | 479 | |
480 | 480 | <?php |
481 | - } |
|
482 | - |
|
483 | - /** |
|
484 | - * Check a version number is valid and if so return it or else return an empty string. |
|
485 | - * |
|
486 | - * @param $version string The version number to check. |
|
487 | - * |
|
488 | - * @since 1.0.6 |
|
489 | - * |
|
490 | - * @return string Either a valid version number or an empty string. |
|
491 | - */ |
|
492 | - public function validate_version_number( $version ) { |
|
493 | - |
|
494 | - if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) { |
|
495 | - // valid |
|
496 | - } else { |
|
497 | - $version = '';// not validated |
|
498 | - } |
|
499 | - |
|
500 | - return $version; |
|
501 | - } |
|
502 | - |
|
503 | - |
|
504 | - /** |
|
505 | - * Get the latest version of Font Awesome. |
|
506 | - * |
|
507 | - * We check for a cached bersion and if none we will check for a live version via API and then cache it for 48 hours. |
|
508 | - * |
|
509 | - * @since 1.0.7 |
|
510 | - * @return mixed|string The latest version number found. |
|
511 | - */ |
|
512 | - public function get_latest_version( $force_api = false ) { |
|
513 | - $latest_version = $this->latest; |
|
514 | - |
|
515 | - $cache = get_transient( 'wp-font-awesome-settings-version' ); |
|
516 | - |
|
517 | - if ( $cache === false || $force_api ) { // its not set |
|
518 | - $api_ver = $this->get_latest_version_from_api(); |
|
519 | - if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) { |
|
520 | - $latest_version = $api_ver; |
|
521 | - set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS ); |
|
522 | - } |
|
523 | - } elseif ( $this->validate_version_number( $cache ) ) { |
|
524 | - if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) { |
|
525 | - $latest_version = $cache; |
|
526 | - } |
|
527 | - } |
|
528 | - |
|
529 | - return $latest_version; |
|
530 | - } |
|
531 | - |
|
532 | - /** |
|
533 | - * Get the latest Font Awesome version from the github API. |
|
534 | - * |
|
535 | - * @since 1.0.7 |
|
536 | - * @return string The latest version number or `0` on API fail. |
|
537 | - */ |
|
538 | - public function get_latest_version_from_api() { |
|
539 | - $version = "0"; |
|
540 | - $response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" ); |
|
541 | - if ( ! is_wp_error( $response ) && is_array( $response ) ) { |
|
542 | - $api_response = json_decode( wp_remote_retrieve_body( $response ), true ); |
|
543 | - if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) { |
|
544 | - $version = $api_response['tag_name']; |
|
545 | - } |
|
546 | - } |
|
547 | - |
|
548 | - return $version; |
|
549 | - } |
|
550 | - |
|
551 | - } |
|
552 | - |
|
553 | - /** |
|
554 | - * Run the class if found. |
|
555 | - */ |
|
556 | - WP_Font_Awesome_Settings::instance(); |
|
481 | + } |
|
482 | + |
|
483 | + /** |
|
484 | + * Check a version number is valid and if so return it or else return an empty string. |
|
485 | + * |
|
486 | + * @param $version string The version number to check. |
|
487 | + * |
|
488 | + * @since 1.0.6 |
|
489 | + * |
|
490 | + * @return string Either a valid version number or an empty string. |
|
491 | + */ |
|
492 | + public function validate_version_number( $version ) { |
|
493 | + |
|
494 | + if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) { |
|
495 | + // valid |
|
496 | + } else { |
|
497 | + $version = '';// not validated |
|
498 | + } |
|
499 | + |
|
500 | + return $version; |
|
501 | + } |
|
502 | + |
|
503 | + |
|
504 | + /** |
|
505 | + * Get the latest version of Font Awesome. |
|
506 | + * |
|
507 | + * We check for a cached bersion and if none we will check for a live version via API and then cache it for 48 hours. |
|
508 | + * |
|
509 | + * @since 1.0.7 |
|
510 | + * @return mixed|string The latest version number found. |
|
511 | + */ |
|
512 | + public function get_latest_version( $force_api = false ) { |
|
513 | + $latest_version = $this->latest; |
|
514 | + |
|
515 | + $cache = get_transient( 'wp-font-awesome-settings-version' ); |
|
516 | + |
|
517 | + if ( $cache === false || $force_api ) { // its not set |
|
518 | + $api_ver = $this->get_latest_version_from_api(); |
|
519 | + if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) { |
|
520 | + $latest_version = $api_ver; |
|
521 | + set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS ); |
|
522 | + } |
|
523 | + } elseif ( $this->validate_version_number( $cache ) ) { |
|
524 | + if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) { |
|
525 | + $latest_version = $cache; |
|
526 | + } |
|
527 | + } |
|
528 | + |
|
529 | + return $latest_version; |
|
530 | + } |
|
531 | + |
|
532 | + /** |
|
533 | + * Get the latest Font Awesome version from the github API. |
|
534 | + * |
|
535 | + * @since 1.0.7 |
|
536 | + * @return string The latest version number or `0` on API fail. |
|
537 | + */ |
|
538 | + public function get_latest_version_from_api() { |
|
539 | + $version = "0"; |
|
540 | + $response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" ); |
|
541 | + if ( ! is_wp_error( $response ) && is_array( $response ) ) { |
|
542 | + $api_response = json_decode( wp_remote_retrieve_body( $response ), true ); |
|
543 | + if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) { |
|
544 | + $version = $api_response['tag_name']; |
|
545 | + } |
|
546 | + } |
|
547 | + |
|
548 | + return $version; |
|
549 | + } |
|
550 | + |
|
551 | + } |
|
552 | + |
|
553 | + /** |
|
554 | + * Run the class if found. |
|
555 | + */ |
|
556 | + WP_Font_Awesome_Settings::instance(); |
|
557 | 557 | } |
558 | 558 | \ No newline at end of file |
@@ -12,14 +12,14 @@ discard block |
||
12 | 12 | /** |
13 | 13 | * Bail if we are not in WP. |
14 | 14 | */ |
15 | -if ( ! defined( 'ABSPATH' ) ) { |
|
15 | +if (!defined('ABSPATH')) { |
|
16 | 16 | exit; |
17 | 17 | } |
18 | 18 | |
19 | 19 | /** |
20 | 20 | * Only add if the class does not already exist. |
21 | 21 | */ |
22 | -if ( ! class_exists( 'WP_Font_Awesome_Settings' ) ) { |
|
22 | +if (!class_exists('WP_Font_Awesome_Settings')) { |
|
23 | 23 | |
24 | 24 | /** |
25 | 25 | * A Class to be able to change settings for Font Awesome. |
@@ -87,17 +87,17 @@ discard block |
||
87 | 87 | * @return WP_Font_Awesome_Settings - Main instance. |
88 | 88 | */ |
89 | 89 | public static function instance() { |
90 | - if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) { |
|
90 | + if (!isset(self::$instance) && !(self::$instance instanceof WP_Font_Awesome_Settings)) { |
|
91 | 91 | self::$instance = new WP_Font_Awesome_Settings; |
92 | 92 | |
93 | - add_action( 'init', array( self::$instance, 'init' ) ); // set settings |
|
93 | + add_action('init', array(self::$instance, 'init')); // set settings |
|
94 | 94 | |
95 | - if ( is_admin() ) { |
|
96 | - add_action( 'admin_menu', array( self::$instance, 'menu_item' ) ); |
|
97 | - add_action( 'admin_init', array( self::$instance, 'register_settings' ) ); |
|
95 | + if (is_admin()) { |
|
96 | + add_action('admin_menu', array(self::$instance, 'menu_item')); |
|
97 | + add_action('admin_init', array(self::$instance, 'register_settings')); |
|
98 | 98 | } |
99 | 99 | |
100 | - do_action( 'wp_font_awesome_settings_loaded' ); |
|
100 | + do_action('wp_font_awesome_settings_loaded'); |
|
101 | 101 | } |
102 | 102 | |
103 | 103 | return self::$instance; |
@@ -111,30 +111,30 @@ discard block |
||
111 | 111 | public function init() { |
112 | 112 | $this->settings = $this->get_settings(); |
113 | 113 | |
114 | - if ( $this->settings['type'] == 'CSS' ) { |
|
114 | + if ($this->settings['type'] == 'CSS') { |
|
115 | 115 | |
116 | - if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) { |
|
117 | - add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 ); |
|
116 | + if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend') { |
|
117 | + add_action('wp_enqueue_scripts', array($this, 'enqueue_style'), 5000); |
|
118 | 118 | } |
119 | 119 | |
120 | - if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) { |
|
121 | - add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 ); |
|
120 | + if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend') { |
|
121 | + add_action('admin_enqueue_scripts', array($this, 'enqueue_style'), 5000); |
|
122 | 122 | } |
123 | 123 | |
124 | 124 | } else { |
125 | 125 | |
126 | - if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) { |
|
127 | - add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 ); |
|
126 | + if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend') { |
|
127 | + add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts'), 5000); |
|
128 | 128 | } |
129 | 129 | |
130 | - if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) { |
|
131 | - add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 ); |
|
130 | + if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend') { |
|
131 | + add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts'), 5000); |
|
132 | 132 | } |
133 | 133 | } |
134 | 134 | |
135 | 135 | // remove font awesome if set to do so |
136 | - if ( $this->settings['dequeue'] == '1' ) { |
|
137 | - add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 ); |
|
136 | + if ($this->settings['dequeue'] == '1') { |
|
137 | + add_action('clean_url', array($this, 'remove_font_awesome'), 5000, 3); |
|
138 | 138 | } |
139 | 139 | |
140 | 140 | } |
@@ -146,15 +146,15 @@ discard block |
||
146 | 146 | // build url |
147 | 147 | $url = $this->get_url(); |
148 | 148 | |
149 | - wp_deregister_style( 'font-awesome' ); // deregister in case its already there |
|
150 | - wp_register_style( 'font-awesome', $url, array(), null ); |
|
151 | - wp_enqueue_style( 'font-awesome' ); |
|
149 | + wp_deregister_style('font-awesome'); // deregister in case its already there |
|
150 | + wp_register_style('font-awesome', $url, array(), null); |
|
151 | + wp_enqueue_style('font-awesome'); |
|
152 | 152 | |
153 | - if ( $this->settings['shims'] ) { |
|
154 | - $url = $this->get_url( true ); |
|
155 | - wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there |
|
156 | - wp_register_style( 'font-awesome-shims', $url, array(), null ); |
|
157 | - wp_enqueue_style( 'font-awesome-shims' ); |
|
153 | + if ($this->settings['shims']) { |
|
154 | + $url = $this->get_url(true); |
|
155 | + wp_deregister_style('font-awesome-shims'); // deregister in case its already there |
|
156 | + wp_register_style('font-awesome-shims', $url, array(), null); |
|
157 | + wp_enqueue_style('font-awesome-shims'); |
|
158 | 158 | } |
159 | 159 | } |
160 | 160 | |
@@ -166,15 +166,15 @@ discard block |
||
166 | 166 | $url = $this->get_url(); |
167 | 167 | |
168 | 168 | $deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script'; |
169 | - call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there |
|
170 | - wp_register_script( 'font-awesome', $url, array(), null ); |
|
171 | - wp_enqueue_script( 'font-awesome' ); |
|
172 | - |
|
173 | - if ( $this->settings['shims'] ) { |
|
174 | - $url = $this->get_url( true ); |
|
175 | - call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there |
|
176 | - wp_register_script( 'font-awesome-shims', $url, array(), null ); |
|
177 | - wp_enqueue_script( 'font-awesome-shims' ); |
|
169 | + call_user_func($deregister_function, 'font-awesome'); // deregister in case its already there |
|
170 | + wp_register_script('font-awesome', $url, array(), null); |
|
171 | + wp_enqueue_script('font-awesome'); |
|
172 | + |
|
173 | + if ($this->settings['shims']) { |
|
174 | + $url = $this->get_url(true); |
|
175 | + call_user_func($deregister_function, 'font-awesome-shims'); // deregister in case its already there |
|
176 | + wp_register_script('font-awesome-shims', $url, array(), null); |
|
177 | + wp_enqueue_script('font-awesome-shims'); |
|
178 | 178 | } |
179 | 179 | } |
180 | 180 | |
@@ -185,16 +185,16 @@ discard block |
||
185 | 185 | * |
186 | 186 | * @return string The url to the file. |
187 | 187 | */ |
188 | - public function get_url( $shims = false ) { |
|
188 | + public function get_url($shims = false) { |
|
189 | 189 | $script = $shims ? 'v4-shims' : 'all'; |
190 | 190 | $sub = $this->settings['pro'] ? 'pro' : 'use'; |
191 | 191 | $type = $this->settings['type']; |
192 | 192 | $version = $this->settings['version']; |
193 | - $kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : ''; |
|
193 | + $kit_url = $this->settings['kit-url'] ? esc_url($this->settings['kit-url']) : ''; |
|
194 | 194 | $url = ''; |
195 | 195 | |
196 | - if ( $type == 'KIT' && $kit_url ) { |
|
197 | - if ( $shims ) { |
|
196 | + if ($type == 'KIT' && $kit_url) { |
|
197 | + if ($shims) { |
|
198 | 198 | // if its a kit then we don't add shims here |
199 | 199 | return ''; |
200 | 200 | } |
@@ -202,7 +202,7 @@ discard block |
||
202 | 202 | $url .= "?wpfas=true"; // set our var so our version is not removed |
203 | 203 | } else { |
204 | 204 | $url .= "https://$sub.fontawesome.com/releases/"; // CDN |
205 | - $url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version |
|
205 | + $url .= !empty($version) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version |
|
206 | 206 | $url .= $type == 'CSS' ? 'css/' : 'js/'; // type |
207 | 207 | $url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type |
208 | 208 | $url .= "?wpfas=true"; // set our var so our version is not removed |
@@ -222,16 +222,16 @@ discard block |
||
222 | 222 | * |
223 | 223 | * @return string The filtered url. |
224 | 224 | */ |
225 | - public function remove_font_awesome( $url, $original_url, $_context ) { |
|
225 | + public function remove_font_awesome($url, $original_url, $_context) { |
|
226 | 226 | |
227 | - if ( $_context == 'display' |
|
228 | - && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false ) |
|
229 | - && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false ) |
|
227 | + if ($_context == 'display' |
|
228 | + && (strstr($url, "fontawesome") !== false || strstr($url, "font-awesome") !== false) |
|
229 | + && (strstr($url, ".js") !== false || strstr($url, ".css") !== false) |
|
230 | 230 | ) {// it's a font-awesome-url (probably) |
231 | 231 | |
232 | - if ( strstr( $url, "wpfas=true" ) !== false ) { |
|
233 | - if ( $this->settings['type'] == 'JS' ) { |
|
234 | - if ( $this->settings['js-pseudo'] ) { |
|
232 | + if (strstr($url, "wpfas=true") !== false) { |
|
233 | + if ($this->settings['type'] == 'JS') { |
|
234 | + if ($this->settings['js-pseudo']) { |
|
235 | 235 | $url .= "' data-search-pseudo-elements defer='defer"; |
236 | 236 | } else { |
237 | 237 | $url .= "' defer='defer"; |
@@ -250,7 +250,7 @@ discard block |
||
250 | 250 | * Register the database settings with WordPress. |
251 | 251 | */ |
252 | 252 | public function register_settings() { |
253 | - register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' ); |
|
253 | + register_setting('wp-font-awesome-settings', 'wp-font-awesome-settings'); |
|
254 | 254 | } |
255 | 255 | |
256 | 256 | /** |
@@ -259,10 +259,10 @@ discard block |
||
259 | 259 | */ |
260 | 260 | public function menu_item() { |
261 | 261 | $menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme |
262 | - call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array( |
|
262 | + call_user_func($menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array( |
|
263 | 263 | $this, |
264 | 264 | 'settings_page' |
265 | - ) ); |
|
265 | + )); |
|
266 | 266 | } |
267 | 267 | |
268 | 268 | /** |
@@ -272,7 +272,7 @@ discard block |
||
272 | 272 | */ |
273 | 273 | public function get_settings() { |
274 | 274 | |
275 | - $db_settings = get_option( 'wp-font-awesome-settings' ); |
|
275 | + $db_settings = get_option('wp-font-awesome-settings'); |
|
276 | 276 | |
277 | 277 | $defaults = array( |
278 | 278 | 'type' => 'CSS', // type to use, CSS or JS or KIT |
@@ -285,14 +285,14 @@ discard block |
||
285 | 285 | 'kit-url' => '', // the kit url |
286 | 286 | ); |
287 | 287 | |
288 | - $settings = wp_parse_args( $db_settings, $defaults ); |
|
288 | + $settings = wp_parse_args($db_settings, $defaults); |
|
289 | 289 | |
290 | 290 | /** |
291 | 291 | * Filter the Font Awesome settings. |
292 | 292 | * |
293 | 293 | * @todo if we add this filer people might use it and then it defeates the purpose of this class :/ |
294 | 294 | */ |
295 | - return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults ); |
|
295 | + return $this->settings = apply_filters('wp-font-awesome-settings', $settings, $db_settings, $defaults); |
|
296 | 296 | } |
297 | 297 | |
298 | 298 | |
@@ -300,13 +300,13 @@ discard block |
||
300 | 300 | * The settings page html output. |
301 | 301 | */ |
302 | 302 | public function settings_page() { |
303 | - if ( ! current_user_can( 'manage_options' ) ) { |
|
304 | - wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) ); |
|
303 | + if (!current_user_can('manage_options')) { |
|
304 | + wp_die(__('You do not have sufficient permissions to access this page.', 'font-awesome-settings')); |
|
305 | 305 | } |
306 | 306 | |
307 | 307 | // a hidden way to force the update of the verison number vai api instead of waiting the 48 hours |
308 | - if ( isset( $_REQUEST['force-version-check'] ) ) { |
|
309 | - $this->get_latest_version( $force_api = true ); |
|
308 | + if (isset($_REQUEST['force-version-check'])) { |
|
309 | + $this->get_latest_version($force_api = true); |
|
310 | 310 | } |
311 | 311 | ?> |
312 | 312 | <style> |
@@ -326,37 +326,37 @@ discard block |
||
326 | 326 | <h1><?php echo $this->name; ?></h1> |
327 | 327 | <form method="post" action="options.php"> |
328 | 328 | <?php |
329 | - settings_fields( 'wp-font-awesome-settings' ); |
|
330 | - do_settings_sections( 'wp-font-awesome-settings' ); |
|
329 | + settings_fields('wp-font-awesome-settings'); |
|
330 | + do_settings_sections('wp-font-awesome-settings'); |
|
331 | 331 | $kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : ''; |
332 | 332 | ?> |
333 | - <table class="form-table wpfas-table-settings <?php echo esc_attr( $kit_set ); ?>"> |
|
333 | + <table class="form-table wpfas-table-settings <?php echo esc_attr($kit_set); ?>"> |
|
334 | 334 | <tr valign="top"> |
335 | 335 | <th scope="row"><label |
336 | - for="wpfas-type"><?php _e( 'Type', 'font-awesome-settings' ); ?></label></th> |
|
336 | + for="wpfas-type"><?php _e('Type', 'font-awesome-settings'); ?></label></th> |
|
337 | 337 | <td> |
338 | 338 | <select name="wp-font-awesome-settings[type]" id="wpfas-type" |
339 | 339 | onchange="if(this.value=='KIT'){jQuery('.wpfas-table-settings').addClass('wpfas-kit-set');}else{jQuery('.wpfas-table-settings').removeClass('wpfas-kit-set');}"> |
340 | 340 | <option |
341 | - value="CSS" <?php selected( $this->settings['type'], 'CSS' ); ?>><?php _e( 'CSS (default)', 'font-awesome-settings' ); ?></option> |
|
342 | - <option value="JS" <?php selected( $this->settings['type'], 'JS' ); ?>>JS</option> |
|
341 | + value="CSS" <?php selected($this->settings['type'], 'CSS'); ?>><?php _e('CSS (default)', 'font-awesome-settings'); ?></option> |
|
342 | + <option value="JS" <?php selected($this->settings['type'], 'JS'); ?>>JS</option> |
|
343 | 343 | <option |
344 | - value="KIT" <?php selected( $this->settings['type'], 'KIT' ); ?>><?php _e( 'Kits (settings managed on fontawesome.com)', 'font-awesome-settings' ); ?></option> |
|
344 | + value="KIT" <?php selected($this->settings['type'], 'KIT'); ?>><?php _e('Kits (settings managed on fontawesome.com)', 'font-awesome-settings'); ?></option> |
|
345 | 345 | </select> |
346 | 346 | </td> |
347 | 347 | </tr> |
348 | 348 | |
349 | 349 | <tr valign="top" class="wpfas-kit-show"> |
350 | 350 | <th scope="row"><label |
351 | - for="wpfas-kit-url"><?php _e( 'Kit URL', 'font-awesome-settings' ); ?></label></th> |
|
351 | + for="wpfas-kit-url"><?php _e('Kit URL', 'font-awesome-settings'); ?></label></th> |
|
352 | 352 | <td> |
353 | 353 | <input class="regular-text" id="wpfas-kit-url" type="url" |
354 | 354 | name="wp-font-awesome-settings[kit-url]" |
355 | - value="<?php echo esc_attr( $this->settings['kit-url'] ); ?>" |
|
355 | + value="<?php echo esc_attr($this->settings['kit-url']); ?>" |
|
356 | 356 | placeholder="https://kit.fontawesome.com/123abc.js"/> |
357 | 357 | <span><?php |
358 | 358 | echo sprintf( |
359 | - __( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ), |
|
359 | + __('Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings'), |
|
360 | 360 | '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>', |
361 | 361 | '</a>' |
362 | 362 | ); |
@@ -366,31 +366,31 @@ discard block |
||
366 | 366 | |
367 | 367 | <tr valign="top" class="wpfas-kit-hide"> |
368 | 368 | <th scope="row"><label |
369 | - for="wpfas-version"><?php _e( 'Version', 'font-awesome-settings' ); ?></label></th> |
|
369 | + for="wpfas-version"><?php _e('Version', 'font-awesome-settings'); ?></label></th> |
|
370 | 370 | <td> |
371 | 371 | <select name="wp-font-awesome-settings[version]" id="wpfas-version"> |
372 | 372 | <option |
373 | - value="" <?php selected( $this->settings['version'], '' ); ?>><?php echo sprintf( __( 'Latest - %s (default)', 'font-awesome-settings' ), $this->get_latest_version() ); ?> |
|
373 | + value="" <?php selected($this->settings['version'], ''); ?>><?php echo sprintf(__('Latest - %s (default)', 'font-awesome-settings'), $this->get_latest_version()); ?> |
|
374 | 374 | </option> |
375 | - <option value="5.6.0" <?php selected( $this->settings['version'], '5.6.0' ); ?>> |
|
375 | + <option value="5.6.0" <?php selected($this->settings['version'], '5.6.0'); ?>> |
|
376 | 376 | 5.6.0 |
377 | 377 | </option> |
378 | - <option value="5.5.0" <?php selected( $this->settings['version'], '5.5.0' ); ?>> |
|
378 | + <option value="5.5.0" <?php selected($this->settings['version'], '5.5.0'); ?>> |
|
379 | 379 | 5.5.0 |
380 | 380 | </option> |
381 | - <option value="5.4.0" <?php selected( $this->settings['version'], '5.4.0' ); ?>> |
|
381 | + <option value="5.4.0" <?php selected($this->settings['version'], '5.4.0'); ?>> |
|
382 | 382 | 5.4.0 |
383 | 383 | </option> |
384 | - <option value="5.3.0" <?php selected( $this->settings['version'], '5.3.0' ); ?>> |
|
384 | + <option value="5.3.0" <?php selected($this->settings['version'], '5.3.0'); ?>> |
|
385 | 385 | 5.3.0 |
386 | 386 | </option> |
387 | - <option value="5.2.0" <?php selected( $this->settings['version'], '5.2.0' ); ?>> |
|
387 | + <option value="5.2.0" <?php selected($this->settings['version'], '5.2.0'); ?>> |
|
388 | 388 | 5.2.0 |
389 | 389 | </option> |
390 | - <option value="5.1.0" <?php selected( $this->settings['version'], '5.1.0' ); ?>> |
|
390 | + <option value="5.1.0" <?php selected($this->settings['version'], '5.1.0'); ?>> |
|
391 | 391 | 5.1.0 |
392 | 392 | </option> |
393 | - <option value="4.7.0" <?php selected( $this->settings['version'], '4.7.0' ); ?>> |
|
393 | + <option value="4.7.0" <?php selected($this->settings['version'], '4.7.0'); ?>> |
|
394 | 394 | 4.7.1 (CSS only) |
395 | 395 | </option> |
396 | 396 | </select> |
@@ -399,29 +399,29 @@ discard block |
||
399 | 399 | |
400 | 400 | <tr valign="top"> |
401 | 401 | <th scope="row"><label |
402 | - for="wpfas-enqueue"><?php _e( 'Enqueue', 'font-awesome-settings' ); ?></label></th> |
|
402 | + for="wpfas-enqueue"><?php _e('Enqueue', 'font-awesome-settings'); ?></label></th> |
|
403 | 403 | <td> |
404 | 404 | <select name="wp-font-awesome-settings[enqueue]" id="wpfas-enqueue"> |
405 | 405 | <option |
406 | - value="" <?php selected( $this->settings['enqueue'], '' ); ?>><?php _e( 'Frontend + Backend (default)', 'font-awesome-settings' ); ?></option> |
|
406 | + value="" <?php selected($this->settings['enqueue'], ''); ?>><?php _e('Frontend + Backend (default)', 'font-awesome-settings'); ?></option> |
|
407 | 407 | <option |
408 | - value="frontend" <?php selected( $this->settings['enqueue'], 'frontend' ); ?>><?php _e( 'Frontend', 'font-awesome-settings' ); ?></option> |
|
408 | + value="frontend" <?php selected($this->settings['enqueue'], 'frontend'); ?>><?php _e('Frontend', 'font-awesome-settings'); ?></option> |
|
409 | 409 | <option |
410 | - value="backend" <?php selected( $this->settings['enqueue'], 'backend' ); ?>><?php _e( 'Backend', 'font-awesome-settings' ); ?></option> |
|
410 | + value="backend" <?php selected($this->settings['enqueue'], 'backend'); ?>><?php _e('Backend', 'font-awesome-settings'); ?></option> |
|
411 | 411 | </select> |
412 | 412 | </td> |
413 | 413 | </tr> |
414 | 414 | |
415 | 415 | <tr valign="top" class="wpfas-kit-hide"> |
416 | 416 | <th scope="row"><label |
417 | - for="wpfas-pro"><?php _e( 'Enable pro', 'font-awesome-settings' ); ?></label></th> |
|
417 | + for="wpfas-pro"><?php _e('Enable pro', 'font-awesome-settings'); ?></label></th> |
|
418 | 418 | <td> |
419 | 419 | <input type="hidden" name="wp-font-awesome-settings[pro]" value="0"/> |
420 | 420 | <input type="checkbox" name="wp-font-awesome-settings[pro]" |
421 | - value="1" <?php checked( $this->settings['pro'], '1' ); ?> id="wpfas-pro"/> |
|
421 | + value="1" <?php checked($this->settings['pro'], '1'); ?> id="wpfas-pro"/> |
|
422 | 422 | <span><?php |
423 | 423 | echo sprintf( |
424 | - __( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ), |
|
424 | + __('Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings'), |
|
425 | 425 | '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>', |
426 | 426 | '</a>', |
427 | 427 | '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>', |
@@ -433,38 +433,38 @@ discard block |
||
433 | 433 | |
434 | 434 | <tr valign="top" class="wpfas-kit-hide"> |
435 | 435 | <th scope="row"><label |
436 | - for="wpfas-shims"><?php _e( 'Enable v4 shims compatibility', 'font-awesome-settings' ); ?></label> |
|
436 | + for="wpfas-shims"><?php _e('Enable v4 shims compatibility', 'font-awesome-settings'); ?></label> |
|
437 | 437 | </th> |
438 | 438 | <td> |
439 | 439 | <input type="hidden" name="wp-font-awesome-settings[shims]" value="0"/> |
440 | 440 | <input type="checkbox" name="wp-font-awesome-settings[shims]" |
441 | - value="1" <?php checked( $this->settings['shims'], '1' ); ?> id="wpfas-shims"/> |
|
442 | - <span><?php _e( 'This enables v4 classes to work with v5, sort of like a band-aid until everyone has updated everything to v5.', 'font-awesome-settings' ); ?></span> |
|
441 | + value="1" <?php checked($this->settings['shims'], '1'); ?> id="wpfas-shims"/> |
|
442 | + <span><?php _e('This enables v4 classes to work with v5, sort of like a band-aid until everyone has updated everything to v5.', 'font-awesome-settings'); ?></span> |
|
443 | 443 | </td> |
444 | 444 | </tr> |
445 | 445 | |
446 | 446 | <tr valign="top" class="wpfas-kit-hide"> |
447 | 447 | <th scope="row"><label |
448 | - for="wpfas-js-pseudo"><?php _e( 'Enable JS pseudo elements (not recommended)', 'font-awesome-settings' ); ?></label> |
|
448 | + for="wpfas-js-pseudo"><?php _e('Enable JS pseudo elements (not recommended)', 'font-awesome-settings'); ?></label> |
|
449 | 449 | </th> |
450 | 450 | <td> |
451 | 451 | <input type="hidden" name="wp-font-awesome-settings[js-pseudo]" value="0"/> |
452 | 452 | <input type="checkbox" name="wp-font-awesome-settings[js-pseudo]" |
453 | - value="1" <?php checked( $this->settings['js-pseudo'], '1' ); ?> |
|
453 | + value="1" <?php checked($this->settings['js-pseudo'], '1'); ?> |
|
454 | 454 | id="wpfas-js-pseudo"/> |
455 | - <span><?php _e( 'Used only with the JS version, this will make pseudo-elements work but can be CPU intensive on some sites.', 'font-awesome-settings' ); ?></span> |
|
455 | + <span><?php _e('Used only with the JS version, this will make pseudo-elements work but can be CPU intensive on some sites.', 'font-awesome-settings'); ?></span> |
|
456 | 456 | </td> |
457 | 457 | </tr> |
458 | 458 | |
459 | 459 | <tr valign="top"> |
460 | 460 | <th scope="row"><label |
461 | - for="wpfas-dequeue"><?php _e( 'Dequeue', 'font-awesome-settings' ); ?></label></th> |
|
461 | + for="wpfas-dequeue"><?php _e('Dequeue', 'font-awesome-settings'); ?></label></th> |
|
462 | 462 | <td> |
463 | 463 | <input type="hidden" name="wp-font-awesome-settings[dequeue]" value="0"/> |
464 | 464 | <input type="checkbox" name="wp-font-awesome-settings[dequeue]" |
465 | - value="1" <?php checked( $this->settings['dequeue'], '1' ); ?> |
|
465 | + value="1" <?php checked($this->settings['dequeue'], '1'); ?> |
|
466 | 466 | id="wpfas-dequeue"/> |
467 | - <span><?php _e( 'This will try to dequeue any other Font Awesome versions loaded by other sources if they are added with `font-awesome` or `fontawesome` in the name.', 'font-awesome-settings' ); ?></span> |
|
467 | + <span><?php _e('This will try to dequeue any other Font Awesome versions loaded by other sources if they are added with `font-awesome` or `fontawesome` in the name.', 'font-awesome-settings'); ?></span> |
|
468 | 468 | </td> |
469 | 469 | </tr> |
470 | 470 | |
@@ -489,12 +489,12 @@ discard block |
||
489 | 489 | * |
490 | 490 | * @return string Either a valid version number or an empty string. |
491 | 491 | */ |
492 | - public function validate_version_number( $version ) { |
|
492 | + public function validate_version_number($version) { |
|
493 | 493 | |
494 | - if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) { |
|
494 | + if (version_compare($version, '0.0.1', '>=') >= 0) { |
|
495 | 495 | // valid |
496 | 496 | } else { |
497 | - $version = '';// not validated |
|
497 | + $version = ''; // not validated |
|
498 | 498 | } |
499 | 499 | |
500 | 500 | return $version; |
@@ -509,19 +509,19 @@ discard block |
||
509 | 509 | * @since 1.0.7 |
510 | 510 | * @return mixed|string The latest version number found. |
511 | 511 | */ |
512 | - public function get_latest_version( $force_api = false ) { |
|
512 | + public function get_latest_version($force_api = false) { |
|
513 | 513 | $latest_version = $this->latest; |
514 | 514 | |
515 | - $cache = get_transient( 'wp-font-awesome-settings-version' ); |
|
515 | + $cache = get_transient('wp-font-awesome-settings-version'); |
|
516 | 516 | |
517 | - if ( $cache === false || $force_api ) { // its not set |
|
517 | + if ($cache === false || $force_api) { // its not set |
|
518 | 518 | $api_ver = $this->get_latest_version_from_api(); |
519 | - if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) { |
|
519 | + if (version_compare($api_ver, $this->latest, '>=') >= 0) { |
|
520 | 520 | $latest_version = $api_ver; |
521 | - set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS ); |
|
521 | + set_transient('wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS); |
|
522 | 522 | } |
523 | - } elseif ( $this->validate_version_number( $cache ) ) { |
|
524 | - if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) { |
|
523 | + } elseif ($this->validate_version_number($cache)) { |
|
524 | + if (version_compare($cache, $this->latest, '>=') >= 0) { |
|
525 | 525 | $latest_version = $cache; |
526 | 526 | } |
527 | 527 | } |
@@ -537,10 +537,10 @@ discard block |
||
537 | 537 | */ |
538 | 538 | public function get_latest_version_from_api() { |
539 | 539 | $version = "0"; |
540 | - $response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" ); |
|
541 | - if ( ! is_wp_error( $response ) && is_array( $response ) ) { |
|
542 | - $api_response = json_decode( wp_remote_retrieve_body( $response ), true ); |
|
543 | - if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) { |
|
540 | + $response = wp_remote_get("https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest"); |
|
541 | + if (!is_wp_error($response) && is_array($response)) { |
|
542 | + $api_response = json_decode(wp_remote_retrieve_body($response), true); |
|
543 | + if (isset($api_response['tag_name']) && version_compare($api_response['tag_name'], $this->latest, '>=') >= 0 && empty($api_response['prerelease'])) { |
|
544 | 544 | $version = $api_response['tag_name']; |
545 | 545 | } |
546 | 546 | } |
@@ -3,7 +3,7 @@ discard block |
||
3 | 3 | * Abstract privacy class. |
4 | 4 | */ |
5 | 5 | |
6 | -defined( 'ABSPATH' ) || exit; |
|
6 | +defined('ABSPATH') || exit; |
|
7 | 7 | |
8 | 8 | /** |
9 | 9 | * Abstract class that is intended to be extended by |
@@ -38,7 +38,7 @@ discard block |
||
38 | 38 | * |
39 | 39 | * @param string $name Plugin identifier. |
40 | 40 | */ |
41 | - public function __construct( $name = '' ) { |
|
41 | + public function __construct($name = '') { |
|
42 | 42 | $this->name = $name; |
43 | 43 | $this->init(); |
44 | 44 | } |
@@ -47,22 +47,22 @@ discard block |
||
47 | 47 | * Hook in events. |
48 | 48 | */ |
49 | 49 | protected function init() { |
50 | - add_action( 'admin_init', array( $this, 'add_privacy_message' ) ); |
|
50 | + add_action('admin_init', array($this, 'add_privacy_message')); |
|
51 | 51 | // Register data exporters |
52 | - add_filter( 'wp_privacy_personal_data_exporters', array( $this, 'register_exporters' ), 10 ); |
|
52 | + add_filter('wp_privacy_personal_data_exporters', array($this, 'register_exporters'), 10); |
|
53 | 53 | // Register data erasers |
54 | - add_filter( 'wp_privacy_personal_data_erasers', array( $this, 'register_erasers' ) ); |
|
54 | + add_filter('wp_privacy_personal_data_erasers', array($this, 'register_erasers')); |
|
55 | 55 | } |
56 | 56 | |
57 | 57 | /** |
58 | 58 | * Adds the privacy message on invoicing privacy page. |
59 | 59 | */ |
60 | 60 | public function add_privacy_message() { |
61 | - if ( function_exists( 'wp_add_privacy_policy_content' ) ) { |
|
61 | + if (function_exists('wp_add_privacy_policy_content')) { |
|
62 | 62 | $content = $this->get_privacy_message(); |
63 | 63 | |
64 | - if ( $content ) { |
|
65 | - wp_add_privacy_policy_content( $this->name, $this->get_privacy_message() ); |
|
64 | + if ($content) { |
|
65 | + wp_add_privacy_policy_content($this->name, $this->get_privacy_message()); |
|
66 | 66 | } |
67 | 67 | } |
68 | 68 | } |
@@ -83,9 +83,9 @@ discard block |
||
83 | 83 | * @param array $exporters List of exporter callbacks. |
84 | 84 | * @return array |
85 | 85 | */ |
86 | - public function register_exporters( $exporters = array() ) { |
|
87 | - foreach ( $this->exporters as $id => $exporter ) { |
|
88 | - $exporters[ $id ] = $exporter; |
|
86 | + public function register_exporters($exporters = array()) { |
|
87 | + foreach ($this->exporters as $id => $exporter) { |
|
88 | + $exporters[$id] = $exporter; |
|
89 | 89 | } |
90 | 90 | return $exporters; |
91 | 91 | } |
@@ -96,9 +96,9 @@ discard block |
||
96 | 96 | * @param array $erasers List of eraser callbacks. |
97 | 97 | * @return array |
98 | 98 | */ |
99 | - public function register_erasers( $erasers = array() ) { |
|
100 | - foreach ( $this->erasers as $id => $eraser ) { |
|
101 | - $erasers[ $id ] = $eraser; |
|
99 | + public function register_erasers($erasers = array()) { |
|
100 | + foreach ($this->erasers as $id => $eraser) { |
|
101 | + $erasers[$id] = $eraser; |
|
102 | 102 | } |
103 | 103 | return $erasers; |
104 | 104 | } |
@@ -112,8 +112,8 @@ discard block |
||
112 | 112 | * |
113 | 113 | * @return array |
114 | 114 | */ |
115 | - public function add_exporter( $id, $name, $callback ) { |
|
116 | - $this->exporters[ $id ] = array( |
|
115 | + public function add_exporter($id, $name, $callback) { |
|
116 | + $this->exporters[$id] = array( |
|
117 | 117 | 'exporter_friendly_name' => $name, |
118 | 118 | 'callback' => $callback, |
119 | 119 | ); |
@@ -129,8 +129,8 @@ discard block |
||
129 | 129 | * |
130 | 130 | * @return array |
131 | 131 | */ |
132 | - public function add_eraser( $id, $name, $callback ) { |
|
133 | - $this->erasers[ $id ] = array( |
|
132 | + public function add_eraser($id, $name, $callback) { |
|
133 | + $this->erasers[$id] = array( |
|
134 | 134 | 'eraser_friendly_name' => $name, |
135 | 135 | 'callback' => $callback, |
136 | 136 | ); |
@@ -4,7 +4,7 @@ discard block |
||
4 | 4 | */ |
5 | 5 | |
6 | 6 | if ( ! defined( 'ABSPATH' ) ) { |
7 | - exit; |
|
7 | + exit; |
|
8 | 8 | } |
9 | 9 | |
10 | 10 | /** |
@@ -12,112 +12,112 @@ discard block |
||
12 | 12 | */ |
13 | 13 | abstract class WPInv_Session { |
14 | 14 | |
15 | - /** |
|
16 | - * Customer ID. |
|
17 | - * |
|
18 | - * @var int $_customer_id Customer ID. |
|
19 | - */ |
|
20 | - protected $_customer_id; |
|
15 | + /** |
|
16 | + * Customer ID. |
|
17 | + * |
|
18 | + * @var int $_customer_id Customer ID. |
|
19 | + */ |
|
20 | + protected $_customer_id; |
|
21 | 21 | |
22 | - /** |
|
23 | - * Session Data. |
|
24 | - * |
|
25 | - * @var array $_data Data array. |
|
26 | - */ |
|
27 | - protected $_data = array(); |
|
22 | + /** |
|
23 | + * Session Data. |
|
24 | + * |
|
25 | + * @var array $_data Data array. |
|
26 | + */ |
|
27 | + protected $_data = array(); |
|
28 | 28 | |
29 | - /** |
|
30 | - * Dirty when the session needs saving. |
|
31 | - * |
|
32 | - * @var bool $_dirty When something changes |
|
33 | - */ |
|
34 | - protected $_dirty = false; |
|
29 | + /** |
|
30 | + * Dirty when the session needs saving. |
|
31 | + * |
|
32 | + * @var bool $_dirty When something changes |
|
33 | + */ |
|
34 | + protected $_dirty = false; |
|
35 | 35 | |
36 | - /** |
|
37 | - * Init hooks and session data. Extended by child classes. |
|
38 | - * |
|
39 | - * @since 3.3.0 |
|
40 | - */ |
|
41 | - public function init() {} |
|
36 | + /** |
|
37 | + * Init hooks and session data. Extended by child classes. |
|
38 | + * |
|
39 | + * @since 3.3.0 |
|
40 | + */ |
|
41 | + public function init() {} |
|
42 | 42 | |
43 | - /** |
|
44 | - * Cleanup session data. Extended by child classes. |
|
45 | - */ |
|
46 | - public function cleanup_sessions() {} |
|
43 | + /** |
|
44 | + * Cleanup session data. Extended by child classes. |
|
45 | + */ |
|
46 | + public function cleanup_sessions() {} |
|
47 | 47 | |
48 | - /** |
|
49 | - * Magic get method. |
|
50 | - * |
|
51 | - * @param mixed $key Key to get. |
|
52 | - * @return mixed |
|
53 | - */ |
|
54 | - public function __get( $key ) { |
|
55 | - return $this->get( $key ); |
|
56 | - } |
|
48 | + /** |
|
49 | + * Magic get method. |
|
50 | + * |
|
51 | + * @param mixed $key Key to get. |
|
52 | + * @return mixed |
|
53 | + */ |
|
54 | + public function __get( $key ) { |
|
55 | + return $this->get( $key ); |
|
56 | + } |
|
57 | 57 | |
58 | - /** |
|
59 | - * Magic set method. |
|
60 | - * |
|
61 | - * @param mixed $key Key to set. |
|
62 | - * @param mixed $value Value to set. |
|
63 | - */ |
|
64 | - public function __set( $key, $value ) { |
|
65 | - $this->set( $key, $value ); |
|
66 | - } |
|
58 | + /** |
|
59 | + * Magic set method. |
|
60 | + * |
|
61 | + * @param mixed $key Key to set. |
|
62 | + * @param mixed $value Value to set. |
|
63 | + */ |
|
64 | + public function __set( $key, $value ) { |
|
65 | + $this->set( $key, $value ); |
|
66 | + } |
|
67 | 67 | |
68 | - /** |
|
69 | - * Magic isset method. |
|
70 | - * |
|
71 | - * @param mixed $key Key to check. |
|
72 | - * @return bool |
|
73 | - */ |
|
74 | - public function __isset( $key ) { |
|
75 | - return isset( $this->_data[ sanitize_title( $key ) ] ); |
|
76 | - } |
|
68 | + /** |
|
69 | + * Magic isset method. |
|
70 | + * |
|
71 | + * @param mixed $key Key to check. |
|
72 | + * @return bool |
|
73 | + */ |
|
74 | + public function __isset( $key ) { |
|
75 | + return isset( $this->_data[ sanitize_title( $key ) ] ); |
|
76 | + } |
|
77 | 77 | |
78 | - /** |
|
79 | - * Magic unset method. |
|
80 | - * |
|
81 | - * @param mixed $key Key to unset. |
|
82 | - */ |
|
83 | - public function __unset( $key ) { |
|
84 | - if ( isset( $this->_data[ $key ] ) ) { |
|
85 | - unset( $this->_data[ $key ] ); |
|
86 | - $this->_dirty = true; |
|
87 | - } |
|
88 | - } |
|
78 | + /** |
|
79 | + * Magic unset method. |
|
80 | + * |
|
81 | + * @param mixed $key Key to unset. |
|
82 | + */ |
|
83 | + public function __unset( $key ) { |
|
84 | + if ( isset( $this->_data[ $key ] ) ) { |
|
85 | + unset( $this->_data[ $key ] ); |
|
86 | + $this->_dirty = true; |
|
87 | + } |
|
88 | + } |
|
89 | 89 | |
90 | - /** |
|
91 | - * Get a session variable. |
|
92 | - * |
|
93 | - * @param string $key Key to get. |
|
94 | - * @param mixed $default used if the session variable isn't set. |
|
95 | - * @return array|string value of session variable |
|
96 | - */ |
|
97 | - public function get( $key, $default = null ) { |
|
98 | - $key = sanitize_key( $key ); |
|
99 | - return isset( $this->_data[ $key ] ) ? maybe_unserialize( $this->_data[ $key ] ) : $default; |
|
100 | - } |
|
90 | + /** |
|
91 | + * Get a session variable. |
|
92 | + * |
|
93 | + * @param string $key Key to get. |
|
94 | + * @param mixed $default used if the session variable isn't set. |
|
95 | + * @return array|string value of session variable |
|
96 | + */ |
|
97 | + public function get( $key, $default = null ) { |
|
98 | + $key = sanitize_key( $key ); |
|
99 | + return isset( $this->_data[ $key ] ) ? maybe_unserialize( $this->_data[ $key ] ) : $default; |
|
100 | + } |
|
101 | 101 | |
102 | - /** |
|
103 | - * Set a session variable. |
|
104 | - * |
|
105 | - * @param string $key Key to set. |
|
106 | - * @param mixed $value Value to set. |
|
107 | - */ |
|
108 | - public function set( $key, $value ) { |
|
109 | - if ( $value !== $this->get( $key ) ) { |
|
110 | - $this->_data[ sanitize_key( $key ) ] = maybe_serialize( $value ); |
|
111 | - $this->_dirty = true; |
|
112 | - } |
|
113 | - } |
|
102 | + /** |
|
103 | + * Set a session variable. |
|
104 | + * |
|
105 | + * @param string $key Key to set. |
|
106 | + * @param mixed $value Value to set. |
|
107 | + */ |
|
108 | + public function set( $key, $value ) { |
|
109 | + if ( $value !== $this->get( $key ) ) { |
|
110 | + $this->_data[ sanitize_key( $key ) ] = maybe_serialize( $value ); |
|
111 | + $this->_dirty = true; |
|
112 | + } |
|
113 | + } |
|
114 | 114 | |
115 | - /** |
|
116 | - * Get customer ID. |
|
117 | - * |
|
118 | - * @return int |
|
119 | - */ |
|
120 | - public function get_customer_id() { |
|
121 | - return $this->_customer_id; |
|
122 | - } |
|
115 | + /** |
|
116 | + * Get customer ID. |
|
117 | + * |
|
118 | + * @return int |
|
119 | + */ |
|
120 | + public function get_customer_id() { |
|
121 | + return $this->_customer_id; |
|
122 | + } |
|
123 | 123 | } |
@@ -3,7 +3,7 @@ discard block |
||
3 | 3 | * Handle data for the current customer session |
4 | 4 | */ |
5 | 5 | |
6 | -if ( ! defined( 'ABSPATH' ) ) { |
|
6 | +if (!defined('ABSPATH')) { |
|
7 | 7 | exit; |
8 | 8 | } |
9 | 9 | |
@@ -51,8 +51,8 @@ discard block |
||
51 | 51 | * @param mixed $key Key to get. |
52 | 52 | * @return mixed |
53 | 53 | */ |
54 | - public function __get( $key ) { |
|
55 | - return $this->get( $key ); |
|
54 | + public function __get($key) { |
|
55 | + return $this->get($key); |
|
56 | 56 | } |
57 | 57 | |
58 | 58 | /** |
@@ -61,8 +61,8 @@ discard block |
||
61 | 61 | * @param mixed $key Key to set. |
62 | 62 | * @param mixed $value Value to set. |
63 | 63 | */ |
64 | - public function __set( $key, $value ) { |
|
65 | - $this->set( $key, $value ); |
|
64 | + public function __set($key, $value) { |
|
65 | + $this->set($key, $value); |
|
66 | 66 | } |
67 | 67 | |
68 | 68 | /** |
@@ -71,8 +71,8 @@ discard block |
||
71 | 71 | * @param mixed $key Key to check. |
72 | 72 | * @return bool |
73 | 73 | */ |
74 | - public function __isset( $key ) { |
|
75 | - return isset( $this->_data[ sanitize_title( $key ) ] ); |
|
74 | + public function __isset($key) { |
|
75 | + return isset($this->_data[sanitize_title($key)]); |
|
76 | 76 | } |
77 | 77 | |
78 | 78 | /** |
@@ -80,9 +80,9 @@ discard block |
||
80 | 80 | * |
81 | 81 | * @param mixed $key Key to unset. |
82 | 82 | */ |
83 | - public function __unset( $key ) { |
|
84 | - if ( isset( $this->_data[ $key ] ) ) { |
|
85 | - unset( $this->_data[ $key ] ); |
|
83 | + public function __unset($key) { |
|
84 | + if (isset($this->_data[$key])) { |
|
85 | + unset($this->_data[$key]); |
|
86 | 86 | $this->_dirty = true; |
87 | 87 | } |
88 | 88 | } |
@@ -94,9 +94,9 @@ discard block |
||
94 | 94 | * @param mixed $default used if the session variable isn't set. |
95 | 95 | * @return array|string value of session variable |
96 | 96 | */ |
97 | - public function get( $key, $default = null ) { |
|
98 | - $key = sanitize_key( $key ); |
|
99 | - return isset( $this->_data[ $key ] ) ? maybe_unserialize( $this->_data[ $key ] ) : $default; |
|
97 | + public function get($key, $default = null) { |
|
98 | + $key = sanitize_key($key); |
|
99 | + return isset($this->_data[$key]) ? maybe_unserialize($this->_data[$key]) : $default; |
|
100 | 100 | } |
101 | 101 | |
102 | 102 | /** |
@@ -105,9 +105,9 @@ discard block |
||
105 | 105 | * @param string $key Key to set. |
106 | 106 | * @param mixed $value Value to set. |
107 | 107 | */ |
108 | - public function set( $key, $value ) { |
|
109 | - if ( $value !== $this->get( $key ) ) { |
|
110 | - $this->_data[ sanitize_key( $key ) ] = maybe_serialize( $value ); |
|
108 | + public function set($key, $value) { |
|
109 | + if ($value !== $this->get($key)) { |
|
110 | + $this->_data[sanitize_key($key)] = maybe_serialize($value); |
|
111 | 111 | $this->_dirty = true; |
112 | 112 | } |
113 | 113 | } |
@@ -159,8 +159,9 @@ discard block |
||
159 | 159 | |
160 | 160 | // Setup possible parts |
161 | 161 | $templates = array(); |
162 | - if ( isset( $name ) ) |
|
163 | - $templates[] = $slug . '-' . $name . '.php'; |
|
162 | + if ( isset( $name ) ) { |
|
163 | + $templates[] = $slug . '-' . $name . '.php'; |
|
164 | + } |
|
164 | 165 | $templates[] = $slug . '.php'; |
165 | 166 | |
166 | 167 | // Allow template parts to be filtered |
@@ -178,8 +179,9 @@ discard block |
||
178 | 179 | foreach ( (array)$template_names as $template_name ) { |
179 | 180 | |
180 | 181 | // Continue if template is empty |
181 | - if ( empty( $template_name ) ) |
|
182 | - continue; |
|
182 | + if ( empty( $template_name ) ) { |
|
183 | + continue; |
|
184 | + } |
|
183 | 185 | |
184 | 186 | // Trim off any slashes from the template name |
185 | 187 | $template_name = ltrim( $template_name, '/' ); |
@@ -198,8 +200,9 @@ discard block |
||
198 | 200 | } |
199 | 201 | } |
200 | 202 | |
201 | - if ( ( true == $load ) && ! empty( $located ) ) |
|
202 | - load_template( $located, $require_once ); |
|
203 | + if ( ( true == $load ) && ! empty( $located ) ) { |
|
204 | + load_template( $located, $require_once ); |
|
205 | + } |
|
203 | 206 | |
204 | 207 | return $located; |
205 | 208 | } |
@@ -281,8 +284,9 @@ discard block |
||
281 | 284 | function wpinv_html_dropdown( $name = 'wpinv_discounts', $selected = 0, $status = '' ) { |
282 | 285 | $args = array( 'nopaging' => true ); |
283 | 286 | |
284 | - if ( ! empty( $status ) ) |
|
285 | - $args['post_status'] = $status; |
|
287 | + if ( ! empty( $status ) ) { |
|
288 | + $args['post_status'] = $status; |
|
289 | + } |
|
286 | 290 | |
287 | 291 | $discounts = wpinv_get_discounts( $args ); |
288 | 292 | $options = array(); |
@@ -1424,9 +1428,10 @@ discard block |
||
1424 | 1428 | add_action( 'wpinv_cart_empty', 'wpinv_empty_checkout_cart' ); |
1425 | 1429 | |
1426 | 1430 | function wpinv_update_cart_button() { |
1427 | - if ( !wpinv_item_quantities_enabled() ) |
|
1428 | - return; |
|
1429 | -?> |
|
1431 | + if ( !wpinv_item_quantities_enabled() ) { |
|
1432 | + return; |
|
1433 | + } |
|
1434 | + ?> |
|
1430 | 1435 | <input type="submit" name="wpinv_update_cart_submit" class="wpinv-submit wpinv-no-js button" value="<?php _e( 'Update Cart', 'invoicing' ); ?>"/> |
1431 | 1436 | <input type="hidden" name="wpi_action" value="update_cart"/> |
1432 | 1437 | <?php |
@@ -103,29 +103,29 @@ discard block |
||
103 | 103 | |
104 | 104 | function wpinv_get_template( $template_name, $args = array(), $template_path = '', $default_path = '' ) { |
105 | 105 | if ( ! empty( $args ) && is_array( $args ) ) { |
106 | - extract( $args ); |
|
107 | - } |
|
106 | + extract( $args ); |
|
107 | + } |
|
108 | 108 | |
109 | - $located = wpinv_locate_template( $template_name, $template_path, $default_path ); |
|
110 | - // Allow 3rd party plugin filter template file from their plugin. |
|
111 | - $located = apply_filters( 'wpinv_get_template', $located, $template_name, $args, $template_path, $default_path ); |
|
109 | + $located = wpinv_locate_template( $template_name, $template_path, $default_path ); |
|
110 | + // Allow 3rd party plugin filter template file from their plugin. |
|
111 | + $located = apply_filters( 'wpinv_get_template', $located, $template_name, $args, $template_path, $default_path ); |
|
112 | 112 | |
113 | - if ( ! file_exists( $located ) ) { |
|
113 | + if ( ! file_exists( $located ) ) { |
|
114 | 114 | _doing_it_wrong( __FUNCTION__, sprintf( '<code>%s</code> does not exist.', $located ), '2.1' ); |
115 | - return; |
|
116 | - } |
|
115 | + return; |
|
116 | + } |
|
117 | 117 | |
118 | - do_action( 'wpinv_before_template_part', $template_name, $template_path, $located, $args ); |
|
118 | + do_action( 'wpinv_before_template_part', $template_name, $template_path, $located, $args ); |
|
119 | 119 | |
120 | - include( $located ); |
|
120 | + include( $located ); |
|
121 | 121 | |
122 | - do_action( 'wpinv_after_template_part', $template_name, $template_path, $located, $args ); |
|
122 | + do_action( 'wpinv_after_template_part', $template_name, $template_path, $located, $args ); |
|
123 | 123 | } |
124 | 124 | |
125 | 125 | function wpinv_get_template_html( $template_name, $args = array(), $template_path = '', $default_path = '' ) { |
126 | - ob_start(); |
|
127 | - wpinv_get_template( $template_name, $args, $template_path, $default_path ); |
|
128 | - return ob_get_clean(); |
|
126 | + ob_start(); |
|
127 | + wpinv_get_template( $template_name, $args, $template_path, $default_path ); |
|
128 | + return ob_get_clean(); |
|
129 | 129 | } |
130 | 130 | |
131 | 131 | function wpinv_locate_template( $template_name, $template_path = '', $default_path = '' ) { |
@@ -155,126 +155,126 @@ discard block |
||
155 | 155 | } |
156 | 156 | |
157 | 157 | function wpinv_get_template_part( $slug, $name = null, $load = true ) { |
158 | - do_action( 'get_template_part_' . $slug, $slug, $name ); |
|
158 | + do_action( 'get_template_part_' . $slug, $slug, $name ); |
|
159 | 159 | |
160 | - // Setup possible parts |
|
161 | - $templates = array(); |
|
162 | - if ( isset( $name ) ) |
|
163 | - $templates[] = $slug . '-' . $name . '.php'; |
|
164 | - $templates[] = $slug . '.php'; |
|
160 | + // Setup possible parts |
|
161 | + $templates = array(); |
|
162 | + if ( isset( $name ) ) |
|
163 | + $templates[] = $slug . '-' . $name . '.php'; |
|
164 | + $templates[] = $slug . '.php'; |
|
165 | 165 | |
166 | - // Allow template parts to be filtered |
|
167 | - $templates = apply_filters( 'wpinv_get_template_part', $templates, $slug, $name ); |
|
166 | + // Allow template parts to be filtered |
|
167 | + $templates = apply_filters( 'wpinv_get_template_part', $templates, $slug, $name ); |
|
168 | 168 | |
169 | - // Return the part that is found |
|
170 | - return wpinv_locate_tmpl( $templates, $load, false ); |
|
169 | + // Return the part that is found |
|
170 | + return wpinv_locate_tmpl( $templates, $load, false ); |
|
171 | 171 | } |
172 | 172 | |
173 | 173 | function wpinv_locate_tmpl( $template_names, $load = false, $require_once = true ) { |
174 | - // No file found yet |
|
175 | - $located = false; |
|
174 | + // No file found yet |
|
175 | + $located = false; |
|
176 | 176 | |
177 | - // Try to find a template file |
|
178 | - foreach ( (array)$template_names as $template_name ) { |
|
177 | + // Try to find a template file |
|
178 | + foreach ( (array)$template_names as $template_name ) { |
|
179 | 179 | |
180 | - // Continue if template is empty |
|
181 | - if ( empty( $template_name ) ) |
|
182 | - continue; |
|
180 | + // Continue if template is empty |
|
181 | + if ( empty( $template_name ) ) |
|
182 | + continue; |
|
183 | 183 | |
184 | - // Trim off any slashes from the template name |
|
185 | - $template_name = ltrim( $template_name, '/' ); |
|
184 | + // Trim off any slashes from the template name |
|
185 | + $template_name = ltrim( $template_name, '/' ); |
|
186 | 186 | |
187 | - // try locating this template file by looping through the template paths |
|
188 | - foreach( wpinv_get_theme_template_paths() as $template_path ) { |
|
187 | + // try locating this template file by looping through the template paths |
|
188 | + foreach( wpinv_get_theme_template_paths() as $template_path ) { |
|
189 | 189 | |
190 | - if( file_exists( $template_path . $template_name ) ) { |
|
191 | - $located = $template_path . $template_name; |
|
192 | - break; |
|
193 | - } |
|
194 | - } |
|
190 | + if( file_exists( $template_path . $template_name ) ) { |
|
191 | + $located = $template_path . $template_name; |
|
192 | + break; |
|
193 | + } |
|
194 | + } |
|
195 | 195 | |
196 | - if( !empty( $located ) ) { |
|
197 | - break; |
|
198 | - } |
|
199 | - } |
|
196 | + if( !empty( $located ) ) { |
|
197 | + break; |
|
198 | + } |
|
199 | + } |
|
200 | 200 | |
201 | - if ( ( true == $load ) && ! empty( $located ) ) |
|
202 | - load_template( $located, $require_once ); |
|
201 | + if ( ( true == $load ) && ! empty( $located ) ) |
|
202 | + load_template( $located, $require_once ); |
|
203 | 203 | |
204 | - return $located; |
|
204 | + return $located; |
|
205 | 205 | } |
206 | 206 | |
207 | 207 | function wpinv_get_theme_template_paths() { |
208 | - $template_dir = wpinv_get_theme_template_dir_name(); |
|
208 | + $template_dir = wpinv_get_theme_template_dir_name(); |
|
209 | 209 | |
210 | - $file_paths = array( |
|
211 | - 1 => trailingslashit( get_stylesheet_directory() ) . $template_dir, |
|
212 | - 10 => trailingslashit( get_template_directory() ) . $template_dir, |
|
213 | - 100 => wpinv_get_templates_dir() |
|
214 | - ); |
|
210 | + $file_paths = array( |
|
211 | + 1 => trailingslashit( get_stylesheet_directory() ) . $template_dir, |
|
212 | + 10 => trailingslashit( get_template_directory() ) . $template_dir, |
|
213 | + 100 => wpinv_get_templates_dir() |
|
214 | + ); |
|
215 | 215 | |
216 | - $file_paths = apply_filters( 'wpinv_template_paths', $file_paths ); |
|
216 | + $file_paths = apply_filters( 'wpinv_template_paths', $file_paths ); |
|
217 | 217 | |
218 | - // sort the file paths based on priority |
|
219 | - ksort( $file_paths, SORT_NUMERIC ); |
|
218 | + // sort the file paths based on priority |
|
219 | + ksort( $file_paths, SORT_NUMERIC ); |
|
220 | 220 | |
221 | - return array_map( 'trailingslashit', $file_paths ); |
|
221 | + return array_map( 'trailingslashit', $file_paths ); |
|
222 | 222 | } |
223 | 223 | |
224 | 224 | function wpinv_get_theme_template_dir_name() { |
225 | - return trailingslashit( apply_filters( 'wpinv_templates_dir', 'invoicing' ) ); |
|
225 | + return trailingslashit( apply_filters( 'wpinv_templates_dir', 'invoicing' ) ); |
|
226 | 226 | } |
227 | 227 | |
228 | 228 | function wpinv_checkout_meta_tags() { |
229 | 229 | |
230 | - $pages = array(); |
|
231 | - $pages[] = wpinv_get_option( 'success_page' ); |
|
232 | - $pages[] = wpinv_get_option( 'failure_page' ); |
|
233 | - $pages[] = wpinv_get_option( 'invoice_history_page' ); |
|
234 | - $pages[] = wpinv_get_option( 'invoice_subscription_page' ); |
|
230 | + $pages = array(); |
|
231 | + $pages[] = wpinv_get_option( 'success_page' ); |
|
232 | + $pages[] = wpinv_get_option( 'failure_page' ); |
|
233 | + $pages[] = wpinv_get_option( 'invoice_history_page' ); |
|
234 | + $pages[] = wpinv_get_option( 'invoice_subscription_page' ); |
|
235 | 235 | |
236 | - if( !wpinv_is_checkout() && !is_page( $pages ) ) { |
|
237 | - return; |
|
238 | - } |
|
236 | + if( !wpinv_is_checkout() && !is_page( $pages ) ) { |
|
237 | + return; |
|
238 | + } |
|
239 | 239 | |
240 | - echo '<meta name="robots" content="noindex,nofollow" />' . "\n"; |
|
240 | + echo '<meta name="robots" content="noindex,nofollow" />' . "\n"; |
|
241 | 241 | } |
242 | 242 | add_action( 'wp_head', 'wpinv_checkout_meta_tags' ); |
243 | 243 | |
244 | 244 | function wpinv_add_body_classes( $class ) { |
245 | - $classes = (array)$class; |
|
245 | + $classes = (array)$class; |
|
246 | 246 | |
247 | - if( wpinv_is_checkout() ) { |
|
248 | - $classes[] = 'wpinv-checkout'; |
|
249 | - $classes[] = 'wpinv-page'; |
|
250 | - } |
|
247 | + if( wpinv_is_checkout() ) { |
|
248 | + $classes[] = 'wpinv-checkout'; |
|
249 | + $classes[] = 'wpinv-page'; |
|
250 | + } |
|
251 | 251 | |
252 | - if( wpinv_is_success_page() ) { |
|
253 | - $classes[] = 'wpinv-success'; |
|
254 | - $classes[] = 'wpinv-page'; |
|
255 | - } |
|
252 | + if( wpinv_is_success_page() ) { |
|
253 | + $classes[] = 'wpinv-success'; |
|
254 | + $classes[] = 'wpinv-page'; |
|
255 | + } |
|
256 | 256 | |
257 | - if( wpinv_is_failed_transaction_page() ) { |
|
258 | - $classes[] = 'wpinv-failed-transaction'; |
|
259 | - $classes[] = 'wpinv-page'; |
|
260 | - } |
|
257 | + if( wpinv_is_failed_transaction_page() ) { |
|
258 | + $classes[] = 'wpinv-failed-transaction'; |
|
259 | + $classes[] = 'wpinv-page'; |
|
260 | + } |
|
261 | 261 | |
262 | - if( wpinv_is_invoice_history_page() ) { |
|
263 | - $classes[] = 'wpinv-history'; |
|
264 | - $classes[] = 'wpinv-page'; |
|
265 | - } |
|
262 | + if( wpinv_is_invoice_history_page() ) { |
|
263 | + $classes[] = 'wpinv-history'; |
|
264 | + $classes[] = 'wpinv-page'; |
|
265 | + } |
|
266 | 266 | |
267 | - if( wpinv_is_subscriptions_history_page() ) { |
|
268 | - $classes[] = 'wpinv-subscription'; |
|
269 | - $classes[] = 'wpinv-page'; |
|
270 | - } |
|
267 | + if( wpinv_is_subscriptions_history_page() ) { |
|
268 | + $classes[] = 'wpinv-subscription'; |
|
269 | + $classes[] = 'wpinv-page'; |
|
270 | + } |
|
271 | 271 | |
272 | - if( wpinv_is_test_mode() ) { |
|
273 | - $classes[] = 'wpinv-test-mode'; |
|
274 | - $classes[] = 'wpinv-page'; |
|
275 | - } |
|
272 | + if( wpinv_is_test_mode() ) { |
|
273 | + $classes[] = 'wpinv-test-mode'; |
|
274 | + $classes[] = 'wpinv-page'; |
|
275 | + } |
|
276 | 276 | |
277 | - return array_unique( $classes ); |
|
277 | + return array_unique( $classes ); |
|
278 | 278 | } |
279 | 279 | add_filter( 'body_class', 'wpinv_add_body_classes' ); |
280 | 280 | |
@@ -947,21 +947,21 @@ discard block |
||
947 | 947 | |
948 | 948 | $formatted_address = str_ireplace( array_keys( $replacements ), $replacements, $format ); |
949 | 949 | |
950 | - // Remove unavailable tags. |
|
950 | + // Remove unavailable tags. |
|
951 | 951 | $formatted_address = preg_replace( "/\{\{\w+\}\}/", '', $formatted_address ); |
952 | 952 | |
953 | 953 | // Clean up white space. |
954 | - $formatted_address = preg_replace( '/ +/', ' ', trim( $formatted_address ) ); |
|
954 | + $formatted_address = preg_replace( '/ +/', ' ', trim( $formatted_address ) ); |
|
955 | 955 | $formatted_address = preg_replace( '/\n\n+/', "\n", $formatted_address ); |
956 | 956 | |
957 | 957 | // Break newlines apart and remove empty lines/trim commas and white space. |
958 | - $formatted_address = array_filter( array_map( 'wpinv_trim_formatted_address_line', explode( "\n", $formatted_address ) ) ); |
|
958 | + $formatted_address = array_filter( array_map( 'wpinv_trim_formatted_address_line', explode( "\n", $formatted_address ) ) ); |
|
959 | 959 | |
960 | 960 | // Add html breaks. |
961 | - $formatted_address = implode( $separator, $formatted_address ); |
|
961 | + $formatted_address = implode( $separator, $formatted_address ); |
|
962 | 962 | |
963 | - // We're done! |
|
964 | - return $formatted_address; |
|
963 | + // We're done! |
|
964 | + return $formatted_address; |
|
965 | 965 | |
966 | 966 | } |
967 | 967 | |
@@ -1048,7 +1048,7 @@ discard block |
||
1048 | 1048 | |
1049 | 1049 | $item = $item_id ? new WPInv_Item( $item_id ) : NULL; |
1050 | 1050 | $summary = ''; |
1051 | - $item_name = ''; |
|
1051 | + $item_name = ''; |
|
1052 | 1052 | $cols = 3; |
1053 | 1053 | if ( !empty($item) ) { |
1054 | 1054 | $item_name = $item->get_name(); |
@@ -1426,7 +1426,7 @@ discard block |
||
1426 | 1426 | $form_action = esc_url( wpinv_get_checkout_uri() ); |
1427 | 1427 | |
1428 | 1428 | ob_start(); |
1429 | - do_action( 'wpinv_checkout_content_before' ); |
|
1429 | + do_action( 'wpinv_checkout_content_before' ); |
|
1430 | 1430 | echo '<div id="wpinv_checkout_wrap">'; |
1431 | 1431 | |
1432 | 1432 | if ( wpinv_get_cart_contents() || wpinv_cart_has_fees() ) { |
@@ -1449,7 +1449,7 @@ discard block |
||
1449 | 1449 | do_action( 'wpinv_cart_empty' ); |
1450 | 1450 | } |
1451 | 1451 | echo '</div><!--end #wpinv_checkout_wrap-->'; |
1452 | - do_action( 'wpinv_checkout_content_after' ); |
|
1452 | + do_action( 'wpinv_checkout_content_after' ); |
|
1453 | 1453 | return ob_get_clean(); |
1454 | 1454 | } |
1455 | 1455 | |
@@ -1476,7 +1476,7 @@ discard block |
||
1476 | 1476 | add_action( 'wpinv_checkout_cart', 'wpinv_checkout_cart', 10 ); |
1477 | 1477 | |
1478 | 1478 | function wpinv_empty_cart_message() { |
1479 | - return apply_filters( 'wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __( 'Your cart is empty.', 'invoicing' ) . '</span>' ); |
|
1479 | + return apply_filters( 'wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __( 'Your cart is empty.', 'invoicing' ) . '</span>' ); |
|
1480 | 1480 | } |
1481 | 1481 | |
1482 | 1482 | /** |
@@ -1486,7 +1486,7 @@ discard block |
||
1486 | 1486 | * @return void |
1487 | 1487 | */ |
1488 | 1488 | function wpinv_empty_checkout_cart() { |
1489 | - echo wpinv_empty_cart_message(); |
|
1489 | + echo wpinv_empty_cart_message(); |
|
1490 | 1490 | } |
1491 | 1491 | add_action( 'wpinv_cart_empty', 'wpinv_empty_checkout_cart' ); |
1492 | 1492 |
@@ -7,91 +7,91 @@ 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 | -if ( !is_admin() ) { |
|
15 | - add_filter( 'template_include', 'wpinv_template', 10, 1 ); |
|
16 | - add_action( 'wpinv_invoice_print_body_start', 'wpinv_display_invoice_top_bar' ); |
|
17 | - add_action( 'wpinv_invoice_top_bar_left', 'wpinv_invoice_display_left_actions' ); |
|
18 | - add_action( 'wpinv_invoice_top_bar_right', 'wpinv_invoice_display_right_actions' ); |
|
14 | +if (!is_admin()) { |
|
15 | + add_filter('template_include', 'wpinv_template', 10, 1); |
|
16 | + add_action('wpinv_invoice_print_body_start', 'wpinv_display_invoice_top_bar'); |
|
17 | + add_action('wpinv_invoice_top_bar_left', 'wpinv_invoice_display_left_actions'); |
|
18 | + add_action('wpinv_invoice_top_bar_right', 'wpinv_invoice_display_right_actions'); |
|
19 | 19 | } |
20 | 20 | |
21 | 21 | function wpinv_template_path() { |
22 | - return apply_filters( 'wpinv_template_path', wpinv_get_theme_template_dir_name() ); |
|
22 | + return apply_filters('wpinv_template_path', wpinv_get_theme_template_dir_name()); |
|
23 | 23 | } |
24 | 24 | |
25 | -function wpinv_display_invoice_top_bar( $invoice ) { |
|
26 | - if ( empty( $invoice ) ) { |
|
25 | +function wpinv_display_invoice_top_bar($invoice) { |
|
26 | + if (empty($invoice)) { |
|
27 | 27 | return; |
28 | 28 | } |
29 | 29 | ?> |
30 | 30 | <div class="row wpinv-top-bar no-print"> |
31 | 31 | <div class="container"> |
32 | 32 | <div class="col-xs-6"> |
33 | - <?php do_action( 'wpinv_invoice_top_bar_left', $invoice );?> |
|
33 | + <?php do_action('wpinv_invoice_top_bar_left', $invoice); ?> |
|
34 | 34 | </div> |
35 | 35 | <div class="col-xs-6 text-right"> |
36 | - <?php do_action( 'wpinv_invoice_top_bar_right', $invoice );?> |
|
36 | + <?php do_action('wpinv_invoice_top_bar_right', $invoice); ?> |
|
37 | 37 | </div> |
38 | 38 | </div> |
39 | 39 | </div> |
40 | 40 | <?php |
41 | 41 | } |
42 | 42 | |
43 | -function wpinv_invoice_display_left_actions( $invoice ) { |
|
44 | - if ( empty( $invoice ) ) { |
|
43 | +function wpinv_invoice_display_left_actions($invoice) { |
|
44 | + if (empty($invoice)) { |
|
45 | 45 | return; // Exit if invoice is not set. |
46 | 46 | } |
47 | 47 | |
48 | - if ( $invoice->post_type == 'wpi_invoice' ) { |
|
49 | - if ( $invoice->needs_payment() ) { |
|
50 | - ?> <a class="btn btn-success btn-sm" title="<?php esc_attr_e( 'Pay This Invoice', 'invoicing' ); ?>" href="<?php echo esc_url( $invoice->get_checkout_payment_url() ); ?>"><?php _e( 'Pay For Invoice', 'invoicing' ); ?></a><?php |
|
48 | + if ($invoice->post_type == 'wpi_invoice') { |
|
49 | + if ($invoice->needs_payment()) { |
|
50 | + ?> <a class="btn btn-success btn-sm" title="<?php esc_attr_e('Pay This Invoice', 'invoicing'); ?>" href="<?php echo esc_url($invoice->get_checkout_payment_url()); ?>"><?php _e('Pay For Invoice', 'invoicing'); ?></a><?php |
|
51 | 51 | } |
52 | 52 | } |
53 | 53 | do_action('wpinv_invoice_display_left_actions', $invoice); |
54 | 54 | } |
55 | 55 | |
56 | -function wpinv_invoice_display_right_actions( $invoice ) { |
|
57 | - if ( empty( $invoice ) ) { |
|
56 | +function wpinv_invoice_display_right_actions($invoice) { |
|
57 | + if (empty($invoice)) { |
|
58 | 58 | return; // Exit if invoice is not set. |
59 | 59 | } |
60 | 60 | |
61 | - if ( $invoice->post_type == 'wpi_invoice' ) { ?> |
|
62 | - <a class="btn btn-primary btn-sm btn-print-invoice" onclick="window.print();" href="javascript:void(0)"><?php _e( 'Print Invoice', 'invoicing' ); ?></a> |
|
63 | - <?php if ( is_user_logged_in() ) { ?> |
|
64 | - <a class="btn btn-warning btn-sm btn-invoice-history" href="<?php echo esc_url( wpinv_get_history_page_uri() ); ?>"><?php _e( 'Invoice History', 'invoicing' ); ?></a> |
|
61 | + if ($invoice->post_type == 'wpi_invoice') { ?> |
|
62 | + <a class="btn btn-primary btn-sm btn-print-invoice" onclick="window.print();" href="javascript:void(0)"><?php _e('Print Invoice', 'invoicing'); ?></a> |
|
63 | + <?php if (is_user_logged_in()) { ?> |
|
64 | + <a class="btn btn-warning btn-sm btn-invoice-history" href="<?php echo esc_url(wpinv_get_history_page_uri()); ?>"><?php _e('Invoice History', 'invoicing'); ?></a> |
|
65 | 65 | <?php } |
66 | 66 | } |
67 | 67 | do_action('wpinv_invoice_display_right_actions', $invoice); |
68 | 68 | } |
69 | 69 | |
70 | -function wpinv_before_invoice_content( $content ) { |
|
70 | +function wpinv_before_invoice_content($content) { |
|
71 | 71 | global $post; |
72 | 72 | |
73 | - if ( !empty( $post ) && $post->post_type == 'wpi_invoice' && is_singular( 'wpi_invoice' ) && is_main_query() ) { |
|
73 | + if (!empty($post) && $post->post_type == 'wpi_invoice' && is_singular('wpi_invoice') && is_main_query()) { |
|
74 | 74 | ob_start(); |
75 | - do_action( 'wpinv_before_invoice_content', $post->ID ); |
|
75 | + do_action('wpinv_before_invoice_content', $post->ID); |
|
76 | 76 | $content = ob_get_clean() . $content; |
77 | 77 | } |
78 | 78 | |
79 | 79 | return $content; |
80 | 80 | } |
81 | -add_filter( 'the_content', 'wpinv_before_invoice_content' ); |
|
81 | +add_filter('the_content', 'wpinv_before_invoice_content'); |
|
82 | 82 | |
83 | -function wpinv_after_invoice_content( $content ) { |
|
83 | +function wpinv_after_invoice_content($content) { |
|
84 | 84 | global $post; |
85 | 85 | |
86 | - if ( !empty( $post ) && $post->post_type == 'wpi_invoice' && is_singular( 'wpi_invoice' ) && is_main_query() ) { |
|
86 | + if (!empty($post) && $post->post_type == 'wpi_invoice' && is_singular('wpi_invoice') && is_main_query()) { |
|
87 | 87 | ob_start(); |
88 | - do_action( 'wpinv_after_invoice_content', $post->ID ); |
|
88 | + do_action('wpinv_after_invoice_content', $post->ID); |
|
89 | 89 | $content .= ob_get_clean(); |
90 | 90 | } |
91 | 91 | |
92 | 92 | return $content; |
93 | 93 | } |
94 | -add_filter( 'the_content', 'wpinv_after_invoice_content' ); |
|
94 | +add_filter('the_content', 'wpinv_after_invoice_content'); |
|
95 | 95 | |
96 | 96 | function wpinv_get_templates_dir() { |
97 | 97 | return WPINV_PLUGIN_DIR . 'templates'; |
@@ -101,105 +101,105 @@ discard block |
||
101 | 101 | return WPINV_PLUGIN_URL . 'templates'; |
102 | 102 | } |
103 | 103 | |
104 | -function wpinv_get_template( $template_name, $args = array(), $template_path = '', $default_path = '' ) { |
|
105 | - if ( ! empty( $args ) && is_array( $args ) ) { |
|
106 | - extract( $args ); |
|
104 | +function wpinv_get_template($template_name, $args = array(), $template_path = '', $default_path = '') { |
|
105 | + if (!empty($args) && is_array($args)) { |
|
106 | + extract($args); |
|
107 | 107 | } |
108 | 108 | |
109 | - $located = wpinv_locate_template( $template_name, $template_path, $default_path ); |
|
109 | + $located = wpinv_locate_template($template_name, $template_path, $default_path); |
|
110 | 110 | // Allow 3rd party plugin filter template file from their plugin. |
111 | - $located = apply_filters( 'wpinv_get_template', $located, $template_name, $args, $template_path, $default_path ); |
|
111 | + $located = apply_filters('wpinv_get_template', $located, $template_name, $args, $template_path, $default_path); |
|
112 | 112 | |
113 | - if ( ! file_exists( $located ) ) { |
|
114 | - _doing_it_wrong( __FUNCTION__, sprintf( '<code>%s</code> does not exist.', $located ), '2.1' ); |
|
113 | + if (!file_exists($located)) { |
|
114 | + _doing_it_wrong(__FUNCTION__, sprintf('<code>%s</code> does not exist.', $located), '2.1'); |
|
115 | 115 | return; |
116 | 116 | } |
117 | 117 | |
118 | - do_action( 'wpinv_before_template_part', $template_name, $template_path, $located, $args ); |
|
118 | + do_action('wpinv_before_template_part', $template_name, $template_path, $located, $args); |
|
119 | 119 | |
120 | - include( $located ); |
|
120 | + include($located); |
|
121 | 121 | |
122 | - do_action( 'wpinv_after_template_part', $template_name, $template_path, $located, $args ); |
|
122 | + do_action('wpinv_after_template_part', $template_name, $template_path, $located, $args); |
|
123 | 123 | } |
124 | 124 | |
125 | -function wpinv_get_template_html( $template_name, $args = array(), $template_path = '', $default_path = '' ) { |
|
125 | +function wpinv_get_template_html($template_name, $args = array(), $template_path = '', $default_path = '') { |
|
126 | 126 | ob_start(); |
127 | - wpinv_get_template( $template_name, $args, $template_path, $default_path ); |
|
127 | + wpinv_get_template($template_name, $args, $template_path, $default_path); |
|
128 | 128 | return ob_get_clean(); |
129 | 129 | } |
130 | 130 | |
131 | -function wpinv_locate_template( $template_name, $template_path = '', $default_path = '' ) { |
|
132 | - if ( ! $template_path ) { |
|
131 | +function wpinv_locate_template($template_name, $template_path = '', $default_path = '') { |
|
132 | + if (!$template_path) { |
|
133 | 133 | $template_path = wpinv_template_path(); |
134 | 134 | } |
135 | 135 | |
136 | - if ( ! $default_path ) { |
|
136 | + if (!$default_path) { |
|
137 | 137 | $default_path = WPINV_PLUGIN_DIR . 'templates/'; |
138 | 138 | } |
139 | 139 | |
140 | 140 | // Look within passed path within the theme - this is priority. |
141 | 141 | $template = locate_template( |
142 | 142 | array( |
143 | - trailingslashit( $template_path ) . $template_name, |
|
143 | + trailingslashit($template_path) . $template_name, |
|
144 | 144 | $template_name |
145 | 145 | ) |
146 | 146 | ); |
147 | 147 | |
148 | 148 | // Get default templates/ |
149 | - if ( !$template && $default_path ) { |
|
150 | - $template = trailingslashit( $default_path ) . $template_name; |
|
149 | + if (!$template && $default_path) { |
|
150 | + $template = trailingslashit($default_path) . $template_name; |
|
151 | 151 | } |
152 | 152 | |
153 | 153 | // Return what we found. |
154 | - return apply_filters( 'wpinv_locate_template', $template, $template_name, $template_path ); |
|
154 | + return apply_filters('wpinv_locate_template', $template, $template_name, $template_path); |
|
155 | 155 | } |
156 | 156 | |
157 | -function wpinv_get_template_part( $slug, $name = null, $load = true ) { |
|
158 | - do_action( 'get_template_part_' . $slug, $slug, $name ); |
|
157 | +function wpinv_get_template_part($slug, $name = null, $load = true) { |
|
158 | + do_action('get_template_part_' . $slug, $slug, $name); |
|
159 | 159 | |
160 | 160 | // Setup possible parts |
161 | 161 | $templates = array(); |
162 | - if ( isset( $name ) ) |
|
162 | + if (isset($name)) |
|
163 | 163 | $templates[] = $slug . '-' . $name . '.php'; |
164 | 164 | $templates[] = $slug . '.php'; |
165 | 165 | |
166 | 166 | // Allow template parts to be filtered |
167 | - $templates = apply_filters( 'wpinv_get_template_part', $templates, $slug, $name ); |
|
167 | + $templates = apply_filters('wpinv_get_template_part', $templates, $slug, $name); |
|
168 | 168 | |
169 | 169 | // Return the part that is found |
170 | - return wpinv_locate_tmpl( $templates, $load, false ); |
|
170 | + return wpinv_locate_tmpl($templates, $load, false); |
|
171 | 171 | } |
172 | 172 | |
173 | -function wpinv_locate_tmpl( $template_names, $load = false, $require_once = true ) { |
|
173 | +function wpinv_locate_tmpl($template_names, $load = false, $require_once = true) { |
|
174 | 174 | // No file found yet |
175 | 175 | $located = false; |
176 | 176 | |
177 | 177 | // Try to find a template file |
178 | - foreach ( (array)$template_names as $template_name ) { |
|
178 | + foreach ((array) $template_names as $template_name) { |
|
179 | 179 | |
180 | 180 | // Continue if template is empty |
181 | - if ( empty( $template_name ) ) |
|
181 | + if (empty($template_name)) |
|
182 | 182 | continue; |
183 | 183 | |
184 | 184 | // Trim off any slashes from the template name |
185 | - $template_name = ltrim( $template_name, '/' ); |
|
185 | + $template_name = ltrim($template_name, '/'); |
|
186 | 186 | |
187 | 187 | // try locating this template file by looping through the template paths |
188 | - foreach( wpinv_get_theme_template_paths() as $template_path ) { |
|
188 | + foreach (wpinv_get_theme_template_paths() as $template_path) { |
|
189 | 189 | |
190 | - if( file_exists( $template_path . $template_name ) ) { |
|
190 | + if (file_exists($template_path . $template_name)) { |
|
191 | 191 | $located = $template_path . $template_name; |
192 | 192 | break; |
193 | 193 | } |
194 | 194 | } |
195 | 195 | |
196 | - if( !empty( $located ) ) { |
|
196 | + if (!empty($located)) { |
|
197 | 197 | break; |
198 | 198 | } |
199 | 199 | } |
200 | 200 | |
201 | - if ( ( true == $load ) && ! empty( $located ) ) |
|
202 | - load_template( $located, $require_once ); |
|
201 | + if ((true == $load) && !empty($located)) |
|
202 | + load_template($located, $require_once); |
|
203 | 203 | |
204 | 204 | return $located; |
205 | 205 | } |
@@ -208,159 +208,159 @@ discard block |
||
208 | 208 | $template_dir = wpinv_get_theme_template_dir_name(); |
209 | 209 | |
210 | 210 | $file_paths = array( |
211 | - 1 => trailingslashit( get_stylesheet_directory() ) . $template_dir, |
|
212 | - 10 => trailingslashit( get_template_directory() ) . $template_dir, |
|
211 | + 1 => trailingslashit(get_stylesheet_directory()) . $template_dir, |
|
212 | + 10 => trailingslashit(get_template_directory()) . $template_dir, |
|
213 | 213 | 100 => wpinv_get_templates_dir() |
214 | 214 | ); |
215 | 215 | |
216 | - $file_paths = apply_filters( 'wpinv_template_paths', $file_paths ); |
|
216 | + $file_paths = apply_filters('wpinv_template_paths', $file_paths); |
|
217 | 217 | |
218 | 218 | // sort the file paths based on priority |
219 | - ksort( $file_paths, SORT_NUMERIC ); |
|
219 | + ksort($file_paths, SORT_NUMERIC); |
|
220 | 220 | |
221 | - return array_map( 'trailingslashit', $file_paths ); |
|
221 | + return array_map('trailingslashit', $file_paths); |
|
222 | 222 | } |
223 | 223 | |
224 | 224 | function wpinv_get_theme_template_dir_name() { |
225 | - return trailingslashit( apply_filters( 'wpinv_templates_dir', 'invoicing' ) ); |
|
225 | + return trailingslashit(apply_filters('wpinv_templates_dir', 'invoicing')); |
|
226 | 226 | } |
227 | 227 | |
228 | 228 | function wpinv_checkout_meta_tags() { |
229 | 229 | |
230 | 230 | $pages = array(); |
231 | - $pages[] = wpinv_get_option( 'success_page' ); |
|
232 | - $pages[] = wpinv_get_option( 'failure_page' ); |
|
233 | - $pages[] = wpinv_get_option( 'invoice_history_page' ); |
|
234 | - $pages[] = wpinv_get_option( 'invoice_subscription_page' ); |
|
231 | + $pages[] = wpinv_get_option('success_page'); |
|
232 | + $pages[] = wpinv_get_option('failure_page'); |
|
233 | + $pages[] = wpinv_get_option('invoice_history_page'); |
|
234 | + $pages[] = wpinv_get_option('invoice_subscription_page'); |
|
235 | 235 | |
236 | - if( !wpinv_is_checkout() && !is_page( $pages ) ) { |
|
236 | + if (!wpinv_is_checkout() && !is_page($pages)) { |
|
237 | 237 | return; |
238 | 238 | } |
239 | 239 | |
240 | 240 | echo '<meta name="robots" content="noindex,nofollow" />' . "\n"; |
241 | 241 | } |
242 | -add_action( 'wp_head', 'wpinv_checkout_meta_tags' ); |
|
242 | +add_action('wp_head', 'wpinv_checkout_meta_tags'); |
|
243 | 243 | |
244 | -function wpinv_add_body_classes( $class ) { |
|
245 | - $classes = (array)$class; |
|
244 | +function wpinv_add_body_classes($class) { |
|
245 | + $classes = (array) $class; |
|
246 | 246 | |
247 | - if( wpinv_is_checkout() ) { |
|
247 | + if (wpinv_is_checkout()) { |
|
248 | 248 | $classes[] = 'wpinv-checkout'; |
249 | 249 | $classes[] = 'wpinv-page'; |
250 | 250 | } |
251 | 251 | |
252 | - if( wpinv_is_success_page() ) { |
|
252 | + if (wpinv_is_success_page()) { |
|
253 | 253 | $classes[] = 'wpinv-success'; |
254 | 254 | $classes[] = 'wpinv-page'; |
255 | 255 | } |
256 | 256 | |
257 | - if( wpinv_is_failed_transaction_page() ) { |
|
257 | + if (wpinv_is_failed_transaction_page()) { |
|
258 | 258 | $classes[] = 'wpinv-failed-transaction'; |
259 | 259 | $classes[] = 'wpinv-page'; |
260 | 260 | } |
261 | 261 | |
262 | - if( wpinv_is_invoice_history_page() ) { |
|
262 | + if (wpinv_is_invoice_history_page()) { |
|
263 | 263 | $classes[] = 'wpinv-history'; |
264 | 264 | $classes[] = 'wpinv-page'; |
265 | 265 | } |
266 | 266 | |
267 | - if( wpinv_is_subscriptions_history_page() ) { |
|
267 | + if (wpinv_is_subscriptions_history_page()) { |
|
268 | 268 | $classes[] = 'wpinv-subscription'; |
269 | 269 | $classes[] = 'wpinv-page'; |
270 | 270 | } |
271 | 271 | |
272 | - if( wpinv_is_test_mode() ) { |
|
272 | + if (wpinv_is_test_mode()) { |
|
273 | 273 | $classes[] = 'wpinv-test-mode'; |
274 | 274 | $classes[] = 'wpinv-page'; |
275 | 275 | } |
276 | 276 | |
277 | - return array_unique( $classes ); |
|
277 | + return array_unique($classes); |
|
278 | 278 | } |
279 | -add_filter( 'body_class', 'wpinv_add_body_classes' ); |
|
279 | +add_filter('body_class', 'wpinv_add_body_classes'); |
|
280 | 280 | |
281 | -function wpinv_html_dropdown( $name = 'wpinv_discounts', $selected = 0, $status = '' ) { |
|
282 | - $args = array( 'nopaging' => true ); |
|
281 | +function wpinv_html_dropdown($name = 'wpinv_discounts', $selected = 0, $status = '') { |
|
282 | + $args = array('nopaging' => true); |
|
283 | 283 | |
284 | - if ( ! empty( $status ) ) |
|
284 | + if (!empty($status)) |
|
285 | 285 | $args['post_status'] = $status; |
286 | 286 | |
287 | - $discounts = wpinv_get_discounts( $args ); |
|
287 | + $discounts = wpinv_get_discounts($args); |
|
288 | 288 | $options = array(); |
289 | 289 | |
290 | - if ( $discounts ) { |
|
291 | - foreach ( $discounts as $discount ) { |
|
292 | - $options[ absint( $discount->ID ) ] = esc_html( get_the_title( $discount->ID ) ); |
|
290 | + if ($discounts) { |
|
291 | + foreach ($discounts as $discount) { |
|
292 | + $options[absint($discount->ID)] = esc_html(get_the_title($discount->ID)); |
|
293 | 293 | } |
294 | 294 | } else { |
295 | - $options[0] = __( 'No discounts found', 'invoicing' ); |
|
295 | + $options[0] = __('No discounts found', 'invoicing'); |
|
296 | 296 | } |
297 | 297 | |
298 | - $output = wpinv_html_select( array( |
|
298 | + $output = wpinv_html_select(array( |
|
299 | 299 | 'name' => $name, |
300 | 300 | 'selected' => $selected, |
301 | 301 | 'options' => $options, |
302 | 302 | 'show_option_all' => false, |
303 | 303 | 'show_option_none' => false, |
304 | - ) ); |
|
304 | + )); |
|
305 | 305 | |
306 | 306 | return $output; |
307 | 307 | } |
308 | 308 | |
309 | -function wpinv_html_year_dropdown( $name = 'year', $selected = 0, $years_before = 5, $years_after = 0 ) { |
|
310 | - $current = date( 'Y' ); |
|
311 | - $start_year = $current - absint( $years_before ); |
|
312 | - $end_year = $current + absint( $years_after ); |
|
313 | - $selected = empty( $selected ) ? date( 'Y' ) : $selected; |
|
309 | +function wpinv_html_year_dropdown($name = 'year', $selected = 0, $years_before = 5, $years_after = 0) { |
|
310 | + $current = date('Y'); |
|
311 | + $start_year = $current - absint($years_before); |
|
312 | + $end_year = $current + absint($years_after); |
|
313 | + $selected = empty($selected) ? date('Y') : $selected; |
|
314 | 314 | $options = array(); |
315 | 315 | |
316 | - while ( $start_year <= $end_year ) { |
|
317 | - $options[ absint( $start_year ) ] = $start_year; |
|
316 | + while ($start_year <= $end_year) { |
|
317 | + $options[absint($start_year)] = $start_year; |
|
318 | 318 | $start_year++; |
319 | 319 | } |
320 | 320 | |
321 | - $output = wpinv_html_select( array( |
|
321 | + $output = wpinv_html_select(array( |
|
322 | 322 | 'name' => $name, |
323 | 323 | 'selected' => $selected, |
324 | 324 | 'options' => $options, |
325 | 325 | 'show_option_all' => false, |
326 | 326 | 'show_option_none' => false |
327 | - ) ); |
|
327 | + )); |
|
328 | 328 | |
329 | 329 | return $output; |
330 | 330 | } |
331 | 331 | |
332 | -function wpinv_html_month_dropdown( $name = 'month', $selected = 0 ) { |
|
332 | +function wpinv_html_month_dropdown($name = 'month', $selected = 0) { |
|
333 | 333 | |
334 | 334 | $options = array( |
335 | - '1' => __( 'January', 'invoicing' ), |
|
336 | - '2' => __( 'February', 'invoicing' ), |
|
337 | - '3' => __( 'March', 'invoicing' ), |
|
338 | - '4' => __( 'April', 'invoicing' ), |
|
339 | - '5' => __( 'May', 'invoicing' ), |
|
340 | - '6' => __( 'June', 'invoicing' ), |
|
341 | - '7' => __( 'July', 'invoicing' ), |
|
342 | - '8' => __( 'August', 'invoicing' ), |
|
343 | - '9' => __( 'September', 'invoicing' ), |
|
344 | - '10' => __( 'October', 'invoicing' ), |
|
345 | - '11' => __( 'November', 'invoicing' ), |
|
346 | - '12' => __( 'December', 'invoicing' ), |
|
335 | + '1' => __('January', 'invoicing'), |
|
336 | + '2' => __('February', 'invoicing'), |
|
337 | + '3' => __('March', 'invoicing'), |
|
338 | + '4' => __('April', 'invoicing'), |
|
339 | + '5' => __('May', 'invoicing'), |
|
340 | + '6' => __('June', 'invoicing'), |
|
341 | + '7' => __('July', 'invoicing'), |
|
342 | + '8' => __('August', 'invoicing'), |
|
343 | + '9' => __('September', 'invoicing'), |
|
344 | + '10' => __('October', 'invoicing'), |
|
345 | + '11' => __('November', 'invoicing'), |
|
346 | + '12' => __('December', 'invoicing'), |
|
347 | 347 | ); |
348 | 348 | |
349 | 349 | // If no month is selected, default to the current month |
350 | - $selected = empty( $selected ) ? date( 'n' ) : $selected; |
|
350 | + $selected = empty($selected) ? date('n') : $selected; |
|
351 | 351 | |
352 | - $output = wpinv_html_select( array( |
|
352 | + $output = wpinv_html_select(array( |
|
353 | 353 | 'name' => $name, |
354 | 354 | 'selected' => $selected, |
355 | 355 | 'options' => $options, |
356 | 356 | 'show_option_all' => false, |
357 | 357 | 'show_option_none' => false |
358 | - ) ); |
|
358 | + )); |
|
359 | 359 | |
360 | 360 | return $output; |
361 | 361 | } |
362 | 362 | |
363 | -function wpinv_html_select( $args = array() ) { |
|
363 | +function wpinv_html_select($args = array()) { |
|
364 | 364 | $defaults = array( |
365 | 365 | 'options' => array(), |
366 | 366 | 'name' => null, |
@@ -369,8 +369,8 @@ discard block |
||
369 | 369 | 'selected' => 0, |
370 | 370 | 'placeholder' => null, |
371 | 371 | 'multiple' => false, |
372 | - 'show_option_all' => _x( 'All', 'all dropdown items', 'invoicing' ), |
|
373 | - 'show_option_none' => _x( 'None', 'no dropdown items', 'invoicing' ), |
|
372 | + 'show_option_all' => _x('All', 'all dropdown items', 'invoicing'), |
|
373 | + 'show_option_none' => _x('None', 'no dropdown items', 'invoicing'), |
|
374 | 374 | 'data' => array(), |
375 | 375 | 'onchange' => null, |
376 | 376 | 'required' => false, |
@@ -378,74 +378,74 @@ discard block |
||
378 | 378 | 'readonly' => false, |
379 | 379 | ); |
380 | 380 | |
381 | - $args = wp_parse_args( $args, $defaults ); |
|
381 | + $args = wp_parse_args($args, $defaults); |
|
382 | 382 | |
383 | 383 | $data_elements = ''; |
384 | - foreach ( $args['data'] as $key => $value ) { |
|
385 | - $data_elements .= ' data-' . esc_attr( $key ) . '="' . esc_attr( $value ) . '"'; |
|
384 | + foreach ($args['data'] as $key => $value) { |
|
385 | + $data_elements .= ' data-' . esc_attr($key) . '="' . esc_attr($value) . '"'; |
|
386 | 386 | } |
387 | 387 | |
388 | - if( $args['multiple'] ) { |
|
388 | + if ($args['multiple']) { |
|
389 | 389 | $multiple = ' MULTIPLE'; |
390 | 390 | } else { |
391 | 391 | $multiple = ''; |
392 | 392 | } |
393 | 393 | |
394 | - if( $args['placeholder'] ) { |
|
394 | + if ($args['placeholder']) { |
|
395 | 395 | $placeholder = $args['placeholder']; |
396 | 396 | } else { |
397 | 397 | $placeholder = ''; |
398 | 398 | } |
399 | 399 | |
400 | 400 | $options = ''; |
401 | - if( !empty( $args['onchange'] ) ) { |
|
402 | - $options .= ' onchange="' . esc_attr( $args['onchange'] ) . '"'; |
|
401 | + if (!empty($args['onchange'])) { |
|
402 | + $options .= ' onchange="' . esc_attr($args['onchange']) . '"'; |
|
403 | 403 | } |
404 | 404 | |
405 | - if( !empty( $args['required'] ) ) { |
|
405 | + if (!empty($args['required'])) { |
|
406 | 406 | $options .= ' required="required"'; |
407 | 407 | } |
408 | 408 | |
409 | - if( !empty( $args['disabled'] ) ) { |
|
409 | + if (!empty($args['disabled'])) { |
|
410 | 410 | $options .= ' disabled'; |
411 | 411 | } |
412 | 412 | |
413 | - if( !empty( $args['readonly'] ) ) { |
|
413 | + if (!empty($args['readonly'])) { |
|
414 | 414 | $options .= ' readonly'; |
415 | 415 | } |
416 | 416 | |
417 | - $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) ); |
|
418 | - $output = '<select name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['id'] ) . '" class="wpinv-select ' . $class . '"' . $multiple . ' data-placeholder="' . $placeholder . '" ' . trim( $options ) . $data_elements . '>'; |
|
417 | + $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class']))); |
|
418 | + $output = '<select name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['id']) . '" class="wpinv-select ' . $class . '"' . $multiple . ' data-placeholder="' . $placeholder . '" ' . trim($options) . $data_elements . '>'; |
|
419 | 419 | |
420 | - if ( $args['show_option_all'] ) { |
|
421 | - if( $args['multiple'] ) { |
|
422 | - $selected = selected( true, in_array( 0, $args['selected'] ), false ); |
|
420 | + if ($args['show_option_all']) { |
|
421 | + if ($args['multiple']) { |
|
422 | + $selected = selected(true, in_array(0, $args['selected']), false); |
|
423 | 423 | } else { |
424 | - $selected = selected( $args['selected'], 0, false ); |
|
424 | + $selected = selected($args['selected'], 0, false); |
|
425 | 425 | } |
426 | - $output .= '<option value="all"' . $selected . '>' . esc_html( $args['show_option_all'] ) . '</option>'; |
|
426 | + $output .= '<option value="all"' . $selected . '>' . esc_html($args['show_option_all']) . '</option>'; |
|
427 | 427 | } |
428 | 428 | |
429 | - if ( !empty( $args['options'] ) ) { |
|
429 | + if (!empty($args['options'])) { |
|
430 | 430 | |
431 | - if ( $args['show_option_none'] ) { |
|
432 | - if( $args['multiple'] ) { |
|
433 | - $selected = selected( true, in_array( "", $args['selected'] ), false ); |
|
431 | + if ($args['show_option_none']) { |
|
432 | + if ($args['multiple']) { |
|
433 | + $selected = selected(true, in_array("", $args['selected']), false); |
|
434 | 434 | } else { |
435 | - $selected = selected( $args['selected'] === "", true, false ); |
|
435 | + $selected = selected($args['selected'] === "", true, false); |
|
436 | 436 | } |
437 | - $output .= '<option value=""' . $selected . '>' . esc_html( $args['show_option_none'] ) . '</option>'; |
|
437 | + $output .= '<option value=""' . $selected . '>' . esc_html($args['show_option_none']) . '</option>'; |
|
438 | 438 | } |
439 | 439 | |
440 | - foreach( $args['options'] as $key => $option ) { |
|
440 | + foreach ($args['options'] as $key => $option) { |
|
441 | 441 | |
442 | - if( $args['multiple'] && is_array( $args['selected'] ) ) { |
|
443 | - $selected = selected( true, (bool)in_array( $key, $args['selected'] ), false ); |
|
442 | + if ($args['multiple'] && is_array($args['selected'])) { |
|
443 | + $selected = selected(true, (bool) in_array($key, $args['selected']), false); |
|
444 | 444 | } else { |
445 | - $selected = selected( $args['selected'], $key, false ); |
|
445 | + $selected = selected($args['selected'], $key, false); |
|
446 | 446 | } |
447 | 447 | |
448 | - $output .= '<option value="' . esc_attr( $key ) . '"' . $selected . '>' . esc_html( $option ) . '</option>'; |
|
448 | + $output .= '<option value="' . esc_attr($key) . '"' . $selected . '>' . esc_html($option) . '</option>'; |
|
449 | 449 | } |
450 | 450 | } |
451 | 451 | |
@@ -454,7 +454,7 @@ discard block |
||
454 | 454 | return $output; |
455 | 455 | } |
456 | 456 | |
457 | -function wpinv_item_dropdown( $args = array() ) { |
|
457 | +function wpinv_item_dropdown($args = array()) { |
|
458 | 458 | $defaults = array( |
459 | 459 | 'name' => 'wpi_item', |
460 | 460 | 'id' => 'wpi_item', |
@@ -462,14 +462,14 @@ discard block |
||
462 | 462 | 'multiple' => false, |
463 | 463 | 'selected' => 0, |
464 | 464 | 'number' => 100, |
465 | - 'placeholder' => __( 'Choose a item', 'invoicing' ), |
|
466 | - 'data' => array( 'search-type' => 'item' ), |
|
465 | + 'placeholder' => __('Choose a item', 'invoicing'), |
|
466 | + 'data' => array('search-type' => 'item'), |
|
467 | 467 | 'show_option_all' => false, |
468 | 468 | 'show_option_none' => false, |
469 | 469 | 'show_recurring' => false, |
470 | 470 | ); |
471 | 471 | |
472 | - $args = wp_parse_args( $args, $defaults ); |
|
472 | + $args = wp_parse_args($args, $defaults); |
|
473 | 473 | |
474 | 474 | $item_args = array( |
475 | 475 | 'post_type' => 'wpi_item', |
@@ -478,44 +478,44 @@ discard block |
||
478 | 478 | 'posts_per_page' => $args['number'] |
479 | 479 | ); |
480 | 480 | |
481 | - $item_args = apply_filters( 'wpinv_item_dropdown_query_args', $item_args, $args, $defaults ); |
|
481 | + $item_args = apply_filters('wpinv_item_dropdown_query_args', $item_args, $args, $defaults); |
|
482 | 482 | |
483 | - $items = get_posts( $item_args ); |
|
483 | + $items = get_posts($item_args); |
|
484 | 484 | $options = array(); |
485 | - if ( $items ) { |
|
486 | - foreach ( $items as $item ) { |
|
487 | - $title = esc_html( $item->post_title ); |
|
485 | + if ($items) { |
|
486 | + foreach ($items as $item) { |
|
487 | + $title = esc_html($item->post_title); |
|
488 | 488 | |
489 | - if ( !empty( $args['show_recurring'] ) ) { |
|
490 | - $title .= wpinv_get_item_suffix( $item->ID, false ); |
|
489 | + if (!empty($args['show_recurring'])) { |
|
490 | + $title .= wpinv_get_item_suffix($item->ID, false); |
|
491 | 491 | } |
492 | 492 | |
493 | - $options[ absint( $item->ID ) ] = $title; |
|
493 | + $options[absint($item->ID)] = $title; |
|
494 | 494 | } |
495 | 495 | } |
496 | 496 | |
497 | 497 | // This ensures that any selected items are included in the drop down |
498 | - if( is_array( $args['selected'] ) ) { |
|
499 | - foreach( $args['selected'] as $item ) { |
|
500 | - if( ! in_array( $item, $options ) ) { |
|
501 | - $title = get_the_title( $item ); |
|
502 | - if ( !empty( $args['show_recurring'] ) ) { |
|
503 | - $title .= wpinv_get_item_suffix( $item, false ); |
|
498 | + if (is_array($args['selected'])) { |
|
499 | + foreach ($args['selected'] as $item) { |
|
500 | + if (!in_array($item, $options)) { |
|
501 | + $title = get_the_title($item); |
|
502 | + if (!empty($args['show_recurring'])) { |
|
503 | + $title .= wpinv_get_item_suffix($item, false); |
|
504 | 504 | } |
505 | 505 | $options[$item] = $title; |
506 | 506 | } |
507 | 507 | } |
508 | - } elseif ( is_numeric( $args['selected'] ) && $args['selected'] !== 0 ) { |
|
509 | - if ( ! in_array( $args['selected'], $options ) ) { |
|
510 | - $title = get_the_title( $args['selected'] ); |
|
511 | - if ( !empty( $args['show_recurring'] ) ) { |
|
512 | - $title .= wpinv_get_item_suffix( $args['selected'], false ); |
|
508 | + } elseif (is_numeric($args['selected']) && $args['selected'] !== 0) { |
|
509 | + if (!in_array($args['selected'], $options)) { |
|
510 | + $title = get_the_title($args['selected']); |
|
511 | + if (!empty($args['show_recurring'])) { |
|
512 | + $title .= wpinv_get_item_suffix($args['selected'], false); |
|
513 | 513 | } |
514 | - $options[$args['selected']] = get_the_title( $args['selected'] ); |
|
514 | + $options[$args['selected']] = get_the_title($args['selected']); |
|
515 | 515 | } |
516 | 516 | } |
517 | 517 | |
518 | - $output = wpinv_html_select( array( |
|
518 | + $output = wpinv_html_select(array( |
|
519 | 519 | 'name' => $args['name'], |
520 | 520 | 'selected' => $args['selected'], |
521 | 521 | 'id' => $args['id'], |
@@ -526,12 +526,12 @@ discard block |
||
526 | 526 | 'show_option_all' => $args['show_option_all'], |
527 | 527 | 'show_option_none' => $args['show_option_none'], |
528 | 528 | 'data' => $args['data'], |
529 | - ) ); |
|
529 | + )); |
|
530 | 530 | |
531 | 531 | return $output; |
532 | 532 | } |
533 | 533 | |
534 | -function wpinv_html_checkbox( $args = array() ) { |
|
534 | +function wpinv_html_checkbox($args = array()) { |
|
535 | 535 | $defaults = array( |
536 | 536 | 'name' => null, |
537 | 537 | 'current' => null, |
@@ -542,38 +542,38 @@ discard block |
||
542 | 542 | ) |
543 | 543 | ); |
544 | 544 | |
545 | - $args = wp_parse_args( $args, $defaults ); |
|
545 | + $args = wp_parse_args($args, $defaults); |
|
546 | 546 | |
547 | - $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) ); |
|
547 | + $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class']))); |
|
548 | 548 | $options = ''; |
549 | - if ( ! empty( $args['options']['disabled'] ) ) { |
|
549 | + if (!empty($args['options']['disabled'])) { |
|
550 | 550 | $options .= ' disabled="disabled"'; |
551 | - } elseif ( ! empty( $args['options']['readonly'] ) ) { |
|
551 | + } elseif (!empty($args['options']['readonly'])) { |
|
552 | 552 | $options .= ' readonly'; |
553 | 553 | } |
554 | 554 | |
555 | - $output = '<input type="checkbox"' . $options . ' name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['name'] ) . '" class="' . $class . ' ' . esc_attr( $args['name'] ) . '" ' . checked( 1, $args['current'], false ) . ' />'; |
|
555 | + $output = '<input type="checkbox"' . $options . ' name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['name']) . '" class="' . $class . ' ' . esc_attr($args['name']) . '" ' . checked(1, $args['current'], false) . ' />'; |
|
556 | 556 | |
557 | 557 | return $output; |
558 | 558 | } |
559 | 559 | |
560 | -function wpinv_html_text( $args = array() ) { |
|
560 | +function wpinv_html_text($args = array()) { |
|
561 | 561 | // Backwards compatibility |
562 | - if ( func_num_args() > 1 ) { |
|
562 | + if (func_num_args() > 1) { |
|
563 | 563 | $args = func_get_args(); |
564 | 564 | |
565 | 565 | $name = $args[0]; |
566 | - $value = isset( $args[1] ) ? $args[1] : ''; |
|
567 | - $label = isset( $args[2] ) ? $args[2] : ''; |
|
568 | - $desc = isset( $args[3] ) ? $args[3] : ''; |
|
566 | + $value = isset($args[1]) ? $args[1] : ''; |
|
567 | + $label = isset($args[2]) ? $args[2] : ''; |
|
568 | + $desc = isset($args[3]) ? $args[3] : ''; |
|
569 | 569 | } |
570 | 570 | |
571 | 571 | $defaults = array( |
572 | 572 | 'id' => '', |
573 | - 'name' => isset( $name ) ? $name : 'text', |
|
574 | - 'value' => isset( $value ) ? $value : null, |
|
575 | - 'label' => isset( $label ) ? $label : null, |
|
576 | - 'desc' => isset( $desc ) ? $desc : null, |
|
573 | + 'name' => isset($name) ? $name : 'text', |
|
574 | + 'value' => isset($value) ? $value : null, |
|
575 | + 'label' => isset($label) ? $label : null, |
|
576 | + 'desc' => isset($desc) ? $desc : null, |
|
577 | 577 | 'placeholder' => '', |
578 | 578 | 'class' => 'regular-text', |
579 | 579 | 'disabled' => false, |
@@ -583,51 +583,51 @@ discard block |
||
583 | 583 | 'data' => false |
584 | 584 | ); |
585 | 585 | |
586 | - $args = wp_parse_args( $args, $defaults ); |
|
586 | + $args = wp_parse_args($args, $defaults); |
|
587 | 587 | |
588 | - $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) ); |
|
588 | + $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class']))); |
|
589 | 589 | $options = ''; |
590 | - if( $args['required'] ) { |
|
590 | + if ($args['required']) { |
|
591 | 591 | $options .= ' required="required"'; |
592 | 592 | } |
593 | - if( $args['readonly'] ) { |
|
593 | + if ($args['readonly']) { |
|
594 | 594 | $options .= ' readonly'; |
595 | 595 | } |
596 | - if( $args['readonly'] ) { |
|
596 | + if ($args['readonly']) { |
|
597 | 597 | $options .= ' readonly'; |
598 | 598 | } |
599 | 599 | |
600 | 600 | $data = ''; |
601 | - if ( !empty( $args['data'] ) ) { |
|
602 | - foreach ( $args['data'] as $key => $value ) { |
|
603 | - $data .= 'data-' . wpinv_sanitize_key( $key ) . '="' . esc_attr( $value ) . '" '; |
|
601 | + if (!empty($args['data'])) { |
|
602 | + foreach ($args['data'] as $key => $value) { |
|
603 | + $data .= 'data-' . wpinv_sanitize_key($key) . '="' . esc_attr($value) . '" '; |
|
604 | 604 | } |
605 | 605 | } |
606 | 606 | |
607 | - $output = '<span id="wpinv-' . wpinv_sanitize_key( $args['name'] ) . '-wrap">'; |
|
608 | - $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key( $args['id'] ) . '">' . esc_html( $args['label'] ) . '</label>'; |
|
609 | - if ( ! empty( $args['desc'] ) ) { |
|
610 | - $output .= '<span class="wpinv-description">' . esc_html( $args['desc'] ) . '</span>'; |
|
607 | + $output = '<span id="wpinv-' . wpinv_sanitize_key($args['name']) . '-wrap">'; |
|
608 | + $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key($args['id']) . '">' . esc_html($args['label']) . '</label>'; |
|
609 | + if (!empty($args['desc'])) { |
|
610 | + $output .= '<span class="wpinv-description">' . esc_html($args['desc']) . '</span>'; |
|
611 | 611 | } |
612 | 612 | |
613 | - $output .= '<input type="text" name="' . esc_attr( $args['name'] ) . '" id="' . esc_attr( $args['id'] ) . '" autocomplete="' . esc_attr( $args['autocomplete'] ) . '" value="' . esc_attr( $args['value'] ) . '" placeholder="' . esc_attr( $args['placeholder'] ) . '" class="' . $class . '" ' . $data . ' ' . trim( $options ) . '/>'; |
|
613 | + $output .= '<input type="text" name="' . esc_attr($args['name']) . '" id="' . esc_attr($args['id']) . '" autocomplete="' . esc_attr($args['autocomplete']) . '" value="' . esc_attr($args['value']) . '" placeholder="' . esc_attr($args['placeholder']) . '" class="' . $class . '" ' . $data . ' ' . trim($options) . '/>'; |
|
614 | 614 | |
615 | 615 | $output .= '</span>'; |
616 | 616 | |
617 | 617 | return $output; |
618 | 618 | } |
619 | 619 | |
620 | -function wpinv_html_date_field( $args = array() ) { |
|
621 | - if( empty( $args['class'] ) ) { |
|
620 | +function wpinv_html_date_field($args = array()) { |
|
621 | + if (empty($args['class'])) { |
|
622 | 622 | $args['class'] = 'wpiDatepicker'; |
623 | - } elseif( ! strpos( $args['class'], 'wpiDatepicker' ) ) { |
|
623 | + } elseif (!strpos($args['class'], 'wpiDatepicker')) { |
|
624 | 624 | $args['class'] .= ' wpiDatepicker'; |
625 | 625 | } |
626 | 626 | |
627 | - return wpinv_html_text( $args ); |
|
627 | + return wpinv_html_text($args); |
|
628 | 628 | } |
629 | 629 | |
630 | -function wpinv_html_textarea( $args = array() ) { |
|
630 | +function wpinv_html_textarea($args = array()) { |
|
631 | 631 | $defaults = array( |
632 | 632 | 'name' => 'textarea', |
633 | 633 | 'value' => null, |
@@ -637,31 +637,31 @@ discard block |
||
637 | 637 | 'disabled' => false |
638 | 638 | ); |
639 | 639 | |
640 | - $args = wp_parse_args( $args, $defaults ); |
|
640 | + $args = wp_parse_args($args, $defaults); |
|
641 | 641 | |
642 | - $class = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $args['class'] ) ) ); |
|
642 | + $class = implode(' ', array_map('sanitize_html_class', explode(' ', $args['class']))); |
|
643 | 643 | $disabled = ''; |
644 | - if( $args['disabled'] ) { |
|
644 | + if ($args['disabled']) { |
|
645 | 645 | $disabled = ' disabled="disabled"'; |
646 | 646 | } |
647 | 647 | |
648 | - $output = '<span id="wpinv-' . wpinv_sanitize_key( $args['name'] ) . '-wrap">'; |
|
649 | - $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key( $args['name'] ) . '">' . esc_html( $args['label'] ) . '</label>'; |
|
650 | - $output .= '<textarea name="' . esc_attr( $args['name'] ) . '" id="' . wpinv_sanitize_key( $args['name'] ) . '" class="' . $class . '"' . $disabled . '>' . esc_attr( $args['value'] ) . '</textarea>'; |
|
648 | + $output = '<span id="wpinv-' . wpinv_sanitize_key($args['name']) . '-wrap">'; |
|
649 | + $output .= '<label class="wpinv-label" for="' . wpinv_sanitize_key($args['name']) . '">' . esc_html($args['label']) . '</label>'; |
|
650 | + $output .= '<textarea name="' . esc_attr($args['name']) . '" id="' . wpinv_sanitize_key($args['name']) . '" class="' . $class . '"' . $disabled . '>' . esc_attr($args['value']) . '</textarea>'; |
|
651 | 651 | |
652 | - if ( ! empty( $args['desc'] ) ) { |
|
653 | - $output .= '<span class="wpinv-description">' . esc_html( $args['desc'] ) . '</span>'; |
|
652 | + if (!empty($args['desc'])) { |
|
653 | + $output .= '<span class="wpinv-description">' . esc_html($args['desc']) . '</span>'; |
|
654 | 654 | } |
655 | 655 | $output .= '</span>'; |
656 | 656 | |
657 | 657 | return $output; |
658 | 658 | } |
659 | 659 | |
660 | -function wpinv_html_ajax_user_search( $args = array() ) { |
|
660 | +function wpinv_html_ajax_user_search($args = array()) { |
|
661 | 661 | $defaults = array( |
662 | 662 | 'name' => 'user_id', |
663 | 663 | 'value' => null, |
664 | - 'placeholder' => __( 'Enter username', 'invoicing' ), |
|
664 | + 'placeholder' => __('Enter username', 'invoicing'), |
|
665 | 665 | 'label' => null, |
666 | 666 | 'desc' => null, |
667 | 667 | 'class' => '', |
@@ -670,13 +670,13 @@ discard block |
||
670 | 670 | 'data' => false |
671 | 671 | ); |
672 | 672 | |
673 | - $args = wp_parse_args( $args, $defaults ); |
|
673 | + $args = wp_parse_args($args, $defaults); |
|
674 | 674 | |
675 | 675 | $args['class'] = 'wpinv-ajax-user-search ' . $args['class']; |
676 | 676 | |
677 | 677 | $output = '<span class="wpinv_user_search_wrap">'; |
678 | - $output .= wpinv_html_text( $args ); |
|
679 | - $output .= '<span class="wpinv_user_search_results hidden"><a class="wpinv-ajax-user-cancel" title="' . __( 'Cancel', 'invoicing' ) . '" aria-label="' . __( 'Cancel', 'invoicing' ) . '" href="#">x</a><span></span></span>'; |
|
678 | + $output .= wpinv_html_text($args); |
|
679 | + $output .= '<span class="wpinv_user_search_results hidden"><a class="wpinv-ajax-user-cancel" title="' . __('Cancel', 'invoicing') . '" aria-label="' . __('Cancel', 'invoicing') . '" href="#">x</a><span></span></span>'; |
|
680 | 680 | $output .= '</span>'; |
681 | 681 | |
682 | 682 | return $output; |
@@ -685,7 +685,7 @@ discard block |
||
685 | 685 | function wpinv_ip_geolocation() { |
686 | 686 | global $wpinv_euvat; |
687 | 687 | |
688 | - $ip = !empty( $_GET['ip'] ) ? sanitize_text_field( $_GET['ip'] ) : ''; |
|
688 | + $ip = !empty($_GET['ip']) ? sanitize_text_field($_GET['ip']) : ''; |
|
689 | 689 | $content = ''; |
690 | 690 | $iso = ''; |
691 | 691 | $country = ''; |
@@ -696,69 +696,69 @@ discard block |
||
696 | 696 | $credit = ''; |
697 | 697 | $address = ''; |
698 | 698 | |
699 | - if ( wpinv_get_option( 'vat_ip_lookup' ) == 'geoip2' && $geoip2_city = $wpinv_euvat->geoip2_city_record( $ip ) ) { |
|
699 | + if (wpinv_get_option('vat_ip_lookup') == 'geoip2' && $geoip2_city = $wpinv_euvat->geoip2_city_record($ip)) { |
|
700 | 700 | try { |
701 | 701 | $iso = $geoip2_city->country->isoCode; |
702 | 702 | $country = $geoip2_city->country->name; |
703 | - $region = !empty( $geoip2_city->subdivisions ) && !empty( $geoip2_city->subdivisions[0]->name ) ? $geoip2_city->subdivisions[0]->name : ''; |
|
703 | + $region = !empty($geoip2_city->subdivisions) && !empty($geoip2_city->subdivisions[0]->name) ? $geoip2_city->subdivisions[0]->name : ''; |
|
704 | 704 | $city = $geoip2_city->city->name; |
705 | 705 | $longitude = $geoip2_city->location->longitude; |
706 | 706 | $latitude = $geoip2_city->location->latitude; |
707 | - $credit = __( 'Geolocated using the information by MaxMind, available from <a href="http://www.maxmind.com" target="_blank">www.maxmind.com</a>', 'invoicing' ); |
|
708 | - } catch( Exception $e ) { } |
|
707 | + $credit = __('Geolocated using the information by MaxMind, available from <a href="http://www.maxmind.com" target="_blank">www.maxmind.com</a>', 'invoicing'); |
|
708 | + } catch (Exception $e) { } |
|
709 | 709 | } |
710 | 710 | |
711 | - if ( !( $iso && $longitude && $latitude ) && function_exists( 'simplexml_load_file' ) ) { |
|
711 | + if (!($iso && $longitude && $latitude) && function_exists('simplexml_load_file')) { |
|
712 | 712 | try { |
713 | - $load_xml = simplexml_load_file( 'http://www.geoplugin.net/xml.gp?ip=' . $ip ); |
|
713 | + $load_xml = simplexml_load_file('http://www.geoplugin.net/xml.gp?ip=' . $ip); |
|
714 | 714 | |
715 | - if ( !empty( $load_xml ) && isset( $load_xml->geoplugin_countryCode ) && !empty( $load_xml->geoplugin_latitude ) && !empty( $load_xml->geoplugin_longitude ) ) { |
|
715 | + if (!empty($load_xml) && isset($load_xml->geoplugin_countryCode) && !empty($load_xml->geoplugin_latitude) && !empty($load_xml->geoplugin_longitude)) { |
|
716 | 716 | $iso = $load_xml->geoplugin_countryCode; |
717 | 717 | $country = $load_xml->geoplugin_countryName; |
718 | - $region = !empty( $load_xml->geoplugin_regionName ) ? $load_xml->geoplugin_regionName : ''; |
|
719 | - $city = !empty( $load_xml->geoplugin_city ) ? $load_xml->geoplugin_city : ''; |
|
718 | + $region = !empty($load_xml->geoplugin_regionName) ? $load_xml->geoplugin_regionName : ''; |
|
719 | + $city = !empty($load_xml->geoplugin_city) ? $load_xml->geoplugin_city : ''; |
|
720 | 720 | $longitude = $load_xml->geoplugin_longitude; |
721 | 721 | $latitude = $load_xml->geoplugin_latitude; |
722 | 722 | $credit = $load_xml->geoplugin_credit; |
723 | - $credit = __( 'Geolocated using the information by geoPlugin, available from <a href="http://www.geoplugin.com" target="_blank">www.geoplugin.com</a>', 'invoicing' ) . '<br>' . $load_xml->geoplugin_credit; |
|
723 | + $credit = __('Geolocated using the information by geoPlugin, available from <a href="http://www.geoplugin.com" target="_blank">www.geoplugin.com</a>', 'invoicing') . '<br>' . $load_xml->geoplugin_credit; |
|
724 | 724 | } |
725 | - } catch( Exception $e ) { } |
|
725 | + } catch (Exception $e) { } |
|
726 | 726 | } |
727 | 727 | |
728 | - if ( $iso && $longitude && $latitude ) { |
|
729 | - if ( $city ) { |
|
728 | + if ($iso && $longitude && $latitude) { |
|
729 | + if ($city) { |
|
730 | 730 | $address .= $city . ', '; |
731 | 731 | } |
732 | 732 | |
733 | - if ( $region ) { |
|
733 | + if ($region) { |
|
734 | 734 | $address .= $region . ', '; |
735 | 735 | } |
736 | 736 | |
737 | 737 | $address .= $country . ' (' . $iso . ')'; |
738 | - $content = '<p>'. sprintf( __( '<b>Address:</b> %s', 'invoicing' ), $address ) . '</p>'; |
|
739 | - $content .= '<p>'. $credit . '</p>'; |
|
738 | + $content = '<p>' . sprintf(__('<b>Address:</b> %s', 'invoicing'), $address) . '</p>'; |
|
739 | + $content .= '<p>' . $credit . '</p>'; |
|
740 | 740 | } else { |
741 | - $content = '<p>'. sprintf( __( 'Unable to find geolocation for the IP address: %s', 'invoicing' ), $ip ) . '</p>'; |
|
741 | + $content = '<p>' . sprintf(__('Unable to find geolocation for the IP address: %s', 'invoicing'), $ip) . '</p>'; |
|
742 | 742 | } |
743 | 743 | ?> |
744 | 744 | <!DOCTYPE html> |
745 | -<html><head><title><?php echo sprintf( __( 'IP: %s', 'invoicing' ), $ip );?></title><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-rc.1/leaflet.css" /><style>html,body{height:100%;margin:0;padding:0;width:100%}body{text-align:center;background:#fff;color:#222;font-size:small;}body,p{font-family: arial,sans-serif}#map{margin:auto;width:100%;height:calc(100% - 120px);min-height:240px}</style></head> |
|
745 | +<html><head><title><?php echo sprintf(__('IP: %s', 'invoicing'), $ip); ?></title><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-rc.1/leaflet.css" /><style>html,body{height:100%;margin:0;padding:0;width:100%}body{text-align:center;background:#fff;color:#222;font-size:small;}body,p{font-family: arial,sans-serif}#map{margin:auto;width:100%;height:calc(100% - 120px);min-height:240px}</style></head> |
|
746 | 746 | <body> |
747 | - <?php if ( $latitude && $latitude ) { ?> |
|
747 | + <?php if ($latitude && $latitude) { ?> |
|
748 | 748 | <div id="map"></div> |
749 | 749 | <script src="//cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-rc.1/leaflet.js"></script> |
750 | 750 | <script type="text/javascript"> |
751 | 751 | var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', |
752 | 752 | osmAttrib = '© <a href="http://openstreetmap.org/copyright">OpenStreetMap</a> contributors', |
753 | 753 | osm = L.tileLayer(osmUrl, {maxZoom: 18, attribution: osmAttrib}), |
754 | - latlng = new L.LatLng(<?php echo $latitude;?>, <?php echo $longitude;?>); |
|
754 | + latlng = new L.LatLng(<?php echo $latitude; ?>, <?php echo $longitude; ?>); |
|
755 | 755 | |
756 | 756 | var map = new L.Map('map', {center: latlng, zoom: 12, layers: [osm]}); |
757 | 757 | |
758 | 758 | var marker = new L.Marker(latlng); |
759 | 759 | map.addLayer(marker); |
760 | 760 | |
761 | - marker.bindPopup("<p><?php esc_attr_e( $address );?></p>"); |
|
761 | + marker.bindPopup("<p><?php esc_attr_e($address); ?></p>"); |
|
762 | 762 | </script> |
763 | 763 | <?php } ?> |
764 | 764 | <div style="height:100px"><?php echo $content; ?></div> |
@@ -766,18 +766,18 @@ discard block |
||
766 | 766 | <?php |
767 | 767 | exit; |
768 | 768 | } |
769 | -add_action( 'wp_ajax_wpinv_ip_geolocation', 'wpinv_ip_geolocation' ); |
|
770 | -add_action( 'wp_ajax_nopriv_wpinv_ip_geolocation', 'wpinv_ip_geolocation' ); |
|
769 | +add_action('wp_ajax_wpinv_ip_geolocation', 'wpinv_ip_geolocation'); |
|
770 | +add_action('wp_ajax_nopriv_wpinv_ip_geolocation', 'wpinv_ip_geolocation'); |
|
771 | 771 | |
772 | 772 | // Set up the template for the invoice. |
773 | -function wpinv_template( $template ) { |
|
773 | +function wpinv_template($template) { |
|
774 | 774 | global $post, $wp_query; |
775 | 775 | |
776 | - if ( ( is_single() || is_404() ) && !empty( $post->ID ) && (get_post_type( $post->ID ) == 'wpi_invoice' or get_post_type( $post->ID ) == 'wpi_quote')) { |
|
777 | - if ( wpinv_user_can_view_invoice( $post->ID ) ) { |
|
778 | - $template = wpinv_get_template_part( 'wpinv-invoice-print', false, false ); |
|
776 | + if ((is_single() || is_404()) && !empty($post->ID) && (get_post_type($post->ID) == 'wpi_invoice' or get_post_type($post->ID) == 'wpi_quote')) { |
|
777 | + if (wpinv_user_can_view_invoice($post->ID)) { |
|
778 | + $template = wpinv_get_template_part('wpinv-invoice-print', false, false); |
|
779 | 779 | } else { |
780 | - $template = wpinv_get_template_part( 'wpinv-invalid-access', false, false ); |
|
780 | + $template = wpinv_get_template_part('wpinv-invalid-access', false, false); |
|
781 | 781 | } |
782 | 782 | } |
783 | 783 | |
@@ -786,7 +786,7 @@ discard block |
||
786 | 786 | |
787 | 787 | function wpinv_get_business_address() { |
788 | 788 | $business_address = wpinv_store_address(); |
789 | - $business_address = !empty( $business_address ) ? wpautop( wp_kses_post( $business_address ) ) : ''; |
|
789 | + $business_address = !empty($business_address) ? wpautop(wp_kses_post($business_address)) : ''; |
|
790 | 790 | |
791 | 791 | /* |
792 | 792 | $default_country = wpinv_get_default_country(); |
@@ -810,7 +810,7 @@ discard block |
||
810 | 810 | |
811 | 811 | $business_address = $business_address ? '<div class="address">' . $business_address . '</div>' : ''; |
812 | 812 | |
813 | - return apply_filters( 'wpinv_get_business_address', $business_address ); |
|
813 | + return apply_filters('wpinv_get_business_address', $business_address); |
|
814 | 814 | } |
815 | 815 | |
816 | 816 | function wpinv_display_from_address() { |
@@ -820,107 +820,107 @@ discard block |
||
820 | 820 | if (empty($from_name)) { |
821 | 821 | $from_name = wpinv_get_business_name(); |
822 | 822 | } |
823 | - ?><div class="from col-xs-2"><strong><?php _e( 'From:', 'invoicing' ) ?></strong></div> |
|
823 | + ?><div class="from col-xs-2"><strong><?php _e('From:', 'invoicing') ?></strong></div> |
|
824 | 824 | <div class="wrapper col-xs-10"> |
825 | - <div class="name"><?php echo esc_html( $from_name ); ?></div> |
|
826 | - <?php if ( $address = wpinv_get_business_address() ) { ?> |
|
827 | - <div class="address"><?php echo wpautop( wp_kses_post( $address ) );?></div> |
|
825 | + <div class="name"><?php echo esc_html($from_name); ?></div> |
|
826 | + <?php if ($address = wpinv_get_business_address()) { ?> |
|
827 | + <div class="address"><?php echo wpautop(wp_kses_post($address)); ?></div> |
|
828 | 828 | <?php } ?> |
829 | - <?php if ( $email_from = wpinv_mail_get_from_address() ) { ?> |
|
830 | - <div class="email_from"><?php echo wp_sprintf( __( 'Email: %s', 'invoicing' ), $email_from );?></div> |
|
829 | + <?php if ($email_from = wpinv_mail_get_from_address()) { ?> |
|
830 | + <div class="email_from"><?php echo wp_sprintf(__('Email: %s', 'invoicing'), $email_from); ?></div> |
|
831 | 831 | <?php } ?> |
832 | 832 | </div> |
833 | 833 | <?php |
834 | 834 | } |
835 | 835 | |
836 | -function wpinv_watermark( $id = 0 ) { |
|
837 | - $output = wpinv_get_watermark( $id ); |
|
836 | +function wpinv_watermark($id = 0) { |
|
837 | + $output = wpinv_get_watermark($id); |
|
838 | 838 | |
839 | - return apply_filters( 'wpinv_get_watermark', $output, $id ); |
|
839 | + return apply_filters('wpinv_get_watermark', $output, $id); |
|
840 | 840 | } |
841 | 841 | |
842 | -function wpinv_get_watermark( $id ) { |
|
843 | - if ( !$id > 0 ) { |
|
842 | +function wpinv_get_watermark($id) { |
|
843 | + if (!$id > 0) { |
|
844 | 844 | return NULL; |
845 | 845 | } |
846 | - $invoice = wpinv_get_invoice( $id ); |
|
846 | + $invoice = wpinv_get_invoice($id); |
|
847 | 847 | |
848 | - if ( !empty( $invoice ) && "wpi_invoice" === $invoice->post_type ) { |
|
849 | - if ( $invoice->is_paid() ) { |
|
850 | - return __( 'Paid', 'invoicing' ); |
|
848 | + if (!empty($invoice) && "wpi_invoice" === $invoice->post_type) { |
|
849 | + if ($invoice->is_paid()) { |
|
850 | + return __('Paid', 'invoicing'); |
|
851 | 851 | } |
852 | - if ( $invoice->is_refunded() ) { |
|
853 | - return __( 'Refunded', 'invoicing' ); |
|
852 | + if ($invoice->is_refunded()) { |
|
853 | + return __('Refunded', 'invoicing'); |
|
854 | 854 | } |
855 | - if ( $invoice->has_status( array( 'wpi-cancelled' ) ) ) { |
|
856 | - return __( 'Cancelled', 'invoicing' ); |
|
855 | + if ($invoice->has_status(array('wpi-cancelled'))) { |
|
856 | + return __('Cancelled', 'invoicing'); |
|
857 | 857 | } |
858 | 858 | } |
859 | 859 | |
860 | 860 | return NULL; |
861 | 861 | } |
862 | 862 | |
863 | -function wpinv_display_invoice_details( $invoice ) { |
|
863 | +function wpinv_display_invoice_details($invoice) { |
|
864 | 864 | global $wpinv_euvat; |
865 | 865 | |
866 | 866 | $invoice_id = $invoice->ID; |
867 | 867 | $vat_name = $wpinv_euvat->get_vat_name(); |
868 | 868 | $use_taxes = wpinv_use_taxes(); |
869 | 869 | |
870 | - $invoice_status = wpinv_get_invoice_status( $invoice_id ); |
|
870 | + $invoice_status = wpinv_get_invoice_status($invoice_id); |
|
871 | 871 | ?> |
872 | 872 | <table class="table table-bordered table-sm"> |
873 | - <?php if ( $invoice_number = wpinv_get_invoice_number( $invoice_id ) ) { ?> |
|
873 | + <?php if ($invoice_number = wpinv_get_invoice_number($invoice_id)) { ?> |
|
874 | 874 | <tr class="wpi-row-number"> |
875 | - <th><?php echo apply_filters( 'wpinv_invoice_number_label', __( 'Invoice Number', 'invoicing' ), $invoice ); ?></th> |
|
876 | - <td><?php echo esc_html( $invoice_number ); ?></td> |
|
875 | + <th><?php echo apply_filters('wpinv_invoice_number_label', __('Invoice Number', 'invoicing'), $invoice); ?></th> |
|
876 | + <td><?php echo esc_html($invoice_number); ?></td> |
|
877 | 877 | </tr> |
878 | 878 | <?php } ?> |
879 | 879 | <tr class="wpi-row-status"> |
880 | - <th><?php echo apply_filters( 'wpinv_invoice_status_label', __( 'Invoice Status', 'invoicing' ), $invoice ); ?></th> |
|
881 | - <td><?php echo wpinv_invoice_status_label( $invoice_status, wpinv_get_invoice_status( $invoice_id, true ) ); ?></td> |
|
880 | + <th><?php echo apply_filters('wpinv_invoice_status_label', __('Invoice Status', 'invoicing'), $invoice); ?></th> |
|
881 | + <td><?php echo wpinv_invoice_status_label($invoice_status, wpinv_get_invoice_status($invoice_id, true)); ?></td> |
|
882 | 882 | </tr> |
883 | - <?php if ( $invoice->is_renewal() ) { ?> |
|
883 | + <?php if ($invoice->is_renewal()) { ?> |
|
884 | 884 | <tr class="wpi-row-parent"> |
885 | - <th><?php echo apply_filters( 'wpinv_invoice_parent_invoice_label', __( 'Parent Invoice', 'invoicing' ), $invoice ); ?></th> |
|
886 | - <td><?php echo wpinv_invoice_link( $invoice->parent_invoice ); ?></td> |
|
885 | + <th><?php echo apply_filters('wpinv_invoice_parent_invoice_label', __('Parent Invoice', 'invoicing'), $invoice); ?></th> |
|
886 | + <td><?php echo wpinv_invoice_link($invoice->parent_invoice); ?></td> |
|
887 | 887 | </tr> |
888 | 888 | <?php } ?> |
889 | - <?php if ( ( $gateway_name = wpinv_get_payment_gateway_name( $invoice_id ) ) && ( $invoice->is_paid() || $invoice->is_refunded() ) ) { ?> |
|
889 | + <?php if (($gateway_name = wpinv_get_payment_gateway_name($invoice_id)) && ($invoice->is_paid() || $invoice->is_refunded())) { ?> |
|
890 | 890 | <tr class="wpi-row-gateway"> |
891 | - <th><?php echo apply_filters( 'wpinv_invoice_payment_method_label', __( 'Payment Method', 'invoicing' ), $invoice ); ?></th> |
|
891 | + <th><?php echo apply_filters('wpinv_invoice_payment_method_label', __('Payment Method', 'invoicing'), $invoice); ?></th> |
|
892 | 892 | <td><?php echo $gateway_name; ?></td> |
893 | 893 | </tr> |
894 | 894 | <?php } ?> |
895 | - <?php if ( $invoice_date = wpinv_get_invoice_date( $invoice_id ) ) { ?> |
|
895 | + <?php if ($invoice_date = wpinv_get_invoice_date($invoice_id)) { ?> |
|
896 | 896 | <tr class="wpi-row-date"> |
897 | - <th><?php echo apply_filters( 'wpinv_invoice_date_label', __( 'Invoice Date', 'invoicing' ), $invoice ); ?></th> |
|
897 | + <th><?php echo apply_filters('wpinv_invoice_date_label', __('Invoice Date', 'invoicing'), $invoice); ?></th> |
|
898 | 898 | <td><?php echo $invoice_date; ?></td> |
899 | 899 | </tr> |
900 | 900 | <?php } ?> |
901 | - <?php if ( wpinv_get_option( 'overdue_active' ) && $invoice->needs_payment() && ( $due_date = $invoice->get_due_date( true ) ) ) { ?> |
|
901 | + <?php if (wpinv_get_option('overdue_active') && $invoice->needs_payment() && ($due_date = $invoice->get_due_date(true))) { ?> |
|
902 | 902 | <tr class="wpi-row-date"> |
903 | - <th><?php echo apply_filters( 'wpinv_invoice_due_date_label', __( 'Due Date', 'invoicing' ), $invoice ); ?></th> |
|
903 | + <th><?php echo apply_filters('wpinv_invoice_due_date_label', __('Due Date', 'invoicing'), $invoice); ?></th> |
|
904 | 904 | <td><?php echo $due_date; ?></td> |
905 | 905 | </tr> |
906 | 906 | <?php } ?> |
907 | - <?php do_action( 'wpinv_display_details_after_due_date', $invoice_id ); ?> |
|
908 | - <?php if ( $owner_vat_number = $wpinv_euvat->get_vat_number() ) { ?> |
|
907 | + <?php do_action('wpinv_display_details_after_due_date', $invoice_id); ?> |
|
908 | + <?php if ($owner_vat_number = $wpinv_euvat->get_vat_number()) { ?> |
|
909 | 909 | <tr class="wpi-row-ovatno"> |
910 | - <th><?php echo apply_filters( 'wpinv_invoice_owner_vat_number_label', wp_sprintf( __( 'Owner %s Number', 'invoicing' ), $vat_name ), $invoice, $vat_name ); ?></th> |
|
910 | + <th><?php echo apply_filters('wpinv_invoice_owner_vat_number_label', wp_sprintf(__('Owner %s Number', 'invoicing'), $vat_name), $invoice, $vat_name); ?></th> |
|
911 | 911 | <td><?php echo $owner_vat_number; ?></td> |
912 | 912 | </tr> |
913 | 913 | <?php } ?> |
914 | - <?php do_action( 'wpinv_display_details_after_due_date', $invoice_id ); ?> |
|
915 | - <?php if ( $use_taxes && ( $user_vat_number = wpinv_get_invoice_vat_number( $invoice_id ) ) ) { ?> |
|
914 | + <?php do_action('wpinv_display_details_after_due_date', $invoice_id); ?> |
|
915 | + <?php if ($use_taxes && ($user_vat_number = wpinv_get_invoice_vat_number($invoice_id))) { ?> |
|
916 | 916 | <tr class="wpi-row-uvatno"> |
917 | - <th><?php echo apply_filters( 'wpinv_invoice_user_vat_number_label', wp_sprintf( __( 'Invoice %s Number', 'invoicing' ), $vat_name ), $invoice, $vat_name ); ?></th> |
|
917 | + <th><?php echo apply_filters('wpinv_invoice_user_vat_number_label', wp_sprintf(__('Invoice %s Number', 'invoicing'), $vat_name), $invoice, $vat_name); ?></th> |
|
918 | 918 | <td><?php echo $user_vat_number; ?></td> |
919 | 919 | </tr> |
920 | 920 | <?php } ?> |
921 | 921 | <tr class="table-active tr-total wpi-row-total"> |
922 | - <th><strong><?php _e( 'Total Amount', 'invoicing' ) ?></strong></th> |
|
923 | - <td><strong><?php echo wpinv_payment_total( $invoice_id, true ); ?></strong></td> |
|
922 | + <th><strong><?php _e('Total Amount', 'invoicing') ?></strong></th> |
|
923 | + <td><strong><?php echo wpinv_payment_total($invoice_id, true); ?></strong></td> |
|
924 | 924 | </tr> |
925 | 925 | </table> |
926 | 926 | <?php |
@@ -936,84 +936,84 @@ discard block |
||
936 | 936 | * @param string $separator How to separate address lines. |
937 | 937 | * @return string |
938 | 938 | */ |
939 | -function wpinv_get_invoice_address_markup( $billing_details, $separator = '<br/>' ) { |
|
939 | +function wpinv_get_invoice_address_markup($billing_details, $separator = '<br/>') { |
|
940 | 940 | |
941 | 941 | // Retrieve the address markup... |
942 | - $country= empty( $billing_details['country'] ) ? '' : $billing_details['country']; |
|
943 | - $format = wpinv_get_full_address_format( $country ); |
|
942 | + $country = empty($billing_details['country']) ? '' : $billing_details['country']; |
|
943 | + $format = wpinv_get_full_address_format($country); |
|
944 | 944 | |
945 | 945 | // ... and the replacements. |
946 | - $replacements = wpinv_get_invoice_address_replacements( $billing_details ); |
|
946 | + $replacements = wpinv_get_invoice_address_replacements($billing_details); |
|
947 | 947 | |
948 | - $formatted_address = str_ireplace( array_keys( $replacements ), $replacements, $format ); |
|
948 | + $formatted_address = str_ireplace(array_keys($replacements), $replacements, $format); |
|
949 | 949 | |
950 | 950 | // Remove unavailable tags. |
951 | - $formatted_address = preg_replace( "/\{\{\w+\}\}/", '', $formatted_address ); |
|
951 | + $formatted_address = preg_replace("/\{\{\w+\}\}/", '', $formatted_address); |
|
952 | 952 | |
953 | 953 | // Clean up white space. |
954 | - $formatted_address = preg_replace( '/ +/', ' ', trim( $formatted_address ) ); |
|
955 | - $formatted_address = preg_replace( '/\n\n+/', "\n", $formatted_address ); |
|
954 | + $formatted_address = preg_replace('/ +/', ' ', trim($formatted_address)); |
|
955 | + $formatted_address = preg_replace('/\n\n+/', "\n", $formatted_address); |
|
956 | 956 | |
957 | 957 | // Break newlines apart and remove empty lines/trim commas and white space. |
958 | - $formatted_address = array_filter( array_map( 'wpinv_trim_formatted_address_line', explode( "\n", $formatted_address ) ) ); |
|
958 | + $formatted_address = array_filter(array_map('wpinv_trim_formatted_address_line', explode("\n", $formatted_address))); |
|
959 | 959 | |
960 | 960 | // Add html breaks. |
961 | - $formatted_address = implode( $separator, $formatted_address ); |
|
961 | + $formatted_address = implode($separator, $formatted_address); |
|
962 | 962 | |
963 | 963 | // We're done! |
964 | 964 | return $formatted_address; |
965 | 965 | |
966 | 966 | } |
967 | 967 | |
968 | -function wpinv_display_to_address( $invoice_id = 0 ) { |
|
969 | - $invoice = wpinv_get_invoice( $invoice_id ); |
|
968 | +function wpinv_display_to_address($invoice_id = 0) { |
|
969 | + $invoice = wpinv_get_invoice($invoice_id); |
|
970 | 970 | |
971 | - if ( empty( $invoice ) ) { |
|
971 | + if (empty($invoice)) { |
|
972 | 972 | return NULL; |
973 | 973 | } |
974 | 974 | |
975 | 975 | $billing_details = $invoice->get_user_info(); |
976 | - $output = '<div class="to col-xs-2"><strong>' . __( 'To:', 'invoicing' ) . '</strong></div>'; |
|
976 | + $output = '<div class="to col-xs-2"><strong>' . __('To:', 'invoicing') . '</strong></div>'; |
|
977 | 977 | $output .= '<div class="wrapper col-xs-10">'; |
978 | 978 | |
979 | 979 | ob_start(); |
980 | - do_action( 'wpinv_display_to_address_top', $invoice ); |
|
980 | + do_action('wpinv_display_to_address_top', $invoice); |
|
981 | 981 | $output .= ob_get_clean(); |
982 | 982 | |
983 | - $address_row = wpinv_get_invoice_address_markup( $billing_details ); |
|
983 | + $address_row = wpinv_get_invoice_address_markup($billing_details); |
|
984 | 984 | |
985 | - if ( $address_row ) { |
|
985 | + if ($address_row) { |
|
986 | 986 | $output .= '<div class="address">' . $address_row . '</div>'; |
987 | 987 | } |
988 | 988 | |
989 | - if ( $phone = $invoice->get_phone() ) { |
|
990 | - $output .= '<div class="phone">' . wp_sprintf( __( 'Phone: %s', 'invoicing' ), esc_html( $phone ) ) . '</div>'; |
|
989 | + if ($phone = $invoice->get_phone()) { |
|
990 | + $output .= '<div class="phone">' . wp_sprintf(__('Phone: %s', 'invoicing'), esc_html($phone)) . '</div>'; |
|
991 | 991 | } |
992 | - if ( $email = $invoice->get_email() ) { |
|
993 | - $output .= '<div class="email">' . wp_sprintf( __( 'Email: %s' , 'invoicing'), esc_html( $email ) ) . '</div>'; |
|
992 | + if ($email = $invoice->get_email()) { |
|
993 | + $output .= '<div class="email">' . wp_sprintf(__('Email: %s', 'invoicing'), esc_html($email)) . '</div>'; |
|
994 | 994 | } |
995 | 995 | |
996 | 996 | ob_start(); |
997 | - do_action( 'wpinv_display_to_address_bottom', $invoice ); |
|
997 | + do_action('wpinv_display_to_address_bottom', $invoice); |
|
998 | 998 | $output .= ob_get_clean(); |
999 | 999 | |
1000 | 1000 | $output .= '</div>'; |
1001 | - $output = apply_filters( 'wpinv_display_to_address', $output, $invoice ); |
|
1001 | + $output = apply_filters('wpinv_display_to_address', $output, $invoice); |
|
1002 | 1002 | |
1003 | 1003 | echo $output; |
1004 | 1004 | } |
1005 | 1005 | |
1006 | -function wpinv_display_line_items( $invoice_id = 0 ) { |
|
1006 | +function wpinv_display_line_items($invoice_id = 0) { |
|
1007 | 1007 | global $wpinv_euvat, $ajax_cart_details; |
1008 | - $invoice = wpinv_get_invoice( $invoice_id ); |
|
1008 | + $invoice = wpinv_get_invoice($invoice_id); |
|
1009 | 1009 | $quantities_enabled = wpinv_item_quantities_enabled(); |
1010 | 1010 | $use_taxes = wpinv_use_taxes(); |
1011 | - if ( !$use_taxes && (float)$invoice->get_tax() > 0 ) { |
|
1011 | + if (!$use_taxes && (float) $invoice->get_tax() > 0) { |
|
1012 | 1012 | $use_taxes = true; |
1013 | 1013 | } |
1014 | - $zero_tax = !(float)$invoice->get_tax() > 0 ? true : false; |
|
1015 | - $tax_label = $use_taxes && $invoice->has_vat() ? $wpinv_euvat->get_vat_name() : __( 'Tax', 'invoicing' ); |
|
1016 | - $tax_title = !$zero_tax && $use_taxes ? ( wpinv_prices_include_tax() ? wp_sprintf( __( '(%s Incl.)', 'invoicing' ), $tax_label ) : wp_sprintf( __( '(%s Excl.)', 'invoicing' ), $tax_label ) ) : ''; |
|
1014 | + $zero_tax = !(float) $invoice->get_tax() > 0 ? true : false; |
|
1015 | + $tax_label = $use_taxes && $invoice->has_vat() ? $wpinv_euvat->get_vat_name() : __('Tax', 'invoicing'); |
|
1016 | + $tax_title = !$zero_tax && $use_taxes ? (wpinv_prices_include_tax() ? wp_sprintf(__('(%s Incl.)', 'invoicing'), $tax_label) : wp_sprintf(__('(%s Excl.)', 'invoicing'), $tax_label)) : ''; |
|
1017 | 1017 | |
1018 | 1018 | $cart_details = $invoice->get_cart_details(); |
1019 | 1019 | $ajax_cart_details = $cart_details; |
@@ -1022,67 +1022,67 @@ discard block |
||
1022 | 1022 | <table class="table table-sm table-bordered table-responsive"> |
1023 | 1023 | <thead> |
1024 | 1024 | <tr> |
1025 | - <th class="name"><strong><?php _e( "Item Name", "invoicing" );?></strong></th> |
|
1026 | - <th class="rate"><strong><?php _e( "Price", "invoicing" );?></strong></th> |
|
1025 | + <th class="name"><strong><?php _e("Item Name", "invoicing"); ?></strong></th> |
|
1026 | + <th class="rate"><strong><?php _e("Price", "invoicing"); ?></strong></th> |
|
1027 | 1027 | <?php if ($quantities_enabled) { ?> |
1028 | - <th class="qty"><strong><?php _e( "Qty", "invoicing" );?></strong></th> |
|
1028 | + <th class="qty"><strong><?php _e("Qty", "invoicing"); ?></strong></th> |
|
1029 | 1029 | <?php } ?> |
1030 | 1030 | <?php if ($use_taxes && !$zero_tax) { ?> |
1031 | 1031 | <th class="tax"><strong><?php echo $tax_label . ' <span class="normal small">(%)</span>'; ?></strong></th> |
1032 | 1032 | <?php } ?> |
1033 | - <th class="total"><strong><?php echo __( "Item Total", "invoicing" ) . ' <span class="normal small">' . $tax_title . '<span>';?></strong></th> |
|
1033 | + <th class="total"><strong><?php echo __("Item Total", "invoicing") . ' <span class="normal small">' . $tax_title . '<span>'; ?></strong></th> |
|
1034 | 1034 | </tr> |
1035 | 1035 | </thead> |
1036 | 1036 | <tbody> |
1037 | 1037 | <?php |
1038 | - if ( !empty( $cart_details ) ) { |
|
1039 | - do_action( 'wpinv_display_line_items_start', $invoice ); |
|
1038 | + if (!empty($cart_details)) { |
|
1039 | + do_action('wpinv_display_line_items_start', $invoice); |
|
1040 | 1040 | |
1041 | 1041 | $count = 0; |
1042 | 1042 | $cols = 3; |
1043 | - foreach ( $cart_details as $key => $cart_item ) { |
|
1044 | - $item_id = !empty($cart_item['id']) ? absint( $cart_item['id'] ) : ''; |
|
1045 | - $item_price = isset($cart_item["item_price"]) ? wpinv_round_amount( $cart_item["item_price"] ) : 0; |
|
1046 | - $line_total = isset($cart_item["subtotal"]) ? wpinv_round_amount( $cart_item["subtotal"] ) : 0; |
|
1047 | - $quantity = !empty($cart_item['quantity']) && (int)$cart_item['quantity'] > 0 ? absint( $cart_item['quantity'] ) : 1; |
|
1043 | + foreach ($cart_details as $key => $cart_item) { |
|
1044 | + $item_id = !empty($cart_item['id']) ? absint($cart_item['id']) : ''; |
|
1045 | + $item_price = isset($cart_item["item_price"]) ? wpinv_round_amount($cart_item["item_price"]) : 0; |
|
1046 | + $line_total = isset($cart_item["subtotal"]) ? wpinv_round_amount($cart_item["subtotal"]) : 0; |
|
1047 | + $quantity = !empty($cart_item['quantity']) && (int) $cart_item['quantity'] > 0 ? absint($cart_item['quantity']) : 1; |
|
1048 | 1048 | |
1049 | - $item = $item_id ? new WPInv_Item( $item_id ) : NULL; |
|
1049 | + $item = $item_id ? new WPInv_Item($item_id) : NULL; |
|
1050 | 1050 | $summary = ''; |
1051 | - $item_name = ''; |
|
1051 | + $item_name = ''; |
|
1052 | 1052 | $cols = 3; |
1053 | - if ( !empty($item) ) { |
|
1053 | + if (!empty($item)) { |
|
1054 | 1054 | $item_name = $item->get_name(); |
1055 | 1055 | $summary = $item->get_summary(); |
1056 | 1056 | } |
1057 | - $item_name = !empty($cart_item['name']) ? $cart_item['name'] : $item_name; |
|
1057 | + $item_name = !empty($cart_item['name']) ? $cart_item['name'] : $item_name; |
|
1058 | 1058 | |
1059 | - $summary = apply_filters( 'wpinv_print_invoice_line_item_summary', $summary, $cart_item, $item, $invoice ); |
|
1059 | + $summary = apply_filters('wpinv_print_invoice_line_item_summary', $summary, $cart_item, $item, $invoice); |
|
1060 | 1060 | |
1061 | 1061 | $item_tax = ''; |
1062 | 1062 | $tax_rate = ''; |
1063 | - if ( $use_taxes && $cart_item['tax'] > 0 && $cart_item['subtotal'] > 0 ) { |
|
1064 | - $item_tax = wpinv_price( wpinv_format_amount( $cart_item['tax'] ), $invoice->get_currency() ); |
|
1065 | - $tax_rate = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : ( $cart_item['tax'] / $cart_item['subtotal'] ) * 100; |
|
1066 | - $tax_rate = $tax_rate > 0 ? (float)wpinv_round_amount( $tax_rate, 4 ) : ''; |
|
1063 | + if ($use_taxes && $cart_item['tax'] > 0 && $cart_item['subtotal'] > 0) { |
|
1064 | + $item_tax = wpinv_price(wpinv_format_amount($cart_item['tax']), $invoice->get_currency()); |
|
1065 | + $tax_rate = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : ($cart_item['tax'] / $cart_item['subtotal']) * 100; |
|
1066 | + $tax_rate = $tax_rate > 0 ? (float) wpinv_round_amount($tax_rate, 4) : ''; |
|
1067 | 1067 | $tax_rate = $tax_rate != '' ? ' <small class="tax-rate">(' . $tax_rate . '%)</small>' : ''; |
1068 | 1068 | } |
1069 | 1069 | |
1070 | 1070 | $line_item_tax = $item_tax . $tax_rate; |
1071 | 1071 | |
1072 | - if ( $line_item_tax === '' ) { |
|
1072 | + if ($line_item_tax === '') { |
|
1073 | 1073 | $line_item_tax = 0; // Zero tax |
1074 | 1074 | } |
1075 | 1075 | |
1076 | - $action = apply_filters( 'wpinv_display_line_item_action', '', $cart_item, $invoice, $cols ); |
|
1076 | + $action = apply_filters('wpinv_display_line_item_action', '', $cart_item, $invoice, $cols); |
|
1077 | 1077 | |
1078 | - $line_item = '<tr class="row-' . ( ($count % 2 == 0) ? 'even' : 'odd' ) . ' wpinv-item">'; |
|
1079 | - $line_item .= '<td class="name">' . $action. esc_html__( $item_name, 'invoicing' ) . wpinv_get_item_suffix( $item ); |
|
1080 | - if ( $summary !== '' ) { |
|
1081 | - $line_item .= '<br/><small class="meta">' . wpautop( wp_kses_post( $summary ) ) . '</small>'; |
|
1078 | + $line_item = '<tr class="row-' . (($count % 2 == 0) ? 'even' : 'odd') . ' wpinv-item">'; |
|
1079 | + $line_item .= '<td class="name">' . $action . esc_html__($item_name, 'invoicing') . wpinv_get_item_suffix($item); |
|
1080 | + if ($summary !== '') { |
|
1081 | + $line_item .= '<br/><small class="meta">' . wpautop(wp_kses_post($summary)) . '</small>'; |
|
1082 | 1082 | } |
1083 | 1083 | $line_item .= '</td>'; |
1084 | 1084 | |
1085 | - $line_item .= '<td class="rate">' . esc_html__( wpinv_price( wpinv_format_amount( $item_price ), $invoice->get_currency() ) ) . '</td>'; |
|
1085 | + $line_item .= '<td class="rate">' . esc_html__(wpinv_price(wpinv_format_amount($item_price), $invoice->get_currency())) . '</td>'; |
|
1086 | 1086 | if ($quantities_enabled) { |
1087 | 1087 | $cols++; |
1088 | 1088 | $line_item .= '<td class="qty">' . $quantity . '</td>'; |
@@ -1091,55 +1091,55 @@ discard block |
||
1091 | 1091 | $cols++; |
1092 | 1092 | $line_item .= '<td class="tax">' . $line_item_tax . '</td>'; |
1093 | 1093 | } |
1094 | - $line_item .= '<td class="total">' . esc_html__( wpinv_price( wpinv_format_amount( $line_total ), $invoice->get_currency() ) ) . '</td>'; |
|
1094 | + $line_item .= '<td class="total">' . esc_html__(wpinv_price(wpinv_format_amount($line_total), $invoice->get_currency())) . '</td>'; |
|
1095 | 1095 | $line_item .= '</tr>'; |
1096 | 1096 | |
1097 | - echo apply_filters( 'wpinv_display_line_item', $line_item, $cart_item, $invoice, $cols ); |
|
1097 | + echo apply_filters('wpinv_display_line_item', $line_item, $cart_item, $invoice, $cols); |
|
1098 | 1098 | |
1099 | 1099 | $count++; |
1100 | 1100 | } |
1101 | 1101 | |
1102 | - do_action( 'wpinv_display_before_subtotal', $invoice, $cols ); |
|
1102 | + do_action('wpinv_display_before_subtotal', $invoice, $cols); |
|
1103 | 1103 | ?> |
1104 | 1104 | <tr class="row-sub-total row_odd"> |
1105 | - <td class="rate" colspan="<?php echo ( $cols - 1 ); ?>"><?php echo apply_filters( 'wpinv_print_cart_subtotal_label', '<strong>' . __( 'Sub Total', 'invoicing' ) . ':</strong>', $invoice ); ?></td> |
|
1106 | - <td class="total"><strong><?php _e( wpinv_subtotal( $invoice_id, true ) ) ?></strong></td> |
|
1105 | + <td class="rate" colspan="<?php echo ($cols - 1); ?>"><?php echo apply_filters('wpinv_print_cart_subtotal_label', '<strong>' . __('Sub Total', 'invoicing') . ':</strong>', $invoice); ?></td> |
|
1106 | + <td class="total"><strong><?php _e(wpinv_subtotal($invoice_id, true)) ?></strong></td> |
|
1107 | 1107 | </tr> |
1108 | 1108 | <?php |
1109 | - do_action( 'wpinv_display_after_subtotal', $invoice, $cols ); |
|
1109 | + do_action('wpinv_display_after_subtotal', $invoice, $cols); |
|
1110 | 1110 | |
1111 | - if ( wpinv_discount( $invoice_id, false ) > 0 ) { |
|
1112 | - do_action( 'wpinv_display_before_discount', $invoice, $cols ); |
|
1111 | + if (wpinv_discount($invoice_id, false) > 0) { |
|
1112 | + do_action('wpinv_display_before_discount', $invoice, $cols); |
|
1113 | 1113 | ?> |
1114 | 1114 | <tr class="row-discount"> |
1115 | - <td class="rate" colspan="<?php echo ( $cols - 1 ); ?>"><?php wpinv_get_discount_label( wpinv_discount_code( $invoice_id ) ); ?>:</td> |
|
1116 | - <td class="total"><?php echo wpinv_discount( $invoice_id, true, true ); ?></td> |
|
1115 | + <td class="rate" colspan="<?php echo ($cols - 1); ?>"><?php wpinv_get_discount_label(wpinv_discount_code($invoice_id)); ?>:</td> |
|
1116 | + <td class="total"><?php echo wpinv_discount($invoice_id, true, true); ?></td> |
|
1117 | 1117 | </tr> |
1118 | 1118 | <?php |
1119 | - do_action( 'wpinv_display_after_discount', $invoice, $cols ); |
|
1119 | + do_action('wpinv_display_after_discount', $invoice, $cols); |
|
1120 | 1120 | } |
1121 | 1121 | |
1122 | - if ( $use_taxes ) { |
|
1123 | - do_action( 'wpinv_display_before_tax', $invoice, $cols ); |
|
1122 | + if ($use_taxes) { |
|
1123 | + do_action('wpinv_display_before_tax', $invoice, $cols); |
|
1124 | 1124 | ?> |
1125 | 1125 | <tr class="row-tax"> |
1126 | - <td class="rate" colspan="<?php echo ( $cols - 1 ); ?>"><?php echo apply_filters( 'wpinv_print_cart_tax_label', '<strong>' . $tax_label . ':</strong>', $invoice ); ?></td> |
|
1127 | - <td class="total"><?php _e( wpinv_tax( $invoice_id, true ) ) ?></td> |
|
1126 | + <td class="rate" colspan="<?php echo ($cols - 1); ?>"><?php echo apply_filters('wpinv_print_cart_tax_label', '<strong>' . $tax_label . ':</strong>', $invoice); ?></td> |
|
1127 | + <td class="total"><?php _e(wpinv_tax($invoice_id, true)) ?></td> |
|
1128 | 1128 | </tr> |
1129 | 1129 | <?php |
1130 | - do_action( 'wpinv_display_after_tax', $invoice, $cols ); |
|
1130 | + do_action('wpinv_display_after_tax', $invoice, $cols); |
|
1131 | 1131 | } |
1132 | 1132 | |
1133 | - do_action( 'wpinv_display_before_total', $invoice, $cols ); |
|
1133 | + do_action('wpinv_display_before_total', $invoice, $cols); |
|
1134 | 1134 | ?> |
1135 | 1135 | <tr class="table-active row-total"> |
1136 | - <td class="rate" colspan="<?php echo ( $cols - 1 ); ?>"><?php echo apply_filters( 'wpinv_print_cart_total_label', '<strong>' . __( 'Total', 'invoicing' ) . ':</strong>', $invoice ); ?></td> |
|
1137 | - <td class="total"><strong><?php _e( wpinv_payment_total( $invoice_id, true ) ) ?></strong></td> |
|
1136 | + <td class="rate" colspan="<?php echo ($cols - 1); ?>"><?php echo apply_filters('wpinv_print_cart_total_label', '<strong>' . __('Total', 'invoicing') . ':</strong>', $invoice); ?></td> |
|
1137 | + <td class="total"><strong><?php _e(wpinv_payment_total($invoice_id, true)) ?></strong></td> |
|
1138 | 1138 | </tr> |
1139 | 1139 | <?php |
1140 | - do_action( 'wpinv_display_after_total', $invoice, $cols ); |
|
1140 | + do_action('wpinv_display_after_total', $invoice, $cols); |
|
1141 | 1141 | |
1142 | - do_action( 'wpinv_display_line_end', $invoice, $cols ); |
|
1142 | + do_action('wpinv_display_line_end', $invoice, $cols); |
|
1143 | 1143 | } |
1144 | 1144 | ?> |
1145 | 1145 | </tbody> |
@@ -1148,35 +1148,35 @@ discard block |
||
1148 | 1148 | echo ob_get_clean(); |
1149 | 1149 | } |
1150 | 1150 | |
1151 | -function wpinv_display_invoice_totals( $invoice_id = 0 ) { |
|
1151 | +function wpinv_display_invoice_totals($invoice_id = 0) { |
|
1152 | 1152 | $use_taxes = wpinv_use_taxes(); |
1153 | 1153 | |
1154 | - do_action( 'wpinv_before_display_totals_table', $invoice_id ); |
|
1154 | + do_action('wpinv_before_display_totals_table', $invoice_id); |
|
1155 | 1155 | ?> |
1156 | 1156 | <table class="table table-sm table-bordered table-responsive"> |
1157 | 1157 | <tbody> |
1158 | - <?php do_action( 'wpinv_before_display_totals' ); ?> |
|
1158 | + <?php do_action('wpinv_before_display_totals'); ?> |
|
1159 | 1159 | <tr class="row-sub-total"> |
1160 | - <td class="rate"><strong><?php _e( 'Sub Total', 'invoicing' ); ?></strong></td> |
|
1161 | - <td class="total"><strong><?php _e( wpinv_subtotal( $invoice_id, true ) ) ?></strong></td> |
|
1160 | + <td class="rate"><strong><?php _e('Sub Total', 'invoicing'); ?></strong></td> |
|
1161 | + <td class="total"><strong><?php _e(wpinv_subtotal($invoice_id, true)) ?></strong></td> |
|
1162 | 1162 | </tr> |
1163 | - <?php do_action( 'wpinv_after_display_totals' ); ?> |
|
1164 | - <?php if ( wpinv_discount( $invoice_id, false ) > 0 ) { ?> |
|
1163 | + <?php do_action('wpinv_after_display_totals'); ?> |
|
1164 | + <?php if (wpinv_discount($invoice_id, false) > 0) { ?> |
|
1165 | 1165 | <tr class="row-discount"> |
1166 | - <td class="rate"><?php wpinv_get_discount_label( wpinv_discount_code( $invoice_id ) ); ?></td> |
|
1167 | - <td class="total"><?php echo wpinv_discount( $invoice_id, true, true ); ?></td> |
|
1166 | + <td class="rate"><?php wpinv_get_discount_label(wpinv_discount_code($invoice_id)); ?></td> |
|
1167 | + <td class="total"><?php echo wpinv_discount($invoice_id, true, true); ?></td> |
|
1168 | 1168 | </tr> |
1169 | - <?php do_action( 'wpinv_after_display_discount' ); ?> |
|
1169 | + <?php do_action('wpinv_after_display_discount'); ?> |
|
1170 | 1170 | <?php } ?> |
1171 | - <?php if ( $use_taxes ) { ?> |
|
1171 | + <?php if ($use_taxes) { ?> |
|
1172 | 1172 | <tr class="row-tax"> |
1173 | - <td class="rate"><?php _e( 'Tax', 'invoicing' ); ?></td> |
|
1174 | - <td class="total"><?php _e( wpinv_tax( $invoice_id, true ) ) ?></td> |
|
1173 | + <td class="rate"><?php _e('Tax', 'invoicing'); ?></td> |
|
1174 | + <td class="total"><?php _e(wpinv_tax($invoice_id, true)) ?></td> |
|
1175 | 1175 | </tr> |
1176 | - <?php do_action( 'wpinv_after_display_tax' ); ?> |
|
1176 | + <?php do_action('wpinv_after_display_tax'); ?> |
|
1177 | 1177 | <?php } ?> |
1178 | - <?php if ( $fees = wpinv_get_fees( $invoice_id ) ) { ?> |
|
1179 | - <?php foreach ( $fees as $fee ) { ?> |
|
1178 | + <?php if ($fees = wpinv_get_fees($invoice_id)) { ?> |
|
1179 | + <?php foreach ($fees as $fee) { ?> |
|
1180 | 1180 | <tr class="row-fee"> |
1181 | 1181 | <td class="rate"><?php echo $fee['label']; ?></td> |
1182 | 1182 | <td class="total"><?php echo $fee['amount_display']; ?></td> |
@@ -1184,82 +1184,82 @@ discard block |
||
1184 | 1184 | <?php } ?> |
1185 | 1185 | <?php } ?> |
1186 | 1186 | <tr class="table-active row-total"> |
1187 | - <td class="rate"><strong><?php _e( 'Total', 'invoicing' ) ?></strong></td> |
|
1188 | - <td class="total"><strong><?php _e( wpinv_payment_total( $invoice_id, true ) ) ?></strong></td> |
|
1187 | + <td class="rate"><strong><?php _e('Total', 'invoicing') ?></strong></td> |
|
1188 | + <td class="total"><strong><?php _e(wpinv_payment_total($invoice_id, true)) ?></strong></td> |
|
1189 | 1189 | </tr> |
1190 | - <?php do_action( 'wpinv_after_totals' ); ?> |
|
1190 | + <?php do_action('wpinv_after_totals'); ?> |
|
1191 | 1191 | </tbody> |
1192 | 1192 | |
1193 | 1193 | </table> |
1194 | 1194 | |
1195 | - <?php do_action( 'wpinv_after_totals_table' ); |
|
1195 | + <?php do_action('wpinv_after_totals_table'); |
|
1196 | 1196 | } |
1197 | 1197 | |
1198 | -function wpinv_display_payments_info( $invoice_id = 0, $echo = true ) { |
|
1199 | - $invoice = wpinv_get_invoice( $invoice_id ); |
|
1198 | +function wpinv_display_payments_info($invoice_id = 0, $echo = true) { |
|
1199 | + $invoice = wpinv_get_invoice($invoice_id); |
|
1200 | 1200 | |
1201 | 1201 | ob_start(); |
1202 | - do_action( 'wpinv_before_display_payments_info', $invoice_id ); |
|
1203 | - if ( ( $gateway_title = $invoice->get_gateway_title() ) || $invoice->is_paid() || $invoice->is_refunded() ) { |
|
1202 | + do_action('wpinv_before_display_payments_info', $invoice_id); |
|
1203 | + if (($gateway_title = $invoice->get_gateway_title()) || $invoice->is_paid() || $invoice->is_refunded()) { |
|
1204 | 1204 | ?> |
1205 | 1205 | <div class="wpi-payment-info"> |
1206 | - <p class="wpi-payment-gateway"><?php echo wp_sprintf( __( 'Payment via %s', 'invoicing' ), $gateway_title ? $gateway_title : __( 'Manually', 'invoicing' ) ); ?></p> |
|
1207 | - <?php if ( $gateway_title ) { ?> |
|
1208 | - <p class="wpi-payment-transid"><?php echo wp_sprintf( __( 'Transaction ID: %s', 'invoicing' ), $invoice->get_transaction_id() ); ?></p> |
|
1206 | + <p class="wpi-payment-gateway"><?php echo wp_sprintf(__('Payment via %s', 'invoicing'), $gateway_title ? $gateway_title : __('Manually', 'invoicing')); ?></p> |
|
1207 | + <?php if ($gateway_title) { ?> |
|
1208 | + <p class="wpi-payment-transid"><?php echo wp_sprintf(__('Transaction ID: %s', 'invoicing'), $invoice->get_transaction_id()); ?></p> |
|
1209 | 1209 | <?php } ?> |
1210 | 1210 | </div> |
1211 | 1211 | <?php |
1212 | 1212 | } |
1213 | - do_action( 'wpinv_after_display_payments_info', $invoice_id ); |
|
1213 | + do_action('wpinv_after_display_payments_info', $invoice_id); |
|
1214 | 1214 | $outout = ob_get_clean(); |
1215 | 1215 | |
1216 | - if ( $echo ) { |
|
1216 | + if ($echo) { |
|
1217 | 1217 | echo $outout; |
1218 | 1218 | } else { |
1219 | 1219 | return $outout; |
1220 | 1220 | } |
1221 | 1221 | } |
1222 | 1222 | |
1223 | -function wpinv_display_style( $invoice ) { |
|
1224 | - wp_register_style( 'wpinv-single-style', WPINV_PLUGIN_URL . 'assets/css/invoice.css', array(), WPINV_VERSION ); |
|
1223 | +function wpinv_display_style($invoice) { |
|
1224 | + wp_register_style('wpinv-single-style', WPINV_PLUGIN_URL . 'assets/css/invoice.css', array(), WPINV_VERSION); |
|
1225 | 1225 | |
1226 | - wp_print_styles( 'open-sans' ); |
|
1227 | - wp_print_styles( 'wpinv-single-style' ); |
|
1226 | + wp_print_styles('open-sans'); |
|
1227 | + wp_print_styles('wpinv-single-style'); |
|
1228 | 1228 | |
1229 | 1229 | $custom_css = wpinv_get_option('template_custom_css'); |
1230 | - if(isset($custom_css) && !empty($custom_css)){ |
|
1231 | - $custom_css = wp_kses( $custom_css, array( '\'', '\"' ) ); |
|
1232 | - $custom_css = str_replace( '>', '>', $custom_css ); |
|
1230 | + if (isset($custom_css) && !empty($custom_css)) { |
|
1231 | + $custom_css = wp_kses($custom_css, array('\'', '\"')); |
|
1232 | + $custom_css = str_replace('>', '>', $custom_css); |
|
1233 | 1233 | echo '<style type="text/css">'; |
1234 | 1234 | echo $custom_css; |
1235 | 1235 | echo '</style>'; |
1236 | 1236 | } |
1237 | 1237 | } |
1238 | -add_action( 'wpinv_invoice_print_head', 'wpinv_display_style' ); |
|
1239 | -add_action( 'wpinv_invalid_invoice_head', 'wpinv_display_style' ); |
|
1238 | +add_action('wpinv_invoice_print_head', 'wpinv_display_style'); |
|
1239 | +add_action('wpinv_invalid_invoice_head', 'wpinv_display_style'); |
|
1240 | 1240 | |
1241 | 1241 | function wpinv_checkout_billing_details() { |
1242 | - $invoice_id = (int)wpinv_get_invoice_cart_id(); |
|
1242 | + $invoice_id = (int) wpinv_get_invoice_cart_id(); |
|
1243 | 1243 | if (empty($invoice_id)) { |
1244 | - wpinv_error_log( 'Invoice id not found', 'ERROR', __FILE__, __LINE__ ); |
|
1244 | + wpinv_error_log('Invoice id not found', 'ERROR', __FILE__, __LINE__); |
|
1245 | 1245 | return null; |
1246 | 1246 | } |
1247 | 1247 | |
1248 | - $invoice = wpinv_get_invoice_cart( $invoice_id ); |
|
1248 | + $invoice = wpinv_get_invoice_cart($invoice_id); |
|
1249 | 1249 | if (empty($invoice)) { |
1250 | - wpinv_error_log( 'Invoice not found', 'ERROR', __FILE__, __LINE__ ); |
|
1250 | + wpinv_error_log('Invoice not found', 'ERROR', __FILE__, __LINE__); |
|
1251 | 1251 | return null; |
1252 | 1252 | } |
1253 | 1253 | $user_id = $invoice->get_user_id(); |
1254 | 1254 | $user_info = $invoice->get_user_info(); |
1255 | - $address_info = wpinv_get_user_address( $user_id ); |
|
1255 | + $address_info = wpinv_get_user_address($user_id); |
|
1256 | 1256 | |
1257 | - if ( empty( $user_info['first_name'] ) && !empty( $user_info['first_name'] ) ) { |
|
1257 | + if (empty($user_info['first_name']) && !empty($user_info['first_name'])) { |
|
1258 | 1258 | $user_info['first_name'] = $user_info['first_name']; |
1259 | 1259 | $user_info['last_name'] = $user_info['last_name']; |
1260 | 1260 | } |
1261 | 1261 | |
1262 | - if ( ( ( empty( $user_info['country'] ) && !empty( $address_info['country'] ) ) || ( empty( $user_info['state'] ) && !empty( $address_info['state'] ) && $user_info['country'] == $address_info['country'] ) ) ) { |
|
1262 | + if (((empty($user_info['country']) && !empty($address_info['country'])) || (empty($user_info['state']) && !empty($address_info['state']) && $user_info['country'] == $address_info['country']))) { |
|
1263 | 1263 | $user_info['country'] = $address_info['country']; |
1264 | 1264 | $user_info['state'] = $address_info['state']; |
1265 | 1265 | $user_info['city'] = $address_info['city']; |
@@ -1275,98 +1275,98 @@ discard block |
||
1275 | 1275 | 'address' |
1276 | 1276 | ); |
1277 | 1277 | |
1278 | - foreach ( $address_fields as $field ) { |
|
1279 | - if ( empty( $user_info[$field] ) ) { |
|
1278 | + foreach ($address_fields as $field) { |
|
1279 | + if (empty($user_info[$field])) { |
|
1280 | 1280 | $user_info[$field] = $address_info[$field]; |
1281 | 1281 | } |
1282 | 1282 | } |
1283 | 1283 | |
1284 | - return apply_filters( 'wpinv_checkout_billing_details', $user_info, $invoice ); |
|
1284 | + return apply_filters('wpinv_checkout_billing_details', $user_info, $invoice); |
|
1285 | 1285 | } |
1286 | 1286 | |
1287 | 1287 | function wpinv_admin_get_line_items($invoice = array()) { |
1288 | 1288 | $item_quantities = wpinv_item_quantities_enabled(); |
1289 | 1289 | $use_taxes = wpinv_use_taxes(); |
1290 | 1290 | |
1291 | - if ( empty( $invoice ) ) { |
|
1291 | + if (empty($invoice)) { |
|
1292 | 1292 | return NULL; |
1293 | 1293 | } |
1294 | 1294 | |
1295 | 1295 | $cart_items = $invoice->get_cart_details(); |
1296 | - if ( empty( $cart_items ) ) { |
|
1296 | + if (empty($cart_items)) { |
|
1297 | 1297 | return NULL; |
1298 | 1298 | } |
1299 | 1299 | ob_start(); |
1300 | 1300 | |
1301 | - do_action( 'wpinv_admin_before_line_items', $cart_items, $invoice ); |
|
1301 | + do_action('wpinv_admin_before_line_items', $cart_items, $invoice); |
|
1302 | 1302 | |
1303 | 1303 | $count = 0; |
1304 | - foreach ( $cart_items as $key => $cart_item ) { |
|
1304 | + foreach ($cart_items as $key => $cart_item) { |
|
1305 | 1305 | $item_id = $cart_item['id']; |
1306 | - $wpi_item = $item_id > 0 ? new WPInv_Item( $item_id ) : NULL; |
|
1306 | + $wpi_item = $item_id > 0 ? new WPInv_Item($item_id) : NULL; |
|
1307 | 1307 | |
1308 | 1308 | if (empty($wpi_item)) { |
1309 | 1309 | continue; |
1310 | 1310 | } |
1311 | 1311 | |
1312 | - $item_price = wpinv_price( wpinv_format_amount( $cart_item['item_price'] ), $invoice->get_currency() ); |
|
1313 | - $quantity = !empty( $cart_item['quantity'] ) && $cart_item['quantity'] > 0 ? $cart_item['quantity'] : 1; |
|
1314 | - $item_subtotal = wpinv_price( wpinv_format_amount( $cart_item['subtotal'] ), $invoice->get_currency() ); |
|
1312 | + $item_price = wpinv_price(wpinv_format_amount($cart_item['item_price']), $invoice->get_currency()); |
|
1313 | + $quantity = !empty($cart_item['quantity']) && $cart_item['quantity'] > 0 ? $cart_item['quantity'] : 1; |
|
1314 | + $item_subtotal = wpinv_price(wpinv_format_amount($cart_item['subtotal']), $invoice->get_currency()); |
|
1315 | 1315 | $can_remove = true; |
1316 | 1316 | |
1317 | - $summary = apply_filters( 'wpinv_admin_invoice_line_item_summary', '', $cart_item, $wpi_item, $invoice ); |
|
1317 | + $summary = apply_filters('wpinv_admin_invoice_line_item_summary', '', $cart_item, $wpi_item, $invoice); |
|
1318 | 1318 | |
1319 | 1319 | $item_tax = ''; |
1320 | 1320 | $tax_rate = ''; |
1321 | - if ( $cart_item['tax'] > 0 && $cart_item['subtotal'] > 0 ) { |
|
1322 | - $item_tax = wpinv_price( wpinv_format_amount( $cart_item['tax'] ), $invoice->get_currency() ); |
|
1323 | - $tax_rate = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : ( $cart_item['tax'] / $cart_item['subtotal'] ) * 100; |
|
1324 | - $tax_rate = $tax_rate > 0 ? (float)wpinv_round_amount( $tax_rate, 4 ) : ''; |
|
1321 | + if ($cart_item['tax'] > 0 && $cart_item['subtotal'] > 0) { |
|
1322 | + $item_tax = wpinv_price(wpinv_format_amount($cart_item['tax']), $invoice->get_currency()); |
|
1323 | + $tax_rate = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : ($cart_item['tax'] / $cart_item['subtotal']) * 100; |
|
1324 | + $tax_rate = $tax_rate > 0 ? (float) wpinv_round_amount($tax_rate, 4) : ''; |
|
1325 | 1325 | $tax_rate = $tax_rate != '' ? ' <span class="tax-rate">(' . $tax_rate . '%)</span>' : ''; |
1326 | 1326 | } |
1327 | 1327 | $line_item_tax = $item_tax . $tax_rate; |
1328 | 1328 | |
1329 | - if ( $line_item_tax === '' ) { |
|
1329 | + if ($line_item_tax === '') { |
|
1330 | 1330 | $line_item_tax = 0; // Zero tax |
1331 | 1331 | } |
1332 | 1332 | |
1333 | - $line_item = '<tr class="item item-' . ( ($count % 2 == 0) ? 'even' : 'odd' ) . '" data-item-id="' . $item_id . '">'; |
|
1333 | + $line_item = '<tr class="item item-' . (($count % 2 == 0) ? 'even' : 'odd') . '" data-item-id="' . $item_id . '">'; |
|
1334 | 1334 | $line_item .= '<td class="id">' . $item_id . '</td>'; |
1335 | - $line_item .= '<td class="title"><a href="' . get_edit_post_link( $item_id ) . '" target="_blank">' . $cart_item['name'] . '</a>' . wpinv_get_item_suffix( $wpi_item ); |
|
1336 | - if ( $summary !== '' ) { |
|
1337 | - $line_item .= '<span class="meta">' . wpautop( wp_kses_post( $summary ) ) . '</span>'; |
|
1335 | + $line_item .= '<td class="title"><a href="' . get_edit_post_link($item_id) . '" target="_blank">' . $cart_item['name'] . '</a>' . wpinv_get_item_suffix($wpi_item); |
|
1336 | + if ($summary !== '') { |
|
1337 | + $line_item .= '<span class="meta">' . wpautop(wp_kses_post($summary)) . '</span>'; |
|
1338 | 1338 | } |
1339 | 1339 | $line_item .= '</td>'; |
1340 | 1340 | $line_item .= '<td class="price">' . $item_price . '</td>'; |
1341 | 1341 | |
1342 | - if ( $item_quantities ) { |
|
1343 | - if ( count( $cart_items ) == 1 && $quantity <= 1 ) { |
|
1342 | + if ($item_quantities) { |
|
1343 | + if (count($cart_items) == 1 && $quantity <= 1) { |
|
1344 | 1344 | $can_remove = false; |
1345 | 1345 | } |
1346 | 1346 | $line_item .= '<td class="qty" data-quantity="' . $quantity . '"> × ' . $quantity . '</td>'; |
1347 | 1347 | } else { |
1348 | - if ( count( $cart_items ) == 1 ) { |
|
1348 | + if (count($cart_items) == 1) { |
|
1349 | 1349 | $can_remove = false; |
1350 | 1350 | } |
1351 | 1351 | } |
1352 | 1352 | $line_item .= '<td class="total">' . $item_subtotal . '</td>'; |
1353 | 1353 | |
1354 | - if ( $use_taxes ) { |
|
1354 | + if ($use_taxes) { |
|
1355 | 1355 | $line_item .= '<td class="tax">' . $line_item_tax . '</td>'; |
1356 | 1356 | } |
1357 | 1357 | $line_item .= '<td class="action">'; |
1358 | - if ( !$invoice->is_paid() && !$invoice->is_refunded() ) { |
|
1358 | + if (!$invoice->is_paid() && !$invoice->is_refunded()) { |
|
1359 | 1359 | $line_item .= '<i class="fa fa-remove wpinv-item-remove"></i>'; |
1360 | 1360 | } |
1361 | 1361 | $line_item .= '</td>'; |
1362 | 1362 | $line_item .= '</tr>'; |
1363 | 1363 | |
1364 | - echo apply_filters( 'wpinv_admin_line_item', $line_item, $cart_item, $invoice ); |
|
1364 | + echo apply_filters('wpinv_admin_line_item', $line_item, $cart_item, $invoice); |
|
1365 | 1365 | |
1366 | 1366 | $count++; |
1367 | 1367 | } |
1368 | 1368 | |
1369 | - do_action( 'wpinv_admin_after_line_items', $cart_items, $invoice ); |
|
1369 | + do_action('wpinv_admin_after_line_items', $cart_items, $invoice); |
|
1370 | 1370 | |
1371 | 1371 | return ob_get_clean(); |
1372 | 1372 | } |
@@ -1378,32 +1378,32 @@ discard block |
||
1378 | 1378 | $wpi_checkout_id = wpinv_get_invoice_cart_id(); |
1379 | 1379 | |
1380 | 1380 | //Maybe update the prices |
1381 | - if(! empty( $_GET['wpi_dynamic_item'] ) && ! empty( $_GET['wpi_dynamic_price'] ) ) { |
|
1381 | + if (!empty($_GET['wpi_dynamic_item']) && !empty($_GET['wpi_dynamic_price'])) { |
|
1382 | 1382 | |
1383 | 1383 | //If the invoice exists, update it with new pricing details |
1384 | - if (! empty( $wpi_checkout_id ) ) { |
|
1384 | + if (!empty($wpi_checkout_id)) { |
|
1385 | 1385 | |
1386 | 1386 | $_invoice = wpinv_get_invoice_cart(); |
1387 | 1387 | $_cart_details = $_invoice->get_cart_details(); |
1388 | - $_dynamic_item = sanitize_text_field( $_GET['wpi_dynamic_item'] ); |
|
1388 | + $_dynamic_item = sanitize_text_field($_GET['wpi_dynamic_item']); |
|
1389 | 1389 | |
1390 | 1390 | //First, fetch the item |
1391 | - $item = new WPInv_Item( $_dynamic_item ); |
|
1391 | + $item = new WPInv_Item($_dynamic_item); |
|
1392 | 1392 | |
1393 | 1393 | //Next, ensure it supports dynamic pricing... |
1394 | - if( $item->supports_dynamic_pricing() && $item->get_is_dynamic_pricing() ) { |
|
1394 | + if ($item->supports_dynamic_pricing() && $item->get_is_dynamic_pricing()) { |
|
1395 | 1395 | |
1396 | 1396 | //... and that the new price is not lower than the minimum price |
1397 | - $_dynamic_price = (float) wpinv_sanitize_amount( sanitize_text_field( $_GET['wpi_dynamic_price'] ) ); |
|
1398 | - if( $_dynamic_price < $item->get_minimum_price() ) { |
|
1397 | + $_dynamic_price = (float) wpinv_sanitize_amount(sanitize_text_field($_GET['wpi_dynamic_price'])); |
|
1398 | + if ($_dynamic_price < $item->get_minimum_price()) { |
|
1399 | 1399 | $_dynamic_price = $item->get_minimum_price(); |
1400 | 1400 | } |
1401 | 1401 | |
1402 | 1402 | //Finally, update our invoice with the new price |
1403 | - if ( !empty( $_cart_details ) ) { |
|
1403 | + if (!empty($_cart_details)) { |
|
1404 | 1404 | |
1405 | - foreach ( $_cart_details as $key => $item ) { |
|
1406 | - if ( !empty( $item['id'] ) && $_dynamic_item == $item['id'] ) { |
|
1405 | + foreach ($_cart_details as $key => $item) { |
|
1406 | + if (!empty($item['id']) && $_dynamic_item == $item['id']) { |
|
1407 | 1407 | $_cart_details[$key]['custom_price'] = $_dynamic_price; |
1408 | 1408 | $_cart_details[$key]['item_price'] = $_dynamic_price; |
1409 | 1409 | } |
@@ -1411,8 +1411,8 @@ discard block |
||
1411 | 1411 | |
1412 | 1412 | $_meta = $_invoice->get_meta(); |
1413 | 1413 | $_meta['cart_details'] = $_cart_details; |
1414 | - $_invoice->set( 'payment_meta', $_meta ); |
|
1415 | - $_invoice->set( 'cart_details', $_cart_details ); |
|
1414 | + $_invoice->set('payment_meta', $_meta); |
|
1415 | + $_invoice->set('cart_details', $_cart_details); |
|
1416 | 1416 | $_invoice->recalculate_totals(); |
1417 | 1417 | |
1418 | 1418 | } |
@@ -1423,60 +1423,60 @@ discard block |
||
1423 | 1423 | |
1424 | 1424 | } |
1425 | 1425 | |
1426 | - $form_action = esc_url( wpinv_get_checkout_uri() ); |
|
1426 | + $form_action = esc_url(wpinv_get_checkout_uri()); |
|
1427 | 1427 | |
1428 | 1428 | ob_start(); |
1429 | - do_action( 'wpinv_checkout_content_before' ); |
|
1429 | + do_action('wpinv_checkout_content_before'); |
|
1430 | 1430 | echo '<div id="wpinv_checkout_wrap">'; |
1431 | 1431 | |
1432 | - if ( wpinv_get_cart_contents() || wpinv_cart_has_fees() ) { |
|
1432 | + if (wpinv_get_cart_contents() || wpinv_cart_has_fees()) { |
|
1433 | 1433 | ?> |
1434 | 1434 | <div id="wpinv_checkout_form_wrap" class="wpinv_clearfix table-responsive"> |
1435 | - <?php do_action( 'wpinv_before_checkout_form' ); ?> |
|
1435 | + <?php do_action('wpinv_before_checkout_form'); ?> |
|
1436 | 1436 | <form id="wpinv_checkout_form" class="wpi-form" action="<?php echo $form_action; ?>" method="POST"> |
1437 | 1437 | <?php |
1438 | - do_action( 'wpinv_checkout_form_top' ); |
|
1439 | - do_action( 'wpinv_checkout_billing_info' ); |
|
1440 | - do_action( 'wpinv_checkout_cart' ); |
|
1441 | - do_action( 'wpinv_payment_mode_select' ); |
|
1442 | - do_action( 'wpinv_checkout_form_bottom' ) |
|
1438 | + do_action('wpinv_checkout_form_top'); |
|
1439 | + do_action('wpinv_checkout_billing_info'); |
|
1440 | + do_action('wpinv_checkout_cart'); |
|
1441 | + do_action('wpinv_payment_mode_select'); |
|
1442 | + do_action('wpinv_checkout_form_bottom') |
|
1443 | 1443 | ?> |
1444 | 1444 | </form> |
1445 | - <?php do_action( 'wpinv_after_purchase_form' ); ?> |
|
1445 | + <?php do_action('wpinv_after_purchase_form'); ?> |
|
1446 | 1446 | </div><!--end #wpinv_checkout_form_wrap--> |
1447 | 1447 | <?php |
1448 | 1448 | } else { |
1449 | - do_action( 'wpinv_cart_empty' ); |
|
1449 | + do_action('wpinv_cart_empty'); |
|
1450 | 1450 | } |
1451 | 1451 | echo '</div><!--end #wpinv_checkout_wrap-->'; |
1452 | - do_action( 'wpinv_checkout_content_after' ); |
|
1452 | + do_action('wpinv_checkout_content_after'); |
|
1453 | 1453 | return ob_get_clean(); |
1454 | 1454 | } |
1455 | 1455 | |
1456 | -function wpinv_checkout_cart( $cart_details = array(), $echo = true ) { |
|
1456 | +function wpinv_checkout_cart($cart_details = array(), $echo = true) { |
|
1457 | 1457 | global $ajax_cart_details; |
1458 | 1458 | $ajax_cart_details = $cart_details; |
1459 | 1459 | |
1460 | 1460 | ob_start(); |
1461 | - do_action( 'wpinv_before_checkout_cart' ); |
|
1461 | + do_action('wpinv_before_checkout_cart'); |
|
1462 | 1462 | echo '<div id="wpinv_checkout_cart_form" method="post">'; |
1463 | 1463 | echo '<div id="wpinv_checkout_cart_wrap">'; |
1464 | - wpinv_get_template_part( 'wpinv-checkout-cart' ); |
|
1464 | + wpinv_get_template_part('wpinv-checkout-cart'); |
|
1465 | 1465 | echo '</div>'; |
1466 | 1466 | echo '</div>'; |
1467 | - do_action( 'wpinv_after_checkout_cart' ); |
|
1467 | + do_action('wpinv_after_checkout_cart'); |
|
1468 | 1468 | $content = ob_get_clean(); |
1469 | 1469 | |
1470 | - if ( $echo ) { |
|
1470 | + if ($echo) { |
|
1471 | 1471 | echo $content; |
1472 | 1472 | } else { |
1473 | 1473 | return $content; |
1474 | 1474 | } |
1475 | 1475 | } |
1476 | -add_action( 'wpinv_checkout_cart', 'wpinv_checkout_cart', 10 ); |
|
1476 | +add_action('wpinv_checkout_cart', 'wpinv_checkout_cart', 10); |
|
1477 | 1477 | |
1478 | 1478 | function wpinv_empty_cart_message() { |
1479 | - return apply_filters( 'wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __( 'Your cart is empty.', 'invoicing' ) . '</span>' ); |
|
1479 | + return apply_filters('wpinv_empty_cart_message', '<span class="wpinv_empty_cart">' . __('Your cart is empty.', 'invoicing') . '</span>'); |
|
1480 | 1480 | } |
1481 | 1481 | |
1482 | 1482 | /** |
@@ -1488,83 +1488,83 @@ discard block |
||
1488 | 1488 | function wpinv_empty_checkout_cart() { |
1489 | 1489 | echo wpinv_empty_cart_message(); |
1490 | 1490 | } |
1491 | -add_action( 'wpinv_cart_empty', 'wpinv_empty_checkout_cart' ); |
|
1491 | +add_action('wpinv_cart_empty', 'wpinv_empty_checkout_cart'); |
|
1492 | 1492 | |
1493 | 1493 | function wpinv_update_cart_button() { |
1494 | - if ( !wpinv_item_quantities_enabled() ) |
|
1494 | + if (!wpinv_item_quantities_enabled()) |
|
1495 | 1495 | return; |
1496 | 1496 | ?> |
1497 | - <input type="submit" name="wpinv_update_cart_submit" class="wpinv-submit wpinv-no-js button" value="<?php _e( 'Update Cart', 'invoicing' ); ?>"/> |
|
1497 | + <input type="submit" name="wpinv_update_cart_submit" class="wpinv-submit wpinv-no-js button" value="<?php _e('Update Cart', 'invoicing'); ?>"/> |
|
1498 | 1498 | <input type="hidden" name="wpi_action" value="update_cart"/> |
1499 | 1499 | <?php |
1500 | 1500 | } |
1501 | 1501 | |
1502 | 1502 | function wpinv_checkout_cart_columns() { |
1503 | 1503 | $default = 3; |
1504 | - if ( wpinv_item_quantities_enabled() ) { |
|
1504 | + if (wpinv_item_quantities_enabled()) { |
|
1505 | 1505 | $default++; |
1506 | 1506 | } |
1507 | 1507 | |
1508 | - if ( wpinv_use_taxes() ) { |
|
1508 | + if (wpinv_use_taxes()) { |
|
1509 | 1509 | $default++; |
1510 | 1510 | } |
1511 | 1511 | |
1512 | - return apply_filters( 'wpinv_checkout_cart_columns', $default ); |
|
1512 | + return apply_filters('wpinv_checkout_cart_columns', $default); |
|
1513 | 1513 | } |
1514 | 1514 | |
1515 | 1515 | function wpinv_display_cart_messages() { |
1516 | 1516 | global $wpi_session; |
1517 | 1517 | |
1518 | - $messages = $wpi_session->get( 'wpinv_cart_messages' ); |
|
1518 | + $messages = $wpi_session->get('wpinv_cart_messages'); |
|
1519 | 1519 | |
1520 | - if ( $messages ) { |
|
1521 | - foreach ( $messages as $message_id => $message ) { |
|
1520 | + if ($messages) { |
|
1521 | + foreach ($messages as $message_id => $message) { |
|
1522 | 1522 | // Try and detect what type of message this is |
1523 | - if ( strpos( strtolower( $message ), 'error' ) ) { |
|
1523 | + if (strpos(strtolower($message), 'error')) { |
|
1524 | 1524 | $type = 'error'; |
1525 | - } elseif ( strpos( strtolower( $message ), 'success' ) ) { |
|
1525 | + } elseif (strpos(strtolower($message), 'success')) { |
|
1526 | 1526 | $type = 'success'; |
1527 | 1527 | } else { |
1528 | 1528 | $type = 'info'; |
1529 | 1529 | } |
1530 | 1530 | |
1531 | - $classes = apply_filters( 'wpinv_' . $type . '_class', array( 'wpinv_errors', 'wpinv-alert', 'wpinv-alert-' . $type ) ); |
|
1531 | + $classes = apply_filters('wpinv_' . $type . '_class', array('wpinv_errors', 'wpinv-alert', 'wpinv-alert-' . $type)); |
|
1532 | 1532 | |
1533 | - echo '<div class="' . implode( ' ', $classes ) . '">'; |
|
1533 | + echo '<div class="' . implode(' ', $classes) . '">'; |
|
1534 | 1534 | // Loop message codes and display messages |
1535 | 1535 | echo '<p class="wpinv_error" id="wpinv_msg_' . $message_id . '">' . $message . '</p>'; |
1536 | 1536 | echo '</div>'; |
1537 | 1537 | } |
1538 | 1538 | |
1539 | 1539 | // Remove all of the cart saving messages |
1540 | - $wpi_session->set( 'wpinv_cart_messages', null ); |
|
1540 | + $wpi_session->set('wpinv_cart_messages', null); |
|
1541 | 1541 | } |
1542 | 1542 | } |
1543 | -add_action( 'wpinv_before_checkout_cart', 'wpinv_display_cart_messages' ); |
|
1543 | +add_action('wpinv_before_checkout_cart', 'wpinv_display_cart_messages'); |
|
1544 | 1544 | |
1545 | 1545 | function wpinv_discount_field() { |
1546 | - if ( isset( $_GET['wpi-gateway'] ) && wpinv_is_ajax_disabled() ) { |
|
1546 | + if (isset($_GET['wpi-gateway']) && wpinv_is_ajax_disabled()) { |
|
1547 | 1547 | return; // Only show before a payment method has been selected if ajax is disabled |
1548 | 1548 | } |
1549 | 1549 | |
1550 | - if ( !wpinv_is_checkout() ) { |
|
1550 | + if (!wpinv_is_checkout()) { |
|
1551 | 1551 | return; |
1552 | 1552 | } |
1553 | 1553 | |
1554 | - if ( wpinv_has_active_discounts() && wpinv_get_cart_total() ) { |
|
1554 | + if (wpinv_has_active_discounts() && wpinv_get_cart_total()) { |
|
1555 | 1555 | ?> |
1556 | 1556 | <div id="wpinv-discount-field" class="panel panel-default"> |
1557 | 1557 | <div class="panel-body"> |
1558 | 1558 | <p> |
1559 | - <label class="wpinv-label" for="wpinv_discount_code"><strong><?php _e( 'Discount', 'invoicing' ); ?></strong></label> |
|
1560 | - <span class="wpinv-description"><?php _e( 'Enter a discount code if you have one.', 'invoicing' ); ?></span> |
|
1559 | + <label class="wpinv-label" for="wpinv_discount_code"><strong><?php _e('Discount', 'invoicing'); ?></strong></label> |
|
1560 | + <span class="wpinv-description"><?php _e('Enter a discount code if you have one.', 'invoicing'); ?></span> |
|
1561 | 1561 | </p> |
1562 | 1562 | <div class="form-group row"> |
1563 | 1563 | <div class="col-sm-4"> |
1564 | - <input class="wpinv-input form-control" type="text" id="wpinv_discount_code" name="wpinv_discount_code" placeholder="<?php _e( 'Enter discount code', 'invoicing' ); ?>"/> |
|
1564 | + <input class="wpinv-input form-control" type="text" id="wpinv_discount_code" name="wpinv_discount_code" placeholder="<?php _e('Enter discount code', 'invoicing'); ?>"/> |
|
1565 | 1565 | </div> |
1566 | 1566 | <div class="col-sm-3"> |
1567 | - <button id="wpi-apply-discount" type="button" class="btn btn-success btn-sm"><?php _e( 'Apply Discount', 'invoicing' ); ?></button> |
|
1567 | + <button id="wpi-apply-discount" type="button" class="btn btn-success btn-sm"><?php _e('Apply Discount', 'invoicing'); ?></button> |
|
1568 | 1568 | </div> |
1569 | 1569 | <div style="clear:both"></div> |
1570 | 1570 | <div class="col-sm-12 wpinv-discount-msg"> |
@@ -1577,10 +1577,10 @@ discard block |
||
1577 | 1577 | <?php |
1578 | 1578 | } |
1579 | 1579 | } |
1580 | -add_action( 'wpinv_after_checkout_cart', 'wpinv_discount_field', -10 ); |
|
1580 | +add_action('wpinv_after_checkout_cart', 'wpinv_discount_field', -10); |
|
1581 | 1581 | |
1582 | 1582 | function wpinv_agree_to_terms_js() { |
1583 | - if ( wpinv_get_option( 'show_agree_to_terms', false ) ) { |
|
1583 | + if (wpinv_get_option('show_agree_to_terms', false)) { |
|
1584 | 1584 | ?> |
1585 | 1585 | <script type="text/javascript"> |
1586 | 1586 | jQuery(document).ready(function($){ |
@@ -1595,125 +1595,125 @@ discard block |
||
1595 | 1595 | <?php |
1596 | 1596 | } |
1597 | 1597 | } |
1598 | -add_action( 'wpinv_checkout_form_top', 'wpinv_agree_to_terms_js' ); |
|
1598 | +add_action('wpinv_checkout_form_top', 'wpinv_agree_to_terms_js'); |
|
1599 | 1599 | |
1600 | 1600 | function wpinv_payment_mode_select() { |
1601 | - $gateways = wpinv_get_enabled_payment_gateways( true ); |
|
1602 | - $gateways = apply_filters( 'wpinv_payment_gateways_on_cart', $gateways ); |
|
1603 | - $invoice = wpinv_get_invoice( 0, true ); |
|
1601 | + $gateways = wpinv_get_enabled_payment_gateways(true); |
|
1602 | + $gateways = apply_filters('wpinv_payment_gateways_on_cart', $gateways); |
|
1603 | + $invoice = wpinv_get_invoice(0, true); |
|
1604 | 1604 | |
1605 | 1605 | do_action('wpinv_payment_mode_top'); |
1606 | - $invoice_id = (int)$invoice->ID; |
|
1607 | - $chosen_gateway = wpinv_get_chosen_gateway( $invoice_id ); |
|
1606 | + $invoice_id = (int) $invoice->ID; |
|
1607 | + $chosen_gateway = wpinv_get_chosen_gateway($invoice_id); |
|
1608 | 1608 | ?> |
1609 | - <div id="wpinv_payment_mode_select" data-gateway="<?php echo $chosen_gateway; ?>" <?php echo ( $invoice->is_free() ? 'style="display:none;" data-free="1"' : '' ); ?>> |
|
1610 | - <?php do_action( 'wpinv_payment_mode_before_gateways_wrap' ); ?> |
|
1609 | + <div id="wpinv_payment_mode_select" data-gateway="<?php echo $chosen_gateway; ?>" <?php echo ($invoice->is_free() ? 'style="display:none;" data-free="1"' : ''); ?>> |
|
1610 | + <?php do_action('wpinv_payment_mode_before_gateways_wrap'); ?> |
|
1611 | 1611 | <div id="wpinv-payment-mode-wrap" class="panel panel-default"> |
1612 | - <div class="panel-heading"><h3 class="panel-title"><?php _e( 'Select Payment Method', 'invoicing' ); ?></h3></div> |
|
1612 | + <div class="panel-heading"><h3 class="panel-title"><?php _e('Select Payment Method', 'invoicing'); ?></h3></div> |
|
1613 | 1613 | <div class="panel-body list-group wpi-payment_methods"> |
1614 | 1614 | <?php |
1615 | - do_action( 'wpinv_payment_mode_before_gateways' ); |
|
1616 | - |
|
1617 | - if ( !empty( $gateways ) ) { |
|
1618 | - foreach ( $gateways as $gateway_id => $gateway ) { |
|
1619 | - $checked = checked( $gateway_id, $chosen_gateway, false ); |
|
1620 | - $button_label = wpinv_get_gateway_button_label( $gateway_id ); |
|
1621 | - $gateway_label = wpinv_get_gateway_checkout_label( $gateway_id ); |
|
1622 | - $description = wpinv_get_gateway_description( $gateway_id ); |
|
1615 | + do_action('wpinv_payment_mode_before_gateways'); |
|
1616 | + |
|
1617 | + if (!empty($gateways)) { |
|
1618 | + foreach ($gateways as $gateway_id => $gateway) { |
|
1619 | + $checked = checked($gateway_id, $chosen_gateway, false); |
|
1620 | + $button_label = wpinv_get_gateway_button_label($gateway_id); |
|
1621 | + $gateway_label = wpinv_get_gateway_checkout_label($gateway_id); |
|
1622 | + $description = wpinv_get_gateway_description($gateway_id); |
|
1623 | 1623 | ?> |
1624 | 1624 | <div class="list-group-item"> |
1625 | 1625 | <div class="radio"> |
1626 | - <label><input type="radio" data-button-text="<?php echo esc_attr( $button_label );?>" value="<?php echo esc_attr( $gateway_id ) ;?>" <?php echo $checked ;?> id="wpi_gateway_<?php echo esc_attr( $gateway_id );?>" name="wpi-gateway" class="wpi-pmethod"><?php echo esc_html( $gateway_label ); ?></label> |
|
1626 | + <label><input type="radio" data-button-text="<?php echo esc_attr($button_label); ?>" value="<?php echo esc_attr($gateway_id); ?>" <?php echo $checked; ?> id="wpi_gateway_<?php echo esc_attr($gateway_id); ?>" name="wpi-gateway" class="wpi-pmethod"><?php echo esc_html($gateway_label); ?></label> |
|
1627 | 1627 | </div> |
1628 | - <div style="display:none;" class="payment_box wpi_gateway_<?php echo esc_attr( $gateway_id );?>" role="alert"> |
|
1629 | - <?php if ( !empty( $description ) ) { ?> |
|
1630 | - <div class="wpi-gateway-desc alert alert-info"><?php _e( $description, 'invoicing' ); ?></div> |
|
1628 | + <div style="display:none;" class="payment_box wpi_gateway_<?php echo esc_attr($gateway_id); ?>" role="alert"> |
|
1629 | + <?php if (!empty($description)) { ?> |
|
1630 | + <div class="wpi-gateway-desc alert alert-info"><?php _e($description, 'invoicing'); ?></div> |
|
1631 | 1631 | <?php } ?> |
1632 | - <?php do_action( 'wpinv_' . $gateway_id . '_cc_form', $invoice_id ) ;?> |
|
1632 | + <?php do_action('wpinv_' . $gateway_id . '_cc_form', $invoice_id); ?> |
|
1633 | 1633 | </div> |
1634 | 1634 | </div> |
1635 | 1635 | <?php |
1636 | 1636 | } |
1637 | 1637 | } else { |
1638 | - echo '<div class="alert alert-warning">'. __( 'No payment gateway active', 'invoicing' ) .'</div>'; |
|
1638 | + echo '<div class="alert alert-warning">' . __('No payment gateway active', 'invoicing') . '</div>'; |
|
1639 | 1639 | } |
1640 | 1640 | |
1641 | - do_action( 'wpinv_payment_mode_after_gateways' ); |
|
1641 | + do_action('wpinv_payment_mode_after_gateways'); |
|
1642 | 1642 | ?> |
1643 | 1643 | </div> |
1644 | 1644 | </div> |
1645 | - <?php do_action( 'wpinv_payment_mode_after_gateways_wrap' ); ?> |
|
1645 | + <?php do_action('wpinv_payment_mode_after_gateways_wrap'); ?> |
|
1646 | 1646 | </div> |
1647 | 1647 | <?php |
1648 | 1648 | do_action('wpinv_payment_mode_bottom'); |
1649 | 1649 | } |
1650 | -add_action( 'wpinv_payment_mode_select', 'wpinv_payment_mode_select' ); |
|
1650 | +add_action('wpinv_payment_mode_select', 'wpinv_payment_mode_select'); |
|
1651 | 1651 | |
1652 | 1652 | function wpinv_checkout_billing_info() { |
1653 | - if ( wpinv_is_checkout() ) { |
|
1653 | + if (wpinv_is_checkout()) { |
|
1654 | 1654 | $billing_details = wpinv_checkout_billing_details(); |
1655 | - $selected_country = !empty( $billing_details['country'] ) ? $billing_details['country'] : wpinv_default_billing_country(); |
|
1655 | + $selected_country = !empty($billing_details['country']) ? $billing_details['country'] : wpinv_default_billing_country(); |
|
1656 | 1656 | ?> |
1657 | 1657 | <div id="wpinv-fields" class="clearfix"> |
1658 | 1658 | <div id="wpi-billing" class="wpi-billing clearfix panel panel-default"> |
1659 | - <div class="panel-heading"><h3 class="panel-title"><?php _e( 'Billing Details', 'invoicing' );?></h3></div> |
|
1659 | + <div class="panel-heading"><h3 class="panel-title"><?php _e('Billing Details', 'invoicing'); ?></h3></div> |
|
1660 | 1660 | <div id="wpinv-fields-box" class="panel-body"> |
1661 | - <?php do_action( 'wpinv_checkout_billing_fields_first', $billing_details ); ?> |
|
1661 | + <?php do_action('wpinv_checkout_billing_fields_first', $billing_details); ?> |
|
1662 | 1662 | <p class="wpi-cart-field wpi-col2 wpi-colf"> |
1663 | - <label for="wpinv_first_name" class="wpi-label"><?php _e( 'First Name', 'invoicing' );?><?php if ( wpinv_get_option( 'fname_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1663 | + <label for="wpinv_first_name" class="wpi-label"><?php _e('First Name', 'invoicing'); ?><?php if (wpinv_get_option('fname_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1664 | 1664 | <?php |
1665 | - echo wpinv_html_text( array( |
|
1665 | + echo wpinv_html_text(array( |
|
1666 | 1666 | 'id' => 'wpinv_first_name', |
1667 | 1667 | 'name' => 'wpinv_first_name', |
1668 | 1668 | 'value' => $billing_details['first_name'], |
1669 | 1669 | 'class' => 'wpi-input form-control', |
1670 | - 'placeholder' => __( 'First name', 'invoicing' ), |
|
1671 | - 'required' => (bool)wpinv_get_option( 'fname_mandatory' ), |
|
1672 | - ) ); |
|
1670 | + 'placeholder' => __('First name', 'invoicing'), |
|
1671 | + 'required' => (bool) wpinv_get_option('fname_mandatory'), |
|
1672 | + )); |
|
1673 | 1673 | ?> |
1674 | 1674 | </p> |
1675 | 1675 | <p class="wpi-cart-field wpi-col2 wpi-coll"> |
1676 | - <label for="wpinv_last_name" class="wpi-label"><?php _e( 'Last Name', 'invoicing' );?><?php if ( wpinv_get_option( 'lname_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1676 | + <label for="wpinv_last_name" class="wpi-label"><?php _e('Last Name', 'invoicing'); ?><?php if (wpinv_get_option('lname_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1677 | 1677 | <?php |
1678 | - echo wpinv_html_text( array( |
|
1678 | + echo wpinv_html_text(array( |
|
1679 | 1679 | 'id' => 'wpinv_last_name', |
1680 | 1680 | 'name' => 'wpinv_last_name', |
1681 | 1681 | 'value' => $billing_details['last_name'], |
1682 | 1682 | 'class' => 'wpi-input form-control', |
1683 | - 'placeholder' => __( 'Last name', 'invoicing' ), |
|
1684 | - 'required' => (bool)wpinv_get_option( 'lname_mandatory' ), |
|
1685 | - ) ); |
|
1683 | + 'placeholder' => __('Last name', 'invoicing'), |
|
1684 | + 'required' => (bool) wpinv_get_option('lname_mandatory'), |
|
1685 | + )); |
|
1686 | 1686 | ?> |
1687 | 1687 | </p> |
1688 | 1688 | <p class="wpi-cart-field wpi-col2 wpi-colf"> |
1689 | - <label for="wpinv_address" class="wpi-label"><?php _e( 'Address', 'invoicing' );?><?php if ( wpinv_get_option( 'address_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1689 | + <label for="wpinv_address" class="wpi-label"><?php _e('Address', 'invoicing'); ?><?php if (wpinv_get_option('address_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1690 | 1690 | <?php |
1691 | - echo wpinv_html_text( array( |
|
1691 | + echo wpinv_html_text(array( |
|
1692 | 1692 | 'id' => 'wpinv_address', |
1693 | 1693 | 'name' => 'wpinv_address', |
1694 | 1694 | 'value' => $billing_details['address'], |
1695 | 1695 | 'class' => 'wpi-input form-control', |
1696 | - 'placeholder' => __( 'Address', 'invoicing' ), |
|
1697 | - 'required' => (bool)wpinv_get_option( 'address_mandatory' ), |
|
1698 | - ) ); |
|
1696 | + 'placeholder' => __('Address', 'invoicing'), |
|
1697 | + 'required' => (bool) wpinv_get_option('address_mandatory'), |
|
1698 | + )); |
|
1699 | 1699 | ?> |
1700 | 1700 | </p> |
1701 | 1701 | <p class="wpi-cart-field wpi-col2 wpi-coll"> |
1702 | - <label for="wpinv_city" class="wpi-label"><?php _e( 'City', 'invoicing' );?><?php if ( wpinv_get_option( 'city_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1702 | + <label for="wpinv_city" class="wpi-label"><?php _e('City', 'invoicing'); ?><?php if (wpinv_get_option('city_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1703 | 1703 | <?php |
1704 | - echo wpinv_html_text( array( |
|
1704 | + echo wpinv_html_text(array( |
|
1705 | 1705 | 'id' => 'wpinv_city', |
1706 | 1706 | 'name' => 'wpinv_city', |
1707 | 1707 | 'value' => $billing_details['city'], |
1708 | 1708 | 'class' => 'wpi-input form-control', |
1709 | - 'placeholder' => __( 'City', 'invoicing' ), |
|
1710 | - 'required' => (bool)wpinv_get_option( 'city_mandatory' ), |
|
1711 | - ) ); |
|
1709 | + 'placeholder' => __('City', 'invoicing'), |
|
1710 | + 'required' => (bool) wpinv_get_option('city_mandatory'), |
|
1711 | + )); |
|
1712 | 1712 | ?> |
1713 | 1713 | </p> |
1714 | 1714 | <p id="wpinv_country_box" class="wpi-cart-field wpi-col2 wpi-colf"> |
1715 | - <label for="wpinv_country" class="wpi-label"><?php _e( 'Country', 'invoicing' );?><?php if ( wpinv_get_option( 'country_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1716 | - <?php echo wpinv_html_select( array( |
|
1715 | + <label for="wpinv_country" class="wpi-label"><?php _e('Country', 'invoicing'); ?><?php if (wpinv_get_option('country_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1716 | + <?php echo wpinv_html_select(array( |
|
1717 | 1717 | 'options' => wpinv_get_country_list(), |
1718 | 1718 | 'name' => 'wpinv_country', |
1719 | 1719 | 'id' => 'wpinv_country', |
@@ -1721,16 +1721,16 @@ discard block |
||
1721 | 1721 | 'show_option_all' => false, |
1722 | 1722 | 'show_option_none' => false, |
1723 | 1723 | 'class' => 'wpi-input form-control wpi_select2', |
1724 | - 'placeholder' => __( 'Choose a country', 'invoicing' ), |
|
1725 | - 'required' => (bool)wpinv_get_option( 'country_mandatory' ), |
|
1726 | - ) ); ?> |
|
1724 | + 'placeholder' => __('Choose a country', 'invoicing'), |
|
1725 | + 'required' => (bool) wpinv_get_option('country_mandatory'), |
|
1726 | + )); ?> |
|
1727 | 1727 | </p> |
1728 | 1728 | <p id="wpinv_state_box" class="wpi-cart-field wpi-col2 wpi-coll"> |
1729 | - <label for="wpinv_state" class="wpi-label"><?php _e( 'State / Province', 'invoicing' );?><?php if ( wpinv_get_option( 'state_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1729 | + <label for="wpinv_state" class="wpi-label"><?php _e('State / Province', 'invoicing'); ?><?php if (wpinv_get_option('state_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1730 | 1730 | <?php |
1731 | - $states = wpinv_get_country_states( $selected_country ); |
|
1732 | - if( !empty( $states ) ) { |
|
1733 | - echo wpinv_html_select( array( |
|
1731 | + $states = wpinv_get_country_states($selected_country); |
|
1732 | + if (!empty($states)) { |
|
1733 | + echo wpinv_html_select(array( |
|
1734 | 1734 | 'options' => $states, |
1735 | 1735 | 'name' => 'wpinv_state', |
1736 | 1736 | 'id' => 'wpinv_state', |
@@ -1738,61 +1738,61 @@ discard block |
||
1738 | 1738 | 'show_option_all' => false, |
1739 | 1739 | 'show_option_none' => false, |
1740 | 1740 | 'class' => 'wpi-input form-control wpi_select2', |
1741 | - 'placeholder' => __( 'Choose a state', 'invoicing' ), |
|
1742 | - 'required' => (bool)wpinv_get_option( 'state_mandatory' ), |
|
1743 | - ) ); |
|
1741 | + 'placeholder' => __('Choose a state', 'invoicing'), |
|
1742 | + 'required' => (bool) wpinv_get_option('state_mandatory'), |
|
1743 | + )); |
|
1744 | 1744 | } else { |
1745 | - echo wpinv_html_text( array( |
|
1745 | + echo wpinv_html_text(array( |
|
1746 | 1746 | 'name' => 'wpinv_state', |
1747 | 1747 | 'value' => $billing_details['state'], |
1748 | 1748 | 'id' => 'wpinv_state', |
1749 | 1749 | 'class' => 'wpi-input form-control', |
1750 | - 'placeholder' => __( 'State / Province', 'invoicing' ), |
|
1751 | - 'required' => (bool)wpinv_get_option( 'state_mandatory' ), |
|
1752 | - ) ); |
|
1750 | + 'placeholder' => __('State / Province', 'invoicing'), |
|
1751 | + 'required' => (bool) wpinv_get_option('state_mandatory'), |
|
1752 | + )); |
|
1753 | 1753 | } |
1754 | 1754 | ?> |
1755 | 1755 | </p> |
1756 | 1756 | <p class="wpi-cart-field wpi-col2 wpi-colf"> |
1757 | - <label for="wpinv_zip" class="wpi-label"><?php _e( 'ZIP / Postcode', 'invoicing' );?><?php if ( wpinv_get_option( 'zip_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1757 | + <label for="wpinv_zip" class="wpi-label"><?php _e('ZIP / Postcode', 'invoicing'); ?><?php if (wpinv_get_option('zip_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1758 | 1758 | <?php |
1759 | - echo wpinv_html_text( array( |
|
1759 | + echo wpinv_html_text(array( |
|
1760 | 1760 | 'name' => 'wpinv_zip', |
1761 | 1761 | 'value' => $billing_details['zip'], |
1762 | 1762 | 'id' => 'wpinv_zip', |
1763 | 1763 | 'class' => 'wpi-input form-control', |
1764 | - 'placeholder' => __( 'ZIP / Postcode', 'invoicing' ), |
|
1765 | - 'required' => (bool)wpinv_get_option( 'zip_mandatory' ), |
|
1766 | - ) ); |
|
1764 | + 'placeholder' => __('ZIP / Postcode', 'invoicing'), |
|
1765 | + 'required' => (bool) wpinv_get_option('zip_mandatory'), |
|
1766 | + )); |
|
1767 | 1767 | ?> |
1768 | 1768 | </p> |
1769 | 1769 | <p class="wpi-cart-field wpi-col2 wpi-coll"> |
1770 | - <label for="wpinv_phone" class="wpi-label"><?php _e( 'Phone', 'invoicing' );?><?php if ( wpinv_get_option( 'phone_mandatory' ) ) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1770 | + <label for="wpinv_phone" class="wpi-label"><?php _e('Phone', 'invoicing'); ?><?php if (wpinv_get_option('phone_mandatory')) { echo '<span class="wpi-required">*</span>'; } ?></label> |
|
1771 | 1771 | <?php |
1772 | - echo wpinv_html_text( array( |
|
1772 | + echo wpinv_html_text(array( |
|
1773 | 1773 | 'id' => 'wpinv_phone', |
1774 | 1774 | 'name' => 'wpinv_phone', |
1775 | 1775 | 'value' => $billing_details['phone'], |
1776 | 1776 | 'class' => 'wpi-input form-control', |
1777 | - 'placeholder' => __( 'Phone', 'invoicing' ), |
|
1778 | - 'required' => (bool)wpinv_get_option( 'phone_mandatory' ), |
|
1779 | - ) ); |
|
1777 | + 'placeholder' => __('Phone', 'invoicing'), |
|
1778 | + 'required' => (bool) wpinv_get_option('phone_mandatory'), |
|
1779 | + )); |
|
1780 | 1780 | ?> |
1781 | 1781 | </p> |
1782 | - <?php do_action( 'wpinv_checkout_billing_fields_last', $billing_details ); ?> |
|
1782 | + <?php do_action('wpinv_checkout_billing_fields_last', $billing_details); ?> |
|
1783 | 1783 | <div class="clearfix"></div> |
1784 | 1784 | </div> |
1785 | 1785 | </div> |
1786 | - <?php do_action( 'wpinv_after_billing_fields', $billing_details ); ?> |
|
1786 | + <?php do_action('wpinv_after_billing_fields', $billing_details); ?> |
|
1787 | 1787 | </div> |
1788 | 1788 | <?php |
1789 | 1789 | } |
1790 | 1790 | } |
1791 | -add_action( 'wpinv_checkout_billing_info', 'wpinv_checkout_billing_info' ); |
|
1791 | +add_action('wpinv_checkout_billing_info', 'wpinv_checkout_billing_info'); |
|
1792 | 1792 | |
1793 | 1793 | function wpinv_checkout_hidden_fields() { |
1794 | 1794 | ?> |
1795 | - <?php if ( is_user_logged_in() ) { ?> |
|
1795 | + <?php if (is_user_logged_in()) { ?> |
|
1796 | 1796 | <input type="hidden" name="wpinv_user_id" value="<?php echo get_current_user_id(); ?>"/> |
1797 | 1797 | <?php } ?> |
1798 | 1798 | <input type="hidden" name="wpi_action" value="payment" /> |
@@ -1802,9 +1802,9 @@ discard block |
||
1802 | 1802 | function wpinv_checkout_button_purchase() { |
1803 | 1803 | ob_start(); |
1804 | 1804 | ?> |
1805 | - <input type="submit" class="btn btn-success wpinv-submit" id="wpinv-payment-button" data-value="<?php esc_attr_e( 'Proceed to Pay', 'invoicing' ) ?>" name="wpinv_payment" value="<?php esc_attr_e( 'Proceed to Pay', 'invoicing' ) ?>"/> |
|
1805 | + <input type="submit" class="btn btn-success wpinv-submit" id="wpinv-payment-button" data-value="<?php esc_attr_e('Proceed to Pay', 'invoicing') ?>" name="wpinv_payment" value="<?php esc_attr_e('Proceed to Pay', 'invoicing') ?>"/> |
|
1806 | 1806 | <?php |
1807 | - return apply_filters( 'wpinv_checkout_button_purchase', ob_get_clean() ); |
|
1807 | + return apply_filters('wpinv_checkout_button_purchase', ob_get_clean()); |
|
1808 | 1808 | } |
1809 | 1809 | |
1810 | 1810 | function wpinv_checkout_total() { |
@@ -1813,84 +1813,84 @@ discard block |
||
1813 | 1813 | <div id="wpinv_checkout_total" class="panel panel-info"> |
1814 | 1814 | <div class="panel-body"> |
1815 | 1815 | <?php |
1816 | - do_action( 'wpinv_purchase_form_before_checkout_total' ); |
|
1816 | + do_action('wpinv_purchase_form_before_checkout_total'); |
|
1817 | 1817 | ?> |
1818 | - <strong><?php _e( 'Invoice Total:', 'invoicing' ) ?></strong> <span class="wpinv-chdeckout-total"><?php echo $cart_total;?></span> |
|
1818 | + <strong><?php _e('Invoice Total:', 'invoicing') ?></strong> <span class="wpinv-chdeckout-total"><?php echo $cart_total; ?></span> |
|
1819 | 1819 | <?php |
1820 | - do_action( 'wpinv_purchase_form_after_checkout_total' ); |
|
1820 | + do_action('wpinv_purchase_form_after_checkout_total'); |
|
1821 | 1821 | ?> |
1822 | 1822 | </div> |
1823 | 1823 | </div> |
1824 | 1824 | <?php |
1825 | 1825 | } |
1826 | -add_action( 'wpinv_checkout_form_bottom', 'wpinv_checkout_total', 9998 ); |
|
1826 | +add_action('wpinv_checkout_form_bottom', 'wpinv_checkout_total', 9998); |
|
1827 | 1827 | |
1828 | 1828 | function wpinv_checkout_accept_tandc() { |
1829 | - $page = wpinv_get_option( 'tandc_page' ); |
|
1829 | + $page = wpinv_get_option('tandc_page'); |
|
1830 | 1830 | ?> |
1831 | 1831 | <div id="wpinv_checkout_tandc" class="panel panel-success"> |
1832 | 1832 | <div class="panel-body"> |
1833 | 1833 | <?php echo wpinv_get_policy_text(); ?> |
1834 | 1834 | <?php |
1835 | - if(isset($page) && (int)$page > 0 && apply_filters( 'wpinv_checkout_show_terms', true )){ |
|
1836 | - $terms_link = esc_url( get_permalink( $page ) ); |
|
1835 | + if (isset($page) && (int) $page > 0 && apply_filters('wpinv_checkout_show_terms', true)) { |
|
1836 | + $terms_link = esc_url(get_permalink($page)); |
|
1837 | 1837 | ?> |
1838 | 1838 | <label class=""> |
1839 | - <input type="checkbox" class="wpi-terms-checkbox" name="wpi_terms" id="wpi-terms" <?php checked( apply_filters( 'wpinv_terms_is_checked_default', isset( $_POST['wpi_terms'] ) ), true ); ?>> <span><?php printf( __( 'I’ve read and accept the <a href="%s" target="_blank" class="wpi-terms-and-conditions-link">terms & conditions</a>', 'invoicing' ), $terms_link ); ?></span> <span class="wpi-required">*</span> |
|
1839 | + <input type="checkbox" class="wpi-terms-checkbox" name="wpi_terms" id="wpi-terms" <?php checked(apply_filters('wpinv_terms_is_checked_default', isset($_POST['wpi_terms'])), true); ?>> <span><?php printf(__('I’ve read and accept the <a href="%s" target="_blank" class="wpi-terms-and-conditions-link">terms & conditions</a>', 'invoicing'), $terms_link); ?></span> <span class="wpi-required">*</span> |
|
1840 | 1840 | </label> |
1841 | 1841 | <?php } ?> |
1842 | 1842 | </div> |
1843 | 1843 | </div> |
1844 | 1844 | <?php |
1845 | 1845 | } |
1846 | -add_action( 'wpinv_checkout_form_bottom', 'wpinv_checkout_accept_tandc', 9995 ); |
|
1846 | +add_action('wpinv_checkout_form_bottom', 'wpinv_checkout_accept_tandc', 9995); |
|
1847 | 1847 | |
1848 | 1848 | function wpinv_checkout_submit() { |
1849 | 1849 | ?> |
1850 | 1850 | <div id="wpinv_purchase_submit" class="panel panel-success"> |
1851 | 1851 | <div class="panel-body text-center"> |
1852 | 1852 | <?php |
1853 | - do_action( 'wpinv_purchase_form_before_submit' ); |
|
1853 | + do_action('wpinv_purchase_form_before_submit'); |
|
1854 | 1854 | wpinv_checkout_hidden_fields(); |
1855 | 1855 | echo wpinv_checkout_button_purchase(); |
1856 | - do_action( 'wpinv_purchase_form_after_submit' ); |
|
1856 | + do_action('wpinv_purchase_form_after_submit'); |
|
1857 | 1857 | ?> |
1858 | 1858 | </div> |
1859 | 1859 | </div> |
1860 | 1860 | <?php |
1861 | 1861 | } |
1862 | -add_action( 'wpinv_checkout_form_bottom', 'wpinv_checkout_submit', 9999 ); |
|
1862 | +add_action('wpinv_checkout_form_bottom', 'wpinv_checkout_submit', 9999); |
|
1863 | 1863 | |
1864 | -function wpinv_receipt_billing_address( $invoice_id = 0 ) { |
|
1865 | - $invoice = wpinv_get_invoice( $invoice_id ); |
|
1864 | +function wpinv_receipt_billing_address($invoice_id = 0) { |
|
1865 | + $invoice = wpinv_get_invoice($invoice_id); |
|
1866 | 1866 | |
1867 | - if ( empty( $invoice ) ) { |
|
1867 | + if (empty($invoice)) { |
|
1868 | 1868 | return NULL; |
1869 | 1869 | } |
1870 | 1870 | |
1871 | 1871 | $billing_details = $invoice->get_user_info(); |
1872 | - $address_row = wpinv_get_invoice_address_markup( $billing_details ); |
|
1872 | + $address_row = wpinv_get_invoice_address_markup($billing_details); |
|
1873 | 1873 | |
1874 | 1874 | ob_start(); |
1875 | 1875 | ?> |
1876 | 1876 | <table class="table table-bordered table-sm wpi-billing-details"> |
1877 | 1877 | <tbody> |
1878 | 1878 | <tr class="wpi-receipt-name"> |
1879 | - <th class="text-left"><?php _e( 'Name', 'invoicing' ); ?></th> |
|
1880 | - <td><?php echo esc_html( trim( $billing_details['first_name'] . ' ' . $billing_details['last_name'] ) ) ;?></td> |
|
1879 | + <th class="text-left"><?php _e('Name', 'invoicing'); ?></th> |
|
1880 | + <td><?php echo esc_html(trim($billing_details['first_name'] . ' ' . $billing_details['last_name'])); ?></td> |
|
1881 | 1881 | </tr> |
1882 | 1882 | <tr class="wpi-receipt-email"> |
1883 | - <th class="text-left"><?php _e( 'Email', 'invoicing' ); ?></th> |
|
1884 | - <td><?php echo $billing_details['email'] ;?></td> |
|
1883 | + <th class="text-left"><?php _e('Email', 'invoicing'); ?></th> |
|
1884 | + <td><?php echo $billing_details['email']; ?></td> |
|
1885 | 1885 | </tr> |
1886 | 1886 | <tr class="wpi-receipt-address"> |
1887 | - <th class="text-left"><?php _e( 'Address', 'invoicing' ); ?></th> |
|
1888 | - <td><?php echo $address_row ;?></td> |
|
1887 | + <th class="text-left"><?php _e('Address', 'invoicing'); ?></th> |
|
1888 | + <td><?php echo $address_row; ?></td> |
|
1889 | 1889 | </tr> |
1890 | - <?php if ( $billing_details['phone'] ) { ?> |
|
1890 | + <?php if ($billing_details['phone']) { ?> |
|
1891 | 1891 | <tr class="wpi-receipt-phone"> |
1892 | - <th class="text-left"><?php _e( 'Phone', 'invoicing' ); ?></th> |
|
1893 | - <td><?php echo esc_html( $billing_details['phone'] ) ;?></td> |
|
1892 | + <th class="text-left"><?php _e('Phone', 'invoicing'); ?></th> |
|
1893 | + <td><?php echo esc_html($billing_details['phone']); ?></td> |
|
1894 | 1894 | </tr> |
1895 | 1895 | <?php } ?> |
1896 | 1896 | </tbody> |
@@ -1898,74 +1898,74 @@ discard block |
||
1898 | 1898 | <?php |
1899 | 1899 | $output = ob_get_clean(); |
1900 | 1900 | |
1901 | - $output = apply_filters( 'wpinv_receipt_billing_address', $output, $invoice_id ); |
|
1901 | + $output = apply_filters('wpinv_receipt_billing_address', $output, $invoice_id); |
|
1902 | 1902 | |
1903 | 1903 | echo $output; |
1904 | 1904 | } |
1905 | 1905 | |
1906 | -function wpinv_filter_success_page_content( $content ) { |
|
1907 | - if ( isset( $_GET['payment-confirm'] ) && wpinv_is_success_page() ) { |
|
1908 | - if ( has_filter( 'wpinv_payment_confirm_' . sanitize_text_field( $_GET['payment-confirm'] ) ) ) { |
|
1909 | - $content = apply_filters( 'wpinv_payment_confirm_' . sanitize_text_field( $_GET['payment-confirm'] ), $content ); |
|
1906 | +function wpinv_filter_success_page_content($content) { |
|
1907 | + if (isset($_GET['payment-confirm']) && wpinv_is_success_page()) { |
|
1908 | + if (has_filter('wpinv_payment_confirm_' . sanitize_text_field($_GET['payment-confirm']))) { |
|
1909 | + $content = apply_filters('wpinv_payment_confirm_' . sanitize_text_field($_GET['payment-confirm']), $content); |
|
1910 | 1910 | } |
1911 | 1911 | } |
1912 | 1912 | |
1913 | 1913 | return $content; |
1914 | 1914 | } |
1915 | -add_filter( 'the_content', 'wpinv_filter_success_page_content', 99999 ); |
|
1915 | +add_filter('the_content', 'wpinv_filter_success_page_content', 99999); |
|
1916 | 1916 | |
1917 | -function wpinv_receipt_actions( $invoice ) { |
|
1918 | - if ( !empty( $invoice ) ) { |
|
1917 | +function wpinv_receipt_actions($invoice) { |
|
1918 | + if (!empty($invoice)) { |
|
1919 | 1919 | $actions = array(); |
1920 | 1920 | |
1921 | - if ( wpinv_user_can_view_invoice( $invoice->ID ) ) { |
|
1922 | - $actions['print'] = array( |
|
1923 | - 'url' => $invoice->get_view_url( true ), |
|
1924 | - 'name' => __( 'Print Invoice', 'invoicing' ), |
|
1921 | + if (wpinv_user_can_view_invoice($invoice->ID)) { |
|
1922 | + $actions['print'] = array( |
|
1923 | + 'url' => $invoice->get_view_url(true), |
|
1924 | + 'name' => __('Print Invoice', 'invoicing'), |
|
1925 | 1925 | 'class' => 'btn-primary', |
1926 | 1926 | ); |
1927 | 1927 | } |
1928 | 1928 | |
1929 | - if ( is_user_logged_in() ) { |
|
1929 | + if (is_user_logged_in()) { |
|
1930 | 1930 | $actions['history'] = array( |
1931 | 1931 | 'url' => wpinv_get_history_page_uri(), |
1932 | - 'name' => __( 'Invoice History', 'invoicing' ), |
|
1932 | + 'name' => __('Invoice History', 'invoicing'), |
|
1933 | 1933 | 'class' => 'btn-warning', |
1934 | 1934 | ); |
1935 | 1935 | } |
1936 | 1936 | |
1937 | - $actions = apply_filters( 'wpinv_invoice_receipt_actions', $actions, $invoice ); |
|
1937 | + $actions = apply_filters('wpinv_invoice_receipt_actions', $actions, $invoice); |
|
1938 | 1938 | |
1939 | - if ( !empty( $actions ) ) { |
|
1939 | + if (!empty($actions)) { |
|
1940 | 1940 | ?> |
1941 | 1941 | <div class="wpinv-receipt-actions text-right"> |
1942 | - <?php foreach ( $actions as $key => $action ) { $class = !empty($action['class']) ? sanitize_html_class( $action['class'] ) : ''; ?> |
|
1943 | - <a href="<?php echo esc_url( $action['url'] );?>" class="btn btn-sm <?php echo $class . ' ' . sanitize_html_class( $key );?>" <?php echo ( !empty($action['attrs']) ? $action['attrs'] : '' ) ;?>><?php echo esc_html( $action['name'] );?></a> |
|
1942 | + <?php foreach ($actions as $key => $action) { $class = !empty($action['class']) ? sanitize_html_class($action['class']) : ''; ?> |
|
1943 | + <a href="<?php echo esc_url($action['url']); ?>" class="btn btn-sm <?php echo $class . ' ' . sanitize_html_class($key); ?>" <?php echo (!empty($action['attrs']) ? $action['attrs'] : ''); ?>><?php echo esc_html($action['name']); ?></a> |
|
1944 | 1944 | <?php } ?> |
1945 | 1945 | </div> |
1946 | 1946 | <?php |
1947 | 1947 | } |
1948 | 1948 | } |
1949 | 1949 | } |
1950 | -add_action( 'wpinv_receipt_start', 'wpinv_receipt_actions', -10, 1 ); |
|
1950 | +add_action('wpinv_receipt_start', 'wpinv_receipt_actions', -10, 1); |
|
1951 | 1951 | |
1952 | -function wpinv_invoice_link( $invoice_id ) { |
|
1953 | - $invoice = wpinv_get_invoice( $invoice_id ); |
|
1952 | +function wpinv_invoice_link($invoice_id) { |
|
1953 | + $invoice = wpinv_get_invoice($invoice_id); |
|
1954 | 1954 | |
1955 | - if ( empty( $invoice ) ) { |
|
1955 | + if (empty($invoice)) { |
|
1956 | 1956 | return NULL; |
1957 | 1957 | } |
1958 | 1958 | |
1959 | - $invoice_link = '<a href="' . esc_url( $invoice->get_view_url() ) . '">' . $invoice->get_number() . '</a>'; |
|
1959 | + $invoice_link = '<a href="' . esc_url($invoice->get_view_url()) . '">' . $invoice->get_number() . '</a>'; |
|
1960 | 1960 | |
1961 | - return apply_filters( 'wpinv_get_invoice_link', $invoice_link, $invoice ); |
|
1961 | + return apply_filters('wpinv_get_invoice_link', $invoice_link, $invoice); |
|
1962 | 1962 | } |
1963 | 1963 | |
1964 | -function wpinv_invoice_subscription_details( $invoice ) { |
|
1965 | - if ( !empty( $invoice ) && $invoice->is_recurring() && ! wpinv_is_subscription_payment( $invoice ) ) { |
|
1966 | - $subscription = wpinv_get_subscription( $invoice, true ); |
|
1964 | +function wpinv_invoice_subscription_details($invoice) { |
|
1965 | + if (!empty($invoice) && $invoice->is_recurring() && !wpinv_is_subscription_payment($invoice)) { |
|
1966 | + $subscription = wpinv_get_subscription($invoice, true); |
|
1967 | 1967 | |
1968 | - if ( empty( $subscription ) ) { |
|
1968 | + if (empty($subscription)) { |
|
1969 | 1969 | return; |
1970 | 1970 | } |
1971 | 1971 | |
@@ -1976,15 +1976,15 @@ discard block |
||
1976 | 1976 | $payments = $subscription->get_child_payments(); |
1977 | 1977 | ?> |
1978 | 1978 | <div class="wpinv-subscriptions-details"> |
1979 | - <h3 class="wpinv-subscriptions-t"><?php echo apply_filters( 'wpinv_subscription_details_title', __( 'Subscription Details', 'invoicing' ) ); ?></h3> |
|
1979 | + <h3 class="wpinv-subscriptions-t"><?php echo apply_filters('wpinv_subscription_details_title', __('Subscription Details', 'invoicing')); ?></h3> |
|
1980 | 1980 | <table class="table"> |
1981 | 1981 | <thead> |
1982 | 1982 | <tr> |
1983 | - <th><?php _e( 'Billing Cycle', 'invoicing' ) ;?></th> |
|
1984 | - <th><?php _e( 'Start Date', 'invoicing' ) ;?></th> |
|
1985 | - <th><?php _e( 'Expiration Date', 'invoicing' ) ;?></th> |
|
1986 | - <th class="text-center"><?php _e( 'Times Billed', 'invoicing' ) ;?></th> |
|
1987 | - <th class="text-center"><?php _e( 'Status', 'invoicing' ) ;?></th> |
|
1983 | + <th><?php _e('Billing Cycle', 'invoicing'); ?></th> |
|
1984 | + <th><?php _e('Start Date', 'invoicing'); ?></th> |
|
1985 | + <th><?php _e('Expiration Date', 'invoicing'); ?></th> |
|
1986 | + <th class="text-center"><?php _e('Times Billed', 'invoicing'); ?></th> |
|
1987 | + <th class="text-center"><?php _e('Status', 'invoicing'); ?></th> |
|
1988 | 1988 | </tr> |
1989 | 1989 | </thead> |
1990 | 1990 | <tbody> |
@@ -1998,29 +1998,29 @@ discard block |
||
1998 | 1998 | </tbody> |
1999 | 1999 | </table> |
2000 | 2000 | </div> |
2001 | - <?php if ( !empty( $payments ) ) { ?> |
|
2001 | + <?php if (!empty($payments)) { ?> |
|
2002 | 2002 | <div class="wpinv-renewal-payments"> |
2003 | - <h3 class="wpinv-renewals-t"><?php echo apply_filters( 'wpinv_renewal_payments_title', __( 'Renewal Payments', 'invoicing' ) ); ?></h3> |
|
2003 | + <h3 class="wpinv-renewals-t"><?php echo apply_filters('wpinv_renewal_payments_title', __('Renewal Payments', 'invoicing')); ?></h3> |
|
2004 | 2004 | <table class="table"> |
2005 | 2005 | <thead> |
2006 | 2006 | <tr> |
2007 | 2007 | <th>#</th> |
2008 | - <th><?php _e( 'Invoice', 'invoicing' ) ;?></th> |
|
2009 | - <th><?php _e( 'Date', 'invoicing' ) ;?></th> |
|
2010 | - <th class="text-right"><?php _e( 'Amount', 'invoicing' ) ;?></th> |
|
2008 | + <th><?php _e('Invoice', 'invoicing'); ?></th> |
|
2009 | + <th><?php _e('Date', 'invoicing'); ?></th> |
|
2010 | + <th class="text-right"><?php _e('Amount', 'invoicing'); ?></th> |
|
2011 | 2011 | </tr> |
2012 | 2012 | </thead> |
2013 | 2013 | <tbody> |
2014 | 2014 | <?php |
2015 | 2015 | $i = 1; |
2016 | - foreach ( $payments as $payment ) { |
|
2016 | + foreach ($payments as $payment) { |
|
2017 | 2017 | $invoice_id = $payment->ID; |
2018 | 2018 | ?> |
2019 | 2019 | <tr> |
2020 | - <th scope="row"><?php echo $i;?></th> |
|
2021 | - <td><?php echo wpinv_invoice_link( $invoice_id ) ;?></td> |
|
2022 | - <td><?php echo wpinv_get_invoice_date( $invoice_id ); ?></td> |
|
2023 | - <td class="text-right"><?php echo wpinv_payment_total( $invoice_id, true ); ?></td> |
|
2020 | + <th scope="row"><?php echo $i; ?></th> |
|
2021 | + <td><?php echo wpinv_invoice_link($invoice_id); ?></td> |
|
2022 | + <td><?php echo wpinv_get_invoice_date($invoice_id); ?></td> |
|
2023 | + <td class="text-right"><?php echo wpinv_payment_total($invoice_id, true); ?></td> |
|
2024 | 2024 | </tr> |
2025 | 2025 | <?php $i++; } ?> |
2026 | 2026 | </tbody> |
@@ -2031,52 +2031,52 @@ discard block |
||
2031 | 2031 | } |
2032 | 2032 | } |
2033 | 2033 | |
2034 | -function wpinv_cart_total_label( $label, $invoice ) { |
|
2035 | - if ( empty( $invoice ) ) { |
|
2034 | +function wpinv_cart_total_label($label, $invoice) { |
|
2035 | + if (empty($invoice)) { |
|
2036 | 2036 | return $label; |
2037 | 2037 | } |
2038 | 2038 | |
2039 | 2039 | $prefix_label = ''; |
2040 | - if ( $invoice->is_parent() && $item_id = $invoice->get_recurring() ) { |
|
2041 | - $prefix_label = '<span class="label label-primary label-recurring">' . __( 'Recurring Payment', 'invoicing' ) . '</span> ' . wpinv_subscription_payment_desc( $invoice ); |
|
2042 | - } else if ( $invoice->is_renewal() ) { |
|
2043 | - $prefix_label = '<span class="label label-primary label-renewal">' . __( 'Renewal Payment', 'invoicing' ) . '</span> '; |
|
2040 | + if ($invoice->is_parent() && $item_id = $invoice->get_recurring()) { |
|
2041 | + $prefix_label = '<span class="label label-primary label-recurring">' . __('Recurring Payment', 'invoicing') . '</span> ' . wpinv_subscription_payment_desc($invoice); |
|
2042 | + } else if ($invoice->is_renewal()) { |
|
2043 | + $prefix_label = '<span class="label label-primary label-renewal">' . __('Renewal Payment', 'invoicing') . '</span> '; |
|
2044 | 2044 | } |
2045 | 2045 | |
2046 | - if ( $prefix_label != '' ) { |
|
2047 | - $label = '<span class="wpinv-cart-sub-desc">' . $prefix_label . '</span> ' . $label; |
|
2046 | + if ($prefix_label != '') { |
|
2047 | + $label = '<span class="wpinv-cart-sub-desc">' . $prefix_label . '</span> ' . $label; |
|
2048 | 2048 | } |
2049 | 2049 | |
2050 | 2050 | return $label; |
2051 | 2051 | } |
2052 | -add_filter( 'wpinv_cart_total_label', 'wpinv_cart_total_label', 10, 2 ); |
|
2053 | -add_filter( 'wpinv_email_cart_total_label', 'wpinv_cart_total_label', 10, 2 ); |
|
2054 | -add_filter( 'wpinv_print_cart_total_label', 'wpinv_cart_total_label', 10, 2 ); |
|
2052 | +add_filter('wpinv_cart_total_label', 'wpinv_cart_total_label', 10, 2); |
|
2053 | +add_filter('wpinv_email_cart_total_label', 'wpinv_cart_total_label', 10, 2); |
|
2054 | +add_filter('wpinv_print_cart_total_label', 'wpinv_cart_total_label', 10, 2); |
|
2055 | 2055 | |
2056 | -add_action( 'wpinv_invoice_print_middle', 'wpinv_invoice_subscription_details', 10, 1 ); |
|
2056 | +add_action('wpinv_invoice_print_middle', 'wpinv_invoice_subscription_details', 10, 1); |
|
2057 | 2057 | |
2058 | -function wpinv_invoice_print_description( $invoice ) { |
|
2059 | - if ( empty( $invoice ) ) { |
|
2058 | +function wpinv_invoice_print_description($invoice) { |
|
2059 | + if (empty($invoice)) { |
|
2060 | 2060 | return NULL; |
2061 | 2061 | } |
2062 | - if ( $description = wpinv_get_invoice_description( $invoice->ID ) ) { |
|
2062 | + if ($description = wpinv_get_invoice_description($invoice->ID)) { |
|
2063 | 2063 | ?> |
2064 | 2064 | <div class="row wpinv-lower"> |
2065 | 2065 | <div class="col-sm-12 wpinv-description"> |
2066 | - <?php echo wpautop( $description ); ?> |
|
2066 | + <?php echo wpautop($description); ?> |
|
2067 | 2067 | </div> |
2068 | 2068 | </div> |
2069 | 2069 | <?php |
2070 | 2070 | } |
2071 | 2071 | } |
2072 | -add_action( 'wpinv_invoice_print_middle', 'wpinv_invoice_print_description', 10.1, 1 ); |
|
2072 | +add_action('wpinv_invoice_print_middle', 'wpinv_invoice_print_description', 10.1, 1); |
|
2073 | 2073 | |
2074 | -function wpinv_invoice_print_payment_info( $invoice ) { |
|
2075 | - if ( empty( $invoice ) ) { |
|
2074 | +function wpinv_invoice_print_payment_info($invoice) { |
|
2075 | + if (empty($invoice)) { |
|
2076 | 2076 | return NULL; |
2077 | 2077 | } |
2078 | 2078 | |
2079 | - if ( $payments_info = wpinv_display_payments_info( $invoice->ID, false ) ) { |
|
2079 | + if ($payments_info = wpinv_display_payments_info($invoice->ID, false)) { |
|
2080 | 2080 | ?> |
2081 | 2081 | <div class="row wpinv-payments"> |
2082 | 2082 | <div class="col-sm-12"> |
@@ -2088,43 +2088,43 @@ discard block |
||
2088 | 2088 | } |
2089 | 2089 | // add_action( 'wpinv_invoice_print_after_line_items', 'wpinv_invoice_print_payment_info', 10, 1 ); |
2090 | 2090 | |
2091 | -function wpinv_get_invoice_note_line_item( $note, $echo = true ) { |
|
2092 | - if ( empty( $note ) ) { |
|
2091 | +function wpinv_get_invoice_note_line_item($note, $echo = true) { |
|
2092 | + if (empty($note)) { |
|
2093 | 2093 | return NULL; |
2094 | 2094 | } |
2095 | 2095 | |
2096 | - if ( is_int( $note ) ) { |
|
2097 | - $note = get_comment( $note ); |
|
2096 | + if (is_int($note)) { |
|
2097 | + $note = get_comment($note); |
|
2098 | 2098 | } |
2099 | 2099 | |
2100 | - if ( !( is_object( $note ) && is_a( $note, 'WP_Comment' ) ) ) { |
|
2100 | + if (!(is_object($note) && is_a($note, 'WP_Comment'))) { |
|
2101 | 2101 | return NULL; |
2102 | 2102 | } |
2103 | 2103 | |
2104 | - $note_classes = array( 'note' ); |
|
2105 | - $note_classes[] = get_comment_meta( $note->comment_ID, '_wpi_customer_note', true ) ? 'customer-note' : ''; |
|
2104 | + $note_classes = array('note'); |
|
2105 | + $note_classes[] = get_comment_meta($note->comment_ID, '_wpi_customer_note', true) ? 'customer-note' : ''; |
|
2106 | 2106 | $note_classes[] = $note->comment_author === 'System' ? 'system-note' : ''; |
2107 | - $note_classes = apply_filters( 'wpinv_invoice_note_class', array_filter( $note_classes ), $note ); |
|
2108 | - $note_classes = !empty( $note_classes ) ? implode( ' ', $note_classes ) : ''; |
|
2107 | + $note_classes = apply_filters('wpinv_invoice_note_class', array_filter($note_classes), $note); |
|
2108 | + $note_classes = !empty($note_classes) ? implode(' ', $note_classes) : ''; |
|
2109 | 2109 | |
2110 | 2110 | ob_start(); |
2111 | 2111 | ?> |
2112 | - <li rel="<?php echo absint( $note->comment_ID ) ; ?>" class="<?php echo esc_attr( $note_classes ); ?>"> |
|
2112 | + <li rel="<?php echo absint($note->comment_ID); ?>" class="<?php echo esc_attr($note_classes); ?>"> |
|
2113 | 2113 | <div class="note_content"> |
2114 | - <?php echo wpautop( wptexturize( wp_kses_post( $note->comment_content ) ) ); ?> |
|
2114 | + <?php echo wpautop(wptexturize(wp_kses_post($note->comment_content))); ?> |
|
2115 | 2115 | </div> |
2116 | 2116 | <p class="meta"> |
2117 | - <abbr class="exact-date" title="<?php echo $note->comment_date; ?>"><?php printf( __( '%1$s - %2$s at %3$s', 'invoicing' ), $note->comment_author, date_i18n( get_option( 'date_format' ), strtotime( $note->comment_date ) ), date_i18n( get_option( 'time_format' ), strtotime( $note->comment_date ) ) ); ?></abbr> |
|
2118 | - <?php if ( $note->comment_author !== 'System' || wpinv_current_user_can_manage_invoicing() ) { ?> |
|
2119 | - <a href="#" class="delete_note"><?php _e( 'Delete note', 'invoicing' ); ?></a> |
|
2117 | + <abbr class="exact-date" title="<?php echo $note->comment_date; ?>"><?php printf(__('%1$s - %2$s at %3$s', 'invoicing'), $note->comment_author, date_i18n(get_option('date_format'), strtotime($note->comment_date)), date_i18n(get_option('time_format'), strtotime($note->comment_date))); ?></abbr> |
|
2118 | + <?php if ($note->comment_author !== 'System' || wpinv_current_user_can_manage_invoicing()) { ?> |
|
2119 | + <a href="#" class="delete_note"><?php _e('Delete note', 'invoicing'); ?></a> |
|
2120 | 2120 | <?php } ?> |
2121 | 2121 | </p> |
2122 | 2122 | </li> |
2123 | 2123 | <?php |
2124 | 2124 | $note_content = ob_get_clean(); |
2125 | - $note_content = apply_filters( 'wpinv_get_invoice_note_line_item', $note_content, $note, $echo ); |
|
2125 | + $note_content = apply_filters('wpinv_get_invoice_note_line_item', $note_content, $note, $echo); |
|
2126 | 2126 | |
2127 | - if ( $echo ) { |
|
2127 | + if ($echo) { |
|
2128 | 2128 | echo $note_content; |
2129 | 2129 | } else { |
2130 | 2130 | return $note_content; |
@@ -2134,43 +2134,43 @@ discard block |
||
2134 | 2134 | function wpinv_invalid_invoice_content() { |
2135 | 2135 | global $post; |
2136 | 2136 | |
2137 | - $invoice = wpinv_get_invoice( $post->ID ); |
|
2137 | + $invoice = wpinv_get_invoice($post->ID); |
|
2138 | 2138 | |
2139 | - $error = __( 'This invoice is only viewable by clicking on the invoice link that was sent to you via email.', 'invoicing' ); |
|
2140 | - if ( !empty( $invoice->ID ) && $invoice->has_status( array_keys( wpinv_get_invoice_statuses() ) ) ) { |
|
2141 | - if ( is_user_logged_in() ) { |
|
2142 | - if ( wpinv_require_login_to_checkout() ) { |
|
2143 | - if ( isset( $_GET['invoice_key'] ) && $_GET['invoice_key'] === $invoice->get_key() ) { |
|
2144 | - $error = __( 'You are not allowed to view this invoice.', 'invoicing' ); |
|
2139 | + $error = __('This invoice is only viewable by clicking on the invoice link that was sent to you via email.', 'invoicing'); |
|
2140 | + if (!empty($invoice->ID) && $invoice->has_status(array_keys(wpinv_get_invoice_statuses()))) { |
|
2141 | + if (is_user_logged_in()) { |
|
2142 | + if (wpinv_require_login_to_checkout()) { |
|
2143 | + if (isset($_GET['invoice_key']) && $_GET['invoice_key'] === $invoice->get_key()) { |
|
2144 | + $error = __('You are not allowed to view this invoice.', 'invoicing'); |
|
2145 | 2145 | } |
2146 | 2146 | } |
2147 | 2147 | } else { |
2148 | - if ( wpinv_require_login_to_checkout() ) { |
|
2149 | - if ( isset( $_GET['invoice_key'] ) && $_GET['invoice_key'] === $invoice->get_key() ) { |
|
2150 | - $error = __( 'You must be logged in to view this invoice.', 'invoicing' ); |
|
2148 | + if (wpinv_require_login_to_checkout()) { |
|
2149 | + if (isset($_GET['invoice_key']) && $_GET['invoice_key'] === $invoice->get_key()) { |
|
2150 | + $error = __('You must be logged in to view this invoice.', 'invoicing'); |
|
2151 | 2151 | } |
2152 | 2152 | } |
2153 | 2153 | } |
2154 | 2154 | } else { |
2155 | - $error = __( 'This invoice is deleted or does not exist.', 'invoicing' ); |
|
2155 | + $error = __('This invoice is deleted or does not exist.', 'invoicing'); |
|
2156 | 2156 | } |
2157 | 2157 | ?> |
2158 | 2158 | <div class="row wpinv-row-invalid"> |
2159 | 2159 | <div class="col-md-6 col-md-offset-3 wpinv-message error"> |
2160 | - <h3><?php _e( 'Access Denied', 'invoicing' ); ?></h3> |
|
2160 | + <h3><?php _e('Access Denied', 'invoicing'); ?></h3> |
|
2161 | 2161 | <p class="wpinv-msg-text"><?php echo $error; ?></p> |
2162 | 2162 | </div> |
2163 | 2163 | </div> |
2164 | 2164 | <?php |
2165 | 2165 | } |
2166 | -add_action( 'wpinv_invalid_invoice_content', 'wpinv_invalid_invoice_content' ); |
|
2166 | +add_action('wpinv_invalid_invoice_content', 'wpinv_invalid_invoice_content'); |
|
2167 | 2167 | |
2168 | -add_action( 'wpinv_checkout_billing_fields_last', 'wpinv_force_company_name_field'); |
|
2169 | -function wpinv_force_company_name_field(){ |
|
2168 | +add_action('wpinv_checkout_billing_fields_last', 'wpinv_force_company_name_field'); |
|
2169 | +function wpinv_force_company_name_field() { |
|
2170 | 2170 | $invoice = wpinv_get_invoice_cart(); |
2171 | - $user_id = wpinv_get_user_id( $invoice->ID ); |
|
2172 | - $company = empty( $user_id ) ? "" : get_user_meta( $user_id, '_wpinv_company', true ); |
|
2173 | - if ( 1 == wpinv_get_option( 'force_show_company' ) && !wpinv_use_taxes() ) { |
|
2171 | + $user_id = wpinv_get_user_id($invoice->ID); |
|
2172 | + $company = empty($user_id) ? "" : get_user_meta($user_id, '_wpinv_company', true); |
|
2173 | + if (1 == wpinv_get_option('force_show_company') && !wpinv_use_taxes()) { |
|
2174 | 2174 | ?> |
2175 | 2175 | <p class="wpi-cart-field wpi-col2 wpi-colf"> |
2176 | 2176 | <label for="wpinv_company" class="wpi-label"><?php _e('Company Name', 'invoicing'); ?></label> |
@@ -2195,21 +2195,21 @@ discard block |
||
2195 | 2195 | * @return string |
2196 | 2196 | */ |
2197 | 2197 | function wpinv_get_policy_text() { |
2198 | - $privacy_page_id = get_option( 'wp_page_for_privacy_policy', 0 ); |
|
2198 | + $privacy_page_id = get_option('wp_page_for_privacy_policy', 0); |
|
2199 | 2199 | |
2200 | - $text = wpinv_get_option('invoicing_privacy_checkout_message', sprintf( __( 'Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing' ), '[wpinv_privacy_policy]' )); |
|
2200 | + $text = wpinv_get_option('invoicing_privacy_checkout_message', sprintf(__('Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing'), '[wpinv_privacy_policy]')); |
|
2201 | 2201 | |
2202 | - if(!$privacy_page_id){ |
|
2203 | - $privacy_page_id = wpinv_get_option( 'privacy_page', 0 ); |
|
2202 | + if (!$privacy_page_id) { |
|
2203 | + $privacy_page_id = wpinv_get_option('privacy_page', 0); |
|
2204 | 2204 | } |
2205 | 2205 | |
2206 | - $privacy_link = $privacy_page_id ? '<a href="' . esc_url( get_permalink( $privacy_page_id ) ) . '" class="wpinv-privacy-policy-link" target="_blank">' . __( 'privacy policy', 'invoicing' ) . '</a>' : __( 'privacy policy', 'invoicing' ); |
|
2206 | + $privacy_link = $privacy_page_id ? '<a href="' . esc_url(get_permalink($privacy_page_id)) . '" class="wpinv-privacy-policy-link" target="_blank">' . __('privacy policy', 'invoicing') . '</a>' : __('privacy policy', 'invoicing'); |
|
2207 | 2207 | |
2208 | 2208 | $find_replace = array( |
2209 | 2209 | '[wpinv_privacy_policy]' => $privacy_link, |
2210 | 2210 | ); |
2211 | 2211 | |
2212 | - $privacy_text = str_replace( array_keys( $find_replace ), array_values( $find_replace ), $text ); |
|
2212 | + $privacy_text = str_replace(array_keys($find_replace), array_values($find_replace), $text); |
|
2213 | 2213 | |
2214 | 2214 | return wp_kses_post(wpautop($privacy_text)); |
2215 | 2215 | } |
@@ -2218,25 +2218,25 @@ discard block |
||
2218 | 2218 | /** |
2219 | 2219 | * Allows the user to set their own price for an invoice item |
2220 | 2220 | */ |
2221 | -function wpinv_checkout_cart_item_name_your_price( $cart_item, $key ) { |
|
2221 | +function wpinv_checkout_cart_item_name_your_price($cart_item, $key) { |
|
2222 | 2222 | |
2223 | 2223 | //Ensure we have an item id |
2224 | - if(! is_array( $cart_item ) || empty( $cart_item['id'] ) ) { |
|
2224 | + if (!is_array($cart_item) || empty($cart_item['id'])) { |
|
2225 | 2225 | return; |
2226 | 2226 | } |
2227 | 2227 | |
2228 | 2228 | //Fetch the item |
2229 | 2229 | $item_id = $cart_item['id']; |
2230 | - $item = new WPInv_Item( $item_id ); |
|
2230 | + $item = new WPInv_Item($item_id); |
|
2231 | 2231 | |
2232 | - if(! $item->supports_dynamic_pricing() || !$item->get_is_dynamic_pricing() ) { |
|
2232 | + if (!$item->supports_dynamic_pricing() || !$item->get_is_dynamic_pricing()) { |
|
2233 | 2233 | return; |
2234 | 2234 | } |
2235 | 2235 | |
2236 | 2236 | //Fetch the dynamic pricing "strings" |
2237 | - $suggested_price_text = esc_html( wpinv_get_option( 'suggested_price_text', __( 'Suggested Price:', 'invoicing' ) ) ); |
|
2238 | - $minimum_price_text = esc_html( wpinv_get_option( 'minimum_price_text', __( 'Minimum Price:', 'invoicing' ) ) ); |
|
2239 | - $name_your_price_text = esc_html( wpinv_get_option( 'name_your_price_text', __( 'Name Your Price', 'invoicing' ) ) ); |
|
2237 | + $suggested_price_text = esc_html(wpinv_get_option('suggested_price_text', __('Suggested Price:', 'invoicing'))); |
|
2238 | + $minimum_price_text = esc_html(wpinv_get_option('minimum_price_text', __('Minimum Price:', 'invoicing'))); |
|
2239 | + $name_your_price_text = esc_html(wpinv_get_option('name_your_price_text', __('Name Your Price', 'invoicing'))); |
|
2240 | 2240 | |
2241 | 2241 | //Display a "name_your_price" button |
2242 | 2242 | echo " — <a href='#' class='wpinv-name-your-price-frontend small'>$name_your_price_text</a></div>"; |
@@ -2245,7 +2245,7 @@ discard block |
||
2245 | 2245 | echo '<div class="name-your-price-miniform">'; |
2246 | 2246 | |
2247 | 2247 | //Maybe display the recommended price |
2248 | - if( $item->get_price() > 0 && !empty( $suggested_price_text ) ) { |
|
2248 | + if ($item->get_price() > 0 && !empty($suggested_price_text)) { |
|
2249 | 2249 | $suggested_price = $item->get_the_price(); |
2250 | 2250 | echo "<div>$suggested_price_text — $suggested_price</div>"; |
2251 | 2251 | } |
@@ -2253,50 +2253,50 @@ discard block |
||
2253 | 2253 | //Display the update price form |
2254 | 2254 | $symbol = wpinv_currency_symbol(); |
2255 | 2255 | $position = wpinv_currency_position(); |
2256 | - $minimum = esc_attr( $item->get_minimum_price() ); |
|
2257 | - $price = esc_attr( $cart_item['item_price'] ); |
|
2258 | - $update = esc_attr__( "Update", 'invoicing' ); |
|
2256 | + $minimum = esc_attr($item->get_minimum_price()); |
|
2257 | + $price = esc_attr($cart_item['item_price']); |
|
2258 | + $update = esc_attr__("Update", 'invoicing'); |
|
2259 | 2259 | |
2260 | 2260 | //Ensure it supports dynamic prici |
2261 | - if( $price < $minimum ) { |
|
2261 | + if ($price < $minimum) { |
|
2262 | 2262 | $price = $minimum; |
2263 | 2263 | } |
2264 | 2264 | |
2265 | 2265 | echo '<label>'; |
2266 | 2266 | echo $position != 'right' ? $symbol . ' ' : ''; |
2267 | 2267 | echo "<input type='number' min='$minimum' placeholder='$price' value='$price' class='wpi-field-price' />"; |
2268 | - echo $position == 'right' ? ' ' . $symbol : '' ; |
|
2268 | + echo $position == 'right' ? ' ' . $symbol : ''; |
|
2269 | 2269 | echo "</label>"; |
2270 | 2270 | echo "<input type='hidden' value='$item_id' class='wpi-field-item' />"; |
2271 | 2271 | echo "<a class='btn btn-success wpinv-submit wpinv-update-dynamic-price-frontend'>$update</a>"; |
2272 | 2272 | |
2273 | 2273 | //Maybe display the minimum price |
2274 | - if( $item->get_minimum_price() > 0 && !empty( $minimum_price_text ) ) { |
|
2275 | - $minimum_price = wpinv_price( wpinv_format_amount( $item->get_minimum_price() ) ); |
|
2274 | + if ($item->get_minimum_price() > 0 && !empty($minimum_price_text)) { |
|
2275 | + $minimum_price = wpinv_price(wpinv_format_amount($item->get_minimum_price())); |
|
2276 | 2276 | echo "<div>$minimum_price_text — $minimum_price</div>"; |
2277 | 2277 | } |
2278 | 2278 | |
2279 | 2279 | echo "</div>"; |
2280 | 2280 | |
2281 | 2281 | } |
2282 | -add_action( 'wpinv_checkout_cart_item_price_after', 'wpinv_checkout_cart_item_name_your_price', 10, 2 ); |
|
2282 | +add_action('wpinv_checkout_cart_item_price_after', 'wpinv_checkout_cart_item_name_your_price', 10, 2); |
|
2283 | 2283 | |
2284 | 2284 | function wpinv_oxygen_fix_conflict() { |
2285 | 2285 | global $ct_ignore_post_types; |
2286 | 2286 | |
2287 | - if ( ! is_array( $ct_ignore_post_types ) ) { |
|
2287 | + if (!is_array($ct_ignore_post_types)) { |
|
2288 | 2288 | $ct_ignore_post_types = array(); |
2289 | 2289 | } |
2290 | 2290 | |
2291 | - $post_types = array( 'wpi_discount', 'wpi_invoice', 'wpi_item' ); |
|
2291 | + $post_types = array('wpi_discount', 'wpi_invoice', 'wpi_item'); |
|
2292 | 2292 | |
2293 | - foreach ( $post_types as $post_type ) { |
|
2293 | + foreach ($post_types as $post_type) { |
|
2294 | 2294 | $ct_ignore_post_types[] = $post_type; |
2295 | 2295 | |
2296 | 2296 | // Ignore post type |
2297 | - add_filter( 'pre_option_oxygen_vsb_ignore_post_type_' . $post_type, '__return_true', 999 ); |
|
2297 | + add_filter('pre_option_oxygen_vsb_ignore_post_type_' . $post_type, '__return_true', 999); |
|
2298 | 2298 | } |
2299 | 2299 | |
2300 | - remove_filter( 'template_include', 'wpinv_template', 10, 1 ); |
|
2301 | - add_filter( 'template_include', 'wpinv_template', 999, 1 ); |
|
2300 | + remove_filter('template_include', 'wpinv_template', 10, 1); |
|
2301 | + add_filter('template_include', 'wpinv_template', 999, 1); |
|
2302 | 2302 | } |
2303 | 2303 | \ No newline at end of file |
@@ -1355,10 +1355,10 @@ |
||
1355 | 1355 | $data['cart_details'][$key]['price'] = wpinv_round_amount( $item_total ); |
1356 | 1356 | } |
1357 | 1357 | |
1358 | - $total = $data['subtotal'] - $data['discount'] + $data['tax']; |
|
1359 | - if ( $total < 0 ) { |
|
1360 | - $total = 0; |
|
1361 | - } |
|
1358 | + $total = $data['subtotal'] - $data['discount'] + $data['tax']; |
|
1359 | + if ( $total < 0 ) { |
|
1360 | + $total = 0; |
|
1361 | + } |
|
1362 | 1362 | |
1363 | 1363 | $data['subtotal'] = wpinv_round_amount( $cart_subtotal ); |
1364 | 1364 | $data['discount'] = wpinv_round_amount( $cart_discount ); |
@@ -974,8 +974,9 @@ |
||
974 | 974 | return false; |
975 | 975 | } |
976 | 976 | |
977 | - if ( empty( $this->ID ) ) |
|
978 | - return false; |
|
977 | + if ( empty( $this->ID ) ) { |
|
978 | + return false; |
|
979 | + } |
|
979 | 980 | |
980 | 981 | if ( ( ( is_user_logged_in() && wpinv_current_user_can_manage_invoicing() ) || $added_by_user ) && !$system ) { |
981 | 982 | $user = get_user_by( 'id', get_current_user_id() ); |
@@ -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,51 +83,51 @@ 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 ); |
|
130 | + $this->ID = absint($invoice_id); |
|
131 | 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 |
@@ -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($invoice->post_status); |
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,35 +186,35 @@ 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 | - private function setup_status_nicename( $status ) { |
|
200 | - $all_invoice_statuses = wpinv_get_invoice_statuses( true, true, $this ); |
|
201 | - $status = isset( $all_invoice_statuses[$status] ) ? $all_invoice_statuses[$status] : __( $status, 'invoicing' ); |
|
199 | + private function setup_status_nicename($status) { |
|
200 | + $all_invoice_statuses = wpinv_get_invoice_statuses(true, true, $this); |
|
201 | + $status = isset($all_invoice_statuses[$status]) ? $all_invoice_statuses[$status] : __($status, 'invoicing'); |
|
202 | 202 | |
203 | - return apply_filters( 'setup_status_nicename', $status ); |
|
203 | + return apply_filters('setup_status_nicename', $status); |
|
204 | 204 | } |
205 | 205 | |
206 | - private function setup_post_name( $post = NULL ) { |
|
206 | + private function setup_post_name($post = NULL) { |
|
207 | 207 | global $wpdb; |
208 | 208 | |
209 | 209 | $post_name = ''; |
210 | 210 | |
211 | - if ( !empty( $post ) ) { |
|
212 | - if( !empty( $post->post_name ) ) { |
|
211 | + if (!empty($post)) { |
|
212 | + if (!empty($post->post_name)) { |
|
213 | 213 | $post_name = $post->post_name; |
214 | - } else if ( !empty( $post->ID ) ) { |
|
215 | - $post_name = wpinv_generate_post_name( $post->ID ); |
|
214 | + } else if (!empty($post->ID)) { |
|
215 | + $post_name = wpinv_generate_post_name($post->ID); |
|
216 | 216 | |
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 | |
@@ -222,12 +222,12 @@ discard block |
||
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,66 +235,66 @@ 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 ( 'wpi-pending' == $invoice->post_status || 'preapproved' == $invoice->post_status ) { |
|
240 | + if ('wpi-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 = (float)$this->subtotal - ( (float)$this->total - (float)$this->tax - (float)$this->fees_total ); |
|
276 | - if ( $discount < 0 ) { |
|
275 | + $discount = (float) $this->subtotal - ((float) $this->total - (float) $this->tax - (float) $this->fees_total); |
|
276 | + if ($discount < 0) { |
|
277 | 277 | $discount = 0; |
278 | 278 | } |
279 | - $discount = wpinv_round_amount( $discount ); |
|
279 | + $discount = wpinv_round_amount($discount); |
|
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 | - if ( $tax < 0 ) { |
|
297 | + if ($tax < 0) { |
|
298 | 298 | $tax = 0; |
299 | 299 | } |
300 | 300 | |
@@ -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,23 +321,23 @@ 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 | } |
339 | 339 | |
340 | - if($amount < 0){ |
|
340 | + if ($amount < 0) { |
|
341 | 341 | $amount = 0; |
342 | 342 | } |
343 | 343 | |
@@ -345,13 +345,13 @@ discard block |
||
345 | 345 | } |
346 | 346 | |
347 | 347 | private function setup_mode() { |
348 | - return $this->get_meta( '_wpinv_mode' ); |
|
348 | + return $this->get_meta('_wpinv_mode'); |
|
349 | 349 | } |
350 | 350 | |
351 | 351 | private function setup_gateway() { |
352 | - $gateway = $this->get_meta( '_wpinv_gateway' ); |
|
352 | + $gateway = $this->get_meta('_wpinv_gateway'); |
|
353 | 353 | |
354 | - if ( empty( $gateway ) && 'publish' === $this->status ) { |
|
354 | + if (empty($gateway) && 'publish' === $this->status) { |
|
355 | 355 | $gateway = 'manual'; |
356 | 356 | } |
357 | 357 | |
@@ -359,23 +359,23 @@ discard block |
||
359 | 359 | } |
360 | 360 | |
361 | 361 | private function setup_gateway_title() { |
362 | - $gateway_title = wpinv_get_gateway_checkout_label( $this->gateway ); |
|
362 | + $gateway_title = wpinv_get_gateway_checkout_label($this->gateway); |
|
363 | 363 | return $gateway_title; |
364 | 364 | } |
365 | 365 | |
366 | 366 | private function setup_transaction_id() { |
367 | - $transaction_id = $this->get_meta( '_wpinv_transaction_id' ); |
|
367 | + $transaction_id = $this->get_meta('_wpinv_transaction_id'); |
|
368 | 368 | |
369 | - if ( empty( $transaction_id ) || (int) $transaction_id === (int) $this->ID ) { |
|
369 | + if (empty($transaction_id) || (int) $transaction_id === (int) $this->ID) { |
|
370 | 370 | $gateway = $this->gateway; |
371 | - $transaction_id = apply_filters( 'wpinv_get_invoice_transaction_id-' . $gateway, $this->ID ); |
|
371 | + $transaction_id = apply_filters('wpinv_get_invoice_transaction_id-' . $gateway, $this->ID); |
|
372 | 372 | } |
373 | 373 | |
374 | 374 | return $transaction_id; |
375 | 375 | } |
376 | 376 | |
377 | 377 | private function setup_ip() { |
378 | - $ip = $this->get_meta( '_wpinv_user_ip' ); |
|
378 | + $ip = $this->get_meta('_wpinv_user_ip'); |
|
379 | 379 | return $ip; |
380 | 380 | } |
381 | 381 | |
@@ -385,62 +385,62 @@ discard block |
||
385 | 385 | ///} |
386 | 386 | |
387 | 387 | private function setup_first_name() { |
388 | - $first_name = $this->get_meta( '_wpinv_first_name' ); |
|
388 | + $first_name = $this->get_meta('_wpinv_first_name'); |
|
389 | 389 | return $first_name; |
390 | 390 | } |
391 | 391 | |
392 | 392 | private function setup_last_name() { |
393 | - $last_name = $this->get_meta( '_wpinv_last_name' ); |
|
393 | + $last_name = $this->get_meta('_wpinv_last_name'); |
|
394 | 394 | return $last_name; |
395 | 395 | } |
396 | 396 | |
397 | 397 | private function setup_company() { |
398 | - $company = $this->get_meta( '_wpinv_company' ); |
|
398 | + $company = $this->get_meta('_wpinv_company'); |
|
399 | 399 | return $company; |
400 | 400 | } |
401 | 401 | |
402 | 402 | private function setup_vat_number() { |
403 | - $vat_number = $this->get_meta( '_wpinv_vat_number' ); |
|
403 | + $vat_number = $this->get_meta('_wpinv_vat_number'); |
|
404 | 404 | return $vat_number; |
405 | 405 | } |
406 | 406 | |
407 | 407 | private function setup_vat_rate() { |
408 | - $vat_rate = $this->get_meta( '_wpinv_vat_rate' ); |
|
408 | + $vat_rate = $this->get_meta('_wpinv_vat_rate'); |
|
409 | 409 | return $vat_rate; |
410 | 410 | } |
411 | 411 | |
412 | 412 | private function setup_adddress_confirmed() { |
413 | - $adddress_confirmed = $this->get_meta( '_wpinv_adddress_confirmed' ); |
|
413 | + $adddress_confirmed = $this->get_meta('_wpinv_adddress_confirmed'); |
|
414 | 414 | return $adddress_confirmed; |
415 | 415 | } |
416 | 416 | |
417 | 417 | private function setup_phone() { |
418 | - $phone = $this->get_meta( '_wpinv_phone' ); |
|
418 | + $phone = $this->get_meta('_wpinv_phone'); |
|
419 | 419 | return $phone; |
420 | 420 | } |
421 | 421 | |
422 | 422 | private function setup_address() { |
423 | - $address = $this->get_meta( '_wpinv_address', true ); |
|
423 | + $address = $this->get_meta('_wpinv_address', true); |
|
424 | 424 | return $address; |
425 | 425 | } |
426 | 426 | |
427 | 427 | private function setup_city() { |
428 | - $city = $this->get_meta( '_wpinv_city', true ); |
|
428 | + $city = $this->get_meta('_wpinv_city', true); |
|
429 | 429 | return $city; |
430 | 430 | } |
431 | 431 | |
432 | 432 | private function setup_country() { |
433 | - $country = $this->get_meta( '_wpinv_country', true ); |
|
433 | + $country = $this->get_meta('_wpinv_country', true); |
|
434 | 434 | return $country; |
435 | 435 | } |
436 | 436 | |
437 | 437 | private function setup_state() { |
438 | - $state = $this->get_meta( '_wpinv_state', true ); |
|
438 | + $state = $this->get_meta('_wpinv_state', true); |
|
439 | 439 | return $state; |
440 | 440 | } |
441 | 441 | |
442 | 442 | private function setup_zip() { |
443 | - $zip = $this->get_meta( '_wpinv_zip', true ); |
|
443 | + $zip = $this->get_meta('_wpinv_zip', true); |
|
444 | 444 | return $zip; |
445 | 445 | } |
446 | 446 | |
@@ -449,7 +449,7 @@ discard block |
||
449 | 449 | 'user_id' => $this->user_id, |
450 | 450 | 'first_name' => $this->first_name, |
451 | 451 | 'last_name' => $this->last_name, |
452 | - 'email' => get_the_author_meta( 'email', $this->user_id ), |
|
452 | + 'email' => get_the_author_meta('email', $this->user_id), |
|
453 | 453 | 'phone' => $this->phone, |
454 | 454 | 'address' => $this->address, |
455 | 455 | 'city' => $this->city, |
@@ -464,12 +464,12 @@ discard block |
||
464 | 464 | ); |
465 | 465 | |
466 | 466 | $user_info = array(); |
467 | - if ( isset( $this->payment_meta['user_info'] ) ) { |
|
468 | - $user_info = maybe_unserialize( $this->payment_meta['user_info'] ); |
|
467 | + if (isset($this->payment_meta['user_info'])) { |
|
468 | + $user_info = maybe_unserialize($this->payment_meta['user_info']); |
|
469 | 469 | |
470 | - if ( !empty( $user_info ) && isset( $user_info['user_id'] ) && $post = get_post( $this->ID ) ) { |
|
470 | + if (!empty($user_info) && isset($user_info['user_id']) && $post = get_post($this->ID)) { |
|
471 | 471 | $this->user_id = $post->post_author; |
472 | - $this->email = get_the_author_meta( 'email', $this->user_id ); |
|
472 | + $this->email = get_the_author_meta('email', $this->user_id); |
|
473 | 473 | |
474 | 474 | $user_info['user_id'] = $this->user_id; |
475 | 475 | $user_info['email'] = $this->email; |
@@ -478,13 +478,13 @@ discard block |
||
478 | 478 | } |
479 | 479 | } |
480 | 480 | |
481 | - $user_info = wp_parse_args( $user_info, $defaults ); |
|
481 | + $user_info = wp_parse_args($user_info, $defaults); |
|
482 | 482 | |
483 | 483 | // Get the user, but only if it's been created |
484 | - $user = get_userdata( $this->user_id ); |
|
484 | + $user = get_userdata($this->user_id); |
|
485 | 485 | |
486 | - if ( !empty( $user ) && $user->ID > 0 ) { |
|
487 | - if ( empty( $user_info ) ) { |
|
486 | + if (!empty($user) && $user->ID > 0) { |
|
487 | + if (empty($user_info)) { |
|
488 | 488 | $user_info = array( |
489 | 489 | 'user_id' => $user->ID, |
490 | 490 | 'first_name' => $user->first_name, |
@@ -493,23 +493,23 @@ discard block |
||
493 | 493 | 'discount' => '', |
494 | 494 | ); |
495 | 495 | } else { |
496 | - foreach ( $user_info as $key => $value ) { |
|
497 | - if ( ! empty( $value ) ) { |
|
496 | + foreach ($user_info as $key => $value) { |
|
497 | + if (!empty($value)) { |
|
498 | 498 | continue; |
499 | 499 | } |
500 | 500 | |
501 | - switch( $key ) { |
|
501 | + switch ($key) { |
|
502 | 502 | case 'user_id': |
503 | - $user_info[ $key ] = $user->ID; |
|
503 | + $user_info[$key] = $user->ID; |
|
504 | 504 | break; |
505 | 505 | case 'first_name': |
506 | - $user_info[ $key ] = $user->first_name; |
|
506 | + $user_info[$key] = $user->first_name; |
|
507 | 507 | break; |
508 | 508 | case 'last_name': |
509 | - $user_info[ $key ] = $user->last_name; |
|
509 | + $user_info[$key] = $user->last_name; |
|
510 | 510 | break; |
511 | 511 | case 'email': |
512 | - $user_info[ $key ] = $user->user_email; |
|
512 | + $user_info[$key] = $user->user_email; |
|
513 | 513 | break; |
514 | 514 | } |
515 | 515 | } |
@@ -520,25 +520,25 @@ discard block |
||
520 | 520 | } |
521 | 521 | |
522 | 522 | private function setup_invoice_key() { |
523 | - $key = $this->get_meta( '_wpinv_key', true ); |
|
523 | + $key = $this->get_meta('_wpinv_key', true); |
|
524 | 524 | |
525 | 525 | return $key; |
526 | 526 | } |
527 | 527 | |
528 | 528 | private function setup_invoice_number() { |
529 | - $number = $this->get_meta( '_wpinv_number', true ); |
|
529 | + $number = $this->get_meta('_wpinv_number', true); |
|
530 | 530 | |
531 | - if ( !$number ) { |
|
531 | + if (!$number) { |
|
532 | 532 | $number = $this->ID; |
533 | 533 | |
534 | - if ( $this->status == 'auto-draft' ) { |
|
535 | - if ( wpinv_sequential_number_active( $this->post_type ) ) { |
|
536 | - $next_number = wpinv_get_next_invoice_number( $this->post_type ); |
|
534 | + if ($this->status == 'auto-draft') { |
|
535 | + if (wpinv_sequential_number_active($this->post_type)) { |
|
536 | + $next_number = wpinv_get_next_invoice_number($this->post_type); |
|
537 | 537 | $number = $next_number; |
538 | 538 | } |
539 | 539 | } |
540 | 540 | |
541 | - $number = wpinv_format_invoice_number( $number, $this->post_type ); |
|
541 | + $number = wpinv_format_invoice_number($number, $this->post_type); |
|
542 | 542 | } |
543 | 543 | |
544 | 544 | return $number; |
@@ -547,10 +547,10 @@ discard block |
||
547 | 547 | private function insert_invoice() { |
548 | 548 | global $wpdb; |
549 | 549 | |
550 | - if ( empty( $this->post_type ) ) { |
|
551 | - if ( !empty( $this->ID ) && $post_type = get_post_type( $this->ID ) ) { |
|
550 | + if (empty($this->post_type)) { |
|
551 | + if (!empty($this->ID) && $post_type = get_post_type($this->ID)) { |
|
552 | 552 | $this->post_type = $post_type; |
553 | - } else if ( !empty( $this->parent_invoice ) && $post_type = get_post_type( $this->parent_invoice ) ) { |
|
553 | + } else if (!empty($this->parent_invoice) && $post_type = get_post_type($this->parent_invoice)) { |
|
554 | 554 | $this->post_type = $post_type; |
555 | 555 | } else { |
556 | 556 | $this->post_type = 'wpi_invoice'; |
@@ -558,16 +558,16 @@ discard block |
||
558 | 558 | } |
559 | 559 | |
560 | 560 | $invoice_number = $this->ID; |
561 | - if ( $number = $this->get_meta( '_wpinv_number', true ) ) { |
|
561 | + if ($number = $this->get_meta('_wpinv_number', true)) { |
|
562 | 562 | $invoice_number = $number; |
563 | 563 | } |
564 | 564 | |
565 | - if ( empty( $this->key ) ) { |
|
565 | + if (empty($this->key)) { |
|
566 | 566 | $this->key = self::generate_key(); |
567 | 567 | $this->pending['key'] = $this->key; |
568 | 568 | } |
569 | 569 | |
570 | - if ( empty( $this->ip ) ) { |
|
570 | + if (empty($this->ip)) { |
|
571 | 571 | $this->ip = wpinv_get_ip(); |
572 | 572 | $this->pending['ip'] = $this->ip; |
573 | 573 | } |
@@ -604,61 +604,61 @@ discard block |
||
604 | 604 | 'post_status' => $this->status, |
605 | 605 | 'post_author' => $this->user_id, |
606 | 606 | 'post_type' => $this->post_type, |
607 | - 'post_date' => ! empty( $this->date ) && $this->date != '0000-00-00 00:00:00' ? $this->date : current_time( 'mysql' ), |
|
608 | - 'post_date_gmt' => ! empty( $this->date ) && $this->date != '0000-00-00 00:00:00' ? get_gmt_from_date( $this->date ) : current_time( 'mysql', 1 ), |
|
607 | + 'post_date' => !empty($this->date) && $this->date != '0000-00-00 00:00:00' ? $this->date : current_time('mysql'), |
|
608 | + 'post_date_gmt' => !empty($this->date) && $this->date != '0000-00-00 00:00:00' ? get_gmt_from_date($this->date) : current_time('mysql', 1), |
|
609 | 609 | 'post_parent' => $this->parent_invoice, |
610 | 610 | ); |
611 | - $args = apply_filters( 'wpinv_insert_invoice_args', $post_data, $this ); |
|
611 | + $args = apply_filters('wpinv_insert_invoice_args', $post_data, $this); |
|
612 | 612 | |
613 | 613 | // Create a blank invoice |
614 | - if ( !empty( $this->ID ) ) { |
|
615 | - $args['ID'] = $this->ID; |
|
614 | + if (!empty($this->ID)) { |
|
615 | + $args['ID'] = $this->ID; |
|
616 | 616 | |
617 | - $invoice_id = wp_update_post( $args, true ); |
|
617 | + $invoice_id = wp_update_post($args, true); |
|
618 | 618 | } else { |
619 | - $invoice_id = wp_insert_post( $args, true ); |
|
619 | + $invoice_id = wp_insert_post($args, true); |
|
620 | 620 | } |
621 | 621 | |
622 | - if ( is_wp_error( $invoice_id ) ) { |
|
622 | + if (is_wp_error($invoice_id)) { |
|
623 | 623 | return false; |
624 | 624 | } |
625 | 625 | |
626 | - if ( !empty( $invoice_id ) ) { |
|
626 | + if (!empty($invoice_id)) { |
|
627 | 627 | $this->ID = $invoice_id; |
628 | 628 | $this->_ID = $invoice_id; |
629 | 629 | |
630 | - $this->payment_meta = apply_filters( 'wpinv_payment_meta', $this->payment_meta, $payment_data ); |
|
631 | - if ( ! empty( $this->payment_meta['fees'] ) ) { |
|
632 | - $this->fees = array_merge( $this->fees, $this->payment_meta['fees'] ); |
|
633 | - foreach( $this->fees as $fee ) { |
|
634 | - $this->increase_fees( $fee['amount'] ); |
|
630 | + $this->payment_meta = apply_filters('wpinv_payment_meta', $this->payment_meta, $payment_data); |
|
631 | + if (!empty($this->payment_meta['fees'])) { |
|
632 | + $this->fees = array_merge($this->fees, $this->payment_meta['fees']); |
|
633 | + foreach ($this->fees as $fee) { |
|
634 | + $this->increase_fees($fee['amount']); |
|
635 | 635 | } |
636 | 636 | } |
637 | 637 | |
638 | - $this->update_meta( '_wpinv_payment_meta', $this->payment_meta ); |
|
638 | + $this->update_meta('_wpinv_payment_meta', $this->payment_meta); |
|
639 | 639 | $this->new = true; |
640 | 640 | } |
641 | 641 | |
642 | 642 | return $this->ID; |
643 | 643 | } |
644 | 644 | |
645 | - public function save( $setup = false ) { |
|
645 | + public function save($setup = false) { |
|
646 | 646 | global $wpi_session; |
647 | 647 | |
648 | 648 | $saved = false; |
649 | - if ( empty( $this->items ) ) { |
|
649 | + if (empty($this->items)) { |
|
650 | 650 | return $saved; // Don't save empty invoice. |
651 | 651 | } |
652 | 652 | |
653 | - if ( empty( $this->key ) ) { |
|
653 | + if (empty($this->key)) { |
|
654 | 654 | $this->key = self::generate_key(); |
655 | 655 | $this->pending['key'] = $this->key; |
656 | 656 | } |
657 | 657 | |
658 | - if ( empty( $this->ID ) ) { |
|
658 | + if (empty($this->ID)) { |
|
659 | 659 | $invoice_id = $this->insert_invoice(); |
660 | 660 | |
661 | - if ( false === $invoice_id ) { |
|
661 | + if (false === $invoice_id) { |
|
662 | 662 | $saved = false; |
663 | 663 | } else { |
664 | 664 | $this->ID = $invoice_id; |
@@ -666,27 +666,27 @@ discard block |
||
666 | 666 | } |
667 | 667 | |
668 | 668 | // If we have something pending, let's save it |
669 | - if ( !empty( $this->pending ) ) { |
|
669 | + if (!empty($this->pending)) { |
|
670 | 670 | $total_increase = 0; |
671 | 671 | $total_decrease = 0; |
672 | 672 | |
673 | - foreach ( $this->pending as $key => $value ) { |
|
674 | - switch( $key ) { |
|
673 | + foreach ($this->pending as $key => $value) { |
|
674 | + switch ($key) { |
|
675 | 675 | case 'items': |
676 | 676 | // Update totals for pending items |
677 | - foreach ( $this->pending[ $key ] as $item ) { |
|
678 | - switch( $item['action'] ) { |
|
677 | + foreach ($this->pending[$key] as $item) { |
|
678 | + switch ($item['action']) { |
|
679 | 679 | case 'add': |
680 | 680 | $price = $item['price']; |
681 | 681 | $taxes = $item['tax']; |
682 | 682 | |
683 | - if ( 'publish' === $this->status ) { |
|
683 | + if ('publish' === $this->status) { |
|
684 | 684 | $total_increase += $price; |
685 | 685 | } |
686 | 686 | break; |
687 | 687 | |
688 | 688 | case 'remove': |
689 | - if ( 'publish' === $this->status ) { |
|
689 | + if ('publish' === $this->status) { |
|
690 | 690 | $total_decrease += $item['price']; |
691 | 691 | } |
692 | 692 | break; |
@@ -694,16 +694,16 @@ discard block |
||
694 | 694 | } |
695 | 695 | break; |
696 | 696 | case 'fees': |
697 | - if ( 'publish' !== $this->status ) { |
|
697 | + if ('publish' !== $this->status) { |
|
698 | 698 | break; |
699 | 699 | } |
700 | 700 | |
701 | - if ( empty( $this->pending[ $key ] ) ) { |
|
701 | + if (empty($this->pending[$key])) { |
|
702 | 702 | break; |
703 | 703 | } |
704 | 704 | |
705 | - foreach ( $this->pending[ $key ] as $fee ) { |
|
706 | - switch( $fee['action'] ) { |
|
705 | + foreach ($this->pending[$key] as $fee) { |
|
706 | + switch ($fee['action']) { |
|
707 | 707 | case 'add': |
708 | 708 | $total_increase += $fee['amount']; |
709 | 709 | break; |
@@ -715,83 +715,83 @@ discard block |
||
715 | 715 | } |
716 | 716 | break; |
717 | 717 | case 'status': |
718 | - $this->update_status( $this->status ); |
|
718 | + $this->update_status($this->status); |
|
719 | 719 | break; |
720 | 720 | case 'gateway': |
721 | - $this->update_meta( '_wpinv_gateway', $this->gateway ); |
|
721 | + $this->update_meta('_wpinv_gateway', $this->gateway); |
|
722 | 722 | break; |
723 | 723 | case 'mode': |
724 | - $this->update_meta( '_wpinv_mode', $this->mode ); |
|
724 | + $this->update_meta('_wpinv_mode', $this->mode); |
|
725 | 725 | break; |
726 | 726 | case 'transaction_id': |
727 | - $this->update_meta( '_wpinv_transaction_id', $this->transaction_id ); |
|
727 | + $this->update_meta('_wpinv_transaction_id', $this->transaction_id); |
|
728 | 728 | break; |
729 | 729 | case 'ip': |
730 | - $this->update_meta( '_wpinv_user_ip', $this->ip ); |
|
730 | + $this->update_meta('_wpinv_user_ip', $this->ip); |
|
731 | 731 | break; |
732 | 732 | ///case 'user_id': |
733 | 733 | ///$this->update_meta( '_wpinv_user_id', $this->user_id ); |
734 | 734 | ///$this->user_info['user_id'] = $this->user_id; |
735 | 735 | ///break; |
736 | 736 | case 'first_name': |
737 | - $this->update_meta( '_wpinv_first_name', $this->first_name ); |
|
737 | + $this->update_meta('_wpinv_first_name', $this->first_name); |
|
738 | 738 | $this->user_info['first_name'] = $this->first_name; |
739 | 739 | break; |
740 | 740 | case 'last_name': |
741 | - $this->update_meta( '_wpinv_last_name', $this->last_name ); |
|
741 | + $this->update_meta('_wpinv_last_name', $this->last_name); |
|
742 | 742 | $this->user_info['last_name'] = $this->last_name; |
743 | 743 | break; |
744 | 744 | case 'phone': |
745 | - $this->update_meta( '_wpinv_phone', $this->phone ); |
|
745 | + $this->update_meta('_wpinv_phone', $this->phone); |
|
746 | 746 | $this->user_info['phone'] = $this->phone; |
747 | 747 | break; |
748 | 748 | case 'address': |
749 | - $this->update_meta( '_wpinv_address', $this->address ); |
|
749 | + $this->update_meta('_wpinv_address', $this->address); |
|
750 | 750 | $this->user_info['address'] = $this->address; |
751 | 751 | break; |
752 | 752 | case 'city': |
753 | - $this->update_meta( '_wpinv_city', $this->city ); |
|
753 | + $this->update_meta('_wpinv_city', $this->city); |
|
754 | 754 | $this->user_info['city'] = $this->city; |
755 | 755 | break; |
756 | 756 | case 'country': |
757 | - $this->update_meta( '_wpinv_country', $this->country ); |
|
757 | + $this->update_meta('_wpinv_country', $this->country); |
|
758 | 758 | $this->user_info['country'] = $this->country; |
759 | 759 | break; |
760 | 760 | case 'state': |
761 | - $this->update_meta( '_wpinv_state', $this->state ); |
|
761 | + $this->update_meta('_wpinv_state', $this->state); |
|
762 | 762 | $this->user_info['state'] = $this->state; |
763 | 763 | break; |
764 | 764 | case 'zip': |
765 | - $this->update_meta( '_wpinv_zip', $this->zip ); |
|
765 | + $this->update_meta('_wpinv_zip', $this->zip); |
|
766 | 766 | $this->user_info['zip'] = $this->zip; |
767 | 767 | break; |
768 | 768 | case 'company': |
769 | - $this->update_meta( '_wpinv_company', $this->company ); |
|
769 | + $this->update_meta('_wpinv_company', $this->company); |
|
770 | 770 | $this->user_info['company'] = $this->company; |
771 | 771 | break; |
772 | 772 | case 'vat_number': |
773 | - $this->update_meta( '_wpinv_vat_number', $this->vat_number ); |
|
773 | + $this->update_meta('_wpinv_vat_number', $this->vat_number); |
|
774 | 774 | $this->user_info['vat_number'] = $this->vat_number; |
775 | 775 | |
776 | - $vat_info = $wpi_session->get( 'user_vat_data' ); |
|
777 | - if ( $this->vat_number && !empty( $vat_info ) && isset( $vat_info['number'] ) && isset( $vat_info['valid'] ) && $vat_info['number'] == $this->vat_number ) { |
|
778 | - $adddress_confirmed = isset( $vat_info['adddress_confirmed'] ) ? $vat_info['adddress_confirmed'] : false; |
|
779 | - $this->update_meta( '_wpinv_adddress_confirmed', (bool)$adddress_confirmed ); |
|
780 | - $this->user_info['adddress_confirmed'] = (bool)$adddress_confirmed; |
|
776 | + $vat_info = $wpi_session->get('user_vat_data'); |
|
777 | + if ($this->vat_number && !empty($vat_info) && isset($vat_info['number']) && isset($vat_info['valid']) && $vat_info['number'] == $this->vat_number) { |
|
778 | + $adddress_confirmed = isset($vat_info['adddress_confirmed']) ? $vat_info['adddress_confirmed'] : false; |
|
779 | + $this->update_meta('_wpinv_adddress_confirmed', (bool) $adddress_confirmed); |
|
780 | + $this->user_info['adddress_confirmed'] = (bool) $adddress_confirmed; |
|
781 | 781 | } |
782 | 782 | |
783 | 783 | break; |
784 | 784 | case 'vat_rate': |
785 | - $this->update_meta( '_wpinv_vat_rate', $this->vat_rate ); |
|
785 | + $this->update_meta('_wpinv_vat_rate', $this->vat_rate); |
|
786 | 786 | $this->user_info['vat_rate'] = $this->vat_rate; |
787 | 787 | break; |
788 | 788 | case 'adddress_confirmed': |
789 | - $this->update_meta( '_wpinv_adddress_confirmed', $this->adddress_confirmed ); |
|
789 | + $this->update_meta('_wpinv_adddress_confirmed', $this->adddress_confirmed); |
|
790 | 790 | $this->user_info['adddress_confirmed'] = $this->adddress_confirmed; |
791 | 791 | break; |
792 | 792 | |
793 | 793 | case 'key': |
794 | - $this->update_meta( '_wpinv_key', $this->key ); |
|
794 | + $this->update_meta('_wpinv_key', $this->key); |
|
795 | 795 | break; |
796 | 796 | case 'date': |
797 | 797 | $args = array( |
@@ -800,49 +800,49 @@ discard block |
||
800 | 800 | 'edit_date' => true, |
801 | 801 | ); |
802 | 802 | |
803 | - wp_update_post( $args ); |
|
803 | + wp_update_post($args); |
|
804 | 804 | break; |
805 | 805 | case 'due_date': |
806 | - if ( empty( $this->due_date ) ) { |
|
806 | + if (empty($this->due_date)) { |
|
807 | 807 | $this->due_date = 'none'; |
808 | 808 | } |
809 | 809 | |
810 | - $this->update_meta( '_wpinv_due_date', $this->due_date ); |
|
810 | + $this->update_meta('_wpinv_due_date', $this->due_date); |
|
811 | 811 | break; |
812 | 812 | case 'completed_date': |
813 | - $this->update_meta( '_wpinv_completed_date', $this->completed_date ); |
|
813 | + $this->update_meta('_wpinv_completed_date', $this->completed_date); |
|
814 | 814 | break; |
815 | 815 | case 'discounts': |
816 | - if ( ! is_array( $this->discounts ) ) { |
|
817 | - $this->discounts = explode( ',', $this->discounts ); |
|
816 | + if (!is_array($this->discounts)) { |
|
817 | + $this->discounts = explode(',', $this->discounts); |
|
818 | 818 | } |
819 | 819 | |
820 | - $this->user_info['discount'] = implode( ',', $this->discounts ); |
|
820 | + $this->user_info['discount'] = implode(',', $this->discounts); |
|
821 | 821 | break; |
822 | 822 | case 'discount': |
823 | - $this->update_meta( '_wpinv_discount', wpinv_round_amount( $this->discount ) ); |
|
823 | + $this->update_meta('_wpinv_discount', wpinv_round_amount($this->discount)); |
|
824 | 824 | break; |
825 | 825 | case 'discount_code': |
826 | - $this->update_meta( '_wpinv_discount_code', $this->discount_code ); |
|
826 | + $this->update_meta('_wpinv_discount_code', $this->discount_code); |
|
827 | 827 | break; |
828 | 828 | case 'parent_invoice': |
829 | 829 | $args = array( |
830 | 830 | 'ID' => $this->ID, |
831 | 831 | 'post_parent' => $this->parent_invoice, |
832 | 832 | ); |
833 | - wp_update_post( $args ); |
|
833 | + wp_update_post($args); |
|
834 | 834 | break; |
835 | 835 | default: |
836 | - do_action( 'wpinv_save', $this, $key ); |
|
836 | + do_action('wpinv_save', $this, $key); |
|
837 | 837 | break; |
838 | 838 | } |
839 | 839 | } |
840 | 840 | |
841 | - $this->update_meta( '_wpinv_subtotal', wpinv_round_amount( $this->subtotal ) ); |
|
842 | - $this->update_meta( '_wpinv_total', wpinv_round_amount( $this->total ) ); |
|
843 | - $this->update_meta( '_wpinv_tax', wpinv_round_amount( $this->tax ) ); |
|
841 | + $this->update_meta('_wpinv_subtotal', wpinv_round_amount($this->subtotal)); |
|
842 | + $this->update_meta('_wpinv_total', wpinv_round_amount($this->total)); |
|
843 | + $this->update_meta('_wpinv_tax', wpinv_round_amount($this->tax)); |
|
844 | 844 | |
845 | - $this->items = array_values( $this->items ); |
|
845 | + $this->items = array_values($this->items); |
|
846 | 846 | |
847 | 847 | $new_meta = array( |
848 | 848 | 'items' => $this->items, |
@@ -853,12 +853,12 @@ discard block |
||
853 | 853 | ); |
854 | 854 | |
855 | 855 | $meta = $this->get_meta(); |
856 | - $merged_meta = array_merge( $meta, $new_meta ); |
|
856 | + $merged_meta = array_merge($meta, $new_meta); |
|
857 | 857 | |
858 | 858 | // Only save the payment meta if it's changed |
859 | - if ( md5( serialize( $meta ) ) !== md5( serialize( $merged_meta) ) ) { |
|
860 | - $updated = $this->update_meta( '_wpinv_payment_meta', $merged_meta ); |
|
861 | - if ( false !== $updated ) { |
|
859 | + if (md5(serialize($meta)) !== md5(serialize($merged_meta))) { |
|
860 | + $updated = $this->update_meta('_wpinv_payment_meta', $merged_meta); |
|
861 | + if (false !== $updated) { |
|
862 | 862 | $saved = true; |
863 | 863 | } |
864 | 864 | } |
@@ -866,15 +866,15 @@ discard block |
||
866 | 866 | $this->pending = array(); |
867 | 867 | $saved = true; |
868 | 868 | } else { |
869 | - $this->update_meta( '_wpinv_subtotal', wpinv_round_amount( $this->subtotal ) ); |
|
870 | - $this->update_meta( '_wpinv_total', wpinv_round_amount( $this->total ) ); |
|
871 | - $this->update_meta( '_wpinv_tax', wpinv_round_amount( $this->tax ) ); |
|
869 | + $this->update_meta('_wpinv_subtotal', wpinv_round_amount($this->subtotal)); |
|
870 | + $this->update_meta('_wpinv_total', wpinv_round_amount($this->total)); |
|
871 | + $this->update_meta('_wpinv_tax', wpinv_round_amount($this->tax)); |
|
872 | 872 | } |
873 | 873 | |
874 | - do_action( 'wpinv_invoice_save', $this, $saved ); |
|
874 | + do_action('wpinv_invoice_save', $this, $saved); |
|
875 | 875 | |
876 | - if ( true === $saved || $setup ) { |
|
877 | - $this->setup_invoice( $this->ID ); |
|
876 | + if (true === $saved || $setup) { |
|
877 | + $this->setup_invoice($this->ID); |
|
878 | 878 | } |
879 | 879 | |
880 | 880 | $this->refresh_item_ids(); |
@@ -882,7 +882,7 @@ discard block |
||
882 | 882 | return $saved; |
883 | 883 | } |
884 | 884 | |
885 | - public function add_fee( $args, $global = true ) { |
|
885 | + public function add_fee($args, $global = true) { |
|
886 | 886 | $default_args = array( |
887 | 887 | 'label' => '', |
888 | 888 | 'amount' => 0, |
@@ -892,75 +892,75 @@ discard block |
||
892 | 892 | 'item_id' => 0, |
893 | 893 | ); |
894 | 894 | |
895 | - $fee = wp_parse_args( $args, $default_args ); |
|
895 | + $fee = wp_parse_args($args, $default_args); |
|
896 | 896 | |
897 | - if ( empty( $fee['label'] ) ) { |
|
897 | + if (empty($fee['label'])) { |
|
898 | 898 | return false; |
899 | 899 | } |
900 | 900 | |
901 | - $fee['id'] = sanitize_title( $fee['label'] ); |
|
901 | + $fee['id'] = sanitize_title($fee['label']); |
|
902 | 902 | |
903 | - $this->fees[] = $fee; |
|
903 | + $this->fees[] = $fee; |
|
904 | 904 | |
905 | 905 | $added_fee = $fee; |
906 | 906 | $added_fee['action'] = 'add'; |
907 | 907 | $this->pending['fees'][] = $added_fee; |
908 | - reset( $this->fees ); |
|
908 | + reset($this->fees); |
|
909 | 909 | |
910 | - $this->increase_fees( $fee['amount'] ); |
|
910 | + $this->increase_fees($fee['amount']); |
|
911 | 911 | return true; |
912 | 912 | } |
913 | 913 | |
914 | - public function remove_fee( $key ) { |
|
914 | + public function remove_fee($key) { |
|
915 | 915 | $removed = false; |
916 | 916 | |
917 | - if ( is_numeric( $key ) ) { |
|
918 | - $removed = $this->remove_fee_by( 'index', $key ); |
|
917 | + if (is_numeric($key)) { |
|
918 | + $removed = $this->remove_fee_by('index', $key); |
|
919 | 919 | } |
920 | 920 | |
921 | 921 | return $removed; |
922 | 922 | } |
923 | 923 | |
924 | - public function remove_fee_by( $key, $value, $global = false ) { |
|
925 | - $allowed_fee_keys = apply_filters( 'wpinv_fee_keys', array( |
|
924 | + public function remove_fee_by($key, $value, $global = false) { |
|
925 | + $allowed_fee_keys = apply_filters('wpinv_fee_keys', array( |
|
926 | 926 | 'index', 'label', 'amount', 'type', |
927 | - ) ); |
|
927 | + )); |
|
928 | 928 | |
929 | - if ( ! in_array( $key, $allowed_fee_keys ) ) { |
|
929 | + if (!in_array($key, $allowed_fee_keys)) { |
|
930 | 930 | return false; |
931 | 931 | } |
932 | 932 | |
933 | 933 | $removed = false; |
934 | - if ( 'index' === $key && array_key_exists( $value, $this->fees ) ) { |
|
935 | - $removed_fee = $this->fees[ $value ]; |
|
934 | + if ('index' === $key && array_key_exists($value, $this->fees)) { |
|
935 | + $removed_fee = $this->fees[$value]; |
|
936 | 936 | $removed_fee['action'] = 'remove'; |
937 | 937 | $this->pending['fees'][] = $removed_fee; |
938 | 938 | |
939 | - $this->decrease_fees( $removed_fee['amount'] ); |
|
939 | + $this->decrease_fees($removed_fee['amount']); |
|
940 | 940 | |
941 | - unset( $this->fees[ $value ] ); |
|
941 | + unset($this->fees[$value]); |
|
942 | 942 | $removed = true; |
943 | - } else if ( 'index' !== $key ) { |
|
944 | - foreach ( $this->fees as $index => $fee ) { |
|
945 | - if ( isset( $fee[ $key ] ) && $fee[ $key ] == $value ) { |
|
943 | + } else if ('index' !== $key) { |
|
944 | + foreach ($this->fees as $index => $fee) { |
|
945 | + if (isset($fee[$key]) && $fee[$key] == $value) { |
|
946 | 946 | $removed_fee = $fee; |
947 | 947 | $removed_fee['action'] = 'remove'; |
948 | 948 | $this->pending['fees'][] = $removed_fee; |
949 | 949 | |
950 | - $this->decrease_fees( $removed_fee['amount'] ); |
|
950 | + $this->decrease_fees($removed_fee['amount']); |
|
951 | 951 | |
952 | - unset( $this->fees[ $index ] ); |
|
952 | + unset($this->fees[$index]); |
|
953 | 953 | $removed = true; |
954 | 954 | |
955 | - if ( false === $global ) { |
|
955 | + if (false === $global) { |
|
956 | 956 | break; |
957 | 957 | } |
958 | 958 | } |
959 | 959 | } |
960 | 960 | } |
961 | 961 | |
962 | - if ( true === $removed ) { |
|
963 | - $this->fees = array_values( $this->fees ); |
|
962 | + if (true === $removed) { |
|
963 | + $this->fees = array_values($this->fees); |
|
964 | 964 | } |
965 | 965 | |
966 | 966 | return $removed; |
@@ -968,35 +968,35 @@ discard block |
||
968 | 968 | |
969 | 969 | |
970 | 970 | |
971 | - public function add_note( $note = '', $customer_type = false, $added_by_user = false, $system = false ) { |
|
971 | + public function add_note($note = '', $customer_type = false, $added_by_user = false, $system = false) { |
|
972 | 972 | // Bail if no note specified |
973 | - if( !$note ) { |
|
973 | + if (!$note) { |
|
974 | 974 | return false; |
975 | 975 | } |
976 | 976 | |
977 | - if ( empty( $this->ID ) ) |
|
977 | + if (empty($this->ID)) |
|
978 | 978 | return false; |
979 | 979 | |
980 | - if ( ( ( is_user_logged_in() && wpinv_current_user_can_manage_invoicing() ) || $added_by_user ) && !$system ) { |
|
981 | - $user = get_user_by( 'id', get_current_user_id() ); |
|
980 | + if (((is_user_logged_in() && wpinv_current_user_can_manage_invoicing()) || $added_by_user) && !$system) { |
|
981 | + $user = get_user_by('id', get_current_user_id()); |
|
982 | 982 | $comment_author = $user->display_name; |
983 | 983 | $comment_author_email = $user->user_email; |
984 | 984 | } else { |
985 | 985 | $comment_author = 'System'; |
986 | 986 | $comment_author_email = 'system@'; |
987 | - $comment_author_email .= isset( $_SERVER['HTTP_HOST'] ) ? str_replace( 'www.', '', $_SERVER['HTTP_HOST'] ) : 'noreply.com'; |
|
988 | - $comment_author_email = sanitize_email( $comment_author_email ); |
|
987 | + $comment_author_email .= isset($_SERVER['HTTP_HOST']) ? str_replace('www.', '', $_SERVER['HTTP_HOST']) : 'noreply.com'; |
|
988 | + $comment_author_email = sanitize_email($comment_author_email); |
|
989 | 989 | } |
990 | 990 | |
991 | - do_action( 'wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type ); |
|
991 | + do_action('wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type); |
|
992 | 992 | |
993 | - $note_id = wp_insert_comment( wp_filter_comment( array( |
|
993 | + $note_id = wp_insert_comment(wp_filter_comment(array( |
|
994 | 994 | 'comment_post_ID' => $this->ID, |
995 | 995 | 'comment_content' => $note, |
996 | 996 | 'comment_agent' => 'WPInvoicing', |
997 | 997 | 'user_id' => is_admin() ? get_current_user_id() : 0, |
998 | - 'comment_date' => current_time( 'mysql' ), |
|
999 | - 'comment_date_gmt' => current_time( 'mysql', 1 ), |
|
998 | + 'comment_date' => current_time('mysql'), |
|
999 | + 'comment_date_gmt' => current_time('mysql', 1), |
|
1000 | 1000 | 'comment_approved' => 1, |
1001 | 1001 | 'comment_parent' => 0, |
1002 | 1002 | 'comment_author' => $comment_author, |
@@ -1004,53 +1004,53 @@ discard block |
||
1004 | 1004 | 'comment_author_url' => '', |
1005 | 1005 | 'comment_author_email' => $comment_author_email, |
1006 | 1006 | 'comment_type' => 'wpinv_note' |
1007 | - ) ) ); |
|
1007 | + ))); |
|
1008 | 1008 | |
1009 | - do_action( 'wpinv_insert_payment_note', $note_id, $this->ID, $note ); |
|
1009 | + do_action('wpinv_insert_payment_note', $note_id, $this->ID, $note); |
|
1010 | 1010 | |
1011 | - if ( $customer_type ) { |
|
1012 | - add_comment_meta( $note_id, '_wpi_customer_note', 1 ); |
|
1011 | + if ($customer_type) { |
|
1012 | + add_comment_meta($note_id, '_wpi_customer_note', 1); |
|
1013 | 1013 | |
1014 | - do_action( 'wpinv_new_customer_note', array( 'invoice_id' => $this->ID, 'user_note' => $note ) ); |
|
1014 | + do_action('wpinv_new_customer_note', array('invoice_id' => $this->ID, 'user_note' => $note)); |
|
1015 | 1015 | } |
1016 | 1016 | |
1017 | 1017 | return $note_id; |
1018 | 1018 | } |
1019 | 1019 | |
1020 | - private function increase_subtotal( $amount = 0.00 ) { |
|
1020 | + private function increase_subtotal($amount = 0.00) { |
|
1021 | 1021 | $amount = (float) $amount; |
1022 | 1022 | $this->subtotal += $amount; |
1023 | - $this->subtotal = wpinv_round_amount( $this->subtotal ); |
|
1023 | + $this->subtotal = wpinv_round_amount($this->subtotal); |
|
1024 | 1024 | |
1025 | 1025 | $this->recalculate_total(); |
1026 | 1026 | } |
1027 | 1027 | |
1028 | - private function decrease_subtotal( $amount = 0.00 ) { |
|
1028 | + private function decrease_subtotal($amount = 0.00) { |
|
1029 | 1029 | $amount = (float) $amount; |
1030 | 1030 | $this->subtotal -= $amount; |
1031 | - $this->subtotal = wpinv_round_amount( $this->subtotal ); |
|
1031 | + $this->subtotal = wpinv_round_amount($this->subtotal); |
|
1032 | 1032 | |
1033 | - if ( $this->subtotal < 0 ) { |
|
1033 | + if ($this->subtotal < 0) { |
|
1034 | 1034 | $this->subtotal = 0; |
1035 | 1035 | } |
1036 | 1036 | |
1037 | 1037 | $this->recalculate_total(); |
1038 | 1038 | } |
1039 | 1039 | |
1040 | - private function increase_fees( $amount = 0.00 ) { |
|
1041 | - $amount = (float)$amount; |
|
1040 | + private function increase_fees($amount = 0.00) { |
|
1041 | + $amount = (float) $amount; |
|
1042 | 1042 | $this->fees_total += $amount; |
1043 | - $this->fees_total = wpinv_round_amount( $this->fees_total ); |
|
1043 | + $this->fees_total = wpinv_round_amount($this->fees_total); |
|
1044 | 1044 | |
1045 | 1045 | $this->recalculate_total(); |
1046 | 1046 | } |
1047 | 1047 | |
1048 | - private function decrease_fees( $amount = 0.00 ) { |
|
1048 | + private function decrease_fees($amount = 0.00) { |
|
1049 | 1049 | $amount = (float) $amount; |
1050 | 1050 | $this->fees_total -= $amount; |
1051 | - $this->fees_total = wpinv_round_amount( $this->fees_total ); |
|
1051 | + $this->fees_total = wpinv_round_amount($this->fees_total); |
|
1052 | 1052 | |
1053 | - if ( $this->fees_total < 0 ) { |
|
1053 | + if ($this->fees_total < 0) { |
|
1054 | 1054 | $this->fees_total = 0; |
1055 | 1055 | } |
1056 | 1056 | |
@@ -1061,54 +1061,54 @@ discard block |
||
1061 | 1061 | global $wpi_nosave; |
1062 | 1062 | |
1063 | 1063 | $this->total = $this->subtotal + $this->tax + $this->fees_total; |
1064 | - $this->total = wpinv_round_amount( $this->total ); |
|
1064 | + $this->total = wpinv_round_amount($this->total); |
|
1065 | 1065 | |
1066 | - do_action( 'wpinv_invoice_recalculate_total', $this, $wpi_nosave ); |
|
1066 | + do_action('wpinv_invoice_recalculate_total', $this, $wpi_nosave); |
|
1067 | 1067 | } |
1068 | 1068 | |
1069 | - public function increase_tax( $amount = 0.00 ) { |
|
1069 | + public function increase_tax($amount = 0.00) { |
|
1070 | 1070 | $amount = (float) $amount; |
1071 | 1071 | $this->tax += $amount; |
1072 | 1072 | |
1073 | 1073 | $this->recalculate_total(); |
1074 | 1074 | } |
1075 | 1075 | |
1076 | - public function decrease_tax( $amount = 0.00 ) { |
|
1076 | + public function decrease_tax($amount = 0.00) { |
|
1077 | 1077 | $amount = (float) $amount; |
1078 | 1078 | $this->tax -= $amount; |
1079 | 1079 | |
1080 | - if ( $this->tax < 0 ) { |
|
1080 | + if ($this->tax < 0) { |
|
1081 | 1081 | $this->tax = 0; |
1082 | 1082 | } |
1083 | 1083 | |
1084 | 1084 | $this->recalculate_total(); |
1085 | 1085 | } |
1086 | 1086 | |
1087 | - public function update_status( $new_status = false, $note = '', $manual = false ) { |
|
1088 | - $old_status = ! empty( $this->old_status ) ? $this->old_status : get_post_status( $this->ID ); |
|
1087 | + public function update_status($new_status = false, $note = '', $manual = false) { |
|
1088 | + $old_status = !empty($this->old_status) ? $this->old_status : get_post_status($this->ID); |
|
1089 | 1089 | |
1090 | - if ( $old_status === $new_status && in_array( $new_status, array_keys( wpinv_get_invoice_statuses( true ) ) ) ) { |
|
1090 | + if ($old_status === $new_status && in_array($new_status, array_keys(wpinv_get_invoice_statuses(true)))) { |
|
1091 | 1091 | return false; // Don't permit status changes that aren't changes |
1092 | 1092 | } |
1093 | 1093 | |
1094 | - $do_change = apply_filters( 'wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status ); |
|
1094 | + $do_change = apply_filters('wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status); |
|
1095 | 1095 | $updated = false; |
1096 | 1096 | |
1097 | - if ( $do_change ) { |
|
1098 | - do_action( 'wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status ); |
|
1097 | + if ($do_change) { |
|
1098 | + do_action('wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status); |
|
1099 | 1099 | |
1100 | 1100 | $update_post_data = array(); |
1101 | 1101 | $update_post_data['ID'] = $this->ID; |
1102 | 1102 | $update_post_data['post_status'] = $new_status; |
1103 | - $update_post_data['edit_date'] = current_time( 'mysql', 0 ); |
|
1104 | - $update_post_data['edit_date_gmt'] = current_time( 'mysql', 1 ); |
|
1103 | + $update_post_data['edit_date'] = current_time('mysql', 0); |
|
1104 | + $update_post_data['edit_date_gmt'] = current_time('mysql', 1); |
|
1105 | 1105 | |
1106 | - $update_post_data = apply_filters( 'wpinv_update_invoice_status_fields', $update_post_data, $this->ID ); |
|
1106 | + $update_post_data = apply_filters('wpinv_update_invoice_status_fields', $update_post_data, $this->ID); |
|
1107 | 1107 | |
1108 | - $updated = wp_update_post( $update_post_data ); |
|
1108 | + $updated = wp_update_post($update_post_data); |
|
1109 | 1109 | |
1110 | 1110 | // Process any specific status functions |
1111 | - switch( $new_status ) { |
|
1111 | + switch ($new_status) { |
|
1112 | 1112 | case 'wpi-refunded': |
1113 | 1113 | $this->process_refund(); |
1114 | 1114 | break; |
@@ -1121,9 +1121,9 @@ discard block |
||
1121 | 1121 | } |
1122 | 1122 | |
1123 | 1123 | // Status was changed. |
1124 | - do_action( 'wpinv_status_' . $new_status, $this->ID, $old_status ); |
|
1125 | - do_action( 'wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status ); |
|
1126 | - do_action( 'wpinv_update_status', $this->ID, $new_status, $old_status ); |
|
1124 | + do_action('wpinv_status_' . $new_status, $this->ID, $old_status); |
|
1125 | + do_action('wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status); |
|
1126 | + do_action('wpinv_update_status', $this->ID, $new_status, $old_status); |
|
1127 | 1127 | } |
1128 | 1128 | |
1129 | 1129 | return $updated; |
@@ -1137,20 +1137,20 @@ discard block |
||
1137 | 1137 | $this->save(); |
1138 | 1138 | } |
1139 | 1139 | |
1140 | - public function update_meta( $meta_key = '', $meta_value = '', $prev_value = '' ) { |
|
1141 | - if ( empty( $meta_key ) ) { |
|
1140 | + public function update_meta($meta_key = '', $meta_value = '', $prev_value = '') { |
|
1141 | + if (empty($meta_key)) { |
|
1142 | 1142 | return false; |
1143 | 1143 | } |
1144 | 1144 | |
1145 | - if ( $meta_key == 'key' || $meta_key == 'date' ) { |
|
1145 | + if ($meta_key == 'key' || $meta_key == 'date') { |
|
1146 | 1146 | $current_meta = $this->get_meta(); |
1147 | - $current_meta[ $meta_key ] = $meta_value; |
|
1147 | + $current_meta[$meta_key] = $meta_value; |
|
1148 | 1148 | |
1149 | 1149 | $meta_key = '_wpinv_payment_meta'; |
1150 | 1150 | $meta_value = $current_meta; |
1151 | 1151 | } |
1152 | 1152 | |
1153 | - $meta_value = apply_filters( 'wpinv_update_payment_meta_' . $meta_key, $meta_value, $this->ID ); |
|
1153 | + $meta_value = apply_filters('wpinv_update_payment_meta_' . $meta_key, $meta_value, $this->ID); |
|
1154 | 1154 | |
1155 | 1155 | // Do not update created date on invoice marked as paid. |
1156 | 1156 | /*if ( $meta_key == '_wpinv_completed_date' && !empty( $meta_value ) ) { |
@@ -1165,45 +1165,45 @@ discard block |
||
1165 | 1165 | wp_update_post( $args ); |
1166 | 1166 | }*/ |
1167 | 1167 | |
1168 | - return update_post_meta( $this->ID, $meta_key, $meta_value, $prev_value ); |
|
1168 | + return update_post_meta($this->ID, $meta_key, $meta_value, $prev_value); |
|
1169 | 1169 | } |
1170 | 1170 | |
1171 | 1171 | private function process_refund() { |
1172 | 1172 | $process_refund = true; |
1173 | 1173 | |
1174 | 1174 | // If the payment was not in publish, don't decrement stats as they were never incremented |
1175 | - if ( 'publish' != $this->old_status || 'wpi-refunded' != $this->status ) { |
|
1175 | + if ('publish' != $this->old_status || 'wpi-refunded' != $this->status) { |
|
1176 | 1176 | $process_refund = false; |
1177 | 1177 | } |
1178 | 1178 | |
1179 | 1179 | // Allow extensions to filter for their own payment types, Example: Recurring Payments |
1180 | - $process_refund = apply_filters( 'wpinv_should_process_refund', $process_refund, $this ); |
|
1180 | + $process_refund = apply_filters('wpinv_should_process_refund', $process_refund, $this); |
|
1181 | 1181 | |
1182 | - if ( false === $process_refund ) { |
|
1182 | + if (false === $process_refund) { |
|
1183 | 1183 | return; |
1184 | 1184 | } |
1185 | 1185 | |
1186 | - do_action( 'wpinv_pre_refund_invoice', $this ); |
|
1186 | + do_action('wpinv_pre_refund_invoice', $this); |
|
1187 | 1187 | |
1188 | - $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_refund', true, $this ); |
|
1189 | - $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_refund', true, $this ); |
|
1190 | - $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_refund', true, $this ); |
|
1188 | + $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_refund', true, $this); |
|
1189 | + $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_refund', true, $this); |
|
1190 | + $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_refund', true, $this); |
|
1191 | 1191 | |
1192 | - do_action( 'wpinv_post_refund_invoice', $this ); |
|
1192 | + do_action('wpinv_post_refund_invoice', $this); |
|
1193 | 1193 | } |
1194 | 1194 | |
1195 | 1195 | private function process_failure() { |
1196 | 1196 | $discounts = $this->discounts; |
1197 | - if ( empty( $discounts ) ) { |
|
1197 | + if (empty($discounts)) { |
|
1198 | 1198 | return; |
1199 | 1199 | } |
1200 | 1200 | |
1201 | - if ( ! is_array( $discounts ) ) { |
|
1202 | - $discounts = array_map( 'trim', explode( ',', $discounts ) ); |
|
1201 | + if (!is_array($discounts)) { |
|
1202 | + $discounts = array_map('trim', explode(',', $discounts)); |
|
1203 | 1203 | } |
1204 | 1204 | |
1205 | - foreach ( $discounts as $discount ) { |
|
1206 | - wpinv_decrease_discount_usage( $discount ); |
|
1205 | + foreach ($discounts as $discount) { |
|
1206 | + wpinv_decrease_discount_usage($discount); |
|
1207 | 1207 | } |
1208 | 1208 | } |
1209 | 1209 | |
@@ -1211,92 +1211,92 @@ discard block |
||
1211 | 1211 | $process_pending = true; |
1212 | 1212 | |
1213 | 1213 | // If the payment was not in publish or revoked status, don't decrement stats as they were never incremented |
1214 | - if ( ( 'publish' != $this->old_status && 'revoked' != $this->old_status ) || 'wpi-pending' != $this->status ) { |
|
1214 | + if (('publish' != $this->old_status && 'revoked' != $this->old_status) || 'wpi-pending' != $this->status) { |
|
1215 | 1215 | $process_pending = false; |
1216 | 1216 | } |
1217 | 1217 | |
1218 | 1218 | // Allow extensions to filter for their own payment types, Example: Recurring Payments |
1219 | - $process_pending = apply_filters( 'wpinv_should_process_pending', $process_pending, $this ); |
|
1219 | + $process_pending = apply_filters('wpinv_should_process_pending', $process_pending, $this); |
|
1220 | 1220 | |
1221 | - if ( false === $process_pending ) { |
|
1221 | + if (false === $process_pending) { |
|
1222 | 1222 | return; |
1223 | 1223 | } |
1224 | 1224 | |
1225 | - $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_pending', true, $this ); |
|
1226 | - $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_pending', true, $this ); |
|
1227 | - $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_pending', true, $this ); |
|
1225 | + $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_pending', true, $this); |
|
1226 | + $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_pending', true, $this); |
|
1227 | + $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_pending', true, $this); |
|
1228 | 1228 | |
1229 | 1229 | $this->completed_date = ''; |
1230 | - $this->update_meta( '_wpinv_completed_date', '' ); |
|
1230 | + $this->update_meta('_wpinv_completed_date', ''); |
|
1231 | 1231 | } |
1232 | 1232 | |
1233 | 1233 | // get data |
1234 | - public function get_meta( $meta_key = '_wpinv_payment_meta', $single = true ) { |
|
1235 | - $meta = get_post_meta( $this->ID, $meta_key, $single ); |
|
1234 | + public function get_meta($meta_key = '_wpinv_payment_meta', $single = true) { |
|
1235 | + $meta = get_post_meta($this->ID, $meta_key, $single); |
|
1236 | 1236 | |
1237 | - if ( $meta_key === '_wpinv_payment_meta' ) { |
|
1237 | + if ($meta_key === '_wpinv_payment_meta') { |
|
1238 | 1238 | |
1239 | - if(!is_array($meta)){$meta = array();} // we need this to be an array so make sure it is. |
|
1239 | + if (!is_array($meta)) {$meta = array(); } // we need this to be an array so make sure it is. |
|
1240 | 1240 | |
1241 | - if ( empty( $meta['key'] ) ) { |
|
1241 | + if (empty($meta['key'])) { |
|
1242 | 1242 | $meta['key'] = $this->setup_invoice_key(); |
1243 | 1243 | } |
1244 | 1244 | |
1245 | - if ( empty( $meta['date'] ) ) { |
|
1246 | - $meta['date'] = get_post_field( 'post_date', $this->ID ); |
|
1245 | + if (empty($meta['date'])) { |
|
1246 | + $meta['date'] = get_post_field('post_date', $this->ID); |
|
1247 | 1247 | } |
1248 | 1248 | } |
1249 | 1249 | |
1250 | - $meta = apply_filters( 'wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID ); |
|
1250 | + $meta = apply_filters('wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID); |
|
1251 | 1251 | |
1252 | - return apply_filters( 'wpinv_get_invoice_meta', $meta, $this->ID, $meta_key ); |
|
1252 | + return apply_filters('wpinv_get_invoice_meta', $meta, $this->ID, $meta_key); |
|
1253 | 1253 | } |
1254 | 1254 | |
1255 | 1255 | public function get_description() { |
1256 | - $post = get_post( $this->ID ); |
|
1256 | + $post = get_post($this->ID); |
|
1257 | 1257 | |
1258 | - $description = !empty( $post ) ? $post->post_content : ''; |
|
1259 | - return apply_filters( 'wpinv_get_description', $description, $this->ID, $this ); |
|
1258 | + $description = !empty($post) ? $post->post_content : ''; |
|
1259 | + return apply_filters('wpinv_get_description', $description, $this->ID, $this); |
|
1260 | 1260 | } |
1261 | 1261 | |
1262 | - public function get_status( $nicename = false ) { |
|
1263 | - if ( !$nicename ) { |
|
1262 | + public function get_status($nicename = false) { |
|
1263 | + if (!$nicename) { |
|
1264 | 1264 | $status = $this->status; |
1265 | 1265 | } else { |
1266 | 1266 | $status = $this->status_nicename; |
1267 | 1267 | } |
1268 | 1268 | |
1269 | - return apply_filters( 'wpinv_get_status', $status, $nicename, $this->ID, $this ); |
|
1269 | + return apply_filters('wpinv_get_status', $status, $nicename, $this->ID, $this); |
|
1270 | 1270 | } |
1271 | 1271 | |
1272 | 1272 | public function get_cart_details() { |
1273 | - return apply_filters( 'wpinv_cart_details', $this->cart_details, $this->ID, $this ); |
|
1273 | + return apply_filters('wpinv_cart_details', $this->cart_details, $this->ID, $this); |
|
1274 | 1274 | } |
1275 | 1275 | |
1276 | - public function get_subtotal( $currency = false ) { |
|
1277 | - $subtotal = wpinv_round_amount( $this->subtotal ); |
|
1276 | + public function get_subtotal($currency = false) { |
|
1277 | + $subtotal = wpinv_round_amount($this->subtotal); |
|
1278 | 1278 | |
1279 | - if ( $currency ) { |
|
1280 | - $subtotal = wpinv_price( wpinv_format_amount( $subtotal, NULL, !$currency ), $this->get_currency() ); |
|
1279 | + if ($currency) { |
|
1280 | + $subtotal = wpinv_price(wpinv_format_amount($subtotal, NULL, !$currency), $this->get_currency()); |
|
1281 | 1281 | } |
1282 | 1282 | |
1283 | - return apply_filters( 'wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency ); |
|
1283 | + return apply_filters('wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency); |
|
1284 | 1284 | } |
1285 | 1285 | |
1286 | - public function get_total( $currency = false ) { |
|
1287 | - if ( $this->is_free_trial() ) { |
|
1288 | - $total = wpinv_round_amount( 0 ); |
|
1286 | + public function get_total($currency = false) { |
|
1287 | + if ($this->is_free_trial()) { |
|
1288 | + $total = wpinv_round_amount(0); |
|
1289 | 1289 | } else { |
1290 | - $total = wpinv_round_amount( $this->total ); |
|
1290 | + $total = wpinv_round_amount($this->total); |
|
1291 | 1291 | } |
1292 | - if ( $currency ) { |
|
1293 | - $total = wpinv_price( wpinv_format_amount( $total, NULL, !$currency ), $this->get_currency() ); |
|
1292 | + if ($currency) { |
|
1293 | + $total = wpinv_price(wpinv_format_amount($total, NULL, !$currency), $this->get_currency()); |
|
1294 | 1294 | } |
1295 | 1295 | |
1296 | - return apply_filters( 'wpinv_get_invoice_total', $total, $this->ID, $this, $currency ); |
|
1296 | + return apply_filters('wpinv_get_invoice_total', $total, $this->ID, $this, $currency); |
|
1297 | 1297 | } |
1298 | 1298 | |
1299 | - public function get_recurring_details( $field = '', $currency = false ) { |
|
1299 | + public function get_recurring_details($field = '', $currency = false) { |
|
1300 | 1300 | $data = array(); |
1301 | 1301 | $data['cart_details'] = $this->cart_details; |
1302 | 1302 | $data['subtotal'] = $this->get_subtotal(); |
@@ -1304,164 +1304,164 @@ discard block |
||
1304 | 1304 | $data['tax'] = $this->get_tax(); |
1305 | 1305 | $data['total'] = $this->get_total(); |
1306 | 1306 | |
1307 | - if ( !empty( $this->cart_details ) && ( $this->is_parent() || $this->is_renewal() ) ) { |
|
1307 | + if (!empty($this->cart_details) && ($this->is_parent() || $this->is_renewal())) { |
|
1308 | 1308 | $is_free_trial = $this->is_free_trial(); |
1309 | - $discounts = $this->get_discounts( true ); |
|
1309 | + $discounts = $this->get_discounts(true); |
|
1310 | 1310 | |
1311 | - if ( $is_free_trial || !empty( $discounts ) ) { |
|
1311 | + if ($is_free_trial || !empty($discounts)) { |
|
1312 | 1312 | $first_use_only = false; |
1313 | 1313 | |
1314 | - if ( !empty( $discounts ) ) { |
|
1315 | - foreach ( $discounts as $key => $code ) { |
|
1316 | - if ( wpinv_discount_is_recurring( $code, true ) && !$this->is_renewal() ) { |
|
1314 | + if (!empty($discounts)) { |
|
1315 | + foreach ($discounts as $key => $code) { |
|
1316 | + if (wpinv_discount_is_recurring($code, true) && !$this->is_renewal()) { |
|
1317 | 1317 | $first_use_only = true; |
1318 | 1318 | break; |
1319 | 1319 | } |
1320 | 1320 | } |
1321 | 1321 | } |
1322 | 1322 | |
1323 | - if ( !$first_use_only ) { |
|
1324 | - $data['subtotal'] = wpinv_round_amount( $this->subtotal ); |
|
1325 | - $data['discount'] = wpinv_round_amount( $this->discount ); |
|
1326 | - $data['tax'] = wpinv_round_amount( $this->tax ); |
|
1327 | - $data['total'] = wpinv_round_amount( $this->total ); |
|
1323 | + if (!$first_use_only) { |
|
1324 | + $data['subtotal'] = wpinv_round_amount($this->subtotal); |
|
1325 | + $data['discount'] = wpinv_round_amount($this->discount); |
|
1326 | + $data['tax'] = wpinv_round_amount($this->tax); |
|
1327 | + $data['total'] = wpinv_round_amount($this->total); |
|
1328 | 1328 | } else { |
1329 | 1329 | $cart_subtotal = 0; |
1330 | 1330 | $cart_discount = $this->discount; |
1331 | 1331 | $cart_tax = 0; |
1332 | 1332 | |
1333 | - foreach ( $this->cart_details as $key => $item ) { |
|
1334 | - $item_quantity = $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1; |
|
1335 | - $item_subtotal = !empty( $item['subtotal'] ) ? $item['subtotal'] : $item['item_price'] * $item_quantity; |
|
1333 | + foreach ($this->cart_details as $key => $item) { |
|
1334 | + $item_quantity = $item['quantity'] > 0 ? absint($item['quantity']) : 1; |
|
1335 | + $item_subtotal = !empty($item['subtotal']) ? $item['subtotal'] : $item['item_price'] * $item_quantity; |
|
1336 | 1336 | $item_discount = 0; |
1337 | - $item_tax = $item_subtotal > 0 && !empty( $item['vat_rate'] ) ? ( $item_subtotal * 0.01 * (float)$item['vat_rate'] ) : 0; |
|
1337 | + $item_tax = $item_subtotal > 0 && !empty($item['vat_rate']) ? ($item_subtotal * 0.01 * (float) $item['vat_rate']) : 0; |
|
1338 | 1338 | |
1339 | - if ( wpinv_prices_include_tax() ) { |
|
1340 | - $item_subtotal -= wpinv_round_amount( $item_tax ); |
|
1339 | + if (wpinv_prices_include_tax()) { |
|
1340 | + $item_subtotal -= wpinv_round_amount($item_tax); |
|
1341 | 1341 | } |
1342 | 1342 | |
1343 | 1343 | $item_total = $item_subtotal - $item_discount + $item_tax; |
1344 | 1344 | // Do not allow totals to go negative |
1345 | - if ( $item_total < 0 ) { |
|
1345 | + if ($item_total < 0) { |
|
1346 | 1346 | $item_total = 0; |
1347 | 1347 | } |
1348 | 1348 | |
1349 | - $cart_subtotal += (float)($item_subtotal); |
|
1350 | - $cart_discount += (float)($item_discount); |
|
1351 | - $cart_tax += (float)($item_tax); |
|
1349 | + $cart_subtotal += (float) ($item_subtotal); |
|
1350 | + $cart_discount += (float) ($item_discount); |
|
1351 | + $cart_tax += (float) ($item_tax); |
|
1352 | 1352 | |
1353 | - $data['cart_details'][$key]['discount'] = wpinv_round_amount( $item_discount ); |
|
1354 | - $data['cart_details'][$key]['tax'] = wpinv_round_amount( $item_tax ); |
|
1355 | - $data['cart_details'][$key]['price'] = wpinv_round_amount( $item_total ); |
|
1353 | + $data['cart_details'][$key]['discount'] = wpinv_round_amount($item_discount); |
|
1354 | + $data['cart_details'][$key]['tax'] = wpinv_round_amount($item_tax); |
|
1355 | + $data['cart_details'][$key]['price'] = wpinv_round_amount($item_total); |
|
1356 | 1356 | } |
1357 | 1357 | |
1358 | 1358 | $total = $data['subtotal'] - $data['discount'] + $data['tax']; |
1359 | - if ( $total < 0 ) { |
|
1359 | + if ($total < 0) { |
|
1360 | 1360 | $total = 0; |
1361 | 1361 | } |
1362 | 1362 | |
1363 | - $data['subtotal'] = wpinv_round_amount( $cart_subtotal ); |
|
1364 | - $data['discount'] = wpinv_round_amount( $cart_discount ); |
|
1365 | - $data['tax'] = wpinv_round_amount( $cart_tax ); |
|
1366 | - $data['total'] = wpinv_round_amount( $total ); |
|
1363 | + $data['subtotal'] = wpinv_round_amount($cart_subtotal); |
|
1364 | + $data['discount'] = wpinv_round_amount($cart_discount); |
|
1365 | + $data['tax'] = wpinv_round_amount($cart_tax); |
|
1366 | + $data['total'] = wpinv_round_amount($total); |
|
1367 | 1367 | } |
1368 | 1368 | } |
1369 | 1369 | } |
1370 | 1370 | |
1371 | - $data = apply_filters( 'wpinv_get_invoice_recurring_details', $data, $this, $field, $currency ); |
|
1371 | + $data = apply_filters('wpinv_get_invoice_recurring_details', $data, $this, $field, $currency); |
|
1372 | 1372 | |
1373 | - if ( isset( $data[$field] ) ) { |
|
1374 | - return ( $currency ? wpinv_price( $data[$field], $this->get_currency() ) : $data[$field] ); |
|
1373 | + if (isset($data[$field])) { |
|
1374 | + return ($currency ? wpinv_price($data[$field], $this->get_currency()) : $data[$field]); |
|
1375 | 1375 | } |
1376 | 1376 | |
1377 | 1377 | return $data; |
1378 | 1378 | } |
1379 | 1379 | |
1380 | - public function get_final_tax( $currency = false ) { |
|
1381 | - $final_total = wpinv_round_amount( $this->tax ); |
|
1382 | - if ( $currency ) { |
|
1383 | - $final_total = wpinv_price( wpinv_format_amount( $final_total, NULL, !$currency ), $this->get_currency() ); |
|
1380 | + public function get_final_tax($currency = false) { |
|
1381 | + $final_total = wpinv_round_amount($this->tax); |
|
1382 | + if ($currency) { |
|
1383 | + $final_total = wpinv_price(wpinv_format_amount($final_total, NULL, !$currency), $this->get_currency()); |
|
1384 | 1384 | } |
1385 | 1385 | |
1386 | - return apply_filters( 'wpinv_get_invoice_final_total', $final_total, $this, $currency ); |
|
1386 | + return apply_filters('wpinv_get_invoice_final_total', $final_total, $this, $currency); |
|
1387 | 1387 | } |
1388 | 1388 | |
1389 | - public function get_discounts( $array = false ) { |
|
1389 | + public function get_discounts($array = false) { |
|
1390 | 1390 | $discounts = $this->discounts; |
1391 | - if ( $array && $discounts ) { |
|
1392 | - $discounts = explode( ',', $discounts ); |
|
1391 | + if ($array && $discounts) { |
|
1392 | + $discounts = explode(',', $discounts); |
|
1393 | 1393 | } |
1394 | - return apply_filters( 'wpinv_payment_discounts', $discounts, $this->ID, $this, $array ); |
|
1394 | + return apply_filters('wpinv_payment_discounts', $discounts, $this->ID, $this, $array); |
|
1395 | 1395 | } |
1396 | 1396 | |
1397 | - public function get_discount( $currency = false, $dash = false ) { |
|
1398 | - if ( !empty( $this->discounts ) ) { |
|
1397 | + public function get_discount($currency = false, $dash = false) { |
|
1398 | + if (!empty($this->discounts)) { |
|
1399 | 1399 | global $ajax_cart_details; |
1400 | 1400 | $ajax_cart_details = $this->get_cart_details(); |
1401 | 1401 | |
1402 | - if ( !empty( $ajax_cart_details ) && count( $ajax_cart_details ) == count( $this->items ) ) { |
|
1402 | + if (!empty($ajax_cart_details) && count($ajax_cart_details) == count($this->items)) { |
|
1403 | 1403 | $cart_items = $ajax_cart_details; |
1404 | 1404 | } else { |
1405 | 1405 | $cart_items = $this->items; |
1406 | 1406 | } |
1407 | 1407 | |
1408 | - $this->discount = wpinv_get_cart_items_discount_amount( $cart_items , $this->discounts ); |
|
1408 | + $this->discount = wpinv_get_cart_items_discount_amount($cart_items, $this->discounts); |
|
1409 | 1409 | } |
1410 | - $discount = wpinv_round_amount( $this->discount ); |
|
1410 | + $discount = wpinv_round_amount($this->discount); |
|
1411 | 1411 | $dash = $dash && $discount > 0 ? '–' : ''; |
1412 | 1412 | |
1413 | - if ( $currency ) { |
|
1414 | - $discount = wpinv_price( wpinv_format_amount( $discount, NULL, !$currency ), $this->get_currency() ); |
|
1413 | + if ($currency) { |
|
1414 | + $discount = wpinv_price(wpinv_format_amount($discount, NULL, !$currency), $this->get_currency()); |
|
1415 | 1415 | } |
1416 | 1416 | |
1417 | - $discount = $dash . $discount; |
|
1417 | + $discount = $dash . $discount; |
|
1418 | 1418 | |
1419 | - return apply_filters( 'wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash ); |
|
1419 | + return apply_filters('wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash); |
|
1420 | 1420 | } |
1421 | 1421 | |
1422 | 1422 | public function get_discount_code() { |
1423 | 1423 | return $this->discount_code; |
1424 | 1424 | } |
1425 | 1425 | |
1426 | - public function get_tax( $currency = false ) { |
|
1427 | - $tax = wpinv_round_amount( $this->tax ); |
|
1426 | + public function get_tax($currency = false) { |
|
1427 | + $tax = wpinv_round_amount($this->tax); |
|
1428 | 1428 | |
1429 | - if ( $currency ) { |
|
1430 | - $tax = wpinv_price( wpinv_format_amount( $tax, NULL, !$currency ), $this->get_currency() ); |
|
1429 | + if ($currency) { |
|
1430 | + $tax = wpinv_price(wpinv_format_amount($tax, NULL, !$currency), $this->get_currency()); |
|
1431 | 1431 | } |
1432 | 1432 | |
1433 | - return apply_filters( 'wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency ); |
|
1433 | + return apply_filters('wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency); |
|
1434 | 1434 | } |
1435 | 1435 | |
1436 | - public function get_fees( $type = 'all' ) { |
|
1437 | - $fees = array(); |
|
1436 | + public function get_fees($type = 'all') { |
|
1437 | + $fees = array(); |
|
1438 | 1438 | |
1439 | - if ( ! empty( $this->fees ) && is_array( $this->fees ) ) { |
|
1440 | - foreach ( $this->fees as $fee ) { |
|
1441 | - if( 'all' != $type && ! empty( $fee['type'] ) && $type != $fee['type'] ) { |
|
1439 | + if (!empty($this->fees) && is_array($this->fees)) { |
|
1440 | + foreach ($this->fees as $fee) { |
|
1441 | + if ('all' != $type && !empty($fee['type']) && $type != $fee['type']) { |
|
1442 | 1442 | continue; |
1443 | 1443 | } |
1444 | 1444 | |
1445 | - $fee['label'] = stripslashes( $fee['label'] ); |
|
1446 | - $fee['amount_display'] = wpinv_price( $fee['amount'], $this->get_currency() ); |
|
1447 | - $fees[] = $fee; |
|
1445 | + $fee['label'] = stripslashes($fee['label']); |
|
1446 | + $fee['amount_display'] = wpinv_price($fee['amount'], $this->get_currency()); |
|
1447 | + $fees[] = $fee; |
|
1448 | 1448 | } |
1449 | 1449 | } |
1450 | 1450 | |
1451 | - return apply_filters( 'wpinv_get_invoice_fees', $fees, $this->ID, $this ); |
|
1451 | + return apply_filters('wpinv_get_invoice_fees', $fees, $this->ID, $this); |
|
1452 | 1452 | } |
1453 | 1453 | |
1454 | - public function get_fees_total( $type = 'all' ) { |
|
1454 | + public function get_fees_total($type = 'all') { |
|
1455 | 1455 | $fees_total = (float) 0.00; |
1456 | 1456 | |
1457 | - $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array(); |
|
1458 | - if ( ! empty( $payment_fees ) ) { |
|
1459 | - foreach ( $payment_fees as $fee ) { |
|
1457 | + $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array(); |
|
1458 | + if (!empty($payment_fees)) { |
|
1459 | + foreach ($payment_fees as $fee) { |
|
1460 | 1460 | $fees_total += (float) $fee['amount']; |
1461 | 1461 | } |
1462 | 1462 | } |
1463 | 1463 | |
1464 | - return apply_filters( 'wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this ); |
|
1464 | + return apply_filters('wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this); |
|
1465 | 1465 | /* |
1466 | 1466 | $fees = $this->get_fees( $type ); |
1467 | 1467 | |
@@ -1481,116 +1481,116 @@ discard block |
||
1481 | 1481 | } |
1482 | 1482 | |
1483 | 1483 | public function get_user_id() { |
1484 | - return apply_filters( 'wpinv_user_id', $this->user_id, $this->ID, $this ); |
|
1484 | + return apply_filters('wpinv_user_id', $this->user_id, $this->ID, $this); |
|
1485 | 1485 | } |
1486 | 1486 | |
1487 | 1487 | public function get_first_name() { |
1488 | - return apply_filters( 'wpinv_first_name', $this->first_name, $this->ID, $this ); |
|
1488 | + return apply_filters('wpinv_first_name', $this->first_name, $this->ID, $this); |
|
1489 | 1489 | } |
1490 | 1490 | |
1491 | 1491 | public function get_last_name() { |
1492 | - return apply_filters( 'wpinv_last_name', $this->last_name, $this->ID, $this ); |
|
1492 | + return apply_filters('wpinv_last_name', $this->last_name, $this->ID, $this); |
|
1493 | 1493 | } |
1494 | 1494 | |
1495 | 1495 | public function get_user_full_name() { |
1496 | - return apply_filters( 'wpinv_user_full_name', $this->full_name, $this->ID, $this ); |
|
1496 | + return apply_filters('wpinv_user_full_name', $this->full_name, $this->ID, $this); |
|
1497 | 1497 | } |
1498 | 1498 | |
1499 | 1499 | public function get_user_info() { |
1500 | - return apply_filters( 'wpinv_user_info', $this->user_info, $this->ID, $this ); |
|
1500 | + return apply_filters('wpinv_user_info', $this->user_info, $this->ID, $this); |
|
1501 | 1501 | } |
1502 | 1502 | |
1503 | 1503 | public function get_email() { |
1504 | - return apply_filters( 'wpinv_user_email', $this->email, $this->ID, $this ); |
|
1504 | + return apply_filters('wpinv_user_email', $this->email, $this->ID, $this); |
|
1505 | 1505 | } |
1506 | 1506 | |
1507 | 1507 | public function get_address() { |
1508 | - return apply_filters( 'wpinv_address', $this->address, $this->ID, $this ); |
|
1508 | + return apply_filters('wpinv_address', $this->address, $this->ID, $this); |
|
1509 | 1509 | } |
1510 | 1510 | |
1511 | 1511 | public function get_phone() { |
1512 | - return apply_filters( 'wpinv_phone', $this->phone, $this->ID, $this ); |
|
1512 | + return apply_filters('wpinv_phone', $this->phone, $this->ID, $this); |
|
1513 | 1513 | } |
1514 | 1514 | |
1515 | 1515 | public function get_number() { |
1516 | - return apply_filters( 'wpinv_number', $this->number, $this->ID, $this ); |
|
1516 | + return apply_filters('wpinv_number', $this->number, $this->ID, $this); |
|
1517 | 1517 | } |
1518 | 1518 | |
1519 | 1519 | public function get_items() { |
1520 | - return apply_filters( 'wpinv_payment_meta_items', $this->items, $this->ID, $this ); |
|
1520 | + return apply_filters('wpinv_payment_meta_items', $this->items, $this->ID, $this); |
|
1521 | 1521 | } |
1522 | 1522 | |
1523 | 1523 | public function get_key() { |
1524 | - return apply_filters( 'wpinv_key', $this->key, $this->ID, $this ); |
|
1524 | + return apply_filters('wpinv_key', $this->key, $this->ID, $this); |
|
1525 | 1525 | } |
1526 | 1526 | |
1527 | 1527 | public function get_transaction_id() { |
1528 | - return apply_filters( 'wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this ); |
|
1528 | + return apply_filters('wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this); |
|
1529 | 1529 | } |
1530 | 1530 | |
1531 | 1531 | public function get_gateway() { |
1532 | - return apply_filters( 'wpinv_gateway', $this->gateway, $this->ID, $this ); |
|
1532 | + return apply_filters('wpinv_gateway', $this->gateway, $this->ID, $this); |
|
1533 | 1533 | } |
1534 | 1534 | |
1535 | 1535 | public function get_gateway_title() { |
1536 | - $this->gateway_title = !empty( $this->gateway_title ) ? $this->gateway_title : wpinv_get_gateway_checkout_label( $this->gateway ); |
|
1536 | + $this->gateway_title = !empty($this->gateway_title) ? $this->gateway_title : wpinv_get_gateway_checkout_label($this->gateway); |
|
1537 | 1537 | |
1538 | - return apply_filters( 'wpinv_gateway_title', $this->gateway_title, $this->ID, $this ); |
|
1538 | + return apply_filters('wpinv_gateway_title', $this->gateway_title, $this->ID, $this); |
|
1539 | 1539 | } |
1540 | 1540 | |
1541 | 1541 | public function get_currency() { |
1542 | - return apply_filters( 'wpinv_currency_code', $this->currency, $this->ID, $this ); |
|
1542 | + return apply_filters('wpinv_currency_code', $this->currency, $this->ID, $this); |
|
1543 | 1543 | } |
1544 | 1544 | |
1545 | 1545 | public function get_created_date() { |
1546 | - return apply_filters( 'wpinv_created_date', $this->date, $this->ID, $this ); |
|
1546 | + return apply_filters('wpinv_created_date', $this->date, $this->ID, $this); |
|
1547 | 1547 | } |
1548 | 1548 | |
1549 | - public function get_due_date( $display = false ) { |
|
1550 | - $due_date = apply_filters( 'wpinv_due_date', $this->due_date, $this->ID, $this ); |
|
1549 | + public function get_due_date($display = false) { |
|
1550 | + $due_date = apply_filters('wpinv_due_date', $this->due_date, $this->ID, $this); |
|
1551 | 1551 | |
1552 | - if ( !$display || empty( $due_date ) ) { |
|
1552 | + if (!$display || empty($due_date)) { |
|
1553 | 1553 | return $due_date; |
1554 | 1554 | } |
1555 | 1555 | |
1556 | - return date_i18n( get_option( 'date_format' ), strtotime( $due_date ) ); |
|
1556 | + return date_i18n(get_option('date_format'), strtotime($due_date)); |
|
1557 | 1557 | } |
1558 | 1558 | |
1559 | 1559 | public function get_completed_date() { |
1560 | - return apply_filters( 'wpinv_completed_date', $this->completed_date, $this->ID, $this ); |
|
1560 | + return apply_filters('wpinv_completed_date', $this->completed_date, $this->ID, $this); |
|
1561 | 1561 | } |
1562 | 1562 | |
1563 | - public function get_invoice_date( $formatted = true ) { |
|
1563 | + public function get_invoice_date($formatted = true) { |
|
1564 | 1564 | $date_completed = $this->completed_date; |
1565 | 1565 | $invoice_date = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? $date_completed : ''; |
1566 | 1566 | |
1567 | - if ( $invoice_date == '' ) { |
|
1567 | + if ($invoice_date == '') { |
|
1568 | 1568 | $date_created = $this->date; |
1569 | 1569 | $invoice_date = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? $date_created : ''; |
1570 | 1570 | } |
1571 | 1571 | |
1572 | - if ( $formatted && $invoice_date ) { |
|
1573 | - $invoice_date = date_i18n( get_option( 'date_format' ), strtotime( $invoice_date ) ); |
|
1572 | + if ($formatted && $invoice_date) { |
|
1573 | + $invoice_date = date_i18n(get_option('date_format'), strtotime($invoice_date)); |
|
1574 | 1574 | } |
1575 | 1575 | |
1576 | - return apply_filters( 'wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this ); |
|
1576 | + return apply_filters('wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this); |
|
1577 | 1577 | } |
1578 | 1578 | |
1579 | 1579 | public function get_ip() { |
1580 | - return apply_filters( 'wpinv_user_ip', $this->ip, $this->ID, $this ); |
|
1580 | + return apply_filters('wpinv_user_ip', $this->ip, $this->ID, $this); |
|
1581 | 1581 | } |
1582 | 1582 | |
1583 | - public function has_status( $status ) { |
|
1584 | - return apply_filters( 'wpinv_has_status', ( is_array( $status ) && in_array( $this->get_status(), $status ) ) || $this->get_status() === $status ? true : false, $this, $status ); |
|
1583 | + public function has_status($status) { |
|
1584 | + return apply_filters('wpinv_has_status', (is_array($status) && in_array($this->get_status(), $status)) || $this->get_status() === $status ? true : false, $this, $status); |
|
1585 | 1585 | } |
1586 | 1586 | |
1587 | - public function add_item( $item_id = 0, $args = array() ) { |
|
1587 | + public function add_item($item_id = 0, $args = array()) { |
|
1588 | 1588 | global $wpi_current_id, $wpi_item_id; |
1589 | 1589 | |
1590 | - $item = new WPInv_Item( $item_id ); |
|
1590 | + $item = new WPInv_Item($item_id); |
|
1591 | 1591 | |
1592 | 1592 | // Bail if this post isn't a item |
1593 | - if( !$item || $item->post_type !== 'wpi_item' ) { |
|
1593 | + if (!$item || $item->post_type !== 'wpi_item') { |
|
1594 | 1594 | return false; |
1595 | 1595 | } |
1596 | 1596 | |
@@ -1609,8 +1609,8 @@ discard block |
||
1609 | 1609 | 'fees' => array() |
1610 | 1610 | ); |
1611 | 1611 | |
1612 | - $args = wp_parse_args( apply_filters( 'wpinv_add_item_args', $args, $item->ID ), $defaults ); |
|
1613 | - $args['quantity'] = $has_quantities && $args['quantity'] > 0 ? absint( $args['quantity'] ) : 1; |
|
1612 | + $args = wp_parse_args(apply_filters('wpinv_add_item_args', $args, $item->ID), $defaults); |
|
1613 | + $args['quantity'] = $has_quantities && $args['quantity'] > 0 ? absint($args['quantity']) : 1; |
|
1614 | 1614 | |
1615 | 1615 | $wpi_current_id = $this->ID; |
1616 | 1616 | $wpi_item_id = $item->ID; |
@@ -1622,19 +1622,19 @@ discard block |
||
1622 | 1622 | $found_cart_key = false; |
1623 | 1623 | |
1624 | 1624 | if ($has_quantities) { |
1625 | - $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details; |
|
1625 | + $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details; |
|
1626 | 1626 | |
1627 | - foreach ( $this->items as $key => $cart_item ) { |
|
1628 | - if ( (int)$item_id !== (int)$cart_item['id'] ) { |
|
1627 | + foreach ($this->items as $key => $cart_item) { |
|
1628 | + if ((int) $item_id !== (int) $cart_item['id']) { |
|
1629 | 1629 | continue; |
1630 | 1630 | } |
1631 | 1631 | |
1632 | - $this->items[ $key ]['quantity'] += $args['quantity']; |
|
1632 | + $this->items[$key]['quantity'] += $args['quantity']; |
|
1633 | 1633 | break; |
1634 | 1634 | } |
1635 | 1635 | |
1636 | - foreach ( $this->cart_details as $cart_key => $cart_item ) { |
|
1637 | - if ( $item_id != $cart_item['id'] ) { |
|
1636 | + foreach ($this->cart_details as $cart_key => $cart_item) { |
|
1637 | + if ($item_id != $cart_item['id']) { |
|
1638 | 1638 | continue; |
1639 | 1639 | } |
1640 | 1640 | |
@@ -1646,29 +1646,29 @@ discard block |
||
1646 | 1646 | if ($has_quantities && $found_cart_key !== false) { |
1647 | 1647 | $cart_item = $this->cart_details[$found_cart_key]; |
1648 | 1648 | $item_price = $cart_item['item_price']; |
1649 | - $quantity = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1; |
|
1650 | - $tax_rate = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0; |
|
1649 | + $quantity = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1; |
|
1650 | + $tax_rate = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0; |
|
1651 | 1651 | |
1652 | 1652 | $new_quantity = $quantity + $args['quantity']; |
1653 | 1653 | $subtotal = $item_price * $new_quantity; |
1654 | 1654 | |
1655 | 1655 | $args['quantity'] = $new_quantity; |
1656 | - $discount = !empty( $args['discount'] ) ? $args['discount'] : 0; |
|
1657 | - $tax = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0; |
|
1656 | + $discount = !empty($args['discount']) ? $args['discount'] : 0; |
|
1657 | + $tax = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float) $tax_rate) : 0; |
|
1658 | 1658 | |
1659 | - $discount_increased = $discount > 0 && $subtotal > 0 && $discount > (float)$cart_item['discount'] ? $discount - (float)$cart_item['discount'] : 0; |
|
1660 | - $tax_increased = $tax > 0 && $subtotal > 0 && $tax > (float)$cart_item['tax'] ? $tax - (float)$cart_item['tax'] : 0; |
|
1659 | + $discount_increased = $discount > 0 && $subtotal > 0 && $discount > (float) $cart_item['discount'] ? $discount - (float) $cart_item['discount'] : 0; |
|
1660 | + $tax_increased = $tax > 0 && $subtotal > 0 && $tax > (float) $cart_item['tax'] ? $tax - (float) $cart_item['tax'] : 0; |
|
1661 | 1661 | // The total increase equals the number removed * the item_price |
1662 | - $total_increased = wpinv_round_amount( $item_price ); |
|
1662 | + $total_increased = wpinv_round_amount($item_price); |
|
1663 | 1663 | |
1664 | - if ( wpinv_prices_include_tax() ) { |
|
1665 | - $subtotal -= wpinv_round_amount( $tax ); |
|
1664 | + if (wpinv_prices_include_tax()) { |
|
1665 | + $subtotal -= wpinv_round_amount($tax); |
|
1666 | 1666 | } |
1667 | 1667 | |
1668 | - $total = $subtotal - $discount + $tax; |
|
1668 | + $total = $subtotal - $discount + $tax; |
|
1669 | 1669 | |
1670 | 1670 | // Do not allow totals to go negative |
1671 | - if( $total < 0 ) { |
|
1671 | + if ($total < 0) { |
|
1672 | 1672 | $total = 0; |
1673 | 1673 | } |
1674 | 1674 | |
@@ -1684,25 +1684,25 @@ discard block |
||
1684 | 1684 | $this->cart_details[$found_cart_key] = $cart_item; |
1685 | 1685 | } else { |
1686 | 1686 | // Set custom price. |
1687 | - if ( $args['custom_price'] !== '' ) { |
|
1687 | + if ($args['custom_price'] !== '') { |
|
1688 | 1688 | $item_price = $args['custom_price']; |
1689 | 1689 | } else { |
1690 | 1690 | // Allow overriding the price |
1691 | - if ( false !== $args['item_price'] ) { |
|
1691 | + if (false !== $args['item_price']) { |
|
1692 | 1692 | $item_price = $args['item_price']; |
1693 | 1693 | } else { |
1694 | - $item_price = wpinv_get_item_price( $item->ID ); |
|
1694 | + $item_price = wpinv_get_item_price($item->ID); |
|
1695 | 1695 | } |
1696 | 1696 | } |
1697 | 1697 | |
1698 | 1698 | // Sanitizing the price here so we don't have a dozen calls later |
1699 | - $item_price = wpinv_sanitize_amount( $item_price ); |
|
1700 | - $subtotal = wpinv_round_amount( $item_price * $args['quantity'] ); |
|
1699 | + $item_price = wpinv_sanitize_amount($item_price); |
|
1700 | + $subtotal = wpinv_round_amount($item_price * $args['quantity']); |
|
1701 | 1701 | |
1702 | - $discount = !empty( $args['discount'] ) ? $args['discount'] : 0; |
|
1703 | - $tax_class = !empty( $args['vat_class'] ) ? $args['vat_class'] : ''; |
|
1704 | - $tax_rate = !empty( $args['vat_rate'] ) ? $args['vat_rate'] : 0; |
|
1705 | - $tax = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0; |
|
1702 | + $discount = !empty($args['discount']) ? $args['discount'] : 0; |
|
1703 | + $tax_class = !empty($args['vat_class']) ? $args['vat_class'] : ''; |
|
1704 | + $tax_rate = !empty($args['vat_rate']) ? $args['vat_rate'] : 0; |
|
1705 | + $tax = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float) $tax_rate) : 0; |
|
1706 | 1706 | |
1707 | 1707 | // Setup the items meta item |
1708 | 1708 | $new_item = array( |
@@ -1710,29 +1710,29 @@ discard block |
||
1710 | 1710 | 'quantity' => $args['quantity'], |
1711 | 1711 | ); |
1712 | 1712 | |
1713 | - $this->items[] = $new_item; |
|
1713 | + $this->items[] = $new_item; |
|
1714 | 1714 | |
1715 | - if ( wpinv_prices_include_tax() ) { |
|
1716 | - $subtotal -= wpinv_round_amount( $tax ); |
|
1715 | + if (wpinv_prices_include_tax()) { |
|
1716 | + $subtotal -= wpinv_round_amount($tax); |
|
1717 | 1717 | } |
1718 | 1718 | |
1719 | - $total = $subtotal - $discount + $tax; |
|
1719 | + $total = $subtotal - $discount + $tax; |
|
1720 | 1720 | |
1721 | 1721 | // Do not allow totals to go negative |
1722 | - if( $total < 0 ) { |
|
1722 | + if ($total < 0) { |
|
1723 | 1723 | $total = 0; |
1724 | 1724 | } |
1725 | 1725 | |
1726 | 1726 | $this->cart_details[] = array( |
1727 | 1727 | 'name' => !empty($args['name']) ? $args['name'] : $item->get_name(), |
1728 | 1728 | 'id' => $item->ID, |
1729 | - 'item_price' => wpinv_round_amount( $item_price ), |
|
1730 | - 'custom_price' => ( $args['custom_price'] !== '' ? wpinv_round_amount( $args['custom_price'] ) : '' ), |
|
1729 | + 'item_price' => wpinv_round_amount($item_price), |
|
1730 | + 'custom_price' => ($args['custom_price'] !== '' ? wpinv_round_amount($args['custom_price']) : ''), |
|
1731 | 1731 | 'quantity' => $args['quantity'], |
1732 | 1732 | 'discount' => $discount, |
1733 | - 'subtotal' => wpinv_round_amount( $subtotal ), |
|
1734 | - 'tax' => wpinv_round_amount( $tax ), |
|
1735 | - 'price' => wpinv_round_amount( $total ), |
|
1733 | + 'subtotal' => wpinv_round_amount($subtotal), |
|
1734 | + 'tax' => wpinv_round_amount($tax), |
|
1735 | + 'price' => wpinv_round_amount($total), |
|
1736 | 1736 | 'vat_rate' => $tax_rate, |
1737 | 1737 | 'vat_class' => $tax_class, |
1738 | 1738 | 'meta' => $args['meta'], |
@@ -1742,18 +1742,18 @@ discard block |
||
1742 | 1742 | $subtotal = $subtotal - $discount; |
1743 | 1743 | } |
1744 | 1744 | |
1745 | - $added_item = end( $this->cart_details ); |
|
1746 | - $added_item['action'] = 'add'; |
|
1745 | + $added_item = end($this->cart_details); |
|
1746 | + $added_item['action'] = 'add'; |
|
1747 | 1747 | |
1748 | 1748 | $this->pending['items'][] = $added_item; |
1749 | 1749 | |
1750 | - $this->increase_subtotal( $subtotal ); |
|
1751 | - $this->increase_tax( $tax ); |
|
1750 | + $this->increase_subtotal($subtotal); |
|
1751 | + $this->increase_tax($tax); |
|
1752 | 1752 | |
1753 | 1753 | return true; |
1754 | 1754 | } |
1755 | 1755 | |
1756 | - public function remove_item( $item_id, $args = array() ) { |
|
1756 | + public function remove_item($item_id, $args = array()) { |
|
1757 | 1757 | // Set some defaults |
1758 | 1758 | $defaults = array( |
1759 | 1759 | 'quantity' => 1, |
@@ -1761,51 +1761,51 @@ discard block |
||
1761 | 1761 | 'custom_price' => '', |
1762 | 1762 | 'cart_index' => false, |
1763 | 1763 | ); |
1764 | - $args = wp_parse_args( $args, $defaults ); |
|
1764 | + $args = wp_parse_args($args, $defaults); |
|
1765 | 1765 | |
1766 | 1766 | // Bail if this post isn't a item |
1767 | - if ( get_post_type( $item_id ) !== 'wpi_item' ) { |
|
1767 | + if (get_post_type($item_id) !== 'wpi_item') { |
|
1768 | 1768 | return false; |
1769 | 1769 | } |
1770 | 1770 | |
1771 | - $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details; |
|
1771 | + $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details; |
|
1772 | 1772 | |
1773 | - foreach ( $this->items as $key => $item ) { |
|
1774 | - if ( !empty($item['id']) && (int)$item_id !== (int)$item['id'] ) { |
|
1773 | + foreach ($this->items as $key => $item) { |
|
1774 | + if (!empty($item['id']) && (int) $item_id !== (int) $item['id']) { |
|
1775 | 1775 | continue; |
1776 | 1776 | } |
1777 | 1777 | |
1778 | - if ( false !== $args['cart_index'] ) { |
|
1779 | - $cart_index = absint( $args['cart_index'] ); |
|
1780 | - $cart_item = ! empty( $this->cart_details[ $cart_index ] ) ? $this->cart_details[ $cart_index ] : false; |
|
1778 | + if (false !== $args['cart_index']) { |
|
1779 | + $cart_index = absint($args['cart_index']); |
|
1780 | + $cart_item = !empty($this->cart_details[$cart_index]) ? $this->cart_details[$cart_index] : false; |
|
1781 | 1781 | |
1782 | - if ( ! empty( $cart_item ) ) { |
|
1782 | + if (!empty($cart_item)) { |
|
1783 | 1783 | // If the cart index item isn't the same item ID, don't remove it |
1784 | - if ( !empty($cart_item['id']) && $cart_item['id'] != $item['id'] ) { |
|
1784 | + if (!empty($cart_item['id']) && $cart_item['id'] != $item['id']) { |
|
1785 | 1785 | continue; |
1786 | 1786 | } |
1787 | 1787 | } |
1788 | 1788 | } |
1789 | 1789 | |
1790 | - $item_quantity = $this->items[ $key ]['quantity']; |
|
1791 | - if ( $item_quantity > $args['quantity'] ) { |
|
1792 | - $this->items[ $key ]['quantity'] -= $args['quantity']; |
|
1790 | + $item_quantity = $this->items[$key]['quantity']; |
|
1791 | + if ($item_quantity > $args['quantity']) { |
|
1792 | + $this->items[$key]['quantity'] -= $args['quantity']; |
|
1793 | 1793 | break; |
1794 | 1794 | } else { |
1795 | - unset( $this->items[ $key ] ); |
|
1795 | + unset($this->items[$key]); |
|
1796 | 1796 | break; |
1797 | 1797 | } |
1798 | 1798 | } |
1799 | 1799 | |
1800 | 1800 | $found_cart_key = false; |
1801 | - if ( false === $args['cart_index'] ) { |
|
1802 | - foreach ( $this->cart_details as $cart_key => $item ) { |
|
1803 | - if ( $item_id != $item['id'] ) { |
|
1801 | + if (false === $args['cart_index']) { |
|
1802 | + foreach ($this->cart_details as $cart_key => $item) { |
|
1803 | + if ($item_id != $item['id']) { |
|
1804 | 1804 | continue; |
1805 | 1805 | } |
1806 | 1806 | |
1807 | - if ( false !== $args['item_price'] ) { |
|
1808 | - if ( isset( $item['item_price'] ) && (float) $args['item_price'] != (float) $item['item_price'] ) { |
|
1807 | + if (false !== $args['item_price']) { |
|
1808 | + if (isset($item['item_price']) && (float) $args['item_price'] != (float) $item['item_price']) { |
|
1809 | 1809 | continue; |
1810 | 1810 | } |
1811 | 1811 | } |
@@ -1814,13 +1814,13 @@ discard block |
||
1814 | 1814 | break; |
1815 | 1815 | } |
1816 | 1816 | } else { |
1817 | - $cart_index = absint( $args['cart_index'] ); |
|
1817 | + $cart_index = absint($args['cart_index']); |
|
1818 | 1818 | |
1819 | - if ( ! array_key_exists( $cart_index, $this->cart_details ) ) { |
|
1819 | + if (!array_key_exists($cart_index, $this->cart_details)) { |
|
1820 | 1820 | return false; // Invalid cart index passed. |
1821 | 1821 | } |
1822 | 1822 | |
1823 | - if ( (int) $this->cart_details[ $cart_index ]['id'] > 0 && (int) $this->cart_details[ $cart_index ]['id'] !== (int) $item_id ) { |
|
1823 | + if ((int) $this->cart_details[$cart_index]['id'] > 0 && (int) $this->cart_details[$cart_index]['id'] !== (int) $item_id) { |
|
1824 | 1824 | return false; // We still need the proper Item ID to be sure. |
1825 | 1825 | } |
1826 | 1826 | |
@@ -1828,41 +1828,41 @@ discard block |
||
1828 | 1828 | } |
1829 | 1829 | |
1830 | 1830 | $cart_item = $this->cart_details[$found_cart_key]; |
1831 | - $quantity = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1; |
|
1831 | + $quantity = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1; |
|
1832 | 1832 | |
1833 | - if ( count( $this->cart_details ) == 1 && ( $quantity - $args['quantity'] ) < 1 ) { |
|
1833 | + if (count($this->cart_details) == 1 && ($quantity - $args['quantity']) < 1) { |
|
1834 | 1834 | //return false; // Invoice must contain at least one item. |
1835 | 1835 | } |
1836 | 1836 | |
1837 | - $discounts = $this->get_discounts(); |
|
1837 | + $discounts = $this->get_discounts(); |
|
1838 | 1838 | |
1839 | - if ( $quantity > $args['quantity'] ) { |
|
1839 | + if ($quantity > $args['quantity']) { |
|
1840 | 1840 | $item_price = $cart_item['item_price']; |
1841 | - $tax_rate = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0; |
|
1841 | + $tax_rate = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0; |
|
1842 | 1842 | |
1843 | - $new_quantity = max( $quantity - $args['quantity'], 1); |
|
1843 | + $new_quantity = max($quantity - $args['quantity'], 1); |
|
1844 | 1844 | $subtotal = $item_price * $new_quantity; |
1845 | 1845 | |
1846 | 1846 | $args['quantity'] = $new_quantity; |
1847 | - $discount = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0; |
|
1848 | - $tax = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0; |
|
1847 | + $discount = !empty($cart_item['discount']) ? $cart_item['discount'] : 0; |
|
1848 | + $tax = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float) $tax_rate) : 0; |
|
1849 | 1849 | |
1850 | - $discount_decrease = (float)$cart_item['discount'] > 0 && $quantity > 0 ? wpinv_round_amount( ( (float)$cart_item['discount'] / $quantity ) ) : 0; |
|
1851 | - $discount_decrease = $discount > 0 && $subtotal > 0 && (float)$cart_item['discount'] > $discount ? (float)$cart_item['discount'] - $discount : $discount_decrease; |
|
1852 | - $tax_decrease = (float)$cart_item['tax'] > 0 && $quantity > 0 ? wpinv_round_amount( ( (float)$cart_item['tax'] / $quantity ) ) : 0; |
|
1853 | - $tax_decrease = $tax > 0 && $subtotal > 0 && (float)$cart_item['tax'] > $tax ? (float)$cart_item['tax'] - $tax : $tax_decrease; |
|
1850 | + $discount_decrease = (float) $cart_item['discount'] > 0 && $quantity > 0 ? wpinv_round_amount(((float) $cart_item['discount'] / $quantity)) : 0; |
|
1851 | + $discount_decrease = $discount > 0 && $subtotal > 0 && (float) $cart_item['discount'] > $discount ? (float) $cart_item['discount'] - $discount : $discount_decrease; |
|
1852 | + $tax_decrease = (float) $cart_item['tax'] > 0 && $quantity > 0 ? wpinv_round_amount(((float) $cart_item['tax'] / $quantity)) : 0; |
|
1853 | + $tax_decrease = $tax > 0 && $subtotal > 0 && (float) $cart_item['tax'] > $tax ? (float) $cart_item['tax'] - $tax : $tax_decrease; |
|
1854 | 1854 | |
1855 | 1855 | // The total increase equals the number removed * the item_price |
1856 | - $total_decrease = wpinv_round_amount( $item_price ); |
|
1856 | + $total_decrease = wpinv_round_amount($item_price); |
|
1857 | 1857 | |
1858 | - if ( wpinv_prices_include_tax() ) { |
|
1859 | - $subtotal -= wpinv_round_amount( $tax ); |
|
1858 | + if (wpinv_prices_include_tax()) { |
|
1859 | + $subtotal -= wpinv_round_amount($tax); |
|
1860 | 1860 | } |
1861 | 1861 | |
1862 | - $total = $subtotal - $discount + $tax; |
|
1862 | + $total = $subtotal - $discount + $tax; |
|
1863 | 1863 | |
1864 | 1864 | // Do not allow totals to go negative |
1865 | - if( $total < 0 ) { |
|
1865 | + if ($total < 0) { |
|
1866 | 1866 | $total = 0; |
1867 | 1867 | } |
1868 | 1868 | |
@@ -1881,16 +1881,16 @@ discard block |
||
1881 | 1881 | |
1882 | 1882 | $this->cart_details[$found_cart_key] = $cart_item; |
1883 | 1883 | |
1884 | - $remove_item = end( $this->cart_details ); |
|
1884 | + $remove_item = end($this->cart_details); |
|
1885 | 1885 | } else { |
1886 | 1886 | $item_price = $cart_item['item_price']; |
1887 | - $discount = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0; |
|
1888 | - $tax = !empty( $cart_item['tax'] ) ? $cart_item['tax'] : 0; |
|
1887 | + $discount = !empty($cart_item['discount']) ? $cart_item['discount'] : 0; |
|
1888 | + $tax = !empty($cart_item['tax']) ? $cart_item['tax'] : 0; |
|
1889 | 1889 | |
1890 | - $subtotal_decrease = ( $item_price * $quantity ) - $discount; |
|
1890 | + $subtotal_decrease = ($item_price * $quantity) - $discount; |
|
1891 | 1891 | $tax_decrease = $tax; |
1892 | 1892 | |
1893 | - unset( $this->cart_details[$found_cart_key] ); |
|
1893 | + unset($this->cart_details[$found_cart_key]); |
|
1894 | 1894 | |
1895 | 1895 | $remove_item = $args; |
1896 | 1896 | $remove_item['id'] = $item_id; |
@@ -1901,8 +1901,8 @@ discard block |
||
1901 | 1901 | $remove_item['action'] = 'remove'; |
1902 | 1902 | $this->pending['items'][] = $remove_item; |
1903 | 1903 | |
1904 | - $this->decrease_subtotal( $subtotal_decrease ); |
|
1905 | - $this->decrease_tax( $tax_decrease ); |
|
1904 | + $this->decrease_subtotal($subtotal_decrease); |
|
1905 | + $this->decrease_tax($tax_decrease); |
|
1906 | 1906 | |
1907 | 1907 | return true; |
1908 | 1908 | } |
@@ -1910,7 +1910,7 @@ discard block |
||
1910 | 1910 | public function update_items($temp = false) { |
1911 | 1911 | global $wpinv_euvat, $wpi_current_id, $wpi_item_id, $wpi_nosave; |
1912 | 1912 | |
1913 | - if ( !empty( $this->cart_details ) ) { |
|
1913 | + if (!empty($this->cart_details)) { |
|
1914 | 1914 | $wpi_nosave = $temp; |
1915 | 1915 | $cart_subtotal = 0; |
1916 | 1916 | $cart_discount = 0; |
@@ -1920,61 +1920,61 @@ discard block |
||
1920 | 1920 | $_POST['wpinv_country'] = $this->country; |
1921 | 1921 | $_POST['wpinv_state'] = $this->state; |
1922 | 1922 | |
1923 | - foreach ( $this->cart_details as $key => $item ) { |
|
1923 | + foreach ($this->cart_details as $key => $item) { |
|
1924 | 1924 | $item_price = $item['item_price']; |
1925 | - $quantity = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1; |
|
1926 | - $amount = wpinv_round_amount( $item_price * $quantity ); |
|
1925 | + $quantity = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint($item['quantity']) : 1; |
|
1926 | + $amount = wpinv_round_amount($item_price * $quantity); |
|
1927 | 1927 | $subtotal = $item_price * $quantity; |
1928 | 1928 | |
1929 | 1929 | $wpi_current_id = $this->ID; |
1930 | 1930 | $wpi_item_id = $item['id']; |
1931 | 1931 | |
1932 | - $discount = wpinv_get_cart_item_discount_amount( $item, $this->get_discounts() ); |
|
1932 | + $discount = wpinv_get_cart_item_discount_amount($item, $this->get_discounts()); |
|
1933 | 1933 | |
1934 | - $tax_rate = wpinv_get_tax_rate( $this->country, $this->state, $wpi_item_id ); |
|
1935 | - $tax_class = $wpinv_euvat->get_item_class( $wpi_item_id ); |
|
1936 | - $tax = $item_price > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0; |
|
1934 | + $tax_rate = wpinv_get_tax_rate($this->country, $this->state, $wpi_item_id); |
|
1935 | + $tax_class = $wpinv_euvat->get_item_class($wpi_item_id); |
|
1936 | + $tax = $item_price > 0 ? (($subtotal - $discount) * 0.01 * (float) $tax_rate) : 0; |
|
1937 | 1937 | |
1938 | - if ( wpinv_prices_include_tax() ) { |
|
1939 | - $subtotal -= wpinv_round_amount( $tax ); |
|
1938 | + if (wpinv_prices_include_tax()) { |
|
1939 | + $subtotal -= wpinv_round_amount($tax); |
|
1940 | 1940 | } |
1941 | 1941 | |
1942 | - $total = $subtotal - $discount + $tax; |
|
1942 | + $total = $subtotal - $discount + $tax; |
|
1943 | 1943 | |
1944 | 1944 | // Do not allow totals to go negative |
1945 | - if( $total < 0 ) { |
|
1945 | + if ($total < 0) { |
|
1946 | 1946 | $total = 0; |
1947 | 1947 | } |
1948 | 1948 | |
1949 | 1949 | $cart_details[] = array( |
1950 | 1950 | 'id' => $item['id'], |
1951 | 1951 | 'name' => $item['name'], |
1952 | - 'item_price' => wpinv_round_amount( $item_price ), |
|
1953 | - 'custom_price'=> ( isset( $item['custom_price'] ) ? $item['custom_price'] : '' ), |
|
1952 | + 'item_price' => wpinv_round_amount($item_price), |
|
1953 | + 'custom_price'=> (isset($item['custom_price']) ? $item['custom_price'] : ''), |
|
1954 | 1954 | 'quantity' => $quantity, |
1955 | 1955 | 'discount' => $discount, |
1956 | - 'subtotal' => wpinv_round_amount( $subtotal ), |
|
1957 | - 'tax' => wpinv_round_amount( $tax ), |
|
1958 | - 'price' => wpinv_round_amount( $total ), |
|
1956 | + 'subtotal' => wpinv_round_amount($subtotal), |
|
1957 | + 'tax' => wpinv_round_amount($tax), |
|
1958 | + 'price' => wpinv_round_amount($total), |
|
1959 | 1959 | 'vat_rate' => $tax_rate, |
1960 | 1960 | 'vat_class' => $tax_class, |
1961 | 1961 | 'meta' => isset($item['meta']) ? $item['meta'] : array(), |
1962 | 1962 | 'fees' => isset($item['fees']) ? $item['fees'] : array(), |
1963 | 1963 | ); |
1964 | 1964 | |
1965 | - $cart_subtotal += (float)($subtotal - $discount); // TODO |
|
1966 | - $cart_discount += (float)($discount); |
|
1967 | - $cart_tax += (float)($tax); |
|
1965 | + $cart_subtotal += (float) ($subtotal - $discount); // TODO |
|
1966 | + $cart_discount += (float) ($discount); |
|
1967 | + $cart_tax += (float) ($tax); |
|
1968 | 1968 | } |
1969 | - if ( $cart_subtotal < 0 ) { |
|
1969 | + if ($cart_subtotal < 0) { |
|
1970 | 1970 | $cart_subtotal = 0; |
1971 | 1971 | } |
1972 | - if ( $cart_tax < 0 ) { |
|
1972 | + if ($cart_tax < 0) { |
|
1973 | 1973 | $cart_tax = 0; |
1974 | 1974 | } |
1975 | - $this->subtotal = wpinv_round_amount( $cart_subtotal ); |
|
1976 | - $this->tax = wpinv_round_amount( $cart_tax ); |
|
1977 | - $this->discount = wpinv_round_amount( $cart_discount ); |
|
1975 | + $this->subtotal = wpinv_round_amount($cart_subtotal); |
|
1976 | + $this->tax = wpinv_round_amount($cart_tax); |
|
1977 | + $this->discount = wpinv_round_amount($cart_discount); |
|
1978 | 1978 | |
1979 | 1979 | $this->recalculate_total(); |
1980 | 1980 | |
@@ -1986,197 +1986,197 @@ discard block |
||
1986 | 1986 | |
1987 | 1987 | public function recalculate_totals($temp = false) { |
1988 | 1988 | $this->update_items($temp); |
1989 | - $this->save( true ); |
|
1989 | + $this->save(true); |
|
1990 | 1990 | |
1991 | 1991 | return $this; |
1992 | 1992 | } |
1993 | 1993 | |
1994 | 1994 | public function needs_payment() { |
1995 | - $valid_invoice_statuses = apply_filters( 'wpinv_valid_invoice_statuses_for_payment', array( 'wpi-pending' ), $this ); |
|
1995 | + $valid_invoice_statuses = apply_filters('wpinv_valid_invoice_statuses_for_payment', array('wpi-pending'), $this); |
|
1996 | 1996 | |
1997 | - if ( $this->has_status( $valid_invoice_statuses ) && ( $this->get_total() > 0 || $this->is_free_trial() || $this->is_free() || $this->is_initial_free() ) ) { |
|
1997 | + if ($this->has_status($valid_invoice_statuses) && ($this->get_total() > 0 || $this->is_free_trial() || $this->is_free() || $this->is_initial_free())) { |
|
1998 | 1998 | $needs_payment = true; |
1999 | 1999 | } else { |
2000 | 2000 | $needs_payment = false; |
2001 | 2001 | } |
2002 | 2002 | |
2003 | - return apply_filters( 'wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses ); |
|
2003 | + return apply_filters('wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses); |
|
2004 | 2004 | } |
2005 | 2005 | |
2006 | - public function get_checkout_payment_url( $with_key = false, $secret = false ) { |
|
2006 | + public function get_checkout_payment_url($with_key = false, $secret = false) { |
|
2007 | 2007 | $pay_url = wpinv_get_checkout_uri(); |
2008 | 2008 | |
2009 | - if ( is_ssl() ) { |
|
2010 | - $pay_url = str_replace( 'http:', 'https:', $pay_url ); |
|
2009 | + if (is_ssl()) { |
|
2010 | + $pay_url = str_replace('http:', 'https:', $pay_url); |
|
2011 | 2011 | } |
2012 | 2012 | |
2013 | 2013 | $key = $this->get_key(); |
2014 | 2014 | |
2015 | - if ( $with_key ) { |
|
2016 | - $pay_url = add_query_arg( 'invoice_key', $key, $pay_url ); |
|
2015 | + if ($with_key) { |
|
2016 | + $pay_url = add_query_arg('invoice_key', $key, $pay_url); |
|
2017 | 2017 | } else { |
2018 | - $pay_url = add_query_arg( array( 'wpi_action' => 'pay_for_invoice', 'invoice_key' => $key ), $pay_url ); |
|
2018 | + $pay_url = add_query_arg(array('wpi_action' => 'pay_for_invoice', 'invoice_key' => $key), $pay_url); |
|
2019 | 2019 | } |
2020 | 2020 | |
2021 | - if ( $secret ) { |
|
2022 | - $pay_url = add_query_arg( array( '_wpipay' => md5( $this->get_user_id() . '::' . $this->get_email() . '::' . $key ) ), $pay_url ); |
|
2021 | + if ($secret) { |
|
2022 | + $pay_url = add_query_arg(array('_wpipay' => md5($this->get_user_id() . '::' . $this->get_email() . '::' . $key)), $pay_url); |
|
2023 | 2023 | } |
2024 | 2024 | |
2025 | - return apply_filters( 'wpinv_get_checkout_payment_url', $pay_url, $this, $with_key, $secret ); |
|
2025 | + return apply_filters('wpinv_get_checkout_payment_url', $pay_url, $this, $with_key, $secret); |
|
2026 | 2026 | } |
2027 | 2027 | |
2028 | - public function get_view_url( $with_key = false ) { |
|
2029 | - $invoice_url = get_permalink( $this->ID ); |
|
2028 | + public function get_view_url($with_key = false) { |
|
2029 | + $invoice_url = get_permalink($this->ID); |
|
2030 | 2030 | |
2031 | - if ( $with_key ) { |
|
2032 | - $invoice_url = add_query_arg( 'invoice_key', $this->get_key(), $invoice_url ); |
|
2031 | + if ($with_key) { |
|
2032 | + $invoice_url = add_query_arg('invoice_key', $this->get_key(), $invoice_url); |
|
2033 | 2033 | } |
2034 | 2034 | |
2035 | - return apply_filters( 'wpinv_get_view_url', $invoice_url, $this, $with_key ); |
|
2035 | + return apply_filters('wpinv_get_view_url', $invoice_url, $this, $with_key); |
|
2036 | 2036 | } |
2037 | 2037 | |
2038 | - public function generate_key( $string = '' ) { |
|
2039 | - $auth_key = defined( 'AUTH_KEY' ) ? AUTH_KEY : ''; |
|
2040 | - return strtolower( md5( $string . date( 'Y-m-d H:i:s' ) . $auth_key . uniqid( 'wpinv', true ) ) ); // Unique key |
|
2038 | + public function generate_key($string = '') { |
|
2039 | + $auth_key = defined('AUTH_KEY') ? AUTH_KEY : ''; |
|
2040 | + return strtolower(md5($string . date('Y-m-d H:i:s') . $auth_key . uniqid('wpinv', true))); // Unique key |
|
2041 | 2041 | } |
2042 | 2042 | |
2043 | 2043 | public function is_recurring() { |
2044 | - if ( empty( $this->cart_details ) ) { |
|
2044 | + if (empty($this->cart_details)) { |
|
2045 | 2045 | return false; |
2046 | 2046 | } |
2047 | 2047 | |
2048 | 2048 | $has_subscription = false; |
2049 | - foreach( $this->cart_details as $cart_item ) { |
|
2050 | - if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] ) ) { |
|
2049 | + foreach ($this->cart_details as $cart_item) { |
|
2050 | + if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) { |
|
2051 | 2051 | $has_subscription = true; |
2052 | 2052 | break; |
2053 | 2053 | } |
2054 | 2054 | } |
2055 | 2055 | |
2056 | - if ( count( $this->cart_details ) > 1 ) { |
|
2056 | + if (count($this->cart_details) > 1) { |
|
2057 | 2057 | $has_subscription = false; |
2058 | 2058 | } |
2059 | 2059 | |
2060 | - return apply_filters( 'wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details ); |
|
2060 | + return apply_filters('wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details); |
|
2061 | 2061 | } |
2062 | 2062 | |
2063 | 2063 | public function is_free_trial() { |
2064 | 2064 | $is_free_trial = false; |
2065 | 2065 | |
2066 | - if ( $this->is_parent() && $item = $this->get_recurring( true ) ) { |
|
2067 | - if ( !empty( $item ) && $item->has_free_trial() ) { |
|
2066 | + if ($this->is_parent() && $item = $this->get_recurring(true)) { |
|
2067 | + if (!empty($item) && $item->has_free_trial()) { |
|
2068 | 2068 | $is_free_trial = true; |
2069 | 2069 | } |
2070 | 2070 | } |
2071 | 2071 | |
2072 | - return apply_filters( 'wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details ); |
|
2072 | + return apply_filters('wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details); |
|
2073 | 2073 | } |
2074 | 2074 | |
2075 | 2075 | public function is_initial_free() { |
2076 | 2076 | $is_initial_free = false; |
2077 | 2077 | |
2078 | - if ( ! ( (float)wpinv_round_amount( $this->get_total() ) > 0 ) && $this->is_parent() && $this->is_recurring() && ! $this->is_free_trial() && ! $this->is_free() ) { |
|
2078 | + if (!((float) wpinv_round_amount($this->get_total()) > 0) && $this->is_parent() && $this->is_recurring() && !$this->is_free_trial() && !$this->is_free()) { |
|
2079 | 2079 | $is_initial_free = true; |
2080 | 2080 | } |
2081 | 2081 | |
2082 | - return apply_filters( 'wpinv_invoice_is_initial_free', $is_initial_free, $this->cart_details ); |
|
2082 | + return apply_filters('wpinv_invoice_is_initial_free', $is_initial_free, $this->cart_details); |
|
2083 | 2083 | } |
2084 | 2084 | |
2085 | - public function get_recurring( $object = false ) { |
|
2085 | + public function get_recurring($object = false) { |
|
2086 | 2086 | $item = NULL; |
2087 | 2087 | |
2088 | - if ( empty( $this->cart_details ) ) { |
|
2088 | + if (empty($this->cart_details)) { |
|
2089 | 2089 | return $item; |
2090 | 2090 | } |
2091 | 2091 | |
2092 | - foreach( $this->cart_details as $cart_item ) { |
|
2093 | - if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] ) ) { |
|
2092 | + foreach ($this->cart_details as $cart_item) { |
|
2093 | + if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) { |
|
2094 | 2094 | $item = $cart_item['id']; |
2095 | 2095 | break; |
2096 | 2096 | } |
2097 | 2097 | } |
2098 | 2098 | |
2099 | - if ( $object ) { |
|
2100 | - $item = $item ? new WPInv_Item( $item ) : NULL; |
|
2099 | + if ($object) { |
|
2100 | + $item = $item ? new WPInv_Item($item) : NULL; |
|
2101 | 2101 | |
2102 | - apply_filters( 'wpinv_invoice_get_recurring_item', $item, $this ); |
|
2102 | + apply_filters('wpinv_invoice_get_recurring_item', $item, $this); |
|
2103 | 2103 | } |
2104 | 2104 | |
2105 | - return apply_filters( 'wpinv_invoice_get_recurring_item_id', $item, $this ); |
|
2105 | + return apply_filters('wpinv_invoice_get_recurring_item_id', $item, $this); |
|
2106 | 2106 | } |
2107 | 2107 | |
2108 | 2108 | public function get_subscription_name() { |
2109 | - $item = $this->get_recurring( true ); |
|
2109 | + $item = $this->get_recurring(true); |
|
2110 | 2110 | |
2111 | - if ( empty( $item ) ) { |
|
2111 | + if (empty($item)) { |
|
2112 | 2112 | return NULL; |
2113 | 2113 | } |
2114 | 2114 | |
2115 | - if ( !($name = $item->get_name()) ) { |
|
2115 | + if (!($name = $item->get_name())) { |
|
2116 | 2116 | $name = $item->post_name; |
2117 | 2117 | } |
2118 | 2118 | |
2119 | - return apply_filters( 'wpinv_invoice_get_subscription_name', $name, $this ); |
|
2119 | + return apply_filters('wpinv_invoice_get_subscription_name', $name, $this); |
|
2120 | 2120 | } |
2121 | 2121 | |
2122 | 2122 | public function get_subscription_id() { |
2123 | - $subscription_id = $this->get_meta( '_wpinv_subscr_profile_id', true ); |
|
2123 | + $subscription_id = $this->get_meta('_wpinv_subscr_profile_id', true); |
|
2124 | 2124 | |
2125 | - if ( empty( $subscription_id ) && !empty( $this->parent_invoice ) ) { |
|
2126 | - $parent_invoice = wpinv_get_invoice( $this->parent_invoice ); |
|
2125 | + if (empty($subscription_id) && !empty($this->parent_invoice)) { |
|
2126 | + $parent_invoice = wpinv_get_invoice($this->parent_invoice); |
|
2127 | 2127 | |
2128 | - $subscription_id = $parent_invoice->get_meta( '_wpinv_subscr_profile_id', true ); |
|
2128 | + $subscription_id = $parent_invoice->get_meta('_wpinv_subscr_profile_id', true); |
|
2129 | 2129 | } |
2130 | 2130 | |
2131 | 2131 | return $subscription_id; |
2132 | 2132 | } |
2133 | 2133 | |
2134 | 2134 | public function is_parent() { |
2135 | - $is_parent = empty( $this->parent_invoice ) ? true : false; |
|
2135 | + $is_parent = empty($this->parent_invoice) ? true : false; |
|
2136 | 2136 | |
2137 | - return apply_filters( 'wpinv_invoice_is_parent', $is_parent, $this ); |
|
2137 | + return apply_filters('wpinv_invoice_is_parent', $is_parent, $this); |
|
2138 | 2138 | } |
2139 | 2139 | |
2140 | 2140 | public function is_renewal() { |
2141 | 2141 | $is_renewal = $this->parent_invoice && $this->parent_invoice != $this->ID ? true : false; |
2142 | 2142 | |
2143 | - return apply_filters( 'wpinv_invoice_is_renewal', $is_renewal, $this ); |
|
2143 | + return apply_filters('wpinv_invoice_is_renewal', $is_renewal, $this); |
|
2144 | 2144 | } |
2145 | 2145 | |
2146 | 2146 | public function get_parent_payment() { |
2147 | 2147 | $parent_payment = NULL; |
2148 | 2148 | |
2149 | - if ( $this->is_renewal() ) { |
|
2150 | - $parent_payment = wpinv_get_invoice( $this->parent_invoice ); |
|
2149 | + if ($this->is_renewal()) { |
|
2150 | + $parent_payment = wpinv_get_invoice($this->parent_invoice); |
|
2151 | 2151 | } |
2152 | 2152 | |
2153 | 2153 | return $parent_payment; |
2154 | 2154 | } |
2155 | 2155 | |
2156 | 2156 | public function is_paid() { |
2157 | - $is_paid = $this->has_status( array( 'publish', 'wpi-processing', 'wpi-renewal' ) ); |
|
2157 | + $is_paid = $this->has_status(array('publish', 'wpi-processing', 'wpi-renewal')); |
|
2158 | 2158 | |
2159 | - return apply_filters( 'wpinv_invoice_is_paid', $is_paid, $this ); |
|
2159 | + return apply_filters('wpinv_invoice_is_paid', $is_paid, $this); |
|
2160 | 2160 | } |
2161 | 2161 | |
2162 | 2162 | public function is_refunded() { |
2163 | - $is_refunded = $this->has_status( array( 'wpi-refunded' ) ); |
|
2163 | + $is_refunded = $this->has_status(array('wpi-refunded')); |
|
2164 | 2164 | |
2165 | - return apply_filters( 'wpinv_invoice_is_refunded', $is_refunded, $this ); |
|
2165 | + return apply_filters('wpinv_invoice_is_refunded', $is_refunded, $this); |
|
2166 | 2166 | } |
2167 | 2167 | |
2168 | 2168 | public function is_free() { |
2169 | 2169 | $is_free = false; |
2170 | 2170 | |
2171 | - if ( !( (float)wpinv_round_amount( $this->get_total() ) > 0 ) ) { |
|
2172 | - if ( $this->is_parent() && $this->is_recurring() ) { |
|
2173 | - $is_free = (float)wpinv_round_amount( $this->get_recurring_details( 'total' ) ) > 0 ? false : true; |
|
2171 | + if (!((float) wpinv_round_amount($this->get_total()) > 0)) { |
|
2172 | + if ($this->is_parent() && $this->is_recurring()) { |
|
2173 | + $is_free = (float) wpinv_round_amount($this->get_recurring_details('total')) > 0 ? false : true; |
|
2174 | 2174 | } else { |
2175 | 2175 | $is_free = true; |
2176 | 2176 | } |
2177 | 2177 | } |
2178 | 2178 | |
2179 | - return apply_filters( 'wpinv_invoice_is_free', $is_free, $this ); |
|
2179 | + return apply_filters('wpinv_invoice_is_free', $is_free, $this); |
|
2180 | 2180 | } |
2181 | 2181 | |
2182 | 2182 | public function has_vat() { |
@@ -2184,41 +2184,41 @@ discard block |
||
2184 | 2184 | |
2185 | 2185 | $requires_vat = false; |
2186 | 2186 | |
2187 | - if ( $this->country ) { |
|
2187 | + if ($this->country) { |
|
2188 | 2188 | $wpi_country = $this->country; |
2189 | 2189 | |
2190 | - $requires_vat = $wpinv_euvat->requires_vat( $requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule( $this ) ); |
|
2190 | + $requires_vat = $wpinv_euvat->requires_vat($requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule($this)); |
|
2191 | 2191 | } |
2192 | 2192 | |
2193 | - return apply_filters( 'wpinv_invoice_has_vat', $requires_vat, $this ); |
|
2193 | + return apply_filters('wpinv_invoice_has_vat', $requires_vat, $this); |
|
2194 | 2194 | } |
2195 | 2195 | |
2196 | 2196 | public function refresh_item_ids() { |
2197 | 2197 | $item_ids = array(); |
2198 | 2198 | |
2199 | - if ( !empty( $this->cart_details ) ) { |
|
2200 | - foreach ( $this->cart_details as $key => $item ) { |
|
2201 | - if ( !empty( $item['id'] ) ) { |
|
2199 | + if (!empty($this->cart_details)) { |
|
2200 | + foreach ($this->cart_details as $key => $item) { |
|
2201 | + if (!empty($item['id'])) { |
|
2202 | 2202 | $item_ids[] = $item['id']; |
2203 | 2203 | } |
2204 | 2204 | } |
2205 | 2205 | } |
2206 | 2206 | |
2207 | - $item_ids = !empty( $item_ids ) ? implode( ',', array_unique( $item_ids ) ) : ''; |
|
2207 | + $item_ids = !empty($item_ids) ? implode(',', array_unique($item_ids)) : ''; |
|
2208 | 2208 | |
2209 | - update_post_meta( $this->ID, '_wpinv_item_ids', $item_ids ); |
|
2209 | + update_post_meta($this->ID, '_wpinv_item_ids', $item_ids); |
|
2210 | 2210 | } |
2211 | 2211 | |
2212 | - public function get_invoice_quote_type( $post_id ) { |
|
2213 | - if ( empty( $post_id ) ) { |
|
2212 | + public function get_invoice_quote_type($post_id) { |
|
2213 | + if (empty($post_id)) { |
|
2214 | 2214 | return ''; |
2215 | 2215 | } |
2216 | 2216 | |
2217 | - $type = get_post_type( $post_id ); |
|
2217 | + $type = get_post_type($post_id); |
|
2218 | 2218 | |
2219 | - if ( 'wpi_invoice' === $type ) { |
|
2219 | + if ('wpi_invoice' === $type) { |
|
2220 | 2220 | $post_type = __('Invoice', 'invoicing'); |
2221 | - } else{ |
|
2221 | + } else { |
|
2222 | 2222 | $post_type = __('Quote', 'invoicing'); |
2223 | 2223 | } |
2224 | 2224 |
@@ -29,7 +29,7 @@ |
||
29 | 29 | add_meta_box( 'wpinv-items', __( 'Invoice Items', 'invoicing' ), 'WPInv_Meta_Box_Items::output', 'wpi_invoice', 'normal', 'high' ); |
30 | 30 | add_meta_box( 'wpinv-notes', __( 'Invoice Notes', 'invoicing' ), 'WPInv_Meta_Box_Notes::output', 'wpi_invoice', 'normal', 'high' ); |
31 | 31 | |
32 | - remove_meta_box('wpseo_meta', 'wpi_invoice', 'normal'); |
|
32 | + remove_meta_box('wpseo_meta', 'wpi_invoice', 'normal'); |
|
33 | 33 | } |
34 | 34 | add_action( 'add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2 ); |
35 | 35 |
@@ -1,67 +1,67 @@ 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 | 32 | remove_meta_box('wpseo_meta', 'wpi_invoice', 'normal'); |
33 | 33 | } |
34 | -add_action( 'add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2 ); |
|
34 | +add_action('add_meta_boxes', 'wpinv_add_meta_boxes', 30, 2); |
|
35 | 35 | |
36 | -function wpinv_save_meta_boxes( $post_id, $post, $update = false ) { |
|
37 | - remove_action( 'save_post', __FUNCTION__ ); |
|
36 | +function wpinv_save_meta_boxes($post_id, $post, $update = false) { |
|
37 | + remove_action('save_post', __FUNCTION__); |
|
38 | 38 | |
39 | 39 | // $post_id and $post are required |
40 | - if ( empty( $post_id ) || empty( $post ) ) { |
|
40 | + if (empty($post_id) || empty($post)) { |
|
41 | 41 | return; |
42 | 42 | } |
43 | 43 | |
44 | - if ( !current_user_can( 'edit_post', $post_id ) || empty( $post->post_type ) ) { |
|
44 | + if (!current_user_can('edit_post', $post_id) || empty($post->post_type)) { |
|
45 | 45 | return; |
46 | 46 | } |
47 | 47 | |
48 | 48 | // Dont' save meta boxes for revisions or autosaves |
49 | - if ( defined( 'DOING_AUTOSAVE' ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) { |
|
49 | + if (defined('DOING_AUTOSAVE') || is_int(wp_is_post_revision($post)) || is_int(wp_is_post_autosave($post))) { |
|
50 | 50 | return; |
51 | 51 | } |
52 | 52 | |
53 | - if ( $post->post_type == 'wpi_invoice' or $post->post_type == 'wpi_quote' ) { |
|
54 | - if ( ( defined( 'DOING_AJAX') && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) { |
|
53 | + if ($post->post_type == 'wpi_invoice' or $post->post_type == 'wpi_quote') { |
|
54 | + if ((defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) { |
|
55 | 55 | return; |
56 | 56 | } |
57 | 57 | |
58 | - if ( isset( $_POST['wpinv_save_invoice'] ) && wp_verify_nonce( $_POST['wpinv_save_invoice'], 'wpinv_save_invoice' ) ) { |
|
59 | - WPInv_Meta_Box_Items::save( $post_id, $_POST, $post ); |
|
58 | + if (isset($_POST['wpinv_save_invoice']) && wp_verify_nonce($_POST['wpinv_save_invoice'], 'wpinv_save_invoice')) { |
|
59 | + WPInv_Meta_Box_Items::save($post_id, $_POST, $post); |
|
60 | 60 | } |
61 | - } else if ( $post->post_type == 'wpi_item' ) { |
|
61 | + } else if ($post->post_type == 'wpi_item') { |
|
62 | 62 | // verify nonce |
63 | - if ( isset( $_POST['wpinv_vat_meta_box_nonce'] ) && wp_verify_nonce( $_POST['wpinv_vat_meta_box_nonce'], 'wpinv_item_meta_box_save' ) ) { |
|
64 | - $fields = array(); |
|
63 | + if (isset($_POST['wpinv_vat_meta_box_nonce']) && wp_verify_nonce($_POST['wpinv_vat_meta_box_nonce'], 'wpinv_item_meta_box_save')) { |
|
64 | + $fields = array(); |
|
65 | 65 | $fields['_wpinv_price'] = 'wpinv_item_price'; |
66 | 66 | $fields['_wpinv_vat_class'] = 'wpinv_vat_class'; |
67 | 67 | $fields['_wpinv_vat_rule'] = 'wpinv_vat_rules'; |
@@ -76,96 +76,96 @@ discard block |
||
76 | 76 | $fields['_wpinv_dynamic_pricing'] = 'wpinv_name_your_price'; |
77 | 77 | $fields['_minimum_price'] = 'wpinv_minimum_price'; |
78 | 78 | |
79 | - if ( !isset( $_POST['wpinv_is_recurring'] ) ) { |
|
79 | + if (!isset($_POST['wpinv_is_recurring'])) { |
|
80 | 80 | $_POST['wpinv_is_recurring'] = 0; |
81 | 81 | } |
82 | 82 | |
83 | - if ( !isset( $_POST['wpinv_name_your_price'] ) ) { |
|
83 | + if (!isset($_POST['wpinv_name_your_price'])) { |
|
84 | 84 | $_POST['wpinv_name_your_price'] = 0; |
85 | 85 | } |
86 | 86 | |
87 | - if ( !isset( $_POST['wpinv_free_trial'] ) || empty( $_POST['wpinv_is_recurring'] ) ) { |
|
87 | + if (!isset($_POST['wpinv_free_trial']) || empty($_POST['wpinv_is_recurring'])) { |
|
88 | 88 | $_POST['wpinv_free_trial'] = 0; |
89 | 89 | } |
90 | 90 | |
91 | - foreach ( $fields as $field => $name ) { |
|
92 | - if ( isset( $_POST[ $name ] ) ) { |
|
93 | - $allowed = apply_filters( 'wpinv_item_allowed_save_meta_value', true, $field, $post_id ); |
|
91 | + foreach ($fields as $field => $name) { |
|
92 | + if (isset($_POST[$name])) { |
|
93 | + $allowed = apply_filters('wpinv_item_allowed_save_meta_value', true, $field, $post_id); |
|
94 | 94 | |
95 | - if ( !$allowed ) { |
|
95 | + if (!$allowed) { |
|
96 | 96 | continue; |
97 | 97 | } |
98 | 98 | |
99 | - if ( $field == '_wpinv_price' ) { |
|
100 | - $value = wpinv_sanitize_amount( $_POST[ $name ] ); |
|
99 | + if ($field == '_wpinv_price') { |
|
100 | + $value = wpinv_sanitize_amount($_POST[$name]); |
|
101 | 101 | } else { |
102 | - $value = is_string( $_POST[ $name ] ) ? sanitize_text_field( $_POST[ $name ] ) : $_POST[ $name ]; |
|
102 | + $value = is_string($_POST[$name]) ? sanitize_text_field($_POST[$name]) : $_POST[$name]; |
|
103 | 103 | } |
104 | 104 | |
105 | - $value = apply_filters( 'wpinv_item_metabox_save_' . $field, $value, $name ); |
|
106 | - update_post_meta( $post_id, $field, $value ); |
|
105 | + $value = apply_filters('wpinv_item_metabox_save_' . $field, $value, $name); |
|
106 | + update_post_meta($post_id, $field, $value); |
|
107 | 107 | } |
108 | 108 | } |
109 | 109 | |
110 | - if ( !get_post_meta( $post_id, '_wpinv_custom_id', true ) ) { |
|
111 | - update_post_meta( $post_id, '_wpinv_custom_id', $post_id ); |
|
110 | + if (!get_post_meta($post_id, '_wpinv_custom_id', true)) { |
|
111 | + update_post_meta($post_id, '_wpinv_custom_id', $post_id); |
|
112 | 112 | } |
113 | 113 | } |
114 | 114 | } |
115 | 115 | } |
116 | -add_action( 'save_post', 'wpinv_save_meta_boxes', 10, 3 ); |
|
116 | +add_action('save_post', 'wpinv_save_meta_boxes', 10, 3); |
|
117 | 117 | |
118 | 118 | function wpinv_register_item_meta_boxes() { |
119 | 119 | global $wpinv_euvat; |
120 | 120 | |
121 | - add_meta_box( 'wpinv_field_prices', __( 'Item Price', 'invoicing' ), 'WPInv_Meta_Box_Items::prices', 'wpi_item', 'normal', 'high' ); |
|
121 | + add_meta_box('wpinv_field_prices', __('Item Price', 'invoicing'), 'WPInv_Meta_Box_Items::prices', 'wpi_item', 'normal', 'high'); |
|
122 | 122 | |
123 | - if ( $wpinv_euvat->allow_vat_rules() ) { |
|
124 | - add_meta_box( 'wpinv_field_vat_rules', __( 'VAT rules type to use', 'invoicing' ), 'WPInv_Meta_Box_Items::vat_rules', 'wpi_item', 'normal', 'high' ); |
|
123 | + if ($wpinv_euvat->allow_vat_rules()) { |
|
124 | + add_meta_box('wpinv_field_vat_rules', __('VAT rules type to use', 'invoicing'), 'WPInv_Meta_Box_Items::vat_rules', 'wpi_item', 'normal', 'high'); |
|
125 | 125 | } |
126 | 126 | |
127 | - if ( $wpinv_euvat->allow_vat_classes() ) { |
|
128 | - add_meta_box( 'wpinv_field_vat_classes', __( 'VAT rates class to use', 'invoicing' ), 'WPInv_Meta_Box_Items::vat_classes', 'wpi_item', 'normal', 'high' ); |
|
127 | + if ($wpinv_euvat->allow_vat_classes()) { |
|
128 | + add_meta_box('wpinv_field_vat_classes', __('VAT rates class to use', 'invoicing'), 'WPInv_Meta_Box_Items::vat_classes', 'wpi_item', 'normal', 'high'); |
|
129 | 129 | } |
130 | 130 | |
131 | - add_meta_box( 'wpinv_field_item_info', __( 'Item info', 'invoicing' ), 'WPInv_Meta_Box_Items::item_info', 'wpi_item', 'side', 'core' ); |
|
132 | - add_meta_box( 'wpinv_field_meta_values', __( 'Item Meta Values', 'invoicing' ), 'WPInv_Meta_Box_Items::meta_values', 'wpi_item', 'side', 'core' ); |
|
131 | + add_meta_box('wpinv_field_item_info', __('Item info', 'invoicing'), 'WPInv_Meta_Box_Items::item_info', 'wpi_item', 'side', 'core'); |
|
132 | + add_meta_box('wpinv_field_meta_values', __('Item Meta Values', 'invoicing'), 'WPInv_Meta_Box_Items::meta_values', 'wpi_item', 'side', 'core'); |
|
133 | 133 | } |
134 | 134 | |
135 | 135 | function wpinv_register_discount_meta_boxes() { |
136 | - add_meta_box( 'wpinv_discount_fields', __( 'Discount Details', 'invoicing' ), 'wpinv_discount_metabox_details', 'wpi_discount', 'normal', 'high' ); |
|
136 | + add_meta_box('wpinv_discount_fields', __('Discount Details', 'invoicing'), 'wpinv_discount_metabox_details', 'wpi_discount', 'normal', 'high'); |
|
137 | 137 | } |
138 | 138 | |
139 | -function wpinv_discount_metabox_details( $post ) { |
|
139 | +function wpinv_discount_metabox_details($post) { |
|
140 | 140 | $discount_id = $post->ID; |
141 | - $discount = wpinv_get_discount( $discount_id ); |
|
141 | + $discount = wpinv_get_discount($discount_id); |
|
142 | 142 | |
143 | - $type = wpinv_get_discount_type( $discount_id ); |
|
144 | - $item_reqs = wpinv_get_discount_item_reqs( $discount_id ); |
|
145 | - $excluded_items = wpinv_get_discount_excluded_items( $discount_id ); |
|
146 | - $min_total = wpinv_get_discount_min_total( $discount_id ); |
|
147 | - $max_total = wpinv_get_discount_max_total( $discount_id ); |
|
148 | - $max_uses = wpinv_get_discount_max_uses( $discount_id ); |
|
149 | - $single_use = wpinv_discount_is_single_use( $discount_id ); |
|
150 | - $recurring = (bool)wpinv_discount_is_recurring( $discount_id ); |
|
151 | - $start_date = wpinv_get_discount_start_date( $discount_id ); |
|
152 | - $expiration_date = wpinv_get_discount_expiration( $discount_id ); |
|
143 | + $type = wpinv_get_discount_type($discount_id); |
|
144 | + $item_reqs = wpinv_get_discount_item_reqs($discount_id); |
|
145 | + $excluded_items = wpinv_get_discount_excluded_items($discount_id); |
|
146 | + $min_total = wpinv_get_discount_min_total($discount_id); |
|
147 | + $max_total = wpinv_get_discount_max_total($discount_id); |
|
148 | + $max_uses = wpinv_get_discount_max_uses($discount_id); |
|
149 | + $single_use = wpinv_discount_is_single_use($discount_id); |
|
150 | + $recurring = (bool) wpinv_discount_is_recurring($discount_id); |
|
151 | + $start_date = wpinv_get_discount_start_date($discount_id); |
|
152 | + $expiration_date = wpinv_get_discount_expiration($discount_id); |
|
153 | 153 | |
154 | - if ( ! empty( $start_date ) && strpos( $start_date, '0000' ) === false ) { |
|
155 | - $start_time = strtotime( $start_date ); |
|
156 | - $start_h = date_i18n( 'H', $start_time ); |
|
157 | - $start_m = date_i18n( 'i', $start_time ); |
|
158 | - $start_date = date_i18n( 'Y-m-d', $start_time ); |
|
154 | + if (!empty($start_date) && strpos($start_date, '0000') === false) { |
|
155 | + $start_time = strtotime($start_date); |
|
156 | + $start_h = date_i18n('H', $start_time); |
|
157 | + $start_m = date_i18n('i', $start_time); |
|
158 | + $start_date = date_i18n('Y-m-d', $start_time); |
|
159 | 159 | } else { |
160 | 160 | $start_h = '00'; |
161 | 161 | $start_m = '00'; |
162 | 162 | } |
163 | 163 | |
164 | - if ( ! empty( $expiration_date ) && strpos( $expiration_date, '0000' ) === false ) { |
|
165 | - $expiration_time = strtotime( $expiration_date ); |
|
166 | - $expiration_h = date_i18n( 'H', $expiration_time ); |
|
167 | - $expiration_m = date_i18n( 'i', $expiration_time ); |
|
168 | - $expiration_date = date_i18n( 'Y-m-d', $expiration_time ); |
|
164 | + if (!empty($expiration_date) && strpos($expiration_date, '0000') === false) { |
|
165 | + $expiration_time = strtotime($expiration_date); |
|
166 | + $expiration_h = date_i18n('H', $expiration_time); |
|
167 | + $expiration_m = date_i18n('i', $expiration_time); |
|
168 | + $expiration_date = date_i18n('Y-m-d', $expiration_time); |
|
169 | 169 | } else { |
170 | 170 | $expiration_h = '23'; |
171 | 171 | $expiration_m = '59'; |
@@ -175,207 +175,207 @@ discard block |
||
175 | 175 | $max_total = $max_total > 0 ? $max_total : ''; |
176 | 176 | $max_uses = $max_uses > 0 ? $max_uses : ''; |
177 | 177 | ?> |
178 | -<?php do_action( 'wpinv_discount_form_top', $post ); ?> |
|
179 | -<?php wp_nonce_field( 'wpinv_discount_metabox_nonce', 'wpinv_discount_metabox_nonce' ); ;?> |
|
178 | +<?php do_action('wpinv_discount_form_top', $post); ?> |
|
179 | +<?php wp_nonce_field('wpinv_discount_metabox_nonce', 'wpinv_discount_metabox_nonce'); ;?> |
|
180 | 180 | <table class="form-table wpi-form-table"> |
181 | 181 | <tbody> |
182 | - <?php do_action( 'wpinv_discount_form_first', $post ); ?> |
|
183 | - <?php do_action( 'wpinv_discount_form_before_code', $post ); ?> |
|
182 | + <?php do_action('wpinv_discount_form_first', $post); ?> |
|
183 | + <?php do_action('wpinv_discount_form_before_code', $post); ?> |
|
184 | 184 | <tr> |
185 | 185 | <th valign="top" scope="row"> |
186 | - <label for="wpinv_discount_code"><?php _e( 'Discount Code', 'invoicing' ); ?></label> |
|
186 | + <label for="wpinv_discount_code"><?php _e('Discount Code', 'invoicing'); ?></label> |
|
187 | 187 | </th> |
188 | 188 | <td> |
189 | - <input type="text" name="code" id="wpinv_discount_code" class="medium-text" value="<?php echo esc_attr( wpinv_get_discount_code( $discount_id ) ); ?>" required> |
|
190 | - <p class="description"><?php _e( 'Enter a code for this discount, such as 10OFF', 'invoicing' ); ?></p> |
|
189 | + <input type="text" name="code" id="wpinv_discount_code" class="medium-text" value="<?php echo esc_attr(wpinv_get_discount_code($discount_id)); ?>" required> |
|
190 | + <p class="description"><?php _e('Enter a code for this discount, such as 10OFF', 'invoicing'); ?></p> |
|
191 | 191 | </td> |
192 | 192 | </tr> |
193 | - <?php do_action( 'wpinv_discount_form_before_type', $post ); ?> |
|
193 | + <?php do_action('wpinv_discount_form_before_type', $post); ?> |
|
194 | 194 | <tr> |
195 | 195 | <th valign="top" scope="row"> |
196 | - <label for="wpinv_discount_type"><?php _e( 'Discount Type', 'invoicing' ); ?></label> |
|
196 | + <label for="wpinv_discount_type"><?php _e('Discount Type', 'invoicing'); ?></label> |
|
197 | 197 | </th> |
198 | 198 | <td> |
199 | 199 | <select id="wpinv_discount_type" name="type" class="medium-text wpi_select2"> |
200 | - <?php foreach ( wpinv_get_discount_types() as $value => $label ) { ?> |
|
201 | - <option value="<?php echo $value ;?>" <?php selected( $type, $value ); ?>><?php echo $label; ?></option> |
|
200 | + <?php foreach (wpinv_get_discount_types() as $value => $label) { ?> |
|
201 | + <option value="<?php echo $value; ?>" <?php selected($type, $value); ?>><?php echo $label; ?></option> |
|
202 | 202 | <?php } ?> |
203 | 203 | </select> |
204 | - <p class="description"><?php _e( 'The kind of discount to apply for this discount.', 'invoicing' ); ?></p> |
|
204 | + <p class="description"><?php _e('The kind of discount to apply for this discount.', 'invoicing'); ?></p> |
|
205 | 205 | </td> |
206 | 206 | </tr> |
207 | - <?php do_action( 'wpinv_discount_form_before_amount', $post ); ?> |
|
207 | + <?php do_action('wpinv_discount_form_before_amount', $post); ?> |
|
208 | 208 | <tr> |
209 | 209 | <th valign="top" scope="row"> |
210 | - <label for="wpinv_discount_amount"><?php _e( 'Amount', 'invoicing' ); ?></label> |
|
210 | + <label for="wpinv_discount_amount"><?php _e('Amount', 'invoicing'); ?></label> |
|
211 | 211 | </th> |
212 | 212 | <td> |
213 | - <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> |
|
214 | - <p style="display:none;" class="description"><?php _e( 'Enter the discount amount in USD', 'invoicing' ); ?></p> |
|
215 | - <p class="description"><?php _e( 'Enter the discount value. Ex: 10', 'invoicing' ); ?></p> |
|
213 | + <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> |
|
214 | + <p style="display:none;" class="description"><?php _e('Enter the discount amount in USD', 'invoicing'); ?></p> |
|
215 | + <p class="description"><?php _e('Enter the discount value. Ex: 10', 'invoicing'); ?></p> |
|
216 | 216 | </td> |
217 | 217 | </tr> |
218 | - <?php do_action( 'wpinv_discount_form_before_items', $post ); ?> |
|
218 | + <?php do_action('wpinv_discount_form_before_items', $post); ?> |
|
219 | 219 | <tr> |
220 | 220 | <th valign="top" scope="row"> |
221 | - <label for="wpinv_discount_items"><?php _e( 'Items', 'invoicing' ); ?></label> |
|
221 | + <label for="wpinv_discount_items"><?php _e('Items', 'invoicing'); ?></label> |
|
222 | 222 | </th> |
223 | 223 | <td> |
224 | - <p><?php echo wpinv_item_dropdown( array( |
|
224 | + <p><?php echo wpinv_item_dropdown(array( |
|
225 | 225 | 'name' => 'items[]', |
226 | 226 | 'id' => 'items', |
227 | 227 | 'selected' => $item_reqs, |
228 | 228 | 'multiple' => true, |
229 | 229 | 'class' => 'medium-text wpi_select2', |
230 | - 'placeholder' => __( 'Select one or more Items', 'invoicing' ), |
|
230 | + 'placeholder' => __('Select one or more Items', 'invoicing'), |
|
231 | 231 | 'show_recurring' => true, |
232 | - ) ); ?> |
|
232 | + )); ?> |
|
233 | 233 | </p> |
234 | - <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> |
|
234 | + <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> |
|
235 | 235 | </td> |
236 | 236 | </tr> |
237 | - <?php do_action( 'wpinv_discount_form_before_excluded_items', $post ); ?> |
|
237 | + <?php do_action('wpinv_discount_form_before_excluded_items', $post); ?> |
|
238 | 238 | <tr> |
239 | 239 | <th valign="top" scope="row"> |
240 | - <label for="wpinv_discount_excluded_items"><?php _e( 'Excluded Items', 'invoicing' ); ?></label> |
|
240 | + <label for="wpinv_discount_excluded_items"><?php _e('Excluded Items', 'invoicing'); ?></label> |
|
241 | 241 | </th> |
242 | 242 | <td> |
243 | - <p><?php echo wpinv_item_dropdown( array( |
|
243 | + <p><?php echo wpinv_item_dropdown(array( |
|
244 | 244 | 'name' => 'excluded_items[]', |
245 | 245 | 'id' => 'excluded_items', |
246 | 246 | 'selected' => $excluded_items, |
247 | 247 | 'multiple' => true, |
248 | 248 | 'class' => 'medium-text wpi_select2', |
249 | - 'placeholder' => __( 'Select one or more Items', 'invoicing' ), |
|
249 | + 'placeholder' => __('Select one or more Items', 'invoicing'), |
|
250 | 250 | 'show_recurring' => true, |
251 | - ) ); ?> |
|
251 | + )); ?> |
|
252 | 252 | </p> |
253 | - <p class="description"><?php _e( 'Items which are NOT allowed to use this discount.', 'invoicing' ); ?></p> |
|
253 | + <p class="description"><?php _e('Items which are NOT allowed to use this discount.', 'invoicing'); ?></p> |
|
254 | 254 | </td> |
255 | 255 | </tr> |
256 | - <?php do_action( 'wpinv_discount_form_before_start', $post ); ?> |
|
256 | + <?php do_action('wpinv_discount_form_before_start', $post); ?> |
|
257 | 257 | <tr> |
258 | 258 | <th valign="top" scope="row"> |
259 | - <label for="wpinv_discount_start"><?php _e( 'Start Date', 'invoicing' ); ?></label> |
|
259 | + <label for="wpinv_discount_start"><?php _e('Start Date', 'invoicing'); ?></label> |
|
260 | 260 | </th> |
261 | 261 | <td> |
262 | - <input type="text" class="w120 wpiDatepicker" id="wpinv_discount_start" data-dateFormat="yy-mm-dd" name="start" value="<?php echo esc_attr( $start_date ); ?>"> @ <select id="wpinv_discount_start_h" name="start_h"> |
|
263 | - <?php for ( $i = 0; $i <= 23; $i++ ) { $value = str_pad( $i, 2, '0', STR_PAD_LEFT ); ?> |
|
264 | - <option value="<?php echo $value;?>" <?php selected( $value, $start_h ); ?>><?php echo $value;?></option> |
|
262 | + <input type="text" class="w120 wpiDatepicker" id="wpinv_discount_start" data-dateFormat="yy-mm-dd" name="start" value="<?php echo esc_attr($start_date); ?>"> @ <select id="wpinv_discount_start_h" name="start_h"> |
|
263 | + <?php for ($i = 0; $i <= 23; $i++) { $value = str_pad($i, 2, '0', STR_PAD_LEFT); ?> |
|
264 | + <option value="<?php echo $value; ?>" <?php selected($value, $start_h); ?>><?php echo $value; ?></option> |
|
265 | 265 | <?php } ?> |
266 | 266 | </select> : <select id="wpinv_discount_start_m" name="start_m"> |
267 | - <?php for ( $i = 0; $i <= 59; $i++ ) { $value = str_pad( $i, 2, '0', STR_PAD_LEFT ); ?> |
|
268 | - <option value="<?php echo $value;?>" <?php selected( $value, $start_m ); ?>><?php echo $value;?></option> |
|
267 | + <?php for ($i = 0; $i <= 59; $i++) { $value = str_pad($i, 2, '0', STR_PAD_LEFT); ?> |
|
268 | + <option value="<?php echo $value; ?>" <?php selected($value, $start_m); ?>><?php echo $value; ?></option> |
|
269 | 269 | <?php } ?> |
270 | 270 | </select> |
271 | - <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> |
|
271 | + <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> |
|
272 | 272 | </td> |
273 | 273 | </tr> |
274 | - <?php do_action( 'wpinv_discount_form_before_expiration', $post ); ?> |
|
274 | + <?php do_action('wpinv_discount_form_before_expiration', $post); ?> |
|
275 | 275 | <tr> |
276 | 276 | <th valign="top" scope="row"> |
277 | - <label for="wpinv_discount_expiration"><?php _e( 'Expiration Date', 'invoicing' ); ?></label> |
|
277 | + <label for="wpinv_discount_expiration"><?php _e('Expiration Date', 'invoicing'); ?></label> |
|
278 | 278 | </th> |
279 | 279 | <td> |
280 | - <input type="text" class="w120 wpiDatepicker" id="wpinv_discount_expiration" data-dateFormat="yy-mm-dd" name="expiration" value="<?php echo esc_attr( $expiration_date ); ?>"> @ <select id="wpinv_discount_expiration_h" name="expiration_h"> |
|
281 | - <?php for ( $i = 0; $i <= 23; $i++ ) { $value = str_pad( $i, 2, '0', STR_PAD_LEFT ); ?> |
|
282 | - <option value="<?php echo $value;?>" <?php selected( $value, $expiration_h ); ?>><?php echo $value;?></option> |
|
280 | + <input type="text" class="w120 wpiDatepicker" id="wpinv_discount_expiration" data-dateFormat="yy-mm-dd" name="expiration" value="<?php echo esc_attr($expiration_date); ?>"> @ <select id="wpinv_discount_expiration_h" name="expiration_h"> |
|
281 | + <?php for ($i = 0; $i <= 23; $i++) { $value = str_pad($i, 2, '0', STR_PAD_LEFT); ?> |
|
282 | + <option value="<?php echo $value; ?>" <?php selected($value, $expiration_h); ?>><?php echo $value; ?></option> |
|
283 | 283 | <?php } ?> |
284 | 284 | </select> : <select id="wpinv_discount_expiration_m" name="expiration_m"> |
285 | - <?php for ( $i = 0; $i <= 59; $i++ ) { $value = str_pad( $i, 2, '0', STR_PAD_LEFT ); ?> |
|
286 | - <option value="<?php echo $value;?>" <?php selected( $value, $expiration_m ); ?>><?php echo $value;?></option> |
|
285 | + <?php for ($i = 0; $i <= 59; $i++) { $value = str_pad($i, 2, '0', STR_PAD_LEFT); ?> |
|
286 | + <option value="<?php echo $value; ?>" <?php selected($value, $expiration_m); ?>><?php echo $value; ?></option> |
|
287 | 287 | <?php } ?> |
288 | 288 | </select> |
289 | - <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> |
|
289 | + <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> |
|
290 | 290 | </td> |
291 | 291 | </tr> |
292 | - <?php do_action( 'wpinv_discount_form_before_min_total', $post ); ?> |
|
292 | + <?php do_action('wpinv_discount_form_before_min_total', $post); ?> |
|
293 | 293 | <tr> |
294 | 294 | <th valign="top" scope="row"> |
295 | - <label for="wpinv_discount_min_total"><?php _e( 'Minimum Amount', 'invoicing' ); ?></label> |
|
295 | + <label for="wpinv_discount_min_total"><?php _e('Minimum Amount', 'invoicing'); ?></label> |
|
296 | 296 | </th> |
297 | 297 | <td> |
298 | 298 | <input type="text" name="min_total" id="wpinv_discount_min_total" class="wpi-field-price wpi-price" value="<?php echo $min_total; ?>"> |
299 | - <p class="description"><?php _e( 'This allows you to set the minimum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing' ); ?></p> |
|
299 | + <p class="description"><?php _e('This allows you to set the minimum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing'); ?></p> |
|
300 | 300 | </td> |
301 | 301 | </tr> |
302 | - <?php do_action( 'wpinv_discount_form_before_max_total', $post ); ?> |
|
302 | + <?php do_action('wpinv_discount_form_before_max_total', $post); ?> |
|
303 | 303 | <tr> |
304 | 304 | <th valign="top" scope="row"> |
305 | - <label for="wpinv_discount_max_total"><?php _e( 'Maximum Amount', 'invoicing' ); ?></label> |
|
305 | + <label for="wpinv_discount_max_total"><?php _e('Maximum Amount', 'invoicing'); ?></label> |
|
306 | 306 | </th> |
307 | 307 | <td> |
308 | 308 | <input type="text" name="max_total" id="wpinv_discount_max_total" class="wpi-field-price wpi-price" value="<?php echo $max_total; ?>"> |
309 | - <p class="description"><?php _e( 'This allows you to set the maximum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing' ); ?></p> |
|
309 | + <p class="description"><?php _e('This allows you to set the maximum amount (subtotal, including taxes) allowed when using the discount.', 'invoicing'); ?></p> |
|
310 | 310 | </td> |
311 | 311 | </tr> |
312 | - <?php do_action( 'wpinv_discount_form_before_recurring', $post ); ?> |
|
312 | + <?php do_action('wpinv_discount_form_before_recurring', $post); ?> |
|
313 | 313 | <tr> |
314 | 314 | <th valign="top" scope="row"> |
315 | - <label for="wpinv_discount_recurring"><?php _e( 'For recurring apply to', 'invoicing' ); ?></label> |
|
315 | + <label for="wpinv_discount_recurring"><?php _e('For recurring apply to', 'invoicing'); ?></label> |
|
316 | 316 | </th> |
317 | 317 | <td> |
318 | 318 | <select id="wpinv_discount_recurring" name="recurring" class="medium-text wpi_select2"> |
319 | - <option value="0" <?php selected( false, $recurring ); ?>><?php _e( 'All payments', 'invoicing' ); ?></option> |
|
320 | - <option value="1" <?php selected( true, $recurring ); ?>><?php _e( 'First payment only', 'invoicing' ); ?></option> |
|
319 | + <option value="0" <?php selected(false, $recurring); ?>><?php _e('All payments', 'invoicing'); ?></option> |
|
320 | + <option value="1" <?php selected(true, $recurring); ?>><?php _e('First payment only', 'invoicing'); ?></option> |
|
321 | 321 | </select> |
322 | - <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> |
|
322 | + <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> |
|
323 | 323 | </td> |
324 | 324 | </tr> |
325 | - <?php do_action( 'wpinv_discount_form_before_max_uses', $post ); ?> |
|
325 | + <?php do_action('wpinv_discount_form_before_max_uses', $post); ?> |
|
326 | 326 | <tr> |
327 | 327 | <th valign="top" scope="row"> |
328 | - <label for="wpinv_discount_max_uses"><?php _e( 'Max Uses', 'invoicing' ); ?></label> |
|
328 | + <label for="wpinv_discount_max_uses"><?php _e('Max Uses', 'invoicing'); ?></label> |
|
329 | 329 | </th> |
330 | 330 | <td> |
331 | 331 | <input type="number" min="0" step="1" id="wpinv_discount_max_uses" name="max_uses" class="medium-text" value="<?php echo $max_uses; ?>"> |
332 | - <p class="description"><?php _e( 'The maximum number of times this discount can be used. Leave blank for unlimited.', 'invoicing' ); ?></p> |
|
332 | + <p class="description"><?php _e('The maximum number of times this discount can be used. Leave blank for unlimited.', 'invoicing'); ?></p> |
|
333 | 333 | </td> |
334 | 334 | </tr> |
335 | - <?php do_action( 'wpinv_discount_form_before_single_use', $post ); ?> |
|
335 | + <?php do_action('wpinv_discount_form_before_single_use', $post); ?> |
|
336 | 336 | <tr> |
337 | 337 | <th valign="top" scope="row"> |
338 | - <label for="wpinv_discount_single_use"><?php _e( 'Use Once Per User', 'invoicing' ); ?></label> |
|
338 | + <label for="wpinv_discount_single_use"><?php _e('Use Once Per User', 'invoicing'); ?></label> |
|
339 | 339 | </th> |
340 | 340 | <td> |
341 | - <input type="checkbox" value="1" name="single_use" id="wpinv_discount_single_use" <?php checked( true, $single_use ); ?>> |
|
342 | - <span class="description"><?php _e( 'Limit this discount to a single use per user?', 'invoicing' ); ?></span> |
|
341 | + <input type="checkbox" value="1" name="single_use" id="wpinv_discount_single_use" <?php checked(true, $single_use); ?>> |
|
342 | + <span class="description"><?php _e('Limit this discount to a single use per user?', 'invoicing'); ?></span> |
|
343 | 343 | </td> |
344 | 344 | </tr> |
345 | - <?php do_action( 'wpinv_discount_form_last', $post ); ?> |
|
345 | + <?php do_action('wpinv_discount_form_last', $post); ?> |
|
346 | 346 | </tbody> |
347 | 347 | </table> |
348 | -<?php do_action( 'wpinv_discount_form_bottom', $post ); ?> |
|
348 | +<?php do_action('wpinv_discount_form_bottom', $post); ?> |
|
349 | 349 | <?php |
350 | 350 | } |
351 | 351 | |
352 | -function wpinv_discount_metabox_save( $post_id, $post, $update = false ) { |
|
353 | - $post_type = !empty( $post ) ? $post->post_type : ''; |
|
352 | +function wpinv_discount_metabox_save($post_id, $post, $update = false) { |
|
353 | + $post_type = !empty($post) ? $post->post_type : ''; |
|
354 | 354 | |
355 | - if ( $post_type != 'wpi_discount' ) { |
|
355 | + if ($post_type != 'wpi_discount') { |
|
356 | 356 | return; |
357 | 357 | } |
358 | 358 | |
359 | - 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' ) ) ) { |
|
359 | + 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'))) { |
|
360 | 360 | return; |
361 | 361 | } |
362 | 362 | |
363 | - if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ( defined( 'DOING_AJAX') && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) { |
|
363 | + if ((defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) || (defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) { |
|
364 | 364 | return; |
365 | 365 | } |
366 | 366 | |
367 | - if ( !current_user_can( wpinv_get_capability(), $post_id ) ) { |
|
367 | + if (!current_user_can(wpinv_get_capability(), $post_id)) { |
|
368 | 368 | return; |
369 | 369 | } |
370 | 370 | |
371 | - if ( !empty( $_POST['start'] ) && isset( $_POST['start_h'] ) && isset( $_POST['start_m'] ) && $_POST['start_h'] !== '' && $_POST['start_m'] !== '' ) { |
|
371 | + if (!empty($_POST['start']) && isset($_POST['start_h']) && isset($_POST['start_m']) && $_POST['start_h'] !== '' && $_POST['start_m'] !== '') { |
|
372 | 372 | $_POST['start'] = $_POST['start'] . ' ' . $_POST['start_h'] . ':' . $_POST['start_m']; |
373 | 373 | } |
374 | 374 | |
375 | - if ( !empty( $_POST['expiration'] ) && isset( $_POST['expiration_h'] ) && isset( $_POST['expiration_m'] ) ) { |
|
375 | + if (!empty($_POST['expiration']) && isset($_POST['expiration_h']) && isset($_POST['expiration_m'])) { |
|
376 | 376 | $_POST['expiration'] = $_POST['expiration'] . ' ' . $_POST['expiration_h'] . ':' . $_POST['expiration_m']; |
377 | 377 | } |
378 | 378 | |
379 | - return wpinv_store_discount( $post_id, $_POST, $post, $update ); |
|
379 | + return wpinv_store_discount($post_id, $_POST, $post, $update); |
|
380 | 380 | } |
381 | -add_action( 'save_post', 'wpinv_discount_metabox_save', 10, 3 ); |
|
382 | 381 | \ No newline at end of file |
382 | +add_action('save_post', 'wpinv_discount_metabox_save', 10, 3); |
|
383 | 383 | \ No newline at end of file |
@@ -12,124 +12,124 @@ discard block |
||
12 | 12 | */ |
13 | 13 | class WPInv_Session_Handler extends WPInv_Session { |
14 | 14 | |
15 | - /** |
|
16 | - * Cookie name used for the session. |
|
17 | - * |
|
18 | - * @var string cookie name |
|
19 | - */ |
|
20 | - protected $_cookie; |
|
21 | - |
|
22 | - /** |
|
23 | - * Stores session expiry. |
|
24 | - * |
|
25 | - * @var int session due to expire timestamp |
|
26 | - */ |
|
27 | - protected $_session_expiring; |
|
28 | - |
|
29 | - /** |
|
30 | - * Stores session due to expire timestamp. |
|
31 | - * |
|
32 | - * @var string session expiration timestamp |
|
33 | - */ |
|
34 | - protected $_session_expiration; |
|
35 | - |
|
36 | - /** |
|
37 | - * True when the cookie exists. |
|
38 | - * |
|
39 | - * @var bool Based on whether a cookie exists. |
|
40 | - */ |
|
41 | - protected $_has_cookie = false; |
|
42 | - |
|
43 | - /** |
|
44 | - * Table name for session data. |
|
45 | - * |
|
46 | - * @var string Custom session table name |
|
47 | - */ |
|
48 | - protected $_table; |
|
49 | - |
|
50 | - /** |
|
51 | - * Constructor for the session class. |
|
52 | - */ |
|
53 | - public function __construct() { |
|
54 | - |
|
55 | - $this->_cookie = apply_filters( 'wpinv_cookie', 'wpinv_session_' . COOKIEHASH ); |
|
15 | + /** |
|
16 | + * Cookie name used for the session. |
|
17 | + * |
|
18 | + * @var string cookie name |
|
19 | + */ |
|
20 | + protected $_cookie; |
|
21 | + |
|
22 | + /** |
|
23 | + * Stores session expiry. |
|
24 | + * |
|
25 | + * @var int session due to expire timestamp |
|
26 | + */ |
|
27 | + protected $_session_expiring; |
|
28 | + |
|
29 | + /** |
|
30 | + * Stores session due to expire timestamp. |
|
31 | + * |
|
32 | + * @var string session expiration timestamp |
|
33 | + */ |
|
34 | + protected $_session_expiration; |
|
35 | + |
|
36 | + /** |
|
37 | + * True when the cookie exists. |
|
38 | + * |
|
39 | + * @var bool Based on whether a cookie exists. |
|
40 | + */ |
|
41 | + protected $_has_cookie = false; |
|
42 | + |
|
43 | + /** |
|
44 | + * Table name for session data. |
|
45 | + * |
|
46 | + * @var string Custom session table name |
|
47 | + */ |
|
48 | + protected $_table; |
|
49 | + |
|
50 | + /** |
|
51 | + * Constructor for the session class. |
|
52 | + */ |
|
53 | + public function __construct() { |
|
54 | + |
|
55 | + $this->_cookie = apply_filters( 'wpinv_cookie', 'wpinv_session_' . COOKIEHASH ); |
|
56 | 56 | add_action( 'init', array( $this, 'init' ), -1 ); |
57 | - add_action( 'wp_logout', array( $this, 'destroy_session' ) ); |
|
58 | - add_action( 'wp', array( $this, 'set_customer_session_cookie' ), 10 ); |
|
59 | - add_action( 'shutdown', array( $this, 'save_data' ), 20 ); |
|
60 | - } |
|
61 | - |
|
62 | - /** |
|
63 | - * Init hooks and session data. |
|
64 | - * |
|
65 | - * @since 3.3.0 |
|
66 | - */ |
|
67 | - public function init() { |
|
68 | - $this->init_session_cookie(); |
|
69 | - |
|
70 | - if ( ! is_user_logged_in() ) { |
|
71 | - add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ) ); |
|
72 | - } |
|
73 | - } |
|
74 | - |
|
75 | - /** |
|
76 | - * Setup cookie and customer ID. |
|
77 | - * |
|
78 | - * @since 3.6.0 |
|
79 | - */ |
|
80 | - public function init_session_cookie() { |
|
81 | - $cookie = $this->get_session_cookie(); |
|
82 | - |
|
83 | - if ( $cookie ) { |
|
84 | - $this->_customer_id = $cookie[0]; |
|
85 | - $this->_session_expiration = $cookie[1]; |
|
86 | - $this->_session_expiring = $cookie[2]; |
|
87 | - $this->_has_cookie = true; |
|
88 | - $this->_data = $this->get_session_data(); |
|
89 | - |
|
90 | - // If the user logs in, update session. |
|
91 | - if ( is_user_logged_in() && get_current_user_id() != $this->_customer_id ) { |
|
92 | - $this->_customer_id = get_current_user_id(); |
|
93 | - $this->_dirty = true; |
|
94 | - $this->save_data(); |
|
95 | - $this->set_customer_session_cookie( true ); |
|
96 | - } |
|
97 | - |
|
98 | - // Update session if its close to expiring. |
|
99 | - if ( time() > $this->_session_expiring ) { |
|
100 | - $this->set_session_expiration(); |
|
101 | - $this->update_session_timestamp( $this->_customer_id, $this->_session_expiration ); |
|
102 | - } |
|
103 | - } else { |
|
104 | - $this->set_session_expiration(); |
|
105 | - $this->_customer_id = $this->generate_customer_id(); |
|
106 | - $this->_data = $this->get_session_data(); |
|
107 | - } |
|
108 | - } |
|
109 | - |
|
110 | - /** |
|
111 | - * Sets the session cookie on-demand (usually after adding an item to the cart). |
|
112 | - * |
|
113 | - * Since the cookie name (as of 2.1) is prepended with wp, cache systems like batcache will not cache pages when set. |
|
114 | - * |
|
115 | - * Warning: Cookies will only be set if this is called before the headers are sent. |
|
116 | - * |
|
117 | - * @param bool $set Should the session cookie be set. |
|
118 | - */ |
|
119 | - public function set_customer_session_cookie( $set ) { |
|
120 | - if ( $set ) { |
|
121 | - $to_hash = $this->_customer_id . '|' . $this->_session_expiration; |
|
122 | - $cookie_hash = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) ); |
|
123 | - $cookie_value = $this->_customer_id . '||' . $this->_session_expiration . '||' . $this->_session_expiring . '||' . $cookie_hash; |
|
124 | - $this->_has_cookie = true; |
|
125 | - |
|
126 | - if ( ! isset( $_COOKIE[ $this->_cookie ] ) || $_COOKIE[ $this->_cookie ] !== $cookie_value ) { |
|
127 | - $this->setcookie( $this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true ); |
|
128 | - } |
|
129 | - } |
|
130 | - } |
|
131 | - |
|
132 | - public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){ |
|
57 | + add_action( 'wp_logout', array( $this, 'destroy_session' ) ); |
|
58 | + add_action( 'wp', array( $this, 'set_customer_session_cookie' ), 10 ); |
|
59 | + add_action( 'shutdown', array( $this, 'save_data' ), 20 ); |
|
60 | + } |
|
61 | + |
|
62 | + /** |
|
63 | + * Init hooks and session data. |
|
64 | + * |
|
65 | + * @since 3.3.0 |
|
66 | + */ |
|
67 | + public function init() { |
|
68 | + $this->init_session_cookie(); |
|
69 | + |
|
70 | + if ( ! is_user_logged_in() ) { |
|
71 | + add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ) ); |
|
72 | + } |
|
73 | + } |
|
74 | + |
|
75 | + /** |
|
76 | + * Setup cookie and customer ID. |
|
77 | + * |
|
78 | + * @since 3.6.0 |
|
79 | + */ |
|
80 | + public function init_session_cookie() { |
|
81 | + $cookie = $this->get_session_cookie(); |
|
82 | + |
|
83 | + if ( $cookie ) { |
|
84 | + $this->_customer_id = $cookie[0]; |
|
85 | + $this->_session_expiration = $cookie[1]; |
|
86 | + $this->_session_expiring = $cookie[2]; |
|
87 | + $this->_has_cookie = true; |
|
88 | + $this->_data = $this->get_session_data(); |
|
89 | + |
|
90 | + // If the user logs in, update session. |
|
91 | + if ( is_user_logged_in() && get_current_user_id() != $this->_customer_id ) { |
|
92 | + $this->_customer_id = get_current_user_id(); |
|
93 | + $this->_dirty = true; |
|
94 | + $this->save_data(); |
|
95 | + $this->set_customer_session_cookie( true ); |
|
96 | + } |
|
97 | + |
|
98 | + // Update session if its close to expiring. |
|
99 | + if ( time() > $this->_session_expiring ) { |
|
100 | + $this->set_session_expiration(); |
|
101 | + $this->update_session_timestamp( $this->_customer_id, $this->_session_expiration ); |
|
102 | + } |
|
103 | + } else { |
|
104 | + $this->set_session_expiration(); |
|
105 | + $this->_customer_id = $this->generate_customer_id(); |
|
106 | + $this->_data = $this->get_session_data(); |
|
107 | + } |
|
108 | + } |
|
109 | + |
|
110 | + /** |
|
111 | + * Sets the session cookie on-demand (usually after adding an item to the cart). |
|
112 | + * |
|
113 | + * Since the cookie name (as of 2.1) is prepended with wp, cache systems like batcache will not cache pages when set. |
|
114 | + * |
|
115 | + * Warning: Cookies will only be set if this is called before the headers are sent. |
|
116 | + * |
|
117 | + * @param bool $set Should the session cookie be set. |
|
118 | + */ |
|
119 | + public function set_customer_session_cookie( $set ) { |
|
120 | + if ( $set ) { |
|
121 | + $to_hash = $this->_customer_id . '|' . $this->_session_expiration; |
|
122 | + $cookie_hash = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) ); |
|
123 | + $cookie_value = $this->_customer_id . '||' . $this->_session_expiration . '||' . $this->_session_expiring . '||' . $cookie_hash; |
|
124 | + $this->_has_cookie = true; |
|
125 | + |
|
126 | + if ( ! isset( $_COOKIE[ $this->_cookie ] ) || $_COOKIE[ $this->_cookie ] !== $cookie_value ) { |
|
127 | + $this->setcookie( $this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true ); |
|
128 | + } |
|
129 | + } |
|
130 | + } |
|
131 | + |
|
132 | + public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){ |
|
133 | 133 | if ( ! headers_sent() ) { |
134 | 134 | setcookie( $name, $value, $expire, COOKIEPATH ? COOKIEPATH : '/', COOKIE_DOMAIN, $secure, apply_filters( 'wpinv_cookie_httponly', $httponly, $name, $value, $expire, $secure ) ); |
135 | 135 | } elseif ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { |
@@ -138,96 +138,96 @@ discard block |
||
138 | 138 | } |
139 | 139 | } |
140 | 140 | |
141 | - /** |
|
142 | - * Should the session cookie be secure? |
|
143 | - * |
|
144 | - * @since 3.6.0 |
|
145 | - * @return bool |
|
146 | - */ |
|
147 | - protected function use_secure_cookie() { |
|
141 | + /** |
|
142 | + * Should the session cookie be secure? |
|
143 | + * |
|
144 | + * @since 3.6.0 |
|
145 | + * @return bool |
|
146 | + */ |
|
147 | + protected function use_secure_cookie() { |
|
148 | 148 | $is_https = false !== strstr( get_option( 'home' ), 'https:' ); |
149 | - return apply_filters( 'wpinv_session_use_secure_cookie', $is_https && is_ssl() ); |
|
150 | - } |
|
151 | - |
|
152 | - /** |
|
153 | - * Return true if the current user has an active session, i.e. a cookie to retrieve values. |
|
154 | - * |
|
155 | - * @return bool |
|
156 | - */ |
|
157 | - public function has_session() { |
|
158 | - return isset( $_COOKIE[ $this->_cookie ] ) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine. |
|
159 | - } |
|
160 | - |
|
161 | - /** |
|
162 | - * Set session expiration. |
|
163 | - */ |
|
164 | - public function set_session_expiration() { |
|
165 | - $this->_session_expiring = time() + intval( apply_filters( 'wpinv_session_expiring', 60 * 60 * 47 ) ); // 47 Hours. |
|
166 | - $this->_session_expiration = time() + intval( apply_filters( 'wpinv_session_expiration', 60 * 60 * 48 ) ); // 48 Hours. |
|
167 | - } |
|
168 | - |
|
169 | - /** |
|
170 | - * Generate a unique customer ID for guests, or return user ID if logged in. |
|
171 | - * |
|
172 | - * Uses Portable PHP password hashing framework to generate a unique cryptographically strong ID. |
|
173 | - * |
|
174 | - * @return string |
|
175 | - */ |
|
176 | - public function generate_customer_id() { |
|
177 | - $customer_id = ''; |
|
178 | - |
|
179 | - if ( is_user_logged_in() ) { |
|
180 | - $customer_id = get_current_user_id(); |
|
181 | - } |
|
182 | - |
|
183 | - if ( empty( $customer_id ) ) { |
|
149 | + return apply_filters( 'wpinv_session_use_secure_cookie', $is_https && is_ssl() ); |
|
150 | + } |
|
151 | + |
|
152 | + /** |
|
153 | + * Return true if the current user has an active session, i.e. a cookie to retrieve values. |
|
154 | + * |
|
155 | + * @return bool |
|
156 | + */ |
|
157 | + public function has_session() { |
|
158 | + return isset( $_COOKIE[ $this->_cookie ] ) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine. |
|
159 | + } |
|
160 | + |
|
161 | + /** |
|
162 | + * Set session expiration. |
|
163 | + */ |
|
164 | + public function set_session_expiration() { |
|
165 | + $this->_session_expiring = time() + intval( apply_filters( 'wpinv_session_expiring', 60 * 60 * 47 ) ); // 47 Hours. |
|
166 | + $this->_session_expiration = time() + intval( apply_filters( 'wpinv_session_expiration', 60 * 60 * 48 ) ); // 48 Hours. |
|
167 | + } |
|
168 | + |
|
169 | + /** |
|
170 | + * Generate a unique customer ID for guests, or return user ID if logged in. |
|
171 | + * |
|
172 | + * Uses Portable PHP password hashing framework to generate a unique cryptographically strong ID. |
|
173 | + * |
|
174 | + * @return string |
|
175 | + */ |
|
176 | + public function generate_customer_id() { |
|
177 | + $customer_id = ''; |
|
178 | + |
|
179 | + if ( is_user_logged_in() ) { |
|
180 | + $customer_id = get_current_user_id(); |
|
181 | + } |
|
182 | + |
|
183 | + if ( empty( $customer_id ) ) { |
|
184 | 184 | $customer_id = wp_create_nonce('wpinv-session-customer-id'); |
185 | - } |
|
186 | - |
|
187 | - return $customer_id; |
|
188 | - } |
|
189 | - |
|
190 | - /** |
|
191 | - * Get the session cookie, if set. Otherwise return false. |
|
192 | - * |
|
193 | - * Session cookies without a customer ID are invalid. |
|
194 | - * |
|
195 | - * @return bool|array |
|
196 | - */ |
|
197 | - public function get_session_cookie() { |
|
198 | - $cookie_value = isset( $_COOKIE[ $this->_cookie ] ) ? wp_unslash( $_COOKIE[ $this->_cookie ] ) : false; // @codingStandardsIgnoreLine. |
|
199 | - |
|
200 | - if ( empty( $cookie_value ) || ! is_string( $cookie_value ) ) { |
|
201 | - return false; |
|
202 | - } |
|
203 | - |
|
204 | - list( $customer_id, $session_expiration, $session_expiring, $cookie_hash ) = explode( '||', $cookie_value ); |
|
205 | - |
|
206 | - if ( empty( $customer_id ) ) { |
|
207 | - return false; |
|
208 | - } |
|
209 | - |
|
210 | - // Validate hash. |
|
211 | - $to_hash = $customer_id . '|' . $session_expiration; |
|
212 | - $hash = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) ); |
|
213 | - |
|
214 | - if ( empty( $cookie_hash ) || ! hash_equals( $hash, $cookie_hash ) ) { |
|
215 | - return false; |
|
216 | - } |
|
217 | - |
|
218 | - return array( $customer_id, $session_expiration, $session_expiring, $cookie_hash ); |
|
219 | - } |
|
220 | - |
|
221 | - /** |
|
222 | - * Get session data. |
|
223 | - * |
|
224 | - * @return array |
|
225 | - */ |
|
226 | - public function get_session_data() { |
|
227 | - return $this->has_session() ? (array) $this->get_session( $this->_customer_id ) : array(); |
|
228 | - } |
|
229 | - |
|
230 | - public function generate_key($customer_id){ |
|
185 | + } |
|
186 | + |
|
187 | + return $customer_id; |
|
188 | + } |
|
189 | + |
|
190 | + /** |
|
191 | + * Get the session cookie, if set. Otherwise return false. |
|
192 | + * |
|
193 | + * Session cookies without a customer ID are invalid. |
|
194 | + * |
|
195 | + * @return bool|array |
|
196 | + */ |
|
197 | + public function get_session_cookie() { |
|
198 | + $cookie_value = isset( $_COOKIE[ $this->_cookie ] ) ? wp_unslash( $_COOKIE[ $this->_cookie ] ) : false; // @codingStandardsIgnoreLine. |
|
199 | + |
|
200 | + if ( empty( $cookie_value ) || ! is_string( $cookie_value ) ) { |
|
201 | + return false; |
|
202 | + } |
|
203 | + |
|
204 | + list( $customer_id, $session_expiration, $session_expiring, $cookie_hash ) = explode( '||', $cookie_value ); |
|
205 | + |
|
206 | + if ( empty( $customer_id ) ) { |
|
207 | + return false; |
|
208 | + } |
|
209 | + |
|
210 | + // Validate hash. |
|
211 | + $to_hash = $customer_id . '|' . $session_expiration; |
|
212 | + $hash = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) ); |
|
213 | + |
|
214 | + if ( empty( $cookie_hash ) || ! hash_equals( $hash, $cookie_hash ) ) { |
|
215 | + return false; |
|
216 | + } |
|
217 | + |
|
218 | + return array( $customer_id, $session_expiration, $session_expiring, $cookie_hash ); |
|
219 | + } |
|
220 | + |
|
221 | + /** |
|
222 | + * Get session data. |
|
223 | + * |
|
224 | + * @return array |
|
225 | + */ |
|
226 | + public function get_session_data() { |
|
227 | + return $this->has_session() ? (array) $this->get_session( $this->_customer_id ) : array(); |
|
228 | + } |
|
229 | + |
|
230 | + public function generate_key($customer_id){ |
|
231 | 231 | if(!$customer_id){ |
232 | 232 | return; |
233 | 233 | } |
@@ -235,62 +235,62 @@ discard block |
||
235 | 235 | return 'wpi_trans_'.$customer_id; |
236 | 236 | } |
237 | 237 | |
238 | - /** |
|
239 | - * Save data. |
|
240 | - */ |
|
241 | - public function save_data() { |
|
242 | - // Dirty if something changed - prevents saving nothing new. |
|
243 | - if ( $this->_dirty && $this->has_session() ) { |
|
238 | + /** |
|
239 | + * Save data. |
|
240 | + */ |
|
241 | + public function save_data() { |
|
242 | + // Dirty if something changed - prevents saving nothing new. |
|
243 | + if ( $this->_dirty && $this->has_session() ) { |
|
244 | 244 | |
245 | 245 | set_transient( $this->generate_key($this->_customer_id), $this->_data, $this->_session_expiration); |
246 | 246 | |
247 | - $this->_dirty = false; |
|
248 | - } |
|
249 | - } |
|
250 | - |
|
251 | - /** |
|
252 | - * Destroy all session data. |
|
253 | - */ |
|
254 | - public function destroy_session() { |
|
255 | - $this->delete_session( $this->_customer_id ); |
|
256 | - $this->forget_session(); |
|
257 | - } |
|
258 | - |
|
259 | - /** |
|
260 | - * Forget all session data without destroying it. |
|
261 | - */ |
|
262 | - public function forget_session() { |
|
263 | - $this->setcookie( $this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true ); |
|
264 | - |
|
265 | - wpinv_empty_cart(); |
|
266 | - |
|
267 | - $this->_data = array(); |
|
268 | - $this->_dirty = false; |
|
269 | - $this->_customer_id = $this->generate_customer_id(); |
|
270 | - } |
|
271 | - |
|
272 | - /** |
|
273 | - * When a user is logged out, ensure they have a unique nonce by using the customer/session ID. |
|
274 | - * |
|
275 | - * @param int $uid User ID. |
|
276 | - * @return string |
|
277 | - */ |
|
278 | - public function nonce_user_logged_out( $uid ) { |
|
279 | - return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid; |
|
280 | - } |
|
281 | - |
|
282 | - /** |
|
283 | - * Returns the session. |
|
284 | - * |
|
285 | - * @param string $customer_id Customer ID. |
|
286 | - * @param mixed $default Default session value. |
|
287 | - * @return string|array |
|
288 | - */ |
|
289 | - public function get_session( $customer_id, $default = false ) { |
|
290 | - |
|
291 | - if ( defined( 'WP_SETUP_CONFIG' ) ) { |
|
292 | - return array(); |
|
293 | - } |
|
247 | + $this->_dirty = false; |
|
248 | + } |
|
249 | + } |
|
250 | + |
|
251 | + /** |
|
252 | + * Destroy all session data. |
|
253 | + */ |
|
254 | + public function destroy_session() { |
|
255 | + $this->delete_session( $this->_customer_id ); |
|
256 | + $this->forget_session(); |
|
257 | + } |
|
258 | + |
|
259 | + /** |
|
260 | + * Forget all session data without destroying it. |
|
261 | + */ |
|
262 | + public function forget_session() { |
|
263 | + $this->setcookie( $this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true ); |
|
264 | + |
|
265 | + wpinv_empty_cart(); |
|
266 | + |
|
267 | + $this->_data = array(); |
|
268 | + $this->_dirty = false; |
|
269 | + $this->_customer_id = $this->generate_customer_id(); |
|
270 | + } |
|
271 | + |
|
272 | + /** |
|
273 | + * When a user is logged out, ensure they have a unique nonce by using the customer/session ID. |
|
274 | + * |
|
275 | + * @param int $uid User ID. |
|
276 | + * @return string |
|
277 | + */ |
|
278 | + public function nonce_user_logged_out( $uid ) { |
|
279 | + return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid; |
|
280 | + } |
|
281 | + |
|
282 | + /** |
|
283 | + * Returns the session. |
|
284 | + * |
|
285 | + * @param string $customer_id Customer ID. |
|
286 | + * @param mixed $default Default session value. |
|
287 | + * @return string|array |
|
288 | + */ |
|
289 | + public function get_session( $customer_id, $default = false ) { |
|
290 | + |
|
291 | + if ( defined( 'WP_SETUP_CONFIG' ) ) { |
|
292 | + return array(); |
|
293 | + } |
|
294 | 294 | |
295 | 295 | if ( !is_user_logged_in() ) { |
296 | 296 | if(!wp_verify_nonce( $customer_id, 'wpinv-session-customer-id' )){ |
@@ -305,32 +305,32 @@ discard block |
||
305 | 305 | $value = $default; |
306 | 306 | } |
307 | 307 | |
308 | - return maybe_unserialize( $value ); |
|
309 | - } |
|
308 | + return maybe_unserialize( $value ); |
|
309 | + } |
|
310 | 310 | |
311 | - /** |
|
312 | - * Delete the session from the cache and database. |
|
313 | - * |
|
314 | - * @param int $customer_id Customer ID. |
|
315 | - */ |
|
316 | - public function delete_session( $customer_id ) { |
|
311 | + /** |
|
312 | + * Delete the session from the cache and database. |
|
313 | + * |
|
314 | + * @param int $customer_id Customer ID. |
|
315 | + */ |
|
316 | + public function delete_session( $customer_id ) { |
|
317 | 317 | |
318 | 318 | $key = $this->generate_key($customer_id); |
319 | 319 | |
320 | - delete_transient($key); |
|
321 | - } |
|
320 | + delete_transient($key); |
|
321 | + } |
|
322 | 322 | |
323 | - /** |
|
324 | - * Update the session expiry timestamp. |
|
325 | - * |
|
326 | - * @param string $customer_id Customer ID. |
|
327 | - * @param int $timestamp Timestamp to expire the cookie. |
|
328 | - */ |
|
329 | - public function update_session_timestamp( $customer_id, $timestamp ) { |
|
323 | + /** |
|
324 | + * Update the session expiry timestamp. |
|
325 | + * |
|
326 | + * @param string $customer_id Customer ID. |
|
327 | + * @param int $timestamp Timestamp to expire the cookie. |
|
328 | + */ |
|
329 | + public function update_session_timestamp( $customer_id, $timestamp ) { |
|
330 | 330 | |
331 | 331 | set_transient( $this->generate_key($customer_id), maybe_serialize( $this->_data ), $timestamp); |
332 | 332 | |
333 | - } |
|
333 | + } |
|
334 | 334 | } |
335 | 335 | |
336 | 336 | global $wpi_session; |
@@ -5,7 +5,7 @@ discard block |
||
5 | 5 | * |
6 | 6 | */ |
7 | 7 | |
8 | -defined( 'ABSPATH' ) || exit; |
|
8 | +defined('ABSPATH') || exit; |
|
9 | 9 | |
10 | 10 | /** |
11 | 11 | * Session handler class. |
@@ -52,11 +52,11 @@ discard block |
||
52 | 52 | */ |
53 | 53 | public function __construct() { |
54 | 54 | |
55 | - $this->_cookie = apply_filters( 'wpinv_cookie', 'wpinv_session_' . COOKIEHASH ); |
|
56 | - add_action( 'init', array( $this, 'init' ), -1 ); |
|
57 | - add_action( 'wp_logout', array( $this, 'destroy_session' ) ); |
|
58 | - add_action( 'wp', array( $this, 'set_customer_session_cookie' ), 10 ); |
|
59 | - add_action( 'shutdown', array( $this, 'save_data' ), 20 ); |
|
55 | + $this->_cookie = apply_filters('wpinv_cookie', 'wpinv_session_' . COOKIEHASH); |
|
56 | + add_action('init', array($this, 'init'), -1); |
|
57 | + add_action('wp_logout', array($this, 'destroy_session')); |
|
58 | + add_action('wp', array($this, 'set_customer_session_cookie'), 10); |
|
59 | + add_action('shutdown', array($this, 'save_data'), 20); |
|
60 | 60 | } |
61 | 61 | |
62 | 62 | /** |
@@ -67,8 +67,8 @@ discard block |
||
67 | 67 | public function init() { |
68 | 68 | $this->init_session_cookie(); |
69 | 69 | |
70 | - if ( ! is_user_logged_in() ) { |
|
71 | - add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ) ); |
|
70 | + if (!is_user_logged_in()) { |
|
71 | + add_filter('nonce_user_logged_out', array($this, 'nonce_user_logged_out')); |
|
72 | 72 | } |
73 | 73 | } |
74 | 74 | |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | public function init_session_cookie() { |
81 | 81 | $cookie = $this->get_session_cookie(); |
82 | 82 | |
83 | - if ( $cookie ) { |
|
83 | + if ($cookie) { |
|
84 | 84 | $this->_customer_id = $cookie[0]; |
85 | 85 | $this->_session_expiration = $cookie[1]; |
86 | 86 | $this->_session_expiring = $cookie[2]; |
@@ -88,17 +88,17 @@ discard block |
||
88 | 88 | $this->_data = $this->get_session_data(); |
89 | 89 | |
90 | 90 | // If the user logs in, update session. |
91 | - if ( is_user_logged_in() && get_current_user_id() != $this->_customer_id ) { |
|
91 | + if (is_user_logged_in() && get_current_user_id() != $this->_customer_id) { |
|
92 | 92 | $this->_customer_id = get_current_user_id(); |
93 | 93 | $this->_dirty = true; |
94 | 94 | $this->save_data(); |
95 | - $this->set_customer_session_cookie( true ); |
|
95 | + $this->set_customer_session_cookie(true); |
|
96 | 96 | } |
97 | 97 | |
98 | 98 | // Update session if its close to expiring. |
99 | - if ( time() > $this->_session_expiring ) { |
|
99 | + if (time() > $this->_session_expiring) { |
|
100 | 100 | $this->set_session_expiration(); |
101 | - $this->update_session_timestamp( $this->_customer_id, $this->_session_expiration ); |
|
101 | + $this->update_session_timestamp($this->_customer_id, $this->_session_expiration); |
|
102 | 102 | } |
103 | 103 | } else { |
104 | 104 | $this->set_session_expiration(); |
@@ -116,25 +116,25 @@ discard block |
||
116 | 116 | * |
117 | 117 | * @param bool $set Should the session cookie be set. |
118 | 118 | */ |
119 | - public function set_customer_session_cookie( $set ) { |
|
120 | - if ( $set ) { |
|
119 | + public function set_customer_session_cookie($set) { |
|
120 | + if ($set) { |
|
121 | 121 | $to_hash = $this->_customer_id . '|' . $this->_session_expiration; |
122 | - $cookie_hash = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) ); |
|
122 | + $cookie_hash = hash_hmac('md5', $to_hash, wp_hash($to_hash)); |
|
123 | 123 | $cookie_value = $this->_customer_id . '||' . $this->_session_expiration . '||' . $this->_session_expiring . '||' . $cookie_hash; |
124 | 124 | $this->_has_cookie = true; |
125 | 125 | |
126 | - if ( ! isset( $_COOKIE[ $this->_cookie ] ) || $_COOKIE[ $this->_cookie ] !== $cookie_value ) { |
|
127 | - $this->setcookie( $this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true ); |
|
126 | + if (!isset($_COOKIE[$this->_cookie]) || $_COOKIE[$this->_cookie] !== $cookie_value) { |
|
127 | + $this->setcookie($this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true); |
|
128 | 128 | } |
129 | 129 | } |
130 | 130 | } |
131 | 131 | |
132 | - public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){ |
|
133 | - if ( ! headers_sent() ) { |
|
134 | - setcookie( $name, $value, $expire, COOKIEPATH ? COOKIEPATH : '/', COOKIE_DOMAIN, $secure, apply_filters( 'wpinv_cookie_httponly', $httponly, $name, $value, $expire, $secure ) ); |
|
135 | - } elseif ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { |
|
136 | - headers_sent( $file, $line ); |
|
137 | - trigger_error( "{$name} cookie cannot be set - headers already sent by {$file} on line {$line}", E_USER_NOTICE ); // @codingStandardsIgnoreLine |
|
132 | + public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false) { |
|
133 | + if (!headers_sent()) { |
|
134 | + setcookie($name, $value, $expire, COOKIEPATH ? COOKIEPATH : '/', COOKIE_DOMAIN, $secure, apply_filters('wpinv_cookie_httponly', $httponly, $name, $value, $expire, $secure)); |
|
135 | + } elseif (defined('WP_DEBUG') && WP_DEBUG) { |
|
136 | + headers_sent($file, $line); |
|
137 | + trigger_error("{$name} cookie cannot be set - headers already sent by {$file} on line {$line}", E_USER_NOTICE); // @codingStandardsIgnoreLine |
|
138 | 138 | } |
139 | 139 | } |
140 | 140 | |
@@ -145,8 +145,8 @@ discard block |
||
145 | 145 | * @return bool |
146 | 146 | */ |
147 | 147 | protected function use_secure_cookie() { |
148 | - $is_https = false !== strstr( get_option( 'home' ), 'https:' ); |
|
149 | - return apply_filters( 'wpinv_session_use_secure_cookie', $is_https && is_ssl() ); |
|
148 | + $is_https = false !== strstr(get_option('home'), 'https:'); |
|
149 | + return apply_filters('wpinv_session_use_secure_cookie', $is_https && is_ssl()); |
|
150 | 150 | } |
151 | 151 | |
152 | 152 | /** |
@@ -155,15 +155,15 @@ discard block |
||
155 | 155 | * @return bool |
156 | 156 | */ |
157 | 157 | public function has_session() { |
158 | - return isset( $_COOKIE[ $this->_cookie ] ) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine. |
|
158 | + return isset($_COOKIE[$this->_cookie]) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine. |
|
159 | 159 | } |
160 | 160 | |
161 | 161 | /** |
162 | 162 | * Set session expiration. |
163 | 163 | */ |
164 | 164 | public function set_session_expiration() { |
165 | - $this->_session_expiring = time() + intval( apply_filters( 'wpinv_session_expiring', 60 * 60 * 47 ) ); // 47 Hours. |
|
166 | - $this->_session_expiration = time() + intval( apply_filters( 'wpinv_session_expiration', 60 * 60 * 48 ) ); // 48 Hours. |
|
165 | + $this->_session_expiring = time() + intval(apply_filters('wpinv_session_expiring', 60 * 60 * 47)); // 47 Hours. |
|
166 | + $this->_session_expiration = time() + intval(apply_filters('wpinv_session_expiration', 60 * 60 * 48)); // 48 Hours. |
|
167 | 167 | } |
168 | 168 | |
169 | 169 | /** |
@@ -176,11 +176,11 @@ discard block |
||
176 | 176 | public function generate_customer_id() { |
177 | 177 | $customer_id = ''; |
178 | 178 | |
179 | - if ( is_user_logged_in() ) { |
|
179 | + if (is_user_logged_in()) { |
|
180 | 180 | $customer_id = get_current_user_id(); |
181 | 181 | } |
182 | 182 | |
183 | - if ( empty( $customer_id ) ) { |
|
183 | + if (empty($customer_id)) { |
|
184 | 184 | $customer_id = wp_create_nonce('wpinv-session-customer-id'); |
185 | 185 | } |
186 | 186 | |
@@ -195,27 +195,27 @@ discard block |
||
195 | 195 | * @return bool|array |
196 | 196 | */ |
197 | 197 | public function get_session_cookie() { |
198 | - $cookie_value = isset( $_COOKIE[ $this->_cookie ] ) ? wp_unslash( $_COOKIE[ $this->_cookie ] ) : false; // @codingStandardsIgnoreLine. |
|
198 | + $cookie_value = isset($_COOKIE[$this->_cookie]) ? wp_unslash($_COOKIE[$this->_cookie]) : false; // @codingStandardsIgnoreLine. |
|
199 | 199 | |
200 | - if ( empty( $cookie_value ) || ! is_string( $cookie_value ) ) { |
|
200 | + if (empty($cookie_value) || !is_string($cookie_value)) { |
|
201 | 201 | return false; |
202 | 202 | } |
203 | 203 | |
204 | - list( $customer_id, $session_expiration, $session_expiring, $cookie_hash ) = explode( '||', $cookie_value ); |
|
204 | + list($customer_id, $session_expiration, $session_expiring, $cookie_hash) = explode('||', $cookie_value); |
|
205 | 205 | |
206 | - if ( empty( $customer_id ) ) { |
|
206 | + if (empty($customer_id)) { |
|
207 | 207 | return false; |
208 | 208 | } |
209 | 209 | |
210 | 210 | // Validate hash. |
211 | 211 | $to_hash = $customer_id . '|' . $session_expiration; |
212 | - $hash = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) ); |
|
212 | + $hash = hash_hmac('md5', $to_hash, wp_hash($to_hash)); |
|
213 | 213 | |
214 | - if ( empty( $cookie_hash ) || ! hash_equals( $hash, $cookie_hash ) ) { |
|
214 | + if (empty($cookie_hash) || !hash_equals($hash, $cookie_hash)) { |
|
215 | 215 | return false; |
216 | 216 | } |
217 | 217 | |
218 | - return array( $customer_id, $session_expiration, $session_expiring, $cookie_hash ); |
|
218 | + return array($customer_id, $session_expiration, $session_expiring, $cookie_hash); |
|
219 | 219 | } |
220 | 220 | |
221 | 221 | /** |
@@ -224,15 +224,15 @@ discard block |
||
224 | 224 | * @return array |
225 | 225 | */ |
226 | 226 | public function get_session_data() { |
227 | - return $this->has_session() ? (array) $this->get_session( $this->_customer_id ) : array(); |
|
227 | + return $this->has_session() ? (array) $this->get_session($this->_customer_id) : array(); |
|
228 | 228 | } |
229 | 229 | |
230 | - public function generate_key($customer_id){ |
|
231 | - if(!$customer_id){ |
|
230 | + public function generate_key($customer_id) { |
|
231 | + if (!$customer_id) { |
|
232 | 232 | return; |
233 | 233 | } |
234 | 234 | |
235 | - return 'wpi_trans_'.$customer_id; |
|
235 | + return 'wpi_trans_' . $customer_id; |
|
236 | 236 | } |
237 | 237 | |
238 | 238 | /** |
@@ -240,9 +240,9 @@ discard block |
||
240 | 240 | */ |
241 | 241 | public function save_data() { |
242 | 242 | // Dirty if something changed - prevents saving nothing new. |
243 | - if ( $this->_dirty && $this->has_session() ) { |
|
243 | + if ($this->_dirty && $this->has_session()) { |
|
244 | 244 | |
245 | - set_transient( $this->generate_key($this->_customer_id), $this->_data, $this->_session_expiration); |
|
245 | + set_transient($this->generate_key($this->_customer_id), $this->_data, $this->_session_expiration); |
|
246 | 246 | |
247 | 247 | $this->_dirty = false; |
248 | 248 | } |
@@ -252,7 +252,7 @@ discard block |
||
252 | 252 | * Destroy all session data. |
253 | 253 | */ |
254 | 254 | public function destroy_session() { |
255 | - $this->delete_session( $this->_customer_id ); |
|
255 | + $this->delete_session($this->_customer_id); |
|
256 | 256 | $this->forget_session(); |
257 | 257 | } |
258 | 258 | |
@@ -260,7 +260,7 @@ discard block |
||
260 | 260 | * Forget all session data without destroying it. |
261 | 261 | */ |
262 | 262 | public function forget_session() { |
263 | - $this->setcookie( $this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true ); |
|
263 | + $this->setcookie($this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true); |
|
264 | 264 | |
265 | 265 | wpinv_empty_cart(); |
266 | 266 | |
@@ -275,7 +275,7 @@ discard block |
||
275 | 275 | * @param int $uid User ID. |
276 | 276 | * @return string |
277 | 277 | */ |
278 | - public function nonce_user_logged_out( $uid ) { |
|
278 | + public function nonce_user_logged_out($uid) { |
|
279 | 279 | return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid; |
280 | 280 | } |
281 | 281 | |
@@ -286,14 +286,14 @@ discard block |
||
286 | 286 | * @param mixed $default Default session value. |
287 | 287 | * @return string|array |
288 | 288 | */ |
289 | - public function get_session( $customer_id, $default = false ) { |
|
289 | + public function get_session($customer_id, $default = false) { |
|
290 | 290 | |
291 | - if ( defined( 'WP_SETUP_CONFIG' ) ) { |
|
291 | + if (defined('WP_SETUP_CONFIG')) { |
|
292 | 292 | return array(); |
293 | 293 | } |
294 | 294 | |
295 | - if ( !is_user_logged_in() ) { |
|
296 | - if(!wp_verify_nonce( $customer_id, 'wpinv-session-customer-id' )){ |
|
295 | + if (!is_user_logged_in()) { |
|
296 | + if (!wp_verify_nonce($customer_id, 'wpinv-session-customer-id')) { |
|
297 | 297 | return array(); |
298 | 298 | } |
299 | 299 | } |
@@ -301,11 +301,11 @@ discard block |
||
301 | 301 | $key = $this->generate_key($customer_id); |
302 | 302 | $value = get_transient($key); |
303 | 303 | |
304 | - if ( !$value ) { |
|
304 | + if (!$value) { |
|
305 | 305 | $value = $default; |
306 | 306 | } |
307 | 307 | |
308 | - return maybe_unserialize( $value ); |
|
308 | + return maybe_unserialize($value); |
|
309 | 309 | } |
310 | 310 | |
311 | 311 | /** |
@@ -313,7 +313,7 @@ discard block |
||
313 | 313 | * |
314 | 314 | * @param int $customer_id Customer ID. |
315 | 315 | */ |
316 | - public function delete_session( $customer_id ) { |
|
316 | + public function delete_session($customer_id) { |
|
317 | 317 | |
318 | 318 | $key = $this->generate_key($customer_id); |
319 | 319 | |
@@ -326,9 +326,9 @@ discard block |
||
326 | 326 | * @param string $customer_id Customer ID. |
327 | 327 | * @param int $timestamp Timestamp to expire the cookie. |
328 | 328 | */ |
329 | - public function update_session_timestamp( $customer_id, $timestamp ) { |
|
329 | + public function update_session_timestamp($customer_id, $timestamp) { |
|
330 | 330 | |
331 | - set_transient( $this->generate_key($customer_id), maybe_serialize( $this->_data ), $timestamp); |
|
331 | + set_transient($this->generate_key($customer_id), maybe_serialize($this->_data), $timestamp); |
|
332 | 332 | |
333 | 333 | } |
334 | 334 | } |